:root{--dash-page:#f8f7f5;--dash-surface:#fff;--dash-surface-soft:#faf8f6;--dash-border:#e6e0dc;--dash-border-strong:#cfc4be;--dash-text:#2b2325;--dash-subtle:#655d5f;--dash-label:#766d6f;--dash-accent:#c84e43;--dash-accent-strong:#a83b33;--dash-accent-soft:#fff1ef;--dash-success:#276749;--dash-success-soft:#edf8f2;--dash-focus:#c84e434d;--dash-radius-sm:10px;--dash-radius-md:12px;--dash-radius-lg:16px}body:has(.dashboard-topbar){--ink:var(--dash-text);--muted:var(--dash-subtle);--coral:var(--dash-accent);--coral-dark:var(--dash-accent-strong);--line:var(--dash-border);--panel-border:var(--dash-border);color:var(--dash-text);background:var(--dash-page)}body:has(.dashboard-topbar) .page:not(.landing-page):not(.faq-page):not(.public-feedback-page){min-height:calc(100dvh - var(--dashboard-topbar-height,68px));background:var(--dash-page);padding:24px 0 72px}body:has(.dashboard-topbar) .page>.shell{width:min(1200px,100% - 48px);max-width:calc(100vw - 48px)}body:has(.dashboard-topbar) .topbar-inner{width:min(1200px,100% - 48px);max-width:calc(100vw - 48px)}body:has(.dashboard-topbar) .app-footer-inner{width:min(1200px,100% - 48px);max-width:calc(100vw - 48px)}body:has(.dashboard-topbar) .btn{border-radius:var(--dash-radius-sm);min-height:40px;box-shadow:none;touch-action:manipulation;padding:0 14px;font-size:14px;font-weight:700;transition:background-color .16s,border-color .16s,color .16s}body:has(.dashboard-topbar) .btn:hover{box-shadow:none;transform:none}.topbar.dashboard-topbar:not(.landing-topbar) .topbar-actions .btn-primary{color:#fff;border-color:var(--dash-accent);background:var(--dash-accent)}body:has(.dashboard-topbar) .btn-primary{color:#fff;border-color:var(--dash-accent);background:var(--dash-accent)}body:has(.dashboard-topbar) .btn-primary:visited{color:#fff;border-color:var(--dash-accent);background:var(--dash-accent)}.topbar.dashboard-topbar:not(.landing-topbar) .topbar-actions .btn-primary:hover{color:#fff;border-color:var(--dash-accent-strong);background:var(--dash-accent-strong)}body:has(.dashboard-topbar) .btn-primary:hover{color:#fff;border-color:var(--dash-accent-strong);background:var(--dash-accent-strong)}body:has(.dashboard-topbar) .btn-secondary{color:var(--dash-text);border-color:var(--dash-border);background:var(--dash-surface)}body:has(.dashboard-topbar) .btn-secondary:visited{color:var(--dash-text);border-color:var(--dash-border);background:var(--dash-surface)}body:has(.dashboard-topbar) .btn-secondary:hover{border-color:var(--dash-border-strong);background:var(--dash-surface-soft)}body:has(.dashboard-topbar) .btn-ghost{color:var(--dash-subtle);background:0 0}body:has(.dashboard-topbar) .btn-ghost:hover{color:var(--dash-text);background:var(--dash-surface-soft)}body:has(.dashboard-topbar) .btn:disabled{color:#8c8586;border-color:var(--dash-border);cursor:not-allowed;background:#f2efed;transform:none}body:has(.dashboard-topbar) .icon-btn{border-color:var(--dash-border);border-radius:var(--dash-radius-sm);width:40px;height:40px;color:var(--dash-subtle);background:var(--dash-surface);box-shadow:none;transition:background-color .16s,border-color .16s,color .16s}body:has(.dashboard-topbar) .icon-btn:hover{color:var(--dash-text);border-color:var(--dash-border-strong);background:var(--dash-surface-soft);box-shadow:none;transform:none}body:has(.dashboard-topbar) :is(.btn,.icon-btn,.input,.select,.textarea):focus-visible{outline:3px solid var(--dash-focus);outline-offset:2px}body:has(.dashboard-topbar) :is(.card,.page-title,.friends-heading,.detail-head){border-color:var(--dash-border);border-radius:var(--dash-radius-lg);background:var(--dash-surface);box-shadow:none;-webkit-backdrop-filter:none}body:has(.dashboard-topbar) :is(.page-title,.friends-heading,.detail-head){padding:24px;animation:none}body:has(.dashboard-topbar) :is(.page-title,.friends-heading,.detail-head) h1{color:var(--dash-text);font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:clamp(30px,2.7vw,34px);font-weight:720;line-height:1.15}body:has(.dashboard-topbar) .editor-title{color:var(--dash-text);font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:clamp(30px,2.7vw,34px);font-weight:720;line-height:1.15}body:has(.dashboard-topbar) :is(.input,.select,.textarea){border-color:var(--dash-border);border-radius:var(--dash-radius-sm);color:var(--dash-text);background:var(--dash-surface);box-shadow:none}body:has(.dashboard-topbar) .detail-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}body:has(.dashboard-topbar) .detail-head>div:first-child{flex:320px;min-width:0}body:has(.dashboard-topbar) .detail-head h1{overflow-wrap:anywhere;margin:10px 0}body:has(.dashboard-topbar) .detail-head .dashboard-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}body:has(.dashboard-topbar) .wishlist-privacy-editor{border-color:var(--dash-border);border-radius:var(--dash-radius-md);background:var(--dash-surface-soft);box-shadow:none}body:has(.dashboard-topbar) .wishlist-privacy-editor label{color:var(--dash-subtle);letter-spacing:0;text-transform:none;font-size:13px;font-weight:650}body:has(.dashboard-topbar) .gift-card:hover{box-shadow:none;transform:none}body:has(.dashboard-topbar) .modal{background:var(--dash-surface);box-shadow:0 24px 64px #2b23252e}.gift-source-link{color:var(--dash-subtle);align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.gift-source-link a{text-underline-offset:3px;flex:1;text-decoration:underline}body:has(.dashboard-topbar) .form-section{border-color:var(--dash-border);border-radius:var(--dash-radius-md);background:var(--dash-surface-soft);box-shadow:none}body:has(.dashboard-topbar) .form-section-head>span{border-radius:var(--dash-radius-sm);color:var(--dash-accent-strong);background:var(--dash-accent-soft);box-shadow:none}body:has(.dashboard-topbar) :is(.page-title,.friends-heading):before{display:none}body:has(.dashboard-topbar) :is(.page-title,.friends-heading):after{display:none}.friends-page .friends-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}.friends-page .friend-card{border-color:var(--dash-border);border-radius:var(--dash-radius-lg);background:var(--dash-surface);min-width:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transform:none}.friends-page .friend-profile{background:var(--dash-surface);border-radius:0;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;padding:16px}.friends-page .friend-profile .avatar{border:1px solid var(--dash-border);width:44px;height:44px;box-shadow:none}.friends-page .friend-profile>div,.friends-page .friend-upcoming>div,.friends-page .friend-wishlist-row>div{min-width:0}.friends-page .friend-profile h2{color:var(--dash-text);font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:700;line-height:1.3;overflow:hidden}.friends-page .friend-profile p{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;line-height:1.45;display:-webkit-box;overflow:hidden}.friends-page .friend-profile .btn{grid-column:auto;width:auto}.friends-page .friend-upcoming{border-color:var(--dash-border);border-radius:var(--dash-radius-sm);background:var(--dash-success-soft);box-shadow:none;gap:10px;margin:0 16px 12px;padding:10px}.friends-page .friend-upcoming>span,.friends-page .friend-wishlist-row>span{border-radius:8px;width:30px;height:30px}.friends-page .friend-upcoming strong,.friends-page .friend-wishlist-row strong{overflow-wrap:anywhere}.friends-page .friend-wishlists{border-color:var(--dash-border);background:var(--dash-surface-soft);border-radius:0;max-height:220px;padding:12px 16px}.friends-page .friend-section-head{align-items:center;margin-bottom:4px}.friends-page .friend-wishlist-row{border-color:var(--dash-border);gap:10px;min-height:48px;padding:8px 0}.friends-page .friend-wishlist-row strong{margin-bottom:2px}.friends-page .friend-empty-list{padding:8px 0}@media (max-width:900px){.friends-page .friends-list{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){body:has(.dashboard-topbar) .page:not(.landing-page):not(.faq-page):not(.public-feedback-page){padding:18px 0 calc(52px + var(--dashboard-mobile-nav-height,84px))}body:has(.dashboard-topbar) .page>.shell{width:calc(100% - 28px);max-width:calc(100vw - 28px)}body:has(.dashboard-topbar) .topbar-inner{width:calc(100% - 28px);max-width:calc(100vw - 28px)}body:has(.dashboard-topbar) .app-footer-inner{width:calc(100% - 28px);max-width:calc(100vw - 28px)}body:has(.dashboard-topbar) :is(.page-title,.friends-heading,.detail-head){gap:16px;padding:16px}body:has(.dashboard-topbar) :is(.btn,.icon-btn){min-height:44px}body:has(.dashboard-topbar) .icon-btn{width:44px}.mobile-nav.dashboard-mobile-nav{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}}
.wishlist-create-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}body:has(.dashboard-topbar) .btn.christmas-create-button{color:#fffaf0;white-space:nowrap;background:#216b50;border-color:#1b624a;position:relative;box-shadow:inset 0 1px #ffffff29}body:has(.dashboard-topbar) .btn.christmas-create-button:hover{color:#fff;background:#19563f;border-color:#164d39}.christmas-create-button>span:first-child{font-size:20px;line-height:1}.christmas-button-star{color:#f2ce83;font-size:16px}.dashboard-page.dashboard-redesign .dashboard-wishlist-card.christmas-wishlist-card{background:#f3f8f2;border:1px solid #d7e5d9;border-radius:12px;margin-top:10px;padding:16px 14px}.dashboard-page.dashboard-redesign .christmas-wishlist-card .wishlist-event-icon{background:#fff5e4;border:1px solid #eed8c1;border-radius:14px}.christmas-card-santa{font-size:34px;line-height:1}.christmas-list-label{color:#216b50;align-items:center;gap:4px;margin:4px 0;font-size:12px;font-weight:650;display:inline-flex}.christmas-wishlist-page{--dash-accent:#b8423b;--dash-accent-strong:#95312d;--dash-accent-soft:#fff1e9;--dash-focus:#b8423b4d}.shared-wishlist-page.christmas-wishlist-page{background:#f5f8f2}body:has(.dashboard-topbar) .page.christmas-wishlist-page:not(.landing-page):not(.faq-page):not(.public-feedback-page){background:#f5f8f2}.christmas-banner{color:#194f3c;background:#edf4e8;border:1px solid #d5e2d2;border-radius:16px;align-items:center;gap:16px;margin-bottom:24px;padding:20px 24px;display:flex}.christmas-santa{background:#fff6e8;border:1px solid #eddbc3;border-radius:20px;flex:none;place-items:center;width:64px;height:64px;font-size:44px;line-height:1;display:grid}.christmas-kicker{color:#216b50;font-family:var(--font-display);letter-spacing:-.02em;font-size:18px;font-weight:750}.christmas-banner p{color:#456354;margin:4px 0 0;font-size:14px}.christmas-banner-icons{color:#216b50;align-items:center;gap:16px;margin-left:auto;display:flex}body:has(.dashboard-topbar) .christmas-wishlist-page .wishlist-form{background:#fffdf8;border-color:#d5e2d2}body:has(.dashboard-topbar) .christmas-wishlist-page .form-section{background:#f3f7ed;border-color:#d5e2d2}body:has(.dashboard-topbar) .christmas-wishlist-page .form-section-head>span{color:#216b50;background:#e4efdf;place-items:center;display:grid}.christmas-wishlist-page .form-section-head h2{color:#194f3c}body:has(.dashboard-topbar) .christmas-wishlist-page .choice-card{box-shadow:none;background:#fffdf8;border-color:#d5e2d2;border-radius:12px}body:has(.dashboard-topbar) .christmas-wishlist-page .choice-card.selected{background:#e8f1e2;border-color:#216b50}body:has(.dashboard-topbar) .christmas-wishlist-page .choice-card>span{color:#216b50;box-shadow:none;background:#e4efdf}.christmas-date-note,.christmas-next-step{color:#456354;align-items:center;gap:8px;font-size:14px;line-height:1.5;display:flex}.christmas-date-note svg,.christmas-next-step svg{color:#216b50;flex:none}.christmas-next-step{margin:24px 0 0}body:has(.dashboard-topbar) .christmas-wishlist-page .detail-head{border-top:4px solid #216b50}body:has(.dashboard-topbar) .christmas-wishlist-page .gift-empty-state{background:#fffdf7;border:1px dashed #b8cdb8}@media (max-width:760px){.wishlist-create-actions{justify-content:flex-start}.dashboard-page.dashboard-redesign .wishlist-studio .dashboard-section-head{flex-wrap:wrap;align-items:flex-start}.christmas-banner{gap:12px;padding:16px}.christmas-santa{width:52px;height:52px;font-size:36px}.christmas-kicker{font-size:16px}.christmas-banner-icons{display:none}.dashboard-page.dashboard-redesign .christmas-wishlist-card .wishlist-row-actions{padding-left:0}}