:root{--bg:#050505;--fg:#f5f5f2;--accent:#7bf08c;--muted:#a7a7a7;--panel:#111;--line:#363636;--font:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg);font-family:var(--font)}body{overflow-x:hidden}button,input,textarea,select{font:inherit}.hidden{display:none!important}a{color:var(--accent)}.glitch{position:fixed;inset:0;z-index:99;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.14) 0 1px,transparent 1px 4px);mix-blend-mode:difference;animation:glitch 1s steps(2) forwards}@keyframes glitch{0%,25%,55%{opacity:1;transform:translate(7px,-2px)}12%,42%,75%{transform:translate(-9px,3px)}100%{opacity:0;visibility:hidden}}
.visual-page{position:relative;width:100vw;height:100vh;min-height:650px;overflow:hidden;background-repeat:no-repeat}.visual-el{position:absolute;white-space:pre-wrap;overflow:hidden;display:flex;align-items:center;padding:.2rem;box-sizing:border-box}.visual-el button{font:inherit}.visual-el[data-type="link"],button.visual-el{cursor:pointer;border-style:solid}.visual-cta{justify-content:center}.visual-image{padding:0}.simple-page,.rooms-index{min-height:100vh;padding:3rem 5vw}.rooms-index h1{font-size:clamp(3rem,9vw,8rem)}.room-links{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem}.room-links button{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:.65rem 1rem;cursor:pointer}.room-visual{width:100%;height:72vh;border:1px solid #333}.films-grid{overflow:auto;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem!important}.film-card{border:1px solid #444;padding:1rem;background:#050505}.film-card iframe{width:100%;min-height:260px;border:0}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:50;display:grid;place-items:center;padding:1.5rem;overflow:auto}.modal-card{position:relative;width:min(560px,100%);border:1px solid var(--line);background:#090909;padding:2rem}.application-card{max-height:94vh;overflow:auto}.modal-x{position:absolute;right:.8rem;top:.5rem;background:none;border:0;color:inherit;font-size:2rem;cursor:pointer}.field{display:grid;gap:.4rem;margin:.9rem 0}.field input,.field textarea,.field select,input,textarea,select{width:100%;background:#151515;border:1px solid #444;color:white;padding:.7rem}.form-grid,.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.btn{border:1px solid var(--accent-local,var(--accent));background:var(--accent-local,var(--accent));color:#021006;padding:.75rem 1rem;font-weight:800;cursor:pointer}.btn.secondary{background:transparent;color:var(--accent)}.btn.danger{background:#3b1111;border-color:#8b3333;color:#ffb1b1}.error{color:#ff7f7f}.success{color:#7bf08c}
.admin{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.side{border-right:1px solid var(--line);padding:1.4rem;position:sticky;top:0;height:100vh}.side h1{font-size:2.8rem;margin:.2rem 0 2rem}.side button{width:100%;text-align:left;padding:.8rem;background:none;color:#ddd;border:0;border-bottom:1px solid #222;cursor:pointer}.side button.active{color:var(--accent)}.main{padding:2rem 3vw}.top{display:flex;justify-content:space-between;align-items:center}.panel{border:1px solid var(--line);padding:1.3rem;margin:1rem 0;background:var(--panel)}.status{display:inline-block;padding:.25rem .55rem;border-radius:20px;background:#331;color:#ffda72}.status.live{background:#14351c;color:var(--accent)}.actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}.film-row{border-top:1px solid #333;padding:1rem 0}.code{font-family:monospace;font-size:1.5rem;color:var(--accent);word-break:break-all}.notice{border:1px solid var(--accent);padding:1rem}.editor-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap}.visual-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:1rem;align-items:start}.editor-canvas-wrap{overflow:auto;border:1px solid #333;background:#080808;padding:.7rem}.editor-stage{position:relative;width:100%;aspect-ratio:16/9;min-width:780px;background:#050505 center/cover no-repeat;overflow:hidden}.editable-el{position:absolute;white-space:pre-wrap;overflow:hidden;display:flex;align-items:center;padding:.2rem;cursor:move;outline:1px dashed transparent}.editable-el:hover{outline-color:#aaa}.editable-el.selected{outline:2px solid var(--accent);box-shadow:0 0 0 3px rgba(123,240,140,.15)}.films-placeholder{align-items:center!important;justify-content:center!important;border-style:dashed!important;letter-spacing:.12em}.inspector{position:sticky;top:1rem;border:1px solid var(--line);background:#0b0b0b;padding:1rem;max-height:88vh;overflow:auto}.inspector label{display:grid;gap:.25rem;margin:.55rem 0;font-size:.85rem}.inspector h3{font-size:.85rem;letter-spacing:.12em;color:var(--accent)}.inspector hr{border:0;border-top:1px solid #333;margin:1rem 0}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.inspector-type{color:#aaa;font-family:monospace}.segmented{display:flex;gap:.5rem}.segmented button{padding:.7rem 1rem;background:#111;border:1px solid #444;color:#aaa;cursor:pointer}.segmented button.active{border-color:var(--accent);color:var(--accent)}.application-preview{padding:2rem;border:1px solid #444;min-height:420px}.fake-field{border:1px solid #555;padding:.8rem;margin:.7rem 0;color:#aaa}.applications-list details{border-top:1px solid #333;padding:.8rem 0}.app-detail{padding:1rem;background:#0a0a0a}.room-checks{display:grid;gap:.6rem;border:1px solid #444;margin:1rem 0;padding:1rem}.room-checks label{display:flex;gap:.5rem;align-items:center}.room-checks input{width:auto}
@media(max-width:980px){.visual-editor-layout{grid-template-columns:1fr}.inspector{position:relative;max-height:none}.admin{grid-template-columns:1fr}.side{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.side button{width:auto}.films-grid{grid-template-columns:1fr}}@media(max-width:760px){.grid,.form-grid{grid-template-columns:1fr}.main{padding:1.2rem}.visual-page{min-height:560px}.visual-el{font-size:clamp(12px,3vw,24px)!important}}
