:root{--bg-page:#0b1120;--bg-container:#0f172a;--bg-box:#1e293b;--bg-box-header:#334155;--bg-highlight:#1e293b;--border-color:#334155;--border-light:#475569;--border-dark:#000;--color-primary:#38bdf8;--color-success:#22c55e;--color-warning:#f59e0b;--color-accent:#a855f7;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-link:#38bdf8;--font-mono:"Courier New", Courier, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{background-color:var(--bg-page);width:100%;height:100%;min-height:100vh;color:var(--text-primary);margin:0;padding:0;font-family:Verdana,Tahoma,Arial,sans-serif;font-size:13px;line-height:1.5}a{color:var(--text-link);text-decoration:underline}a:hover{color:#7dd3fc}.portal-container{background-color:var(--bg-container);border-left:2px solid var(--border-color);border-right:2px solid var(--border-color);flex-direction:column;width:100%;max-width:1360px;min-height:100vh;margin:0 auto;display:flex;box-shadow:0 0 20px #000c}.portal-header{border-bottom:2px solid var(--color-primary);background:linear-gradient(#1e293b 0%,#0f172a 100%);flex-shrink:0;align-items:center;padding:10px 18px;display:flex}.portal-title{color:#fff;letter-spacing:.5px;font-size:20px;font-weight:700}.portal-tagline{color:var(--text-secondary);font-size:11px}.portal-nav{background:linear-gradient(#1e293b 0%,#0f172a 100%);border-top:1px solid #475569;border-bottom:2px solid #000;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:7px 16px;font-size:12px;display:flex}.portal-nav-links{align-items:center;gap:4px;display:flex}.nav-link{color:#cbd5e1;border:1px solid #0000;padding:3px 8px;font-size:12px;text-decoration:none}.nav-link:hover{color:#38bdf8;background-color:#38bdf814;text-decoration:underline}.nav-link.active{color:#38bdf8;background-color:#050b14;border:1px inset #334155;font-weight:700;text-decoration:none}.nav-separator{color:#475569;-webkit-user-select:none;user-select:none;font-size:11px}.portal-body{flex:1;grid-template-columns:230px 1fr;gap:12px;min-height:0;padding:12px 16px;display:grid}@media (width<=860px){.portal-body{grid-template-columns:1fr}}.portal-body>aside{flex-direction:column;gap:10px;padding-right:6px;display:flex}.portal-body>main{flex-direction:column;flex:1;height:90%;min-height:auto;padding-right:8px;display:flex}.portal-body>main>*{flex-direction:column;flex:1;height:100%;min-height:100%;display:flex}.portal-body>aside::-webkit-scrollbar{width:6px;height:6px}.portal-body>main::-webkit-scrollbar{width:6px;height:6px}div::-webkit-scrollbar{width:6px;height:6px}.portal-body>aside::-webkit-scrollbar-thumb{background:#334155;border-radius:2px}.portal-body>main::-webkit-scrollbar-thumb{background:#334155;border-radius:2px}div::-webkit-scrollbar-thumb{background:#334155;border-radius:2px}.portal-body>aside::-webkit-scrollbar-track{background:#0b1120}.portal-body>main::-webkit-scrollbar-track{background:#0b1120}div::-webkit-scrollbar-track{background:#0b1120}.c-box{border:1px solid var(--border-color);background-color:var(--bg-box);margin-bottom:0}.c-box-header{background-color:var(--bg-box-header);color:var(--text-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:7px 12px;font-size:12px;font-weight:700;display:flex}.c-box-header.highlight{color:#fff;background-color:#0284c7}.c-box-content{padding:12px 14px;font-size:12px;line-height:1.5}.btn-2000,.retro-btn{color:#f8fafc;cursor:pointer;background-color:#1e293b;border:1px solid #475569;border-radius:2px;justify-content:center;align-items:center;padding:4px 10px;font-family:Verdana,Tahoma,sans-serif;font-size:11px;font-weight:500;text-decoration:none;transition:background-color .1s,border-color .1s;display:inline-flex}.btn-2000:hover,.retro-btn:hover{color:#fff;background-color:#334155;border-color:#64748b;text-decoration:none}.btn-2000:active,.retro-btn:active{background-color:#0f172a;border-color:#1e293b}.btn-2000.green,.retro-btn-primary{color:#fff;cursor:pointer;background-color:#0284c7;border:1px solid #38bdf8;border-radius:2px;justify-content:center;align-items:center;padding:4px 12px;font-family:Verdana,Tahoma,sans-serif;font-size:11px;font-weight:700;text-decoration:none;transition:background-color .1s;display:inline-flex}.btn-2000.green:hover,.retro-btn-primary:hover{color:#fff;background-color:#0369a1;border-color:#7dd3fc;text-decoration:none}.btn-2000.green:active,.retro-btn-primary:active{background-color:#075985}.retro-btn-danger{color:#fff;cursor:pointer;background-color:#991b1b;border:1px solid #ef4444;border-radius:2px;padding:4px 10px;font-size:11px;font-weight:700}.retro-btn-danger:hover{background-color:#b91c1c}select.retro-input,select.classic-select,.retro-input,input.retro-input,textarea.retro-input{color:#f8fafc;background-color:#0f172a;border:1px solid #334155;border-radius:2px;outline:none;padding:4px 8px;font-family:inherit;font-size:11px}select.retro-input:focus,input.retro-input:focus,textarea.retro-input:focus{border-color:#38bdf8}select.retro-input option{color:#f8fafc;background-color:#0f172a;padding:4px}.retro-box{background-color:#0f172a;border:1px solid #334155;padding:12px}.retro-box-header{color:#38bdf8;margin-bottom:6px;font-size:12px;font-weight:700}.retro-box-header.highlight{color:#34d399}.classic-table,.retro-table{border-collapse:collapse;background-color:#0f172a;width:100%;font-size:11px}.classic-table th,.retro-table th{color:var(--color-primary);text-align:left;background-color:#1e293b;border:1px solid #334155;padding:8px 10px;font-weight:700}.classic-table td,.retro-table td{color:var(--text-primary);border:1px solid #334155;padding:8px 10px}.classic-table tr:nth-child(2n) td,.retro-table tr:nth-child(2n) td{background-color:#1e293b66}.mono-box{border:1px solid var(--border-color);color:#22c55e;background-color:#050b14;padding:10px 14px;font-family:Courier New,Courier,monospace;font-size:12px;line-height:1.4;overflow-x:auto}.portal-footer{border-top:1px solid var(--border-color);text-align:center;color:var(--text-muted);background-color:#0b1120;flex-shrink:0;padding:10px 16px;font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}
