:root,:root[data-theme=cream]{--bg:#efebe0;--surface:#faf9f5;--ink:#191919;--muted:#6b675e;--soft:#e4dfd2;--line:#191919;--coral:#f49484;--coral-soft:#fbdcd5;--teal:#93c1c1;--teal-soft:#d8e8e6;--good:#afd781;--good-soft:#e3f0d2;--bad:#f49484;--bad-soft:#fbdcd5;--heart:#e0604f;--good-ink:#4b7f26;--bad-ink:#c04a36;--warn-ink:#b07a0c;--field:color-mix(in srgb, var(--bg) 45%, var(--surface));--serif:"Domine", Georgia, "Times New Roman", serif;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}:root[data-theme=coral]{--bg:#f49484;--surface:#fdf3ef;--muted:#5d3a32;--soft:#f7b8ab;--heart:#191919}:root[data-theme=teal]{--bg:#93c1c1;--surface:#f4f9f8;--muted:#2e4848;--soft:#b8d7d6;--teal-soft:#dcecea}:root[data-theme=night]{--bg:#1d1c1a;--surface:#2a2926;--ink:#f3efe6;--muted:#a8a296;--soft:#3a3833;--line:#f3efe6;--coral-soft:#5b3b34;--teal-soft:#2f4544;--good-soft:#34452a;--bad-soft:#5b3b34;--heart:#f49484;--good-ink:#afd781;--bad-ink:#f49484;--warn-ink:#f2c46d}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;margin:0}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.4;transition:background-color .25s}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-underline-offset:3px;font-weight:600}:focus-visible{outline:2.5px solid var(--ink);outline-offset:2px}.serif{font-family:var(--serif);font-weight:700}.muted{color:var(--muted)}.small{font-size:13px}.label,.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700;display:block}.brand{font-family:var(--serif);letter-spacing:-.01em;font-size:28px;font-weight:700}.brand span{color:var(--coral)}:root[data-theme=coral] .brand span{color:var(--surface)}.btn{border:1.5px solid var(--line);background:var(--surface);min-height:46px;color:var(--ink);box-shadow:0 3px 0 var(--line);border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:600;transition:transform 80ms,box-shadow 80ms,background-color .15s;display:inline-flex}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--ink);color:var(--surface)}.btn-teal{background:var(--teal);color:#191919}.btn-on{background:var(--coral-soft)}.btn-block{width:100%}.link-button{text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:14px;font-weight:600;text-decoration:underline;display:inline-flex}.icon-btn{background:0 0;border:0;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.pill{background:color-mix(in srgb, var(--surface) 80%, transparent);border:0;border-radius:999px;align-items:center;gap:7px;padding:5px 13px;font-size:15px;display:inline-flex}.back{background:0 0;border:0;align-items:center;gap:6px;margin:0 0 10px -2px;padding:6px 0;font-size:15px;font-weight:600;display:inline-flex}.screen{max-width:640px;padding:calc(env(safe-area-inset-top) + 28px) 16px calc(env(safe-area-inset-bottom) + 120px);margin:0 auto}.screen-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:100dvh;display:flex}.title{font-family:var(--serif);letter-spacing:-.01em;text-wrap:balance;margin:6px 0 12px;font-size:clamp(28px,7vw,36px);font-weight:700;line-height:1.15}.lead{margin:0 0 16px;font-size:18px;line-height:1.5}.section-title{font-family:var(--serif);margin:28px 0 10px;font-size:19px;font-weight:700}.section-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-row .section-title{margin:0}.section-head{margin:28px 0 10px}.empty{padding:24px 4px}.card{background:var(--surface);border:1.5px solid var(--line);box-shadow:0 3px 0 var(--line);border-radius:20px;flex-direction:column;align-items:flex-start;gap:12px;margin:16px 0;padding:18px;display:flex}.card>*{margin:0}.card>.section-row,.card>.targets,.card>textarea,.card>.feedback,.card>.notice,.card>.list,.card>.btn-block,.card>.entry-preview{align-self:stretch}.card>.segmented{align-self:stretch;margin:0}.hours{align-items:center;gap:10px;display:flex}.hours select{background:var(--field);border:1.5px solid var(--line);border-radius:12px;min-height:42px;padding:0 12px;font-size:16px}.card-title{font-family:var(--serif);font-size:20px;font-weight:700;line-height:1.25}.segmented{background:var(--surface);border:1.5px solid var(--line);border-radius:16px;gap:4px;margin:8px 0 16px;padding:4px;display:flex}.segmented button{white-space:nowrap;background:0 0;border:0;border-radius:11px;flex:1;min-height:38px;padding:0 6px;font-size:14px;font-weight:600}.segmented button.active{background:var(--ink);color:var(--surface)}.notice{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;align-items:flex-start;gap:10px;margin:12px 0;padding:12px 14px;font-size:14px;line-height:1.45;display:flex}.notice svg{flex:none;margin-top:1px}.notice-bad{background:var(--bad-soft)}.notice-good{background:var(--good-soft)}.spin{animation:1s linear infinite spin}.feed{position:fixed;inset:0}.feed-scroll{scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y;height:100%;overflow-y:auto}.feed-scroll::-webkit-scrollbar{display:none}.slide{height:100%;padding:calc(env(safe-area-inset-top) + 48px) 24px calc(env(safe-area-inset-bottom) + 130px);scroll-snap-align:start;scroll-snap-stop:always;place-items:center;display:grid;position:relative}.slide-body{text-align:center;flex-direction:column;align-items:center;max-width:560px;transition:transform .25s;animation:.35s ease-out rise;display:flex}.feed[data-swipe] .slide.current .slide-body{transform:translateX(calc(var(--dx) * .55px)) rotate(calc(var(--dx) * .015deg));transition:none}.swipe-cue{z-index:4;background:var(--surface);border:1.5px solid var(--line);width:60px;height:60px;box-shadow:0 3px 0 var(--line);opacity:0;pointer-events:none;border-radius:50%;place-items:center;margin-top:-30px;transition:opacity .2s,transform .2s;display:grid;position:fixed;top:50%;left:18px;transform:scale(.6)}.feed[data-swipe=right] .swipe-cue{left:auto;right:18px}.feed[data-swipe] .swipe-cue{opacity:var(--p);transform:scale(calc(.6 + var(--p) * .4));transition:none}.burst{z-index:6;color:var(--muted);pointer-events:none;animation:.8s ease-out forwards burst;position:fixed;top:50%;left:50%}.burst.liked{color:var(--heart)}.review-tag{background:var(--teal-soft,var(--soft));border:1.5px solid var(--line);border-radius:999px;align-items:center;gap:5px;margin-bottom:14px;padding:4px 11px;font-size:13px;font-weight:700;display:inline-flex}.grammar-review{text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:440px;display:flex}.grammar-review .review-tag{margin-bottom:0}.grammar-review .prompt-sentence{margin:6px 0}.grammar-review .choices{width:100%}.grammar-why{text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:18px;width:100%;padding:14px 16px;animation:.25s ease-out slide-up}.grammar-why h3{font-family:var(--serif);align-items:center;gap:8px;margin:0 0 6px;font-size:18px;display:flex}.grammar-why.good h3 svg{color:var(--good-ink)}.grammar-why.bad h3 svg{color:var(--bad-ink)}.grammar-why p{margin:0 0 8px;line-height:1.5}.sheet .grammar-review{margin:0 auto;padding-bottom:8px}.sheet .grammar-review .review-tag{display:none}.say-example{width:28px;height:28px;color:inherit;vertical-align:middle;background:0 0;border:0;border-radius:50%;place-items:center;margin:-4px 0 -8px;padding:0;display:inline-grid}.word{font-family:var(--serif);letter-spacing:-.015em;text-wrap:balance;margin:0 0 14px;font-size:clamp(38px,10.5vw,60px);font-weight:700;line-height:1.08}.definition{text-wrap:pretty;max-width:30ch;margin:18px 0 8px;font-size:19px;line-height:1.45}.example{max-width:34ch;color:var(--muted);text-wrap:pretty;margin:0;font-size:16px;font-style:italic;line-height:1.5}.literal{color:var(--muted);margin:-2px 0 12px;font-size:14px}.sheet .literal{margin:6px 0 0}.translation{max-width:36ch;color:var(--muted);text-wrap:pretty;margin:4px 0 0;font-size:14px;line-height:1.45}.detail .translation{max-width:none;margin:2px 0 0}.slide-actions{gap:clamp(22px,8vw,40px);margin-top:42px;display:flex}.slide-actions button{background:0 0;border:0;border-radius:50%;place-items:center;width:46px;height:46px;transition:transform .15s;display:grid}.slide-actions button:active{transform:scale(.88)}.slide-actions .on{color:var(--heart)}.pointer-only{display:none}@media (hover:hover) and (pointer:fine){.pointer-only{display:inline}.touch-only{display:none}}.swipe-hint{left:50%;bottom:calc(env(safe-area-inset-bottom) + 100px);color:var(--muted);align-items:center;gap:4px;font-size:13px;animation:1.8s ease-in-out infinite bob;display:flex;position:absolute;transform:translate(-50%)}.goal-bar{background:var(--soft);border-radius:999px;width:64px;height:4px;display:block;overflow:hidden}.goal-bar i{border-radius:inherit;background:currentColor;height:100%;transition:width .4s;display:block}.tabbar{left:50%;bottom:calc(env(safe-area-inset-bottom) + 12px);z-index:20;background:var(--surface);border-radius:22px;grid-template-columns:repeat(5,1fr);width:min(100% - 24px,520px);padding:6px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #0000001a}.tabbar button{background:0 0;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:3px;padding:8px 0 6px;font-size:11px;font-weight:500;display:flex}.tabbar button.active{background:var(--soft);font-weight:700}.tile-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0;display:grid}.tile{text-align:left;background:var(--surface);border:1.5px solid var(--line);min-height:124px;box-shadow:0 3px 0 var(--line);border-radius:18px;flex-direction:column;align-items:flex-start;gap:6px;padding:16px;transition:transform 80ms,box-shadow 80ms,background-color .15s;display:flex;position:relative}.tile:active{box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.tile strong{margin-top:auto;font-size:16px}.tile small{color:var(--muted);font-size:13px;line-height:1.35}.tile.selected{background:var(--teal-soft);box-shadow:0 3px 0 var(--line), inset 0 0 0 1px var(--line)}.tile-count{background:var(--soft);border-radius:999px;place-items:center;min-width:28px;height:28px;padding:0 8px;font-size:13px;font-weight:700;display:grid;position:absolute;top:14px;right:14px}.tile.selected .tile-count{background:var(--ink);color:var(--surface);padding:0}.tile-small{flex-direction:row;align-items:center;gap:12px;min-height:0}.tile-small strong{margin:0;display:block}.tile-small small{display:block}.tile-icon{color:#191919;border:1.5px solid var(--line);border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid}.tile-icon.coral{background:var(--coral)}.tile-icon.teal{background:var(--teal)}.list{background:var(--surface);border:1.5px solid var(--line);box-shadow:0 3px 0 var(--line);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.card .list{box-shadow:none}.list-row{text-align:left;border:0;border-bottom:1px solid var(--soft);background:0 0;align-items:center;gap:12px;width:100%;padding:14px 16px;display:flex}.list-row:last-child{border-bottom:0}.list-row>div{flex:1;min-width:0}.list-row strong{font-size:15px;font-weight:600;display:block}.list-row span{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.4;display:block}.list-row svg{color:var(--muted);flex:none}.list-row .row-open{text-align:left;background:0 0;border:0;flex:1;min-width:0;padding:0}.clip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.unit-number{border:1.5px solid var(--line);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-weight:700;color:var(--ink)!important;margin:0!important;font-size:13px!important;display:grid!important}.unit-number.done{background:var(--good);color:#191919!important}.unit-number.done svg{color:inherit}.search{background:var(--surface);border:1.5px solid var(--line);border-radius:14px;align-items:center;gap:8px;min-height:46px;margin:8px 0 16px;padding:0 14px;display:flex}.search input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:16px}.chips{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.chip{background:var(--soft);border:0;border-radius:999px;padding:6px 12px;font-size:14px}@media (hover:hover){.list-row:hover{background:color-mix(in srgb, var(--soft) 45%, transparent)}.icon-btn:hover,.slide-actions button:hover{background:color-mix(in srgb, var(--soft) 70%, transparent)}}.sheet-backdrop{z-index:40;background:#14141461;justify-content:center;align-items:flex-end;animation:.2s fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border:1.5px solid var(--line);border-bottom:0;border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-width:640px;max-height:88dvh;animation:.25s ease-out slide-up;display:flex}.sheet,.sheet-body{touch-action:pan-y}.sheet.from-right{animation:.28s cubic-bezier(.2,.8,.2,1) slide-in-right}.sheet.from-left{animation:.28s cubic-bezier(.2,.8,.2,1) slide-in-left}.sheet-backdrop.leaving{opacity:0;transition:opacity .2s}.sheet-header{justify-content:space-between;align-items:center;gap:12px;padding:14px 12px 0 20px;display:flex}.sheet-body{padding:4px 20px 22px;overflow-y:auto}.sheet-footer{padding:14px 20px calc(env(safe-area-inset-bottom) + 14px);border-top:1px solid var(--soft);gap:10px;display:flex}.sheet-footer .btn{flex:1}.sheet-word{font-family:var(--serif);margin:4px 0 10px;font-size:32px;font-weight:700;line-height:1.15}.sheet-word-actions{gap:8px;display:flex}.sheet .pill{background:var(--soft)}.sheet-meaning{margin:16px 0 0;font-size:18px;line-height:1.45}.detail{margin:20px 0 0}.detail p{margin:6px 0 0;line-height:1.5}.detail-grid{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.quote{font-style:italic}.similar strong{font-weight:700}@media (width>=720px){.sheet-backdrop{align-items:center;padding:24px}.sheet{border-bottom:1.5px solid var(--line);box-shadow:0 4px 0 var(--line);border-radius:24px}}@media (width<=460px){.detail-grid{grid-template-columns:1fr}}.quiz{z-index:30;background:var(--bg);animation:.2s fade;position:fixed;inset:0;overflow-y:auto}.quiz-inner{max-width:560px;min-height:100%;padding:calc(env(safe-area-inset-top) + 14px) 16px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;gap:18px;margin:0 auto;display:flex}.quiz-top{align-items:center;gap:12px;display:flex}.quiz-bar{background:var(--surface);border:1.5px solid var(--line);border-radius:999px;flex:1;height:12px;overflow:hidden}.quiz-bar i{background:var(--teal);height:100%;transition:width .3s;display:block}.quiz-count{color:var(--muted);font-size:14px;font-weight:600}.prompt-card{text-align:center;background:var(--surface);border:1.5px solid var(--line);min-height:170px;box-shadow:6px 7px 0 -1.5px var(--surface), 6px 7px 0 0 var(--line);border-radius:20px;flex-direction:column;justify-content:center;gap:6px;margin:8px 6px 10px 0;padding:30px 22px;font-size:19px;line-height:1.45;animation:.3s ease-out rise;display:flex}.prompt-card p{margin:0}.prompt-word{font-family:var(--serif);font-size:30px;font-weight:700;line-height:1.15}.prompt-sentence{font-size:20px;line-height:1.6}.prompt-sentence.small{font-size:17px}.blank{border-bottom:2px solid var(--ink);min-width:70px;margin:0 4px;line-height:1.2;display:inline-block}.blank.filled{border-color:var(--good-ink);min-width:0;padding:0 4px;font-weight:700}.choices{flex-direction:column;gap:12px;display:flex}.choice{text-align:center;background:var(--surface);border:1.5px solid var(--line);min-height:56px;box-shadow:0 3px 0 var(--line);border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:12px 18px;font-size:16px;font-weight:600;line-height:1.3;transition:transform 80ms,box-shadow 80ms,background-color .2s,opacity .2s;display:flex}.choice:active:not([aria-disabled=true]){box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.choice[aria-disabled=true]{cursor:default}.choice.serif{font-family:var(--serif);font-size:18px;font-weight:700}.choice.correct{background:var(--good);color:#191919}.choice.wrong{background:var(--bad);color:#191919}.choice.dim{opacity:.45}.type-answer{flex-direction:column;gap:12px;display:flex}.type-answer .btn{width:100%}.type-input{text-align:center;background:var(--surface);border:1.5px solid var(--line);min-height:56px;box-shadow:0 3px 0 var(--line);font-family:var(--serif);border-radius:16px;padding:12px 16px;font-size:20px;font-weight:700}.type-input:focus{outline:2.5px solid var(--teal);outline-offset:1px}.result-panel{background:var(--surface);border:1.5px solid var(--line);box-shadow:0 3px 0 var(--line);border-radius:22px;flex-direction:column;gap:10px;margin-top:auto;padding:18px;animation:.25s ease-out slide-up;display:flex}.result-panel h3{font-family:var(--serif);align-items:center;gap:8px;margin:0;font-size:20px;font-weight:700;display:flex}.result-panel.good h3 svg{color:var(--good-ink)}.result-panel.bad h3 svg{color:var(--bad-ink)}.reveal p{margin:0 0 6px;line-height:1.5}.reveal .pill{background:var(--soft);vertical-align:middle;padding:3px 8px}.targets{gap:8px;display:grid}.target{text-align:left;background:var(--teal-soft);border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;display:block}.target strong{font-family:var(--serif);font-size:17px;font-weight:700;display:block}.target span{color:var(--muted);margin-top:2px;font-size:14px;line-height:1.4;display:block}textarea.writing{background:var(--field);border:1.5px solid var(--line);resize:vertical;border-radius:14px;width:100%;min-height:150px;padding:14px;font-size:16px;line-height:1.55}textarea.writing:focus{outline:2.5px solid var(--teal);outline-offset:1px}.feedback{width:100%}.feedback-head{align-items:center;gap:14px;display:flex}.feedback-head p{margin:0;line-height:1.5}.score{background:var(--good);color:#191919;border:1.5px solid var(--line);width:64px;height:64px;font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:24px;font-weight:700;line-height:1;display:grid}.score small{font-size:12px;display:block}.expr-check{border-bottom:1px solid var(--soft);gap:10px;padding:10px 0;display:flex}.expr-check:last-child{border-bottom:0}.expr-check svg{flex:none;margin-top:2px}.expr-check.good svg{color:var(--good-ink)}.expr-check.warn svg{color:var(--warn-ink)}.expr-check.bad svg{color:var(--bad-ink)}.expr-check p{margin:4px 0 0;font-size:14px}.correction{border-bottom:1px solid var(--soft);padding:10px 0}.correction:last-child{border-bottom:0}.correction p{margin:0 0 4px}.correction del{color:var(--bad-ink);text-decoration-thickness:1.5px}.correction ins{background:var(--good-soft);border-radius:4px;padding:1px 4px;font-weight:600;text-decoration:none}.improved{background:var(--soft);white-space:pre-wrap;border-radius:14px;padding:12px 14px;line-height:1.6;margin:6px 0 8px!important}.meter{flex-direction:column;gap:8px;margin:14px 0 4px;font-size:14px;font-weight:600;display:flex}.meter .goal-bar{border:1.5px solid var(--line);background:var(--surface);width:100%;height:8px}.meter .goal-bar i{background:var(--good)}.rules{flex-direction:column;gap:10px;display:flex}.rule{background:var(--surface);border:1.5px solid var(--line);border-radius:16px;padding:14px 16px}.rule p{margin:0;line-height:1.5}.rule .rule-example{border-left:3px solid var(--teal);color:var(--muted);margin-top:8px;padding-left:12px;font-style:italic}.credit{margin-top:28px}.profile-head{align-items:center;gap:14px;display:flex}.profile-head .title{overflow-wrap:anywhere;margin:0;font-size:22px}.avatar{color:#191919;background:var(--coral);border:1.5px solid var(--line);width:56px;height:56px;font-family:var(--serif);border-radius:50%;flex:none;place-items:center;font-size:24px;font-weight:700;display:grid}.sync{color:var(--muted);font-size:13px}.sync.error{color:var(--bad-ink)}.stat-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0 6px;display:grid}.stat{background:var(--surface);border:1.5px solid var(--line);box-shadow:0 3px 0 var(--line);border-radius:18px;flex-direction:column;align-items:flex-start;gap:6px;padding:14px;display:flex}.stat strong{font-family:var(--serif);font-size:24px;font-weight:700;line-height:1.1}.stat>span:last-child{color:var(--muted);font-size:13px}@media (width>=560px){.stat-grid{grid-template-columns:repeat(3,1fr)}}.chip-toggle{border:1.5px solid var(--line);background:var(--surface);opacity:.55;font-weight:600}.chip-toggle.on{background:var(--teal-soft);opacity:1}.lang-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.lang{text-align:left;background:var(--surface);border:1.5px solid var(--line);box-shadow:0 3px 0 var(--line);border-radius:18px;align-items:center;gap:12px;padding:12px 14px;display:flex}.lang.selected{background:var(--teal-soft);box-shadow:0 3px 0 var(--line), inset 0 0 0 1px var(--line)}.flag{flex:none;display:block}.flag-emoji{line-height:1}.lang-note{margin:14px 0 0}.ai-quota{margin:8px 0 0}.app-name{color:var(--muted);flex-direction:column;align-items:center;gap:2px;margin:28px 0 0;font-size:13px;display:flex}.app-name strong{font-family:var(--serif);color:var(--ink);font-size:18px}.usage{flex-direction:column;gap:12px;display:flex}.usage .label{margin:10px 0 0}.usage .stat-grid{margin:0}.usage-rows p{margin:0 0 6px;line-height:1.5}.usage-chart{grid-template-columns:repeat(14,1fr);align-items:end;gap:4px;height:110px;display:grid}.usage-chart>div{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.usage-bar{background:var(--teal-soft,var(--soft));border:1.5px solid var(--line);border-radius:6px;flex-direction:column;justify-content:flex-end;width:100%;min-height:2px;display:flex;position:relative;overflow:hidden}.usage-bar i{background:var(--ink);width:100%;display:block}.usage-chart small{color:var(--muted);font-size:11px}.usage-langs{flex-wrap:wrap;gap:12px;display:flex}.usage-langs span,.chip-toggle{align-items:center;gap:6px;display:inline-flex}.lang-button{top:calc(env(safe-area-inset-top) + 12px);z-index:6;background:var(--surface);border:1.5px solid var(--line);box-shadow:0 3px 0 var(--line);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:5px 6px 5px 11px;display:inline-flex;position:fixed;right:16px}.lang-button:active{box-shadow:0 1px 0 var(--line);transform:translateY(2px)}.lang strong{font-size:15px;display:block}.lang small{color:var(--muted);font-size:13px}.swatches{flex-wrap:wrap;gap:18px;display:flex}.swatch{background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:flex}.swatch span{color:#191919;border:1.5px solid var(--line);width:52px;height:52px;box-shadow:0 3px 0 var(--line);border-radius:50%;place-items:center;display:grid}.swatch:last-child span{color:#f3efe6}.swatch.active span{outline:2.5px solid var(--ink);outline-offset:3px}.entry-preview{flex-direction:column;gap:8px;display:flex}.field{flex-direction:column;align-self:stretch;gap:6px;display:flex}.field>span{align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.field input,.auth-card input{background:var(--field);border:1.5px solid var(--line);border-radius:12px;min-height:46px;padding:0 14px;font-size:16px}.signout{margin-top:28px}.auth-screen,.splash{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.splash .brand{animation:1.4s ease-in-out infinite pulse}.auth-card{background:var(--surface);border:1.5px solid var(--line);width:min(100%,420px);box-shadow:0 4px 0 var(--line);border-radius:24px;flex-direction:column;gap:14px;padding:28px 22px;display:flex}.auth-card h1{font-family:var(--serif);text-wrap:balance;margin:4px 0 0;font-size:30px;font-weight:700;line-height:1.15}.auth-intro{color:var(--muted);margin:0}.auth-divider{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;font-size:12px;display:flex}.auth-divider span{background:var(--soft);flex:1;height:1px}.auth-card form{flex-direction:column;gap:12px;display:flex}.auth-card label{flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}.auth-card form .link-button{align-self:flex-start}.auth-switch{text-align:center;font-size:14px}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 96px);z-index:50;background:var(--ink);color:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;animation:.2s fade;display:inline-flex;position:fixed;transform:translate(-50%)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@keyframes slide-up{0%{opacity:0;transform:translateY(24px)}}@keyframes slide-in-right{0%{transform:translate(100%)}}@keyframes slide-in-left{0%{transform:translate(-100%)}}@keyframes burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}25%{opacity:.95;transform:translate(-50%,-50%)scale(1.1)}60%{opacity:.95;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1.15)}}@keyframes bob{50%{transform:translate(-50%,5px)}}@keyframes pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
