:root{color-scheme:dark;--bg:#111719;--panel:#1b2426;--line:#344043;--text:#eaf0e8;--muted:#9caeab;--accent:#cbf073;--well:#0b1011}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit}.shell{max-width:1500px;margin:auto;padding:28px clamp(18px,4.2vw,72px) 24px}.top,.brand,.heading,.pane-head,.source-footer,.result-footer,.site-footer,.actions,.control-head,.control label,.toggle-control{display:flex;align-items:center;justify-content:space-between}.top{font-size:12px;letter-spacing:.12em;font-weight:700;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:26px}.brand{justify-content:flex-start;gap:10px;color:var(--accent)}.brand-icon{font-size:25px;line-height:0}.edition{text-transform:uppercase}.heading{display:block;margin:40px 0 30px}.eyebrow,.section-number,.file-type,.live-indicator{font-size:11px;font-weight:750;letter-spacing:.12em;color:var(--accent)}.dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;vertical-align:middle;margin-right:7px}.heading h1{font-size:clamp(38px,5.2vw,72px);line-height:1.06;letter-spacing:-.064em;margin:12px 0 8px;font-weight:750}.period{color:var(--accent)}.dek{color:#bdc9c4;font-size:clamp(15px,1.5vw,19px);margin:0 0 22px}.privacy{display:inline-flex;gap:10px;align-items:center;margin:0;padding:12px 16px;background:#253526;color:#dcf2ca;border:1px solid #496243;border-radius:6px;font-size:13px;line-height:1.45}.workspace{display:grid;grid-template-columns:minmax(0,.89fr) minmax(0,1.11fr);gap:18px;align-items:stretch}.pane{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:24px;min-width:0}.pane-head{gap:10px;align-items:flex-end;margin-bottom:22px}.pane-head h2{font-size:23px;letter-spacing:-.035em;margin:6px 0 0}.file-type{color:var(--muted);font-size:10px;white-space:nowrap}.dropzone{height:238px;border:1.5px dashed #627370;border-radius:8px;background:#182223;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:border-color .2s,background .2s}.dropzone:hover,.dropzone.dragging,.dropzone:focus-visible{border-color:var(--accent);background:#202e28;outline:none}.drop-inner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:7px}.upload-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #65756c;border-radius:50%;color:var(--accent);font-size:28px;margin-bottom:8px}.drop-inner strong{font-size:16px}.drop-inner span{color:var(--muted);font-size:13px}.drop-inner small{color:#899995;margin-top:13px;font-size:11px}.dropzone img{width:100%;height:100%;object-fit:contain}.source-footer{min-height:49px;gap:10px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.source-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.text-button{border:0;background:transparent;color:var(--accent);cursor:pointer;white-space:nowrap;padding:10px 0}.controls{padding-top:18px}.control-head{gap:12px;margin-bottom:8px}.control-head h2{font-size:16px;letter-spacing:-.02em;margin:0}.control-head span{font-size:11px;color:var(--muted)}.control{display:block;margin:16px 0 0}.control label,.control>span{display:block;font-size:12px;font-weight:650;color:#d3dfd8}.control label{display:flex}.control output{color:var(--accent);font-variant-numeric:tabular-nums}.control select{display:block;width:100%;height:42px;padding:0 12px;border:1px solid #52605c;background:#121b1c;color:var(--text);border-radius:5px;margin-top:8px;cursor:pointer}.control input[type=range]{width:100%;height:25px;margin:8px 0 0;accent-color:var(--accent);cursor:pointer}.toggle-control{border-top:1px solid var(--line);margin-top:18px;padding-top:17px;cursor:pointer;gap:12px}.toggle-control strong{font-size:13px;display:block}.toggle-control small{font-size:11px;color:var(--muted);display:block;margin-top:3px}.switch{position:relative;display:block;width:46px;height:26px;flex:0 0 46px}.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;z-index:2;cursor:pointer}.track{display:block;width:46px;height:26px;background:#586765;border-radius:30px;transition:background .2s}.track:after{content:"";position:absolute;width:20px;height:20px;background:#fff;left:3px;top:3px;border-radius:50%;transition:transform .2s}.switch input:checked+.track{background:#add958}.switch input:checked+.track:after{transform:translateX(20px);background:#182019}.switch input:focus-visible+.track{outline:2px solid var(--accent);outline-offset:3px}.output-pane{display:flex;flex-direction:column}.live-indicator{white-space:nowrap;color:var(--muted)}.result-well{background:var(--well);border:1px solid #3c4849;border-radius:6px;min-height:520px;flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;position:relative}.placeholder{text-align:center;color:var(--muted);padding:30px}.placeholder-art{color:#668174;white-space:pre;font:18px/1.1 monospace;margin-bottom:25px}.placeholder p{color:var(--text);font-size:15px;font-weight:650}.placeholder span{font-size:12px}#ascii-output{margin:0;padding:19px;min-width:100%;min-height:100%;width:max-content;align-self:stretch;color:#d8efc0;white-space:pre;font:8px/8px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:0;overflow:visible}.result-footer{gap:8px;min-height:41px;color:var(--muted);font-size:11px}#status{color:var(--accent);text-align:right}.actions{gap:8px}.actions button{flex:1;min-height:46px;background:#263333;border:1px solid #52635f;color:var(--text);border-radius:5px;font-size:12px;font-weight:700;padding:8px 10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:5px;text-align:left}.actions button.primary{background:var(--accent);color:#17201a;border-color:var(--accent)}.actions button:hover:not(:disabled){filter:brightness(1.14)}.actions button:disabled{opacity:.43;cursor:not-allowed}.footnote{color:var(--muted);font-size:11px;margin:16px 0 0}.site-footer{border-top:1px solid var(--line);margin-top:27px;padding-top:19px;color:var(--muted);font-size:11px;gap:10px}@media(max-width:850px){.workspace{grid-template-columns:1fr}.result-well{min-height:400px;max-height:650px}.heading{margin:28px 0}.pane{padding:20px}}@media(max-width:440px){.shell{padding:18px 14px}.edition{font-size:9px}.privacy{font-size:12px}.pane{padding:15px}.file-type{font-size:9px}.pane-head h2{font-size:20px}.dropzone{height:210px}.control-head span{font-size:10px}.actions{display:grid;grid-template-columns:1fr 1fr}.actions button.primary{grid-column:1/-1;justify-content:center;font-size:14px}.site-footer{align-items:flex-start;flex-direction:column}.result-well{min-height:330px;max-height:500px}}[hidden]{display:none!important}
.footer-links{display:flex;flex-wrap:wrap;gap:16px}.footer-links a,.brand-link{color:inherit;text-decoration:none}.footer-links a:hover,.footer-links a:focus-visible,.brand-link:hover,.brand-link:focus-visible{color:var(--accent)}.legal-card{max-width:900px;margin:34px auto 0;padding:clamp(22px,4vw,42px);background:var(--panel);border:1px solid var(--line);border-radius:10px}.legal-card h1{margin:0 0 12px;font-size:clamp(34px,5vw,56px);line-height:1.08;letter-spacing:-.055em}.legal-card h2{margin:28px 0 8px;font-size:19px;letter-spacing:-.02em}.legal-card p,.legal-card li{color:#c3cfca;font-size:15px;line-height:1.75}.legal-card p{margin:12px 0}.legal-card ul{padding-left:22px}.legal-card a{color:var(--accent)}.legal-eyebrow{margin:0 0 12px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.legal-lead{font-size:18px!important;color:var(--text)!important}.legal-note{padding:14px 16px;background:#253526;border:1px solid #496243;border-radius:6px}.legal-meta{color:var(--muted)!important;font-size:12px!important}.contact-address{display:inline-block;margin:8px 0;font-size:clamp(20px,3vw,28px);font-weight:700}.site-footer nav{margin-left:auto}@media(max-width:700px){.site-footer{align-items:flex-start;flex-direction:column}.site-footer nav{margin-left:0}.footer-links{gap:14px}.legal-card{margin-top:24px;padding:22px 18px}.legal-card p,.legal-card li{font-size:14px}}
