:root{--bg:#f7f5f0;--ink:#1b1a17;--ink-2:#1b1a1799;--ink-3:#1b1a1761;--ink-4:#1b1a1729;--hair:#1b1a171f;--warn:#e5302a;--good:#1b1a1780;--fill-soft:#1b1a170a;--sheen-opacity:.7;--bg-glass:#f7f5f0e0;--send-shadow:0 6px 18px #1b1a1733;--send-shadow-hover:0 10px 26px #1b1a1747;--toast-shadow:0 10px 30px #1b1a1740;--menu-shadow:0 12px 34px #1b1a1724;--ease:cubic-bezier(.22, 1, .36, 1);--serif:ui-serif, "New York", Georgia, "Songti SC", "STSong", "Hiragino Mincho ProN", "Apple SD Gothic Neo", "Geeza Pro", "Kohinoor Devanagari", serif;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Apple SD Gothic Neo", "Geeza Pro", "Kohinoor Devanagari", system-ui, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#15140f;--ink:#f4f1ea;--ink-2:#f4f1ea9e;--ink-3:#f4f1ea66;--ink-4:#f4f1ea2e;--hair:#f4f1ea24;--warn:#ff6f61;--good:#f4f1ea80;--fill-soft:#f4f1ea0f;--sheen-opacity:.06;--bg-glass:#15140fe0;--send-shadow:0 6px 20px #00000073;--send-shadow-hover:0 12px 30px #0000008c;--toast-shadow:0 12px 32px #0000008c;--menu-shadow:0 14px 36px #0000008c}}:root[data-theme=dark]{--bg:#15140f;--ink:#f4f1ea;--ink-2:#f4f1ea9e;--ink-3:#f4f1ea66;--ink-4:#f4f1ea2e;--hair:#f4f1ea24;--warn:#ff6f61;--good:#f4f1ea80;--fill-soft:#f4f1ea0f;--sheen-opacity:.06;--bg-glass:#15140fe0;--send-shadow:0 6px 20px #00000073;--send-shadow-hover:0 12px 30px #0000008c;--toast-shadow:0 12px 32px #0000008c}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html.theme-init,html.theme-init *,html.theme-init :before,html.theme-init :after{transition:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100dvh;transition:background-color .45s var(--ease), color .45s var(--ease);font-size:16px;display:flex;overflow-x:hidden}body:before{content:"";opacity:var(--sheen-opacity);transition:opacity .45s var(--ease);pointer-events:none;background:radial-gradient(80vw 65vh at 50% -10%,#fff,#0000 72%);position:fixed;inset:0}.stage{width:100%;max-width:660px;padding-top:max(clamp(20px, 4vh, 40px), env(safe-area-inset-top));padding-bottom:max(clamp(20px, 4vh, 40px), env(safe-area-inset-bottom));flex-direction:column;min-height:100dvh;margin:0 auto;padding-inline-start:max(clamp(22px, 6vw, 40px), env(safe-area-inset-left));padding-inline-end:max(clamp(22px, 6vw, 40px), env(safe-area-inset-right));display:flex;position:relative}header{flex:none;justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{font:inherit;text-align:start;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:3px;padding:0;display:flex}.brand:hover .mark{opacity:.62}.mark{letter-spacing:2px;color:var(--ink);transition:opacity .25s var(--ease);font-size:15px;font-weight:600}.tagline{letter-spacing:.3px;color:var(--ink-4);font-size:11px;font-weight:400}.tools{align-items:center;gap:6px;display:flex}.theme-btn{cursor:pointer;width:38px;height:38px;color:var(--ink-3);transition:color .25s var(--ease), transform .25s var(--ease);background:0 0;border:none;place-items:center;display:grid}.theme-btn:hover{color:var(--ink)}.theme-btn:active{transform:scale(.9)}.theme-btn svg{width:18px;height:18px}.lang-trigger{cursor:pointer;height:38px;color:var(--ink-3);transition:color .25s var(--ease), background-color .25s var(--ease);background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:13px;display:inline-flex}.lang-trigger:hover{color:var(--ink);background:var(--fill-soft)}.lang-trigger .globe{flex:none;width:17px;height:17px}.lang-trigger .lang-name{white-space:nowrap;letter-spacing:.2px}.lang-trigger .chev{opacity:.7;width:12px;height:12px;transition:transform .25s var(--ease);flex:none}.lang-trigger[aria-expanded=true] .chev{transform:rotate(180deg)}.lang-wrap{display:flex;position:relative}.lang-menu{top:calc(100% + 8px);overscroll-behavior:contain;background:var(--bg);border:1px solid var(--hair);min-width:154px;max-height:min(62vh,380px);box-shadow:var(--menu-shadow);z-index:60;transform-origin:top var(--menu-origin,right);animation:menuIn .18s var(--ease) both;border-radius:14px;flex-direction:column;padding:6px;display:flex;position:absolute;inset-inline-end:0;overflow-y:auto}.lang-menu button{cursor:pointer;color:var(--ink-2);text-align:start;transition:background-color .2s var(--ease), color .2s var(--ease);background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;font-family:inherit;font-size:14px;display:flex}.lang-menu button:hover{background:var(--fill-soft);color:var(--ink)}.lang-menu button.active{color:var(--ink)}.lang-menu .check{width:13px;color:var(--ink);flex:none;font-size:12px}.lang-menu .name{white-space:nowrap}@keyframes menuIn{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}main{flex-direction:column;flex:1;justify-content:center;padding:24px 0;display:flex}.view{transition:opacity .45s var(--ease), transform .45s var(--ease)}.view.entering{opacity:0;transform:translateY(12px)}.composer{width:100%}textarea#input{resize:none;width:100%;min-height:132px;color:var(--ink);font-family:var(--serif);letter-spacing:.1px;background:0 0;border:none;outline:none;font-size:clamp(21px,3.4vw,27px);line-height:1.5;overflow:hidden}textarea#input::placeholder{color:var(--ink-3)}.composer-foot{padding:12px 0;padding-bottom:max(12px, env(safe-area-inset-bottom));background:var(--bg-glass);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);min-height:44px;transition:background-color .45s var(--ease);z-index:5;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;display:flex;position:sticky;bottom:0}.hint-link{color:var(--ink-3);cursor:pointer;transition:color .25s var(--ease), opacity .35s var(--ease);background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:13.5px}.hint-link:hover{color:var(--ink-2)}.hint-link.gone{opacity:0;pointer-events:none}.controls{align-items:center;gap:14px;display:flex}.ring{width:26px;height:26px;transition:opacity .3s;transform:rotate(-90deg)}.ring .track{stroke:var(--ink-4)}.ring .fill{stroke:var(--ink-2);transition:stroke-dashoffset .25s var(--ease), stroke .25s}.ring.warn .fill{stroke:var(--warn)}.send{cursor:pointer;background:var(--ink);width:46px;height:46px;color:var(--bg);box-shadow:var(--send-shadow);transition:transform .25s var(--ease), opacity .3s var(--ease), box-shadow .25s, background-color .45s var(--ease), color .45s var(--ease);opacity:0;pointer-events:none;border:none;border-radius:50%;place-items:center;display:grid;transform:scale(.6)}.send.ready{opacity:1;pointer-events:auto;transform:scale(1)}.send:hover{box-shadow:var(--send-shadow-hover);transform:scale(1.07)}.send:active{transform:scale(.96)}.send:disabled{opacity:.4;box-shadow:none;pointer-events:none;cursor:default;transform:scale(1)}.send svg{width:21px;height:21px}.thinking{text-align:center;padding:30px 0}.thinking .word{font-family:var(--serif);color:var(--ink-2);letter-spacing:.3px;font-size:clamp(20px,3.4vw,26px);font-style:italic}.sweep{background:var(--hair);border-radius:1px;width:120px;height:1px;margin:22px auto 0;position:relative;overflow:hidden}.sweep:after{content:"";background:linear-gradient(90deg, transparent, var(--ink-2), transparent);animation:sweep 1.25s var(--ease) infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes sweep{to{transform:translate(200%)}}.reassure{min-height:1.1em;color:var(--ink-3);letter-spacing:.2px;margin-top:16px;font-size:13px}.reassure span{animation:reassureIn .6s var(--ease) both;display:inline-block}@keyframes reassureIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.result{width:100%}.orig{width:100%;color:var(--ink-3);cursor:pointer;text-align:start;transition:color .25s var(--ease);word-break:break-word;background:0 0;border:none;margin-bottom:26px;font-family:inherit;font-size:14px;line-height:1.55;display:block}.orig:hover{color:var(--ink-2)}.orig .tag{letter-spacing:1.5px;color:var(--ink-4);vertical-align:1px;margin-inline-end:8px;font-size:11px;display:inline-block}.grammar{color:var(--ink-2);align-items:baseline;gap:9px;margin-bottom:18px;font-size:14px;line-height:1.5;display:flex}.grammar .mark-i{background:var(--good);border-radius:50%;flex:none;width:7px;height:7px;transform:translateY(-1px)}.grammar.error .mark-i{background:var(--warn)}.grammar .pts{color:var(--ink-3)}.grammar .pts b{color:var(--ink-2);font-weight:500}.hero{font-family:var(--serif);letter-spacing:.1px;color:var(--ink);word-break:break-word;cursor:pointer;transition:opacity .3s var(--ease);font-size:clamp(23px,4vw,31px);line-height:1.5}.hero.swap{opacity:0}.why{color:var(--ink-2);transition:opacity .3s var(--ease);margin-top:16px;font-size:14px;line-height:1.6}.why.swap{opacity:0}.why b{color:var(--ink-3);margin-inline-end:8px;font-weight:500}.seg{background:var(--fill-soft);border:1px solid var(--hair);border-radius:999px;margin-top:30px;padding:3px;display:inline-flex;position:relative}.seg button{cursor:pointer;color:var(--ink-3);transition:color .25s var(--ease);background:0 0;border:none;border-radius:999px;padding:7px 16px;font-family:inherit;font-size:13px;position:relative}.seg button:hover{color:var(--ink-2)}.seg button.active{color:var(--bg)}.seg .glider{background:var(--ink);height:calc(100% - 6px);transition:transform .3s var(--ease), width .3s var(--ease);z-index:0;border-radius:999px;position:absolute;top:3px;left:3px}.seg button span{z-index:1;position:relative}.actions{align-items:center;gap:22px;margin-top:28px;display:flex}.act{cursor:pointer;color:var(--ink-2);transition:color .25s var(--ease);background:0 0;border:none;align-items:center;gap:7px;padding:4px 0;font-family:inherit;font-size:14px;display:inline-flex}.act:hover{color:var(--ink)}.act svg{width:16px;height:16px}.err{line-height:1.6}.err-title{color:var(--ink);margin-bottom:6px;font-size:17px;font-weight:500}.err-detail{color:var(--ink-2);font-size:15px}.err-actions{align-items:center;gap:18px;margin-top:20px;display:flex}.err-btn{font:inherit;cursor:pointer;transition:transform .2s var(--ease), color .25s var(--ease), background-color .25s var(--ease);border:none;font-size:14px}.err-btn.primary{background:var(--ink);color:var(--bg);border-radius:999px;padding:9px 20px}.err-btn.primary:hover{transform:scale(1.03)}.err-btn.ghost{color:var(--ink-3);background:0 0;padding:4px 0}.err-btn.ghost:hover{color:var(--ink)}.nf{text-align:center}.nf-code{font-family:var(--serif);letter-spacing:2px;color:var(--ink-4);font-size:clamp(64px,14vw,104px);line-height:1}.nf-title{font-family:var(--serif);letter-spacing:.1px;color:var(--ink);margin-top:16px;font-size:clamp(22px,3.6vw,28px);font-weight:500}.nf-detail{color:var(--ink-2);margin-top:10px;font-size:15px;line-height:1.6}.nf-back{margin-top:26px;text-decoration:none;display:inline-block}footer{text-align:center;color:var(--ink-4);letter-spacing:.2px;flex:none;padding-top:24px;font-size:12px}footer a{color:var(--ink-3);transition:color .25s var(--ease);text-decoration:none}footer a:hover{color:var(--ink)}footer .support{vertical-align:middle;margin:-10px;padding:10px;display:inline-flex}footer .support svg{width:20px;height:20px}footer .council-link{vertical-align:middle;letter-spacing:.3px;color:var(--ink-3);transition:color .25s var(--ease);margin-inline-start:18px;font-size:13px;text-decoration:none;display:inline-block}footer .council-link:hover{color:var(--ink)}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom));background:var(--ink);color:var(--bg);box-shadow:var(--toast-shadow);opacity:0;pointer-events:none;transition:all .35s var(--ease);z-index:50;border-radius:999px;padding:9px 18px;font-size:13.5px;font-weight:500;position:fixed;transform:translate(-50%)translateY(16px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (max-width:520px){main{padding:12px 0}.seg button{padding:7px 13px}.actions{gap:18px}}:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--ink-3);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
