:root{font-family:Courier New,Consolas,monospace;color:#f4edff;background:#09040f;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 15% 10%,rgba(245,42,143,.2),transparent 28rem),linear-gradient(135deg,#08040e,#1d0d29,#0b0612)}button,input,textarea{font:inherit}button{min-height:42px;border:1px solid #7e678e;border-radius:6px;background:#251630;color:#fff7ff;cursor:pointer}button:hover:not(:disabled){border-color:#53f082}button:disabled{cursor:not-allowed;opacity:.55}.primary{border-color:#35ce6a;background:#12743b}.home-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.brand-lockup{text-align:center}.brand-lockup h1{margin:0;font-size:clamp(2.75rem,8vw,6.5rem);line-height:.95;text-transform:uppercase;text-shadow:0 0 24px rgba(246,61,166,.75)}.eyebrow,.admin-header p,.pager-kicker{margin:0 0 8px;color:#49f274;text-transform:uppercase;letter-spacing:0}.pager-stage{min-height:100vh;display:grid;place-items:center;padding:18px;background:radial-gradient(circle at 20% 10%,rgba(248,62,158,.24),transparent 18rem),radial-gradient(circle at 82% 14%,rgba(36,215,255,.18),transparent 16rem),linear-gradient(135deg,#070412,#1b1028 54%,#070412)}.pager-shell{position:relative;width:min(100%,440px);padding:150px 18px 18px;border:3px solid #ff66b8;border-radius:26px;background:linear-gradient(90deg,rgba(44,230,255,.08),transparent 14%,transparent 86%,rgba(255,79,163,.12)),linear-gradient(180deg,#211126,#100914),#1a0c24;box-shadow:0 24px 80px #0000008c,0 0 34px #ff3fa23d,inset 0 0 0 2px #2ce6ff14;overflow:hidden}.pager-shell:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1) 0 1px,transparent 1px 6px);mix-blend-mode:multiply;opacity:.35}.vice-sky{position:absolute;inset:0 0 auto;height:140px;border-bottom:2px solid rgba(34,227,255,.8);background:linear-gradient(180deg,#1b1028,#351a42);overflow:hidden}.vice-sun{position:absolute;right:48px;top:18px;width:96px;height:96px;border-radius:50%;background:repeating-linear-gradient(0deg,#ffb13d 0 10px,#1b1028 10px 15px);box-shadow:0 0 24px #ffb13d80}.palm{position:absolute;bottom:-12px;width:58px;height:82px;background:url(/sprites/palm.svg) center / contain no-repeat;filter:brightness(0) drop-shadow(0 0 6px rgba(0,0,0,.75));transform-origin:bottom center}.palm-left{left:36px;transform:rotate(9deg) scaleX(-1)}.palm-right{right:36px;transform:rotate(-8deg)}.car-sprite{position:absolute;left:calc(50% - 115px);bottom:0;width:230px;height:108px;overflow:visible;filter:drop-shadow(0 5px 0 rgba(0,0,0,.35));z-index:3}.car-frame{position:absolute;left:50%;bottom:-30px;width:230px;max-height:none;object-fit:contain;object-position:bottom center;opacity:0;image-rendering:pixelated;transform:translate(-50%)}.car-frame-1{opacity:1;animation:car-frame-1 7s steps(1,end) infinite,car-idle 1.1s ease-in-out infinite}.car-frame-2{animation:car-frame-2 7s steps(1,end) infinite,car-idle 1.1s ease-in-out infinite}.car-frame-3{animation:car-frame-3 7s steps(1,end) infinite,car-idle 1.1s ease-in-out infinite}.car-frame-4{animation:car-frame-4 7s steps(1,end) infinite,car-idle 1.1s ease-in-out infinite}.car-frame-5{animation:car-frame-5 7s steps(1,end) infinite,car-idle 1.1s ease-in-out infinite}.pager-top{position:relative;z-index:1;display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:16px;padding:14px 16px;border:2px solid #29e8ff;border-radius:18px;background:#351a42}.pager-top h1{margin:0;font-size:1.1rem;color:#fff;text-shadow:2px 0 #29e8ff,-1px 0 #ff4fa3}.pager-kicker{margin:0 0 8px;color:#fff;text-transform:uppercase;letter-spacing:0;font-size:1.35rem;font-weight:700;text-shadow:1px 0 #29e8ff,-1px 0 #ff4fa3,0 0 10px rgba(255,79,163,.55)}.speaker-grille{display:grid;gap:6px;width:78px;flex:0 0 78px}.speaker-grille span{display:block;height:4px;border-radius:999px;background:#08050b}.lcd{position:relative;z-index:1;min-height:390px;padding:14px;border:3px solid #ffb13d;border-radius:14px;background:repeating-linear-gradient(0deg,rgba(0,0,0,.11),rgba(0,0,0,.11) 1px,transparent 1px,transparent 7px),radial-gradient(circle at 50% 35%,rgba(255,255,255,.18),transparent 14rem),#aaea72;color:#10230f;box-shadow:inset 0 0 22px #00000073,0 0 18px #45ff782e;animation:lcd-shimmer 2.4s linear infinite;overflow:hidden}.lcd:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(16,35,15,.3) 0 1px,transparent 1px),linear-gradient(90deg,#ff4fa30d,#29e8ff0d);background-size:23px 19px,100% 100%;opacity:.28}.lcd:after{content:"";position:absolute;inset:0;pointer-events:none;background:#45ff7814;animation:page-pulse 3s ease-in-out infinite}.indicator-row{position:relative;z-index:1;display:flex;justify-content:space-between;gap:8px;padding-bottom:10px;margin-bottom:14px;border-bottom:2px solid rgba(16,35,15,.45);font-weight:700;font-size:.78rem}.indicator-row span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#45ff78;box-shadow:0 0 8px #45ff78cc;animation:led-blink 2.2s steps(2,start) infinite}.indicator-row span:nth-child(2):before{background:#29e8ff;box-shadow:0 0 8px #29e8ffcc;animation-delay:.35s}.indicator-row span:nth-child(3):before{background:#ffb13d;box-shadow:0 0 8px #ffb13dcc;animation-delay:.7s}.mission-display{position:relative;z-index:1;display:grid;gap:14px;text-transform:uppercase;white-space:pre-wrap}.mission-display.empty{min-height:290px;place-content:center;text-align:center}.mission-display p,.lcd-field p{margin:0;line-height:1.35;overflow-wrap:anywhere}.blink{position:relative;font-weight:700;animation:blink 1.15s steps(2,start) infinite,text-glitch 5s steps(1,end) infinite}.lcd-field{display:grid;gap:4px}.lcd-field span{font-weight:700}.lcd-field strong{font-size:1.35rem;line-height:1.1;overflow-wrap:anywhere}.lcd-field.compact strong{font-size:1rem}.pager-error{min-height:290px;display:grid;place-items:center;text-align:center;font-weight:700;text-transform:uppercase}@keyframes blink{50%{opacity:.35}}@keyframes lcd-shimmer{to{background-position:0 7px,0 0,0 0}}@keyframes page-pulse{0%,70%,to{opacity:0}78%,86%{opacity:1}}@keyframes led-blink{50%{opacity:.35}}@keyframes text-glitch{0%,92%,to{transform:translate(0);text-shadow:none}93%{transform:translate(2px);text-shadow:-2px 0 #ff4fa3,2px 0 #29e8ff}94%{transform:translate(-1px);text-shadow:2px 0 #ff4fa3,-2px 0 #29e8ff}}@keyframes car-idle{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(calc(-50% - 4px)) translateY(1px)}}@keyframes car-frame-1{0%,80%,to{opacity:1}82%,99%{opacity:0}}@keyframes car-frame-2{0%,81%,86%,to{opacity:0}82%,85%{opacity:1}}@keyframes car-frame-3{0%,85%,90%,to{opacity:0}86%,89%{opacity:1}}@keyframes car-frame-4{0%,89%,94%,to{opacity:0}90%,93%{opacity:1}}@keyframes car-frame-5{0%,93%{opacity:0}94%,to{opacity:1}}@media(prefers-reduced-motion:reduce){.lcd,.lcd:after,.blink,.indicator-row span:before{animation:none}}.admin-screen{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 44px}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.admin-header h1{margin:0;font-size:2rem}.admin-panel{border:1px solid #3f304b;border-radius:8px;background:#0e0914db;padding:16px}.admin-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:16px;align-items:start;margin:16px 0}.key-panel,.action-row,.template-row,.mission-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.key-panel label{flex:1 1 260px}.panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.panel-heading h2,.mission-row h3{margin:0}.mission-form{display:grid;gap:12px}label{display:grid;gap:6px;color:#d9cde5}input,textarea{width:100%;border:1px solid #6b5878;border-radius:6px;background:#0d0913;color:#fff;padding:10px 12px}textarea{resize:vertical}.admin-message{margin-top:12px;border:1px solid #35ce6a;border-radius:8px;background:#12743b3d;padding:12px 14px}.mission-list{margin-top:16px}.mission-table{display:grid;gap:12px}.mission-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:14px;border:1px solid #33263e;border-radius:6px;background:#ffffff08}.mission-copy{padding-right:78px}.mission-row p{margin:8px 0;color:#ddd2e9;white-space:pre-wrap}.mission-row small,.muted,.panel-heading span{color:#a895b8}.mission-actions{justify-content:flex-end}.mission-actions button{min-width:92px}.mission-corner-actions{position:absolute;top:10px;right:10px;display:flex;gap:6px}.icon-button{display:grid;place-items:center;width:34px;min-width:0;min-height:34px;padding:0}.icon-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.icon-button.danger:hover:not(:disabled){border-color:#ff6b8f;color:#ffadc0}.confirm-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:#05020ac7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-modal{width:min(100%,430px);border:2px solid #ff66b8;border-radius:10px;background:linear-gradient(90deg,rgba(44,230,255,.08),transparent 18%,transparent 82%,rgba(255,79,163,.12)),#130a1c;box-shadow:0 24px 80px #0009,0 0 30px #ff3fa238;padding:18px}.confirm-modal h2{margin:0 0 10px}.confirm-modal p:not(.eyebrow){margin:0;color:#ddd2e9;line-height:1.45}.confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.danger-button{border-color:#ff6b8f;background:#742138}.history-toggle{position:relative;z-index:1;width:100%;margin-top:14px;min-height:34px;border-color:#10230fb3;background:#10230f29;color:#10230f;font-weight:700;text-transform:uppercase}.history-panel{position:relative;z-index:1;display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:2px solid rgba(16,35,15,.35);color:#10230f;text-transform:uppercase}.history-panel p{margin:0}.history-panel article{display:flex;justify-content:space-between;gap:10px;font-size:.82rem}.history-panel strong,.history-panel span{overflow-wrap:anywhere}.mission-edit{display:grid;gap:12px;grid-column:1 / -1}@media(max-width:760px){.admin-header,.mission-row{grid-template-columns:1fr}.admin-header{display:grid}.admin-grid{grid-template-columns:1fr}.mission-copy{padding-right:0}.mission-corner-actions{position:static;justify-content:flex-end}.mission-actions{justify-content:stretch}.mission-actions button,.action-row button,.template-row button{flex:1 1 150px}}
