.toast[data-v-cf5bda58]{opacity:0;z-index:9999;pointer-events:none;position:fixed;top:80px;left:50%;transform:translate(-50%)translateY(-12px)}.toast.show[data-v-cf5bda58]{opacity:1;transform:translate(-50%)translateY(0)}.toast.hide[data-v-cf5bda58]{opacity:0;transform:translate(-50%)translateY(-12px)}.toast-content[data-v-cf5bda58]{background:var(--bg-card);border:1px solid var(--border-strong);box-shadow:none;align-items:center;gap:10px;min-width:200px;max-width:80vw;padding:10px 14px;display:flex}.toast-info .toast-content[data-v-cf5bda58]{border-color:var(--accent);background:var(--bg-secondary)}.toast-success .toast-content[data-v-cf5bda58]{border-color:var(--success);background:var(--bg-secondary)}.toast-error .toast-content[data-v-cf5bda58]{border-color:var(--danger);background:var(--danger-bg)}.toast-icon[data-v-cf5bda58]{width:24px;height:24px;font-size:var(--dos-font-px);border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;font-weight:800;display:flex}.toast-info .toast-icon[data-v-cf5bda58]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.toast-success .toast-icon[data-v-cf5bda58]{border-color:var(--success);color:var(--success);background:var(--bg-primary)}.toast-error .toast-icon[data-v-cf5bda58]{border-color:var(--danger);color:var(--danger);background:var(--bg-primary)}.toast-message[data-v-cf5bda58]{color:var(--text-primary);font-size:var(--dos-font-px);font-weight:600;line-height:1.35}.toast-error .toast-message[data-v-cf5bda58]{color:var(--danger)}:root{--bg-primary:#000;--bg-secondary:#0a0a0a;--bg-card:#0c0c0c;--bg-card-hover:#101010;--text-primary:silver;--text-secondary:#a8a8a8;--text-muted:gray;--border-color:#060;--border-strong:#0a0;--accent:#0f0;--accent-dark:#0c0;--accent-soft:#030;--accent-glow:#0f0;--success:#0f0;--warning:#ff5;--danger:#f55;--danger-bg:#300;--radius-sm:0;--radius:0;--radius-lg:0;--shadow-sm:none;--shadow:none;--shadow-lg:none;--sans:"Consolas", "Lucida Console", "Courier New", ui-monospace, monospace;--heading:var(--sans);--mono:var(--sans);--content-max:960px;--dos-font-px:14px;font-family:var(--sans);font-size:var(--dos-font-px);color:var(--text-primary);background-color:var(--bg-primary);font-synthesis:none;text-rendering:auto;-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;line-height:1.35}*,:before,:after{box-sizing:border-box;border-radius:0!important;transition:none!important;animation:none!important}html{background:var(--bg-primary);min-height:100%;font-size:var(--dos-font-px)}body{min-height:100vh;color:var(--text-primary);background-color:var(--bg-primary);font-size:var(--dos-font-px);margin:0}button,input,textarea,select{font:inherit;font-family:var(--sans);font-size:var(--dos-font-px)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}img{max-width:100%;display:block}svg{flex-shrink:0}h1,h2,h3,h4,strong{color:var(--text-primary);font-size:var(--dos-font-px);font-weight:700}h1,h2,h3{font-family:var(--heading);letter-spacing:0}h1,h2,h3,h4{margin:0 0 .5rem;line-height:1.35}p{color:var(--text-secondary);line-height:1.35;font-size:var(--dos-font-px);margin:0 0 .75rem}a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--accent-dark);background:var(--accent-soft)}code{font-family:var(--mono);font-size:var(--dos-font-px);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--accent);padding:0 .25rem;display:inline}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--bg-primary);border-radius:0!important}::-webkit-scrollbar-thumb:hover{background:var(--accent)}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:0!important}#app{min-height:100vh;font-size:var(--dos-font-px)}.page-container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-block:0;padding-inline:12px}.tech-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:none;border-radius:0}#app .page-hero.tech-card{background:var(--bg-card);border:1px solid var(--border-strong);box-shadow:none;background-image:none}#app .page-hero.tech-card h2{font-size:var(--dos-font-px);color:var(--text-primary);margin:0}#app .page-hero.tech-card .hero-kicker{color:var(--accent);font-size:var(--dos-font-px);font-weight:700}#app .page-hero.tech-card .hero-text{font-size:var(--dos-font-px);color:var(--text-secondary)}.tech-btn{border:1px solid var(--border-strong);min-height:32px;font-size:var(--dos-font-px);background:var(--bg-secondary);color:var(--text-primary);border-radius:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:700;display:inline-flex}.tech-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.tech-btn:active:not(:disabled){transform:none}.tech-btn-primary{background:var(--bg-primary);color:var(--accent);border-color:var(--accent);box-shadow:none}.tech-btn-primary:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border-color:var(--accent);box-shadow:none}.tech-input{border:1px solid var(--border-color);width:100%;min-height:32px;color:var(--text-primary);background:var(--bg-primary);caret-color:var(--accent);border-radius:0;outline:none;padding:6px 8px}.tech-input::placeholder{color:var(--text-muted)}.tech-input:hover:not(:focus){border-color:var(--border-strong)}.tech-input:focus{border-color:var(--accent);box-shadow:none;outline:1px dotted var(--accent);outline-offset:1px}#app button.icon-btn{box-sizing:border-box;border:1px solid var(--border-strong);background:var(--bg-secondary);color:var(--text-primary);box-shadow:none;justify-content:center;align-items:center;padding:0;display:inline-flex}#app button.icon-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}#app button.icon-btn:focus{outline:none}#app button.icon-btn:focus-visible{outline:1px dotted var(--accent);outline-offset:2px}#app button.icon-btn.edit{color:var(--warning);border-color:var(--border-strong)}#app button.icon-btn.edit:hover:not(:disabled){background:var(--accent-soft);color:var(--warning);border-color:var(--warning)}#app button.icon-btn.delete{color:var(--danger);border-color:var(--danger)}#app button.icon-btn.delete:hover:not(:disabled){background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.loading-state,.empty-state{text-align:center;color:var(--text-muted);font-size:var(--dos-font-px);padding:2rem 1rem}.navbar .nav-brand,.navbar .nav-menu a,.navbar .username,.navbar .logout-btn{font-size:var(--dos-font-px)!important}.navbar .brand-dot{box-shadow:none!important;background:var(--accent)!important;border-radius:0!important;width:6px!important;height:6px!important;animation:none!important}#app{min-height:100vh}.navbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:100;position:sticky;top:0}.navbar .container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:.8rem 1.5rem;display:flex}.nav-brand{color:var(--text-primary);letter-spacing:1px;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:600;display:flex}.brand-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 10px var(--accent-glow);border-radius:50%;animation:2s ease-in-out infinite pulseGlow}.nav-menu{gap:2rem;margin:0;padding:0;list-style:none;display:flex}.nav-menu a{color:var(--text-secondary);border-bottom:2px solid #0000;align-items:center;gap:.4rem;padding:.5rem 0;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-menu a:hover{color:var(--accent)}.nav-menu .router-link-active{color:var(--accent);border-bottom-color:var(--accent)}.nav-menu svg{width:1em;height:1em}.user-info{align-items:center;gap:1rem;display:flex}.username{color:var(--text-secondary);align-items:center;gap:.4rem;font-size:.95rem;font-weight:500;display:flex}.username svg{width:1em;height:1em;color:var(--accent)}.logout-btn{color:var(--danger);background:var(--danger-bg);border-radius:var(--radius);cursor:pointer;font-size:.8125rem;font-weight:500;font-family:var(--sans);border:1px solid #dc262640;align-items:center;gap:.3rem;padding:.4rem .85rem;transition:background .15s,border-color .15s,color .15s;display:flex}.logout-btn:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.logout-btn svg{width:1em;height:1em}main{min-height:calc(100vh - 70px)}
