:root{--bg:#f0f4f8;--surface:#fff;--surface2:#e8f0f7;--surface3:#dce8f2;--border:#c8d8e8;--border2:#b0c8dc;--teal:#0099a8;--teal-dim:rgba(0,153,168,.08);--teal-mid:rgba(0,153,168,.2);--teal-glow:rgba(0,153,168,.4);--orange:#e05a10;--orange-dim:rgba(224,90,16,.1);--text:#1a2e3d;--text-dim:#7a9ab0;--text-mid:#4a7090;--user-bg:#e8f4f8;--shadow:rgba(0,80,120,.08);--nav-width:220px;--header-h:58px}.dark{--bg:#050a0f;--surface:#0b1520;--surface2:#101e2e;--surface3:#162437;--border:#1e3450;--border2:#243f60;--teal:#00c8d4;--teal-dim:rgba(0,200,212,.08);--teal-mid:rgba(0,200,212,.2);--teal-glow:rgba(0,200,212,.4);--orange:#ff7b2e;--orange-dim:rgba(255,123,46,.12);--text:#d4e8f0;--text-dim:#4a7090;--text-mid:#7aaabb;--user-bg:#0e1f30;--shadow:rgba(0,0,0,.3)}*,:after,:before{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-size:14px}body{font-family:Nunito,sans-serif;font-weight:300;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}.dlk-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg);color:var(--text)}.dlk-header{height:var(--header-h);justify-content:space-between;padding:0 20px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 1px 8px var(--shadow);flex-shrink:0;z-index:20}.brand,.dlk-header{display:flex;align-items:center}.brand{gap:14px}.brand-logo{height:36px;width:auto;filter:drop-shadow(0 0 8px rgba(0,200,212,.3))}.brand-divider{width:1px;height:28px;background:var(--border2)}.brand-label{display:flex;flex-direction:column;gap:1px}.brand-title{font-family:Rajdhani,sans-serif;font-size:16px;font-weight:700;letter-spacing:.08em;color:var(--teal);line-height:1}.brand-sub,.brand-title{text-transform:uppercase}.brand-sub{font-family:Source Code Pro,monospace;font-size:9px;color:var(--text-dim);letter-spacing:.15em}.header-controls{gap:12px}.header-controls,.icon-btn{display:flex;align-items:center}.icon-btn{width:30px;height:30px;border-radius:6px;border:1px solid var(--border);background:var(--surface2);color:var(--text-dim);justify-content:center;cursor:pointer;transition:all .15s}.icon-btn:hover{border-color:var(--teal);color:var(--teal);background:var(--teal-dim)}.icon-btn svg{width:14px;height:14px}.theme-toggle{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none}.toggle-icon{font-size:14px}.theme-label{font-family:Source Code Pro,monospace;font-size:9px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em}.toggle-track{position:relative;width:38px;height:20px;background:var(--border2);border-radius:10px;border:1px solid var(--border);transition:background .25s}.toggle-track.dark-on{background:var(--teal);border-color:var(--teal)}.toggle-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .25s;box-shadow:0 1px 4px rgba(0,0,0,.2)}.toggle-track.dark-on .toggle-thumb{transform:translateX(18px)}.dlk-body{flex:1;min-height:0}.dlk-body,.dlk-nav{display:flex;overflow:hidden}.dlk-nav{width:var(--nav-width);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;padding:16px 0;flex-shrink:0;transition:width .2s,padding .2s}.dlk-nav.collapsed{width:0;padding:0}.nav-section{padding:0 10px 16px}.nav-section-label{font-family:Source Code Pro,monospace;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-dim);padding:4px 8px 8px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:6px;color:var(--text-mid);font-size:13px;font-weight:400;white-space:nowrap;transition:all .15s;cursor:pointer;border:1px solid transparent}.nav-item svg{width:16px;height:16px;flex-shrink:0}.nav-item:hover{background:var(--teal-dim);color:var(--text);border-color:var(--border)}.nav-item.active{background:var(--teal-dim);color:var(--teal);border-color:rgba(0,200,212,.25)}.nav-footer{margin-top:auto;padding:12px 18px}.nav-version{font-family:Source Code Pro,monospace;font-size:9px;color:var(--text-dim);letter-spacing:.08em;white-space:nowrap}.dlk-main{flex:1;overflow:auto;min-height:0;background:var(--bg)}.page-container{max-width:960px;margin:0 auto;padding:32px 24px}.page-header{margin-bottom:28px}.page-title{font-family:Rajdhani,sans-serif;font-size:22px;font-weight:700;color:var(--teal);letter-spacing:.05em;text-transform:uppercase}.page-sub{font-size:12px;color:var(--text-dim);margin-top:4px}.status-indicator{display:flex;align-items:center;gap:6px;font-family:Source Code Pro,monospace;font-size:10px;color:var(--text-dim)}.dot{width:7px;height:7px;border-radius:50%;background:var(--text-dim);flex-shrink:0;transition:all .3s}.dot.online{background:var(--teal);box-shadow:0 0 8px var(--teal);animation:blink 2.5s infinite}.dot.error{background:#f45}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--teal);border:none;color:#050a0f;font-family:Source Code Pro,monospace;font-size:11px;font-weight:600;letter-spacing:.05em;padding:9px 18px;border-radius:6px;cursor:pointer;transition:all .15s}.btn-primary:hover{background:#00e0ee}.btn-primary:disabled{background:var(--border);cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border);color:var(--text-dim);font-family:Source Code Pro,monospace;font-size:11px;letter-spacing:.05em;padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .15s}.btn-secondary:hover{border-color:var(--text-mid);color:var(--text)}.empty-state,.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 24px;text-align:center;color:var(--text-dim);font-family:Source Code Pro,monospace;font-size:12px}.empty-state svg{width:48px;height:48px;opacity:.2}.typing{display:flex;gap:4px;align-items:center}.typing span{width:5px;height:5px;border-radius:50%;background:var(--teal);animation:tdot 1.2s infinite;opacity:.5}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes tdot{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.field-group{margin-bottom:18px}.field-label{display:block;font-size:9px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.field-input,.field-label{font-family:Source Code Pro,monospace}.field-input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:9px 12px;color:var(--text);font-size:12px;outline:none;transition:border-color .2s}.field-input:focus{border-color:rgba(0,200,212,.4)}.field-hint{font-family:Source Code Pro,monospace;font-size:10px;color:var(--text-dim);margin-top:4px}.dashboard{padding:40px 32px;max-width:860px;margin:0 auto}.dash-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 0 48px;gap:10px}.dash-logo{height:64px;filter:drop-shadow(0 0 16px rgba(0,200,212,.4));animation:pulse-logo 3s ease-in-out infinite}@keyframes pulse-logo{0%,to{filter:drop-shadow(0 0 16px rgba(0,200,212,.4))}50%{filter:drop-shadow(0 0 28px rgba(0,200,212,.7))}}.dash-title{font-family:Rajdhani,sans-serif;font-size:28px;font-weight:700;color:var(--teal);letter-spacing:.05em;text-transform:uppercase}.dash-sub{font-size:13px;color:var(--text-dim)}.dash-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.dash-card{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 18px;transition:all .2s;cursor:pointer}.dash-card:hover{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-dim);transform:translateY(-2px)}.dash-card-icon{width:44px;height:44px;border-radius:8px;background:var(--teal-dim);border:1px solid rgba(0,200,212,.25);display:flex;align-items:center;justify-content:center;color:var(--teal);flex-shrink:0}.dash-card-icon svg{width:20px;height:20px}.dash-card-icon.accent-orange{background:var(--orange-dim);border-color:rgba(255,123,46,.2);color:var(--orange)}.dash-card-icon.accent-dim{background:var(--surface2);border-color:var(--border);color:var(--text-dim)}.dash-card-body{flex:1}.dash-card-title{font-family:Rajdhani,sans-serif;font-size:15px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text)}.dash-card-desc{font-size:11px;color:var(--text-dim);margin-top:3px;line-height:1.5}.dash-card-arrow{color:var(--teal);font-size:18px}.filter-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.filter-btn{font-family:Source Code Pro,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-dim);cursor:pointer;transition:all .15s}.filter-btn.active,.filter-btn:hover{background:var(--teal-dim);border-color:rgba(0,200,212,.3);color:var(--teal)}.lesson-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.lesson-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:18px 16px;display:flex;flex-direction:column;gap:10px;transition:all .2s;cursor:pointer}.lesson-card:hover{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-dim)}.lesson-card-header{display:flex;gap:8px;align-items:center}.lesson-card-title{font-size:14px;font-weight:600;color:var(--text);line-height:1.4;flex:1}.lesson-card-footer{display:flex;justify-content:space-between;align-items:center}.lesson-subject{letter-spacing:.1em;text-transform:uppercase;background:var(--teal-dim);border:1px solid rgba(0,200,212,.2);color:var(--teal);padding:2px 8px;border-radius:10px}.lesson-grade,.lesson-subject{font-family:Source Code Pro,monospace;font-size:9px}.lesson-grade{color:var(--text-dim);letter-spacing:.08em}.lesson-date{font-size:10px;color:var(--text-dim)}.lesson-date,.lesson-tier{font-family:Source Code Pro,monospace}.lesson-tier{font-size:9px;text-transform:uppercase;letter-spacing:.1em;padding:2px 8px;border-radius:10px;border:1px solid}.tier-free{background:rgba(0,200,100,.08);border-color:rgba(0,200,100,.2);color:#00c864}.tier-basic{background:var(--teal-dim);border-color:rgba(0,200,212,.2);color:var(--teal)}.tier-premium{background:var(--orange-dim);border-color:rgba(255,123,46,.2);color:var(--orange)}.lesson-view{max-width:780px}.lesson-view-header{margin-bottom:28px}.back-link{font-family:Source Code Pro,monospace;font-size:10px;letter-spacing:.08em;color:var(--teal);display:inline-block;margin-bottom:14px}.back-link:hover{text-decoration:underline}.lesson-meta-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.lesson-view-title{font-family:Rajdhani,sans-serif;font-size:26px;font-weight:700;color:var(--text);letter-spacing:.03em}.lesson-view-footer{display:flex;gap:12px;align-items:center;margin-top:40px;padding-top:24px;border-top:1px solid var(--border)}.lesson-hero-wrap{margin:18px 0 0;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:#0a0d1a;max-height:340px;display:flex;align-items:center;justify-content:center}.lesson-hero-img{width:100%;max-height:340px;object-fit:contain;display:block}.lesson-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}.lesson-tools-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);margin-right:4px}.lesson-tool-btn,.lesson-tools-label{font-family:Source Code Pro,monospace}.lesson-tool-btn{font-size:10px;padding:5px 12px;border-radius:20px;border:1px solid rgba(0,200,212,.3);background:var(--teal-dim);color:var(--teal);cursor:pointer;transition:all .15s;white-space:nowrap}.lesson-tool-btn:hover{background:rgba(0,200,212,.2);border-color:var(--teal)}.lesson-domain{font-family:Source Code Pro,monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase;background:rgba(106,13,173,.12);border:1px solid rgba(106,13,173,.25);color:#9b5de5;padding:2px 8px;border-radius:10px}.lesson-card-hero{margin:-18px -16px 10px;border-radius:8px 8px 0 0;overflow:hidden;background:#0a0d1a;height:140px;display:flex;align-items:center;justify-content:center}.lesson-card-hero img{width:100%;height:140px;object-fit:contain;display:block}.markdown-body{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:32px 36px;line-height:1.8;color:var(--text)}.markdown-body h1,.markdown-body h2,.markdown-body h3{font-family:Rajdhani,sans-serif;font-weight:700;letter-spacing:.04em;color:var(--teal);text-transform:uppercase;margin:1.6em 0 .6em}.markdown-body h1{font-size:20px}.markdown-body h2{font-size:17px}.markdown-body h3{font-size:14px;color:var(--text-mid)}.markdown-body p{margin-bottom:1em}.markdown-body ol,.markdown-body ul{padding-left:1.6em;margin-bottom:1em}.markdown-body li{margin-bottom:.3em}.markdown-body code{font-family:Source Code Pro,monospace;font-size:11px;background:var(--teal-dim);padding:1px 5px;border-radius:3px;color:var(--teal)}.markdown-body pre{background:var(--surface2);border:1px solid var(--border2);border-radius:6px;padding:14px 16px;overflow-x:auto;margin:1em 0}.markdown-body pre code{background:transparent;padding:0;color:var(--text);font-size:12px}.markdown-body blockquote{border-left:3px solid var(--teal);padding-left:14px;color:var(--text-mid);margin:1em 0}.markdown-body table{width:100%;border-collapse:collapse;margin:1em 0}.markdown-body td,.markdown-body th{border:1px solid var(--border2);padding:8px 12px;font-size:13px}.markdown-body th{background:var(--surface2);color:var(--teal);font-family:Rajdhani,sans-serif;letter-spacing:.06em}.markdown-body img{max-width:100%;border-radius:6px;margin:1em 0}.markdown-body hr{border:none;border-top:1px solid var(--border2);margin:2em 0}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px 28px;margin-bottom:20px}.settings-section-title{font-family:Rajdhani,sans-serif;font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-mid);margin-bottom:18px}.model-list{list-style:none;display:flex;flex-direction:column;gap:8px}.model-list-item{display:flex;align-items:center;gap:10px;font-family:Source Code Pro,monospace;font-size:12px;color:var(--text)}.chat-page{display:flex;height:calc(100vh - var(--header-h));overflow:hidden;background:var(--bg)}.chat-panel{width:100%;display:flex;flex-direction:column;border-right:1px solid var(--border);min-height:0}.chat-panel.split{width:50%}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.panel-title{font-family:Rajdhani,sans-serif;font-size:12px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--text-mid)}.panel-title .teal{color:var(--teal)}.msg-count{font-family:Source Code Pro,monospace;font-size:9px;color:var(--text-dim);letter-spacing:.08em}.chat-area{flex:1;overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column;gap:18px;scroll-behavior:smooth}.chat-area::-webkit-scrollbar{width:3px}.chat-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;padding:30px 20px;animation:fadeUp .6s ease}.welcome-logo{height:56px;margin-bottom:18px;filter:drop-shadow(0 0 16px rgba(0,200,212,.4));animation:pulse-logo 3s ease-in-out infinite}.welcome-title{font-family:Rajdhani,sans-serif;font-size:20px;font-weight:700;color:var(--teal);letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px}.welcome-sub{font-size:12px;color:var(--text-dim);margin-bottom:24px}.suggestions{display:flex;flex-direction:column;gap:8px;width:100%;max-width:380px}.sug-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text-mid);font-family:Nunito,sans-serif;font-size:12px;padding:9px 14px;border-radius:6px;cursor:pointer;text-align:left;transition:all .2s;display:flex;align-items:center;gap:8px}.sug-btn:before{content:"→";color:var(--teal);font-size:12px;flex-shrink:0}.sug-btn:hover{border-color:var(--teal);color:var(--text);background:var(--teal-dim);transform:translateX(3px)}.msg{display:flex;gap:10px;animation:fadeUp .25s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg.user{flex-direction:row-reverse}.av{width:28px;height:28px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-family:Rajdhani,sans-serif;font-size:10px;font-weight:700;flex-shrink:0;margin-top:2px;letter-spacing:.05em}.ai-av{background:var(--teal-dim);border:1px solid rgba(0,200,212,.35);color:var(--teal)}.user-av{background:var(--orange-dim);border:1px solid rgba(255,123,46,.3);color:var(--orange)}.bubble{flex:1;min-width:0;padding:11px 14px;border-radius:8px;font-size:13px;line-height:1.7;word-break:break-word}.msg.assistant .bubble{background:var(--surface);border:1px solid var(--border);border-top-left-radius:2px}.msg.user .bubble{background:var(--user-bg);border:1px solid rgba(255,123,46,.15);border-top-right-radius:2px}.bubble pre{background:var(--surface2);border:1px solid var(--border2);border-radius:6px;padding:12px;overflow-x:auto;margin:8px 0;line-height:1.6}.bubble code,.bubble pre{font-family:Source Code Pro,monospace;font-size:11px}.bubble code{background:var(--teal-dim);padding:1px 5px;border-radius:3px;color:var(--teal)}.bubble pre code{background:transparent;padding:0;color:inherit}.input-zone{padding:12px 14px 14px;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}.model-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.model-select{border:1px solid var(--border);border-radius:6px;padding:4px 10px;color:var(--teal);font-family:Source Code Pro,monospace;font-size:11px;outline:none;cursor:pointer;flex:1;max-width:220px}.input-row,.model-select{background:var(--surface2)}.input-row{display:flex;gap:8px;align-items:flex-end;border:1px solid var(--border);border-radius:10px;padding:9px 9px 9px 14px;transition:border-color .2s}.input-row:focus-within{border-color:rgba(0,200,212,.4);box-shadow:0 0 0 3px rgba(0,200,212,.05)}.input-row.busy{border-color:rgba(0,200,212,.2)}#prompt-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-family:Nunito,sans-serif;font-size:13px;font-weight:300;line-height:1.6;resize:none;max-height:130px;min-height:22px}#prompt-input::placeholder{color:var(--text-dim)}.send-btn{width:34px;height:34px;background:var(--teal);border:none;border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;color:#050a0f}.send-btn:hover{background:#00e0ee;transform:scale(1.05)}.send-btn:active{transform:scale(.95)}.send-btn:disabled{background:var(--border);cursor:not-allowed;transform:none}.send-btn svg{width:15px;height:15px}.input-hint{text-align:center;font-family:Source Code Pro,monospace;font-size:9px;color:var(--text-dim);margin-top:7px;letter-spacing:.05em}.input-hint kbd{background:var(--surface3);border:1px solid var(--border);border-radius:3px;padding:1px 4px;font-family:inherit}.stop-btn{background:transparent;border:1px solid #f45;color:#f45;font-family:Source Code Pro,monospace;font-size:9px;letter-spacing:.1em;padding:2px 10px;border-radius:4px;cursor:pointer;margin-left:8px;transition:all .15s}.stop-btn:hover{background:rgba(255,68,85,.1)}.divider{width:4px;background:var(--border);cursor:col-resize;flex-shrink:0;transition:background .2s}.divider:hover{background:var(--teal)}.render-panel{flex:1;min-width:200px;display:flex;flex-direction:column;background:var(--bg);overflow:hidden}.render-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;gap:10px}.render-tabs{display:flex;gap:2px}.rtab{font-family:Source Code Pro,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:5px;border:1px solid transparent;cursor:pointer;color:var(--text-dim);background:transparent;transition:all .15s}.rtab.active{background:var(--teal-dim);border-color:rgba(0,200,212,.3);color:var(--teal)}.rtab:not(.active):hover{color:var(--text-mid);background:var(--surface2)}.render-btn{font-family:Source Code Pro,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:5px;cursor:pointer;transition:all .15s;border:1px solid var(--border);background:transparent;color:var(--text-dim)}.render-btn:hover{border-color:var(--teal);color:var(--teal)}.render-content{flex:1;overflow:hidden;position:relative}.code-view{width:100%;height:100%;overflow:auto;background:var(--surface2);padding:16px;font-size:12px;line-height:1.7;color:var(--text);white-space:pre-wrap;word-break:break-word;margin:0}#blazor-error-ui,.code-view{font-family:Source Code Pro,monospace}#blazor-error-ui{position:fixed;bottom:0;left:0;right:0;background:#1a0810;border-top:1px solid #f45;color:#f89;padding:12px 20px;font-size:11px;display:none;z-index:1000}#blazor-error-ui .reload{color:var(--teal);margin:0 8px}#blazor-error-ui .dismiss{float:right;cursor:pointer}:root{--kp-bg:#1a2035;--kp-surface:#232d42;--kp-surface2:#2c3752;--kp-surface3:#354260;--kp-primary:#5bb3ff;--kp-primary-dim:rgba(91,179,255,.12);--kp-primary-mid:rgba(91,179,255,.24);--kp-primary-glow:rgba(91,179,255,.4);--kp-cta:#feaa00;--kp-cta-hover:#e69900;--kp-secondary:#00d4e8;--kp-secondary-dim:rgba(0,212,232,.12);--kp-green:#22d07a;--kp-yellow:#ffd426;--kp-orange:#ff6b2b;--kp-red:#ff4d42;--kp-purple:#9b5de5;--kp-teal:#00d4e8;--kp-text:rgba(235,242,255,.95);--kp-text-mid:rgba(200,220,255,.75);--kp-text-muted:rgba(180,205,245,.55);--kp-text-dim:rgba(160,190,235,.38);--kp-border:rgba(91,179,255,.18);--kp-border2:rgba(91,179,255,.3);--kp-shadow:0 4px 24px rgba(0,0,0,.28),0 1px 6px rgba(91,179,255,.08);--kp-shadow-float:0 12px 48px rgba(0,0,0,.36),0 4px 20px rgba(91,179,255,.14);--kp-shadow-glow:0 0 0 3px rgba(91,179,255,.2);--kp-radius-card:1.5rem;--kp-radius-sm:0.875rem;--kp-radius-btn:3rem;--kp-radius-pill:999px;--kp-header-h:52px;--kp-nav-w:240px;--kp-section-v:3rem}html:not(.dark){--kp-bg:#f0f4f9;--kp-surface:#fff;--kp-surface2:#e8edf4;--kp-surface3:#dce4ef;--kp-primary:#2056ba;--kp-primary-dim:rgba(32,86,186,.08);--kp-primary-mid:rgba(32,86,186,.18);--kp-primary-glow:rgba(32,86,186,.28);--kp-cta:#d08800;--kp-cta-hover:#b57700;--kp-secondary:#007fa8;--kp-secondary-dim:rgba(0,127,168,.1);--kp-text:rgba(10,13,26,.92);--kp-text-mid:rgba(10,13,26,.65);--kp-text-muted:rgba(10,13,26,.45);--kp-text-dim:rgba(10,13,26,.28);--kp-border:rgba(32,86,186,.14);--kp-border2:rgba(32,86,186,.22);--kp-shadow:0 4px 24px rgba(0,0,0,.1),0 1px 6px rgba(32,86,186,.06);--kp-shadow-float:0 12px 48px rgba(0,0,0,.14),0 4px 20px rgba(32,86,186,.08);--kp-shadow-glow:0 0 0 3px rgba(32,86,186,.15)}html:not(.dark) .kp-header{background:#fff;border-bottom:1px solid rgba(32,86,186,.1);box-shadow:0 1px 8px rgba(0,0,0,.07)}html:not(.dark) .kp-nav{background:#fff;border-right:1px solid rgba(32,86,186,.1)}html:not(.dark) .kp-hero{background:linear-gradient(135deg,#2a4fa0,#3b72d4 50%,#1e5bbf)}html:not(.dark) .kp-hero-dotgrid{background-image:radial-gradient(circle,hsla(0,0%,100%,.25) 1px,transparent 0)}html:not(.dark) .kp-brand-title{color:var(--kp-primary)}html:not(.dark) .kp-brand-sub{color:var(--kp-text-muted)}.kp-shell{display:flex;flex-direction:column;height:100vh;background:var(--kp-bg);color:var(--kp-text);font-family:Be Vietnam Pro,sans-serif;font-size:14px;overflow:hidden}.kp-header{height:var(--kp-header-h);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 1.5rem;background:var(--kp-surface);border-bottom:1px solid var(--kp-border);box-shadow:0 1px 8px rgba(0,0,0,.18);flex-shrink:0;z-index:100}.kp-header-col1{display:flex;align-items:center;justify-content:flex-end;gap:.625rem}.kp-brand-logo{height:32px;width:auto}.kp-brand-label{display:flex;flex-direction:column;gap:0}.kp-brand-title{font-family:Barlow Condensed,sans-serif;font-size:.95rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--kp-text);line-height:1;white-space:nowrap}.kp-brand-sub{font-family:Be Vietnam Pro,sans-serif;font-size:.6rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--kp-text-muted);line-height:1.3}@media (max-width:480px){.kp-brand-title{display:none}}.kp-header-col3{justify-content:flex-start;gap:.625rem}.kp-header-col3,.kp-nav-toggle{display:flex;align-items:center}.kp-nav-toggle{width:32px;height:32px;border-radius:8px;background:transparent;border:none;color:var(--kp-text-muted);cursor:pointer;justify-content:center;transition:background .15s,color .15s}.kp-nav-toggle svg{width:16px;height:16px}.kp-nav-toggle:hover{background:var(--kp-primary-dim);color:var(--kp-primary)}:is(.kp-user-pill,.kp-icon-btn,.kp-theme-toggle,.kp-nav-toggle){height:34px;border-radius:var(--kp-radius-btn);border:1px solid var(--kp-border);background:transparent;color:var(--kp-text-muted);transition:background .15s,color .15s,border-color .15s}.kp-nav-toggle:hover,:is(.kp-user-pill,.kp-icon-btn,.kp-theme-toggle):hover{background:var(--kp-primary-dim);border-color:var(--kp-primary-mid);color:var(--kp-primary)}.kp-user-pill{gap:.5rem;padding:.25rem .875rem .25rem .25rem;cursor:default}.kp-user-avatar,.kp-user-pill{display:flex;align-items:center}.kp-user-avatar{width:26px;height:26px;border-radius:50%;background:var(--kp-surface2);border:1px solid var(--kp-border);justify-content:center;font-family:Barlow Condensed,sans-serif;font-size:.68rem;font-weight:700;color:var(--kp-text-mid);flex-shrink:0}.kp-user-name{font-size:.8rem;font-weight:600;color:var(--kp-text-mid)}.kp-icon-btn,.kp-user-name{font-family:Be Vietnam Pro,sans-serif}.kp-icon-btn{padding:0 .75rem;display:flex;align-items:center;justify-content:center;gap:.375rem;font-size:.78rem;font-weight:500;cursor:pointer;white-space:nowrap}.kp-icon-btn svg{width:14px;height:14px;flex-shrink:0}.kp-icon-btn--signout{font-weight:600}.kp-icon-btn--signout:hover{background:color-mix(in srgb,#ff4d42 12%,transparent);border-color:rgba(255,77,66,.4);color:#ff6b63}html:not(.dark) .kp-icon-btn--signout{color:var(--kp-text-muted)}.kp-theme-toggle{display:flex;align-items:center;gap:.375rem;cursor:pointer;padding:.25rem .75rem;font-size:.72rem;user-select:none}.kp-toggle-track{width:28px;height:15px;border-radius:10px;background:var(--kp-border2);position:relative;transition:background .2s}.kp-toggle-track.dark-on{background:var(--kp-primary)}.kp-toggle-thumb{position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:#fff;transition:transform .2s}.kp-toggle-track.dark-on .kp-toggle-thumb{transform:translateX(13px)}.kp-body{display:flex;flex:1;overflow:hidden}.kp-nav{width:var(--kp-nav-w);background:var(--kp-surface);border-right:1px solid var(--kp-border);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex-shrink:0;transition:width .25s ease,opacity .2s;padding:1rem 0 1.5rem}.kp-nav.collapsed{width:0;opacity:0;pointer-events:none}.kp-nav-section{margin-bottom:1.25rem}.kp-nav-section-label{font-family:Space Mono,monospace;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--kp-text-dim);padding:0 1.125rem;margin-bottom:.375rem;display:block}.kp-nav-item{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.125rem;margin:0 .5rem;border-radius:.75rem;text-decoration:none;color:var(--kp-text-mid);font-size:.85rem;font-weight:500;transition:background .15s,color .15s;position:relative}.kp-nav-item svg{width:15px;height:15px;flex-shrink:0}.kp-nav-item:hover{background:rgba(59,158,255,.16);color:#3b9eff}.kp-nav-item.active{background:rgba(59,158,255,.22);color:#3b9eff;font-weight:600}.kp-nav-item.active:before{content:"";position:absolute;left:-.5rem;top:50%;transform:translateY(-50%);width:3px;height:60%;border-radius:0 2px 2px 0;background:#3b9eff;box-shadow:0 0 8px rgba(59,158,255,.6)}.kp-nav-footer{margin-top:auto;padding:0 1.125rem}.kp-nav-version{font-family:Space Mono,monospace;font-size:.58rem;color:var(--kp-text-dim);letter-spacing:.08em}.kp-main{flex:1;overflow-y:auto;overflow-x:hidden;background:var(--kp-bg)}.kp-page{min-height:100%;display:flex;flex-direction:column}.kp-hero{position:relative;background:linear-gradient(145deg,#263d68,#2e4a80 45%,#365294 80%,#28447a);overflow:hidden;padding:3rem 2rem}.kp-hero--compact{padding:2rem}.kp-hero-dotgrid{background-image:radial-gradient(circle,rgba(59,158,255,.35) 1px,transparent 0);background-size:22px 22px;opacity:.5}.kp-hero-blobs,.kp-hero-dotgrid{position:absolute;inset:0;pointer-events:none}.kp-hero-blobs{overflow:hidden}.kp-hero-blob-a{width:420px;height:420px;top:-120px;right:-100px;background:rgba(0,212,232,.18);filter:blur(64px)}.kp-hero-blob-a,.kp-hero-blob-b{position:absolute;border-radius:50%}.kp-hero-blob-b{width:300px;height:300px;bottom:-80px;left:-80px;background:rgba(254,170,0,.16);filter:blur(60px)}.kp-hero-inner{position:relative;z-index:1;max-width:960px}.kp-hero-eyebrow{display:inline-flex;align-items:center;gap:.4rem;background:rgba(0,212,232,.12);border:1px solid rgba(0,212,232,.25);backdrop-filter:blur(6px);border-radius:var(--kp-radius-pill);padding:.25rem .875rem;font-family:Space Mono,monospace;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--kp-secondary);margin-bottom:.875rem}.kp-hero-title{font-family:Barlow Condensed,sans-serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:900;letter-spacing:-.01em;text-transform:uppercase;color:#fff;line-height:1;margin-bottom:.625rem}.kp-hero-sub{font-size:.95rem;color:hsla(0,0%,100%,.55);line-height:1.6;max-width:52ch;margin-bottom:0}.kp-hero-btns{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.kp-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.5rem;min-height:40px;border-radius:var(--kp-radius-btn);font-family:Be Vietnam Pro,sans-serif;font-size:.875rem;font-weight:600;cursor:pointer;border:none;text-decoration:none;white-space:nowrap;transition:background .2s,box-shadow .2s,transform .12s}.kp-btn:active{transform:scale(.97)}.kp-btn--primary{background:linear-gradient(135deg,#2056ba,#3b9eff);color:#fff;box-shadow:0 6px 24px rgba(59,158,255,.28)}.kp-btn--primary:hover{box-shadow:0 8px 32px rgba(59,158,255,.4)}.kp-btn--cta{background:var(--kp-cta);color:#080d1f;font-weight:700;box-shadow:0 6px 24px rgba(254,170,0,.28)}.kp-btn--cta:hover{background:var(--kp-cta-hover);box-shadow:0 8px 32px rgba(254,170,0,.38)}.kp-btn--ghost{background:transparent;color:var(--kp-primary);box-shadow:inset 0 0 0 1.5px var(--kp-primary)}.kp-btn--ghost:hover{background:var(--kp-primary-dim)}.kp-btn--ghost-dim{background:transparent;color:var(--kp-text-mid);box-shadow:inset 0 0 0 1px var(--kp-border2)}.kp-btn--ghost-dim:hover{background:var(--kp-surface2);color:var(--kp-text)}.kp-btn--sm{padding:.4rem .875rem;font-size:.78rem;min-height:32px}.kp-btn--danger{background:rgba(255,77,66,.15);color:#ff4d42;box-shadow:none}.kp-btn--danger:hover{background:rgba(255,77,66,.28)}.kp-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-card);box-shadow:var(--kp-shadow);padding:1.5rem;transition:box-shadow .2s,transform .2s}.kp-card:hover{box-shadow:var(--kp-shadow-float)}.kp-card--lift:hover{transform:translateY(-3px)}.kp-card--flat{box-shadow:none}.kp-card--surface2{background:var(--kp-surface2)}.kp-content{padding:1.75rem 2rem;max-width:1100px;flex:1}.kp-content--wide{max-width:none}.kp-page-header{margin-bottom:1.5rem}.kp-page-title{font-family:Barlow Condensed,sans-serif;font-size:1.5rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--kp-text)}.kp-page-sub{font-size:.82rem;color:var(--kp-text-muted);margin-top:.25rem}.kp-section-title{font-family:Barlow Condensed,sans-serif;font-size:1.1rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--kp-primary);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.kp-section-title:after{content:"";flex:1;height:1px;background:var(--kp-border)}.kp-stats{justify-content:center;flex-wrap:wrap;gap:0;background:var(--kp-surface);border-bottom:1px solid var(--kp-border)}.kp-stat,.kp-stats{display:flex;align-items:center}.kp-stat{flex-direction:column;padding:1rem 2rem;text-align:center}.kp-stat-num{font-family:Barlow Condensed,sans-serif;font-size:2rem;font-weight:900;color:var(--kp-primary);line-height:1}.kp-stat-label{font-family:Space Mono,monospace;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--kp-text-muted);margin-top:.25rem}.kp-stat-sep{width:1px;height:2rem;background:var(--kp-border)}.kp-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.kp-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.kp-grid-auto{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.kp-grid-auto-sm{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.875rem}.kp-filter-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.25rem}.kp-filter-pill{font-family:Space Mono,monospace;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;padding:.375rem .875rem;border-radius:var(--kp-radius-pill);border:1px solid var(--kp-border2);background:transparent;color:var(--kp-text-mid);cursor:pointer;transition:all .15s}.kp-filter-pill:hover{background:rgba(59,158,255,.18);border-color:#3b9eff;color:#3b9eff}.kp-filter-pill.active{background:#3b9eff;border-color:#3b9eff;color:#fff;font-weight:700}.kp-chip{display:inline-flex;align-items:center;font-family:Space Mono,monospace;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .6rem;border-radius:var(--kp-radius-pill);border:1px solid;font-weight:700}.kp-chip--blue{background:#3b9eff;border-color:#3b9eff;color:#fff}.kp-chip--green{background:#22d07a;border-color:#22d07a;color:#fff}.kp-chip--gold{background:#feaa00;border-color:#feaa00;color:#0d1225}.kp-chip--teal{background:#00d4e8;border-color:#00d4e8;color:#0d1225}.kp-chip--purple{background:#9b5de5;border-color:#9b5de5;color:#fff}.kp-chip--red{background:#ff4d42;border-color:#ff4d42;color:#fff}.kp-chip--orange{background:#ff6b2b;border-color:#ff6b2b;color:#fff}.kp-chip--dim{background:var(--kp-surface2);border-color:var(--kp-border);color:var(--kp-text-muted)}.kp-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;display:inline-block}.kp-dot--green{background:#22d07a;box-shadow:0 0 6px rgba(34,208,122,.6)}.kp-dot--yellow{background:#ffd426;box-shadow:0 0 6px rgba(255,212,38,.6)}.kp-dot--red{background:#ff4d42;box-shadow:0 0 6px rgba(255,77,66,.6)}.kp-dot--dim{background:var(--kp-border2)}.kp-field{display:flex;flex-direction:column;gap:.375rem}.kp-label{font-size:.72rem;font-weight:600;letter-spacing:.03em;color:var(--kp-text-mid);text-transform:uppercase;font-family:Space Mono,monospace}.kp-input,.kp-select,.kp-textarea{background:var(--kp-surface2);border:1.5px solid var(--kp-border);border-radius:var(--kp-radius-sm);padding:.625rem .875rem;color:var(--kp-text);font-family:Be Vietnam Pro,sans-serif;font-size:.875rem;outline:none;transition:border-color .15s,box-shadow .15s}.kp-input:focus,.kp-select:focus,.kp-textarea:focus{border-color:var(--kp-primary);box-shadow:0 0 0 3px rgba(59,158,255,.15)}.kp-textarea{resize:vertical;min-height:100px}.kp-hint{font-size:.72rem}.kp-hint,.kp-loading{color:var(--kp-text-muted)}.kp-loading{display:flex;align-items:center;gap:.75rem;font-size:.875rem;padding:3rem 2rem}.kp-dots{display:flex;gap:4px}.kp-dots span{width:6px;height:6px;border-radius:50%;background:var(--kp-primary);animation:kp-bounce 1.2s ease-in-out infinite}.kp-dots span:nth-child(2){animation-delay:.15s}.kp-dots span:nth-child(3){animation-delay:.3s}@keyframes kp-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.kp-empty{display:flex;flex-direction:column;align-items:center;gap:.875rem;padding:4rem 2rem;text-align:center;color:var(--kp-text-muted)}.kp-empty svg{width:48px;height:48px;opacity:.3}.kp-empty p{font-size:.875rem;line-height:1.6}.kp-table-wrap{overflow-x:auto;border-radius:var(--kp-radius-sm)}.kp-table{width:100%;border-collapse:collapse;font-size:.82rem}.kp-table thead th{font-family:Space Mono,monospace;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--kp-text-muted);padding:.75rem 1rem;text-align:left;font-weight:400}.kp-table tbody tr,.kp-table thead th{border-bottom:1px solid var(--kp-border)}.kp-table tbody tr{transition:background .12s}.kp-table tbody tr:last-child{border-bottom:none}.kp-table tbody tr:hover{background:var(--kp-primary-dim)}.kp-table td{padding:.75rem 1rem;color:var(--kp-text-mid);vertical-align:middle}.kp-table td.kp-td-primary{color:var(--kp-text);font-weight:500}.kp-table td.kp-td-mono{font-family:Space Mono,monospace;font-size:.72rem;color:var(--kp-text-muted)}.kp-code-block{background:var(--kp-bg);border:1px solid var(--kp-border);border-radius:var(--kp-radius-sm);padding:1rem;font-family:Space Mono,monospace;font-size:.75rem;color:var(--kp-secondary);line-height:1.7;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.kp-avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Barlow Condensed,sans-serif;font-weight:800;flex-shrink:0;background:linear-gradient(135deg,#2056ba,#3b9eff);color:#fff}.kp-avatar--md{width:40px;height:40px;font-size:.85rem}.kp-avatar--lg{width:52px;height:52px;font-size:1.1rem}.kp-expand-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;padding:0}.kp-expand-icon{color:var(--kp-text-muted);transition:transform .2s;width:16px;height:16px;flex-shrink:0}.kp-expand-icon.open{transform:rotate(90deg)}.kp-expand-body{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--kp-border)}.kp-lesson-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-card);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.kp-lesson-card:hover{box-shadow:var(--kp-shadow-float);transform:translateY(-2px)}.kp-lesson-card-body{padding:1rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.kp-lesson-card-title{font-family:Barlow Condensed,sans-serif;font-size:1.05rem;font-weight:800;letter-spacing:.02em;color:var(--kp-text);text-transform:uppercase;line-height:1.2}.kp-lesson-card-meta{display:flex;justify-content:space-between;align-items:center;font-family:Space Mono,monospace;font-size:.6rem;letter-spacing:.08em;color:var(--kp-text-muted)}.kp-lesson-card-domain{display:flex;gap:.5rem;align-items:center}.kp-lesson-card[data-domain=Microcontrollers]{border-left:3px solid var(--kp-teal)}.kp-lesson-card[data-domain=Coding]{border-left:3px solid var(--kp-primary)}.kp-lesson-card[data-domain=Robotics]{border-left:3px solid var(--kp-green)}.kp-lesson-card[data-domain=IoT]{border-left:3px solid var(--kp-secondary)}.kp-lesson-card[data-domain="3D Design"]{border-left:3px solid var(--kp-orange)}.kp-dash-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-card);padding:1.5rem;display:flex;align-items:center;gap:1.25rem;text-decoration:none;color:var(--kp-text);transition:box-shadow .2s,transform .2s,border-color .2s;box-shadow:var(--kp-shadow)}.kp-dash-card:hover{box-shadow:var(--kp-shadow-float);transform:translateY(-3px)}.kp-dash-card-icon{width:48px;height:48px;border-radius:1rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.kp-dash-card-icon svg{width:22px;height:22px}.kp-dash-card-body{flex:1;min-width:0}.kp-dash-card-title{font-family:Barlow Condensed,sans-serif;font-size:1.05rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--kp-text);margin-bottom:.25rem}.kp-dash-card-desc{font-size:.8rem;color:var(--kp-text-muted);line-height:1.4}.kp-dash-card-arrow{color:var(--kp-text-dim);font-size:1.1rem;flex-shrink:0}.kp-dash-card--blue{border-left:4px solid #3b9eff}.kp-dash-card--blue .kp-dash-card-icon{background:#3b9eff;color:#fff}.kp-dash-card--blue:hover{border-color:#3b9eff;box-shadow:0 12px 40px rgba(59,158,255,.22)}.kp-dash-card--purple{border-left:4px solid #9b5de5}.kp-dash-card--purple .kp-dash-card-icon{background:#9b5de5;color:#fff}.kp-dash-card--purple:hover{border-color:#9b5de5;box-shadow:0 12px 40px rgba(155,93,229,.22)}.kp-dash-card--gold{border-left:4px solid #feaa00}.kp-dash-card--gold .kp-dash-card-icon{background:#feaa00;color:#0d1225}.kp-dash-card--gold:hover{border-color:#feaa00;box-shadow:0 12px 40px rgba(254,170,0,.22)}.kp-dash-card--green{border-left:4px solid #22d07a}.kp-dash-card--green .kp-dash-card-icon{background:#22d07a;color:#fff}.kp-dash-card--green:hover{border-color:#22d07a;box-shadow:0 12px 40px rgba(34,208,122,.22)}.kp-dash-card--teal{border-left:4px solid #00d4e8}.kp-dash-card--teal .kp-dash-card-icon{background:#00d4e8;color:#0d1225}.kp-dash-card--teal:hover{border-color:#00d4e8;box-shadow:0 12px 40px rgba(0,212,232,.22)}.kp-stat-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-card);padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.25rem}.kp-stat-card-value{font-family:Barlow Condensed,sans-serif;font-size:2.5rem;font-weight:900;color:var(--kp-primary);line-height:1}.kp-stat-card-label{font-family:Space Mono,monospace;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--kp-text-muted)}.kp-timeline{display:flex;flex-direction:column;gap:0}.kp-timeline-item{display:flex;gap:1rem;align-items:flex-start}.kp-timeline-node-col{flex-direction:column}.kp-timeline-node,.kp-timeline-node-col{display:flex;align-items:center;flex-shrink:0}.kp-timeline-node{width:28px;height:28px;border-radius:50%;background:var(--kp-surface2);border:2px solid var(--kp-border);justify-content:center;font-size:.75rem;z-index:1}.kp-timeline-node--start{background:#3b9eff;border-color:#3b9eff;color:#fff}.kp-timeline-node--earned{background:#22d07a;border-color:#22d07a;color:#fff}.kp-timeline-node--badge{background:#feaa00;border-color:#feaa00;color:#0d1225}.kp-timeline-node--locked{opacity:.4}.kp-timeline-connector{width:2px;flex:1;min-height:20px;background:var(--kp-border)}.kp-timeline-connector--earned{background:var(--kp-green)}.kp-timeline-content{padding:.125rem 0 1rem;flex:1}.kp-timeline-kind{font-family:Space Mono,monospace;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kp-text-dim)}.kp-timeline-name{font-family:Barlow Condensed,sans-serif;font-size:.95rem;font-weight:700;text-transform:uppercase;color:var(--kp-text)}.kp-timeline-date{font-size:.72rem;color:var(--kp-text-muted)}.kp-badge-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-card);padding:1.25rem;display:flex;gap:1rem;align-items:flex-start}.kp-badge-emblem{width:80px;height:80px;border-radius:1rem;flex-shrink:0;background:#f8f9fb;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-size:1.75rem;box-shadow:0 2px 8px rgba(0,0,0,.06)}.kp-badge-info{flex:1;min-width:0}.kp-badge-name{font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--kp-text);margin-bottom:.375rem}.kp-badge-chips{display:flex;gap:.375rem;flex-wrap:wrap;margin-bottom:.375rem}.kp-badge-desc{font-size:.8rem;color:var(--kp-text-muted);line-height:1.5}.kp-badge-date{font-family:Space Mono,monospace;font-size:.62rem;color:var(--kp-text-dim);margin-top:.375rem}.kp-file-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-sm);overflow:hidden}.kp-file-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;cursor:pointer;transition:background .12s}.kp-file-header:hover{background:rgba(59,158,255,.12)}.kp-file-icon{color:var(--kp-primary);flex-shrink:0}.kp-file-icon svg{width:14px;height:14px}.kp-file-name{font-weight:600;color:var(--kp-text);font-size:.875rem}.kp-file-type{color:var(--kp-text-muted);background:var(--kp-surface2);padding:.15rem .5rem;border-radius:var(--kp-radius-pill);margin-left:auto}.kp-file-size,.kp-file-type{font-family:Space Mono,monospace;font-size:.62rem}.kp-file-size{color:var(--kp-text-dim)}.kp-file-body{padding:.875rem 1rem;border-top:1px solid var(--kp-border)}.kp-ann-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-sm);padding:1rem}.kp-ann-card--expired{opacity:.5}.kp-ann-card-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.625rem}.kp-ann-card-title{font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:800;text-transform:uppercase;color:var(--kp-text);flex:1}.kp-ann-card-body{font-size:.85rem;color:var(--kp-text-muted);line-height:1.6}.kp-ann-meta{display:flex;gap:.75rem;align-items:center;margin-top:.5rem}.kp-ann-author{color:var(--kp-text-dim)}.kp-ann-author,.kp-ann-days{font-family:Space Mono,monospace;font-size:.62rem}.kp-ann-days{color:var(--kp-green)}.kp-ann-days--warn{color:var(--kp-orange)}.kp-ann-delete{margin-left:auto}.kp-obs-card{background:var(--kp-surface);border:1px solid var(--kp-border);border-radius:var(--kp-radius-card);overflow:hidden}.kp-obs-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;cursor:pointer;transition:background .12s}.kp-obs-header:hover{background:rgba(59,158,255,.12)}.kp-obs-info{flex:1;min-width:0}.kp-obs-name{font-family:Barlow Condensed,sans-serif;font-size:1rem;font-weight:800;text-transform:uppercase;color:var(--kp-text)}.kp-obs-email{font-size:.75rem;color:var(--kp-text-muted)}.kp-obs-quick-stats{display:flex;gap:1rem}.kp-obs-stat{text-align:center}.kp-obs-stat-val{font-family:Barlow Condensed,sans-serif;font-size:1.25rem;font-weight:800;color:var(--kp-primary);line-height:1}.kp-obs-stat-label{font-family:Space Mono,monospace;font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kp-text-dim)}.kp-obs-body{padding:1.25rem;border-top:1px solid var(--kp-border)}.kp-obs-section{margin-bottom:1.5rem}.kp-obs-section:last-child{margin-bottom:0}.kp-obs-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.kp-obs-detail-item{display:flex;flex-direction:column;gap:.125rem}.kp-obs-detail-label{font-family:Space Mono,monospace;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kp-text-dim)}.kp-obs-detail-value{font-size:.82rem;color:var(--kp-text);font-weight:500}.kp-monitor-row{display:flex;align-items:center;gap:.75rem;padding:.625rem 0;border-bottom:1px solid var(--kp-border)}.kp-monitor-row:last-child{border-bottom:none}.kp-monitor-name{font-family:Barlow Condensed,sans-serif;font-size:.95rem;font-weight:700;text-transform:uppercase;color:var(--kp-text);flex:1}.kp-monitor-label{font-family:Space Mono,monospace;font-size:.65rem;color:var(--kp-text-muted)}.kp-sam-avatar{width:72px;height:72px;border-radius:1.25rem;background:linear-gradient(135deg,#9b5de5,#3b9eff);border:2px solid rgba(155,93,229,.5);display:flex;align-items:center;justify-content:center;margin-bottom:1rem;box-shadow:0 6px 24px rgba(155,93,229,.35)}.kp-sam-avatar img{width:52px;height:52px;object-fit:contain}.kp-quick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.625rem;margin-top:1rem}.kp-quick-pill{background:var(--kp-surface2);border:1.5px solid var(--kp-border2);border-radius:var(--kp-radius-sm);padding:.75rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s;font-size:.82rem;color:var(--kp-text-mid);text-align:left;font-weight:500}.kp-quick-pill:hover{background:rgba(59,158,255,.18);border-color:#3b9eff;color:#3b9eff}.kp-obs-card-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;cursor:pointer;transition:background .12s}.kp-obs-card-header:hover{background:var(--kp-primary-dim)}.kp-obs-card-body{padding:1.25rem;border-top:1px solid var(--kp-border)}.kp-obs-card--open{border-color:var(--kp-primary-mid)}.kp-obs-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--kp-primary) 0,var(--kp-secondary) 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:Barlow Condensed,sans-serif;font-weight:800;font-size:1.1rem;color:#fff;letter-spacing:.02em}.kp-file-card-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;cursor:pointer;transition:background .12s}.kp-file-card-header:hover{background:var(--kp-primary-dim)}.kp-file-card-body{padding:.875rem 1rem;border-top:1px solid var(--kp-border)}.kp-file-card--open{border-color:var(--kp-primary-mid)}.kp-ann-card--inbox{border-color:rgba(0,212,232,.25)}@media (max-width:960px){.kp-grid-3{grid-template-columns:1fr 1fr}.kp-content{padding:1.25rem 1rem}.kp-hero{padding:2rem 1rem}.kp-hero--compact{padding:1.5rem 1rem}.kp-stat-sep{display:none}.kp-stat{padding:.75rem 1.25rem}.kp-obs-detail-grid{grid-template-columns:1fr}}@media (max-width:580px){.kp-grid-2,.kp-grid-3,.kp-grid-auto,.kp-grid-auto-sm{grid-template-columns:1fr}.kp-hero-title{font-size:1.6rem}.kp-hero-btns{flex-direction:column}.kp-btn{width:100%;justify-content:center}.kp-obs-quick-stats{display:none}.kp-stats{flex-direction:column}}@media (max-width:640px){.kp-hero--compact{padding:.75rem!important}.kp-hero--compact .kp-hero-inner{gap:.75rem}.chat-hero-status,.kp-hero--compact .kp-hero-sub,.sam-voice-toggle{display:none}.chat-hero-controls{width:100%;justify-content:flex-start;flex-wrap:nowrap}.sam-avatar-select{flex:1;max-width:none}}.kp-dash-stats{flex-wrap:wrap;gap:0;margin-top:1.5rem;background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.12);border-radius:var(--kp-radius-lg);overflow:hidden;width:fit-content;max-width:100%}.kp-dash-stat,.kp-dash-stats{display:flex;align-items:center}.kp-dash-stat{flex-direction:column;padding:.75rem 1.5rem;text-align:center;gap:.2rem}.kp-dash-stat-num{font-family:Barlow Condensed,sans-serif;font-size:2rem;font-weight:900;line-height:1}.kp-dash-stat-label{font-family:Space Mono,monospace;font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:hsla(0,0%,100%,.55)}.kp-dash-stat-sep{width:1px;height:2.5rem;background:hsla(0,0%,100%,.15);flex-shrink:0}.kp-dash-nav-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:2rem}@media (max-width:480px){.kp-dash-stats{width:100%}.kp-dash-stat{flex:1;padding:.65rem .75rem}.kp-dash-stat-num{font-size:1.5rem}.kp-dash-stat-sep{display:none}.kp-dash-nav-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.kp-dash-card{padding:.75rem;flex-direction:column;align-items:flex-start;gap:.4rem}.kp-dash-card-arrow,.kp-dash-card-desc{display:none}.kp-dash-card-icon{width:28px;height:28px;border-radius:8px}.kp-dash-card-icon svg{width:16px;height:16px}.kp-dash-card-title{font-size:.8rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}