:root{--bg:#f4f3ef;--fg:#0b0b0b;--muted:#6b6a63;--amber:#fab219;--green:#0ca30c;--red:#d03b3b;--line:#0b0b0b1a;--radius:22px}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{color:var(--fg);background:radial-gradient(900px circle at 6% -8%, #fab21961, transparent 62%), radial-gradient(820px circle at 98% 4%, #0ca30c4d, transparent 62%), radial-gradient(760px circle at 40% 105%, #d03b3b42, transparent 62%), radial-gradient(600px circle at 75% 60%, #fab21929, transparent 60%), var(--bg);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Inter,system-ui,sans-serif;font-size:15px;line-height:1.55}.glass{-webkit-backdrop-filter:blur(18px)saturate(180%);backdrop-filter:blur(18px)saturate(180%);background:#ffffff8c;border:1px solid #ffffffa6;box-shadow:inset 0 1px #ffffffe6,inset 0 0 0 1px #ffffff26,0 10px 30px #0b0b0b14}.wrap{max-width:860px;margin:0 auto;padding:22px 16px 40px}button,select,input,textarea{font:inherit;color:inherit}.btn{border:1px solid var(--line);cursor:pointer;background:#ffffffb8;border-radius:999px;padding:10px 18px;font-weight:600;transition:all .15s}.btn:hover{background:#fff;transform:translateY(-1px)}.btn.dark{background:var(--fg);color:#fff;border-color:var(--fg)}.btn.dark:hover{background:#222}.btn.ghost{background:0 0}.btn.sm{padding:6px 13px;font-size:13px}.btn.big{border-radius:18px;width:100%;padding:17px 22px;font-size:17px}.btn.ok{background:var(--green);border-color:var(--green);color:#fff}.btn:disabled{opacity:.4;cursor:default;transform:none}.spacer{flex:1}.muted{color:var(--muted)}.gate{flex-direction:column;justify-content:center;gap:22px;min-height:80vh;display:flex}.gate h1{letter-spacing:-.03em;margin:0;font-size:clamp(30px,6.4vw,46px);line-height:1.05}.choices{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:640px){.choices{grid-template-columns:1fr}}.choice{text-align:left;border-radius:var(--radius);cursor:pointer;border:none;flex-direction:column;gap:7px;padding:26px 24px;transition:all .18s;display:flex}.choice:hover{transform:translateY(-3px)}.choice .big{letter-spacing:-.02em;font-size:23px;font-weight:700}.choice .desc{color:var(--muted);font-size:14px}.dot{border-radius:99px;width:10px;height:10px;margin-right:8px;display:inline-block}header.top{border-radius:var(--radius);align-items:center;gap:12px;margin-bottom:16px;padding:13px 18px;display:flex}.brand{letter-spacing:-.02em;font-size:14px;font-weight:700}.brand small{color:var(--muted);font-weight:500;display:block}.hello{margin:4px 2px 18px}.hello h2{letter-spacing:-.03em;margin:0 0 2px;font-size:26px}.hello p{color:var(--muted);margin:0;font-size:14px}.bloc{text-align:left;cursor:pointer;border-radius:var(--radius);border:none;align-items:center;gap:16px;width:100%;margin-bottom:12px;padding:20px;transition:all .16s;display:flex}@media (max-width:560px){.bloc{align-items:flex-start;gap:13px;padding:17px}.bloc .n{border-radius:12px;flex-basis:38px;height:38px;font-size:16px}.bloc .go{align-self:center}.golong{display:none}.bloc .t{font-size:18px}}.bloc:hover{transform:translateY(-2px)}.bloc .n{background:var(--fg);color:#fff;border-radius:14px;flex:0 0 46px;justify-content:center;align-items:center;height:46px;font-size:18px;font-weight:800;display:flex}.bloc.done .n{background:var(--green)}.bloc .mid{flex:1;min-width:0}.bloc .t{letter-spacing:-.02em;font-size:19px;font-weight:700;display:block}.bloc .s{color:var(--muted);margin-top:1px;font-size:13px;display:block}.bloc .st{color:var(--muted);margin-top:8px;font-size:13px;font-weight:600;display:block}.bloc .go{white-space:nowrap;flex:none;font-size:14px;font-weight:700}.minibar{background:#0b0b0b17;border-radius:99px;max-width:230px;height:6px;margin-top:8px;display:block;overflow:hidden}.minibar>i{background:linear-gradient(90deg,var(--amber),var(--green));height:100%;transition:width .3s;display:block}.allgood{border-radius:var(--radius);margin-bottom:14px;padding:18px 20px;font-weight:600}.focus{flex-direction:column;max-width:720px;min-height:100svh;margin:0 auto;padding:16px 16px 0;display:flex}.fhead{align-items:center;gap:12px;margin-bottom:12px;display:flex}.fhead .back{cursor:pointer;background:0 0;border:none;padding:6px 0;font-size:15px;font-weight:600}.fhead .ttl{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.fhead .pos{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:14px;font-weight:700}.fbar{background:#0b0b0b17;border-radius:99px;height:8px;margin-bottom:16px;overflow:hidden}.fbar>i{background:linear-gradient(90deg,var(--amber),var(--green));height:100%;transition:width .3s;display:block}.fcard{border-radius:var(--radius);margin-bottom:18px;padding:22px 20px}.flabel{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:14px;font-size:12px;font-weight:800;display:flex}.flabel .d{letter-spacing:0;text-transform:none;color:var(--muted);font-size:12px;font-weight:600}.ftext{white-space:pre-wrap;letter-spacing:-.005em;font-size:19px;line-height:1.62}@media (max-width:520px){.ftext{font-size:18px}}.undo{color:var(--green);cursor:pointer;background:#0ca30c1a;border:1px solid #0ca30c40;border-radius:999px;align-items:center;gap:7px;margin-bottom:14px;padding:6px 13px;font-size:13px;font-weight:700;display:inline-flex}.undo:hover{background:#0ca30c2e}.fbottom{padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:#f5f4f0;border-top:1px solid #0b0b0b0f;border-radius:18px 18px 0 0;flex-direction:column;gap:9px;margin:auto -16px 0;display:flex;position:sticky;bottom:0;box-shadow:0 -10px 24px #f4f3eff2}.frow{gap:9px;display:flex}.frow .btn{flex:1}.finish{text-align:center;padding:60px 10px}.finish .em{font-size:52px}.finish h3{letter-spacing:-.02em;margin:14px 0 6px;font-size:25px}.finish p{color:var(--muted);margin:0 0 22px}.panel{border-radius:var(--radius);margin-bottom:14px;padding:20px}.panel h3{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;font-size:17px;display:flex}.panel h3 .spacer{min-width:0}.field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.field label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);background:#ffffffbf;border-radius:12px;width:100%;padding:11px 13px}.field textarea{resize:vertical;min-height:150px;line-height:1.6}.grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:640px){.grid2{grid-template-columns:1fr}}.row{background:#ffffff73;border:1px solid #0b0b0b0d;border-radius:14px;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:6px;padding:10px 12px;display:flex}.row .txt{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}@media (max-width:560px){.row .txt{flex-basis:100%;order:3}.panel{padding:16px}}.pill{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:11px;font-weight:800}.actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.toast{left:50%;top:calc(14px + env(safe-area-inset-top));background:var(--fg);color:#fff;opacity:0;pointer-events:none;z-index:50;border-radius:999px;padding:12px 22px;font-size:14px;font-weight:600;transition:all .22s;position:fixed;transform:translate(-50%)translateY(-24px);box-shadow:0 12px 30px #00000040}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.empty{color:var(--muted);text-align:center;padding:30px 0}a{color:inherit;text-decoration:none}.bloc{display:flex}.lock{max-width:420px;margin:12vh auto 0}.lock h2{letter-spacing:-.02em;margin:0 0 4px;font-size:22px}.err{color:var(--red);margin:8px 0 0;font-size:13px;font-weight:600}.savebar{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.pending{opacity:.55;pointer-events:none}.linkrow{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:13px;display:flex}.code{background:#0b0b0b0f;border-radius:7px;padding:3px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
