/* Layout: one letterboxed CRT screen centred on a black stage; overlays live inside it and are sized in game pixels (--u). */
:root{
  --void:#06040d;
  --ink:#efe6d2;
  --dim:#8a7fae;
  --faint:#3e3363;
  --line:#1f1838;
  --signal:#7ff5d6;
  --glitch:#ff4fa3;
  --warm:#ffe27a;
  --panel:#0a0715;
  --display:'Silkscreen','Courier New',monospace;
  --text:'VT323','Courier New',monospace;
  --u:2.6px;
  --tu:2.6px;
  color-scheme:dark;
}
html,body{height:100%}
[hidden]{display:none!important}
body{background:var(--void);color:var(--ink);overflow:hidden;font-family:var(--text);-webkit-user-select:none;user-select:none;touch-action:manipulation}
#stage{height:100%;box-sizing:border-box;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
#screen{position:relative;overflow:hidden;border-radius:calc(var(--u)*3);background:#000;box-shadow:0 0 0 1px #1b1430,0 0 70px rgba(127,245,214,.05);flex:none}
#game{display:block;width:100%;height:100%;image-rendering:pixelated;filter:saturate(var(--sat,.4)) contrast(1.05)}
.crt{position:absolute;inset:0;pointer-events:none;background:
   radial-gradient(ellipse at center,rgba(0,0,0,0) 62%,rgba(0,0,0,.45) 100%),
   repeating-linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,0) 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 3px)}
.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
button:focus-visible{outline:1px dashed var(--signal);outline-offset:2px}

/* in-game text */
#msg{position:absolute;left:0;right:0;bottom:calc(var(--tu)*14);text-align:center;font-size:calc(var(--tu)*7);line-height:1.1;padding-inline:calc(var(--tu)*60);color:var(--signal);text-shadow:0 0 calc(var(--tu)*3) rgba(127,245,214,.3);transition:opacity .5s;pointer-events:none;text-wrap:balance}
#msg.sys{color:var(--dim);text-shadow:none}
#msg.kid{color:#ffc2d6;text-shadow:0 0 calc(var(--tu)*3) rgba(255,143,184,.4)}
#msg.out,#screen.modal #msg{opacity:0}
#zone{position:absolute;left:calc(var(--tu)*12);top:calc(var(--tu)*11);font-family:var(--display);font-size:calc(var(--tu)*3.4);letter-spacing:.18em;color:var(--dim);opacity:0;transition:opacity 1.2s;pointer-events:none}
#zone b{display:block;color:var(--ink);font-size:calc(var(--tu)*5);font-weight:400;letter-spacing:.1em;margin-top:calc(var(--tu)*1.5)}
#zone.on{opacity:1}
#toasts{position:absolute;right:calc(var(--u)*8);top:calc(var(--u)*7 + var(--tu)*16);display:flex;flex-direction:column;align-items:flex-end;gap:calc(var(--tu)*3);pointer-events:none}
.toast{font-family:var(--display);font-size:calc(var(--tu)*3.3);letter-spacing:.1em;color:var(--ink);background:rgba(10,7,21,.88);padding:calc(var(--tu)*2.4) calc(var(--tu)*3.6);border:1px solid var(--line);display:flex;align-items:center;gap:calc(var(--tu)*3);animation:tin .35s steps(4) both}
.toast i{font-style:normal;color:var(--warm)}
.toast span{display:block;color:var(--dim);font-family:var(--text);font-size:calc(var(--tu)*4.6);letter-spacing:0;margin-top:calc(var(--tu)*.6)}
.toast.save i{color:var(--signal);animation:spin 1s steps(4) infinite}
.toast.bye{animation:tout .4s steps(4) both}
@keyframes tin{from{opacity:0;transform:translateX(calc(var(--tu)*6))}}
@keyframes tout{to{opacity:0;transform:translateX(calc(var(--tu)*6))}}
@keyframes spin{to{transform:rotate(360deg)}}

/* title */
.logo{white-space:nowrap;font-family:var(--display);font-weight:700;font-size:calc(var(--tu)*17);letter-spacing:.1em;line-height:1;color:var(--ink);text-shadow:calc(var(--tu)*.5) 0 rgba(255,79,163,.65),calc(var(--tu)*-.5) 0 rgba(127,245,214,.65);animation:jit 5s steps(1) infinite;margin:0}
.tag{font-size:calc(var(--tu)*5.4);color:var(--dim);margin-top:calc(var(--tu)*-4);letter-spacing:.04em}
@keyframes jit{0%,93%,100%{transform:none;clip-path:none}94%{transform:translateX(calc(var(--tu)*1.2));clip-path:inset(0 0 55% 0)}95%{transform:translateX(calc(var(--tu)*-1.6));clip-path:inset(40% 0 0 0)}96%{transform:none}}
.row{display:flex;gap:calc(var(--tu)*7);align-items:center;font-size:calc(var(--tu)*5.2);color:var(--faint)}
.row button{color:var(--faint)}
.row button.sel{color:var(--ink)}

/* « appuie sur une touche » */
#press{cursor:pointer;align-items:stretch;justify-content:stretch}
#press .logo{font-size:calc(var(--tu)*16);text-align:left}
#press .tag{text-align:left;margin-top:0}
#press .press{font-family:var(--display);font-size:calc(var(--tu)*4);letter-spacing:.32em;color:var(--signal);margin-top:calc(var(--tu)*8);animation:blink 2.2s ease-in-out infinite}
#press .sub{font-size:calc(var(--tu)*4.6);color:var(--faint)}
@keyframes blink{50%{opacity:.35}}

/* écran-titre et connexion : colonne à gauche, la scène à droite */
#title,#auth{align-items:stretch;justify-content:stretch}
.tl{position:absolute;left:calc(var(--u)*26);top:0;bottom:calc(var(--u)*20);width:min(calc(var(--u)*218),62%);display:flex;flex-direction:column;justify-content:center;gap:calc(var(--tu)*2.4)}
.logo.sm{font-size:calc(var(--tu)*12);letter-spacing:.12em;text-align:left}
.tl .tag{margin-top:calc(var(--tu)*-1);text-align:left}
.menu{display:flex;flex-direction:column;gap:calc(var(--tu)*.6);margin-top:calc(var(--tu)*4)}
.mh{font-family:var(--display);font-size:calc(var(--tu)*3.4);letter-spacing:.26em;color:var(--dim);margin:0 0 calc(var(--tu)*1.5) calc(var(--tu)*3)}
.mi{position:relative;display:grid;grid-template-columns:calc(var(--tu)*9) 1fr;column-gap:calc(var(--tu)*1.5);align-items:center;text-align:left;width:100%;padding:calc(var(--tu)*1.3) calc(var(--tu)*3);border:1px solid transparent;color:var(--dim)}
.mi .ic{grid-row:1/3;font-family:var(--display);font-size:calc(var(--tu)*4.4);color:var(--faint);text-align:center}
.mi .lb{font-size:calc(var(--tu)*7.2);line-height:1;color:inherit}
.mi .sb{font-size:calc(var(--tu)*4.6);line-height:1.05;color:#5d5288}
.mi .sb:empty{display:none}
.mi.sel{color:var(--ink);border-color:var(--line);background:linear-gradient(90deg,rgba(127,245,214,.09),rgba(127,245,214,0) 85%)}
.mi.sel .ic{color:var(--signal)}
.mi.sel .sb{color:var(--dim)}
.mi.sel::after{content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:2px;background:var(--signal)}
.mi.warn .lb,.mi.warn .ic{color:var(--glitch)}
.mi.warn::after{background:var(--glitch)}
.mi .del{position:absolute;right:calc(var(--tu)*3);top:50%;transform:translateY(-50%);font-size:calc(var(--tu)*4.6);color:var(--faint);border:1px solid var(--line);padding:0 calc(var(--tu)*2)}
.mi .del:hover{color:var(--glitch);border-color:var(--glitch)}
.who{font-size:calc(var(--tu)*4.8);color:#5d5288;margin-top:calc(var(--tu)*3);padding-left:calc(var(--tu)*3)}
.who b{color:var(--signal);font-weight:400}
.who b.bad{color:var(--glitch)}
.keys{position:absolute;left:calc(var(--u)*26);bottom:calc(var(--u)*10);display:flex;flex-wrap:wrap;gap:calc(var(--tu)*7);font-size:calc(var(--tu)*4.8);color:#5d5288;pointer-events:none}
kbd{display:inline-block;font-family:var(--display);font-size:calc(var(--tu)*2.9);line-height:1.3;color:var(--dim);border:1px solid var(--faint);border-bottom-width:2px;border-radius:2px;padding:0 calc(var(--tu)*1.4);margin-right:calc(var(--tu)*1.6);vertical-align:middle}
body.touch .lid footer kbd{display:none}
.atabs{display:flex;flex-wrap:wrap;gap:calc(var(--tu)*6);margin-top:calc(var(--tu)*4);border-bottom:1px solid var(--line)}
.atab{font-family:var(--display);font-size:calc(var(--tu)*3.4);letter-spacing:.12em;color:var(--faint);padding-bottom:calc(var(--tu)*2);border-bottom:1px solid transparent;margin-bottom:-1px}
.atab.on{color:var(--ink);border-color:var(--signal)}
.af{display:flex;flex-direction:column;gap:calc(var(--tu)*2.6);margin-top:calc(var(--tu)*2)}
.af label{display:flex;flex-direction:column;gap:calc(var(--tu)*1);font-family:var(--display);font-size:calc(var(--tu)*3);letter-spacing:.16em;color:var(--dim)}
.af input{font-family:var(--text);font-size:max(16px,calc(var(--tu)*7));letter-spacing:.04em;color:var(--ink);background:rgba(7,5,14,.85);border:1px solid var(--faint);border-radius:0;padding:calc(var(--tu)*1) calc(var(--tu)*2.6);width:100%;box-sizing:border-box;-webkit-user-select:text;user-select:text}
.af input::placeholder{color:#3b3160}
.af input:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 1px rgba(127,245,214,.2)}
.af .help{font-size:calc(var(--tu)*4.6);color:var(--faint);line-height:1.05}
.af .help:empty,.af .err:empty{display:none}
.af .err{font-size:calc(var(--tu)*5.2);color:#ffb3c8;line-height:1.05}
.af .go{align-self:flex-start;font-family:var(--display);font-size:calc(var(--tu)*3.8);letter-spacing:.14em;color:#06040d;background:var(--signal);padding:calc(var(--tu)*1.8) calc(var(--tu)*6);margin-top:calc(var(--tu)*1)}
.af .go:hover{background:#b8ffec}
.af .go:disabled{opacity:.5}
.link{align-self:flex-start;text-align:left;font-size:calc(var(--tu)*5);color:var(--dim);text-decoration:underline;text-underline-offset:3px;margin-top:calc(var(--tu)*2)}
.link:hover{color:var(--ink)}

/* bouton de la boîte, en jeu */
#hud{position:absolute;right:calc(var(--u)*8);top:calc(var(--u)*7);display:flex;align-items:center;gap:calc(var(--tu)*1.6);padding:calc(var(--tu)*1.1) calc(var(--tu)*2.4);background:rgba(10,7,21,.6);border:1px solid var(--line);color:var(--dim);opacity:.5;transition:opacity .4s,border-color .4s;z-index:2}
#hud .ic{font-size:calc(var(--tu)*5.4);line-height:1}
#hud .lb{font-size:calc(var(--tu)*5.4);white-space:nowrap;overflow:hidden;max-width:0;transition:max-width .5s}
#hud kbd{margin:0}
#hud .dot{display:none;width:calc(var(--tu)*2);height:calc(var(--tu)*2);border-radius:50%;background:var(--warm);box-shadow:0 0 calc(var(--tu)*2) var(--warm)}
#hud:hover,#hud.wide,#hud.new{opacity:1}
#hud:hover .lb,#hud.wide .lb,#hud.new .lb{max-width:calc(var(--tu)*40)}
#hud.new{border-color:rgba(255,226,122,.5)}
#hud.new .dot{display:block;animation:pulse 1.2s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(.6);opacity:.6}}
#screen.modal #hud{display:none}
body.touch #hud kbd{display:none}
#boxClose{font-size:calc(var(--tu)*5);color:var(--faint);padding:0 calc(var(--tu)*1.5);margin-left:calc(var(--tu)*2)}
#boxClose:hover{color:var(--ink)}
.lid header{align-items:center}
.lid header .meta{margin-left:auto}

/* the box */
#box{background:rgba(4,2,10,.74)}
.lid{width:calc(var(--tu)*290);max-width:calc(100% - var(--tu)*20);max-height:calc(100% - var(--tu)*20);box-sizing:border-box;background:var(--panel);border:1px solid var(--line);box-shadow:0 0 0 calc(var(--tu)*1) #06040d,0 0 0 calc(var(--tu)*1.4) var(--line);padding:calc(var(--tu)*6) calc(var(--tu)*8) calc(var(--tu)*5);display:flex;flex-direction:column;gap:calc(var(--tu)*4)}
.lid header{display:flex;justify-content:space-between;align-items:center;gap:calc(var(--tu)*4)}
.lid h2{margin:0;font-family:var(--display);font-weight:400;font-size:calc(var(--tu)*4);letter-spacing:.24em;color:var(--dim)}
.lid .meta{font-size:calc(var(--tu)*5);color:var(--dim);font-variant-numeric:tabular-nums}
.lid .meta em{font-style:normal;color:var(--signal);letter-spacing:.1em}
.tabs{display:flex;flex-wrap:wrap;gap:calc(var(--tu)*6);border-bottom:1px solid var(--line);padding-bottom:calc(var(--tu)*2.2)}
.tab{font-family:var(--display);font-size:calc(var(--tu)*3.4);letter-spacing:.12em;color:var(--faint);position:relative}
.tab.on{color:var(--ink)}
.tab.on::after{content:"";position:absolute;left:0;right:0;bottom:calc(var(--tu)*-2.6);height:1px;background:var(--signal)}
.tab.focus{color:var(--signal)}
.pane{height:calc(var(--tu)*92);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--faint) transparent}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:calc(var(--tu)*2)}
.cell{aspect-ratio:1;max-width:100%;border:1px solid var(--line);display:grid;place-items:center;background:#07050e}
.cell canvas{width:68%;height:68%;image-rendering:pixelated}
.cell.sel{border-color:var(--signal)}
.cell .q{font-family:var(--display);font-size:calc(var(--tu)*3);color:#251d42}
.detail{margin-top:calc(var(--tu)*4)}
.detail b{display:block;font-family:var(--display);font-weight:400;font-size:calc(var(--tu)*3.6);letter-spacing:.1em;color:var(--ink)}
.detail p{margin:calc(var(--tu)*1.4) 0 0;font-size:calc(var(--tu)*6);color:var(--dim);line-height:1.05;max-width:60ch}
.detail .n{color:var(--faint)}
.list{display:flex;flex-direction:column;gap:calc(var(--tu)*.4)}
.li{display:grid;grid-template-columns:calc(var(--tu)*6) 1fr;gap:calc(var(--tu)*2.5);align-items:start;padding:calc(var(--tu)*1.1) calc(var(--tu)*2);border:1px solid transparent;text-align:left;width:100%}
.li .ic{font-family:var(--display);font-size:calc(var(--tu)*3.6);color:#2a2149;line-height:1.4}
.li b{font-family:var(--display);font-weight:400;font-size:calc(var(--tu)*3.3);letter-spacing:.08em;color:#4b3f72}
.li p{margin:0;font-size:calc(var(--tu)*5.4);color:#3b3160;line-height:1}
.li.got .ic{color:var(--warm)}
.li.got b{color:var(--ink)}
.li.got p{color:var(--dim)}
.li.sel{border-color:var(--line);background:rgba(127,245,214,.03)}
.mems{display:flex;flex-wrap:wrap;gap:calc(var(--tu)*2.5)}
.mem{flex:1;aspect-ratio:4/3;max-width:100%;border:1px solid var(--line);background:#07050e;display:grid;place-items:center;overflow:hidden}
.mem canvas{width:100%;height:100%;image-rendering:pixelated}
.mem.sel{border-color:var(--signal)}
.mem .q{font-family:var(--display);font-size:calc(var(--tu)*3);color:#251d42}
.opts{display:flex;flex-direction:column;gap:calc(var(--tu)*.6)}
.opt{display:flex;justify-content:space-between;align-items:center;gap:calc(var(--tu)*6);text-align:left;font-size:calc(var(--tu)*6.4);color:var(--dim);padding:calc(var(--tu)*.9) calc(var(--tu)*3);border:1px solid transparent}
.opt.sel{color:var(--ink);border-color:var(--line);background:rgba(127,245,214,.03)}
.opt .v{font-variant-numeric:tabular-nums;color:var(--faint);display:flex;gap:calc(var(--tu)*2);align-items:center}
.opt.sel .v{color:var(--signal)}
.opt .v span{cursor:pointer;padding-inline:calc(var(--tu)*1)}
.kbd{font-family:var(--display);font-size:calc(var(--tu)*3.4);letter-spacing:.06em;border:1px solid var(--faint);padding:calc(var(--tu)*.6) calc(var(--tu)*2);min-width:calc(var(--tu)*14);text-align:center}
.opt.wait .kbd{border-color:var(--glitch);color:var(--glitch)}
.sub{font-family:var(--display);font-size:calc(var(--tu)*3.2);letter-spacing:.14em;color:var(--faint);margin:calc(var(--tu)*1) 0 calc(var(--tu)*2) calc(var(--tu)*3)}
.code{display:flex;flex-direction:column;gap:calc(var(--tu)*2.4);padding-inline:calc(var(--tu)*3)}
.code label{font-size:calc(var(--tu)*4.8);color:var(--dim)}
.code textarea{font-family:var(--text);font-size:calc(var(--tu)*4.4);color:var(--ink);background:#07050e;border:1px solid var(--line);padding:calc(var(--tu)*2);resize:none;height:calc(var(--tu)*13);word-break:break-all;user-select:text;-webkit-user-select:text}
.code textarea:focus{outline:1px solid var(--faint)}
.code .acts{display:flex;flex-wrap:wrap;gap:calc(var(--tu)*6);font-size:calc(var(--tu)*5.6);color:var(--dim)}
.code .acts button.sel{color:var(--ink)}
.code .acts button.sel::before{content:"› ";color:var(--signal)}
.code .st{font-size:calc(var(--tu)*4.6);color:var(--signal);min-height:1em}
.zl{display:flex;flex-direction:column;gap:calc(var(--tu)*.8)}
.zr{display:grid;grid-template-columns:calc(var(--tu)*20) 1fr auto;gap:calc(var(--tu)*3);align-items:center;padding:calc(var(--tu)*1.4) calc(var(--tu)*3);border:1px solid transparent;text-align:left;width:100%;font-size:calc(var(--tu)*6.2);color:var(--dim)}
.zr .n{font-family:var(--display);font-size:calc(var(--tu)*3.4);color:var(--faint)}
.zr .d{font-size:calc(var(--tu)*5.2);color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}
.zr.cur .n{color:var(--signal)}
.zr.lock{color:#3b3160}
.zr.sel{border-color:var(--line);background:rgba(127,245,214,.03);color:var(--ink)}
.lid footer{font-size:calc(var(--tu)*4.2);color:var(--faint);display:flex;justify-content:space-between;gap:calc(var(--tu)*4)}

/* memory card */
#end{background:rgba(4,2,10,.82);gap:calc(var(--tu)*4.5)}
#end .lbl{font-family:var(--display);font-size:calc(var(--tu)*3.6);letter-spacing:.26em;color:var(--signal)}
#end canvas{width:calc(var(--tu)*120);height:calc(var(--tu)*90);image-rendering:pixelated;box-shadow:0 0 0 1px var(--faint),0 0 calc(var(--tu)*20) rgba(255,226,122,.12);transform:rotate(-1.5deg)}
#end .cap{font-size:calc(var(--tu)*5.8);color:var(--dim);text-align:center;max-width:calc(var(--tu)*190);text-wrap:balance}
#end .stats{font-size:calc(var(--tu)*4.8);color:var(--faint);font-variant-numeric:tabular-nums}
#end .row{font-size:calc(var(--tu)*5.8)}
#end .row button{color:var(--dim)}
#end .row button.sel{color:var(--ink)}
#end .row button.sel::before{content:"› ";color:var(--signal)}

/* touch pad */
#pad{display:flex;justify-content:space-between;width:100%;max-width:680px;gap:12px}
#pad div{display:flex;gap:10px;align-items:center}
#pad button{width:56px;height:56px;border:1px solid var(--faint);border-radius:50%;font-family:var(--display);font-size:14px;color:var(--dim);background:#0b0717;touch-action:none}
#pad button.on{color:var(--ink);border-color:var(--signal)}
#pad .sm{width:44px;height:44px;font-size:11px}
/* touch devices: controls float over the game, text never drops below a readable size */
body.touch #stage{padding:8px;gap:8px}
body.touch #pad{position:fixed;left:0;right:0;bottom:0;max-width:none;padding:0 14px calc(env(safe-area-inset-bottom,0px) + 12px);box-sizing:border-box;pointer-events:none;z-index:5}
body.touch #pad button{pointer-events:auto;background:rgba(11,7,23,.55);backdrop-filter:blur(2px);-webkit-user-select:none;user-select:none}
#rotate{font-family:var(--text);font-size:15px;color:var(--dim);text-align:center;padding-inline:16px}
#err{position:fixed;left:8px;right:8px;top:8px;z-index:9;font:12px/1.3 monospace;color:#ffb3c8;background:rgba(40,0,20,.9);padding:8px;border:1px solid #ff4fa3;white-space:pre-wrap;user-select:text;-webkit-user-select:text}
@media (prefers-reduced-motion:reduce){.logo{white-space:nowrap;animation:none}.toast,.toast.bye{animation:none}}

/* clin d'œil de l'auteur, en bas à droite de l'écran-titre */
.credit{position:absolute;right:calc(var(--u)*14);bottom:calc(var(--u)*8);display:flex;align-items:flex-end;gap:calc(var(--u)*4);pointer-events:none;text-align:right;flex-direction:row-reverse}
.credit .dino{display:block;flex:none;height:calc(var(--u)*33.5);aspect-ratio:72/67;background:url(data:image/png;base64,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) 0 0/400% 100% no-repeat;image-rendering:pixelated;image-rendering:crisp-edges;filter:brightness(.62) saturate(.75);opacity:.8;animation:wag 13s steps(1,end) infinite}
/* le dinosaure remue la queue, à peine, puis plus tard tourne la tête et la remet */
@keyframes wag{0%,30%{background-position:0 0}31.5%{background-position:33.333% 0}33%{background-position:66.667% 0}34.5%{background-position:33.333% 0}36%{background-position:66.667% 0}37.5%,70%{background-position:0 0}71%,83%{background-position:100% 0}84%,100%{background-position:0 0}}
@media (prefers-reduced-motion:reduce){.credit .dino{animation:none}}
.credit span{font-size:calc(var(--tu)*4.4);line-height:1.5;color:#544a7e;padding-bottom:calc(var(--u)*2)}
.credit b{color:#5e8ea0;font-weight:400}
/* petits écrans : le clin d'œil se fait discret pour ne pas gêner le formulaire */
@media (max-width:600px){.credit span{display:none}#auth .credit{display:none}}
