.gift-dashboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dashboard-card{background:#fff;border:1px solid var(--gift-line);border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(40,85,61,.06)}.dashboard-card small{display:block;color:var(--muted);font-weight:800;margin-bottom:8px}.dashboard-card strong{display:block;font-size:28px;line-height:1.1;color:var(--gift-ink)}.dashboard-card span{display:block;margin-top:8px;color:var(--muted);font-size:13px;line-height:1.5}.prep-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:18px;margin-top:18px}.prep-card{background:#fff;border:1px solid var(--gift-line);border-radius:24px;padding:22px}.prep-card h3{font-size:23px;margin:0 0 9px}.prep-card p{color:var(--muted);line-height:1.65}.prep-progress{height:12px;border-radius:999px;background:#edf3ee;overflow:hidden;margin:16px 0}.prep-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4b8b66,#8bc49e);width:0;transition:.25s ease}.checklist{display:grid;gap:10px}.check-row{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:16px;background:#f7faf8}.check-row input{margin-top:3px}.check-row span{line-height:1.55}.deadline-box{border-radius:20px;background:linear-gradient(145deg,#edf7ef,#fff8f2);padding:18px}.deadline-box strong{display:block;font-size:27px;color:#245b41}.deadline-box p{margin:8px 0 0}.calendar-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-bottom:14px}.calendar-search-row input{width:100%;border:1px solid rgba(47,111,80,.2);border-radius:16px;padding:13px 14px;font:inherit}.recipient-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:18px}.recipient-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.recipient-card{background:#fff;border:1px solid var(--gift-line);border-radius:20px;padding:16px}.recipient-card h3{margin:0 0 5px;font-size:20px}.recipient-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.recipient-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.recipient-actions{display:flex;gap:7px;margin-top:13px}.profile-select-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:16px}.profile-select-row select{width:100%;border:1px solid rgba(47,111,80,.2);border-radius:15px;padding:13px 14px;font:inherit}.safety-note{margin-top:14px;padding:14px 16px;border-radius:16px;background:#fff5e8;color:#6f5638;line-height:1.6;font-size:14px}.safety-note.danger{background:#fff0f2;color:#8b3e4e}.message-panel{margin-top:16px;border:1px solid var(--gift-line);border-radius:20px;padding:17px;background:#fff}.message-panel h4{margin:0 0 10px;font-size:18px}.message-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}.message-tab{border:1px solid rgba(47,111,80,.18);background:#f7faf8;color:#245b41;border-radius:999px;padding:8px 11px;font-weight:850;cursor:pointer}.message-tab[aria-pressed=true]{background:#dceee1;border-color:#2f6f50}.message-copy{padding:15px;border-radius:16px;background:#f6f9f7;color:#365948;line-height:1.7;min-height:78px}.plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.plan-card{background:#fff;border:1px solid var(--gift-line);border-radius:22px;padding:18px}.plan-card h3{font-size:20px;margin:0 0 6px}.plan-card p{color:var(--muted);line-height:1.55;margin:4px 0}.plan-summary{margin-top:12px;padding:12px;border-radius:14px;background:#f5f9f6;font-size:14px;color:#365948}.plan-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.month-strip{display:flex;gap:8px;overflow:auto;padding-bottom:6px;margin-bottom:14px}.month-button{flex:0 0 auto;border:1px solid rgba(47,111,80,.18);background:#fff;color:#245b41;border-radius:999px;padding:9px 13px;font-weight:850;cursor:pointer}.month-button[aria-pressed=true]{background:#dceee1;border-color:#2f6f50}.compact-note{font-size:13px;color:var(--muted);line-height:1.55}.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;background:#edf7ef;color:#245b41;font-weight:850;font-size:13px}.status-pill.urgent{background:#fff1e7;color:#8a4e24}.status-pill.today{background:#f8e9ef;color:#8a3653}
@media(max-width:960px){.gift-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.prep-grid,.recipient-layout{grid-template-columns:1fr}.recipient-list,.plan-list{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.gift-dashboard,.recipient-list,.plan-list{grid-template-columns:1fr}.calendar-search-row,.profile-select-row{grid-template-columns:1fr}.dashboard-card strong{font-size:24px}.prep-card{padding:18px}}
