:root{--red: #b3202a;--red-dark: #8f1820;--green: #1f6b3a;--green-dark: #17512c;--gold: #f6c945;--gold-dark: #c49212;--blue: #2a5f8f;--blue-dark: #1e4a72;--cream: #fbf4ea;--ink: #2b2420;--muted: #7a6f66;--line: #e8dccb;--card: #ffffff;--radius: 14px;--shadow: 0 1px 2px rgba(60, 30, 10, .06), 0 6px 18px rgba(60, 30, 10, .08);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--cream);-webkit-text-size-adjust:100%}a{color:var(--green)}h1,h2,h3{margin:0 0 8px;line-height:1.2}h1{font-size:1.6rem}h2{font-size:1.25rem}h3{font-size:1.05rem}p{margin:0 0 10px}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:10px}.grow{flex:1 1 auto;min-width:0}.hidden{display:none!important}.topbar{position:sticky;top:0;z-index:20;background:var(--red);color:#fff;padding:calc(env(safe-area-inset-top) + 8px) 16px 8px;display:flex;align-items:center;gap:14px;box-shadow:0 2px 10px #0000002e}.topbar .brand{font-weight:800;font-size:1.05rem;text-decoration:none;color:#fff;white-space:nowrap}.topbar nav{display:flex;gap:4px;flex:1;overflow-x:auto}.topbar nav a{color:#ffe9e0;text-decoration:none;padding:7px 12px;border-radius:999px;font-weight:600;font-size:.92rem;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.topbar nav a.active{background:#ffffff38;color:#fff}.topbar nav .nav-ico{display:inline-flex;align-items:center;justify-content:center;width:1.15em;height:1.15em;flex:0 0 auto;line-height:0}.topbar nav .nav-ico svg{width:100%;height:100%;display:block}.topbar .who{font-size:.85rem;opacity:.95}.page{max-width:980px;margin:0 auto;padding:18px 16px 90px}.page.narrow{max-width:520px}.admin-badge{background:var(--gold);color:#5b3b00;font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:999px;margin-left:6px}@media(max-width:720px){.topbar nav{position:fixed;left:0;right:0;bottom:0;z-index:30;background:linear-gradient(180deg,#fffdf8,#fff8ee);border-top:2px solid var(--red);box-shadow:0 -6px 18px #3c1e0a24,0 -1px #f6c9458c;padding:4px 6px calc(env(safe-area-inset-bottom) + 4px);justify-content:space-around;gap:2px}.topbar nav a{color:#3d342e;flex:1;flex-direction:column;justify-content:center;gap:1px;text-align:center;padding:5px 3px 4px;font-size:.65rem;font-weight:800;letter-spacing:.01em;border-radius:10px;background:transparent}.topbar nav .nav-ico{width:1.2rem;height:1.2rem;filter:drop-shadow(0 1px 0 rgba(255,255,255,.8))}.topbar nav a.active{background:linear-gradient(180deg,#fff5f0,#f7ddd6);color:var(--red-dark);box-shadow:inset 0 0 0 1.5px #b3202a47,0 2px 6px #b3202a1f}.topbar nav a.active .nav-label{color:var(--red-dark)}.topbar .who{display:none}.topbar .spacer{flex:1}.topbar{gap:8px;padding-left:12px;padding-right:12px}.topbar button{white-space:nowrap;padding:8px 12px}}html{-webkit-text-size-adjust:100%}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}body{overflow-x:hidden}@media(max-width:720px){input,textarea,select{font-size:16px}button,.btn{min-height:44px}button.small,.btn.small{min-height:40px;padding:8px 12px}.page{padding:14px 12px calc(env(safe-area-inset-bottom) + 78px)}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}button,.btn{font:inherit;font-weight:700;cursor:pointer;border:0;border-radius:10px;padding:10px 16px;background:var(--green);color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:filter .12s,transform .05s}button:hover:not(:disabled),.btn:hover{filter:brightness(1.08)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.55;cursor:default}button.red{background:var(--red)}button.gold{background:var(--gold);color:#5b3b00}button.blue{background:var(--blue);color:#fff}button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}button.link{background:none;color:var(--green);padding:4px 6px;text-decoration:underline}button.danger{background:#fff;color:var(--red);border:1px solid #e7b8bb}button.small,.btn.small{padding:6px 10px;font-size:.85rem;border-radius:8px}label{display:block;font-weight:700;font-size:.88rem;margin-bottom:4px}input,textarea,select{font:inherit;width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink)}input:focus,textarea:focus,select:focus{outline:2px solid var(--green);outline-offset:0;border-color:transparent}textarea{resize:vertical;min-height:64px}input[type=checkbox]{width:auto}.check{display:flex;gap:8px;align-items:center;font-weight:600}.check input{margin:0}.field{margin-bottom:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:480px){.grid2{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card+.card{margin-top:14px}.grid2>.card+.card,.grid2>.card{margin-top:0}.grid2>.card{height:100%;display:flex;flex-direction:column;justify-content:center}.grid2:has(>.card){gap:14px}.notice{border-radius:10px;padding:10px 12px;font-size:.92rem;margin-bottom:12px}.notice.info{background:#eaf4ec;border:1px solid #c4e0cb;color:#174a28}.notice.warn{background:#fff6dc;border:1px solid #f0dd9a;color:#6b4b00}.notice.error{background:#fdeaea;border:1px solid #f0b9bc;color:#8f1820}.badge{display:inline-block;font-size:.72rem;font-weight:800;padding:2px 8px;border-radius:999px;background:#efe6d8;color:#5d4a35}.badge.green{background:#dcefe0;color:#17512c}.badge.red{background:#fadcdc;color:#8f1820}.badge.gold{background:#fdefb8;color:#6b4b00}.countdown{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:12px 18px;border-radius:14px;color:#fff;background:linear-gradient(120deg,var(--red) 0%,var(--red-dark) 55%,var(--green-dark) 100%);box-shadow:0 2px 10px #0000001f}.countdown-title{font-weight:800;font-size:1.05rem}.countdown-units{display:flex;gap:10px}.countdown-unit{min-width:58px;padding:6px 8px;text-align:center;border-radius:10px;background:#ffffff29}.countdown-unit strong{display:block;font-size:1.5rem;line-height:1.1;font-variant-numeric:tabular-nums}.countdown-unit span{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;opacity:.9}@media(max-width:480px){.countdown{justify-content:center;text-align:center}.countdown-unit{min-width:52px}}.link-card{position:relative;display:flex;align-items:stretch;gap:0;margin:4px 0 6px;border:1px solid var(--line, #e6dccb);border-radius:12px;overflow:hidden;background:#fff}.link-card.branded{border-left:4px solid #ff9900}.link-card.amazon{border-left-color:#f90}.link-card .lc-thumb{flex:0 0 84px;min-height:84px;display:flex;align-items:center;justify-content:center;background:#f3ece0;font-size:1.6rem}.link-card.amazon .lc-thumb{background:#232f3e}.link-card .lc-brand{display:grid;place-items:center;width:100%;height:100%;min-height:84px;font-family:Georgia,Times New Roman,serif;font-weight:900;font-size:2rem;line-height:1}.link-card.amazon .lc-site{color:#b35a00}.link-card .lc-thumb img{width:100%;height:100%;object-fit:cover;display:block}.link-card .lc-body{flex:1;min-width:0;padding:9px 34px 9px 12px;display:flex;flex-direction:column;justify-content:center;gap:2px}.link-card .lc-site{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#8a7a64;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-card .lc-title{font-weight:800;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-card .lc-price{font-weight:700;color:var(--green)}.link-card .lc-note{font-size:.78rem;color:#6b4b00}.link-card .lc-x{position:absolute;top:4px;right:4px;width:26px;height:26px;padding:0;border-radius:999px;line-height:1;font-size:1.1rem;background:#0000000f;color:#5d4a35;border:0}.link-card.loading .lc-title{color:#8a7a64;font-weight:600}.link-card.loading .lc-thumb{animation:lc-pulse 1.2s ease-in-out infinite}@keyframes lc-pulse{50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.link-card.loading .lc-thumb{animation:none}}.site-link{display:inline-block;margin-top:2px;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:700;text-decoration:none;background:#efe6d8;color:#5d4a35;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.themed .site-link{background:var(--t-line);color:var(--t-ink)}.status-card{margin-bottom:14px;border-left:5px solid #e0b84a}.status-card.open{border-left-color:var(--green)}.progress{height:8px;background:#efe6d8;border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--green);border-radius:999px}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.table-wrap{overflow-x:auto}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.tabs button{background:#fff;color:var(--ink);border:1px solid var(--line);padding:8px 14px}.tabs button.on{background:var(--green);color:#fff;border-color:var(--green)}.overlay{position:fixed;inset:0;height:100dvh;z-index:100;background:#1e0f058c;display:flex;align-items:flex-end;justify-content:center;padding:0}.modal{background:var(--cream, #fbf4ea);width:100%;max-width:480px;max-height:94%;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:18px 18px 0 0;padding:22px 22px calc(env(safe-area-inset-bottom) + 22px);box-shadow:0 -8px 30px #3c1e0a47;border:1px solid var(--line);border-bottom:0}@media(min-width:640px){.overlay{align-items:center;padding:20px}.modal{border-radius:18px;border-bottom:1px solid var(--line)}}.modal h2{margin:0 0 14px;color:var(--ink);letter-spacing:-.01em}.modal h2:after{content:"";display:block;width:40px;height:3px;margin-top:8px;border-radius:3px;background:linear-gradient(90deg,var(--red),var(--gold))}.modal .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}.confirm-overlay{z-index:110}.confirm-modal{max-width:420px;padding-top:0;overflow:hidden}.confirm-banner{background:var(--red);color:#fff;font-weight:800;font-size:.92rem;margin:0 -22px 14px;padding:12px 22px;letter-spacing:.01em}.confirm-body{color:var(--ink)}.confirm-body p{margin:0 0 10px;line-height:1.45;white-space:pre-wrap}.confirm-body p:last-child{margin-bottom:0}.avatar{width:52px;height:52px;border-radius:50%;background:#fff;border:3px solid #fff;display:flex;align-items:center;justify-content:center;font-size:1.7rem;overflow:hidden;flex:0 0 auto;box-shadow:0 2px 8px #0000002e}.avatar img{width:100%;height:100%;object-fit:cover;object-position:center 18%}.avatar.lg{width:336px;height:336px;font-size:9rem;border-width:6px}.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.person{display:block;text-decoration:none;color:var(--ink);overflow:hidden;padding:0;border-radius:var(--radius);border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);transition:transform .12s}.person:hover{transform:translateY(-2px)}.person .cover{position:relative;z-index:0;height:180px;background-size:cover;background-position:center;overflow:hidden}.person .hero-pill{top:auto;bottom:18px;right:8px;font-size:.74rem;padding:5px 10px;gap:6px;pointer-events:none}.person .hero-pill .dot{width:9px;height:9px}.person .body{position:relative;z-index:1;padding:0 14px 14px;margin-top:-52px}.person .avatar{width:104px;height:104px;font-size:3.2rem;border-width:4px}.person .name{font-weight:800;font-size:1.1rem;margin:8px 0 2px}@media(max-width:560px){.avatar.lg{width:220px;height:220px;font-size:6.5rem;border-width:5px}}.themed{--t-bg: #fbf4ea;--t-card: #ffffff;--t-ink: #2b2420;--t-muted: #7a6f66;--t-accent: #b3202a;--t-accent2: #1f6b3a;--t-line: #e8dccb;--t-hero: linear-gradient(135deg, #b3202a 0%, #8f1820 55%, #1f6b3a 100%);--t-pattern: none;background:var(--t-bg);background-image:var(--t-pattern);color:var(--t-ink);border-radius:var(--radius);overflow:hidden;border:1px solid var(--t-line)}.themed[data-theme=snowy]{--t-bg: #eef5fb;--t-card: #ffffff;--t-ink: #1c2b3a;--t-muted: #5d7186;--t-accent: #2b6cb0;--t-accent2: #3d8fc9;--t-line: #cfe0ef;--t-hero: linear-gradient(160deg, #cfe5f7 0%, #8fbde3 50%, #5f9bd0 100%);--t-pattern: radial-gradient(circle at 20% 20%, rgba(255,255,255,.9) 0 2px, transparent 3px), radial-gradient(circle at 70% 60%, rgba(255,255,255,.9) 0 2px, transparent 3px)}.themed[data-theme=candy]{--t-bg: #fff5f5;--t-ink: #3a1418;--t-muted: #8a5a5f;--t-accent: #d1202f;--t-accent2: #e0525d;--t-line: #f3cfd2;--t-hero: repeating-linear-gradient(135deg, #d1202f 0 18px, #ffffff 18px 36px)}.themed[data-theme=plaid]{--t-bg: #f7efe6;--t-ink: #2a1d18;--t-muted: #7a6256;--t-accent: #a3262b;--t-accent2: #1b5e3b;--t-line: #e3d2bd;--t-hero: repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 10px, transparent 10px 36px), repeating-linear-gradient(90deg, rgba(255,255,255,.22) 0 10px, transparent 10px 36px), linear-gradient(135deg, #a3262b, #7d1c20)}.themed[data-theme=aurora]{--t-bg: #0f1b2d;--t-card: #172640;--t-ink: #e8f3ff;--t-muted: #9bb4d0;--t-accent: #4be3b0;--t-accent2: #8a7cff;--t-line: #27406a;--t-hero: linear-gradient(120deg, #0b2a4a 0%, #1c7c7d 35%, #4be3b0 55%, #8a7cff 85%, #1b1650 100%)}.themed[data-theme=gingerbread]{--t-bg: #f6e6d0;--t-card: #fff9f0;--t-ink: #3d2412;--t-muted: #8a6a4f;--t-accent: #8a4b1f;--t-accent2: #c0392b;--t-line: #e2c9a6;--t-hero: linear-gradient(135deg, #8a4b1f 0%, #b7733a 50%, #e2a96a 100%);--t-pattern: radial-gradient(circle at 10% 90%, rgba(255,255,255,.35) 0 3px, transparent 4px)}.themed .hero{position:relative;overflow:hidden;min-height:380px;background:var(--t-hero);background-size:cover;background-position:center;color:#fff;isolation:isolate}.themed .hero .shade{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,#0000008c,#0000 65%)}.themed .hero .content{position:relative;z-index:4;display:flex;align-items:center;gap:20px;padding:140px 16px 20px}.themed .hero .content .avatar{position:relative;z-index:1}.themed .hero .content>.grow{display:flex;flex-direction:column;justify-content:center;min-width:0}.themed .hero h1{margin:0;text-shadow:0 2px 6px rgba(0,0,0,.5)}.themed .hero .tag{text-shadow:0 1px 4px rgba(0,0,0,.6);font-style:italic;opacity:.95}.themed .inner{padding:16px;position:relative}.themed .muted{color:var(--t-muted)}.themed a{color:var(--t-accent2)}.themed .item{background:var(--t-card);border:1px solid var(--t-line);border-radius:12px;padding:12px;margin-bottom:12px;color:var(--t-ink)}.themed button{background:var(--t-accent2)}.themed button.red{background:var(--t-accent)}.themed button.gold{background:var(--gold);color:#5b3b00}.themed button.blue{background:var(--blue);color:#fff}.themed button.ghost{background:transparent;color:var(--t-ink);border:1px solid var(--t-line)}.themed button.danger{background:transparent;color:var(--t-accent);border:1px solid var(--t-line)}.themed button.link{background:none;color:var(--t-accent2)}.themed .progress{background:var(--t-line)}.themed .progress>span{background:var(--t-accent2)}.themed .badge{background:var(--t-line);color:var(--t-ink)}.themed .badge.green{background:var(--t-accent2);color:#fff}.themed .badge.gold{background:#fdefb8;color:#6b4b00}.themed .section-title{color:var(--t-ink)}.item .top{display:flex;gap:12px}.item .thumb{width:84px;height:84px;border-radius:10px;object-fit:cover;background:#efe6d8;flex:0 0 auto}.item .title{font-weight:800;font-size:1.02rem}.item.removed .title{text-decoration:line-through;opacity:.7}.unit{border-top:1px dashed var(--t-line, var(--line));margin-top:10px;padding-top:10px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.chip{font-size:.8rem;padding:3px 9px;border-radius:999px;background:#78787824}.chip.me{background:#fdefb8;color:#5b3b00;font-weight:700}.editor-item{display:flex;gap:12px;align-items:flex-start}.editor-item .reorder{display:flex;flex-direction:column;gap:4px}.editor-item .reorder button{padding:2px 8px}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.swatch{border-radius:10px;border:2px solid transparent;padding:0;overflow:hidden;background:#fff;text-align:center;font-weight:700;color:var(--ink)}.swatch.on{border-color:var(--green)}.swatch{display:block}.swatch .sample{height:44px;width:100%;display:block}.swatch span{display:block;font-size:.8rem;padding:4px}.emoji-row{display:flex;flex-wrap:wrap;gap:6px}.emoji-row button{background:#fff;border:1px solid var(--line);font-size:1.3rem;padding:4px 8px;color:inherit}.emoji-row button.on{border-color:var(--green);background:#eaf4ec}.auth-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(160deg,#8f1820,#b3202a 45%,#1f6b3a)}.auth-card{width:100%;max-width:400px;background:#fff;border-radius:18px;padding:26px 22px;box-shadow:0 18px 50px #00000059}.auth-card .logo{font-size:2.6rem;text-align:center}.snow{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2}.snow i{position:absolute;top:-10px;color:#fff;opacity:.85;font-style:normal;animation:fall linear infinite;text-shadow:0 0 3px rgba(80,120,160,.6)}@keyframes fall{to{transform:translateY(120vh) rotate(180deg)}}@media(prefers-reduced-motion:reduce){.snow{display:none}}.empty{text-align:center;padding:30px 10px;color:var(--muted)}.themed .empty{color:var(--t-muted)}.sticky-actions{position:sticky;bottom:70px}.copybox{background:#f4ede0;border:1px dashed #cdb99a;border-radius:10px;padding:10px;font-size:.85rem;word-break:break-all}.item.done{opacity:.72}.item.done:hover{opacity:1}.done-heading{display:flex;align-items:center;gap:8px;margin:26px 0 12px;padding:10px 14px;border-radius:12px;font-size:1.15rem;font-weight:800;color:#1f5a36;background:#e3f3e8;border:1px solid #b9dcc4;border-left:6px solid var(--green)}.done-heading.todo-heading{color:#8a5a00;background:#fdf3d8;border-color:#ecd596;border-left-color:var(--gold)}@keyframes wn-pulse{0%,to{box-shadow:0 0 #f6c945a6}50%{box-shadow:0 0 0 7px #f6c94500}}.whats-new-btn.pulse{animation:wn-pulse 2.2s ease-in-out infinite;border-color:var(--gold)!important;color:var(--gold)!important}@media(prefers-reduced-motion:reduce){.whats-new-btn.pulse{animation:none}}@media(max-width:640px){.topbar .whats-new-btn{padding-inline:8px}}.wn-body{margin:0}.wn-release{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff}.wn-release+.wn-release,.wn-history .wn-release{margin-top:12px}.wn-release.featured{border-color:#e6c35a;background:linear-gradient(180deg,#fffaf0,#fff);box-shadow:0 0 0 3px #f6c9452e}.wn-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;margin-bottom:10px}.wn-head h3{margin:2px 0 0}.wn-version{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.04em;padding:2px 9px;border-radius:999px;background:var(--red);color:#fff}.wn-date{font-size:.82rem;color:var(--muted);font-weight:600}.wn-titles{margin:6px 0 0;padding-left:18px;font-size:.88rem;color:var(--muted)}.wn-ver{font-weight:800;color:var(--green)}.wn-grid{display:grid;gap:10px}.wn-card{border-radius:12px;padding:10px 12px;border-left:5px solid var(--red);background:#fdf1ef}.wn-card.green{border-left-color:var(--green);background:#eef7f0}.wn-card.gold{border-left-color:var(--gold);background:#fff7dc}.wn-badge{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;color:var(--red-dark)}.wn-card.green .wn-badge{color:var(--green-dark)}.wn-card.gold .wn-badge{color:#7a5800}.wn-card ul{margin:0;padding-left:18px}.wn-card li{margin:3px 0;line-height:1.35}.wn-history{margin-top:14px}.wn-history summary{cursor:pointer;font-weight:800;color:var(--green-dark);padding:6px 0}.lights{position:absolute;left:0;right:0;top:100%;height:0;pointer-events:none;display:flex;justify-content:space-between;padding:0 10px}.lights:before{content:"";position:absolute;left:0;right:0;top:0;height:9px;border-bottom:2px solid #2d4a33;border-radius:0 0 50% 50%/0 0 100% 100%;opacity:.85}.lights i{--c: #ff4d4d;position:relative;display:block;width:9px;height:13px;margin-top:6px;background:var(--c);border-radius:50%/35% 35% 65% 65%;box-shadow:0 0 6px 2px color-mix(in srgb,var(--c) 70%,transparent);animation:bulb-glow 6s ease-in-out infinite}.lights i:before{content:"";position:absolute;left:2px;top:-4px;width:5px;height:5px;background:#2d4a33;border-radius:2px 2px 0 0}.lights i:nth-child(5n+1){--c: #ff4d4d}.lights i:nth-child(5n+2){--c: #ffd54a}.lights i:nth-child(5n+3){--c: #4cd37b}.lights i:nth-child(5n+4){--c: #5aa9ff}.lights i:nth-child(5n+5){--c: #ff8ad8}@keyframes bulb-glow{0%,to{opacity:.45;filter:brightness(.8);box-shadow:0 0 3px 1px color-mix(in srgb,var(--c) 40%,transparent)}45%,60%{opacity:1;filter:brightness(1.25);box-shadow:0 0 9px 3px color-mix(in srgb,var(--c) 80%,transparent)}}@media(prefers-reduced-motion:reduce){.lights i{animation:none;opacity:.9}}@media(max-width:720px){.topbar .wn-label{display:none}.lights i:nth-child(2n){display:none}.lights{padding:0 6px}}.lights.cover-lights{top:0;z-index:2;padding:0 8px}.lights.cover-lights i{width:12px;height:17px;margin-top:11px;transform-origin:50% -2px;animation:bulb-sway var(--sway-dur, 3.6s) ease-in-out infinite;animation-delay:var(--sway-delay, 0s)}.lights.cover-lights i:before{left:3px;top:-5px;width:6px;height:6px}@keyframes bulb-sway{0%,to{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}.lights.cover-lights.on i{animation:bulb-glow var(--glow-dur, 6s) ease-in-out infinite,bulb-sway var(--sway-dur, 3.6s) ease-in-out infinite;animation-delay:var(--glow-delay, 0s),var(--sway-delay, 0s)}.lights.cover-lights.on i:nth-child(7n+1){--c: #1f9d45}.lights.cover-lights.on i:nth-child(7n+2){--c: #4cd37b}.lights.cover-lights.on i:nth-child(7n+3){--c: #0f5a26}.lights.cover-lights.on i:nth-child(7n+4){--c: #7dffb0}.lights.cover-lights.on i:nth-child(7n+5){--c: #2d8a4e}.lights.cover-lights.on i:nth-child(7n+6){--c: #a8f5c8}.lights.cover-lights.on i:nth-child(7n+7){--c: #3cb371}.lights.cover-lights.off i{opacity:.55;filter:brightness(.55) grayscale(.35);box-shadow:none;animation:bulb-sway var(--sway-dur, 3.6s) ease-in-out infinite;animation-delay:var(--sway-delay, 0s)}.lights.cover-lights.off i:nth-child(3n+1){--c: #5c5c5c}.lights.cover-lights.off i:nth-child(3n+2){--c: #7a7a72}.lights.cover-lights.off i:nth-child(3n+3){--c: #4a4a48}.lights.cover-lights.off:before{opacity:.55;border-color:#3a3a3a}@media(prefers-reduced-motion:reduce){.lights.cover-lights.on i{animation:none;opacity:.95;filter:brightness(1.05)}.lights.cover-lights.off i{animation:none}}@media(max-width:720px){.lights.cover-lights i:nth-child(2n){display:none}}.person-row{padding:12px 0;border-top:1px solid var(--line)}.person-row:first-of-type{border-top:0}.progress.over span{background:var(--red)}.pw-wrap{position:relative}.pw-wrap input{width:100%;padding-right:46px}.pw-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:38px;height:38px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:8px;color:var(--muted);box-shadow:none}.pw-eye:hover,.pw-eye:focus-visible{color:var(--ink);background:#0000000d}.done-heading.wrap-heading{color:#8f1820;background:#fbe6e4;border-color:#efbdb8;border-left-color:var(--red)}.topbar .avatar{width:34px;height:34px;border-width:2px;font-size:1.1rem;box-shadow:none}.topbar .avatar span{font-size:.8rem!important}.no-preview .row>img{display:none}@media(max-width:720px){.topbar{flex-wrap:nowrap;gap:6px;padding-left:10px;padding-right:10px}.topbar .brand{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}.topbar .spacer{flex:1 1 0;min-width:0}.topbar button{flex:0 0 auto;padding:6px 9px;font-size:.8rem}.topbar .admin-badge{display:none}}@media(max-width:480px){.topbar .avatar{display:none}}@media(max-width:480px){.topbar .signout-btn{display:none}}.modal .actions{position:sticky;bottom:calc(-1*(env(safe-area-inset-bottom) + 22px));z-index:2;margin:18px -22px calc(-1*(env(safe-area-inset-bottom) + 22px));padding:14px 22px calc(env(safe-area-inset-bottom) + 16px);background:#fff;border-top:1px solid var(--line)}.modal .acct-section{padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--line)}.modal .acct-section>label{display:block;margin-bottom:8px}.modal .acct-section .small.muted{margin-top:8px;line-height:1.4}.modal .acct-section .row{gap:14px}.modal h3{margin:4px 0 12px}.modal .field{margin-bottom:16px}.back-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:7px 14px;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 1px 3px #0000001f;color:var(--green-dark);font-size:.95rem;font-weight:700;text-decoration:none}.back-link:hover{background:var(--green);color:#fff}.themed[data-theme=starry]{--t-bg: #0a1030;--t-card: #131b45;--t-ink: #eef0ff;--t-muted: #a4acd6;--t-accent: #ffd54a;--t-accent2: #6f7fff;--t-line: #2a3573;--t-hero: linear-gradient(180deg, #05081f 0%, #121a52 60%, #2b2a78 100%)}.themed[data-theme=fireplace]{--t-bg: #1f1410;--t-card: #2c1d16;--t-ink: #fbe9d7;--t-muted: #c9a98a;--t-accent: #ff8a3d;--t-accent2: #e8590c;--t-line: #4a3025;--t-hero: radial-gradient(ellipse at 50% 130%, #ffb347 0%, #e8590c 30%, #7a2410 60%, #2a0f08 100%)}.themed[data-theme=northpole]{--t-bg: #fff6f6;--t-ink: #3a1418;--t-muted: #8a5a5f;--t-accent: #c8102e;--t-accent2: #0b7a3b;--t-line: #f0cfd3;--t-hero: linear-gradient(45deg, #c8102e 25%, #ffffff 25% 50%, #c8102e 50% 75%, #ffffff 75%)}.themed[data-theme=evergreen]{--t-bg: #eef6ef;--t-card: #ffffff;--t-ink: #14281b;--t-muted: #5b7564;--t-accent: #1b5e3b;--t-accent2: #2e8b57;--t-line: #cfe3d2;--t-hero: linear-gradient(160deg, #0e3b24 0%, #1b5e3b 55%, #2e8b57 100%)}.themed[data-theme=ornaments]{--t-bg: #fff8ee;--t-card: #ffffff;--t-ink: #3b1d12;--t-muted: #8a6a55;--t-accent: #b3202a;--t-accent2: #b8860b;--t-line: #f0e0bd;--t-hero: linear-gradient(135deg, #8f1820 0%, #b3202a 55%, #d4482f 100%)}.themed[data-theme=glassfrost]{--t-bg: #eef7fb;--t-card: #ffffff;--t-ink: #16303a;--t-muted: #5a7e8c;--t-accent: #1a7a92;--t-accent2: #3aa8c4;--t-line: #c5e0ea;--t-hero: linear-gradient(145deg, #b8dce8 0%, #7eb8cc 35%, #4a8fa8 70%, #2a6178 100%)}.themed[data-theme=candlelit]{--t-bg: #1a140c;--t-card: #261c12;--t-ink: #ffe8c8;--t-muted: #c0a078;--t-accent: #e8a030;--t-accent2: #d07020;--t-line: #4a3820;--t-hero: radial-gradient(ellipse at 50% 85%, #4a3018 0%, #1a1008 55%, #0c0804 100%)}.themed[data-theme=cottage]{--t-bg: #1a2030;--t-card: #222838;--t-ink: #e8eef8;--t-muted: #98a8c0;--t-accent: #e8a040;--t-accent2: #6a9acc;--t-line: #343e55;--t-hero: linear-gradient(180deg, #0c1428 0%, #1a2848 40%, #2a3858 70%, #1a2030 100%)}.themed[data-theme=garland]{--t-bg: #f7f1e8;--t-card: #ffffff;--t-ink: #2a2218;--t-muted: #7a6a58;--t-accent: #b3202a;--t-accent2: #1f5a38;--t-line: #e4d8c4;--t-hero: linear-gradient(160deg, #1a3d28 0%, #2a5a3c 40%, #8f1820 78%, #b3202a 100%)}.themed[data-theme=holly]{--t-bg: #eef4ee;--t-card: #ffffff;--t-ink: #14241a;--t-muted: #5a7260;--t-accent: #a81828;--t-accent2: #1a5a32;--t-line: #c8dbc8;--t-hero: linear-gradient(145deg, #0e2a18 0%, #1a4a2c 55%, #0a2014 100%)}.themed[data-theme=poinsettia]{--t-bg: #faf0ee;--t-card: #ffffff;--t-ink: #3a1818;--t-muted: #8a5a58;--t-accent: #9a1828;--t-accent2: #c84838;--t-line: #ecd0cc;--t-hero: radial-gradient(ellipse at 50% 40%, #c83038 0%, #8a1820 45%, #4a1014 100%)}.themed[data-theme=mistletoe]{--t-bg: #f2f6f0;--t-card: #ffffff;--t-ink: #1a2818;--t-muted: #5e7260;--t-accent: #2a6a3c;--t-accent2: #c8a838;--t-line: #d0ddc8;--t-hero: linear-gradient(170deg, #2a4830 0%, #3a6040 50%, #5a7850 100%)}.themed[data-theme=angelglow]{--t-bg: #faf6ee;--t-card: #ffffff;--t-ink: #3a3020;--t-muted: #8a7a60;--t-accent: #b8860b;--t-accent2: #8f1820;--t-line: #e8dcc4;--t-hero: linear-gradient(180deg, #f8ecd0 0%, #e8d0a0 40%, #c8a868 75%, #a88848 100%)}.themed[data-theme=cranberry]{--t-bg: #1a1014;--t-card: #261820;--t-ink: #f8e8ec;--t-muted: #c0a0a8;--t-accent: #e8b848;--t-accent2: #c82848;--t-line: #3a2430;--t-hero: linear-gradient(155deg, #2a0814 0%, #5a1028 40%, #8a1838 75%, #4a0c1c 100%)}.themed[data-theme=midnightchoir]{--t-bg: #101428;--t-card: #181e38;--t-ink: #e8eaf8;--t-muted: #a0a8c8;--t-accent: #d4b060;--t-accent2: #6878c0;--t-line: #2a3050;--t-hero: linear-gradient(180deg, #080c20 0%, #181c40 50%, #282850 100%)}.themed[data-theme=ribbongold]{--t-bg: #faf4ea;--t-card: #ffffff;--t-ink: #2a1c14;--t-muted: #7a6450;--t-accent: #b3202a;--t-accent2: #b8860b;--t-line: #e8d8c0;--t-hero: linear-gradient(135deg, #8f1820 0%, #b3202a 35%, #c8a028 70%, #e8c848 100%)}.themed .hero:before,.themed .hero:after,.person .cover:before,.person .cover:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0}@keyframes t-twinkle{0%,to{opacity:.35;filter:brightness(.85)}50%{opacity:1;filter:brightness(1.35)}}@keyframes t-flicker{0%,to{opacity:.8;transform:scale(1)}25%{opacity:1;transform:scale(1.04)}50%{opacity:.65;transform:scale(.98)}75%{opacity:.95;transform:scale(1.03)}}@keyframes t-stripes{0%{background-position:0 0}to{background-position:56px 0}}@keyframes t-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes t-float{0%{transform:translateY(0)}to{transform:translateY(-60px)}}@keyframes t-aurora{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes t-shimmer{0%,to{background-position:0% 0%,40px 20px,10px 40px;filter:brightness(.9)}50%{background-position:20px 10px,60px 0,0 50px;filter:brightness(1.25)}}@keyframes t-softfade{0%,to{opacity:.4}50%{opacity:.95}}@keyframes t-softglow{0%,to{opacity:.45;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.2)}}@keyframes t-gentlefloat{0%{transform:translateY(0)}to{transform:translateY(-36px)}}@keyframes t-wash{0%,to{opacity:.2}50%{opacity:.65}}.themed[data-theme=starry] .hero:before,.person .cover[data-theme=starry]:before{background-image:radial-gradient(circle,#fffef5 0 2.2px,rgba(255,236,170,.55) 3.5px,transparent 5px),radial-gradient(circle,#ffe566 0 1.8px,rgba(255,200,60,.45) 3px,transparent 4.5px),radial-gradient(circle,#fff8dc 0 1.4px,transparent 2.4px),radial-gradient(circle,#ffd54a 0 1.2px,transparent 2.2px);background-size:100px 78px,140px 118px,62px 68px,88px 96px;background-position:12px 18px,58px 4px,28px 42px,74px 56px;animation:t-twinkle 2.8s ease-in-out infinite}.themed[data-theme=starry] .hero:after,.person .cover[data-theme=starry]:after{background-image:radial-gradient(circle,#fffaf0 0 2px,rgba(255,230,160,.5) 3.2px,transparent 4.5px),radial-gradient(circle,#ffec8a 0 1.5px,transparent 2.6px),radial-gradient(circle,#e8f0ff 0 1.2px,transparent 2px);background-size:118px 96px,78px 84px,52px 60px;background-position:48px 48px,6px 28px,90px 12px;animation:t-twinkle 3.8s ease-in-out -1.5s infinite}.themed[data-theme=fireplace] .hero:before,.person .cover[data-theme=fireplace]:before{background:radial-gradient(ellipse at 30% 110%,rgba(255,190,80,.8),transparent 55%);transform-origin:30% 100%;animation:t-flicker 2.1s ease-in-out infinite}.themed[data-theme=fireplace] .hero:after,.person .cover[data-theme=fireplace]:after{background:radial-gradient(ellipse at 75% 115%,rgba(255,120,40,.7),transparent 50%);transform-origin:75% 100%;animation:t-flicker 2.7s ease-in-out -1.1s infinite}.themed[data-theme=northpole] .hero,.person .cover[data-theme=northpole]{background-size:56px 56px;animation:t-stripes 2.4s linear infinite}.themed[data-theme=evergreen] .hero:before,.person .cover[data-theme=evergreen]:before{background-image:radial-gradient(circle,#ffd966 0 2px,transparent 3px),radial-gradient(circle,#fff3b0 0 1px,transparent 2px);background-size:100px 80px,60px 70px;background-position:20px 30px,45px 10px;animation:t-twinkle 2.6s ease-in-out infinite}.themed[data-theme=evergreen] .hero:after,.person .cover[data-theme=evergreen]:after{background-image:radial-gradient(circle,#ffd966 0 1.5px,transparent 2.5px);background-size:80px 90px;background-position:55px 60px;animation:t-twinkle 3.4s ease-in-out -1.2s infinite}.themed[data-theme=ornaments] .hero:before,.themed[data-theme=ornaments] .hero:after,.person .cover[data-theme=ornaments]:before,.person .cover[data-theme=ornaments]:after{inset:0 0 -60px;background-image:radial-gradient(circle,rgba(255,215,120,.85) 0 7px,transparent 8px),radial-gradient(circle,rgba(255,255,255,.5) 0 4px,transparent 5px);background-size:120px 60px,80px 60px;background-position:15px 10px,70px 35px;animation:t-float 6s linear infinite}.themed[data-theme=ornaments] .hero:after,.person .cover[data-theme=ornaments]:after{opacity:.6;background-position:60px 30px,10px 5px;animation-duration:9s}.themed[data-theme=aurora] .hero,.person .cover[data-theme=aurora]{background-size:300% 300%;animation:t-aurora 12s ease-in-out infinite}.themed[data-theme=glassfrost] .hero:before,.person .cover[data-theme=glassfrost]:before{background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.55) 0 1px,transparent 2px),radial-gradient(circle at 70% 55%,rgba(255,255,255,.4) 0 1.5px,transparent 2.5px),radial-gradient(circle at 45% 80%,rgba(220,245,255,.5) 0 1px,transparent 2px),radial-gradient(circle at 85% 20%,rgba(255,255,255,.35) 0 2px,transparent 3px),linear-gradient(160deg,rgba(255,255,255,.35) 0%,transparent 28%,transparent 72%,rgba(180,220,235,.25) 100%);background-size:42px 42px,58px 58px,36px 36px,70px 70px,100% 100%;-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px);box-shadow:inset 0 0 40px #ffffff40,inset 0 0 80px #78b4c826;animation:t-shimmer 7s ease-in-out infinite}.themed[data-theme=glassfrost] .hero:after,.person .cover[data-theme=glassfrost]:after{background:linear-gradient(105deg,transparent 28%,rgba(255,255,255,.55) 48%,rgba(220,245,255,.35) 52%,transparent 72%);animation:t-sweep 6.5s ease-in-out infinite}.themed[data-theme=candlelit] .hero:before,.person .cover[data-theme=candlelit]:before{background:radial-gradient(circle at 22% 72%,rgba(255,210,100,.95) 0 4%,rgba(255,140,40,.45) 10%,transparent 22%),radial-gradient(circle at 50% 68%,rgba(255,230,140,1) 0 5%,rgba(255,160,50,.5) 12%,transparent 26%),radial-gradient(circle at 78% 74%,rgba(255,200,90,.9) 0 3.5%,rgba(255,120,30,.4) 9%,transparent 20%);animation:t-flicker 2.3s ease-in-out infinite}.themed[data-theme=candlelit] .hero:after,.person .cover[data-theme=candlelit]:after{background:radial-gradient(ellipse at 50% 90%,rgba(255,160,60,.35),transparent 55%),radial-gradient(circle at 35% 70%,rgba(255,220,120,.35) 0 2%,transparent 8%),radial-gradient(circle at 65% 72%,rgba(255,200,100,.3) 0 2%,transparent 8%);animation:t-flicker 3.1s ease-in-out -1.4s infinite}.themed[data-theme=cottage] .hero:before,.person .cover[data-theme=cottage]:before{background:radial-gradient(ellipse 22% 28% at 50% 62%,rgba(255,200,100,.95) 0%,rgba(255,160,60,.55) 35%,transparent 70%),radial-gradient(ellipse 40% 35% at 50% 68%,rgba(255,140,40,.25),transparent 70%);animation:t-flicker 3.6s ease-in-out infinite}.themed[data-theme=cottage] .hero:after,.person .cover[data-theme=cottage]:after{background-image:radial-gradient(circle,rgba(255,255,255,.85) 0 1.5px,transparent 2.2px),radial-gradient(circle,rgba(220,230,255,.6) 0 1px,transparent 1.8px),radial-gradient(circle,rgba(255,255,255,.45) 0 2.5px,transparent 3.5px);background-size:70px 60px,100px 90px,140px 120px;background-position:10px 15px,40px 50px,80px 20px;filter:blur(.4px);animation:t-float 9s linear infinite}.themed[data-theme=garland] .hero:before,.person .cover[data-theme=garland]:before{background-image:radial-gradient(circle,rgba(255,230,140,.95) 0 3px,rgba(255,180,60,.35) 6px,transparent 10px),radial-gradient(circle,rgba(255,120,100,.9) 0 2.5px,rgba(200,40,40,.3) 5px,transparent 9px),radial-gradient(circle,rgba(180,255,180,.85) 0 2.5px,rgba(40,140,60,.3) 5px,transparent 9px);background-size:72px 48px,88px 52px,64px 44px;background-position:8px 28%,28px 42%,48px 22%;animation:t-softglow 9s ease-in-out infinite}.themed[data-theme=garland] .hero:after,.person .cover[data-theme=garland]:after{background-image:radial-gradient(circle,rgba(255,250,210,.8) 0 2px,transparent 5px),radial-gradient(circle,rgba(255,200,120,.7) 0 2px,transparent 5px);background-size:56px 40px,96px 56px;background-position:16px 55%,40px 30%;animation:t-softfade 11s ease-in-out -4s infinite}.themed[data-theme=holly] .hero:before,.person .cover[data-theme=holly]:before{background-image:radial-gradient(circle,rgba(200,40,48,.95) 0 5px,transparent 7px),radial-gradient(circle,rgba(220,60,60,.75) 0 3.5px,transparent 5px),radial-gradient(circle,rgba(160,30,40,.7) 0 4px,transparent 6px);background-size:90px 70px,120px 80px,70px 60px;background-position:20px 35%,70px 55%,45px 20%;animation:t-softfade 10s ease-in-out infinite}.themed[data-theme=holly] .hero:after,.person .cover[data-theme=holly]:after{background-image:radial-gradient(ellipse 40% 25% at 30% 70%,rgba(40,100,50,.45),transparent),radial-gradient(ellipse 35% 20% at 75% 40%,rgba(30,80,40,.4),transparent);animation:t-wash 14s ease-in-out infinite}.themed[data-theme=poinsettia] .hero:before,.person .cover[data-theme=poinsettia]:before{background-image:radial-gradient(ellipse 28% 22% at 50% 48%,rgba(255,200,180,.35),transparent),radial-gradient(circle,rgba(255,90,80,.45) 0 18px,transparent 28px),radial-gradient(circle,rgba(180,30,40,.4) 0 24px,transparent 36px);background-size:100% 100%,160px 140px,200px 160px;background-position:center,30% 40%,70% 55%;animation:t-softfade 12s ease-in-out infinite}.themed[data-theme=poinsettia] .hero:after,.person .cover[data-theme=poinsettia]:after{background:radial-gradient(circle at 50% 48%,rgba(255,220,100,.55) 0 4px,rgba(255,180,60,.25) 10px,transparent 22px);animation:t-softglow 8s ease-in-out infinite}.themed[data-theme=mistletoe] .hero:before,.person .cover[data-theme=mistletoe]:before{inset:0 0 -40px;background-image:radial-gradient(circle,rgba(255,255,240,.9) 0 5px,transparent 7px),radial-gradient(circle,rgba(230,210,120,.75) 0 3.5px,transparent 5px);background-size:110px 55px,80px 50px;background-position:12px 8px,55px 28px;animation:t-gentlefloat 10s linear infinite}.themed[data-theme=mistletoe] .hero:after,.person .cover[data-theme=mistletoe]:after{inset:0 0 -40px;opacity:.65;background-image:radial-gradient(circle,rgba(255,255,255,.7) 0 3px,transparent 5px),radial-gradient(circle,rgba(200,230,180,.5) 0 4px,transparent 6px);background-size:95px 50px,130px 60px;background-position:40px 20px,8px 40px;animation:t-gentlefloat 14s linear -5s infinite}.themed[data-theme=angelglow] .hero:before,.person .cover[data-theme=angelglow]:before{background:radial-gradient(ellipse at 50% 40%,rgba(255,255,245,.55) 0%,rgba(255,230,160,.2) 40%,transparent 70%);animation:t-wash 11s ease-in-out infinite}.themed[data-theme=angelglow] .hero:after,.person .cover[data-theme=angelglow]:after{background:linear-gradient(105deg,transparent 25%,rgba(255,250,230,.55) 48%,rgba(255,220,140,.3) 52%,transparent 75%);animation:t-sweep 14s ease-in-out infinite}.themed[data-theme=cranberry] .hero:before,.person .cover[data-theme=cranberry]:before{background-image:radial-gradient(circle,rgba(255,220,140,.85) 0 2px,transparent 4px),radial-gradient(circle,rgba(255,200,100,.65) 0 1.5px,transparent 3.5px),radial-gradient(circle,rgba(255,240,200,.55) 0 1px,transparent 3px);background-size:70px 55px,100px 70px,50px 45px;background-position:10px 20%,40px 55%,65px 35%;animation:t-softglow 12s ease-in-out infinite}.themed[data-theme=cranberry] .hero:after,.person .cover[data-theme=cranberry]:after{background:radial-gradient(ellipse at 50% 80%,rgba(200,40,70,.35),transparent 55%);animation:t-wash 13s ease-in-out -3s infinite}.themed[data-theme=midnightchoir] .hero:before,.person .cover[data-theme=midnightchoir]:before{background-image:radial-gradient(circle at 25% 70%,rgba(255,210,120,.55) 0 3%,rgba(255,160,60,.2) 8%,transparent 18%),radial-gradient(circle at 72% 65%,rgba(200,210,255,.4) 0 2.5%,transparent 14%),radial-gradient(circle at 50% 30%,rgba(255,255,255,.35) 0 1.5%,transparent 6%);animation:t-softfade 13s ease-in-out infinite}.themed[data-theme=midnightchoir] .hero:after,.person .cover[data-theme=midnightchoir]:after{background:radial-gradient(ellipse at 50% 100%,rgba(80,90,160,.35),transparent 50%),radial-gradient(circle at 18% 25%,rgba(255,240,180,.3) 0 1px,transparent 4px),radial-gradient(circle at 82% 20%,rgba(220,230,255,.35) 0 1px,transparent 4px);animation:t-softglow 15s ease-in-out -6s infinite}.themed[data-theme=ribbongold] .hero:before,.person .cover[data-theme=ribbongold]:before{background:linear-gradient(115deg,transparent 30%,rgba(255,220,120,.45) 48%,rgba(255,240,180,.55) 50%,rgba(255,200,80,.4) 52%,transparent 70%);animation:t-sweep 12s ease-in-out infinite}.themed[data-theme=ribbongold] .hero:after,.person .cover[data-theme=ribbongold]:after{background-image:radial-gradient(circle,rgba(255,230,140,.7) 0 2px,transparent 4px),radial-gradient(circle,rgba(255,255,220,.5) 0 1.5px,transparent 3px);background-size:80px 50px,110px 70px;background-position:20px 40%,55px 25%;animation:t-softfade 10s ease-in-out -2s infinite}@media(prefers-reduced-motion:reduce){.themed .hero,.themed .hero:before,.themed .hero:after,.person .cover,.person .cover:before,.person .cover:after{animation:none!important}}.owe-row{padding:8px 0;gap:10px;align-items:flex-start}.owe-items{margin:4px 0 0;padding-left:18px;color:var(--muted);font-size:.85rem}.owe-items li{margin:2px 0}.wiz-page{min-height:100vh;min-height:100dvh;display:flex;justify-content:center;padding:16px 12px 28px;background:var(--bg)}.wiz{width:100%;max-width:560px}.wiz-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.wiz-brand{font-weight:800;color:var(--red)}.wiz-dots{display:flex;gap:6px;margin-bottom:4px}.wiz-dot{flex:1;height:6px;border-radius:99px;background:var(--line)}.wiz-dot.done{background:var(--green);opacity:.55}.wiz-dot.on{background:var(--red)}.wiz-step{margin-bottom:10px}.wiz-body{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 18px;box-shadow:var(--shadow, 0 2px 8px rgba(0,0,0,.06))}.wiz-body h1{margin-top:0}.wiz-list{padding-left:4px;list-style:none;line-height:1.9}.wiz-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px;position:sticky;bottom:8px}.wiz-preview{border-radius:12px;overflow:hidden}.wiz-preview .hero{min-height:110px}.wiz-preview .hero .content{padding-top:34px}.modal.look-studio{max-width:560px;padding-top:16px}.look-studio-preview{position:sticky;top:-4px;z-index:4;margin:0 -22px 14px;padding:10px 22px 12px;background:var(--cream, #fbf4ea);border-bottom:1px solid var(--line);box-shadow:0 6px 12px -8px #3c1e0a59}.look-studio-preview .look-preview .hero{min-height:120px;border-radius:14px 14px 0 0;box-shadow:none}.look-studio-preview .look-preview{border-radius:14px;box-shadow:0 4px 14px #3c1e142e}.look-page-sample{padding:10px 12px 12px;pointer-events:none;-webkit-user-select:none;user-select:none}.look-page-sample-label{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--t-muted);margin-bottom:4px}.look-sample-item{margin-bottom:0!important}.look-studio-controls{padding-bottom:4px}.look-studio-controls .swatches{margin-top:4px}button.look-entry{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:14px 16px;margin:0;cursor:pointer;background:var(--card, #fff);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px #3c1e140f,0 6px 16px #3c1e140d;transition:box-shadow .15s,transform .1s,border-color .15s}button.look-entry:hover{border-color:var(--green, #35633f);box-shadow:0 4px 14px #3c1e141f;transform:translateY(-1px)}button.look-entry:active{transform:translateY(0)}.look-entry-swatch{flex:0 0 auto;width:48px;height:48px;border-radius:12px;background:var(--t-hero);border:1px solid rgba(0,0,0,.08);box-shadow:inset 0 0 0 1px #ffffff26}.look-entry-copy{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.look-entry-copy strong{font-size:1.05rem;letter-spacing:-.01em}.look-entry-action{flex:0 0 auto;padding:8px 14px;border-radius:999px;font-weight:800;font-size:.85rem;background:var(--green, #35633f);color:#fff}@media(prefers-reduced-motion:reduce){button.look-entry{transition:none}button.look-entry:hover{transform:none}}.wiz-kid{display:flex;align-items:center;gap:8px;padding:4px 0}.wiz-cards{display:grid;gap:10px}.wiz-card{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fffaf3}.wiz-card p{margin:4px 0 0;color:var(--muted);font-size:.92rem}.wiz-emoji{font-size:1.6rem}.wiz-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.wiz-item img{width:36px;height:36px;object-fit:cover;border-radius:6px}.page-title{margin:0 0 12px;font-size:1.7rem}.tabs{margin-bottom:12px}.tabs button{border-radius:999px;font-weight:700;box-shadow:0 1px 2px #0000000d}.soft-note{margin:0 0 12px;padding:8px 12px;font-size:.85rem;color:var(--muted, #6b6258);background:#fff9;border:1px dashed var(--line);border-radius:10px}.closed-hint{margin:-4px 0 14px;padding:8px 12px;font-size:.85rem;background:#fff7e0;border:1px solid #ecd9a0;border-radius:10px}.themed .hero{min-height:420px;border-radius:16px;box-shadow:0 6px 18px #3c1e142e}.hero-pill{position:absolute;top:auto;bottom:18px;right:8px;z-index:5;display:inline-flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;border-radius:999px;font-size:.82rem;font-weight:800;border:2px solid #fff;color:#14261a!important;background:#fff!important;box-shadow:0 2px 10px #00000073,0 0 0 1px #00000040;cursor:pointer;text-shadow:none}.hero-pill .dot{width:11px;height:11px;border-radius:50%;background:#1f9d45;border:2px solid #0f5a26}.hero-pill.closed{color:#4a3300!important;background:#fff3cf!important;border-color:#fff3cf}.hero-pill.closed .dot{background:#d92d2d;border-color:#7a1212;animation:none}.hero-pill.open .dot{animation:pill-pulse 1.6s ease-out infinite}@keyframes pill-pulse{0%{box-shadow:0 0 #1f9d45b3}70%{box-shadow:0 0 0 9px #1f9d4500}to{box-shadow:0 0 #1f9d4500}}@media(prefers-reduced-motion:reduce){.hero-pill.open .dot{animation:none}}.hero-pill .act{padding:4px 10px;border-radius:999px;background:#1f4d2b;color:#fff;font-size:.74rem}.hero-err{position:absolute;bottom:62px;right:8px;z-index:5;background:#fff;color:#a01c1c;padding:4px 8px;border-radius:8px;font-size:.8rem}.my-items{margin-top:12px;display:grid;gap:10px}.my-item{padding:12px;background:#fffdf9;border:1px solid var(--line);border-radius:14px;transition:box-shadow .15s,transform .15s}.my-item:hover{box-shadow:0 4px 12px #3c1e141a;transform:translateY(-1px)}.my-item.selected{border-color:var(--green);background:#eef7f0;box-shadow:0 0 0 2px #35633f33}.bulk-bar{padding:8px 10px;background:#fff7e8;border:1px solid #ecd9a0;border-radius:10px}@media(prefers-reduced-motion:reduce){.my-item{transition:none}.my-item:hover{transform:none}}.wl-tile{display:flex;align-items:center;gap:12px;padding:12px;margin-top:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 3px #0000000d}.wl-tile.amazon{border-left:4px solid #ff9900}.wl-badge{flex:0 0 auto;width:46px;height:46px;border-radius:12px;background:#eef2ea;display:grid;place-items:center;font-size:1.4rem}.wl-tile.amazon .wl-badge{background:#232f3e;position:relative}.wl-a{color:inherit;font-weight:900;font-size:1.7rem;line-height:1;font-family:Georgia,Times New Roman,serif;margin-top:-6px}.wl-tile.amazon .wl-badge:after{content:"";position:absolute;left:10px;right:10px;bottom:9px;height:7px;border-bottom:3px solid #ff9900;border-radius:0 0 50% 50%}.wl-body{flex:1 1 auto;min-width:0}.wl-kind{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#8a6d00}.wl-tile.amazon .wl-kind{color:#b35a00}.wl-title{font-weight:800;overflow-wrap:anywhere}.wl-site{font-size:.8rem;color:var(--muted, #6b6258)}.wl-open{flex:0 0 auto;padding:8px 14px;border-radius:999px;font-weight:800;font-size:.85rem;text-decoration:none;background:#ffd814;color:#111;border:1px solid #f2c200}.wl-tile:not(.amazon) .wl-open{background:var(--green);color:#fff;border-color:var(--green)}.wl-open:hover{filter:brightness(.96)}@media(max-width:480px){.wl-tile{flex-wrap:wrap}.wl-open{margin-left:58px}}.wl-badge{position:relative}.wl-a.small{font-family:system-ui,sans-serif;font-size:1rem;margin-top:0;letter-spacing:-.02em}.wl-under{position:absolute;left:10px;right:10px;bottom:8px;height:6px;border-bottom:3px solid;border-radius:0 0 50% 50%}.wl-a.small+.wl-under{display:none}.wl-tile.amazon .wl-badge:after{display:none}.site-link.branded{display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 2px;background:#fff;border:1.5px solid;border-radius:999px;font-weight:800;font-size:.8rem;text-decoration:none;color:var(--ink)}.sl-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:999px;font-size:.68rem;font-weight:900;line-height:1}.sl-badge:has(.brand-mark){padding:0;width:20px;min-width:20px}.brand-mark{display:block;flex:0 0 auto}.bm-pill{font-size:12px}.bm-tile{font-size:22px}.bm-card{font-size:2.1rem}.wl-badge .brand-mark,.lc-brand .brand-mark{color:inherit}.thumb-ph{width:72px;height:72px;flex:0 0 auto;border-radius:10px;display:grid;place-items:center;font-size:1.8rem;background:repeating-linear-gradient(45deg,#f4efe6,#f4efe6 8px,#efe8dc 8px 16px);border:1px dashed var(--line);opacity:.9}.hero-pill.static{cursor:default;padding-right:12px}.themed .item{box-shadow:0 1px 3px #0000000f;border-radius:14px;transition:box-shadow .15s,transform .15s}.themed .item:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-1px)}.themed .item .thumb{width:72px;height:72px;border-radius:10px}.themed .thumb-ph{border-color:var(--t-line)}.themed .wl-tile{background:var(--t-card);border-color:var(--t-line);color:var(--t-ink)}.themed .wl-site{color:var(--t-muted)}.themed .wl-title{color:var(--t-ink)}.themed .soft-note{background:transparent;border-color:var(--t-line);color:var(--t-muted)}.themed .site-link.branded{background:var(--t-card);color:var(--t-ink)}.themed .wl-open{color:inherit}.themed a.wl-open{color:#111}.themed .wl-tile:not([style*=border-left]) a.wl-open{color:#fff}@media(prefers-reduced-motion:reduce){.themed .item{transition:none}.themed .item:hover{transform:none}}.wiz-kids{display:flex;flex-direction:column;gap:8px;margin-top:8px}.wiz-kid-block{border:1px solid var(--line);border-radius:12px;background:#fff;padding:4px 12px 10px}.wiz-kid-block .wiz-kid{border:0;padding:8px 0;background:transparent}.wiz-kid{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#fff}.wiz-kid .avatar{width:40px;height:40px;font-size:1.2rem}.wiz-kid-photo{display:flex;align-items:center;gap:10px;padding:0 0 2px 28px;flex-wrap:wrap}.notes-import{background:#fffdf7;border-style:dashed}.notes-drafts{list-style:none;margin:0 0 12px;padding:0;max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:12px}.notes-drafts li{padding:8px 10px;border-bottom:1px solid var(--line)}.notes-drafts li:last-child{border-bottom:0}.notes-drafts .check{align-items:flex-start}.page-title{margin:0 0 4px;font-size:1.7rem;letter-spacing:-.01em}.page-title:after{content:"";display:block;width:46px;height:4px;margin-top:6px;border-radius:4px;background:linear-gradient(90deg,var(--red, #b3202a),var(--gold, #d9a21b))}.page-sub{margin:8px 0 14px;font-size:.9rem;color:var(--muted, #6b6258)}.page-title+.tabs,.page-title+.soft-note{margin-top:12px}.card{border-radius:14px;box-shadow:0 1px 3px #3c1e140f,0 6px 16px #3c1e140d}.card h2{letter-spacing:-.005em}.stat-card{position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--gold, #d9a21b)}.stat-card.green:before{background:var(--green, #35633f)}.stat-card strong,.stat-card .big{letter-spacing:-.01em}.person-row{border-radius:10px;transition:background .15s}.card .person-row:hover{background:#d9a21b12}.done-heading{box-shadow:0 1px 2px #3c1e140f}button,.btn{transition:filter .15s,transform .1s}button:not(:disabled):active{transform:translateY(1px)}@media(prefers-reduced-motion:reduce){button,.btn,.person-row{transition:none}}.list-instructions{white-space:pre-wrap;font-weight:550;color:var(--ink, #2b2420);background:#fff8e6e6;border-style:solid;border-color:#d9a21b73}.themed .list-instructions{background:#ffffffb8;color:var(--t-ink);border-color:var(--t-line)}.presence-wrap{position:relative;z-index:91}.presence-trigger.is-open{background:#ffffff2e}.presence-dropdown{position:absolute;right:0;top:calc(100% + .4rem);z-index:90;width:min(22rem,calc(100vw - 1.5rem));max-width:calc(100vw - 1rem);padding:.85rem .9rem .95rem;background:linear-gradient(180deg,rgba(246,201,69,.22) 0%,transparent 2.4rem),var(--cream, #fbf4ea);color:var(--ink, #2b2420);border:1px solid rgba(217,162,27,.45);border-radius:.75rem;box-shadow:0 12px 30px #3c1e1433;box-sizing:border-box;overflow:hidden}.presence-dropdown:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--red, #b3202a) 0%,var(--gold, #f6c945) 48%,var(--green, #1f6b3a) 100%)}.presence-dropdown-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.55rem}.presence-dropdown-head--recent{margin-top:.85rem;padding-top:.7rem;border-top:1px solid rgba(217,162,27,.35)}.presence-dropdown-head strong{font-size:.92rem;color:var(--red, #b3202a);letter-spacing:-.01em}.presence-dropdown-head .muted,.presence-empty{font-size:.75rem;margin:0}.presence-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:16rem;overflow:auto}.presence-row{display:flex;align-items:flex-start;gap:.65rem;padding:.45rem .4rem;border-radius:.55rem;background:#ffffffb8;border:1px solid rgba(232,220,203,.95)}.presence-row .avatar{width:36px;height:36px;font-size:1.05rem;border-width:2px;box-shadow:0 1px 4px #3c1e1424}.presence-row .avatar span{font-size:.72rem!important}.presence-row-main{display:flex;flex-direction:column;gap:.08rem;min-width:0;flex:1}.presence-row-top{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.presence-name{font-size:.86rem;font-weight:700}.presence-meta,.presence-seen{font-size:.72rem}.presence-page{font-size:.78rem;font-weight:650;color:var(--green, #1f6b3a)}.presence-seen{flex-shrink:0;white-space:nowrap}.presence-toasts{position:fixed;right:1rem;bottom:1rem;z-index:60;display:flex;flex-direction:column;gap:.45rem;pointer-events:none}.presence-toast{min-width:12rem;max-width:min(22rem,calc(100vw - 2rem));padding:.7rem .9rem;background:linear-gradient(120deg,var(--red, #b3202a) 0%,#8f1820 55%,var(--green-dark, #17512c) 100%);color:#fff;border-radius:.55rem;font-size:.86rem;font-weight:600;box-shadow:0 8px 24px #3c1e1447;border:1px solid rgba(246,201,69,.35)}
