:root{--bg:#faf6f0;--bg-secondary:#f4ede2;--bg-hover:#efe6d9;--bg-press:#e8ddcd;--card:#fff;--ink:#241c17;--ink-secondary:#6f6157;--ink-tertiary:#a4978a;--ink-inverse:#fffaf5;--border:#eee4d6;--border-strong:#e2d8c7;--accent:#e8532b;--accent-hover:#cf4522;--accent-soft:#fdece5;--accent-ink:#b63c1c;--green:#2f8f4e;--green-soft:#e7f2e9;--amber:#a06a10;--amber-soft:#faedca;--gold:#e6a01f;--gold-soft:#fbeecb;--red:#cf4335;--red-soft:#fbe8e4;--purple:#855bc0;--purple-soft:#f1eafa;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:999px;--shadow-card:#241c170a 0 1px 2px, #241c170f 0 6px 16px;--shadow-pop:#241c170f 0 0 0 1px, #241c171a 0 4px 10px, #241c172e 0 14px 34px;--font-sans:ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, "Apple Color Emoji", Arial, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol";--font-mono:ui-monospace, "Cascadia Mono", "Segoe UI Mono", SFMono-Regular, Menlo, Consolas, monospace;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--app-max:560px;--tap-min:44px;--nav-h:62px;--header-h:54px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;font-size:16px;line-height:1.5}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none}a{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}h1,h2,h3{letter-spacing:-.02em;font-weight:800;line-height:1.2}h1{font-size:27px}h2{font-size:20px}h3{letter-spacing:-.01em;font-size:16px}.text-secondary{color:var(--ink-secondary)}.text-small{font-size:13px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.page{max-width:var(--app-max);padding:var(--sp-5) var(--sp-4) calc(var(--nav-h) + var(--safe-bottom) + var(--sp-8));margin:0 auto}.section{margin-top:var(--sp-8)}.section-head{margin-bottom:var(--sp-3);justify-content:space-between;align-items:baseline;display:flex}.section-title{color:var(--ink-secondary);text-transform:none;font-size:13px;font-weight:600}.stack{gap:var(--sp-3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--sp-2);display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.divider{border:none;border-top:1px solid var(--border);margin:var(--sp-6) 0}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap-min);padding:0 var(--sp-5);border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;font-size:15px;font-weight:600;transition:background .12s,opacity .12s;display:inline-flex}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--accent);color:var(--ink-inverse)}.btn-primary:not(:disabled):hover{background:var(--accent-hover)}.btn-primary:not(:disabled):active{opacity:.9}.btn-accent{background:var(--accent);color:var(--ink-inverse)}.btn-accent:not(:disabled):hover{background:var(--accent-hover)}.btn-outline{background:var(--card);border:1px solid var(--border-strong)}.btn-outline:not(:disabled):hover{background:var(--bg-hover)}.btn-ghost{color:var(--ink-secondary);background:0 0}.btn-ghost:not(:disabled):hover{background:var(--bg-hover)}.btn-danger{background:var(--red-soft);color:var(--red)}.btn-block{width:100%}.btn-sm{min-height:var(--tap-min);padding:0 var(--sp-3);border-radius:var(--radius-sm);font-size:13px}.field{gap:var(--sp-1);flex-direction:column;display:flex}.field label{color:var(--ink-secondary);font-size:13px;font-weight:600}.input{min-height:var(--tap-min);padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--card);width:100%;font-size:16px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.input::placeholder{color:var(--ink-tertiary)}textarea.input{padding:var(--sp-3);resize:vertical;min-height:88px}.field-hint{color:var(--ink-tertiary);font-size:12px}.field-error{color:var(--red);font-size:12px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-4);box-shadow:var(--shadow-card)}.card-tap{transition:box-shadow .14s,transform .14s}.card-tap:hover{box-shadow:0 2px 4px #241c170f,0 10px 24px #241c171a}.card-tap:active{transform:scale(.99)}.chip-row{gap:var(--sp-2);padding-bottom:var(--sp-1);scrollbar-width:none;-ms-overflow-style:none;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{min-height:var(--tap-min);padding:0 var(--sp-4);border:1px solid var(--border-strong);border-radius:var(--radius-full);background:var(--card);color:var(--ink-secondary);white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:13.5px;font-weight:600;display:inline-flex}.chip.on{background:var(--ink);border-color:var(--ink);color:var(--ink-inverse)}.pill{border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.pill-neutral{background:var(--bg-hover);color:var(--ink-secondary)}.pill-blue{background:var(--accent-soft);color:var(--accent-ink)}.pill-green{background:var(--green-soft);color:var(--green)}.pill-amber{background:var(--amber-soft);color:var(--amber)}.pill-red{background:var(--red-soft);color:var(--red)}.pill-purple{background:var(--purple-soft);color:var(--purple)}.avatar{border-radius:var(--radius-md);color:var(--ink);background:var(--bg-hover);-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.list-row{align-items:center;gap:var(--sp-3);padding:var(--sp-3) 0;min-height:var(--tap-min);display:flex}.list-row+.list-row{border-top:1px solid var(--border)}.empty{text-align:center;padding:var(--sp-12) var(--sp-6);color:var(--ink-secondary)}.empty .empty-icon{margin:0 auto var(--sp-3);width:40px;height:40px;color:var(--ink-tertiary)}.app-header{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);padding-top:var(--safe-top);background:#faf6f0e0;position:sticky;top:0}.app-header-inner{max-width:var(--app-max);height:var(--header-h);padding:0 var(--sp-4);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.wordmark{letter-spacing:-.03em;color:var(--accent);align-items:baseline;font-size:20px;font-weight:800;display:inline-flex}.wordmark:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;margin-left:2px}.tabbar{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding-bottom:var(--safe-bottom);background:#faf6f0f0;position:fixed;bottom:0;left:0;right:0}.tabbar-inner{max-width:var(--app-max);height:var(--nav-h);grid-auto-columns:1fr;grid-auto-flow:column;margin:0 auto;display:grid}.tab{color:var(--ink-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:500;display:flex}.tab.on{color:var(--accent)}.tab svg{width:22px;height:22px}.auth{background:var(--bg);min-height:100dvh}.auth-hero{background:var(--accent);color:#fff;padding:calc(var(--safe-top) + var(--sp-6)) var(--sp-5) var(--sp-8);border-radius:0 0 28px 28px}.auth-hero-top{min-height:40px;margin-bottom:var(--sp-5);justify-content:space-between;align-items:center;display:flex}.auth-word{letter-spacing:-.03em;color:#fff;align-items:baseline;font-size:21px;font-weight:800;display:inline-flex}.auth-word:after{content:"";background:#fff;border-radius:50%;width:6px;height:6px;margin-left:2px}.auth-back{color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;margin-left:-8px;display:grid}.auth-back:hover{background:#ffffff29}.auth-lang{min-height:36px;padding:0 var(--sp-3);border-radius:var(--radius-full);color:#fff;background:#ffffff29;align-items:center;gap:5px;font-size:13px;font-weight:700;display:inline-flex}.auth-hero h1{color:#fff;font-size:28px;line-height:1.15}.auth-hero .sub{color:#ffffffe6;margin-top:var(--sp-2);max-width:32ch;font-size:15px;line-height:1.5}.auth-body{max-width:var(--app-max);padding:var(--sp-6) var(--sp-4) calc(var(--safe-bottom) + var(--sp-8));margin:0 auto}.skeleton{background:var(--bg-hover);border-radius:var(--radius-md);animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
