:root{--nb-black: #0F172A;--nb-white: #FFFFFF;--nb-cream: #FAF5E6;--nb-cream-2: #FDF6E2;--nb-brand: #0D9488;--nb-violet: #8B5CF6;--nb-yellow: #FDE047;--nb-error: #EF4444;--nb-success: #22C55E;--nb-warning: #F59E0B}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--nb-cream);color:var(--nb-black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}html{scrollbar-width:thin;scrollbar-color:var(--nb-black) transparent}html::-webkit-scrollbar{width:4px;height:4px}html::-webkit-scrollbar-track{background:transparent}html::-webkit-scrollbar-thumb{background:var(--nb-black);border-radius:0;border:none}html::-webkit-scrollbar-thumb:hover{background:var(--nb-brand)}body{scrollbar-width:thin;scrollbar-color:var(--nb-black) transparent}body::-webkit-scrollbar{width:4px;height:4px}body::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb{background:var(--nb-black);border-radius:0}body::-webkit-scrollbar-thumb:hover{background:var(--nb-brand)}*{scrollbar-width:thin;scrollbar-color:var(--nb-black) transparent}*::-webkit-scrollbar{width:4px;height:4px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--nb-black);border-radius:0}*::-webkit-scrollbar-thumb:hover{background:var(--nb-brand)}.nb-btn,.nb-btn-primary,.nb-btn-secondary,.nb-btn-violet,.nb-btn-error,.nb-btn-success,.nb-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;font-weight:900;font-size:.95rem;text-transform:uppercase;letter-spacing:.02em;border:3px solid var(--nb-black);cursor:pointer;border-radius:0;box-shadow:4px 4px 0 0 var(--nb-black);transition:transform .12s ease-out,box-shadow .12s ease-out,background .12s;text-decoration:none}.nb-btn-primary{background:var(--nb-brand);color:var(--nb-white)}.nb-btn-violet{background:var(--nb-violet);color:var(--nb-white)}.nb-btn-secondary{background:var(--nb-white);color:var(--nb-black)}.nb-btn-error{background:var(--nb-error);color:var(--nb-black)}.nb-btn-success{background:var(--nb-success);color:var(--nb-black)}.nb-btn-ghost{background:transparent;color:var(--nb-black);border-color:var(--nb-black)}.nb-btn-primary:hover,.nb-btn-violet:hover,.nb-btn-secondary:hover,.nb-btn-error:hover,.nb-btn-success:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--nb-black)}.nb-btn-primary:active,.nb-btn-violet:active,.nb-btn-secondary:active,.nb-btn-error:active,.nb-btn-success:active{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--nb-black)}.nb-btn-primary:disabled,.nb-btn-violet:disabled,.nb-btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:4px 4px 0 0 var(--nb-black)}.nb-input,.nb-textarea,.nb-select{width:100%;background:var(--nb-white);border:3px solid var(--nb-black);padding:.75rem 1rem;font-family:inherit;font-size:1rem;font-weight:700;box-shadow:2px 2px 0 0 var(--nb-black);border-radius:0;outline:none;transition:box-shadow .12s}.nb-input:focus,.nb-textarea:focus,.nb-select:focus{box-shadow:4px 4px 0 0 var(--nb-brand)}.nb-label{display:block;font-weight:900;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem;color:var(--nb-black)}.nb-form-group{margin-bottom:1.25rem}.nb-error-msg{color:var(--nb-error);font-weight:800;font-size:.9rem;margin-top:.4rem}.nb-card{background:var(--nb-white);border:3px solid var(--nb-black);padding:1.5rem;box-shadow:4px 4px 0 0 var(--nb-black);border-radius:0}.nb-card-hover{transition:transform .12s,box-shadow .12s;cursor:pointer}.nb-card-hover:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--nb-black)}.nb-card-cream{background:var(--nb-cream)}.nb-card-violet{background:var(--nb-violet);color:var(--nb-white)}.nb-card-yellow{background:var(--nb-yellow)}.nb-link{color:var(--nb-black);font-weight:900;text-decoration:underline;text-decoration-style:wavy;text-decoration-thickness:2px;text-underline-offset:4px;transition:color .12s}.nb-link:hover{color:var(--nb-brand)}.nb-tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:4px solid var(--nb-black);margin-bottom:1.5rem}.nb-tab{padding:.75rem 1.25rem;border:3px solid var(--nb-black);border-bottom:none;font-weight:900;text-transform:uppercase;font-size:.875rem;background:var(--nb-white);color:var(--nb-black);cursor:pointer;transition:background .12s,transform .12s;margin-right:-3px}.nb-tab:hover{background:var(--nb-cream)}.nb-tab-active{background:var(--nb-yellow);box-shadow:4px 4px 0 0 var(--nb-black);transform:translateY(2px);position:relative;z-index:1}.nb-table-wrapper{overflow-x:auto;border:3px solid var(--nb-black);box-shadow:4px 4px 0 0 var(--nb-black);background:var(--nb-white)}.nb-table{width:100%;border-collapse:collapse;font-weight:700}.nb-table th{background:var(--nb-black);color:var(--nb-white);text-align:left;padding:.875rem 1rem;font-weight:900;text-transform:uppercase;font-size:.85rem;border-bottom:3px solid var(--nb-black)}.nb-table td{padding:.875rem 1rem;border-bottom:2px solid #e5e7eb}.nb-table tr:hover td{background:var(--nb-cream)}.nb-table tr:last-child td{border-bottom:none}.nb-badge{display:inline-block;padding:.25rem .625rem;font-weight:900;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;border:2px solid var(--nb-black);background:var(--nb-white);border-radius:0;box-shadow:1.5px 1.5px 0 0 var(--nb-black)}.nb-badge-success{background:var(--nb-success);color:var(--nb-black)}.nb-badge-error{background:var(--nb-error);color:var(--nb-white)}.nb-badge-warning{background:var(--nb-yellow);color:var(--nb-black)}.nb-badge-info{background:var(--nb-brand);color:var(--nb-white)}.nb-badge-violet{background:var(--nb-violet);color:var(--nb-white)}.nb-toast-container{position:fixed;top:1.5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;max-width:400px;width:calc(100% - 2rem);pointer-events:none}.nb-toast{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem 1rem 1.5rem;border:3px solid var(--nb-black);font-weight:800;font-size:.95rem;color:var(--nb-black);box-shadow:4px 4px 0 0 var(--nb-black);position:relative;pointer-events:auto;animation:nb-toast-slide-in .25s cubic-bezier(.175,.885,.32,1.275)}.nb-toast:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--nb-success)}.nb-toast.nb-toast-error:before{background:var(--nb-error)}.nb-toast.nb-toast-warning:before{background:var(--nb-warning)}.nb-toast.nb-toast-info:before{background:var(--nb-brand)}.nb-toast-success{background-color:#4ade80}.nb-toast-error{background-color:#f87171;color:var(--nb-white)}.nb-toast-warning{background-color:var(--nb-yellow)}.nb-toast-info{background-color:#7dd3fc}@keyframes nb-toast-slide-in{0%{transform:translate(110%);opacity:0}to{transform:translate(0);opacity:1}}.nb-toast-message{flex:1;line-height:1.4}.nb-toast-close{background:var(--nb-white);border:2px solid var(--nb-black);font-size:.75rem;font-weight:900;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-left:1rem;flex-shrink:0;transition:background .1s,transform .1s}.nb-toast-close:hover{background:var(--nb-cream);transform:translate(1px,1px);box-shadow:none}.nb-page{padding:2rem;max-width:1400px;margin:0 auto}.nb-page-hero{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:4px solid var(--nb-black)}.nb-page-hero h1{font-size:clamp(1.875rem,4vw,2.5rem);font-weight:900;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:-.02em;color:var(--nb-black)}.nb-page-hero p{color:#475569;font-weight:700;margin:0}.nb-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.nb-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.nb-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}@media(max-width:1024px){.nb-grid-3,.nb-grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.nb-grid-2,.nb-grid-3,.nb-grid-4{grid-template-columns:1fr}.nb-page{padding:1rem}}.nb-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.nb-sidebar{background:var(--nb-white);border-right:4px solid var(--nb-black);padding:2rem 1.25rem;display:flex;flex-direction:column;gap:.5rem;position:sticky;top:0;height:100vh;overflow-y:auto}.nb-sidebar-brand{font-size:1.5rem;font-weight:900;text-transform:uppercase;letter-spacing:-.02em;margin:0 0 .5rem;padding-bottom:.75rem;border-bottom:4px solid var(--nb-black)}.nb-sidebar-role{font-size:.8rem;font-weight:800;color:#475569;margin:.5rem 0 1.5rem;text-transform:uppercase;letter-spacing:.05em}.nb-sidebar nav{display:flex;flex-direction:column;gap:.5rem;flex:1}.nb-sidebar nav a{display:block;padding:.625rem 1rem;color:var(--nb-black);font-weight:800;text-transform:uppercase;font-size:.85rem;border:2px solid transparent;transition:all .12s}.nb-sidebar nav a:hover{background:var(--nb-cream);border-color:var(--nb-black);transform:translate(-2px,-2px);box-shadow:2px 2px 0 0 var(--nb-black)}.nb-sidebar nav a.active{background:var(--nb-yellow);border-color:var(--nb-black);transform:translate(-2px,-2px);box-shadow:3px 3px 0 0 var(--nb-black)}.nb-sidebar-logout{margin-top:auto;padding:.75rem;background:var(--nb-error);color:var(--nb-white);border:3px solid var(--nb-black);font-weight:900;text-transform:uppercase;font-size:.85rem;cursor:pointer;box-shadow:3px 3px 0 0 var(--nb-black);transition:transform .1s,box-shadow .1s}.nb-sidebar-logout:hover{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--nb-black)}.nb-content{padding:0;overflow:auto;background:var(--nb-cream)}.nb-burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:var(--nb-yellow);color:var(--nb-black);border:3px solid var(--nb-black);box-shadow:3px 3px 0 0 var(--nb-black);cursor:pointer;transition:transform .12s,box-shadow .12s}.nb-burger:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 0 var(--nb-black)}.nb-burger:active{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--nb-black)}.nb-burger svg{width:24px;height:24px}.nb-topbar-mobile{display:none;align-items:center;justify-content:space-between;padding:.875rem 1rem;background:var(--nb-black);color:var(--nb-white);border-bottom:4px solid var(--nb-black);position:sticky;top:0;z-index:30}.nb-topbar-mobile .brand{color:var(--nb-white);font-weight:900;font-size:1.125rem;text-transform:uppercase;letter-spacing:-.02em}.nb-topbar-mobile .role{font-size:.7rem;font-weight:700;color:var(--nb-yellow);text-transform:uppercase;letter-spacing:.05em}.nb-drawer-backdrop{position:fixed;inset:0;background:#0f172a99;z-index:40;animation:nb-fade-in .2s ease-out}@keyframes nb-fade-in{0%{opacity:0}to{opacity:1}}.nb-drawer{position:fixed;top:0;left:0;bottom:0;width:min(85vw,320px);max-width:320px;background:var(--nb-white);border-right:4px solid var(--nb-black);box-shadow:6px 0 0 0 var(--nb-black);z-index:50;overflow-y:auto;padding:1.5rem 1.25rem;display:flex;flex-direction:column;gap:.5rem;animation:nb-slide-in .25s cubic-bezier(.175,.885,.32,1.275)}@keyframes nb-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.nb-drawer-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.75rem;border-bottom:4px solid var(--nb-black);margin-bottom:.5rem}.nb-drawer-close{width:38px;height:38px;display:flex;align-items:center;justify-content:center;padding:0;background:var(--nb-error);color:var(--nb-white);border:3px solid var(--nb-black);box-shadow:3px 3px 0 0 var(--nb-black);cursor:pointer;transition:transform .12s,box-shadow .12s}.nb-drawer-close:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 0 var(--nb-black)}.nb-drawer-close:active{transform:translate(2px,2px);box-shadow:0 0 0 0 var(--nb-black)}@media(max-width:1023px){.nb-burger{display:inline-flex}.nb-topbar-mobile{display:flex}.nb-shell{grid-template-columns:1fr;min-height:100vh}.nb-sidebar{display:none}.nb-content{width:100%}}@media(min-width:1024px){.nb-burger,.nb-topbar-mobile{display:none}}.nb-auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:repeating-linear-gradient(45deg,var(--nb-cream),var(--nb-cream) 10px,var(--nb-cream-2) 10px,var(--nb-cream-2) 20px)}.nb-auth-card{width:100%;max-width:480px;background:var(--nb-white);border:4px solid var(--nb-black);padding:2.5rem;box-shadow:8px 8px 0 0 var(--nb-black)}.nb-auth-card h1{margin:0 0 .5rem;font-size:1.875rem;font-weight:900;text-transform:uppercase;letter-spacing:-.02em;color:var(--nb-black)}.nb-auth-card .nb-auth-subtitle{margin:0 0 2rem;font-size:.875rem;color:var(--nb-error);font-weight:800;text-transform:uppercase}.nb-auth-card form{display:flex;flex-direction:column;gap:0}.nb-auth-card .nb-btn{width:100%;margin-top:1rem;padding:1rem;font-size:1rem}.nb-auth-card .nb-auth-footer{margin-top:1.5rem;padding-top:1.5rem;border-top:2px dashed var(--nb-black);text-align:center;font-weight:700;font-size:.875rem}.nb-error-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;background:var(--nb-cream)}.nb-error-page .nb-code{font-size:clamp(6rem,20vw,12rem);font-weight:900;line-height:1;margin:0;color:var(--nb-violet);text-shadow:8px 8px 0px var(--nb-yellow)}.nb-error-page h1{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:900;text-transform:uppercase;margin:1.5rem 0 .5rem}.nb-error-page p{font-weight:700;color:#475569;margin:0 0 2rem;max-width:500px}.nb-flex{display:flex;gap:1rem;align-items:center}.nb-flex-col{display:flex;flex-direction:column;gap:.5rem}.nb-flex-between{display:flex;gap:1rem;align-items:center;justify-content:space-between}.nb-mt-1{margin-top:.5rem}.nb-mt-2{margin-top:1rem}.nb-mt-3{margin-top:1.5rem}.nb-mt-4{margin-top:2rem}.nb-mb-1{margin-bottom:.5rem}.nb-mb-2{margin-bottom:1rem}.nb-mb-3{margin-bottom:1.5rem}.nb-mb-4{margin-bottom:2rem}.nb-text-center{text-align:center}.nb-text-right{text-align:right}.nb-text-bold{font-weight:900}.nb-text-muted{color:#64748b;font-weight:700}.nb-text-error{color:var(--nb-error);font-weight:800}.nb-text-success{color:var(--nb-success);font-weight:800}:focus-visible{outline:3px dashed var(--nb-violet);outline-offset:2px}::selection{background:var(--nb-yellow);color:var(--nb-black)}.nb-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;font-size:.7rem;font-weight:900;border:2px solid var(--nb-black);border-radius:0;text-transform:uppercase;letter-spacing:.03em}.nb-pill-success{background:var(--nb-success);color:var(--nb-black)}.nb-pill-error{background:var(--nb-error);color:var(--nb-white)}.nb-pill-warning{background:var(--nb-warning);color:var(--nb-black)}.nb-pill-info{background:var(--nb-brand);color:var(--nb-white)}.nb-pill-secondary{background:var(--nb-white);color:var(--nb-black)}.nb-pill-violet{background:var(--nb-violet);color:var(--nb-white)}.nb-btn-sm{padding:.4rem .75rem;font-size:.8rem;box-shadow:2px 2px 0 0 var(--nb-black)}.nb-form{display:flex;flex-direction:column;gap:0}.nb-form-block{background:var(--nb-white);border:3px solid var(--nb-black);box-shadow:6px 6px 0 0 var(--nb-black);padding:1.5rem}.nb-form-actions{display:flex;gap:1rem;margin-top:1.25rem;flex-wrap:wrap}.nb-checkbox{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;cursor:pointer}.nb-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--nb-brand);cursor:pointer}.nb-checkbox-danger{color:var(--nb-error)}.nb-section-title{display:inline-flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:900;text-transform:uppercase;border-left:6px solid var(--nb-violet);padding-left:.75rem;margin:0 0 1rem;color:var(--nb-black);letter-spacing:-.01em}.nb-tab-content{display:flex;flex-direction:column;gap:1.25rem}.nb-lang-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:768px){.nb-lang-grid{grid-template-columns:1fr 1fr}}.nb-textarea{min-height:140px;resize:vertical;font-family:inherit}.nb-large{min-height:320px;font-family:JetBrains Mono,monospace;font-size:.9rem}.nb-warning{display:inline-flex;align-items:center;gap:.5rem;color:var(--nb-error);font-weight:700}.nb-meta{color:#64748b;font-size:.875rem;margin-top:1rem}.nb-code{font-family:JetBrains Mono,monospace;font-size:.8rem;background:var(--nb-cream);border:1.5px solid var(--nb-black);padding:.05rem .35rem;display:inline-block;word-break:break-all}.nb-error-actions{display:inline-flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:1.5rem}.nb-error-body{max-width:560px;text-align:center;padding:2rem}.nb-error-body h1{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:900;text-transform:uppercase;margin:1.5rem 0 .5rem;color:var(--nb-black);letter-spacing:-.02em}.nb-error-body p{font-weight:700;color:#475569;margin:0 0 1.5rem;font-size:1rem;line-height:1.5}.nb-thanks-body{max-width:540px;text-align:center;padding:2.5rem 2rem;background:var(--nb-white);border:4px solid var(--nb-black);box-shadow:8px 8px 0 0 var(--nb-black);margin:4rem auto;animation:nb-thanks-pop .5s cubic-bezier(.175,.885,.32,1.275)}@keyframes nb-thanks-pop{0%{transform:scale(.85) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.nb-thanks-check{display:inline-flex;align-items:center;justify-content:center;width:96px;height:96px;background:var(--nb-success);border:4px solid var(--nb-black);color:var(--nb-white);box-shadow:6px 6px 0 0 var(--nb-black);margin-bottom:1.5rem;animation:nb-thanks-spin .6s ease-out}@keyframes nb-thanks-spin{0%{transform:rotate(-180deg) scale(.5)}to{transform:rotate(0) scale(1)}}.nb-thanks-body h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:900;text-transform:uppercase;margin:0 0 .75rem;color:var(--nb-black);letter-spacing:-.02em}.nb-thanks-body p{font-weight:700;color:#475569;margin:0 0 1.5rem;font-size:1.05rem;line-height:1.5}audio{width:100%;height:44px;border:3px solid var(--nb-black);box-shadow:3px 3px 0 0 var(--nb-black);background:var(--nb-white)}.skip-link{position:absolute;top:-100px;left:0;z-index:100;padding:.75rem 1.25rem;background:var(--nb-yellow);color:var(--nb-black);border:3px solid var(--nb-black);box-shadow:4px 4px 0 0 var(--nb-black);font-weight:900;text-transform:uppercase;font-size:.85rem;text-decoration:none;transition:top .2s ease-out}.skip-link:focus,.skip-link:focus-visible{top:0;outline:3px dashed var(--nb-violet);outline-offset:2px}
