html{font-size:16px}body{min-width:320px}:root{font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1a1420;--surface:#322638;--surface-alt:#271d30;--surface-hover:#433047;--accent:#a36a40;--action:#ffbf70;--text:#fff0d7;--muted:#c6b5bb;--border:#725267;--selected-bg:#61402f;--selected-text:#fff0d7;--glow:#ffbf7033;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff7ed;--surface:#fff;--surface-alt:#ffead5;--surface-hover:#ffe2c2;--accent:#a36a40;--action:#a36a40;--text:#513326;--muted:#765a4f;--border:#e5c6a9;--selected-bg:#ffe2c2;--selected-text:#513326;--glow:#a36a4021}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;transition:background .25s,color .25s}button,textarea{font:inherit}button{cursor:pointer}.app{background:radial-gradient(ellipse at 85% 5%, var(--glow) 0%, transparent 42%), var(--bg);max-width:950px;min-height:100vh;margin:auto;padding:24px clamp(17px,5vw,48px)}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:35px;padding-bottom:23px;display:flex}.brand{letter-spacing:-.6px;font-size:clamp(19px,3vw,25px);font-weight:850;line-height:1.25}.theme-toggle{border:1px solid var(--border);background:var(--surface);min-width:98px;min-height:54px;color:var(--text);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:9px;padding:10px 15px;font-size:19px;font-weight:750;display:flex}.theme-toggle>span:first-child{color:var(--action);font-size:26px}.eyebrow{color:var(--action);letter-spacing:1.2px;text-transform:uppercase;font-size:15px;font-weight:850;display:inline-block}h1{letter-spacing:-1.5px;margin:16px 0 25px;font-size:clamp(38px,8vw,62px);line-height:1.12}h2{letter-spacing:-.7px;margin:18px 0;font-size:clamp(30px,6vw,42px);line-height:1.2}h3{margin:0 0 12px;font-size:clamp(25px,4vw,30px);line-height:1.25}p{font-size:clamp(21px,3vw,24px);line-height:1.55}.welcome{padding:35px 0}.hero-icon{border:1px solid var(--border);background:linear-gradient(135deg, var(--surface), var(--selected-bg));width:110px;height:110px;box-shadow:0 15px 45px var(--glow);border-radius:28px;justify-content:center;align-items:center;margin-bottom:32px;font-size:64px;display:flex}.notice{border:1px solid var(--border);border-left:4px solid var(--action);background:var(--surface-alt);color:var(--text);border-radius:18px;margin:27px 0;padding:24px;font-size:20px;line-height:1.55}.help{color:var(--muted);font-size:21px}button{border:1px solid var(--border);background:var(--surface);min-height:64px;color:var(--text);border-radius:17px;padding:16px 20px;font-size:20px;font-weight:750;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}button:hover{background:var(--surface-hover);border-color:var(--action)}button:active{transform:scale(.985)}button:focus-visible,textarea:focus-visible{outline:4px solid var(--action);outline-offset:4px}.primary{box-shadow:0 8px 24px var(--glow);color:#231520!important;background:linear-gradient(115deg,#a36a40,#ffbf70)!important;border:1px solid #ffbf70!important}.primary:hover{filter:brightness(1.06)}.options{gap:15px;margin-top:30px;display:grid}.option{text-align:left;justify-content:space-between;align-items:center;gap:18px;padding:23px;font-size:22px;line-height:1.4;display:flex}.option.selected{border-color:var(--action);background:var(--selected-bg);color:var(--selected-text);box-shadow:inset 0 0 0 1px var(--action)}.progress{color:var(--action);margin:27px 0;font-size:19px;font-weight:800}.nav{gap:15px;margin:38px 0;display:flex}.nav button{flex:1}.family-list{gap:20px;margin-top:32px;display:grid}.family{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface), var(--surface-alt));box-shadow:0 8px 25px var(--glow);border-radius:23px;padding:26px}.family p{color:var(--muted);margin:0 0 20px;font-size:20px}.family-actions{flex-wrap:wrap;gap:10px;display:flex}.family-actions button{flex:1;min-height:60px;padding:12px;font-size:18px}.family-actions .active{border-color:var(--action);background:var(--selected-bg);color:var(--selected-text);box-shadow:inset 0 0 0 1px var(--action)}textarea{border:2px solid var(--border);background:var(--surface);width:100%;min-height:170px;color:var(--text);resize:vertical;border-radius:20px;padding:23px;font-size:23px;line-height:1.55}textarea::placeholder{color:var(--muted)}footer{border-top:1px solid var(--border);color:var(--muted);text-align:center;margin-top:60px;padding:26px 0;font-size:16px}@media (width<=560px){.app{padding:19px 16px}.topbar{margin-bottom:22px}.theme-toggle{width:54px;min-width:54px;padding:8px}.theme-label{display:none}.family{padding:20px}.family-actions{grid-template-columns:1fr;display:grid}.nav{flex-direction:column}.nav button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}body{overscroll-behavior-y:none;overflow-x:hidden}.app{overflow-wrap:break-word;width:100%}@media (width<=600px){.app{width:100%;min-height:100dvh;padding:max(14px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom))}.topbar{z-index:20;background:var(--bg);padding:14px 0;position:sticky;top:0}.brand{max-width:75%;font-size:19px}h1{font-size:clamp(36px,9vw,48px)}h2{font-size:clamp(29px,7.5vw,38px)}p,.help{font-size:21px;line-height:1.5}.option{width:100%;min-height:76px;padding:20px;font-size:22px}.family-actions button{width:100%;min-height:64px;font-size:20px}.nav{gap:12px}.nav button{min-height:68px;font-size:21px}textarea{min-height:200px;font-size:21px}.theme-toggle{min-width:56px;min-height:56px}}@media (width<=360px){.app{padding-left:12px;padding-right:12px}.brand{font-size:17px}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:hidden}.fab-sync-status{color:var(--muted);text-align:right;margin:0 0 22px;font-size:16px}@media (width<=600px){.app{width:100%;padding:18px 16px 35px}h1{font-size:clamp(40px,10vw,52px)}h2{font-size:clamp(32px,8vw,42px)}p,.help{font-size:23px;line-height:1.55}.option{width:100%;min-height:82px;padding:22px;font-size:24px}.family h3{font-size:29px}.family p{font-size:22px}.family-actions button{min-height:68px;font-size:21px}.nav button{min-height:72px;font-size:23px}textarea{font-size:23px}.theme-toggle{min-width:58px;min-height:58px}}
