@import url("https://fonts.googleapis.com/css2?family=Doto:wght@800&display=swap");
body{display:block!important;overflow-x:hidden!important;overflow-y:auto!important;width:100%!important;height:auto!important;min-height:100vh}.demo-context{max-width:880px;margin:auto;padding:20px 24px;color:#c8e9db;font:14px/1.6 "Segoe UI",sans-serif;position:relative;z-index:20;background:#06150e;border-bottom:1px solid #246146}.demo-context nav{display:flex;flex-wrap:wrap;gap:12px 22px;margin-bottom:10px}.demo-context a,.profile-notice a{color:#b3f0d2;text-decoration:underline;display:inline-flex;align-items:center;min-height:36px}.demo-context strong{color:#8effac;letter-spacing:.1em;font-size:12px}.demo-context p{margin:8px 0}.demo-context details{margin-top:8px}.demo-context summary{cursor:pointer;min-height:35px}.demo-context #demo-save-status{font-size:12px;color:#a4d2bf}.screen{height:max(810px,calc(100svh - 210px));max-height:none;overflow-y:auto;flex-shrink:0}.screen.active{position:relative}.screen button{white-space:normal!important}.screen>div{flex-shrink:0}#screen-dashboard{height:auto;min-height:810px}#screen-dashboard>.flex-grow{overflow:visible}#screen-obnl .faction-tile{min-height:165px}#screen-camera svg{margin-top:0!important}#matrix-canvas{position:fixed;pointer-events:none}body:before{position:fixed}button,[role=button],a,summary{touch-action:manipulation}button:focus-visible,[role=button]:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #ffa36c;outline-offset:4px}[role=button]{cursor:pointer}.modal-content{max-height:90svh;overflow-y:auto}.modal-overlay{padding:15px}.profile-notice{font:13px/1.6 "Segoe UI",sans-serif;color:#c8e9db}.profile-notice strong{color:#8effac}.profile-notice p{margin:10px 0}.faction-note{font:12px/1.5 "Segoe UI",sans-serif;color:#bcddcf;border:1px solid #246146;padding:10px;margin-bottom:15px}.matrix-catalog-preview{height:440px!important;background:#020804!important}.matrix-catalog-preview a{display:block;height:100%}.matrix-catalog-preview img{height:100%!important;width:100%!important;object-fit:contain!important;object-position:center!important}.matrix-catalog-preview a:focus-visible{outline:3px solid #eb832e;outline-offset:-4px}@media(max-width:450px){.demo-context{padding:16px}.screen{padding:22px!important}.screen h1{font-size:3rem!important}.modal-content{padding:22px 15px!important}.fiche-dynamic-content{max-width:100%;overflow-wrap:anywhere}#pseudo-container>div:first-child{flex-wrap:wrap}#pseudo-preview{font-size:22px!important}.fiche-dynamic-content [class*="whitespace-nowrap"]{white-space:normal!important}.screen .text-green-800,.screen .text-green-900{color:#79ba90!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}#matrix-canvas{display:none}}

/* Entrée immersive : un retour et un repère discret, aide à la demande. */
.demo-context{max-width:450px;padding:5px 16px;background:rgba(0,15,0,.85);font-size:12px;position:sticky;top:0}
.demo-context nav{justify-content:space-between;align-items:center;gap:8px;margin:0}
.demo-context .demo-label{order:-1;color:#8effac;font-size:11px;letter-spacing:.04em;animation:demo-blink 1.8s ease-in-out infinite}
@keyframes demo-blink{0%,100%{opacity:1}50%{opacity:.25}}
.demo-context #demo-save-status:empty{display:none}
.screen{height:max(640px,calc(100svh - 46px));scroll-margin-top:47px}
.profile-notice summary{cursor:pointer;min-height:36px;display:list-item;align-content:center}
.profile-notice p{text-align:left}
@media(max-width:450px){.demo-context{padding:5px 16px}}
/* La pluie de code reste visible derrière le cadrage QR. */
#screen-scanner .scan-square{background:transparent}
#screen-scanner .scan-corner,#screen-scanner .scan-sweep-bar{z-index:2}
#screen-scanner .console-lines{position:relative;z-index:1;color:#a7f3b5;text-shadow:0 1px 3px #000,0 0 6px #000}
/* Les titres et écrans reçoivent le focus de lecture, sans cadre décoratif. */
.screen[tabindex="-1"]:focus,.screen :is(h1,h2,h3)[tabindex="-1"]:focus{outline:none}

/* Titre du premier écran : typographie numérique et présence renforcée. */
#screen-accueil h1{font-family:"Doto","Share Tech Mono",monospace;font-weight:800;font-size:min(16vw,70px)!important;letter-spacing:-.025em;line-height:1.2;margin-bottom:10px}

/* Un portrait visible et une invitation explicite à ouvrir la fiche. */
.dash-character{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;align-items:center;width:100%;padding:12px;border:1px solid #23863b;background:rgba(0,16,5,.94);text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.dash-character:hover,.dash-character:focus-visible{border-color:#8effac;box-shadow:0 0 18px #00ff0026}
.dash-character-portrait{display:block;width:104px;height:104px;border:1px solid #58bd72;background:#061c10;padding:4px;box-shadow:0 0 14px #00ff001a}
.dash-character-portrait svg{display:block;width:100%;height:100%;image-rendering:pixelated}
.dash-character-description{display:flex;flex-direction:column;gap:6px;min-width:0}
.dash-character-label{font-size:10px;letter-spacing:.08em;color:#8effac}
.dash-character-pseudo{font-size:18px;color:#fff;overflow-wrap:anywhere}
.dash-character-pseudo[hidden]{display:none}
.dash-character-rank{font-size:20px;line-height:1.2;color:#fff}
.dash-character-action{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#8effac;color:#001a07;font-size:17px;line-height:1.2;font-weight:bold}
@media(max-width:370px){.dash-character{grid-template-columns:80px minmax(0,1fr);gap:10px;padding:8px}.dash-character-portrait{width:80px;height:80px}.dash-character-rank{font-size:18px}.dash-character-action{font-size:16px}}
