*{box-sizing:border-box}body{margin:0;--paper:#f6f4ea;--ink:#203b9e;--body:#252525;--panel:#fffef9;background:var(--paper);color:var(--body);font:17px/1.5 'Times New Roman',Times,serif}a{color:var(--ink);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}h1,h2,p,pre{margin:0}main{max-width:760px;margin:38px auto 0;padding:0 20px 26px}header{text-align:center;margin-bottom:24px}h1{font-size:39px;line-height:1.15;letter-spacing:-1.4px;color:var(--ink)}header p{font-size:15px;margin-top:8px}.computer{max-width:660px;margin:0 auto 30px;container-type:inline-size;color:var(--ink)}.ascii,.side{font:400 2.6041667cqw/1 'Courier New',Courier,monospace;white-space:pre;letter-spacing:0;font-variant-ligatures:none;pointer-events:none;user-select:none}.ascii{width:100%}.monitor-body{position:relative}.side{position:absolute;top:0;bottom:0;overflow:hidden;width:6.25%;}.left{left:1.5625%}.right{right:1.5625%}.screen{margin:0 7.8125%;background:var(--panel);padding:5px 10px 12px;text-align:center}.screen-label{font:10px/1.4 'Courier New',monospace;letter-spacing:.2px;color:#555;margin-bottom:9px}.meme{display:block}.meme img{display:block;width:100%;height:auto}.screen h2{font-size:23px;line-height:1.08;margin:12px auto 9px;max-width:510px;letter-spacing:-.4px}.screen h2 a{color:var(--body);text-decoration:none}.screen h2 a:hover{text-decoration:underline}.partiful{font:12px/1.5 'Courier New',monospace}.text-box{position:relative;padding:24px 30px;background:var(--panel);margin-top:7px}.text-box h2{font-size:23px;line-height:1.2;color:var(--ink);margin:24px 0 10px}.text-box h2:first-child{margin-top:0}.text-box p{font-size:16px;max-width:620px}.speakers{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:5px 24px;margin:0;padding:0;font-size:15px}.speakers span{color:#666}.option-1 .text-box{border-left:2px solid var(--ink);border-right:2px solid var(--ink);background:linear-gradient(var(--ink),var(--ink)) top left/20px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) top right/20px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) bottom left/20px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) bottom right/20px 2px no-repeat,var(--panel)}.archive{margin-top:25px}summary{font:12px/1.5 'Courier New',monospace;color:var(--ink);cursor:pointer;width:fit-content}.past-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}.past-grid a{font-size:17px}.past-grid img{width:100%;height:280px;object-fit:contain;object-position:left bottom;display:block;margin-bottom:8px}.past-grid span{display:block}footer{text-align:center;margin-top:26px;font:11px/1.4 'Courier New',monospace;color:#666}.mockbar{font:12px/1.3 Arial,sans-serif;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ddd;padding:13px 24px;gap:15px;background:#fafafa;color:#666}.mockbar nav{display:flex;gap:25px}.mockbar a{color:#606060;text-decoration:none;white-space:nowrap}.mockbar a[aria-current]{color:#111;text-decoration:underline;text-underline-offset:5px}.skip{position:absolute;left:16px;top:-80px;padding:8px;background:white;z-index:10}.skip:focus{top:55px}
/* Laptop + a perforated, printed-flyer box. */
.option-2{--paper:#fff9ed;--panel:#fffdf7;--ink:#a43928;font-family:Georgia,serif}.option-2 h1{font-weight:normal;font-style:italic;letter-spacing:-2px;font-size:40px}.option-2 .left{left:3.125%;width:4.6875%}.option-2 .right{right:3.125%;width:4.6875%}.option-2 .screen h2{font-size:21px;font-weight:normal;line-height:1.2}.option-2 .text-box{border:2px dashed var(--ink);padding:24px 28px}.option-2 .text-box h2{font-weight:normal;font-style:italic;font-size:22px}.option-2 .text-box p{font-size:15px}.option-2 .speakers{font-size:14px}
/* An all-in-one machine and an ASCII-style terminal box. */
.option-3{--paper:#eff1e8;--panel:#f9faf4;--ink:#315e42;--body:#29352c}.option-3 h1{font:700 31px/1.2 'Courier New',monospace;letter-spacing:-1.7px}.option-3 header p{font:12px/1.4 'Courier New',monospace;margin-top:12px}.option-3 .screen h2{font-family:'Courier New',monospace;font-size:20px;letter-spacing:-.6px;line-height:1.15}.option-3 .text-box{border:1px solid var(--ink);background:var(--panel);padding:23px 28px}.option-3 .text-box:before,.option-3 .text-box:after{content:'+';position:absolute;left:-6px;font:22px/1 'Courier New',monospace;color:var(--ink);background:var(--paper);width:13px;height:17px}.option-3 .text-box:before{top:-9px}.option-3 .text-box:after{bottom:-8px}.option-3 .text-box h2{font:700 16px/1.3 'Courier New',monospace}.option-3 .text-box h2:first-child{background:var(--paper);position:relative;display:table;margin-top:-35px;padding:0 8px;margin-left:-7px;margin-bottom:18px}.option-3 .speakers{font-size:15px}.option-3 .computer{margin-bottom:40px}
@media(max-width:780px){main{margin-top:28px}.mockbar>span{display:none}.mockbar nav{width:100%;justify-content:space-between;gap:12px}.computer{margin-bottom:26px}}
@media(max-width:520px){main{padding:0 16px 23px;margin-top:26px}header{margin-bottom:22px}h1{font-size:30px;letter-spacing:-1px}header p{font-size:13px}.screen{padding:4px 4px 8px}.screen-label{font-size:8px;letter-spacing:0;margin-bottom:6px}.screen h2{font-size:17px;line-height:1.12;letter-spacing:-.3px;margin:9px 0 7px}.partiful{font-size:11px}.text-box{padding:20px 19px}.text-box h2{font-size:22px}.text-box p{font-size:16px}.speakers{display:block;font-size:15px}.speakers li{margin:5px 0}.past-grid{grid-template-columns:1fr}.past-grid img{height:auto}.mockbar{padding:13px 14px;font-size:11px}.option-2 h1{font-size:31px;letter-spacing:-1.5px}.option-2 .screen h2{font-size:16px;line-height:1.12}.option-2 .text-box{padding:22px 20px}.option-3 h1{font-size:25px;letter-spacing:-1.5px}.option-3 header p{font-size:10px}.option-3 .screen h2{font-size:16px;letter-spacing:-.7px}.option-3 .text-box{padding:22px 19px}.option-3 .text-box h2:first-child{margin-top:-34px;font-size:14px}.option-3 .computer{margin-bottom:34px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
/* The selected all-in-one: stippled case, shaded side panel, CRT and power. */
.option-3 .computer{max-width:690px;color:#42614a}.option-3 .textured{font-weight:400;text-shadow:0 .3px 0 #42614a}.option-3 .side.left{left:0;width:12.5%}.option-3 .side.right{right:0;width:12.5%;color:#3d5640}.option-3 .screen{margin:0 12.5%;position:relative;background:#f4f8e9;box-shadow:inset 0 0 22px #42614a22;border-radius:7px;padding:10px 12px 14px;isolation:isolate;transition:background-color .18s}.option-3 .screen:after{content:'';position:absolute;inset:0;border-radius:inherit;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#23452c0a 3px,#23452c0a 4px);pointer-events:none;z-index:1}.option-3 .meme{overflow:hidden;border-radius:4px}.option-3 .screen-label{color:#4b5c43}.option-3 .chassis{position:relative}.power{position:absolute;left:14%;top:33%;display:flex;align-items:center;gap:9px;min-height:44px;min-width:100px;padding:4px 6px;border:0;background:transparent;color:#315e42;font:12px/1 'Courier New',monospace;cursor:pointer}.power:hover{background:#315e4210}.power:focus-visible{outline:2px dotted #315e42;outline-offset:2px}.power-bracket{font-size:16px;white-space:nowrap}.led{display:inline-block;color:#51a51b;text-shadow:0 0 4px #75cb39,0 0 10px #84c849;font-weight:bold;animation:status-light 3.8s ease-in-out infinite}.power-caption{font-size:11px}.powered-off .led{color:#727b68;text-shadow:none;animation:none}.option-3 .powered-off .screen{background:#17281e;box-shadow:inset 0 0 32px #0009}.powered-off .screen>*{visibility:hidden}.option-3 .powered-off .screen:after{background:radial-gradient(ellipse at center,#73966c0f,transparent 70%)}.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}@keyframes status-light{0%,65%,100%{opacity:1}76%,86%{opacity:.25}}
@media(max-width:520px){.option-3 .screen{padding:7px 5px 10px;border-radius:4px}.option-3 .screen h2{font-size:15px;letter-spacing:-.65px}.power{left:14%;top:31%;min-height:32px;min-width:74px;gap:4px;padding:2px}.power-bracket{font-size:12px}.power-caption{font-size:9px}.option-3 .computer{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.led{animation:none}.option-3 .screen{transition:none}}
/* Two variations of the selected all-in-one. The original stays available. */
.permutation .computer{position:relative;isolation:isolate;filter:drop-shadow(4px 7px 2px #38382e18)}
.permutation .computer:before{content:'';position:absolute;inset:0;z-index:-1;clip-path:polygon(12.5% 0,96.875% 0,96.875% calc(100% - 5.2cqw),92.2% 100%,10.94% 100%,7.8125% calc(100% - 7.8cqw),7.8125% 7.8cqw);pointer-events:none}
.permutation .computer:after{content:'';position:absolute;top:7.8cqw;bottom:5.2cqw;left:7.8125%;width:3.125%;z-index:-1;pointer-events:none}
.permutation .screen{box-shadow:0 -2px 1px #fffff099,0 2px 2px #0003,inset 0 0 24px #35432a20;border:1px solid #4d59453d;border-radius:13px;padding:12px 12px 15px}
.permutation .text-box:before,.permutation .text-box:after{display:none}
.permutation .text-box h2:first-child{display:block;position:static;background:transparent;padding:0;margin:0 0 13px;font-size:18px}
.permutation .text-box h2{margin-top:23px;font-size:15px}
.permutation .computer .textured{text-shadow:none}
/* Warm molded plastic; the info box reads as a small recessed panel. */
.permutation-beige{--paper:#f5f1e7;--panel:#fcfaf2;--ink:#65583d;--body:#373b31}
.permutation-beige .computer{color:#7c745e}
.permutation-beige .computer:before{background:radial-gradient(ellipse at 27% 12%,#fff8dc99,transparent 60%),radial-gradient(#8e84651c .6px,transparent .9px) 0 0/3px 3px,linear-gradient(90deg,#e0d6b8 0%,#e0d6b8 11%,#e9e0c8 12%,#ded3b3 89%,#c6b997 90%,#b4a783 97%)}
.permutation-beige .computer:after{background:linear-gradient(90deg,#fff5d66b,transparent)}
.permutation-beige .side.right{color:#92846a}
.permutation-beige .top{color:#9b8d70}
.permutation-beige .screen{background:#f0f2de;border-color:#9b967e;border-radius:14px;box-shadow:0 2px 0 #f6efd8,0 -2px 0 #9b9179,inset 0 0 25px #6d76572b}
.permutation-beige .screen h2 a{color:#364a34}
.permutation-beige .screen .partiful{color:#445b3b}
.permutation-beige .text-box{border:1px solid #bcb59e;border-radius:9px;background:linear-gradient(180deg,#eae5d6,#f4f0e5 55px);box-shadow:inset 0 2px 3px #6c62472b,0 1px 0 #fffdf7;padding:29px 31px}
.permutation-beige .text-box h2{font-family:Georgia,serif;font-weight:normal;font-size:22px;letter-spacing:-.3px}
.permutation-beige .text-box h2:first-child{font-size:25px}
.permutation-beige .speakers a{color:#4a6145}
.permutation-beige .power{color:#564e38}
/* Green faceted shell; detached corners leave the text box open. */
.permutation-green{--paper:#f1f3eb;--panel:#edf1e5;--ink:#345d47;--body:#293b30}
.permutation-green .computer{color:#48664e;filter:drop-shadow(6px 7px 0 #405c4124)}
.permutation-green .computer:before{background:linear-gradient(160deg,#edf1dc77 0,transparent 30%),linear-gradient(90deg,#aabd9e 0%,#c7d2b8 12%,#c7d2b8 89%,#91a787 90%,#7c9274 97%)}
.permutation-green .computer:after{background:#e2e8d5b0}
.permutation-green .top{color:#70866a}
.permutation-green .side.right{color:#486047}
.permutation-green .screen{border-radius:5px;background:#f6f7e9;border:1px solid #547353;box-shadow:0 3px 0 #e3e8d7,-2px -2px 0 #6c8266,inset 0 0 20px #47694c19}
.permutation-green .text-box{border:0;padding:30px 29px;background:linear-gradient(var(--ink),var(--ink)) left top/28px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) left top/2px 28px no-repeat,linear-gradient(var(--ink),var(--ink)) right top/28px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) right top/2px 28px no-repeat,linear-gradient(var(--ink),var(--ink)) left bottom/28px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) left bottom/2px 28px no-repeat,linear-gradient(var(--ink),var(--ink)) right bottom/28px 2px no-repeat,linear-gradient(var(--ink),var(--ink)) right bottom/2px 28px no-repeat,#e7eddf88}
.permutation-green .info-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:30px}
.permutation-green .info-grid h2{font-size:16px;line-height:1.3;margin:0 0 12px;min-height:42px}
.permutation-green .info-grid p{font-size:16px}
.permutation-green .info-speakers{border-top:1px dotted #345d4766;margin-top:23px;padding-top:20px}
.permutation-green .info-speakers h2{font-size:15px;margin:0 0 13px}
.permutation-green .powered-off .screen,.permutation-beige .powered-off .screen{background:#17281e;box-shadow:inset 0 0 32px #0009}
@media(max-width:520px){.permutation .screen{padding:7px 5px 10px;border-radius:6px}.permutation-beige .text-box{padding:24px 21px}.permutation-beige .text-box h2:first-child{font-size:23px}.permutation-green .text-box{padding:23px 21px}.permutation-green .info-grid{grid-template-columns:1fr;gap:22px}.permutation-green .info-grid h2{min-height:0;font-size:16px}.permutation-green .info-speakers{padding-top:19px;margin-top:22px}}
/* Every shaded plane now follows the measured ASCII strokes at every size. */
.permutation .computer:before,.permutation .computer:after{display:none}
.permutation .computer{filter:none}
.case-shading{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}
.permutation-beige{--case-front-light:#ece3c9;--case-front-dark:#ded3b3;--case-top-light:#eee7d2;--case-top-dark:#d9cfaf;--case-side-light:#c7ba99;--case-side-dark:#b9aa86;--case-base:#cec19d;--case-grain:#8e846524}
.permutation-green{--case-front-light:#d3dcc4;--case-front-dark:#c4d0b5;--case-top-light:#dee5d1;--case-top-dark:#b5c5a8;--case-side-light:#94a98a;--case-side-dark:#7f9776;--case-base:#a7ba9b;--case-grain:#5371490d}
/* Case edges, fill and texture clipping share precisely the same polygons. */
.permutation .case-shading polygon:not([data-face="grain"]){stroke:var(--case-edge);stroke-width:1;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.permutation-beige{--case-edge:#a59a7a}
.permutation-green{--case-edge:#7b9372}
/* Physical controls sit on the same casing; the invite remains an ordinary link. */
.interactive-controls .screen{transition:background-color .18s}
.face-control,.brightness-control,.eject-control,.insert-disk{font-family:'Courier New',monospace;color:#65583d;cursor:pointer}
.face-control,.brightness-control{position:absolute;background:transparent;border:0;min-height:32px;padding:3px 5px}
.face-control{top:13%;left:14%;font-size:15px;letter-spacing:1px}
.face-control:hover,.brightness-control:hover{background:#53482b12}
.brightness-control{top:33%;left:32%;min-height:44px;display:flex;align-items:center;gap:6px;font-size:15px}
.brightness-caption{font-size:11px}
.chassis button:focus-visible,.insert-disk:focus-visible{outline:2px dotted #536542;outline-offset:3px}
.disk-drive{position:absolute;left:54.5%;top:18%;width:28.5%;height:25%;z-index:3}
.drive-mouth{position:absolute;top:8px;left:0;right:30px;height:8px;border-radius:2px;background:#514a35;border-top:2px solid #8d8263;box-shadow:0 1px 0 #f6eed7,inset 0 2px 3px #0007}
.eject-control{position:absolute;right:0;top:-3px;min-width:27px;min-height:29px;border:1px solid #a69a78;border-radius:2px;background:linear-gradient(#f4ebd2,#cdbf9a);box-shadow:0 1px 0 #998b69;font-size:15px;padding:0}
.eject-control:active{box-shadow:inset 0 1px 2px #65583d55}
.drive-pocket{position:absolute;left:2%;right:17%;top:12px;height:150px;overflow:hidden;pointer-events:none}
.floppy{display:block;position:relative;width:82%;aspect-ratio:1;max-width:130px;margin:0 auto;border:1px solid #313e35;background:#45574a;border-radius:1px 1px 5px 5px;box-shadow:2px 4px 4px #302a2140;transform:translateY(-110%);visibility:hidden;transition:transform .35s ease,visibility .35s;color:#263428;cursor:pointer;padding:0;pointer-events:none}
.disk-ejected .floppy{transform:translateY(0);visibility:visible;pointer-events:auto}
.disk-shutter{position:absolute;left:19%;right:19%;top:0;height:24%;background:linear-gradient(90deg,#b9bcb1,#e4e3d6,#a3aa9d);border:1px solid #9da494;border-top:0}
.disk-shutter:after{content:'';position:absolute;right:18%;top:12%;width:19%;height:65%;background:#45574a}
.disk-label{position:absolute;left:9%;right:9%;top:35%;bottom:13%;padding:5% 4%;background:#eee8d4;border-top:5px solid #ac4e38;text-align:left;font:10px/1.15 'Courier New',monospace}
.disk-label small{display:block;margin-top:4px;font-size:8px}
.disk-notch{position:absolute;width:8%;height:5%;bottom:4%;left:6%;background:#e9dfc3}
.disk-ejected .screen-content{visibility:hidden}
.no-disk{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:19px;font:15px/1.4 'Courier New',monospace;color:#46583b}
.no-disk[hidden]{display:none!important}.empty-face{font-size:34px;letter-spacing:3px}.insert-disk{padding:8px 12px;border:1px solid #6a785a;background:#e2e8cf;box-shadow:2px 2px 0 #a6b08e;font-size:12px}
.insert-disk:hover{background:#d7e0be}
/* Three alternate text boundaries, with the same computer and content. */
.textbox-note .text-box{border:0;border-radius:0;padding:29px 30px 35px 48px;background:linear-gradient(90deg,transparent 31px,#ba66575c 31px,#ba66575c 32px,transparent 32px),#fffdf3;box-shadow:none;filter:drop-shadow(0 2px 1px #55462a14);clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),97% 100%,94% calc(100% - 6px),91% 100%,88% calc(100% - 6px),85% 100%,82% calc(100% - 6px),79% 100%,76% calc(100% - 6px),73% 100%,70% calc(100% - 6px),67% 100%,64% calc(100% - 6px),61% 100%,58% calc(100% - 6px),55% 100%,52% calc(100% - 6px),49% 100%,46% calc(100% - 6px),43% 100%,40% calc(100% - 6px),37% 100%,34% calc(100% - 6px),31% 100%,28% calc(100% - 6px),25% 100%,22% calc(100% - 6px),19% 100%,16% calc(100% - 6px),13% 100%,10% calc(100% - 6px),7% 100%,4% calc(100% - 6px),0 100%)}
.textbox-note .text-box h2{color:#554e3c;font-style:italic}.textbox-note .text-box h2:first-child{font-size:25px}.textbox-note .speakers{border-top:1px solid #c7bea780;padding-top:13px}
.textbox-file .text-box{border:1px solid #a99d80;border-radius:0 5px 5px 5px;background:#e9e3cf;box-shadow:3px 4px 0 #c8bea355;padding:30px;margin-top:55px}
.file-tab{position:absolute;left:-1px;top:-30px;height:30px;padding:7px 26px 4px 16px;border:1px solid #a99d80;border-bottom:0;border-radius:5px 12px 0 0;background:#e9e3cf;font:12px/1.4 'Courier New',monospace;color:#665c43}
.textbox-file .text-box h2{font:700 15px/1.4 'Courier New',monospace}.textbox-file .text-box h2:first-of-type{font-size:18px;margin-top:0}.textbox-file .text-box p{max-width:590px}.textbox-file .speakers{border-top:1px dashed #b3a98d;padding-top:13px}
.textbox-ticket .text-box{border:1px dashed #8e8061;border-top:4px solid #65583d;border-bottom:4px solid #65583d;border-radius:0;background:#faf6e8;box-shadow:none;padding:28px 33px}
.textbox-ticket .text-box:before,.textbox-ticket .text-box:after{display:block;content:'';width:22px;height:22px;top:47%;left:-12px;background:var(--paper);border-radius:50%;border:1px solid #b4a98d}
.textbox-ticket .text-box:after{left:auto;right:-12px;bottom:auto}
.textbox-ticket .text-box h2{font:700 14px/1.4 'Courier New',monospace;text-transform:lowercase}.textbox-ticket .text-box h2:first-child{font:700 21px/1.2 'Courier New',monospace;border-bottom:1px solid #b4a98d;padding-bottom:16px;margin-bottom:18px}
.textbox-ticket .speakers{font-family:'Courier New',monospace;font-size:12px;gap:9px 20px}.textbox-ticket .text-box p{font-size:16px}
@media(max-width:520px){.face-control{top:9%;left:13%;font-size:10px;letter-spacing:0;min-height:28px}.brightness-control{left:35%;top:31%;min-height:32px;gap:2px;padding:2px;font-size:11px}.brightness-caption{font-size:8px}.disk-drive{top:15%;left:55%;width:29%}.drive-mouth{top:10px;right:23px;height:5px}.eject-control{top:0;min-width:21px;min-height:26px;font-size:13px}.drive-pocket{right:20%;top:13px;height:85px;left:0}.floppy{width:95%;min-width:46px}.disk-label{font-size:5px;border-top-width:3px}.disk-label small{font-size:5px;margin-top:2px}.no-disk{font-size:11px;gap:14px}.empty-face{font-size:25px}.insert-disk{font-size:10px;padding:7px 10px}.textbox-note .text-box{padding:23px 20px 29px 35px;background:linear-gradient(90deg,transparent 22px,#ba66575c 22px,#ba66575c 23px,transparent 23px),#fffdf3}.textbox-note .text-box h2:first-child{font-size:22px}.textbox-file .text-box{padding:24px 21px}.textbox-ticket .text-box{padding:23px 23px}.textbox-ticket .text-box h2:first-child{font-size:19px}.textbox-ticket .speakers{font-size:12px}}
@media(prefers-reduced-motion:reduce){.floppy,.interactive-controls .screen{transition:none}}
@media(max-width:520px){.brightness-control{left:38%}}
/* Flat index card: a small file label and three clearly separated text rows. */
.textbox-card .text-box{max-width:690px;margin:0 auto;border:1px solid #a99f85;border-radius:0;background:#fffdf5;box-shadow:none;padding:0;overflow:hidden}
.textbox-card .card-label{width:fit-content;padding:7px 14px;border-right:1px solid #a99f85;border-bottom:1px solid #a99f85;background:#e9e3d1;font:11px/1.4 'Courier New',monospace;letter-spacing:.4px;color:#65583d}
.textbox-card .card-row{padding:23px 26px}
.textbox-card .card-row+.card-row{border-top:1px solid #d7d0bc}
.textbox-card .text-box .card-row h2{font:700 15px/1.3 'Courier New',monospace;color:#514b39;margin:0 0 12px;padding:0;background:none}
.textbox-card .text-box .card-row:first-of-type h2{font-size:20px}
.textbox-card .text-box p{font-size:17px;line-height:1.5;max-width:610px}
.textbox-card .speakers{font-size:15px;row-gap:7px}
@media(max-width:520px){.textbox-card .card-row{padding:21px 20px}.textbox-card .text-box p{font-size:16px}.textbox-card .text-box .card-row h2{font-size:15px}.textbox-card .card-label{font-size:10px;padding:6px 11px}}
/* Bracketed ASCII controls. */
.power{min-width:44px;justify-content:center;padding:4px}.power-bracket{font-size:17px}.power-caption{display:none}
.led{color:#161616;text-shadow:none;opacity:1;animation:black-green-light 2.8s steps(1,end) infinite}
@keyframes black-green-light{0%,49.99%{color:#138d35}50%,100%{color:#161616}}
.powered-off .led{color:#161616;animation:none;text-shadow:none}
.drive-mouth{top:2px;left:0;right:47px;height:auto;min-height:19px;background:none;border:0;box-shadow:none;border-radius:0;white-space:nowrap;font:12px/1.5 'Courier New',monospace;color:#75694c}
.drive-mouth:before{content:'[______________]';font-size:clamp(6px,1.7cqw,12px)}
.eject-control{right:-2px;top:-5px;min-width:44px;min-height:32px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font:12px/1 'Courier New',monospace;color:#65583d}
.eject-control:hover{background:#65583d10}.eject-control:active{box-shadow:none}
.drive-pocket{top:18px;right:24%;height:150px}
.floppy{background:#e5dcc2;border:0;box-shadow:2px 3px 0 #65583d20;border-radius:0;width:76%;max-width:112px;aspect-ratio:auto;padding:2px 0;color:#65583d}
.ascii-floppy{font:1.7cqw/1.05 'Courier New',monospace;white-space:pre;letter-spacing:0;text-align:center;pointer-events:none}
.insert-disk{border:0;background:transparent;box-shadow:none;padding:8px;font:12px/1.4 'Courier New',monospace;text-decoration:underline;text-underline-offset:3px}.insert-disk:hover{background:#5365420d}
/* A stack of four separate files. */
.files-layout .file-stack{display:grid;gap:48px;margin-top:59px;scroll-margin-top:46px}
.files-layout .file-section{margin:0;scroll-margin-top:46px;padding:25px 29px 26px;border-color:#afa488;background:#e9e3cf;box-shadow:2px 3px 0 #c8bea344}
.files-layout .text-box h2.file-tab{position:absolute;display:block;left:-1px;top:-29px;min-height:29px;height:29px;margin:0;padding:6px 20px 4px 13px;border:1px solid #afa488;border-bottom:0;border-radius:3px 10px 0 0;background:#e9e3cf;font:12px/1.4 'Courier New',monospace;letter-spacing:0;font-weight:400;color:#665c43}
.files-layout .file-section h3{font:700 18px/1.3 'Courier New',monospace;margin:0 0 13px;color:#514b39}
.files-layout .file-section p{font-size:16px;line-height:1.5;max-width:620px}.files-layout .file-section p+p{margin-top:13px}
.talk-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}.talk-list li{display:flex;align-items:baseline;gap:10px;line-height:1.35;font-size:16px}.talk-list li>span{font:11px/1.4 'Courier New',monospace;color:#85795b;flex-shrink:0}.talk-list a{color:#4a6145}
.files-layout .file-section .empty-events{font:12px/1.5 'Courier New',monospace;color:#756a50}
.files-layout footer{margin-top:28px;padding-bottom:10px;color:#65583d}
@media(max-width:520px){.power{min-width:34px}.power-bracket{font-size:13px}.drive-mouth{top:4px;right:30px;min-height:15px;line-height:1.3}.eject-control{right:-4px;top:-5px;min-width:30px;min-height:30px;font-size:9px}.drive-pocket{top:13px;right:24%;height:95px}.floppy{width:95%;min-width:0;padding:1px 0}.ascii-floppy{font-size:1.7cqw}.insert-disk{font-size:10px}.files-layout .mockbar{padding:12px 9px}.files-layout .mockbar nav{gap:7px;font-size:10px}.files-layout .file-stack{gap:43px;margin-top:48px}.files-layout .file-section{padding:23px 20px}.files-layout .text-box h2.file-tab{font-size:10px;top:-27px;height:27px;padding-top:6px;min-height:27px}.files-layout .file-section h3{font-size:17px}.talk-list li{font-size:15px;gap:8px}.talk-list{gap:11px}}
@media(prefers-reduced-motion:reduce){.led{animation:none;color:#138d35}.powered-off .led{color:#161616}}
/* A small disk that fits the slot, with no oversized paper label. */
.interactive-controls .drive-pocket{left:0;right:auto;top:18px;width:16.32cqw;height:10.5cqw}
.interactive-controls .floppy{width:8.7cqw;min-width:0;max-width:none;margin:0 auto;padding:0;background:var(--case-front-dark);box-shadow:none}
.interactive-controls .ascii-floppy{font:1.2cqw/1 'Courier New',monospace;text-align:left}
/* A little file browser with the raised tabs of an old desktop browser. */
.interactive-controls .floppy{width:14.4cqw}
.files-layout .file-browser{max-width:690px;margin:35px auto 0;scroll-margin-top:24px}
.file-icons{display:flex;align-items:end;gap:3px;padding:7px 7px 0;background:#d3cbb7;border:1px solid #afa488;border-bottom:0;box-shadow:inset 1px 1px #faf6e9;overflow-x:auto;scrollbar-width:thin}
.file-icon{position:relative;flex:1 0 auto;min-width:0;margin:4px 0 0;padding:9px 9px 8px;border:1px solid #a99d80;border-bottom:0;border-radius:5px 5px 0 0;background:#ddd6c3;box-shadow:inset 1px 1px #f8f3e6;cursor:pointer;color:#65583d}
.file-icon span{font:11px/1.5 'Courier New',monospace;white-space:nowrap}
.file-icon:hover{background:#ece5d3}
.file-icon[aria-selected="true"]{margin-top:0;padding-top:13px;background:#fcfaf2;color:#373b31;z-index:1}
.file-icon[aria-selected="true"]:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#fcfaf2}
.file-icon:focus-visible{outline:1px dotted #65583d;outline-offset:-5px}
.files-layout .file-stack{display:block;margin:0}
.files-layout .file-section{border-radius:0;background:#fcfaf2;padding:63px 26px 25px;box-shadow:2px 3px 0 #c8bea355;min-height:192px}
.files-layout .file-section[hidden]{display:none}
.files-layout .text-box h2.file-tab{top:10px;left:12px;right:48px;height:25px;min-height:25px;border:1px solid #b5ac97;border-top-color:#918770;border-left-color:#918770;border-radius:0;padding:4px 8px;font:11px/1.4 'Courier New',monospace;background:#fffdf6;color:#75694f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.close-file{position:absolute;right:9px;top:10px;min-width:32px;height:25px;padding:0;border:1px solid #afa488;background:#e9e3cf;box-shadow:inset 1px 1px #fffdf5;color:#65583d;font:11px/1 'Courier New',monospace;cursor:pointer}
.close-file:hover{background:#d9d0b9}.close-file:active{box-shadow:inset 1px 1px #a99d80}
.close-file:focus-visible{outline:1px dashed currentColor;outline-offset:-3px}
@media(max-width:520px){.interactive-controls .drive-pocket{top:13px}.file-icons{gap:2px;padding:6px 5px 0}.file-icon{padding:8px 9px 7px}.file-icon span{font-size:10px}.file-icon[aria-selected="true"]{padding-top:12px}.files-layout .file-section{padding:58px 19px 22px}.files-layout .file-browser{margin-top:26px}.files-layout .text-box h2.file-tab{font-size:9px;padding-top:5px}}

/* Full-size square floppy: its width matches the drive opening. */
.interactive-controls .drive-pocket{height:17cqw}
.interactive-controls .floppy{width:16cqw;filter:drop-shadow(1px 2px 0 #65583d25)}
.interactive-controls .ascii-floppy{font-size:1.333333cqw;line-height:1}
/* Character-drawn file tabs and window, matching the computer. */
.interactive-controls .floppy{width:16.8cqw;filter:none}
.interactive-controls .drive-pocket{width:16.8cqw;height:17cqw;left:-.24cqw}
.interactive-controls .ascii-floppy{font-size:1cqw;line-height:1.05}
.file-icons{gap:3px;padding:0;border:0;background:none;box-shadow:none;align-items:end}
.file-icon,.file-icon[aria-selected="true"]{flex:1 0 auto;margin:0;padding:0 0 2px;border:0;border-radius:0;background:none;box-shadow:none;color:#85795b}
.file-icon span{display:block;white-space:pre;font:11px/1 'Courier New',monospace;letter-spacing:0}
.file-icon .ascii-tab-name{padding:5px 0}
.file-icon .ascii-tab-edge{overflow:hidden}
.file-icon:hover,.file-icon:hover span{background:none;color:#373b31}
.file-icon[aria-selected="true"]{color:#373b31;font-weight:bold}
.file-icon[aria-selected="true"] .ascii-tab-name{background:#e9e3cf}
.file-icon[aria-selected="true"]:after{display:none}
.files-layout .file-section{border:0;background:none;border-radius:0;box-shadow:none;padding:66px 25px 28px;min-height:192px}
.files-layout .text-box h2.file-tab{border:0;box-shadow:none;background:none;top:14px;left:19px;right:54px;padding:0;height:20px;min-height:20px;font:11px/1.5 'Courier New',monospace}
.close-file,.close-file:hover,.close-file:active{top:10px;right:15px;border:0;background:none;box-shadow:none}
.close-file:hover{color:#202c20}
.ascii-window-frame{position:absolute;inset:0;pointer-events:none;color:#9b8f72;overflow:hidden;font:12px/16px 'Courier New',monospace}
.ascii-rule{position:absolute;left:0;right:0;display:flex;white-space:pre;height:16px;line-height:16px}
.ascii-rule b{font-weight:400;flex:none}.ascii-rule span{overflow:hidden;flex:1;min-width:0}
.frame-top{top:0}.frame-bottom{bottom:0}.frame-divider{top:36px}
.frame-left,.frame-right{position:absolute;top:16px;bottom:16px;overflow:hidden;font:12px/16px 'Courier New',monospace;white-space:pre}
.frame-left{left:0}.frame-right{right:0}
@media(max-width:520px){.file-icon span{font-size:10px}.file-icons{gap:4px}.files-layout .text-box h2.file-tab{font-size:9px;top:16px}.files-layout .file-section{padding:63px 19px 25px}}

/* Keep the floppy silhouette and label, without the extra texture. */
.interactive-controls .drive-pocket{width:16.32cqw;left:0;height:17cqw}
.interactive-controls .floppy{width:16cqw}
.interactive-controls .ascii-floppy{font-size:1.333333cqw;line-height:1}

.host-credits{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px}.host-credits span{white-space:nowrap}.host-credits a{color:inherit}

/* Whole-file navigation on small screens. */
.file-navigation{min-width:0}
.file-arrow{display:none}
@media(max-width:640px){
  .file-navigation{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:4px}
  .file-navigation .file-icons{min-width:0;overflow:visible;justify-content:center;gap:0}
  .file-navigation .file-icon{display:none;flex:0 1 auto}
  .file-navigation .file-icon.mobile-current{display:block}
  .file-navigation .file-icon span{font-size:11px}
  .file-arrow{display:block;min-width:44px;min-height:44px;padding:0;border:0;background:none;color:#65583d;font:12px/1 'Courier New',monospace;cursor:pointer;touch-action:manipulation}
  .file-arrow:hover{color:#373b31;background:#e9e3cf}
  .file-arrow:focus-visible{outline:1px dotted #65583d;outline-offset:-3px}
}
