@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Lora:ital,wght@0,400;0,600;1,400&display=swap";:root{--ink: #14241c;--ink-muted: #4d5f56;--paper: #e7efe8;--paper-deep: #d4e2d6;--moss: #1a6b4a;--moss-bright: #228a5f;--moss-soft: #c5e4d4;--line: #b7c8bb;--danger-bg: #f3d6d2;--danger-fg: #8a2e24;--focus-ring: #1a6b4a;--shadow: 0 18px 50px rgba(20, 36, 28, .08);--serif: "Lora", Georgia, serif;--mono: "DM Mono", ui-monospace, monospace;color-scheme:light}html[data-theme=dark]{--ink: #e4eee7;--ink-muted: #9aafa3;--paper: #121a16;--paper-deep: #1c2822;--moss: #4cba86;--moss-bright: #63d09a;--moss-soft: #1e3a2e;--line: #33463c;--danger-bg: #3d221e;--danger-fg: #f0b0a8;--shadow: 0 18px 50px rgba(0, 0, 0, .35);color-scheme:dark}@media(prefers-color-scheme:dark){html:not([data-theme=light]){--ink: #e4eee7;--ink-muted: #9aafa3;--paper: #121a16;--paper-deep: #1c2822;--moss: #4cba86;--moss-bright: #63d09a;--moss-soft: #1e3a2e;--line: #33463c;--danger-bg: #3d221e;--danger-fg: #f0b0a8;--shadow: 0 18px 50px rgba(0, 0, 0, .35);color-scheme:dark}}*{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}body{font-family:var(--serif);color:var(--ink);background:radial-gradient(1200px 700px at 8% -10%,rgba(34,138,95,.18),transparent 55%),radial-gradient(900px 500px at 100% 0%,rgba(20,80,55,.12),transparent 50%),linear-gradient(180deg,var(--paper) 0%,var(--paper-deep) 100%);background-attachment:fixed}body:before{content:"";pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.45'/%3E%3C/svg%3E");mix-blend-mode:multiply;z-index:0}html[data-theme=dark] body:before{mix-blend-mode:overlay;opacity:.18}@media(prefers-color-scheme:dark){html:not([data-theme=light]) body:before{mix-blend-mode:overlay;opacity:.18}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app{position:relative;z-index:1;max-width:42rem;margin:0 auto;padding:3.5rem 1.5rem 5rem}.topbar{display:flex;justify-content:flex-end;gap:.5rem;margin-bottom:2.5rem}.seg{display:flex;gap:2px;font-family:var(--mono);font-size:11px;letter-spacing:.06em}.seg button{background:transparent;border:none;color:var(--ink-muted);cursor:pointer;padding:4px 8px;font:inherit}.seg button[aria-pressed=true]{color:var(--moss)}.hero{margin-bottom:2.75rem;animation:rise .7s ease both}.brand{font-family:var(--mono);font-size:clamp(1.85rem,5vw,2.6rem);font-weight:500;letter-spacing:-.06em;line-height:1.05;color:var(--ink)}.tagline{margin-top:.85rem;font-size:1.05rem;line-height:1.45;color:var(--ink-muted);max-width:22rem}.privacy{margin-top:.65rem;font-family:var(--mono);font-size:11px;color:var(--ink-muted);letter-spacing:.02em}.tabs{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;margin-bottom:1.35rem;border-bottom:1px solid var(--line)}.tab{font-family:var(--mono);font-size:13px;background:none;border:none;border-bottom:2px solid transparent;color:var(--ink-muted);cursor:pointer;padding:.55rem 0 .7rem;margin-bottom:-1px;transition:color .2s,border-color .2s}.tab.active{color:var(--ink);border-bottom-color:var(--moss)}.panel{display:none;animation:fade .28s ease}.panel.active{display:block}.drop-zone{border:1.5px dashed var(--line);padding:2.75rem 1.5rem;text-align:center;cursor:pointer;background:color-mix(in srgb,var(--paper-deep) 55%,transparent);transition:border-color .2s,background .2s,transform .2s}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--moss);background:var(--moss-soft)}.drop-label{font-family:var(--mono);font-size:13px;color:var(--ink-muted);line-height:1.75}.drop-label strong{color:var(--moss);font-weight:500}input[type=file]{display:none}textarea{width:100%;min-height:11rem;padding:1rem 0;border:none;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font-family:var(--serif);font-size:1.05rem;line-height:1.7;resize:vertical;outline:none}textarea:focus{border-bottom-color:var(--moss)}textarea::placeholder{color:var(--ink-muted);font-style:italic}.file-info{display:none;align-items:center;gap:10px;margin-top:1rem;font-family:var(--mono);font-size:13px;color:var(--moss)}.file-info.visible{display:flex}.remove-file{margin-left:auto;background:none;border:none;color:inherit;cursor:pointer;font:inherit}.btn-convert{margin-top:1.5rem;width:100%;padding:.95rem;background:var(--moss);color:#f4fff8;border:none;font-family:var(--mono);font-size:14px;font-weight:500;cursor:pointer;letter-spacing:.02em;transition:transform .12s,opacity .15s}.btn-convert:hover:not(:disabled){opacity:.92}.btn-convert:active:not(:disabled){transform:scale(.99)}.btn-convert:disabled{opacity:.38;cursor:not-allowed}.loading-bar{display:none;margin-top:1rem;height:2px;background:var(--line);overflow:hidden}.loading-bar.visible{display:block}.loading-bar-inner{height:100%;background:var(--moss);width:0;animation:loading 1.4s ease-in-out infinite}@keyframes loading{0%{width:0%;margin-left:0}50%{width:60%;margin-left:20%}to{width:0%;margin-left:100%}}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.error-msg{display:none;margin-top:.85rem;padding:.65rem 0;color:var(--danger-fg);font-family:var(--mono);font-size:13px}.error-msg.visible{display:block}.controls{margin-top:2.25rem;padding-top:1.5rem;border-top:1px solid var(--line);animation:fade .35s ease}.controls[hidden],.result[hidden]{display:none!important}.controls-title{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:1rem}.control-row{display:grid;gap:.35rem;margin-bottom:.9rem}.control-row label{font-family:var(--mono);font-size:12px;color:var(--ink-muted)}.control-row input[type=range]{width:100%;accent-color:var(--moss)}.result{margin-top:2.5rem;animation:fade .45s ease}.result-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.result-title{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.result-actions{display:flex;flex-wrap:wrap;gap:4px}.btn-action{font-family:var(--mono);font-size:12px;padding:6px 10px;border:none;background:transparent;color:var(--ink-muted);cursor:pointer}.btn-action:hover{color:var(--ink)}.bionic-output{font-size:var(--read-size, 18px);line-height:var(--read-leading, 1.9);color:var(--ink);white-space:pre-wrap;word-wrap:break-word;padding:.25rem 0 1.25rem}.bionic-output b{font-weight:600}.stats{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;font-family:var(--mono);font-size:12px;color:var(--ink-muted)}.stats strong{color:var(--moss);font-weight:500}.history{margin-top:2.75rem}.history summary{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);cursor:pointer;list-style:none}.history summary::-webkit-details-marker{display:none}.history-list{margin-top:.85rem;display:grid;gap:.35rem}.history-item{width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--line);padding:.65rem 0;cursor:pointer;color:inherit;font:inherit}.history-item strong{display:block;font-family:var(--mono);font-size:12px;font-weight:500}.history-item span{display:block;margin-top:.2rem;font-size:13px;color:var(--ink-muted)}.history-empty{margin-top:.75rem;font-size:14px;color:var(--ink-muted)}.history-clear{margin-top:.75rem;background:none;border:none;font-family:var(--mono);font-size:12px;color:var(--ink-muted);cursor:pointer}body.focus-mode .topbar,body.focus-mode .hero,body.focus-mode .tabs,body.focus-mode .panel,body.focus-mode .controls,body.focus-mode .history,body.focus-mode .privacy,body.focus-mode .btn-convert,body.focus-mode .loading-bar{display:none!important}body.focus-mode .app{max-width:40rem;padding-top:2rem}body.focus-mode .result{margin-top:0}.exit-focus{display:none}body.focus-mode .exit-focus{display:inline-flex}@media print{body:before,.topbar,.hero,.tabs,.panel,.controls,.history,.result-actions,.loading-bar,.stats{display:none!important}body{background:#fff}.bionic-output{color:#000}}@media(max-width:640px){.app{padding:2rem 1.15rem 4rem}.brand{font-size:1.85rem}.btn-convert{padding:1.05rem}}
