@import"https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap";:root{--green: #00ff41;--green-dim: rgba(0, 255, 65, .55);--green-glow: rgba(0, 255, 65, .18);--green-faint: rgba(0, 255, 65, .07);--red: #ff3333;--yellow: #f0e040;--bg: #000000;--text: #00ff41;--muted: rgba(0, 255, 65, .42);color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Share Tech Mono,Courier New,monospace;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}.scanline{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#fff0,#fff0 50%,#00ff410a 50%,#00ff410a);background-size:100% 4px;pointer-events:none;z-index:9999}.t-glow{text-shadow:0 0 6px rgba(0,255,65,.8),0 0 12px rgba(0,255,65,.4)}.t-border{border:1px solid var(--green);box-shadow:inset 0 0 8px #00ff4114,0 0 8px #00ff4114}.t-blink{animation:t-blink 1s step-end infinite}@keyframes t-blink{0%,to{opacity:1}50%{opacity:0}}.boot-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--green);text-transform:uppercase;letter-spacing:.15em;position:relative;z-index:1}.boot-screen svg{filter:drop-shadow(0 0 10px var(--green));animation:pulse-g 1.4s ease-in-out infinite}.boot-screen span{font-size:.85rem;opacity:.7}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;z-index:1}.login-panel{width:min(460px,100%);padding:32px 28px;background:#000;border:1px solid var(--green);box-shadow:inset 0 0 30px #00ff410a,0 0 30px #00ff411f;position:relative}.login-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--green),transparent);animation:scan-h 3s ease-in-out infinite}.brand-lockup{display:flex;align-items:center;gap:14px;margin-bottom:28px}.brand-lockup.compact{margin-bottom:0}.logo-mark{width:46px;height:46px;display:grid;place-items:center;flex-shrink:0;color:var(--green);background:linear-gradient(135deg,#00ff411f,#0003),#000;border:1px solid var(--green);box-shadow:inset 0 0 16px #00ff4114,0 0 12px #00ff4124;position:relative;overflow:hidden}.logo-mark:before{content:"";position:absolute;top:-40%;right:-20%;bottom:-40%;left:-20%;background:linear-gradient(90deg,transparent,rgba(0,255,65,.22),transparent);transform:translate(-90%) rotate(18deg);animation:logo-sweep 3.6s ease-in-out infinite}.logo-mark:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid rgba(0,255,65,.22);pointer-events:none}.logo-sm{width:40px;height:40px}.logo-lg{width:76px;height:76px}.logo-mark svg{width:82%;height:82%;overflow:visible;filter:drop-shadow(0 0 7px rgba(0,255,65,.8));position:relative;z-index:1}.logo-frame,.logo-grid,.logo-pulse,.logo-caret,.logo-scan{fill:none;stroke:currentColor;vector-effect:non-scaling-stroke}.logo-frame{stroke-width:2;opacity:.9}.logo-grid{stroke-width:.75;opacity:.17}.logo-pulse{stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:98;animation:logo-trace 2.8s ease-in-out infinite}.logo-caret{stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;opacity:.8;animation:logo-caret-blink 1.2s steps(2,end) infinite}.logo-node{fill:currentColor;animation:logo-node-pulse 1.8s ease-in-out infinite}.logo-node-b{animation-delay:.55s}.logo-scan{stroke-width:2;opacity:.8;animation:logo-scanline 2.2s linear infinite}.logo-boot{animation:logo-boot-pulse 1.4s ease-in-out infinite}.brand-text .label{display:block;font-size:.58rem;font-weight:400;letter-spacing:.25em;color:var(--muted);text-transform:uppercase}.brand-text .title{display:block;font-size:1.05rem;color:var(--green);text-shadow:0 0 8px rgba(0,255,65,.7);letter-spacing:.05em;margin-top:2px}.login-form{display:grid;gap:16px}.field{display:grid;gap:6px;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}input,select,textarea{font-family:Share Tech Mono,monospace;width:100%;min-height:40px;padding:8px 12px;background:#000;border:1px solid var(--green);color:var(--green);outline:none;font-size:.9rem;transition:box-shadow .2s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 1px var(--green),inset 0 0 12px #00ff410f}input::placeholder{color:var(--muted)}select option{background:#000;color:var(--green)}button{border:0;cursor:pointer;font-family:Share Tech Mono,monospace}button:disabled{cursor:wait;opacity:.4}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 20px;background:var(--green);color:#000;font-weight:700;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;transition:box-shadow .2s}.primary-button:hover:not(:disabled){box-shadow:0 0 18px #00ff4180}.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 14px;border:1px solid var(--green);background:transparent;color:var(--green);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;transition:background .15s,box-shadow .15s}.ghost-button:hover:not(:disabled){background:var(--green-faint);box-shadow:0 0 10px #00ff4126}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--green);background:transparent;color:var(--green);transition:background .15s}.icon-button:hover{background:var(--green-faint)}.icon-button.hot{border-color:var(--red);color:var(--red)}.icon-button.hot:hover{background:#ff333314}.dashboard{max-width:1600px;margin:0 auto;padding:12px 16px;position:relative;z-index:1}.topbar{display:flex;align-items:center;gap:16px;min-height:62px;margin-bottom:14px;padding:10px 16px;background:#000;border-bottom:1px solid var(--green);position:relative}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.conn-status{display:flex;align-items:center;gap:6px;font-size:.68rem;letter-spacing:.1em;color:var(--muted)}.conn-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);animation:pulse-g 2s ease-in-out infinite}.kpi-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:14px}.kpi-card{--kpi-accent: var(--green);--kpi-glow: rgba(0,255,65,.16);padding:12px 14px;background:#000;border:1px solid var(--kpi-accent);box-shadow:inset 0 0 8px #00ff410a,0 0 10px var(--kpi-glow);position:relative;cursor:default;transition:box-shadow .2s,border-color .2s;overflow:hidden}.kpi-card:hover{box-shadow:inset 0 0 10px var(--kpi-glow),0 0 18px var(--kpi-glow)}.kpi-card:nth-child(1){--kpi-accent: #38f8ff;--kpi-glow: rgba(56,248,255,.2)}.kpi-card:nth-child(2){--kpi-accent: #baff39;--kpi-glow: rgba(186,255,57,.2)}.kpi-card:nth-child(3){--kpi-accent: #ffe66d;--kpi-glow: rgba(255,230,109,.2)}.kpi-card:nth-child(4){--kpi-accent: #ff3b6b;--kpi-glow: rgba(255,59,107,.24)}.kpi-card:nth-child(5){--kpi-accent: #8f7cff;--kpi-glow: rgba(143,124,255,.22)}.kpi-label{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.kpi-value{font-size:1.55rem;line-height:1;margin-bottom:4px;color:var(--green);text-shadow:0 0 8px rgba(0,255,65,.7),0 0 16px rgba(0,255,65,.35)}.kpi-sub{font-size:.7rem;color:var(--muted);letter-spacing:.04em}.kpi-bar{margin-top:8px;height:2px;background:#00ff411f}.kpi-bar-fill{height:100%;background:var(--kpi-accent);box-shadow:0 0 8px var(--kpi-accent);transition:width 1s cubic-bezier(.4,0,.2,1)}.kpi-icon{position:absolute;top:9px;right:10px;opacity:.42;color:var(--kpi-accent);filter:drop-shadow(0 0 8px var(--kpi-accent))}.dashboard-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:12px;align-items:start}.panel{background:#000;border:1px solid var(--green);box-shadow:inset 0 0 8px #00ff4108;overflow:hidden;position:relative}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--green);background:var(--green-faint)}.panel-title{display:flex;align-items:center;gap:8px;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--green)}.panel-title .dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);animation:pulse-g 2s ease-in-out infinite}.panel-badge{font-size:.66rem;padding:2px 8px;background:var(--green-faint);border:1px solid var(--green);color:var(--green)}.icon-row{display:flex;gap:6px;align-items:center}.action-bar{display:flex;gap:8px;align-items:center}.tenant-rail{min-height:520px}.tenant-list{display:grid;gap:4px;padding:8px;max-height:490px;overflow-y:auto}.tenant-list::-webkit-scrollbar{width:3px}.tenant-list::-webkit-scrollbar-track{background:#000}.tenant-list::-webkit-scrollbar-thumb{background:var(--green-dim)}.tenant-row{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(0,255,65,.25);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:all .15s;position:relative}.tenant-row:before{content:"";position:absolute;left:0;top:0;width:2px;height:100%;background:var(--green);opacity:0;transition:opacity .15s}.tenant-row:hover{border-color:var(--green);background:var(--green-faint)}.tenant-row:hover:before{opacity:.8}.tenant-row.selected{border-color:var(--green);background:#00ff411a}.tenant-row.selected:before{opacity:1}.tenant-info{flex:1;min-width:0}.tenant-name{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--green)}.tenant-slug{font-size:.68rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.work-surface{padding-bottom:0}.surface-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--green);background:var(--green-faint)}.surface-label{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.surface-title{font-size:1rem;color:var(--green);text-shadow:0 0 6px rgba(0,255,65,.6);letter-spacing:.05em}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:14px 16px}.form-grid.three{grid-template-columns:repeat(3,1fr);padding:0}.section-band{margin:0 16px 12px;padding:12px 14px;border:1px solid rgba(0,255,65,.25);background:var(--green-faint);display:grid;gap:10px}.band-title{display:flex;align-items:center;gap:8px;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.field.full{margin:0 16px 12px}.manual-credit{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin:0 16px 16px;padding:12px 14px;border:1px solid rgba(0,255,65,.3);background:#00ff410a}.manual-credit .band-title{grid-column:1 / -1}.terminal-panel{margin-top:12px}.table-wrap{overflow-x:auto}.table-wrap::-webkit-scrollbar{height:3px}.table-wrap::-webkit-scrollbar-track{background:#000}.table-wrap::-webkit-scrollbar-thumb{background:var(--green-dim)}table{width:100%;min-width:900px;border-collapse:collapse}thead tr{background:var(--green-faint)}th{padding:10px 14px;font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--green);white-space:nowrap;text-align:left;font-weight:400}td{padding:10px 14px;font-size:.85rem;color:var(--text);border-bottom:1px solid rgba(0,255,65,.12);white-space:nowrap}tbody tr{transition:background .12s}tbody tr:hover td{background:var(--green-faint)}.mono{font-family:Share Tech Mono,monospace;font-size:.8rem}.empty-rows td{text-align:center;color:var(--muted);font-size:.75rem;letter-spacing:.1em;padding:28px}.status{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.status-ok{color:var(--green);background:#00ff4114;border:1px solid rgba(0,255,65,.3)}.status-warn{color:var(--red);background:#ff333314;border:1px solid rgba(255,51,51,.3)}.status-pending{color:var(--yellow);background:#f0e04014;border:1px solid rgba(240,224,64,.3)}.alert{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;font-size:.85rem;position:relative}.alert.error{border:1px solid rgba(255,51,51,.4);background:#ff33330f;color:#f88}.alert.success{border:1px solid rgba(0,255,65,.35);background:var(--green-faint);color:var(--green)}.corner-dec{position:absolute;width:10px;height:10px;pointer-events:none}.corner-dec.tl{top:0;left:0;border-top:1px solid var(--green);border-left:1px solid var(--green)}.corner-dec.tr{top:0;right:0;border-top:1px solid var(--green);border-right:1px solid var(--green)}.corner-dec.bl{bottom:0;left:0;border-bottom:1px solid var(--green);border-left:1px solid var(--green)}.corner-dec.br{bottom:0;right:0;border-bottom:1px solid var(--green);border-right:1px solid var(--green)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-g{0%,to{opacity:1}50%{opacity:.45}}@keyframes scan-h{0%{left:-100%;opacity:0}10%{opacity:1}90%{opacity:1}to{left:100%;opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes logo-trace{0%{stroke-dashoffset:98;opacity:.35}45%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:-98;opacity:.45}}@keyframes logo-caret-blink{0%,58%{opacity:.9}59%,to{opacity:.25}}@keyframes logo-node-pulse{0%,to{opacity:.35;transform:scale(.82)}50%{opacity:1;transform:scale(1.15)}}@keyframes logo-scanline{0%{transform:translateY(-6px);opacity:0}18%,75%{opacity:.75}to{transform:translateY(38px);opacity:0}}@keyframes logo-sweep{0%,42%{transform:translate(-95%) rotate(18deg);opacity:0}55%{opacity:1}78%,to{transform:translate(95%) rotate(18deg);opacity:0}}@keyframes logo-boot-pulse{0%,to{box-shadow:inset 0 0 16px #00ff4114,0 0 12px #00ff4124}50%{box-shadow:inset 0 0 28px #00ff4129,0 0 28px #00ff4157}}.spin{animation:spin .9s linear infinite}.fade-in{animation:fadeInUp .25s ease both}@media (max-width: 1200px){.kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid{grid-template-columns:240px minmax(0,1fr)}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.dashboard{padding:10px}.topbar,.topbar-right,.surface-head,.action-bar{flex-wrap:wrap}.topbar-right{margin-left:0}.kpi-strip,.dashboard-grid,.form-grid,.form-grid.three,.manual-credit{grid-template-columns:1fr}.tenant-rail{min-height:auto}.tenant-list{max-height:280px}}@media (max-width: 560px){.login-panel,.panel,.kpi-card,.primary-button,.ghost-button{width:100%}.surface-head,.panel-head{align-items:stretch}}
