@import url('https://fonts.googleapis.com/css2?family=VT323&display=swap');
@media (min-width:901px) and (max-height:850px){.screen #desktop{padding:22px 32px 18px}.screen .home-intro{padding:12px 0;gap:30px}.screen .ascii{font-size:10px;line-height:1}.screen h1{font-size:48px}.screen .welcome{padding:10px 0}.screen .welcome p{margin-bottom:3px}.screen .box{padding:13px}.screen .menu button{padding:5px 8px;font-size:20px}.screen .system-info{font-size:16px;line-height:1.4}.screen .system-info .system-note{margin-top:8px;padding-top:8px;font-size:15px}.screen .command-area{margin-top:15px;padding-top:10px}.screen .terminal-body{padding-top:12px}}
:root{color-scheme:dark;--green:#33ff33;--muted:#3c9c48;--line:#205c29;--screen-brightness:1}*{box-sizing:border-box}body{margin:0;background:#282923;min-height:100svh;padding:22px;display:grid;place-items:center;font-family:'Courier New',monospace}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:4px}button{color:inherit}button:disabled{cursor:default}.monitor{width:min(1440px,100%);height:calc(100svh - 44px);min-height:570px;background:linear-gradient(110deg,#e3deca 0%,#d5ceb7 47%,#c4bda3 100%);border:2px solid #e5e0cd;border-right-color:#99927c;border-bottom-color:#8f8975;border-radius:34px 34px 26px 26px;padding:20px 48px 13px;box-shadow:inset 3px 3px 5px #faf4dd99,inset -5px -4px 9px #80796266,0 18px 38px #0008;display:flex;flex-direction:column;position:relative;color:#716d5d}.monitor:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.13;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.3' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.case-top{display:flex;justify-content:space-between;font:9px Arial,sans-serif;letter-spacing:2px;padding:0 8px 16px;color:#89826c;text-shadow:0 1px #f4eed5}.screen-recess{flex:1;min-height:0;padding:16px 19px 19px;border-radius:48px/35px;background:linear-gradient(135deg,#8c8876,#b3ac95 45%,#e8e1ca);box-shadow:inset 4px 6px 9px #59574688,0 1px 0 #f6eed4}.screen{height:100%;position:relative;isolation:isolate;overflow:hidden;background:#050805;border:3px solid #252b22;border-radius:38px/28px;box-shadow:0 0 0 3px #6a6b5d,inset 0 0 60px #000,0 2px 2px #f3edd6;color:var(--green);font-family:'VT323','Courier New',monospace;font-size:20px;line-height:1.18;text-shadow:0 0 4px #33ff3345;filter:brightness(var(--screen-brightness))}.screen:before,.screen:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:5;border-radius:inherit}.screen:before{background:repeating-linear-gradient(0deg,#0003 0,#0003 1px,transparent 1px,transparent 3px);opacity:.45}.screen:after{background:radial-gradient(ellipse at 50% 45%,transparent 55%,#0008 100%);box-shadow:inset 0 0 24px 10px #0009,inset 0 2px 2px #ffffff18;animation:flicker 9s infinite}#desktop{height:100%;padding:28px 35px 20px;display:flex;flex-direction:column}#desktop[hidden],[hidden]{display:none!important}.terminal-header{display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--line);font-size:17px;letter-spacing:1px}.terminal-body{overflow:auto;scrollbar-width:thin;scrollbar-color:#205c29 #050805;flex:1;padding:16px 0 0}.path{display:flex;justify-content:space-between;font-size:17px;color:var(--muted)}.online{font-size:15px}.home-intro{padding:32px 0 23px;display:flex;align-items:center;gap:38px}.ascii{margin:0;font:15px/1.08 'Courier New',monospace;color:var(--green);white-space:pre}.eyebrow{font-size:17px;letter-spacing:2px;color:var(--muted);margin:0 0 8px}h1{font-size:clamp(38px,4.3vw,66px);line-height:.9;letter-spacing:5px;font-weight:400;margin:0 0 10px}h2{font-size:32px;font-weight:400;letter-spacing:2px;margin:28px 0 16px}h3{font-size:23px;font-weight:400;margin:0 0 12px}p{margin:0 0 12px}.muted{color:var(--muted)}.welcome{padding:16px 0 21px;border-top:1px dashed var(--line);max-width:100%}.welcome p{margin-bottom:6px}.home-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}.box{border:1px solid var(--line);padding:20px;position:relative}.box-title{position:absolute;top:-11px;left:14px;background:#050805;padding:0 7px;font-size:17px;color:var(--muted);letter-spacing:1px}.menu{display:flex;flex-direction:column;gap:3px}.menu button{border:0;background:none;text-align:left;padding:8px 12px;display:flex;align-items:center;gap:16px;font-size:22px}.menu button:before{content:' ';width:10px}.menu button:hover,.menu button.selected,.menu button:focus-visible{background:var(--green);color:#051005;text-shadow:none;outline:none}.menu button.selected:before{content:'>'}.menu .menu-desc{font-size:17px;margin-left:auto;opacity:.65}.system-info{font-size:18px;line-height:1.55}.system-info p{display:flex;justify-content:space-between;margin:0}.system-info p span:first-child{color:var(--muted)}.system-info .system-note{border-top:1px dashed var(--line);margin-top:13px;padding-top:12px;display:block;line-height:1.25;color:var(--muted);font-size:17px}.command-area{margin-top:26px;padding-top:15px;border-top:1px dashed var(--line)}#command-form{display:flex;align-items:center;gap:10px}#command{background:none;border:0;outline:none;min-width:0;width:100%;color:var(--green);caret-color:var(--green);font-size:20px}#command::placeholder{color:#398943;opacity:1}.execute{background:none;border:0;font-size:22px}.cursor{animation:blink 1.1s steps(1) infinite}#command-form:focus-within>.cursor{display:none}#output{font-size:18px;white-space:pre-wrap;overflow-wrap:anywhere}#output:not(:empty){padding-bottom:12px}.terminal-footer{border-top:1px solid var(--line);padding-top:12px;margin-top:14px;display:flex;gap:24px;color:var(--muted);font-size:16px}.terminal-footer button{padding:0;border:0;background:none;color:var(--green)}.memory{margin-left:auto;font-size:14px}.lower-bezel{height:94px;flex-shrink:0;display:flex;align-items:center;gap:30px;padding:8px 12px 0}.brand{font:bold italic 28px Arial,sans-serif;letter-spacing:-1px;color:#777666;text-shadow:0 1px #f7f0d9;position:relative;padding-left:40px}.brand-mark{position:absolute;left:0;top:-3px;font:44px Arial,sans-serif;color:#777f71}.brand-sub{display:block;font:7px Arial,sans-serif;letter-spacing:1px;margin-top:5px}.vents{width:180px;height:30px;margin:auto;background:repeating-linear-gradient(0deg,transparent 0,transparent 4px,#928c7760 4px,#928c7760 5px,#eee7cf80 6px);border-radius:2px}.hardware{position:relative;display:flex;align-items:center;gap:22px;padding-bottom:8px}.adjustment{display:flex;align-items:center;gap:10px;font:18px Arial}.adjustment input{width:62px;height:7px;accent-color:#817e6d;cursor:pointer}.led{width:9px;height:5px;background:#80c243;border-radius:1px;box-shadow:0 0 5px #8bd14488}.led.off{background:#595c42;box-shadow:none}#power{color:#696b5c;width:45px;height:34px;border:1px solid #aaa38d;border-top-color:#f0e9cf;background:linear-gradient(#d8d2bd,#bfb9a2);border-radius:4px;box-shadow:2px 3px 3px #7c766266,inset 1px 1px 1px #eee7d2;font:21px Arial;text-shadow:0 1px #f4edda}#power:active{box-shadow:inset 1px 2px 3px #7c766266}.power-label{position:absolute;bottom:-7px;right:5px;font:8px Arial;letter-spacing:1px}.case-bottom{display:flex;justify-content:space-between;border-top:1px solid #a9a18a66;box-shadow:0 -1px #efe7cf66;font:7px Arial;letter-spacing:1.5px;padding:8px 12px 0;color:#8c856e}.boot{padding:40px;height:100%;position:relative}.boot pre{font:inherit;line-height:1.7;margin-top:28px;white-space:pre-wrap}.skip{position:absolute;bottom:30px;right:35px;border:none;background:none}.back,.text-button{border:0;background:none;padding:6px 0;color:var(--green);font-size:19px}.back{margin-top:20px}.back:hover,.text-button:hover{text-decoration:underline}.article{max-width:760px;line-height:1.5}.article p{margin-bottom:18px}.file-list{display:grid;gap:0;border-top:1px solid var(--line)}.file-row{border:0;border-bottom:1px dashed var(--line);padding:15px 8px;background:none;text-align:left;display:flex;justify-content:space-between;gap:20px}.file-row:hover{background:#103b16}.file-row small{color:var(--muted);font:inherit}.journal{width:100%;min-height:190px;resize:vertical;background:#071008;border:1px solid var(--line);padding:16px;color:var(--green);font-size:20px;line-height:1.4;caret-color:var(--green)}.setting{display:flex;gap:20px;justify-content:space-between;align-items:center;border-bottom:1px dashed var(--line);padding:18px 0}.setting button{background:none;border:1px solid var(--line);padding:8px 14px;min-width:100px}.setting button[aria-pressed=true]{background:var(--green);color:#050805}.help-grid{display:grid;grid-template-columns:130px 1fr;gap:12px}.help-grid dt{color:var(--green)}.help-grid dd{color:var(--muted);margin:0}.no-effects .screen:before,.no-effects .screen:after{display:none}.no-effects .screen{text-shadow:none}.no-motion *, .no-motion *:before,.no-motion *:after{animation:none!important}@keyframes blink{50%{opacity:0}}@keyframes flicker{0%,96%,98%,100%{opacity:1}97%{opacity:.93}99%{opacity:.97}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important}}@media(min-height:900px){.home-intro{padding-top:45px;padding-bottom:35px}.welcome{padding:25px 0}.menu button{padding:12px}.home-columns{margin-top:12px}.command-area{margin-top:35px}}@media(max-width:900px){body{padding:12px}.monitor{height:calc(100svh - 24px);padding:18px 24px 10px;min-height:540px}.screen-recess{padding:12px}.screen{border-radius:28px/24px}#desktop{padding:24px}.home-columns{gap:20px}.ascii{font-size:12px}.home-intro{gap:22px}h1{font-size:48px}.menu .menu-desc{display:none}.memory{display:none}.terminal-header{font-size:15px}.vents{width:90px}.lower-bezel{gap:20px}.online{font-size:13px}}@media(max-width:600px){body{padding:6px}.monitor{border-radius:20px;height:calc(100svh - 12px);min-height:500px;padding:14px 10px 8px}.case-top{font-size:6px;letter-spacing:1px;padding:0 7px 10px}.screen-recess{padding:8px;border-radius:29px}.screen{border-radius:23px;font-size:19px}#desktop{padding:23px 17px 16px}.terminal-header{font-size:13px;gap:10px;letter-spacing:0}.terminal-header>span:first-child{max-width:190px}.path{font-size:14px}.online{font-size:11px}.home-intro{padding:26px 0 22px;gap:15px}.ascii{font-size:8px}.eyebrow{font-size:13px;letter-spacing:1px}h1{font-size:35px;letter-spacing:2px}.home-intro .muted{font-size:15px}.welcome{font-size:18px}.home-columns{grid-template-columns:1fr;gap:26px}.system-info{font-size:17px}.menu button{font-size:21px;padding:9px}.menu .menu-desc{display:block;font-size:14px}.terminal-footer{gap:17px;font-size:13px}.lower-bezel{height:78px;padding:6px 9px;gap:10px}.brand{font-size:23px;padding-left:29px}.brand-mark{font-size:33px}.brand-sub{font-size:5px}.vents{display:none}.hardware{margin-left:auto;gap:13px}.adjustment{gap:4px}.adjustment input{width:35px}#power{width:36px;height:30px}.case-bottom{font-size:5px;padding:6px 6px 0;letter-spacing:1px}.boot{padding:28px 20px;font-size:17px}.file-row{flex-direction:column;gap:6px}.help-grid{grid-template-columns:90px 1fr;gap:14px}h2{font-size:27px}}

@media(min-width:901px) and (max-height:850px){.screen .home-intro{padding:7px 0}.screen .home-intro p{margin-bottom:5px}.screen .ascii{font-size:8px}.screen h1{font-size:40px;margin-bottom:6px}.screen .welcome{padding:6px 0;font-size:17px}.screen .home-columns{margin-top:10px}.screen .box{padding:10px}.screen .menu button{font-size:18px;padding:3px 8px}.screen .menu .menu-desc{font-size:14px}.screen .system-info{font-size:14px}.screen .system-info .system-note{font-size:13px;margin-top:5px;padding-top:5px}.screen .command-area{margin-top:10px;padding-top:7px}.screen #command{font-size:17px}}
@media(max-width:600px){.screen .menu .menu-desc{display:none}.screen .menu button{gap:10px;font-size:20px;padding:10px 7px}.screen .menu button:before{flex-shrink:0}.screen .home-intro .ascii{font-size:7px}.screen .home-intro{gap:12px}.screen h1{font-size:31px}}
/* The viewport is the casing; only the glass contains a scrolling surface. */
:root { --muted:#4eaa59; }
html,body { width:100%;height:100%;min-height:0;overflow:hidden; }
body { display:block;padding:0;background:#d5ceb7; }
.monitor { width:100%;max-width:none;height:100vh;height:100dvh;min-height:0;border-radius:0;padding:16px clamp(12px,3.5vw,54px) 10px;box-shadow:inset 3px 3px 5px #faf4dd99,inset -5px -4px 9px #80796266; }
.monitor:after { opacity:.075; }
.case-top { flex-shrink:0;align-items:center;gap:20px;padding:0 8px 12px;min-height:38px;color:#696453; }
.model-label { margin-left:auto; }
.sound-toggle { display:grid;place-items:center;flex:0 0 34px;height:27px;padding:3px;color:#6e6958;background:linear-gradient(#c9c2ab,#e1dac3);border:1px solid #b0a78e;border-bottom-color:#f1e8d0;border-right-color:#e9e0c7;border-radius:3px;box-shadow:inset 1px 1px 3px #8e856a55,0 1px #efe6cf88;text-shadow:0 1px #f3ead2; }
.sound-toggle[aria-pressed="true"] { color:#435742;box-shadow:inset 1px 1px 3px #8e856a77; }
.sound-toggle .sound-waves { display:none; }
.sound-toggle[aria-pressed="true"] .sound-waves { display:block; }
.sound-toggle[aria-pressed="true"] .sound-mute { display:none; }
.sound-toggle:focus-visible,#power:focus-visible,#brightness:focus-visible { outline:2px solid #495b40;outline-offset:3px; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0; }
.screen { background:radial-gradient(ellipse at 48% 42%,#091009 0%,#050805 73%);text-shadow:0 0 3px #33ff3355,0 0 9px #33ff3317; }
.screen:before { background:repeating-linear-gradient(0deg,#000 0,#000 1px,transparent 1px,transparent 3px);opacity:.10; }
.screen:after { background:linear-gradient(115deg,#c5e8d607 0,transparent 14%,transparent 95%,#d8ecdb04 100%),radial-gradient(ellipse at 50% 45%,transparent 55%,#0007 100%);box-shadow:inset 0 0 24px 10px #0008,inset 2px 3px 3px #e4ffec12,inset -2px -1px 3px #829c7e08;animation:glass-breathe 13s linear infinite; }
@keyframes glass-breathe { 0%,94%,96%,100%{opacity:1}95%{opacity:.97}97%{opacity:.99} }
.no-effects .screen { background:#050805; }
.screen #desktop { min-height:0; }
.terminal-body { min-height:0;overscroll-behavior:contain;overflow-x:hidden;overflow-y:auto;scroll-padding:14px; }
.terminal-header,.terminal-footer { flex-shrink:0; }
.home-columns { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); }
.home-intro>div,.box { min-width:0; }
#command:focus-visible { outline:1px solid var(--muted);outline-offset:3px; }
#command::placeholder { color:#4eaa59; }
#view:focus { outline:none; }
@media(prefers-reduced-motion:reduce) { .screen:after{animation:none} }
@media(max-width:900px) {
 .monitor{padding:12px 20px 8px;min-height:0;height:100vh;height:100dvh;border-radius:0;}
 .case-top{gap:14px;letter-spacing:1px;}
 .screen .home-intro{padding:18px 0;}
 .screen .ascii{font-size:10px;}
 .screen .welcome{padding:12px 0;}
}
@media(max-width:600px) {
 .monitor{padding:10px 9px 7px;}
 .case-top{font-size:8px;min-height:32px;padding:0 5px 8px;gap:8px;letter-spacing:.7px;}
 .model-label{font-size:6px;max-width:94px;text-align:right;line-height:1.4;}
 .sound-toggle{flex-basis:29px;height:25px;}
 .screen #desktop{padding:20px 15px 14px;}
 .home-columns{grid-template-columns:minmax(0,1fr);}
 .screen .home-intro{padding:20px 0;}
 .screen .ascii{font-size:7px;}
 .screen .menu button{font-size:20px;}
 .lower-bezel{height:72px;}
 .terminal-footer{gap:12px;}
 .boot{padding:25px 18px;overflow:auto;}
 .boot pre{font-size:16px;line-height:1.5;}
 .skip{font-size:14px;right:16px;bottom:20px;}
 .setting{gap:12px;font-size:18px;}
}
@media(max-height:520px) {
 .monitor{padding-top:6px;padding-bottom:4px;}
 .case-top{min-height:28px;padding-bottom:5px;}
 .lower-bezel{height:48px;}
 .case-bottom{padding-top:4px;}
 .screen-recess{padding:8px 12px;}
 .screen #desktop{padding:16px 22px 12px;}
 .terminal-footer{padding-top:7px;margin-top:8px;}
 .boot{padding:20px;overflow:auto;}
 .boot pre{margin-top:12px;font-size:16px;line-height:1.3;}
}
@media(min-width:901px) and (max-height:850px){.lower-bezel{height:80px}.screen #desktop{padding:18px 32px 16px}}
@media(max-width:360px){.screen .home-intro .ascii{font-size:6px}.screen .home-intro{gap:10px}.screen h1{font-size:28px}.screen .eyebrow{font-size:12px;letter-spacing:.7px}}
/* The notebook uses the same text-first file-directory language as the shell. */
.journal-privacy { font-size:17px;margin-bottom:18px; }
.journal-toolbar { display:flex;flex-wrap:wrap;gap:10px 18px;margin:14px 0 20px; }
.journal-toolbar button { background:none;border:0;padding:6px 0;color:var(--green);font-size:18px;text-align:left; }
.journal-toolbar button:hover:not(:disabled) { text-decoration:underline; }
.journal-toolbar button:disabled { opacity:.45;cursor:default; }
.journal-layout { display:grid;grid-template-columns:minmax(170px,220px) minmax(0,1fr);gap:26px; }
.journal-directory { border-right:1px dashed var(--line);padding-right:22px;min-width:0; }
.journal-directory label,.journal-editor>label { display:block;font-size:15px;letter-spacing:1px;margin-bottom:7px; }
#journal-search,#journal-title { display:block;width:100%;border:1px solid var(--line);background:#071008;color:var(--green);border-radius:0;padding:10px;font-size:19px;min-width:0; }
#journal-title { font-size:23px; }
#journal-title::placeholder,#journal-search::placeholder { color:var(--muted);opacity:1; }
#journal-count { font-size:14px;margin:12px 0; }
#journal-list { max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) #050805; }
.journal-entry { display:block;width:100%;border:0;border-bottom:1px dashed var(--line);padding:11px 9px;background:none;text-align:left;color:var(--green);overflow-wrap:anywhere; }
.journal-entry span { display:block;font-size:20px; }
.journal-entry small { display:block;font-size:14px;color:var(--muted);margin-top:5px; }
.journal-entry.current { border-left:2px solid var(--green);background:#103417; }
.journal-entry:hover { background:#103417; }
.journal-editor { min-width:0; }
.journal-editor .journal { min-height:190px; }
#journal-date { font-size:14px;line-height:1.4;margin:9px 0 17px; }
.journal-meta { display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;margin-top:8px; }
.journal-empty { padding:18px 4px;line-height:1.45; }
.journal-notice { border:1px dashed var(--green);padding:12px;font-size:18px;line-height:1.4; }
.journal-save-status { margin:10px 0;font-size:17px; }
@media(max-width:700px){.journal-layout{grid-template-columns:minmax(0,1fr);gap:24px}.journal-directory{border-right:0;border-bottom:1px dashed var(--line);padding:0 0 16px}#journal-list{max-height:145px}.journal-toolbar{gap:5px 14px;margin-bottom:14px}.journal-toolbar button{font-size:17px}.journal-editor .journal{min-height:220px}}
.journal-page>h2{margin:12px 0 8px;font-size:28px}.journal-page>p.muted{margin-bottom:6px;font-size:18px}.journal-page>.journal-privacy{font-size:15px;margin-bottom:8px}.journal-page .journal-toolbar{margin:8px 0 14px}.journal-page .journal-toolbar button{padding:4px 0}.journal-page #journal-title{padding:7px 10px;font-size:22px}.journal-page #journal-date{margin:7px 0 10px}.journal-page .journal-editor .journal{min-height:160px}.journal-save-status{overflow-wrap:anywhere}
@media(max-width:700px){.journal-page .journal-editor .journal{min-height:220px}}
/* A DOS program within the existing shell, with no independent page chrome. */
.simulation-active .command-area{display:none}
.simulation-active .terminal-body{display:flex;flex-direction:column}
.simulation-active #view{flex:1;display:flex;flex-direction:column;min-height:0}
.simulation-program{flex:1;min-height:350px;display:flex;flex-direction:column;padding:16px 0 6px}
.simulation-log{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);padding:12px 0;min-height:116px;font-size:18px;line-height:1.35;overflow-wrap:anywhere}
.simulation-log p{margin:0 0 3px;white-space:pre-wrap}
.simulation-message{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:18px 8px 12px}
.simulation-message h2{font-size:clamp(38px,5.5vw,66px);letter-spacing:5px;line-height:1;margin:6px 0 17px}
.simulation-message p{max-width:650px;margin-bottom:8px}
.simulation-message .eyebrow{font-size:15px;letter-spacing:2px}
.simulation-cursor{display:block;margin:8px 0;font-size:22px}
.simulation-message .simulation-idle{font-size:14px;letter-spacing:2px;margin:0}
.simulation-return{flex-shrink:0;align-self:center;border:0;background:none;color:var(--green);padding:12px 6px;font-size:18px;text-align:center;letter-spacing:1px}
.simulation-return:hover{text-decoration:underline}
@media(max-width:600px){.simulation-program{min-height:410px;padding-top:14px}.simulation-log{font-size:16px;min-height:130px}.simulation-message{padding:24px 4px 16px}.simulation-message h2{font-size:38px;letter-spacing:3px}.simulation-message .eyebrow{font-size:12px;letter-spacing:1px}.simulation-return{font-size:16px;letter-spacing:0;line-height:1.4}}
@media(max-height:520px){.simulation-program{min-height:340px}.simulation-log{font-size:16px;min-height:108px}.simulation-message h2{font-size:38px}}
/* Keep the complete status and return prompt together on ordinary displays. */
.simulation-log{min-height:104px;font-size:17px;line-height:1.2;padding:10px 0}
.simulation-message{padding:12px 8px 8px;font-size:19px}
.simulation-message h2{font-size:clamp(36px,5.5vw,56px);margin:6px 0 12px}
.simulation-message p{margin-bottom:6px}
.simulation-message .eyebrow{font-size:14px}
.simulation-cursor{font-size:18px;margin:5px 0}
.simulation-message .simulation-idle{font-size:12px}
.simulation-return{padding:10px 6px}
@media(max-width:600px){.simulation-program{min-height:330px}.simulation-log{font-size:16px}.simulation-message h2{font-size:38px}.simulation-message .eyebrow{font-size:12px}.simulation-message{font-size:18px}}
.simulation-program{padding-top:10px;padding-bottom:2px}.simulation-message{padding:6px 8px 4px}
.terminal-turn{margin:0 0 15px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;max-width:100%}.terminal-turn:last-child{margin-bottom:0}.terminal-turn p{margin:0 0 6px}.terminal-echo{color:var(--muted)}.terminal-reply{color:var(--green);line-height:1.3}.command-area #output{font-size:19px;line-height:1.3}.command-area{overflow-wrap:anywhere}#command{scroll-margin:12px}
@media(max-width:600px){.command-area #output{font-size:18px}}
#command-form>label{white-space:nowrap;flex-shrink:0}#command-form>.cursor,.execute{flex-shrink:0}
/* Library access: an illuminated catalogue prompt within the same CRT shell. */
.library-active .command-area{display:none}
.library-active .terminal-body{display:flex;flex-direction:column}
.library-active #view{flex:1;display:flex;flex-direction:column;min-height:0}
.library-terminal{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:350px;padding:16px 8px 6px}
.library-station{font-size:14px;letter-spacing:2px;margin:0 0 18px}
.library-welcome{font-size:clamp(26px,3vw,40px);line-height:1.13;letter-spacing:1px;margin:0 0 12px;font-weight:400}
.library-welcome span{display:block;font-size:1.13em;margin-top:6px}
.library-divider{color:var(--muted);max-width:100%;overflow:hidden;white-space:nowrap;margin:0 0 22px;letter-spacing:3px}
.library-search{width:min(620px,100%);margin:0;text-align:left}
.library-search label{display:block;font-size:22px;margin-bottom:12px;text-align:center}
.library-query-line{display:flex;align-items:center;position:relative;min-height:48px;border:1px solid var(--muted);background:#050805;box-shadow:0 0 9px #33ff330b;padding:0 14px;gap:12px;text-align:left}
.library-query-prefix{flex-shrink:0;font-size:23px}
#library-query{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--green);font:23px 'VT323','Courier New',monospace;padding:10px 0;caret-color:var(--green);border-radius:0}
.library-query-line:not(.has-value) #library-query{caret-color:transparent}
.library-query-line:focus-within{outline:1px solid var(--green);outline-offset:3px}
.library-block-cursor{display:none;position:absolute;left:38px;top:50%;transform:translateY(-50%);font-size:23px;pointer-events:none;line-height:1}
.library-query-line:focus-within:not(.has-value) .library-block-cursor{display:block}
.library-search-status{min-height:18px;margin:10px 0 0;font-size:15px;text-align:center;line-height:1.25}
.library-footer-note{font-size:13px;letter-spacing:1px;margin:12px 0}
.library-return{background:none;border:0;padding:10px 4px;color:var(--green);font-size:16px;letter-spacing:1px;text-align:center}
.library-return:hover{text-decoration:underline}
@media(max-width:600px){.library-terminal{padding:18px 0 4px;min-height:380px}.library-station{font-size:12px;letter-spacing:1px}.library-welcome{font-size:24px;letter-spacing:0}.library-welcome span{font-size:1.05em}.library-divider{letter-spacing:0;margin-bottom:22px}.library-search label{font-size:20px;line-height:1.3}.library-return{font-size:14px;letter-spacing:0}.library-footer-note{font-size:11px}}
@media(max-height:520px){.library-terminal{min-height:350px}.library-welcome{font-size:25px}}
@media(min-width:901px) and (max-height:850px){.library-terminal{padding-top:10px}.library-station{margin-bottom:10px}.library-welcome{font-size:30px}.library-welcome span{font-size:1.08em}.library-divider{margin-bottom:12px}.library-footer-note{margin:6px 0}.library-return{padding:6px 4px}.screen .menu button{padding:2px 8px}}
/* The Library reader imports text structure, not the source site's appearance. */
.library-terminal.has-results{justify-content:flex-start;padding-top:12px}
.library-terminal.has-results .library-welcome{font-size:26px}
.library-terminal.has-results .library-station{margin-bottom:10px}
.library-results{width:min(720px,100%);text-align:left;}
.library-results:empty{display:none}
.library-result{display:flex;justify-content:space-between;align-items:baseline;gap:14px;border:0;border-bottom:1px dashed var(--line);background:none;color:var(--green);padding:13px 6px;width:100%;text-align:left;}
.library-result span{font-size:22px}
.library-result small{color:var(--muted);font-size:15px;overflow-wrap:anywhere;}
.library-result:hover{background:#103417}
.library-reader{width:100%;padding:8px 0 20px;overflow-wrap:anywhere;}
.library-reader .library-back-search{margin-top:0;margin-bottom:18px;}
.library-record-file{font-size:15px;letter-spacing:1px;overflow-wrap:anywhere;}
.library-reader .library-record-title{font-size:38px;margin:14px 0 12px;letter-spacing:2px;}
.library-record-title:focus{outline:none;}
.library-record-status{font-size:16px;padding-bottom:16px;border-bottom:1px dashed var(--line);}
.library-record-content{font-size:21px;line-height:1.45;max-width:100%;padding:5px 0 18px;}
.library-record-content p{margin:0 0 18px;}
.library-record-content h3{font-size:28px;line-height:1.2;letter-spacing:1px;margin:25px 0 13px;}
.library-record-content h4{font-size:24px;line-height:1.2;margin:20px 0 12px;}
.library-record-content a{color:var(--green);text-decoration:underline;text-underline-offset:3px;}
.library-record-content a:hover{background:#103417;}
.library-record-content blockquote{border-left:2px solid var(--line);margin:20px 0;padding:5px 0 1px 18px;color:var(--muted);}
.library-record-content pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;border:1px dashed var(--line);padding:12px;}
.library-record-content code{font:inherit;}
.library-record-content ul,.library-record-content ol{padding-left:28px;margin:16px 0;}
.library-record-content li{margin-bottom:8px;}
.library-record-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;margin:18px 0;}
.library-record-content td,.library-record-content th{border:1px solid var(--line);padding:8px 12px;text-align:left;}
.library-record-content hr{border:0;border-top:1px dashed var(--line);margin:22px 0;}
.library-record-actions{border-top:1px dashed var(--line);padding-top:12px;display:flex;gap:20px;flex-wrap:wrap;justify-content:space-between;}
@media(max-width:600px){.library-result{display:block}.library-result small{display:block;margin-top:5px}.library-reader .library-record-title{font-size:31px}.library-record-content{font-size:20px;line-height:1.4}.library-record-content h3{font-size:26px}.library-record-content blockquote{padding-left:12px}}

/* Crow cloning terminal */
.clone-program{min-height:360px;gap:12px}
.clone-main{flex:1;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:12px 0}
.clone-main h2{font-size:clamp(30px,4vw,48px);letter-spacing:1px;margin:0 0 24px}
.clone-form{width:min(580px,100%);display:flex;flex-direction:column;align-items:center;gap:14px}
.clone-form label{font-size:22px}
#clone-name{display:block;width:100%;min-width:0;padding:12px 14px;background:#050805;border:1px solid var(--muted);border-radius:0;color:var(--green);caret-color:var(--green);font:24px 'VT323','Courier New',monospace}
.clone-create{background:#071008;border:1px solid var(--green);border-radius:0;color:var(--green);padding:9px 26px;font-size:22px}
.clone-create:hover:not(:disabled){background:#123b17}
.clone-create:disabled,#clone-name:disabled{opacity:.55}
.clone-progress,.clone-result{border-top:1px dashed var(--line);width:min(650px,100%);margin-top:24px;padding-top:18px;overflow-wrap:anywhere}
.clone-spinner{display:block;font:32px 'Courier New',monospace;margin-bottom:14px}
.clone-stage{font-size:19px}
.clone-result h3{font-size:28px;margin-bottom:10px}
.clone-result:focus{outline:none}
@media(max-width:600px){.clone-main h2{font-size:30px}.clone-form label{font-size:20px}.clone-program{min-height:420px}.clone-stage{font-size:17px}.clone-result h3{font-size:25px}}

.clone-entry-error{width:100%;text-align:left;padding:8px 0 0}
.clone-entry-error p{margin-bottom:5px}
.clone-program .clone-aside{font-size:16px;line-height:1.35;letter-spacing:0}

/* Three compromised records. Effects stay inside the reader; source text is intact. */
.signal-panel{position:relative;margin:0 0 20px;padding:16px 18px 10px;border:1px dashed #53b461;background:repeating-linear-gradient(0deg,#14371b45 0 1px,transparent 1px 5px);overflow:hidden}
.signal-panel p{margin:0 0 7px}
.signal-warning{font-size:21px;letter-spacing:2px}
.signal-fault{font-size:15px;color:#8acb91;letter-spacing:1px}
.signal-echo{font-size:18px}
.signal-code{font:13px/1.4 'Courier New',monospace;opacity:.65;overflow-wrap:anywhere}
.signal-panel .signal-toggle{font-size:16px;padding:8px 0}
.signal-record:not(.signal-stable) .library-record-title{position:relative;text-shadow:5px 0 #8cffa866,-5px 1px #33ff3345;animation:archive-title-tear 8s steps(1,end) infinite}
.signal-record:not(.signal-stable) .library-record-title .signal-title-ghost{position:absolute;inset:0;pointer-events:none;opacity:.45;clip-path:inset(32% 0 37%);transform:translateX(9px);text-shadow:-8px 0 #c3ffd0;animation:archive-ghost 7s steps(1,end) infinite}
.signal-record:not(.signal-stable) .signal-panel:after{content:'▒▒ // SIGNAL LOST // ▓▓ 0x????';display:block;font:14px 'Courier New',monospace;letter-spacing:3px;color:#83b58b;opacity:.6;white-space:nowrap;animation:archive-fragment 9s steps(1,end) infinite}
.signal-record:not(.signal-stable) .library-record-content{position:relative;border-left:2px dashed #367744;padding-left:14px;text-shadow:2px 0 #9affab35,-2px 0 #33ff3325}
.signal-record:not(.signal-stable) .library-record-content:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,transparent 0 19px,#00160455 19px 21px,transparent 21px 48px);opacity:.65}
.signal-record:not(.signal-stable) .library-record-content:after{content:'';position:absolute;top:0;left:0;right:0;height:60px;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 5px,#5aac6e1c 5px 7px);border-top:1px solid #7abb8745;border-bottom:2px solid #5fbc7040;animation:archive-tracking 11s linear infinite}
.signal-record:not(.signal-stable) .library-record-content>:nth-child(3n+1){animation:archive-text-tear 9s steps(1,end) infinite}
.signal-record:not(.signal-stable) .library-record-content>:nth-child(4n){animation:archive-text-tear 11s steps(1,end) -4s infinite}
.signal-raven{--tear-direction:-1}
.signal-flamingo{--tear-direction:1}
.signal-eagle{--tear-direction:1}
.signal-raven:not(.signal-stable) .library-record-title{animation-duration:10s}
.signal-flamingo:not(.signal-stable) .library-record-title{animation-duration:6.5s}
.signal-stable .signal-title-ghost{display:none}
.signal-stable .signal-panel{background:none;border-style:solid;border-color:var(--line)}
.signal-stable .signal-echo,.signal-stable .signal-code{opacity:.55}
@keyframes archive-title-tear{0%,76%,84%,100%{transform:none}77%{transform:translateX(-7px) skewX(-5deg)}79%{transform:translateX(9px)}81%{transform:translateX(-4px) skewX(3deg)}}
@keyframes archive-ghost{0%,70%,90%,100%{clip-path:inset(32% 0 37%);transform:translateX(9px)}72%,80%{clip-path:inset(60% 0 15%);transform:translateX(-13px)}84%{clip-path:inset(10% 0 65%);transform:translateX(15px)}}
@keyframes archive-text-tear{0%,82%,90%,100%{transform:none;filter:none}84%{transform:translateX(calc(5px * var(--tear-direction))) skewX(-.5deg);filter:blur(.35px)}87%{transform:translateX(calc(-4px * var(--tear-direction)))}}
@keyframes archive-tracking{from{transform:translateY(0)}to{transform:translateY(700px)}}
@keyframes archive-fragment{0%,70%,100%{transform:translateX(0);letter-spacing:3px}73%{transform:translateX(-14px);letter-spacing:6px}80%{transform:translateX(12px);letter-spacing:1px}}
.no-motion .signal-record:not(.signal-stable) .library-record-content>:nth-child(n){transform:none;filter:none}
.no-motion .signal-record .library-record-content:after{display:none}
@media(prefers-reduced-motion:reduce){.signal-record:not(.signal-stable) .library-record-content>:nth-child(n){transform:none;filter:none}.signal-record .library-record-content:after{display:none}}
@media(max-width:600px){.signal-panel{padding:12px 10px 8px}.signal-warning{font-size:18px;letter-spacing:1px}.signal-fault{font-size:13px}.signal-echo{font-size:16px}.signal-record:not(.signal-stable) .library-record-content{padding-left:8px}}

/* A failed first lock, then a clean signal. No full-screen brightness flashes. */
.signal-record.signal-locking{animation:archive-lock-shake 1.8s linear both;will-change:transform}
.signal-record.signal-locking .signal-panel{border-style:double;border-width:3px;box-shadow:inset 8px 0 #33ff3325,inset -10px 0 #8bffa530}
.signal-record.signal-locking .signal-warning{letter-spacing:3px;text-shadow:8px 0 #a5ffb470,-7px 2px #33ff3370}
.signal-record.signal-locking .library-record-title{animation:archive-lock-tear .22s steps(1,end) infinite;text-shadow:14px 1px #b5ffbc80,-13px -2px #33ff3380}
.signal-record.signal-locking .library-record-title .signal-title-ghost{transform:translateX(23px);opacity:.7}
.signal-record.signal-locking .library-record-content{ text-shadow:7px 0 #afffb65c,-6px 1px #33ff3360 }
.signal-record.signal-locking .library-record-content>:nth-child(n){animation:archive-lock-tear .28s steps(1,end) infinite}
.signal-record.signal-locking .library-record-content>:nth-child(2n){animation-direction:reverse}
.signal-record.signal-locking .library-record-content:after{height:110px;animation:archive-tracking .7s linear infinite}
.signal-record.signal-locking .signal-panel:after{animation:archive-lock-tear .18s steps(1,end) infinite}
@keyframes archive-lock-shake{
  0%,100%{transform:none}
  5%{transform:translate(-9px,3px) skewX(-1deg)}
  11%{transform:translate(13px,-4px) skewX(1.5deg)}
  17%{transform:translate(-12px,-2px)}
  23%{transform:translate(10px,5px) skewX(-1deg)}
  30%{transform:translate(-14px,2px) skewX(1.5deg)}
  37%{transform:translate(12px,-4px)}
  44%{transform:translate(-9px,3px)}
  51%{transform:translate(10px,-3px) skewX(-1deg)}
  59%{transform:translate(-7px,2px)}
  67%{transform:translate(6px,-2px)}
  75%{transform:translate(-4px,1px)}
  83%{transform:translate(3px,-1px)}
  92%{transform:translate(-1px,0)}
}
@keyframes archive-lock-tear{0%,100%{transform:translateX(-7px) skewX(-1deg)}30%{transform:translateX(12px) skewX(2deg)}65%{transform:translateX(-13px)}85%{transform:translateX(5px)}}
.no-motion .signal-record.signal-locking{transform:none;will-change:auto}
@media(prefers-reduced-motion:reduce){.signal-record.signal-locking{transform:none;will-change:auto}}

.file-row .archive-file-title{display:block;font-size:16px;padding:5px 0 0 26px;line-height:1.3}

/* JOURNAL6 alone is an unrecoverable archive anomaly. Original prose is intact. */
.cursed-journal{isolation:isolate;position:relative}
.cursed-journal>h2{position:relative;letter-spacing:5px;text-shadow:11px 0 #b5ffc980,-9px 2px #33ff3370;animation:cursed-heading 5.7s steps(1,end) infinite}
.cursed-warning{position:relative;border:1px dashed #7abc83;border-left:5px double #79cd89;margin:0 0 23px;padding:12px 15px;background:repeating-linear-gradient(0deg,#307a3d22 0 1px,transparent 1px 4px);overflow:hidden}
.cursed-warning>p{font-size:18px;letter-spacing:3px;margin:0 0 10px;text-shadow:5px 0 #91ffa966,-4px 1px #33ff3370}
.cursed-fragments{display:grid;gap:6px;font:13px/1.3 'Courier New',monospace;color:#85bd8e;letter-spacing:2px}
.cursed-fragments span:first-child{color:#a6e3b0;font-size:15px;animation:cursed-fragment 7s steps(1,end) infinite}
.cursed-fragments span:nth-child(2){transform:translateX(-9px);opacity:.65}
.cursed-fragments span:last-child{animation:cursed-fragment 9s steps(1,end) -3s infinite}
.cursed-journal .article{position:relative;max-width:800px;border-left:2px dashed #4b965c;padding-left:16px;text-shadow:3px 0 #bcffc344,-3px 1px #33ff3340}
.cursed-journal .article p{position:relative;animation:cursed-paragraph 8s steps(1,end) infinite}
.cursed-journal .article p:nth-child(2n){animation-duration:10s;animation-delay:-4s}
.cursed-journal .article p:nth-child(3n){animation-delay:-2s}
.cursed-copy{position:absolute;inset:0;pointer-events:none;user-select:none;clip-path:inset(28% 0 48%);transform:translateX(13px);opacity:.55;color:#a2ffc0;text-shadow:-9px 1px #4aff7770;animation:cursed-echo 6.3s steps(1,end) infinite}
.cursed-journal h2 .cursed-copy{clip-path:inset(30% 0 22%);transform:translateX(-17px);opacity:.8}
.cursed-journal .article:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,transparent 0 17px,#010a0355 17px 20px,transparent 20px 39px)}
.cursed-journal .article:after{content:'';position:absolute;top:0;left:0;right:0;height:100px;pointer-events:none;z-index:2;border-top:2px solid #83d29355;border-bottom:1px solid #77df8a66;background:repeating-linear-gradient(0deg,transparent 0 3px,#65a97228 3px 5px);animation:cursed-tracking 6s linear infinite}
@keyframes cursed-heading{0%,58%,81%,100%{transform:none}60%{transform:translate(-11px,2px) skewX(-4deg)}65%{transform:translate(14px,-2px)}71%{transform:translate(-8px,1px) skewX(5deg)}76%{transform:translate(6px,0)}}
@keyframes cursed-paragraph{0%,62%,83%,100%{transform:none;filter:none}65%{transform:translateX(-7px) skewX(-1deg)}70%{transform:translate(9px,1px);filter:blur(.3px)}75%{transform:translateX(-12px)}80%{transform:translateX(4px)}}
@keyframes cursed-echo{0%,45%,100%{clip-path:inset(28% 0 48%);transform:translateX(13px)}48%{clip-path:inset(8% 0 73%);transform:translateX(-18px)}60%{clip-path:inset(63% 0 14%);transform:translateX(17px)}77%{clip-path:inset(40% 0 30%);transform:translateX(-12px)}}
@keyframes cursed-fragment{0%,65%,100%{transform:none}68%{transform:translateX(18px);letter-spacing:5px}75%{transform:translateX(-11px);letter-spacing:1px}85%{transform:translateX(7px);letter-spacing:3px}}
@keyframes cursed-tracking{from{transform:translateY(0)}to{transform:translateY(800px)}}
.no-motion .cursed-journal .article:after{display:none}
@media(prefers-reduced-motion:reduce){.cursed-journal .article:after{display:none}}
@media(max-width:600px){.cursed-warning{padding:10px}.cursed-warning>p{font-size:16px;letter-spacing:1px}.cursed-fragments{font-size:11px;letter-spacing:1px}.cursed-fragments span:first-child{font-size:13px}.cursed-journal .article{padding-left:10px}}

/* The plea repeats through the entire file, not only its first screen. */
.cursed-journal>h2{animation-duration:3.4s;text-shadow:16px 0 #b5ffc9a0,-14px 3px #33ff3390,0 -2px #a0ffc35c}
.cursed-journal .cursed-warning{box-shadow:inset 8px 0 #71f89118,inset -6px 0 #93ffa52a;animation:cursed-warning-drift 4.8s steps(1,end) infinite}
.cursed-journal .cursed-warning>p{text-shadow:9px 0 #91ffa990,-7px 2px #33ff3380}
.cursed-journal .cursed-fragments span:first-child{font-size:17px;letter-spacing:3px;animation-duration:3.9s}
.cursed-journal .article{animation:cursed-page-shear 5.9s steps(1,end) infinite}
.cursed-journal .article p{animation-duration:4.2s}
.cursed-journal .article p:nth-of-type(2n){animation-duration:5.1s;animation-delay:-2s}
.cursed-journal .article p:nth-of-type(3n){animation-duration:3.7s;animation-delay:-1s}
.cursed-journal .cursed-copy{opacity:.7;animation-duration:3.1s}
.cursed-journal .cursed-copy-secondary{color:#66eb8a;opacity:.45;animation-direction:reverse;animation-delay:-1.4s;mix-blend-mode:screen}
.cursed-journal .article:before{background:repeating-linear-gradient(0deg,transparent 0 13px,#010a0366 13px 16px,transparent 16px 31px,#2f7b3b22 31px 33px)}
.cursed-journal .article:after{height:145px;animation-duration:3.2s;border-top:3px double #83d29388}
.cursed-refrain{position:relative;max-width:100%;margin:8px 0 25px;padding:8px 5px;border-top:1px dashed #4f8b59;border-bottom:1px solid #37663e;background:#0b1a0e99;color:#b0eeb8;font:15px/1.5 'Courier New',monospace;letter-spacing:2px;text-shadow:5px 1px #7dfc9b55,-4px -1px #3cda5955;overflow-wrap:anywhere;animation:cursed-refrain-tear 4.4s steps(1,end) infinite}
.cursed-refrain:nth-of-type(2n){animation-delay:-2.3s}
.cursed-refrain-echo{position:absolute;inset:8px 5px;pointer-events:none;clip-path:inset(15% 0 38%);transform:translateX(-11px);color:#52fc89;opacity:.65}
@keyframes cursed-page-shear{0%,42%,70%,100%{transform:none}45%{transform:translate(7px,1px) skewX(.6deg)}51%{transform:translate(-8px,-1px) skewX(-.8deg)}58%{transform:translateX(5px)}64%{transform:translateX(-4px)}}
@keyframes cursed-warning-drift{0%,65%,100%{transform:none}68%{transform:translateX(-9px) skewX(-1deg)}74%{transform:translateX(11px)}81%{transform:translateX(-5px)}}
@keyframes cursed-refrain-tear{0%,38%,73%,100%{transform:none;letter-spacing:2px}42%{transform:translateX(-9px);letter-spacing:4px}51%{transform:translateX(13px) skewX(-2deg);letter-spacing:1px}60%{transform:translateX(-6px)}68%{transform:translateX(4px)}}
@media(max-width:600px){.cursed-journal .cursed-fragments span:first-child{font-size:13px;letter-spacing:1px}.cursed-refrain{font-size:12px;letter-spacing:1px}}
