:root{font-family:Courier New,Courier,monospace;line-height:1.5;font-weight:700;color-scheme:dark;color:#0c4;background-color:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:none;-moz-osx-font-smoothing:none}a{font-weight:700;color:#0c4;text-decoration:none}a:hover{color:#0ff}body{margin:0;min-width:320px;min-height:100vh;background:#000}h1{font-family:Courier New,Courier,monospace;font-weight:700;text-transform:uppercase;letter-spacing:.1em}button{border-radius:0;border:1px solid #007722;padding:.4em .8em;font-size:.85em;font-weight:700;font-family:Courier New,Courier,monospace;background-color:#000;color:#0c4;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background .08s,color .08s}button:hover{background-color:#072;color:#000}button:focus,button:focus-visible{outline:1px solid #00ffff;outline-offset:2px}.cics-login-screen{min-height:100vh;display:flex;flex-direction:column;background:#000;font-family:Courier New,Courier,monospace;font-weight:700}.cics-login-header{display:flex;justify-content:space-between;align-items:baseline;padding:.3rem 1rem;border-bottom:1px solid #6688ff;font-size:.875rem}.cics-login-header .cics-transid{color:#0ff;letter-spacing:.12em}.cics-login-header .cics-screen-title{color:#ff0;letter-spacing:.08em;flex:1;text-align:center}.cics-login-header .cics-applid-right{color:#0c4;font-size:.8rem}.login-container{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.login-card{width:100%;max-width:480px;border:1px solid #6688ff;padding:2rem 2.5rem;background:#000500;position:relative}.login-card:before{content:"─── OPERATOR IDENTIFICATION ───";position:absolute;top:-.65rem;left:50%;transform:translate(-50%);background:#000500;color:#68f;font-size:.7rem;letter-spacing:.06em;padding:0 .75rem;white-space:nowrap}.login-logo{display:none}.login-card h1{color:#ff0;font-size:.95rem;text-align:center;text-transform:uppercase;letter-spacing:.2em;margin:0 0 .4rem;text-shadow:0 0 12px rgba(255,255,0,.4)}.subtitle{text-align:center;color:#072;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 1.75rem}.form-group{display:flex;align-items:baseline;gap:1ch;margin-bottom:.875rem}.form-group label{color:#68f;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;min-width:12ch;text-align:right;flex-shrink:0}.form-group label:after{content:" ==>";color:#072}.form-group input{flex:1;padding:.2rem .5rem;border:none;border-bottom:1px solid #6688ff;background:#000;color:#fff;font-family:Courier New,Courier,monospace;font-weight:700;font-size:.85rem;caret-color:#0ff;outline:none;letter-spacing:.04em;transition:border-color .1s}.form-group input:focus{border-bottom-color:#0ff;background:#001500}.form-group input::placeholder{color:#030}.form-group small{display:none}.cics-login-instruction{color:#072;font-size:.75rem;letter-spacing:.06em;margin:1.5rem 0 1rem;padding-top:.75rem;border-top:1px solid #003300}.btn{width:100%;padding:.4rem;border:1px solid #007722;border-radius:0;font-size:.8rem;font-weight:700;font-family:Courier New,Courier,monospace;cursor:pointer;transition:background .08s,color .08s;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.1em;background:transparent}.btn:disabled{opacity:.25;cursor:not-allowed}.btn-primary{background:#072;color:#000;border-color:#0c4}.btn-primary:hover:not(:disabled){background:#0c4;border-color:#0f5;box-shadow:0 0 10px #00cc444d}.btn-secondary{background:transparent;color:#68f;border-color:#346}.btn-secondary:hover:not(:disabled){border-color:#68f;color:#fff}.btn-link{background:transparent;color:#072;border:none;font-size:.7rem;padding:4px;margin-top:4px;letter-spacing:.1em;text-transform:uppercase;font-family:Courier New,Courier,monospace;cursor:pointer;transition:color .1s;width:auto;display:block;text-align:center}.btn-link:hover:not(:disabled){color:#68f}.error-message{background:transparent;color:#f44;padding:.5rem .75rem;margin-bottom:1rem;border:1px solid #ff4444;font-size:.75rem;letter-spacing:.04em;text-shadow:0 0 6px rgba(255,68,68,.5)}.error-message:before{content:"MSG: ";color:#68f}.cics-login-footer{padding:.25rem 1rem;font-size:.7rem;color:#072;border-top:1px solid #003300;letter-spacing:.05em}.qr-instructions,.qr-code-container,.qr-note{display:none}@media(max-width:500px){.login-card{padding:1.5rem}.form-group{flex-direction:column;gap:.25rem}.form-group label{text-align:left;min-width:unset}.form-group label:after{content:":"}}.admin-container{max-width:1200px;margin:0 auto;padding:0 1rem 1rem;font-family:Courier New,Courier,monospace;font-weight:700}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;margin-bottom:0;border-bottom:1px solid #007722}.admin-container h1{color:#ff0;margin:0;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;text-shadow:0 0 10px rgba(255,255,0,.3);font-family:Courier New,Courier,monospace}.admin-container h1:before{content:"> ";color:#072}.back-button{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .75rem;background:transparent;color:#68f;text-decoration:none;border:1px solid #6688ff;font-weight:700;font-family:Courier New,Courier,monospace;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;transition:all .08s}.back-button:hover{background:#68f;color:#000}.tabs{display:flex;gap:0;margin:.75rem 0 1rem;border-bottom:1px solid #007722}.tab{padding:.35rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.75rem;font-weight:700;font-family:Courier New,Courier,monospace;color:#072;text-transform:uppercase;letter-spacing:.1em;border-radius:0;margin-bottom:-1px;transition:color .08s}.tab:hover{color:#0c4}.tab.active{color:#0ff;border-bottom-color:#0ff}.error-message{border:1px solid #ff4444;color:#f44;padding:.5rem .75rem;margin-bottom:.75rem;font-size:.75rem;text-shadow:0 0 6px rgba(255,68,68,.4);letter-spacing:.04em;font-family:Courier New,Courier,monospace}.error-message:before{content:"[ERR] ";color:#68f}.success-message{border:1px solid #00cc44;color:#0c4;padding:.5rem .75rem;margin-bottom:.75rem;font-size:.75rem;text-shadow:0 0 6px rgba(0,204,68,.3);letter-spacing:.04em;font-family:Courier New,Courier,monospace}.success-message:before{content:"[ OK] ";color:#68f}.users-section h2{color:#68f;margin-bottom:.75rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;font-family:Courier New,Courier,monospace}.no-users{color:#072;padding:1.5rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;border:1px dashed #003300;text-align:center}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.75rem}.user-card{background:#000500;border:1px solid #007722;padding:.75rem;transition:border-color .08s;position:relative}.user-card:hover{border-color:#0c4}.user-card.pending{border-color:#ff0}.user-card.pending:before{content:"[PENDING APPROVAL]";display:block;color:#ff0;font-size:.65rem;letter-spacing:.12em;margin-bottom:.5rem;text-shadow:0 0 6px rgba(255,255,0,.4);font-family:Courier New,Courier,monospace}.user-card.approved{border-color:#072}.user-info{margin-bottom:.6rem}.user-info h3{color:#fff;margin-bottom:.3rem;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-family:Courier New,Courier,monospace}.user-info .email{color:#0c4;font-size:.72rem;margin-bottom:.4rem;font-family:Courier New,Courier,monospace}.user-info .email:before{content:"MAIL: ";color:#68f}.user-roles{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.4rem}.role-badge{display:inline-block;padding:.1rem .4rem;font-size:.65rem;font-weight:700;border:1px solid #ff66ff;color:#f6f;text-transform:uppercase;letter-spacing:.08em;font-family:Courier New,Courier,monospace}.status-badge{display:inline-block;padding:.1rem .5rem;font-size:.7rem;font-weight:700;font-family:Courier New,Courier,monospace;text-transform:uppercase;letter-spacing:.08em}.status-badge.pending{border:1px solid #ffff00;color:#ff0}.status-badge.approved{border:1px solid #00cc44;color:#0c4}.approval-info{margin-top:.3rem;font-size:.65rem;color:#072;letter-spacing:.04em;font-family:Courier New,Courier,monospace}.user-actions{display:flex;gap:.4rem;margin-top:.6rem;border-top:1px solid #003300;padding-top:.6rem}.user-actions button{flex:1;padding:.3rem .4rem;border:1px solid;border-radius:0;font-weight:700;font-size:.65rem;font-family:Courier New,Courier,monospace;cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:transparent;transition:background .08s,color .08s}.approve-button{border-color:#0c4!important;color:#0c4}.approve-button:hover{background:#0c4;color:#000}.reject-button{border-color:#f44!important;color:#f44}.reject-button:hover{background:#f44;color:#000}.revoke-button{border-color:#ff0!important;color:#ff0}.revoke-button:hover{background:#ff0;color:#000}@media(max-width:768px){.admin-container{padding:0 .75rem 1rem}.users-grid{grid-template-columns:1fr}.user-actions{flex-direction:column}.user-actions button{width:100%}}:root{--c-bg: #000000;--c-green: #00cc44;--c-green-d: #007722;--c-blue: #6688ff;--c-cyan: #00ffff;--c-yellow: #ffff00;--c-red: #ff4444;--c-pink: #ff66ff;--c-white: #ffffff}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Courier New,Courier,monospace;font-weight:700;background:var(--c-bg);color:var(--c-green);min-height:100vh;-webkit-font-smoothing:none;-moz-osx-font-smoothing:none}body:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent 0px,transparent 3px,rgba(0,0,0,.07) 3px,rgba(0,0,0,.07) 4px);pointer-events:none;z-index:9999}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cics-screen{min-height:100vh;display:flex;flex-direction:column;font-size:.875rem}.cics-header{display:flex;justify-content:space-between;align-items:baseline;padding:.3rem 1rem;border-bottom:1px solid var(--c-blue);gap:1rem}.cics-transid{color:var(--c-cyan);letter-spacing:.12em;white-space:nowrap;flex-shrink:0}.cics-screen-title{color:var(--c-yellow);letter-spacing:.08em;text-align:center;flex:1}.cics-clock{color:var(--c-green);white-space:nowrap;flex-shrink:0;font-size:.8rem}.cics-sysinfo{display:flex;flex-wrap:wrap;gap:.5rem 2rem;padding:.25rem 1rem;border-bottom:1px solid var(--c-green-d);font-size:.8rem}.cics-label{color:var(--c-blue)}.cics-data{color:var(--c-white);margin-left:.3ch}.cics-cyan{color:var(--c-cyan)}.cics-red{color:var(--c-red)}.cics-pink{color:var(--c-pink)}.cics-yellow{color:var(--c-yellow)}.cics-green{color:var(--c-green)}.cics-dim{color:var(--c-green-d)}.cics-blink{animation:blink .8s step-end infinite}.cics-rule{border:none;border-top:1px solid var(--c-green-d);margin:0}.cics-rule-blue{border:none;border-top:1px solid var(--c-blue);margin:0}.cics-col-headers{display:grid;grid-template-columns:4ch minmax(0,2fr) 10ch minmax(0,1.5fr) 14ch;gap:0 1ch;padding:.3rem 1rem;color:var(--c-blue);font-size:.8rem;letter-spacing:.06em;border-bottom:1px solid var(--c-blue)}.cics-body{flex:1}.cics-row{display:grid;grid-template-columns:4ch minmax(0,2fr) 10ch minmax(0,1.5fr) 14ch;gap:0 1ch;padding:.3rem 1rem;align-items:center;border-bottom:1px solid #001800}.cics-row:hover{background:#000f00}.cics-row.row-unreachable{opacity:.35}.col-seq{color:var(--c-green-d)}.col-name{color:var(--c-white);letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-status-on{color:var(--c-green)}.col-status-off{color:var(--c-red)}.col-status-na{color:var(--c-pink)}.cics-brt-wrap{display:flex;align-items:center;gap:.5ch}.cics-brt-pct{color:var(--c-cyan);font-size:.75rem;white-space:nowrap;min-width:4ch;text-align:right}.col-brt-na{color:var(--c-green-d)}.cics-slider{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:0;border:none;cursor:pointer;outline:none}.cics-slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:12px;border-radius:0;background:var(--c-cyan);box-shadow:0 0 4px var(--c-cyan);cursor:pointer;margin-top:-4px}.cics-slider::-moz-range-thumb{width:10px;height:12px;border-radius:0;border:none;background:var(--c-cyan);box-shadow:0 0 4px var(--c-cyan)}.cics-slider::-moz-range-progress{border-radius:0}.cics-cmd{padding:.15rem .4rem;border:1px solid;font-family:inherit;font-size:.75rem;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:transparent;transition:background .08s,color .08s;white-space:nowrap}.cics-cmd-on{border-color:var(--c-green);color:var(--c-green)}.cics-cmd-on:hover:not(:disabled){background:var(--c-green);color:#000}.cics-cmd-off{border-color:var(--c-green-d);color:var(--c-green-d)}.cics-cmd-off:hover:not(:disabled){border-color:var(--c-green);color:var(--c-green)}.cics-cmd:disabled{opacity:.25;cursor:not-allowed}.cics-status-line,.cics-no-data{padding:2rem 1rem;letter-spacing:.1em;font-size:.85rem}.cics-footer{margin-top:auto}.cics-message-row{padding:.25rem 1rem;font-size:.8rem;border-bottom:1px solid var(--c-green-d);min-height:1.6rem}.cics-message-ok{color:var(--c-green)}.cics-message-err{color:var(--c-red);text-shadow:0 0 6px var(--c-red)}.cics-message-busy{color:var(--c-yellow)}.cics-fkey-row{display:flex;flex-wrap:wrap;padding:.3rem 0;background:#000900}.cics-pf{background:transparent;border:none;border-right:1px solid var(--c-green-d);font-family:inherit;font-weight:700;font-size:.75rem;cursor:pointer;padding:.25rem .9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;display:inline-block;transition:background .08s,color .08s;white-space:nowrap}.cics-pf:last-child{border-right:none}.cics-pf-green{color:var(--c-green)}.cics-pf-green:hover:not(:disabled){background:var(--c-green);color:#000}.cics-pf-red{color:var(--c-red)}.cics-pf-red:hover:not(:disabled){background:var(--c-red);color:#000}.cics-pf-cyan{color:var(--c-cyan)}.cics-pf-cyan:hover:not(:disabled){background:var(--c-cyan);color:#000}.cics-pf-yellow{color:var(--c-yellow)}.cics-pf-yellow:hover:not(:disabled){background:var(--c-yellow);color:#000}.cics-pf-pink{color:var(--c-pink)}.cics-pf-pink:hover:not(:disabled){background:var(--c-pink);color:#000}.cics-pf-dim{color:var(--c-green-d)}.cics-pf-dim:hover:not(:disabled){color:var(--c-green)}.cics-pf:disabled{opacity:.25;cursor:not-allowed}.cics-applid{font-size:.7rem;color:var(--c-green-d);padding:.2rem 1rem;border-top:1px solid #001800;letter-spacing:.05em}@media(max-width:768px){.cics-col-headers,.cics-row{grid-template-columns:3ch 1fr 9ch 10ch}.cics-col-headers>:last-child,.cics-row>:last-child{display:none}.cics-fkey-row{font-size:.65rem}.cics-pf{padding:.2rem .5rem}}@media(max-width:480px){.cics-col-headers,.cics-row{grid-template-columns:3ch 1fr 9ch}.cics-col-headers>:nth-child(4),.cics-col-headers>:nth-child(5),.cics-row>:nth-child(4),.cics-row>:nth-child(5){display:none}}
