*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}.layout{display:flex;height:100vh;max-height:100vh;overflow:hidden;position:relative;background:radial-gradient(circle at 10% 20%,rgba(59,130,246,.18),transparent 35%),radial-gradient(circle at 90% 15%,rgba(139,92,246,.18),transparent 40%),radial-gradient(circle at 50% 80%,rgba(20,184,166,.15),transparent 45%),linear-gradient(135deg,#edf2f7,#e2e8f0)}[data-theme=dark] .layout{background:radial-gradient(circle at 15% 20%,rgba(59,130,246,.22),transparent 40%),radial-gradient(circle at 85% 25%,rgba(139,92,246,.24),transparent 40%),radial-gradient(circle at 50% 75%,rgba(14,165,233,.18),transparent 45%),linear-gradient(135deg,#060a12,#0f172a)}.layout:before{content:"";position:fixed;top:-12px;left:-12px;right:-12px;bottom:-12px;background-image:url(/school_bg.jpg);background-size:cover;background-position:center 30%;background-repeat:no-repeat;filter:blur(10px);transform:scale(1.03);opacity:.28;pointer-events:none;z-index:0}[data-theme=dark] .layout:before{opacity:.22;filter:blur(12px)}.sidebar{width:270px;background:var(--glass-bg);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;flex-shrink:0;height:100vh;max-height:100vh;overflow:hidden;position:relative;z-index:50;backdrop-filter:blur(28px) saturate(190%);-webkit-backdrop-filter:blur(28px) saturate(190%);box-shadow:4px 0 24px #0000000a;transition:transform .28s cubic-bezier(.16,1,.3,1)}.mobile-menu-btn{display:none;align-items:center;justify-content:center;background:var(--glass-bg-subtle);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:8px;cursor:pointer;color:var(--text-primary);flex-shrink:0;min-width:38px;min-height:38px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .15s ease}.mobile-menu-btn:hover{background-color:var(--bg-secondary)}.sidebar-close-btn{display:none;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);padding:6px;cursor:pointer;color:var(--text-muted);margin-left:auto;transition:color .15s ease}.sidebar-close-btn:hover{color:var(--text-primary)}.sidebar-overlay{display:none}.brand{padding:20px 24px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--glass-border);flex-shrink:0}.brand h1{font-size:17px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.brand span{font-size:11px;color:var(--primary);text-transform:uppercase;font-weight:700;letter-spacing:.05em;display:block}.navigation{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;min-height:0}.navitem{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent;background:transparent;width:100%;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1)}.navitem:hover{background-color:var(--glass-bg-subtle);border-color:var(--glass-border);color:var(--text-primary);transform:translate(2px)}.navitem.active{background:var(--primary-light);color:var(--primary);border-color:#2563eb40;box-shadow:0 4px 14px #2563eb1f;font-weight:600}.main{flex:1;display:flex;flex-direction:column;height:100vh;max-height:100vh;min-width:0;overflow-y:auto;position:relative;z-index:1}.header{height:70px;background:var(--glass-bg);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:40;flex-shrink:0;backdrop-filter:blur(28px) saturate(190%);-webkit-backdrop-filter:blur(28px) saturate(190%);box-shadow:0 4px 20px #00000008}.content{padding:32px;flex:1}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--glass-shadow);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.card:hover{border-color:var(--glass-border-highlight)}.grid{display:grid;gap:24px}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{display:flex;align-items:center;gap:16px}.stats-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.stats-value{font-size:26px;font-weight:700;color:var(--text-primary);line-height:1.2}.stats-label{font-size:13px;color:var(--text-secondary);font-weight:500}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.button-primary{background:linear-gradient(135deg,#2563ebeb,#1d4ed8f2);color:#fff;border-color:#ffffff40;box-shadow:0 4px 16px #2563eb4d,inset 0 1px 1px #fff6}.button-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 20px #2563eb6b,inset 0 1px 1px #ffffff80;transform:translateY(-1px)}.button-danger{background:linear-gradient(135deg,#dc2626eb,#b91c1cf2);color:#fff;border-color:#fff3;box-shadow:0 4px 16px #dc26264d,inset 0 1px 1px #ffffff4d}.button-danger:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #dc262673;transform:translateY(-1px)}.button-success{background:linear-gradient(135deg,#16a34aeb,#15803df2);color:#fff;border-color:#fff3;box-shadow:0 4px 16px #16a34a4d,inset 0 1px 1px #ffffff4d}.button-success:hover{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 6px 20px #16a34a73;transform:translateY(-1px)}.button-secondary{background:var(--glass-bg-subtle);color:var(--text-primary);border-color:var(--border-subtle);box-shadow:var(--shadow-sm)}.button-secondary:hover{background:var(--bg-secondary);border-color:var(--glass-border);transform:translateY(-1px)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;border-radius:var(--radius-full);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid transparent}.badge-success{background-color:var(--success-light);color:var(--success);border-color:#22c55e40}.badge-danger{background-color:var(--danger-light);color:var(--danger);border-color:#ef444440}.badge-primary{background-color:var(--primary-light);color:var(--primary);border-color:#3b82f640}.input{width:100%;padding:10px 14px;font-size:14px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--glass-bg-subtle);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-primary);outline:none;transition:all .2s ease}.input:focus{border-color:var(--primary);background:var(--bg-surface);box-shadow:0 0 0 3px var(--primary-light),0 2px 10px #2563eb1a}.table-wrapper{overflow-x:auto}.table{width:100%;border-collapse:collapse;text-align:left}.table th{padding:14px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);background-color:var(--bg-secondary);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.table td{padding:14px 16px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-subtle)}.table tr:hover td{background-color:var(--bg-secondary)}.avatar{width:40px;height:40px;border-radius:var(--radius-full);object-fit:cover;background-color:var(--bg-secondary);border:1px solid var(--glass-border)}.initials-avatar{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3a8ad9,#2563ebe6);color:#fff;font-weight:700;font-size:13px;letter-spacing:.04em;-webkit-user-select:none;user-select:none;flex-shrink:0;border:1.5px solid rgba(255,255,255,.3);box-shadow:0 2px 8px #2563eb40}.avatar-lg{width:120px;height:150px;border-radius:var(--radius-md);object-fit:cover;border:2px solid var(--glass-border);box-shadow:var(--glass-shadow)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:var(--glass-bg);border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg);backdrop-filter:blur(36px) saturate(200%);-webkit-backdrop-filter:blur(36px) saturate(200%);padding:28px}.modal-lg{max-width:850px}.emergency-ring{animation:pulse-ring 1.5s infinite}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 var(--danger-ring)}70%{box-shadow:0 0 0 16px #dc262600}to{box-shadow:0 0 #dc262600}}.voice-wave{animation:wave 1.2s infinite ease-in-out}@keyframes wave{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.toasts{position:fixed;top:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:9999;max-width:420px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:var(--radius-md);background-color:var(--bg-surface);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);color:var(--text-primary);font-size:14px;font-weight:500;animation:toast-slide-in .25s cubic-bezier(.16,1,.3,1)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.toast-success{border-left:4px solid var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast-error .toast-icon{color:var(--danger)}.toast-warning{border-left:4px solid var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-info{border-left:4px solid var(--primary)}.toast-info .toast-icon{color:var(--primary)}.toast-message{flex:1;line-height:1.4}.toast-close{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;transition:color .15s ease}.toast-close:hover{color:var(--text-primary)}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.input-error{border-color:var(--danger)!important}.error-text{color:var(--danger);font-size:12px;margin-top:4px;font-weight:500;display:flex;align-items:center;gap:4px}.gemini-gradient-text{background:linear-gradient(90deg,#4285f4,#9b72cb,#d96570);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.gemini-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px;transition:all .2s ease}.gemini-card:hover{border-color:#4285f466;transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.gemini-pill{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:28px;box-shadow:0 4px 20px #0000000f;transition:border-color .2s ease,box-shadow .2s ease}.gemini-pill:focus-within{border-color:#4285f480;box-shadow:0 6px 24px #4285f41f}.gemini-action{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .15s ease,color .15s ease}.gemini-action:hover{background-color:var(--bg-secondary);color:var(--text-primary)}@media(max-width:1200px){.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1024px){.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:85vw;height:100vh;z-index:1000;transform:translate(-100%);box-shadow:none}.sidebar.open{transform:translate(0);box-shadow:0 0 50px #00000073}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;transition:opacity .25s ease}.sidebar-overlay.open{opacity:1;pointer-events:auto}.mobile-menu-btn,.sidebar-close-btn{display:inline-flex}.header{height:64px;padding:0 20px}.content{padding:20px 16px}.grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){body{font-size:14px}.layout:before{filter:blur(8px);opacity:.25}.header{height:58px;padding:0 12px;gap:8px}.header-title{font-size:15px!important;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{gap:6px!important}.content{padding:14px 10px}.card{padding:16px 12px;border-radius:var(--radius-md)}.grid{gap:12px}.grid-cols-4,.grid-cols-3,.grid-cols-2{grid-template-columns:1fr!important}.grid>[style*=gridColumn],.grid>[style*=grid-column],.grid>[style*="span 2"],.grid>[style*="span 3"],.grid>[style*="span 4"]{grid-column:span 1!important}.stats{gap:12px}.stats-icon{width:44px;height:44px}.stats-value{font-size:20px}.stats-label{font-size:12px}.modal-backdrop{padding:8px;align-items:flex-end}.modal{padding:18px 14px;max-height:92vh;border-radius:18px 18px 0 0;width:100%}.modal-lg{max-width:100%}.toasts{top:10px;left:10px;right:10px;max-width:none}.toast{padding:10px 14px;font-size:13px}.table-wrapper{margin-left:-2px;margin-right:-2px}.table th,.table td{padding:10px 8px;font-size:13px;white-space:nowrap}.map-wrapper{min-height:340px!important}.map-inner{height:340px!important}.knowledge-chat-card{height:480px!important}.chat-page-container{height:calc(100vh - 80px)!important;min-height:0!important}}@media(max-width:480px){.header{padding:0 10px;height:56px}.header-title{font-size:14px!important;max-width:130px}.header-admin-badge{display:none!important}.socket-label,.alert-label{display:none}.content{padding:10px 8px}.card{padding:14px 10px}.button{font-size:13px;padding:8px 12px;min-height:40px}.input{font-size:16px;padding:9px 12px;min-height:40px}.table th,.table td{padding:8px 6px;font-size:12px}.modal{padding:14px 10px}.login-card{padding:22px 16px!important}}@media(max-width:360px){.header-title{font-size:13px!important;max-width:100px}.sidebar{width:250px}.content{padding:8px 6px}.card{padding:12px 8px}}.operations-page{display:grid;gap:20px}.operations-page .card,.exam-page .card{padding:24px}.operations-page h2,.exam-page h1{margin-bottom:12px}.operations-page p{margin:10px 0;line-height:1.6}.operations-page label,.exam-page label{display:grid;gap:6px;margin:8px 0}.operations-page input:not([type=checkbox]),.operations-page select,.operations-page textarea,.exam-page input:not([type=radio]){width:100%;padding:10px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary, white);color:var(--text-primary)}.operations-page button,.exam-page button{padding:10px 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--primary, #2563eb);color:#fff;cursor:pointer}.operations-page button:disabled,.exam-page button:disabled{opacity:.5;cursor:not-allowed}.operations-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end;margin-bottom:24px}.operations-wide{grid-column:1 / -1}.operations-actions,.operations-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:12px 0}.operations-row{border-bottom:1px solid var(--border-color);padding:12px 0}.operations-row>:first-child{flex:1}.operations-actions label,.operations-row label{display:flex;align-items:center;gap:6px}.operations-message{border-top:1px solid var(--border-color);padding:16px 0}.operations-message p,.operations-message pre{white-space:pre-wrap;overflow-wrap:anywhere}.operations-page fieldset,.exam-page fieldset{padding:18px;margin:16px 0;border:1px solid var(--border-color);border-radius:12px}.exam-page{max-width:900px;margin:24px auto;padding:16px}.exam-questions{-webkit-user-select:none;user-select:none}.exam-questions label{display:flex;align-items:center;padding:12px;gap:10px}.error-message{color:#b91c1c;margin:12px 0}.director-center-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.director-center-heading h1{font-size:25px;margin:0 0 7px}.director-center-heading p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.6}.ai-service-state{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;padding:10px 14px;border:1px solid var(--border-color);border-radius:12px;max-width:260px;background:var(--bg-surface)}.ai-service-state>span{width:8px;height:8px;border-radius:50%;background:#d97706;flex-shrink:0}.ai-service-state.ready>span{background:#16a34a}.ai-service-state small{width:100%;padding-left:16px;color:var(--text-muted)}.director-center-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:20px;align-items:start}.director-conversation{height:calc(100vh - 230px);min-height:620px;min-width:0}.director-workspace{min-width:0;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-surface);overflow:hidden}.workspace-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-color);padding:10px;flex-wrap:wrap}.workspace-tabs button{border:0;background:transparent;color:var(--text-muted);padding:10px 12px;border-radius:9px;cursor:pointer;font-weight:600}.workspace-tabs button.active{background:var(--bg-secondary);color:var(--primary)}.workspace-tabs button span{border-radius:8px;background:var(--primary);color:#fff;padding:2px 6px;margin-left:4px}.workspace-body{padding:16px;max-height:calc(100vh - 260px);min-height:560px;overflow-y:auto}.workspace-body .card{box-shadow:none;padding:16px;border:1px solid var(--border-color)}.workspace-body .operations-form{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-body .operations-page h2{font-size:18px}.workspace-body .operations-page pre{white-space:pre-wrap;overflow-wrap:anywhere}.sidebar-directory{margin-top:20px;border-top:1px solid var(--border-color);padding-top:12px}.sidebar-directory summary{padding:12px;font-size:12px;color:var(--text-muted);cursor:pointer}@media(max-width:1150px){.director-center-grid{grid-template-columns:1fr}.workspace-body{max-height:none}.director-conversation{height:650px}.director-center-heading{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.workspace-body .operations-form{grid-template-columns:1fr}.director-center-heading h1{font-size:22px}.director-conversation{height:600px;min-height:560px}.workspace-tabs button{font-size:12px;padding:8px}.workspace-body{padding:10px}}.class-timetable{padding:26px!important}.timetable-header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.section-eyebrow{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:1.3px;color:var(--primary);margin-bottom:8px}.timetable-header h2{font-size:24px}.timetable-header p{color:var(--text-muted);font-size:13px;margin-top:5px}.week-control{display:flex;align-items:center;gap:8px;white-space:nowrap}.week-control button,.lesson-close{display:inline-flex;align-items:center;justify-content:center;padding:9px;border:1px solid var(--border-subtle);background:var(--bg-surface-elevated);border-radius:10px;color:var(--text-secondary);cursor:pointer}.week-control span{font-size:12px;font-weight:700}.timetable-scroll{overflow-x:auto;padding-bottom:8px}.timetable-week{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));min-width:1050px;gap:10px}.timetable-day{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:14px;min-height:210px;padding:10px}.timetable-day.is-today{border-color:var(--primary);background:var(--primary-light)}.timetable-day header{display:flex;flex-direction:column;gap:3px;padding:3px 4px 12px;font-size:12px}.timetable-day header span{color:var(--text-muted);font-size:10px}.lesson-card{display:flex;flex-direction:column;text-align:left;gap:9px;background:var(--bg-surface-elevated);border:1px solid var(--glass-border);border-radius:12px;padding:13px 10px;width:100%;margin-bottom:10px;color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s}.lesson-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary)}.lesson-card strong{font-size:13px}.lesson-time{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-muted)}.lesson-tutor{font-size:11px;line-height:1.5;color:var(--text-secondary)}.lesson-status{display:flex;align-items:center;gap:4px;font-size:10px;padding:5px 6px;border-radius:6px;background:var(--bg-secondary);color:var(--text-muted)}.lesson-status.complete{background:var(--success-light);color:var(--success)}.lesson-status.partial{background:var(--warning-light);color:var(--warning)}.no-lessons{color:var(--text-muted);font-size:11px;text-align:center;padding:24px 4px}.lesson-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0f172a73;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:flex;justify-content:center;align-items:center;padding:20px}.lesson-detail{position:relative;max-width:540px;width:100%;padding:30px!important;max-height:90vh;overflow:auto;background:var(--bg-surface-elevated)}.lesson-close{position:absolute;right:16px;top:16px}.lesson-detail h2{font-size:26px;margin:16px 0 8px}.lesson-meta{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-muted)}.lesson-teacher{display:flex;align-items:center;gap:14px;padding:20px 0;margin:18px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.lesson-teacher img,.teacher-initials{width:58px;height:58px;object-fit:cover;border-radius:16px}.teacher-initials{display:grid;place-items:center;background:var(--primary-light);color:var(--primary);font-size:19px;font-weight:800}.lesson-teacher small{font-size:11px;color:var(--text-muted)}.lesson-teacher h3{font-size:17px;margin:4px 0}.lesson-teacher a{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--primary)}.lesson-detail>p{font-size:13px;line-height:1.7;margin:12px 0}.lesson-attendance-summary{display:flex;justify-content:space-between;gap:10px;padding:16px;border-radius:12px;background:var(--bg-secondary);margin:20px 0 12px;font-size:12px}.lesson-attendance-summary.complete{color:var(--success);background:var(--success-light)}.lesson-attendance-summary.partial{color:var(--warning);background:var(--warning-light)}.lesson-counts{display:flex;gap:15px;font-size:11px;margin:12px 0}.lesson-pupil-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-subtle);font-size:12px}.lesson-note{font-size:11px!important;color:var(--text-muted)}.operations-page button{border-radius:11px;box-shadow:var(--shadow-sm);font-weight:600;font-family:inherit;font-size:12px;transition:background .15s}.operations-page .operations-actions>button{background:var(--bg-surface-elevated);color:var(--text-secondary);border:1px solid var(--border-subtle)}.operations-page .operations-actions>button.active{background:var(--primary-light);color:var(--primary);box-shadow:none}.operations-page input:not([type=checkbox]),.operations-page select,.operations-page textarea{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:11px;min-height:42px;font-family:inherit;font-size:13px;outline:none}.operations-page input:focus,.operations-page select:focus,.operations-page textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.operations-page label{font-size:12px;color:var(--text-secondary);font-weight:600}.operations-page h2{font-size:21px;letter-spacing:-.4px}.operations-page p{color:var(--text-muted);font-size:13px}.director-workspace{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);border:1px solid var(--glass-border);border-radius:18px}.workspace-body .card{border:0;background:transparent;box-shadow:none;padding:12px}.workspace-tabs{padding:14px;background:var(--glass-bg-subtle)}.director-center-heading{padding:6px 0}.workspace-body details{background:var(--bg-secondary);padding:12px;border-radius:12px;margin:16px 0}.workspace-body summary{font-size:12px;color:var(--text-secondary);cursor:pointer}.workspace-body .operations-message{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:14px;padding:18px}.workspace-body .operations-message li{font-size:13px;padding:8px 0;line-height:1.6}.workspace-body .operations-message ol{padding-left:18px}.workspace-body{min-height:480px}.director-center-grid{gap:24px}@media(max-width:800px){.timetable-header{align-items:flex-start;flex-direction:column}.class-timetable{padding:18px!important}.lesson-detail{padding:24px!important}.lesson-attendance-summary{flex-direction:column}.week-control{flex-wrap:wrap}}.main,.content,.content>div,.card,.director-center,.operations-page,.operations-form>*{min-width:0}.content{overflow-x:hidden}.card{overflow-wrap:anywhere}button,input,select,textarea{font:inherit}button{touch-action:manipulation}input,select,textarea{max-width:100%}fieldset{min-width:0}img{max-width:100%}button svg{flex-shrink:0}.operations-page [type=checkbox]{width:16px;height:16px;flex-shrink:0}.operations-row>div,.operations-page label{min-width:0}.operations-page input[type=file]{font-size:12px;padding:10px}.operations-page input[type=file]::file-selector-button{border:0;border-radius:7px;padding:7px 10px;margin-right:8px;background:var(--primary-light);color:var(--primary);font:inherit}.operations-page button{white-space:normal;line-height:1.5}.director-conversation .chat-page-container{height:100%!important;min-height:0!important;overflow:hidden}.director-conversation .chat-page-container>div{min-height:0}.director-conversation .wrapper{min-width:0}.workspace-body,.lesson-detail{scrollbar-gutter:stable}.workspace-tabs button,.operations-actions>button{min-height:40px}.lesson-teacher>div{min-width:0}.lesson-teacher img,.teacher-initials{flex-shrink:0}.lesson-detail h2{padding-right:25px}.lesson-pupil-list>div{align-items:flex-start}.lesson-pupil-list strong{flex-shrink:0}.timetable-day>div{min-width:0}.lesson-card{overflow-wrap:anywhere}.header,.header-actions{flex-shrink:0}.header-title{min-width:0}@media(max-width:768px){.director-conversation{height:620px;min-height:0}.director-center-grid{gap:18px}.workspace-body{min-height:0;max-height:none}.director-center-heading{gap:12px}.operations-form{grid-template-columns:1fr}.operations-page .card{padding:18px 14px}.operations-page fieldset{padding:14px}.operations-actions{gap:8px}.operations-row{gap:10px}.operations-row>:first-child{flex-basis:100%}.exam-page{margin:0 auto;padding:12px}.exam-page .card{padding:20px 14px}.lesson-modal-backdrop{padding:12px}.lesson-detail{max-height:calc(100dvh - 24px)}.lesson-counts{flex-wrap:wrap}.content div[style*="grid-template-columns: 1.2fr 0.8fr"],.content div[style*="grid-template-columns: 1fr 1fr"],.content div[style*="grid-template-columns: repeat(auto-fit, minmax(200px"]{grid-template-columns:1fr!important}.director-conversation .wrapper{padding-left:12px!important;padding-right:12px!important}.chat-page-container .gemini-pill{padding:10px 12px!important}.workspace-tabs{gap:4px;padding:9px}.workspace-tabs button{flex:1;padding:8px 5px;font-size:11px}.week-control button{min-height:40px}.lesson-teacher h3{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}:root{color-scheme:light}[data-theme=dark]{color-scheme:dark}.unified-conversation{height:calc(100dvh - 220px);min-height:640px;max-width:1100px;margin:0 auto}.chat-tools{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px}.chat-tools button{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-surface);color:var(--text-secondary);font:inherit;font-size:12px;cursor:pointer}.chat-workflow-card{flex-shrink:0;border:1px solid var(--border-color);border-radius:18px;background:var(--bg-surface);padding:18px;overflow-wrap:anywhere;min-width:0}.chat-workflow-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.chat-workflow-card>header button{background:transparent;border:0;color:var(--text-primary);cursor:pointer}.chat-memory-body{width:100%;min-width:0}.chat-workflow-card .operations-page{padding:0}.chat-workflow-card .card{box-shadow:none}.chat-workflow-card .operations-form{grid-template-columns:1fr}.chat-workflow-card input,.chat-workflow-card select{max-width:100%}@media(max-width:768px){.unified-conversation{height:calc(100dvh - 170px);min-height:600px}.chat-tools{padding:10px 12px}.chat-tools button{font-size:11px;padding:8px}.chat-workflow-card{padding:12px}.chat-memory-body h3{font-size:15px!important}}.inline-memory-form{display:flex;gap:8px;flex-wrap:wrap}.inline-memory-form input{flex:1;min-width:180px}.inline-memory-row{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-top:1px solid var(--border-subtle)}.inline-memory-row p{flex:1;font-size:13px;line-height:1.6;min-width:0}.inline-memory-row button{flex-shrink:0;color:var(--danger)}@media(max-width:768px){.chat-tools button{padding:7px 8px;font-size:11px;gap:5px}.unified-conversation{min-height:520px;height:calc(100dvh - 230px)}.inline-memory-form input{min-width:100%;width:100%}}.chat-workflow-card details{margin:12px 0;padding:12px;border-radius:12px;background:var(--bg-secondary)}.chat-workflow-card summary{cursor:pointer;font-size:12px;font-weight:600}.chat-workflow-card .operations-page h2{font-size:18px;margin:14px 0}.chat-workflow-card .operations-page h3{font-size:16px}.chat-workflow-card .operations-page pre{white-space:pre-wrap;overflow-wrap:anywhere}.chat-workflow-card .operations-actions{flex-wrap:wrap}.pdf-dropzone{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;border:2px dashed var(--border-color);border-radius:16px;padding:28px 16px;margin:16px 0;background:var(--bg-secondary)}.pdf-dropzone small{font-size:11px;color:var(--text-muted);text-align:center}.pdf-dropzone button,.primary-action{background:var(--primary)!important;color:#fff!important;border:1px solid var(--primary)!important}.pdf-dropzone.busy{opacity:.7}.workflow-progress,.workflow-error,.workflow-success{font-size:13px;padding:14px;border-radius:12px;margin:12px 0;line-height:1.6}.workflow-progress{background:var(--primary-light);color:var(--primary)}.workflow-error{background:var(--warning-light);color:var(--text-primary);border:1px solid var(--border-color)}.workflow-error button{margin:8px 0}.workflow-success{background:var(--success-light);color:var(--text-primary);display:flex;flex-direction:column;gap:14px}.proposal-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}.proposal-actions button{padding:10px 14px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer}.proposal-actions button:disabled{opacity:.5;cursor:default}.pdf-chat-flow>.operations-message{padding:0!important;border:0!important;background:transparent!important}.draft-editor fieldset{padding:16px;border:1px solid var(--border-color);border-radius:12px;margin:14px 0}.draft-editor legend{font-size:12px;font-weight:700}.send-text-preview{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font-size:14px;padding:16px;margin-top:10px;background:var(--bg-secondary);border-radius:12px;font-weight:400;color:var(--text-primary)}.recipient-summary{font-size:12px;color:var(--text-secondary);margin:12px 0}.attendance-steps{display:flex;gap:12px;padding:0;list-style:none;flex-basis:100%;font-size:12px;color:var(--text-muted)}.attendance-steps li{padding:8px 12px;background:var(--bg-secondary);border-radius:10px}.attendance-steps .active{background:var(--primary-light);color:var(--primary);font-weight:700}.attendance-steps .done{color:var(--success)}.timetable-week.today-view{min-width:0;display:block}.today-view .timetable-day>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.today-view .lesson-card{padding:18px;margin:0}.week-control button.active{color:var(--primary);background:var(--primary-light);border-color:var(--primary)}.director-center-heading{margin-bottom:12px!important}.director-center-heading p{font-size:13px}.unified-conversation{height:calc(100dvh - 180px);min-height:560px}.chat-page-container .wrapper:has(>.gemini-pill){padding-top:8px!important}.chat-workflow-card .operations-form{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:768px){.unified-conversation{height:calc(100dvh - 210px);min-height:480px}.director-center-heading{flex-direction:row!important;align-items:center!important;gap:8px}.director-center-heading>div:first-child{flex:1}.ai-service-state{min-width:0!important;font-size:10px!important;padding:10px!important}.ai-service-state small{display:none}.director-center-heading p{font-size:11px}.chat-workflow-card .operations-form{grid-template-columns:1fr}.timetable-header,.week-control{flex-wrap:wrap}.today-view .timetable-day>div{grid-template-columns:1fr}.proposal-actions button{flex:1}.attendance-steps{gap:6px}.attendance-steps li{padding:7px 8px}.pdf-dropzone{padding:20px 12px}}.pdf-source-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.pdf-source-bar small{font-size:11px;color:var(--text-muted);overflow-wrap:anywhere}.pdf-source-bar button{flex-shrink:0}@media(max-width:480px){.proposal-actions button{flex:1 1 110px;white-space:nowrap;min-height:44px}.proposal-actions .primary-action{flex-basis:100%;order:-1}}.evidence-details{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:12px;margin:20px 0}.evidence-details dt{color:var(--text-muted)}.evidence-details dd{margin:0;overflow-wrap:anywhere}.service-health{position:relative;font-size:12px}.service-health summary{cursor:pointer}.service-health>div{position:absolute;top:28px;left:0;width:min(300px,75vw);padding:16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;z-index:30;box-shadow:var(--shadow-md)}.service-health p{margin:8px 0;overflow-wrap:anywhere}.service-health button{padding:8px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);cursor:pointer}.service-health small,.answer-sources small{color:var(--text-muted)}.answer-sources{margin:10px 0;padding:12px;border:1px solid var(--border-color);border-radius:10px;font-size:12px}.answer-sources summary{cursor:pointer}.answer-sources ul{padding-left:20px;margin:8px 0}:root{color-scheme:light;--font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--warning: #b77916;--warning-light: #fff4dd;--danger: #c93f46;--danger-light: #ffedef;--danger-ring: #c93f4640;--radius-full: 9999px;--bg-primary: #f7f8fa;--bg-surface: #ffffff;--bg-surface-elevated: #ffffff;--bg-secondary: #f4f6f8;--bg-tertiary: #e9edf1;--text-primary: #18212c;--text-secondary: #4d5868;--text-muted: #7b8798;--text-tertiary: #7b8798;--border-color: #e7ebf0;--border-subtle: #edf0f3;--primary: #18745c;--primary-hover: #115b47;--primary-light: #e5f3ed;--success: #18745c;--success-light: #e5f3ed;--glass-bg: var(--bg-surface);--glass-bg-subtle: var(--bg-secondary);--glass-border: var(--border-color);--glass-border-highlight: #d5dce3;--glass-blur: none;--glass-shadow: none;--glass-shadow-lg: 0 16px 48px #18212c14;--shadow-sm: 0 1px 3px #18212c05;--shadow-md: 0 6px 24px #18212c0a;--shadow-lg: 0 16px 48px #18212c14;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 14px}[data-theme=dark]{color-scheme:dark;--danger: #f28389;--danger-light: #42272c;--warning: #e6b55b;--warning-light: #3b3223;--bg-primary: #111917;--bg-surface: #19231f;--bg-surface-elevated: #202d27;--bg-secondary: #202d27;--bg-tertiary: #2b3c33;--text-primary: #eef4f0;--text-secondary: #becdc4;--text-muted: #95aa9e;--text-tertiary: #95aa9e;--border-color: #304138;--border-subtle: #26372e;--primary: #70c8a6;--primary-hover: #91dabb;--primary-light: #263e32;--success: #70c8a6;--success-light: #263e32;--glass-bg: var(--bg-surface);--glass-bg-subtle: var(--bg-secondary);--glass-border: var(--border-color);--glass-border-highlight: #405b4b;--glass-shadow: none;--glass-shadow-lg: 0 16px 48px #0004}.layout,[data-theme=dark] .layout{background:var(--bg-primary);height:100dvh;max-height:100dvh}.layout:before{display:none}.sidebar{width:248px;background:var(--bg-surface);border-right:1px solid var(--border-color);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;height:100dvh;max-height:100dvh}.brand{padding:28px 22px 22px;gap:12px}.brand .brand-mark{color:var(--primary);display:flex}.brand-copy{min-width:0;flex:1}.brand h1{color:var(--text-primary);font-size:25px;letter-spacing:-.8px;font-weight:800}.brand .brand-copy>span{color:var(--text-muted);font-size:11px;font-weight:400;letter-spacing:0;text-transform:none;margin-top:2px}.navigation{padding:10px 12px 16px;gap:4px}.navitem{min-height:44px;padding:11px 14px;font-size:13px;border-radius:10px}.navitem:hover{transform:none;background:var(--bg-secondary);border-color:transparent}.navitem.active{box-shadow:none;border-color:transparent;background:var(--primary-light);color:var(--primary)}.nav-section-label{padding:8px 14px 6px;color:var(--text-muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.nav-more{margin-top:12px;border-top:1px solid var(--border-subtle);padding-top:8px}.nav-more summary{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:8px 14px;color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;list-style:none;border-radius:9px}.nav-more summary::-webkit-details-marker{display:none}.nav-more summary:hover{color:var(--text-primary);background:var(--bg-secondary)}.nav-more summary svg{transition:transform .18s ease}.nav-more[open] summary svg{transform:rotate(180deg)}.nav-more-items{display:grid;gap:3px;margin-top:3px}.nav-more-items .navitem{min-height:39px;padding-top:8px;padding-bottom:8px}.sidebar-profile{display:flex;align-items:center;gap:10px;padding:18px 16px;border-top:1px solid var(--border-color)}.initials-avatar{background:var(--primary-light);color:var(--primary);box-shadow:none;border:none}.profile-copy{min-width:0;flex:1}.profile-copy strong,.profile-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy strong{font-size:12px;font-weight:600}.profile-copy span{font-size:11px;color:var(--text-muted);margin-top:3px}.profile-logout,.theme-toggle,.header-alert-button{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:9px;padding:9px;cursor:pointer;min-height:36px}.profile-logout{border:0;padding:7px}.profile-logout:hover{color:var(--danger);background:var(--danger-light)}.main{height:100dvh;max-height:100dvh}.header{height:100px;padding:20px 32px;background:var(--bg-primary);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:0}.header-heading{display:flex;align-items:center;gap:12px;min-width:0}.header-title{font-size:28px;line-height:1.25;letter-spacing:-.9px;font-weight:700;margin:0}.header-subtitle{color:var(--text-muted);margin-top:7px;font-size:12px}.header-actions{display:flex;align-items:center;gap:14px}.header-date{display:flex;align-items:center;gap:9px;color:var(--text-secondary);font-size:12px;white-space:nowrap}.connection-state{display:flex;color:var(--text-muted)}.connection-state.connected{color:var(--primary)}.header-alert-button{color:var(--danger);gap:5px}.content{padding:8px 32px 28px}.card,.gemini-card{background:var(--bg-surface);border:1px solid var(--border-color);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card:hover,.gemini-card:hover{transform:none;box-shadow:none;border-color:var(--glass-border-highlight)}.button-primary,.button-primary:hover{background:var(--primary);box-shadow:none;border-color:var(--primary)}.button-primary:hover{background:var(--primary-hover)}.button-success,.button-success:hover{background:var(--success);box-shadow:none}.button-danger,.button-danger:hover{background:var(--danger);box-shadow:none}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}button:disabled{cursor:not-allowed}.director-center{max-width:1440px;margin:0 auto}.director-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.summary-card{display:flex;align-items:center;gap:12px;padding:13px 16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:11px;text-align:left;color:var(--text-primary);cursor:pointer;min-width:0;transition:border-color .15s}.summary-card:hover{border-color:var(--primary)}.summary-icon,.welcome-action-icon{background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:10px}.summary-copy{flex:1;min-width:0}.summary-copy>span{display:block;font-size:12px;color:var(--text-secondary)}.summary-copy strong{display:block;font-size:20px;letter-spacing:-.4px;line-height:1.3;margin-top:2px}.summary-card>svg{color:var(--text-muted)}.summary-error{font-size:12px;color:var(--warning);margin:-8px 0 12px}.director-conversation.unified-conversation{height:calc(100dvh - 198px);min-height:570px;max-width:none;margin:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;overflow:hidden}.chat-toolbar{padding:10px 20px!important;flex-shrink:0}.chat-ready{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:12px;font-weight:600}.chat-ready i{width:8px;height:8px;border-radius:50%;background:var(--warning)}.chat-ready.ready{color:var(--text-secondary)}.chat-ready.ready i{background:var(--success)}.chat-more{position:relative}.chat-more summary{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;cursor:pointer;color:var(--text-muted);list-style:none}.chat-more summary::-webkit-details-marker{display:none}.chat-more summary:hover{background:var(--bg-secondary);color:var(--text-primary)}.chat-more>div{position:absolute;z-index:20;top:40px;right:0;width:190px;padding:6px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow-lg)}.chat-more button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--text-secondary);font-size:12px;text-align:left;cursor:pointer}.chat-more button:hover{background:var(--bg-secondary);color:var(--text-primary)}.chat-stream{max-width:1100px!important;gap:20px!important;padding:20px 26px!important;scroll-padding:20px}.assistant-mark{color:var(--primary);display:inline-flex}.assistant-welcome{text-align:center;padding:36px 0 12px;flex-shrink:0}.welcome-mark{color:var(--primary);display:flex;align-items:center;justify-content:center;width:72px;height:72px;margin:0 auto 18px;background:var(--primary-light);border-radius:18px}.assistant-welcome h1{font-size:28px;line-height:1.3;font-weight:700;letter-spacing:-.8px}.assistant-welcome>p{font-size:14px;color:var(--text-muted);margin-top:8px}.welcome-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:32px}.welcome-actions button{display:flex;align-items:center;gap:12px;text-align:left;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:11px;padding:16px 14px;color:var(--text-primary);cursor:pointer;min-width:0}.welcome-actions button:hover{border-color:var(--primary);background:var(--bg-secondary)}.welcome-actions button>span:nth-child(2){flex:1;min-width:0}.welcome-actions strong{display:block;font-size:12px;font-weight:600}.welcome-actions small{display:block;color:var(--text-muted);font-size:10px;margin-top:5px}.welcome-action-icon{width:40px;height:40px}.chat-history-label{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.chat-history-label:after{content:"";height:1px;background:var(--border-subtle);flex:1}.ai-document-intro h3{font-size:18px;margin-bottom:5px}.ai-document-intro p{color:var(--text-muted)}.ai-document-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.ai-document-options button{background:var(--bg-surface)!important;color:var(--text-secondary)!important;border:1px solid var(--border-color)!important;min-height:44px}.ai-document-options button.active{color:var(--primary)!important;border-color:var(--primary)!important;background:var(--primary-light)!important}.ai-document-class{display:grid;gap:7px;max-width:360px;margin-bottom:14px}.ai-central-note{display:flex;align-items:center;justify-content:space-between;gap:18px}.ai-central-note>div{display:flex;align-items:center;gap:12px;min-width:0}.ai-central-note>div>svg{color:var(--primary);flex-shrink:0}.ai-central-note strong,.ai-central-note small{display:block}.ai-central-note small{color:var(--text-muted);margin-top:4px}.knowledge-chat-card{display:none!important}.chat-composer{max-width:1100px!important;padding:12px 26px 16px!important;flex-shrink:0;border-top:1px solid var(--border-subtle);background:var(--bg-surface)}.gemini-pill{border-radius:12px;box-shadow:none;background:var(--bg-surface)}.gemini-pill:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.gemini-action{border-radius:8px}.gemini-gradient-text{background:none;-webkit-text-fill-color:var(--text-primary)}.composer-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px!important}.composer-footer .ai-service-state{padding:0!important;border:none;background:transparent;font-size:10px!important;min-width:0}.chat-workflow-card{border-radius:12px;background:var(--bg-surface)}.operations-page button{box-shadow:none}.operations-page .operations-actions>button{box-shadow:none}.login-card{padding:36px}@media(min-width:1600px){.header,.content{padding-left:44px;padding-right:44px}}@media(max-width:1200px){.header-date{display:none}.welcome-actions button{gap:9px;padding:14px 10px}.welcome-action-icon{width:34px;height:34px}}@media(max-width:1024px){.sidebar{width:260px}.header{height:86px;padding:18px 22px}.content{padding:8px 22px 24px}.header-title{font-size:24px}.director-conversation.unified-conversation{height:calc(100dvh - 190px)}}@media(max-width:768px){.header{height:80px;padding:14px 16px}.header-title{font-size:21px;white-space:normal}.header-subtitle{font-size:10px;margin-top:4px}.header-actions{gap:7px}.connection-state{display:none}.content{padding:4px 12px 20px}.director-metrics{gap:8px;margin-bottom:12px}.summary-card{flex-wrap:wrap;gap:8px;padding:12px 10px}.summary-card>svg{display:none}.summary-icon{width:30px;height:30px}.summary-icon svg{width:17px}.summary-copy{flex-basis:100%}.summary-copy>span{font-size:10px}.summary-copy strong{font-size:21px}.director-conversation.unified-conversation{height:calc(100dvh - 207px);min-height:520px}.assistant-welcome{padding-top:8px}.welcome-mark{width:64px;height:64px;margin-bottom:14px}.welcome-mark svg{width:38px}.assistant-welcome h1{font-size:21px}.welcome-actions{grid-template-columns:1fr;gap:8px;margin-top:20px}.welcome-actions button{padding:12px}.welcome-actions small{margin-top:3px}.chat-stream{padding:16px 14px!important}.chat-composer,.chat-toolbar{padding:10px 12px!important}.chat-tools{padding:8px 12px;gap:6px}.composer-footer{align-items:flex-start;font-size:9px!important}.login-card{padding:26px 22px}.ai-document-options{grid-template-columns:1fr 1fr}.ai-central-note{align-items:stretch;flex-direction:column}}@media(max-width:400px){.header-subtitle{max-width:180px}.summary-copy>span{font-size:9px}.theme-toggle{padding:7px}}.button{-webkit-backdrop-filter:none;backdrop-filter:none}.button-primary:hover,.button-danger:hover,.button-success:hover,.button-secondary:hover{transform:none}[data-theme=dark] .button-primary{color:#111917}.main{z-index:auto}.modal-backdrop,.lesson-modal-backdrop{z-index:10000!important}.modal-backdrop>*,.lesson-modal-backdrop>*{position:relative;z-index:1}
