:root,[data-theme=default]{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--primary: hsl(220, 85%, 57%);--primary-hover: hsl(220, 85%, 50%);--primary-pressed: hsl(220, 85%, 45%);--primary-soft: hsl(220, 85%, 96%);--on-primary: #FFFFFF;--accent: hsl(220, 85%, 57%);--accent-foreground: #FFFFFF;--focus: hsla(220, 85%, 57%, .4);--background-primary: #FFFFFF;--background-secondary: #F1F5F9;--border: #e2e8f0;--bg-main: var(--app-background);--bg-card: hsl(0, 0%, 100%);--bg-glass: hsla(0, 0%, 100%, .8);--text-main: #334155;--text-primary: #334155;--text-muted: #94a3b8;--text-inverse: hsl(0, 0%, 100%);--icon-muted: #94a3b8;--app-background: #ffffff;--modal-surface: #FFFFFF;--modal-surface-soft: #F8FAFC;--menu-button-bg: #FFFFFF;--menu-button-text: #334155;--menu-button-hover: #F1F5F9;--menu-button-active: #E2E8F0;--menu-button-selected: hsl(220, 85%, 57%);--menu-button-selected-text: #FFFFFF;--surface: #FFFFFF;--surface-soft: #f8fafc;--surface-hover: #f1f5f9;--surface-pressed: #e2e8f0;--border-subtle: #e2e8f0;--border-light: #e2e8f0;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 8px 24px rgba(149, 157, 165, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--success: #10b981;--warning: #f59e0b;--warning-soft: #fffbeb;--warning-text: #92400e;--danger: #ef4444;--danger-soft: #fef2f2;--danger-text: #b91c1c;--subject-blue: #3b82f6;--subject-green: #10b981;--subject-purple: #8b5cf6;--subject-orange: #f59e0b;--subject-pink: #ec4899;--subject-indigo: #6366f1}[data-theme=formal]{--primary: #1F3A5F;--primary-hover: #1A3252;--primary-pressed: #152A45;--on-primary: #FFFFFF;--accent: #1F3A5F;--accent-foreground: #FFFFFF;--focus: #4A6FA5;--app-background: #E5E9F0;--modal-surface: #FFFFFF;--modal-surface-soft: #F4F6F9;--menu-button-bg: #1F3A5F;--menu-button-text: #FFFFFF;--menu-button-hover: #1A3252;--menu-button-active: #152A45;--menu-button-selected: #4A6FA5;--menu-button-selected-text: #FFFFFF;--surface: #FFFFFF;--surface-soft: #F4F6F9;--surface-hover: #EEF2F7;--surface-pressed: #E6ECF4;--border-subtle: #D8E0EA;--border: #D8E0EA;--background-primary: #FFFFFF;--background-secondary: #EEF2F7;--text-main: #2E3440;--text-primary: #2E3440;--text-muted: #667085;--icon-muted: #6B7280;--success: #1B7F5A;--warning: #B7791F;--warning-soft: #FFF9E6;--warning-text: #744210;--danger: #B42318;--danger-soft: #FEE2E2;--danger-text: #991B1B}[data-theme=happy]{--primary: #22C55E;--primary-hover: #16A34A;--primary-pressed: #15803D;--on-primary: #FFFFFF;--app-background: #EAFBF3;--modal-surface: #FCE7F3;--modal-surface-soft: #FFF1F7;--menu-button-bg: #FDE68A;--menu-button-text: #1F2937;--menu-button-hover: #FCD34D;--menu-button-active: #FBBF24;--menu-button-selected: #22C55E;--menu-button-selected-text: #FFFFFF;--accent: #22C55E;--accent-foreground: #FFFFFF;--accent-soft: #FCE7F3;--warning: #FDE68A;--warning-soft: #FFFBEB;--warning-text: #92400E;--focus: #22C55E;--surface: #FFFFFF;--surface-soft: #F6FAF8;--surface-hover: #EDF7F1;--surface-pressed: #E1F0E7;--border-subtle: #D1FAE5;--border-light: #D1FAE5;--border: #D1FAE5;--background-primary: #FFFFFF;--background-secondary: #EDF7F1;--text-main: #1F2937;--text-primary: #1F2937;--text-muted: #6B7280;--icon-muted: #6B7280;--success: #22C55E;--danger: #EF4444;--danger-soft: #FEF2F2;--danger-text: #991B1B}[data-theme=neutral]{--primary: #475569;--primary-hover: #334155;--primary-pressed: #1F2937;--on-primary: #FFFFFF;--accent: #475569;--accent-foreground: #FFFFFF;--focus: #475569;--app-background: #F1F5F9;--modal-surface: #FAFAFB;--modal-surface-soft: #F8FAFC;--menu-button-bg: #475569;--menu-button-text: #FFFFFF;--menu-button-hover: #334155;--menu-button-active: #1F2937;--menu-button-selected: #0F172A;--menu-button-selected-text: #FFFFFF;--surface: #FFFFFF;--surface-soft: #FAFAFB;--surface-hover: #F1F5F9;--surface-pressed: #E9EEF5;--border-subtle: #D7DEE8;--border: #D7DEE8;--background-primary: #FFFFFF;--background-secondary: #F1F5F9;--text-main: #0F172A;--text-primary: #0F172A;--text-muted: #64748B;--icon-muted: #6B7280;--success: #16A34A;--warning: #CA8A04;--warning-soft: #FEFCE8;--warning-text: #854D0E;--danger: #DC2626;--danger-soft: #FEF2F2;--danger-text: #991B1B}@media(prefers-color-scheme:dark){:root:not([data-theme]){--bg-main: hsl(220, 40%, 5%);--bg-card: hsl(220, 40%, 8%);--bg-glass: hsla(220, 40%, 8%, .7);--text-main: hsl(220, 20%, 95%);--text-muted: hsl(220, 20%, 65%);--border-light: hsl(220, 30%, 15%);--primary-soft: hsl(220, 40%, 12%)}}*{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:hidden;max-width:100vw;width:100%}body{font-family:var(--font-family);background-color:var(--app-background);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased}button,[role=button],.menuButton,.iconButton,.pillButton{cursor:pointer;border:none;background:none;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none}button:focus-visible,[role=button]:focus-visible,.menuButton:focus-visible,.iconButton:focus-visible,.pillButton:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent);border-color:color-mix(in srgb,var(--primary) 55%,var(--border-subtle))}button:active,[role=button]:active,.menuButton:active,.iconButton:active,.pillButton:active{transform:translateY(0);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}.glass{background:var(--bg-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-light)}.app-container{max-width:1800px;width:98%;margin:0 auto;padding:0 1.5rem}.vertical-stack{display:flex;flex-direction:column;gap:1rem}.horizontal-stack{display:flex;align-items:center;gap:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:fadeIn .4s ease-out forwards}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.vertical-timeline{padding:1rem 0;width:100%}.slot-card{display:flex;overflow:hidden;transition:all .2s ease;border-radius:var(--radius-md);margin-bottom:1rem}.slot-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.slot-sidebar{width:6px;flex-shrink:0}.slot-body{flex:1;padding:2.5rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.slot-header{display:flex;justify-content:space-between;align-items:center}.slot-meta{display:flex;align-items:center;gap:.75rem}.time-chip{font-size:.9rem;font-weight:600;color:var(--text-muted);background:var(--bg-main);padding:4px 12px;border-radius:12px;display:flex;align-items:center;gap:6px}.subject-badge{font-size:.9rem;font-weight:700;letter-spacing:.02em;padding:4px 12px;border-radius:8px;display:inline-block}.diagnosis-overlay{position:absolute;top:10px;right:10px;padding:10px;font-size:.8rem;z-index:10;max-width:300px}.diag-header{font-weight:700;margin-bottom:5px;color:var(--primary)}.diag-details{display:flex;flex-direction:column;gap:2px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:5px}.wizard-container{padding:1rem 0}.wizard-steps{justify-content:center;gap:20px}.step-indicator{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--border-light);color:var(--text-muted);font-weight:700;font-size:.9rem;transition:all .3s ease}.step-indicator.active{background:var(--primary);color:#fff;transform:scale(1.1);box-shadow:0 0 10px var(--primary-soft)}.step-title{font-weight:700;color:var(--text-main)}.wizard-grid{width:100%;border-collapse:collapse;margin-top:10px}.wizard-grid th,.wizard-grid td{border:1px solid var(--border-light);padding:8px;text-align:center}.wizard-grid select{width:100%;padding:5px;border:none;background:transparent;cursor:pointer}.cursor-p{cursor:pointer}.flex-wrap{flex-wrap:wrap}.overflow-x{overflow-x:auto}.overflow-y{overflow-y:auto}.max-h-400{max-height:400px}.p-10{padding:10px}.mb-10{margin-bottom:10px}.mb-15{margin-bottom:15px}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.gap-10{gap:10px}.primary-btn.highlight{background:var(--subject-green);border-color:var(--subject-green)}.session-card-content{display:flex;flex-direction:column;gap:16px}.session-title-compact{font-size:1.25rem;font-weight:700;color:var(--text-main);margin:0;line-height:1.2}.card-columns{display:grid;grid-template-columns:65% 35%;gap:16px}.card-column{background:#fff6;border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.panel-header{padding:8px 12px;background:var(--bg-main);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.panel-header h4{font-size:.85rem;font-weight:700;color:var(--text-muted);letter-spacing:.02em;margin:0}.add-item-btn{width:20px;height:20px;border-radius:4px;border:1.5px solid var(--primary);background:transparent;color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer;transition:all .2s}.add-item-btn:hover{background:var(--primary);color:#fff}.panel-body{padding:12px;flex:1;min-height:100px;max-height:200px;overflow-y:auto}.scroll-thin::-webkit-scrollbar{width:4px}.scroll-thin::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:10px}.activity-item-wire{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:.9rem;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.02)}.mini-check{width:18px;height:18px;border:2px solid var(--border-light);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mini-check.is-done{background:var(--subject-green);border-color:var(--subject-green);color:#fff}.bullet-list-wire{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.bullet-list-wire li{font-size:.9rem;color:var(--text-main)}.quick-add-input{width:100%;padding:6px;margin-top:8px;border:1.5px solid var(--primary);border-radius:4px;font-size:.85rem;background:var(--surface)!important}.empty-panel-text{font-size:.85rem;color:var(--text-muted);font-style:italic;padding-top:10px}.add-slot-activity-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-muted);font-size:.85rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.add-slot-activity-btn:hover{background:var(--surface-hover);border-color:var(--primary);color:var(--primary)}.slot-actions-wire{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px;padding-top:12px;border-top:1px solid var(--border-light)}.slot-actions-left{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.slot-pill-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:10px;border:1px solid var(--border-light);background:var(--bg-card);color:var(--text-muted);font-size:.85rem;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;transition:all .2s ease}.slot-pill-btn:hover{border-color:var(--primary);color:var(--primary)}.slot-pill-btn.is-complete.is-checked{background:#10b9811f;border-color:var(--subject-green);color:var(--subject-green)}.slot-pill-btn.is-evaluate{background:var(--primary-soft);border-color:transparent;color:var(--primary)}.slot-pill-btn.is-evaluate:hover{border-color:var(--primary)}.slot-pill-btn.is-details{margin-left:auto}.link-btn-sm{background:none;border:none;color:var(--primary);font-weight:700;font-size:.85rem;cursor:pointer;text-decoration:underline;display:inline-flex;align-items:center;gap:5px}.materials-hint-icon{display:none}@media(max-width:768px){.card-columns{grid-template-columns:1fr}.materials-panel{display:none}.slot-actions-wire{flex-wrap:wrap;gap:10px}.slot-pill-btn.is-details{margin-left:0}.slot-pill-btn.is-details.has-materials-hint{background:var(--primary-soft);border-color:transparent;color:var(--primary)}.slot-pill-btn.is-details.has-materials-hint .materials-hint-icon{display:inline-flex}}.program-dashboard,.program-editor{padding:20px;max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:30px;gap:20px}.section-title-wire{font-size:1.8rem;font-weight:800;color:var(--text-main);margin:0}.programs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.program-card{padding:20px;border-radius:var(--radius-lg);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.program-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #0000001a}.program-card.archived{opacity:.6}.program-card h3{margin:0;font-size:1.2rem;font-weight:700;color:var(--text-main)}.program-actions-dropdown{position:relative;flex-shrink:0}.discreet-menu{color:var(--text-muted);width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.discreet-menu:hover,.discreet-menu.active{color:var(--text-main)!important;background:var(--surface-hover)}.custom-pos{right:0;left:auto}.dropdown-menu-content{position:absolute;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:var(--shadow-md);display:none;z-index:50;min-width:180px;padding:6px}.dropdown-menu-content.open{display:flex;flex-direction:column}.dropdown-menu-content button{background:none;border:none;padding:9px 10px;text-align:left;font-size:.85rem;font-weight:500;color:var(--text-main);cursor:pointer;border-radius:8px;display:flex;align-items:center;gap:10px;white-space:nowrap}.dropdown-menu-content button:hover{background:var(--surface-hover)}.dropdown-menu-content button.text-error{color:var(--danger-text)}.dropdown-menu-content button.text-error:hover{background:var(--danger-soft)}.program-card-stats{margin-top:20px;padding-top:15px;border-top:1px solid var(--border-light);gap:10px}.stat-item{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:.7rem;text-transform:uppercase;color:var(--text-muted);font-weight:700;letter-spacing:.05em}.stat-value{font-size:1.1rem;font-weight:800;color:var(--text-main)}.status-pill{font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:99px;text-transform:uppercase}.status-pill.is-active{background:#dcfce7;color:#166534}.status-pill.is-archived{background:#f3f4f6;color:#4b5563}.editor-layout{gap:24px;margin-top:20px}.editor-meta-panel{width:300px;padding:20px;position:sticky;top:100px}.editor-main-panel{flex:1}.program-title-input{background:transparent;border:none;border-bottom:2px solid transparent;font-size:1.8rem;font-weight:800;color:var(--text-main);width:100%;padding:4px 0;transition:border-color .2s}.program-title-input:focus{border-bottom-color:var(--primary);outline:none}.sessions-edit-list{max-height:calc(100vh - 250px);overflow-y:auto;padding-right:10px}.session-edit-card{padding:16px;margin-bottom:16px;border-radius:12px}.session-input-title{background:transparent;border:none;font-size:1rem;font-weight:700;flex:1;color:var(--text-main)}.session-input-text{background:#ffffff80;border:1px solid var(--border-light);border-radius:8px;padding:10px;font-size:.85rem;font-family:inherit;resize:vertical;min-height:80px}.impact-choice{display:flex;align-items:center;gap:20px;padding:16px;border-radius:12px;border:2px solid var(--border-light);cursor:pointer;transition:all .2s}.impact-choice:hover{border-color:var(--primary);background:var(--primary-soft)}.impact-choice.highlight{border-color:var(--primary);background:rgba(var(--primary-rgb),.05)}.impact-choice .choice-icon{width:48px}.menu-action-btn.primary-pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 24px;border-radius:999px;background:var(--menu-button-bg);color:var(--menu-button-text);font-size:15px;font-weight:700;border:none;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-sm);position:relative}.menu-action-btn.primary-pill:hover{background:var(--menu-button-hover);box-shadow:0 8px 20px #959da526;transform:translateY(-1px)}.menu-action-btn.primary-pill:active{background:var(--menu-button-active);transform:translateY(0)}.menu-action-btn.primary-pill.active{background:var(--menu-button-selected, var(--menu-button-active));color:var(--menu-button-selected-text, var(--menu-button-text))}.menu-action-btn.primary-pill .notification-dot{position:absolute;top:4px;right:4px;width:10px;height:10px;border-radius:50%;background:var(--primary);border:2px solid var(--menu-button-bg, #ffffff)}.impact-choice .choice-icon{height:48px;border-radius:12px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.impact-choice h4{margin:0;font-size:1rem;font-weight:700}.impact-choice p{margin:4px 0 0;font-size:.85rem;color:var(--text-muted)}.modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.modal-header{padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-light)}.modal-header h2{font-size:1.25rem;font-weight:700}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:1rem;background:var(--bg-main)}.close-btn{color:var(--text-muted)}.close-btn:hover{color:var(--text-main)}:root{--modal-max-width: 720px;--modal-min-width: 320px;--modal-radius: 20px;--modal-shadow: 0 20px 60px rgba(0, 0, 0, .18);--modal-header-border: 1px solid var(--border-light);--surface: #f8fafc;--surface-soft: #f1f5f9;--border-subtle: #e2e8f0;--text-secondary: #64748b;--text-primary: #1e293b;--primary-very-soft: hsl(220, 85%, 97%);--error: #ef4444;--surface-hover: #f1f5f9}.base-modal-content{width:95%;max-width:var(--modal-max-width);min-width:var(--modal-min-width);max-height:92vh;display:flex;flex-direction:column;background:var(--modal-surface);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);overflow:hidden}.base-modal-header{display:grid;grid-template-columns:56px 1fr 56px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--border-subtle);background:var(--modal-surface);flex-shrink:0;min-height:88px}.base-modal-header-slot-left{display:flex;align-items:center;justify-content:center}.base-modal-icon-badge{width:40px;height:40px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--border-subtle);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.base-modal-header-slot-center{text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;max-width:clamp(260px,70%,480px)}.base-modal-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0;line-height:1.15;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.base-modal-subtitle{font-size:14px;font-weight:500;color:var(--text-muted);margin:4px 0 0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.base-modal-header-slot-right{display:flex;align-items:center;justify-content:center}.base-modal-close{width:36px;height:36px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);background:var(--surface-soft);border:1px solid var(--border-subtle);cursor:pointer;transition:all .2s;flex-shrink:0}.base-modal-close:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--primary-soft)}.base-modal-body{padding:24px;overflow-y:auto;flex:1}.base-modal-body-noPad{overflow-y:auto;flex:1}.base-modal-footer{padding:14px 18px;border-top:1px solid var(--border-subtle);background:var(--modal-surface);display:flex;flex-direction:column;justify-content:center;align-items:center;flex-shrink:0}.base-modal-footer-pill{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:10px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);width:fit-content;flex-wrap:wrap}.base-modal-footer-pill .primary-btn,.base-modal-footer-pill .secondary-btn,.base-modal-footer-pill .btn-ghost,.base-modal-footer-pill button{height:42px;border-radius:999px;font-size:14px;font-weight:600;padding:0 16px;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;border:none}.base-modal-footer-pill .primary-btn{background:var(--primary)!important;color:var(--on-primary)!important}.base-modal-footer-pill .primary-btn:hover{background:var(--primary-hover)!important}.base-modal-footer-pill .secondary-btn,.base-modal-footer-pill .btn-ghost{background:var(--surface)!important;color:var(--text-primary)!important;border:1px solid var(--border-subtle)!important}.base-modal-footer-pill .secondary-btn:hover,.base-modal-footer-pill .btn-ghost:hover{background:var(--surface-hover)!important}.base-modal-footer-pill button:disabled{opacity:.45;cursor:not-allowed}.networks-profile-btn{width:100%;border-radius:999px;border:1px solid var(--border-subtle);background:var(--modal-surface);transition:background .15s ease}.networks-profile-btn:hover{background:var(--modal-surface-soft, var(--surface-hover))}.calendar-back-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--app-background);color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease}.calendar-back-btn:hover{background:var(--surface-hover)}.modal-info-card{background:var(--surface-soft);border:1px solid var(--border-subtle);border-radius:14px;padding:16px;font-size:.875rem;color:var(--text-secondary);line-height:1.5}.segmented-control{display:grid;gap:6px;padding:6px;background:var(--surface-soft);border-radius:14px;border:1px solid var(--border-subtle)}.segmented-control-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:10px;border:none;cursor:pointer;transition:all .2s;font-size:.9rem;font-weight:600;background:transparent;color:var(--text-secondary);opacity:.65}.segmented-control-btn.active{background:var(--surface);color:var(--primary);box-shadow:0 4px 12px #00000014;opacity:1}.modal-empty-state{border:1px dashed var(--border-subtle);border-radius:14px;padding:32px 24px;text-align:center;font-size:.9rem;color:var(--text-secondary);background:var(--surface-soft)}.btn-ghost{padding:10px 20px;border-radius:12px;font-weight:600;font-size:.9rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border-subtle);cursor:pointer;transition:background .2s,color .2s}.btn-ghost:hover{background:var(--surface-soft);color:var(--text-primary)}.addact-context-pill{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--text-muted)}.addact-context-subject{padding:3px 10px;border-radius:999px;color:#fff;font-size:.75rem;font-weight:700}.addact-field{display:flex;flex-direction:column;gap:8px}.addact-label{font-size:.85rem;font-weight:600;color:var(--text-muted)}.addact-textarea,.addact-input,.addact-select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border-light);background:var(--surface);color:var(--text-primary);font-size:.9rem;font-family:inherit;resize:vertical}.addact-textarea:focus,.addact-input:focus,.addact-select:focus{outline:none;border-color:var(--primary)}.addact-mode-group{display:flex;flex-direction:column;gap:10px}.addact-mode-card{display:flex;flex-direction:column;gap:4px;text-align:left;padding:12px 14px;border-radius:12px;border:1.5px solid var(--border-light);background:var(--surface);cursor:pointer;font-family:inherit;transition:border-color .15s ease,background .15s ease}.addact-mode-card strong{font-size:.9rem;color:var(--text-primary)}.addact-mode-card span{font-size:.78rem;color:var(--text-muted)}.addact-mode-card.is-selected{border-color:var(--primary);background:var(--primary-very-soft)}.addact-error{display:flex;align-items:center;gap:8px;color:var(--danger-text);font-size:.875rem;padding:12px;background:var(--danger-soft);border-radius:10px}.evaluation-row{display:grid;grid-template-columns:1fr 90px 1.5fr;padding:12px 8px;border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:12px;transition:background .2s}.evaluation-row:last-child{border-bottom:none}.evaluation-row:hover{background:var(--surface-soft)}.grade-input{width:90px;height:36px;border-radius:10px;text-align:center;font-weight:600;border:1px solid var(--border-subtle);background:var(--surface);font-size:.95rem;padding:0 8px;transition:border-color .2s}.grade-input:focus{outline:none;border-color:var(--primary)}.comment-textarea{width:100%;min-height:72px;max-height:120px;border-radius:12px;padding:10px;font-size:.82rem;resize:vertical;border:1px solid var(--border-subtle);background:var(--surface);font-family:inherit;line-height:1.5;transition:border-color .2s}.comment-textarea:focus{outline:none;border-color:var(--primary)}.modal-header-title{display:flex;align-items:flex-start;gap:12px}.modal-icon-container{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-close-btn{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);background:transparent;border:none;cursor:pointer;transition:background .2s}.modal-close-btn:hover{background:var(--surface-hover)}.modal-subtitle{font-size:.875rem;color:var(--text-secondary);margin:2px 0 0}.import-container,.details-container,.holiday-container{display:flex;flex-direction:column;gap:1.5rem}.detail-section{display:flex;flex-direction:column;gap:.5rem}.detail-section label{font-size:.85rem;font-weight:700;color:var(--text-muted);display:flex;align-items:center;gap:6px}.import-textarea,textarea,input[type=text],.date-input{width:100%;padding:.75rem;border:1px solid var(--border-light);border-radius:var(--radius-md);font-family:inherit;background:var(--bg-main)}.import-textarea{height:200px;font-family:monospace;resize:none}textarea{height:100px;resize:vertical}.actions-bar{display:flex;justify-content:flex-end}.text-link{font-size:.85rem;color:var(--primary);font-weight:600;text-decoration:underline;background:none;border:none;cursor:pointer;padding:0}.error-msg{display:flex;align-items:center;gap:8px;color:#ef4444;font-size:.85rem;font-weight:500}.secondary-btn{padding:.75rem 1.25rem;border-radius:var(--radius-md);font-weight:600;color:var(--text-muted)}.activities-list{display:flex;flex-direction:column;gap:.5rem;background:var(--bg-main);padding:1rem;border-radius:var(--radius-md);margin-top:10px}.activity-item{display:flex;align-items:center;gap:10px;font-size:.9rem}.status-toggle.small{padding:2px;color:var(--text-muted)}.status-toggle.small.is-completed{color:var(--subject-green)}.completed-text{text-decoration:line-through;opacity:.6}.add-holiday{background:var(--primary-soft);padding:1rem;border-radius:var(--radius-md);display:flex;gap:1rem}.holiday-list h3{font-size:.9rem;font-weight:700;color:var(--text-muted)}.holiday-item{justify-content:space-between;padding:.75rem 1rem;border-radius:var(--radius-md);display:flex;align-items:center}.delete-btn{color:#ef4444;padding:4px}.primary-btn-sm{background:var(--primary);color:#fff;padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:600;display:flex;align-items:center;gap:6px;font-size:.85rem}.modal-content.large{max-width:95vw;width:95vw;height:95vh;margin:2.5vh auto}.manual-config-header{margin-bottom:1.5rem}.manual-config-header h3{font-size:1.4rem;margin-bottom:.25rem}.manual-grid-wrapper{flex:1;overflow:auto;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-card)}.manual-grid{width:100%;border-collapse:collapse;min-width:800px}.manual-grid th{position:sticky;top:0;background:var(--bg-main);z-index:10;padding:12px;font-weight:700;border-bottom:2px solid var(--border-light)}.manual-grid td{padding:4px;border:1px solid var(--border-light);vertical-align:middle}.manual-grid tr:hover td{background:var(--primary-soft)}.manual-grid .slot-label-cell{background:var(--bg-main);font-weight:600;width:150px;text-align:center}.cell-selector{width:100%;padding:8px;border:none;background:transparent;font-family:inherit;font-size:.9rem;outline:none;border-radius:4px}.cell-selector:focus{background:var(--surface);box-shadow:0 0 0 2px var(--primary)}.subject-input-zone{display:flex;gap:10px;margin-bottom:1rem;background:var(--primary-soft);padding:1rem;border-radius:var(--radius-md);align-items:center}.subject-input-zone input{flex:1;max-width:300px}.quick-actions{display:flex;gap:10px;margin-bottom:10px}.blocking-error{background:#fef2f2;border:1px solid #fee2e2;color:#991b1b;padding:1.5rem;border-radius:var(--radius-md);margin-bottom:1.5rem}.blocking-error h4{margin-bottom:.5rem;display:flex;align-items:center;gap:8px}.blocking-error p{font-size:.95rem;line-height:1.4;margin-bottom:1rem}.success-banner{background:#f0fdf4;border:1px solid #dcfce7;color:#166534;margin-bottom:1rem}.success-banner h3{margin:10px 0}.sessions-review-list{max-height:60vh;overflow-y:auto;padding-right:4px}.session-editor-row{border-radius:var(--radius-md);padding:.75rem 1rem;border:1px solid var(--border-light);transition:border-color .2s}.session-editor-row.has-error{border-color:#f87171;background:#fef2f2}.session-editor-header{align-items:center;gap:10px}.session-editor-body{padding-top:.75rem;gap:.75rem}.seq-badge{min-width:28px;height:28px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.input-error{border-color:#f87171!important;background:#fff5f5}.text-error{color:#dc2626}.chip-editor{display:flex;flex-direction:column;gap:6px}.chip-list{display:flex;flex-wrap:wrap;gap:6px;min-height:28px}.chip{display:inline-flex;align-items:center;gap:4px;background:var(--primary-soft, #ede9fe);color:var(--primary);padding:2px 8px;border-radius:999px;font-size:.8rem;font-weight:500}.chip button{background:none;border:none;cursor:pointer;padding:0;color:inherit;opacity:.7;display:flex;align-items:center}.chip-input-row{gap:6px}.secondary-btn-sm{padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--bg-card);cursor:pointer;display:flex;align-items:center}.icon-btn-sm{background:none;border:none;cursor:pointer;padding:4px;color:var(--text-muted);display:flex;align-items:center}.icon-btn-sm:disabled{opacity:.3;cursor:not-allowed}.sidebar-backdrop{position:fixed;inset:0;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;opacity:0;visibility:hidden;transition:all .3s ease}.sidebar-backdrop.active{opacity:1;visibility:visible}.details-sidebar{position:fixed;top:20px;right:20px;bottom:20px;width:500px;max-width:calc(90vw - 20px);background:var(--modal-surface);border-radius:var(--modal-radius);z-index:2001;box-shadow:var(--modal-shadow);transform:translate(calc(100% + 40px));transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;overflow:hidden}.details-sidebar.open{transform:translate(0)}.sidebar-header{padding:20px 24px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;background:var(--modal-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sidebar-title{font-size:1.1rem;font-weight:700;color:var(--text-muted);margin:0}.close-btn-circle{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-light);background:var(--bg-main);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);transition:all .2s}.close-btn-circle:hover{background:#f87171;color:#fff;border-color:#f87171}.sidebar-content-scroll{flex:1;overflow-y:auto;padding-bottom:50px}.sidebar-hero{padding:40px 30px;background:linear-gradient(to bottom,var(--primary-soft) 0%,transparent 100%);display:flex;flex-direction:column;gap:16px}.subject-badge-lg{padding:4px 14px;border-radius:999px;font-size:.9rem;font-weight:700;width:fit-content}.hero-session-title{font-size:2.2rem;font-weight:800;margin:0;color:var(--text-main);line-height:1.1}.hero-metadata{display:flex;gap:20px;color:var(--text-muted);font-size:.9rem;font-weight:500}.meta-item{display:flex;align-items:center;gap:6px}.sidebar-sections-container{padding:0 30px;display:flex;flex-direction:column;gap:40px}.sidebar-section h3{font-size:1.1rem;font-weight:700;margin:0;color:var(--text-main)}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--border-light)}.section-icon{color:var(--primary)}.sidebar-activities-list{display:flex;flex-direction:column;gap:12px}.sidebar-activity-item{display:flex;gap:12px;padding:14px 18px;background:var(--bg-main);border-radius:var(--radius-md);border:1px solid var(--border-light);cursor:pointer;transition:all .2s;align-items:flex-start}.sidebar-activity-item:hover{border-color:var(--primary);transform:translate(4px)}.sidebar-activity-item .completed-text{text-decoration:line-through;opacity:.5}.sidebar-materials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.sidebar-material-card{padding:10px 14px;background:var(--surface);border:1px solid var(--border-light);border-radius:8px;display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--text-main);font-weight:500}.sidebar-notes-text{font-size:1rem;line-height:1.6;color:var(--text-main);white-space:pre-wrap;background:var(--surface-soft);padding:20px;border-radius:12px;border:1px dashed var(--border-light)}.notes-edit-area textarea{width:100%;height:250px;padding:16px;border-radius:12px;border:2px solid var(--primary);font-family:inherit;font-size:1rem;line-height:1.5}.empty-section-msg{color:var(--text-muted);font-style:italic;font-size:.9rem}.section-header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.icon-btn-sm{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:50%;border:1px solid var(--border-light);background:var(--bg-main);color:var(--text-muted);cursor:pointer;transition:all .2s}.icon-btn-sm:hover{border-color:var(--primary);color:var(--primary)}.inclusion-container-sidebar{max-height:260px;overflow-y:auto;transition:max-height .25s ease}.inclusion-container-sidebar.expanded{max-height:640px}.inclusion-neae-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.inclusion-auto-note{margin:0;font-size:.78rem;color:var(--text-muted);font-style:italic}.inclusion-neae-item{padding:14px 16px;background:var(--primary-very-soft, #f9fafb);border:1px solid var(--border-light);border-radius:12px}.inclusion-neae-student{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.9rem;color:var(--primary-dark, var(--text-main));margin-bottom:6px}.inclusion-neae-html{font-family:inherit;font-size:.9rem;line-height:1.6;color:var(--text-main);overflow-wrap:break-word;text-align:left;-webkit-hyphens:auto;hyphens:auto}.inclusion-neae-html *{font-family:inherit!important;text-decoration:none;letter-spacing:normal}.inclusion-neae-html p{margin:0 0 8px}.inclusion-neae-html>*:first-child{margin-top:0}.inclusion-neae-html>*:last-child{margin-bottom:0}.inclusion-neae-html strong{font-weight:700;color:var(--text-strong, var(--text-main))}.inclusion-neae-html em{font-style:italic}.inclusion-neae-html mark{padding:0 4px;border-radius:5px;color:inherit;box-decoration-break:clone;-webkit-box-decoration-break:clone}.inclusion-neae-html ul,.inclusion-neae-html ol{margin:0 0 8px;padding-left:4px;list-style:none}.inclusion-neae-html ol{counter-reset:neae-item}.inclusion-neae-html li{position:relative;padding-left:18px;margin-bottom:5px}.inclusion-neae-html li:last-child{margin-bottom:0}.inclusion-neae-html ul li:before{content:"";position:absolute;left:3px;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--primary);opacity:.5}.inclusion-neae-html ol li:before{counter-increment:neae-item;content:counter(neae-item) ".";position:absolute;left:0;top:0;font-size:.8em;font-weight:700;line-height:2;color:var(--primary);opacity:.75}.inclusion-neae-html blockquote{margin:0 0 8px;padding-left:12px;border-left:3px solid var(--border-light);color:var(--text-secondary, var(--text-muted))}.inclusion-neae-html table{width:100%;border-collapse:collapse;margin:0 0 8px;font-size:.95em}.inclusion-neae-html th,.inclusion-neae-html td{border:1px solid var(--border-light);padding:6px 8px;text-align:left}.inclusion-neae-html th{font-weight:700;background:var(--surface-soft)}.inclusion-manual-label{display:block;font-size:.78rem;font-weight:700;color:var(--text-muted);margin-bottom:6px}.inclusion-expanded-body{display:flex;flex-direction:column;gap:16px;padding:4px 0 12px}.inclusion-expanded-body .inclusion-auto-note{font-size:.85rem}.inclusion-neae-item.is-large{padding:20px 22px;border-radius:16px}.inclusion-neae-student.is-large{font-size:1rem;margin-bottom:10px}.inclusion-neae-html.is-large{font-size:1.05rem;line-height:1.75}.inclusion-neae-html.is-large p,.inclusion-neae-html.is-large ul,.inclusion-neae-html.is-large ol{margin:0 0 12px}.inclusion-neae-html.is-large li{margin-bottom:8px;padding-left:22px}.inclusion-neae-html.is-large ul li:before{left:5px;width:6px;height:6px}.sidebar-notes-text.is-large{font-size:1.1rem;line-height:1.75;padding:24px}.brand-label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.12em;line-height:1.1;text-align:center;margin-bottom:6px;-webkit-font-smoothing:antialiased;opacity:.8;pointer-events:none}.header-center-reference{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;margin-left:auto!important;margin-right:auto!important;transform:none!important;left:unset!important;right:unset!important}.main-header{padding:3rem 0 0;border-bottom:none;background:transparent}.date-header{text-align:center;margin-bottom:24px;display:flex;flex-direction:column;align-items:center}.main-date-title{font-size:2.2rem;font-weight:800;color:var(--text-main);margin:0;letter-spacing:-.02em;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px}.main-date-title.interactive{cursor:pointer;transition:all .2s;padding:8px 16px;border-radius:12px;border:1px solid transparent}.main-date-title.interactive:hover{background:var(--surface);border-color:var(--border-light);box-shadow:0 4px 12px #00000008;color:var(--primary)}.header-calendar-icon{color:#94a3b8;transition:color .2s}.main-date-title.interactive:hover .header-calendar-icon{color:var(--primary)}.day-navigation-group{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--surface);padding:8px 12px;border-radius:100px;box-shadow:0 4px 12px #00000008;border:1px solid var(--border-light);margin:0 auto 24px;width:fit-content}.nav-btn-human{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:100px;border:none;background:transparent;color:var(--text-secondary);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease;font-family:inherit}.nav-btn-human:hover{background:var(--bg-hover);color:var(--text-main)}.nav-btn-human.today{background:var(--primary-soft);color:var(--primary)}.day-closure-bar{margin:0 auto 24px;padding:16px 24px;background:var(--surface);border-radius:16px;border:1px solid var(--border-light);box-shadow:0 2px 8px #00000005;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;width:fit-content;max-width:90%}.action-bar-container{margin-bottom:32px;display:flex;justify-content:center}.action-bar{background:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.8);padding:12px;border-radius:100px;box-shadow:0 8px 32px #0000000a;gap:12px;display:flex;align-items:center}.main-wrapper{max-width:1000px;width:100%;margin:0 auto;padding:0 20px}.main-wrapper.no-pad{padding-left:0!important;padding-right:0!important}.pill-btn{display:flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 24px;border-radius:16px;border:1px solid var(--border-subtle);background:var(--menu-button-bg);font-family:inherit;font-weight:700;font-size:15px;color:var(--menu-button-text);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-sm)}.pill-btn:hover{background:var(--surface-hover);color:var(--text-main)}.pill-btn.active{background:var(--primary-soft);color:var(--primary);box-shadow:0 2px 8px #0000000f;border-color:var(--primary)}.pill-btn.primary{background:var(--primary-soft);color:var(--primary);border-color:transparent}.pill-btn.primary:hover{filter:brightness(.95)}.pill-btn.warning{background:transparent;color:var(--text-secondary);border:1px solid var(--border-light)}.pill-btn.warning:hover{background:var(--surface-soft);color:var(--text-main)}.settings-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface);border:1px solid var(--border-light);border-radius:16px;padding:8px;box-shadow:0 10px 40px #00000014;display:flex;flex-direction:column;gap:4px;min-width:220px;z-index:50;animation:dropdownFadeIn .2s ease}.settings-dropdown .pill-btn{width:100%;justify-content:flex-start;padding:10px 16px;border-radius:8px}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.pill-btn.warning{color:#d97706;border-color:#fef3c7}.pill-btn.warning:hover{background:#fffbeb}.icon-btn-pill{width:42px;height:42px;border-radius:50%;border:1px solid var(--border-light);background:var(--surface);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);transition:all .2s}.icon-btn-pill.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.icon-btn-pill:hover{border-color:var(--primary);color:var(--primary)}.items-center{align-items:center}.vertical-stack{display:flex;flex-direction:column}.modal-subtitle{text-align:center;color:var(--text-muted);font-size:1.05rem;margin-bottom:2.5rem}.method-selection-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:2rem}.method-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 30px;background:var(--surface);border:2px solid var(--border-light);border-radius:20px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.method-card:hover{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-4px);box-shadow:0 12px 30px rgba(var(--primary-rgb),.1)}.method-card.highlighted{border-color:var(--primary);background:rgba(var(--primary-rgb),.02)}.card-icon{width:64px;height:64px;background:var(--bg-main);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--primary);transition:all .3s}.method-card:hover .card-icon{background:var(--primary);color:#fff;transform:scale(1.1)}.card-info h3{font-size:1.25rem;font-weight:700;margin:0 0 8px;color:var(--text-main)}.card-info p{font-size:.95rem;color:var(--text-muted);margin:0;line-height:1.4}.card-tag{position:absolute;top:12px;right:12px;background:var(--primary);color:#fff;font-size:.7rem;font-weight:800;padding:4px 10px;border-radius:99px;text-transform:uppercase}.blocking-error-card{display:flex;gap:20px;padding:24px;background:#fff1f2;border:1px solid #fecdd3;border-radius:16px;margin-bottom:2rem}.error-icon-box{width:48px;height:48px;background:#fb7185;color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.error-content h4{margin:0 0 4px;font-size:1.1rem;color:#9f1239;font-weight:700}.error-content p{font-size:.95rem;background:var(--bg-hover);color:var(--primary);border-radius:4px}.calendar-day-btn.selected{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:700;box-shadow:0 4px 12px rgba(var(--primary-rgb),.2)}.calendar-day-btn.today{border-color:var(--primary);color:var(--primary);font-weight:700}.calendar-day-btn.off-month{color:var(--text-muted);opacity:.5}.datepicker-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-light)}.datepicker-modal-content.large{width:520px;padding:32px}.calendar-day-btn.large{height:52px;font-size:1.1rem;border-radius:12px}.month-nav-btn.large{padding:12px}.multi-date-count{margin-top:8px;font-size:.95rem;color:var(--primary);background:var(--primary-soft);padding:4px 12px;border-radius:100px;display:inline-block}.absence-modal-overlay{background:#0f172ad9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.absence-header-block{display:flex;justify-content:space-between;align-items:flex-start;height:72px;border-bottom:1px solid var(--border-light);padding-bottom:20px;margin-bottom:24px}.absence-section{background:var(--surface-soft);border-radius:14px;padding:20px 24px;margin-bottom:24px;border:1px solid var(--border-light)}.student-absence-card{background:var(--surface);border-radius:12px;padding:20px;margin-top:16px;border:1px solid var(--border-light);box-shadow:0 2px 8px #00000005;display:flex;flex-direction:column;gap:16px}.student-absence-card.error{border-color:#fca5a5;background:#fef2f2}.absence-students-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:20px}.absence-students-header-text{flex:1 1 260px;min-width:0}.absence-add-student-btn{flex-shrink:0}@media(max-width:640px){.absence-students-header{flex-direction:column;align-items:stretch}.absence-students-header-text{flex:0 1 auto}.absence-add-student-btn{width:100%;justify-content:center}}.absence-saved-list{border:1px solid var(--border-subtle);border-radius:14px;overflow:hidden;background:var(--modal-surface)}.absence-saved-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto auto;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.absence-saved-row:last-child{border-bottom:none}.absence-saved-subject{display:flex;align-items:center;gap:8px;min-width:0;font-size:.85rem;font-weight:600;color:var(--text-secondary)}.absence-saved-subject-name{text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.absence-saved-name{font-size:.95rem;font-weight:700;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.absence-saved-chip{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;color:var(--text-muted);white-space:nowrap}.absence-saved-chip.justified{color:var(--success)}.absence-saved-actions{display:flex;align-items:center;gap:2px;justify-content:flex-end}.absence-group-label{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px}.absence-group-label.saved{color:var(--success)}@media(max-width:640px){.absence-saved-row{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.absence-saved-subject{order:1}.absence-saved-actions{order:2;grid-row:span 2}.absence-saved-name{order:3}.absence-saved-chip{order:4;grid-column:1}}.absence-input-large{height:48px;font-size:1.05rem;font-weight:600;border-radius:10px;border:1px solid var(--border-light);padding:0 16px;width:100%}.absence-input-large:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px var(--primary-soft)}.switch-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:1rem;font-weight:600;color:var(--text-main)}.import-preview-box{background:var(--bg-main);border-radius:16px;padding:20px;border:1px dashed var(--border-light)}.preview-header{justify-content:space-between;margin-bottom:15px;font-weight:700;font-size:.9rem;color:var(--text-muted)}.modal-footer-minimal{display:flex;justify-content:center;padding-top:20px;border-top:1px solid var(--border-light)}.w-full{width:100%}.badge-success{background:#dcfce7;color:#166534;font-size:.75rem;padding:2px 8px;border-radius:12px;font-weight:700}.soft-card-container{background:var(--surface-soft);border:1px solid #e2e8f0;border-radius:16px;padding:20px;margin-bottom:2rem}.summary-stats-bar{background:var(--surface);padding:20px 40px;border-radius:20px;border:1px solid var(--border-light);box-shadow:0 4px 6px -1px #0000000d}.stat-pill{display:flex;flex-direction:column;align-items:center}.stat-separator{width:1px;height:40px;background:var(--border-light)}.stat-label{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.stat-value{font-size:1.5rem;font-weight:800;color:var(--text-main)}.modal-overlay.opaque-blue-overlay{background-color:#cbd5e1e6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-content.large-xl{width:95vw;max-width:1000px;padding:32px}.method-card-v2{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--surface);border:1px solid var(--border-light);border-radius:20px;padding:40px 30px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000008}.method-card-v2:hover{border-color:color-mix(in srgb,var(--text-muted) 45%,var(--border-light));transform:translateY(-2px);box-shadow:0 12px 30px #959da51a}.method-card-v2.ready{border-color:var(--primary);background:linear-gradient(to bottom,var(--surface),color-mix(in srgb,var(--primary) 14%,var(--surface)))}.method-card-v2.drag-over{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 20%,var(--surface));box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 22%,transparent);transform:translateY(-2px) scale(1.01)}.card-icon-v2{background:var(--bg-main);color:var(--text-muted);width:72px;height:72px;border-radius:24px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;transition:all .2s ease}.card-icon-v2.soft-blue{background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}.card-icon-v2.soft-gray{background:var(--surface-soft);color:var(--text-muted)}.method-card-v2:hover .card-icon-v2.soft-blue{background:color-mix(in srgb,var(--primary) 18%,var(--surface));transform:scale(1.05)}.method-card-v2:hover .card-icon-v2.soft-gray{background:var(--surface-hover);transform:scale(1.05)}.method-card-v2 h3{font-size:1.25rem;font-weight:800;color:var(--text-main);margin:0 0 12px}.method-card-v2 p{font-size:.95rem;color:var(--text-muted);margin:0;line-height:1.5;max-width:220px}.recommended-badge.discreet{position:absolute;top:16px;right:16px;background:color-mix(in srgb,var(--success) 12%,var(--surface));color:color-mix(in srgb,var(--success) 70%,var(--text-main));border:1px solid color-mix(in srgb,var(--success) 35%,var(--surface));font-size:.7rem;font-weight:700;padding:6px 12px;border-radius:100px;text-transform:uppercase;letter-spacing:.05em}.review-session-card{background:var(--surface);border:1px solid var(--border-light);border-radius:16px;padding:20px 24px;transition:all .2s ease;box-shadow:0 2px 8px #00000005;display:flex;flex-direction:column}.review-session-card:hover{border-color:#cbd5e1;box-shadow:0 4px 16px #959da514}.review-session-card.has-error{border-color:#f87171;background-color:#fef2f2}.session-pill-badge{display:inline-flex;align-items:center;background:var(--bg-main);color:var(--text-muted);font-size:.75rem;font-weight:700;padding:4px 12px;border-radius:100px;text-transform:uppercase;letter-spacing:.05em;align-self:flex-start}.session-title-input{border:none;background:transparent;padding:0;margin:0;font-size:1.15rem;font-weight:700;color:var(--text-main);outline:none;font-family:inherit;cursor:text}.session-title-input:focus{background:transparent;box-shadow:none}.session-title-input.input-error{color:#ef4444}.icon-btn-subtle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:var(--text-muted);background:transparent;transition:all .2s;cursor:pointer}.icon-btn-subtle:hover{background:var(--bg-main);color:var(--text-main)}.icon-btn-subtle.delete:hover{color:#ef4444;background:#fef2f2}.review-modal-footer{position:sticky;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:24px 32px;border-top:1px solid var(--border-light);z-index:10;margin:0 -32px -32px;border-radius:0 0 16px 16px}.inline-warning-notice{display:inline-flex;align-items:center;gap:8px;background:#fffbeb;color:#d97706;padding:10px 16px;border-radius:12px;font-size:.85rem;font-weight:500;margin-top:16px}.method-card-v2:not(.ready){opacity:.85;filter:grayscale(80%);cursor:not-allowed;border-color:var(--border-light)}.method-card-v2:not(.ready):hover{transform:none;box-shadow:none;border-color:#cbd5e1}.method-card-v2:not(.ready):hover .card-icon-v2{transform:none;background:var(--bg-main);box-shadow:none}.editor-v2-container{max-width:1300px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:24px}.editor-v2-header{position:sticky;top:16px;z-index:20;background:var(--surface);padding:18px 22px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px}.editor-v2-header-top{display:flex;align-items:center;gap:16px}.editor-v2-title{font-size:1.8rem;font-weight:800;color:var(--text-main);text-transform:uppercase;margin:0;flex:1}.editor-v2-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.meta-badge{display:inline-flex;align-items:center;gap:6px;background:var(--bg-main);padding:4px 12px;border-radius:99px;font-size:.8rem;font-weight:600;color:var(--text-secondary);border:1px solid var(--border-light)}.editor-v2-body{display:flex;align-items:flex-start;gap:32px}.editor-v2-sidebar{width:320px;flex-shrink:0;position:sticky;top:140px}.editor-v2-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}@media(max-width:1024px){.editor-v2-body{flex-direction:column}.editor-v2-sidebar{width:100%;position:static}}.session-accordion{background:var(--surface);border:1px solid var(--border-light);border-radius:12px;overflow:hidden;transition:all .2s ease;box-shadow:0 1px 3px #00000008}.session-accordion:hover{border-color:#cbd5e1}.session-accordion.expanded{border-color:var(--primary-soft);box-shadow:0 4px 16px #0000000f}.accordion-header{padding:16px 20px;display:flex;align-items:center;gap:16px;cursor:pointer;-webkit-user-select:none;user-select:none;background:transparent}.accordion-header:hover{background:var(--surface-soft)}.accordion-summary{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.accordion-title-row{display:flex;align-items:center;gap:12px;min-width:0}.accordion-title{font-size:1rem;font-weight:700;color:var(--text-main);margin:0;min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accordion-details{font-size:.85rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.accordion-counters{font-size:.75rem;font-weight:600;color:var(--text-secondary);background:var(--bg-main);padding:2px 8px;border-radius:8px;flex-shrink:0}.accordion-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.accordion-body{padding:0 20px 20px;border-top:1px dashed var(--border-light);background:var(--surface-soft)}.chip-list-truncated{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.welcome-card-v2{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:46px 30px;background:var(--header-card, var(--surface));color:var(--header-card-text, var(--text-main));border-radius:20px;border:1px solid var(--header-card-border, var(--border-light));box-shadow:0 4px 16px #0000000a;text-align:center;max-width:540px;margin:40px auto}.welcome-icon-wrapper{background:var(--primary-soft);color:var(--primary);width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:24px}.welcome-card-v2 h2{font-size:1.6rem;font-weight:800;color:var(--text-main);margin:0 0 12px}.form-cards-container{display:flex;align-items:center}@media(max-width:768px){.form-cards-container{flex-direction:column;align-items:stretch}}.input-card-v2{background:var(--surface);border:1px solid var(--border-light);border-radius:16px;padding:18px 24px;display:flex;flex-direction:column;gap:10px;transition:all .2s ease;position:relative;min-height:85px;box-shadow:0 2px 10px #00000005}.input-card-v2:focus-within,.input-card-v2:hover{border-color:#cbd5e1;box-shadow:0 8px 24px #959da514;transform:translateY(-2px)}.input-card-v2:focus-within{border-color:var(--primary);box-shadow:0 4px 14px rgba(var(--primary-rgb),.08)}.input-card-v2.has-error{border-color:#f87171;background-color:#fef2f2}.input-card-v2-label{font-size:.85rem;font-weight:600;color:var(--text-muted);letter-spacing:0}.input-card-v2-body{display:flex;align-items:center;gap:14px}.input-card-v2-icon{color:var(--primary);display:flex;align-items:center;justify-content:center;background:var(--primary-soft);width:44px;height:44px;border-radius:14px}.input-card-v2-control{flex:1;border:none;background:transparent;padding:0;margin:0;font-size:1.15rem;font-weight:700;color:var(--text-main);outline:none;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input-card-v2-control:focus{background:transparent;box-shadow:none}.template-session-card{background:var(--surface);border:1px solid var(--border-light);border-radius:12px;margin-bottom:24px;overflow:hidden;box-shadow:0 2px 8px #00000005}.template-session-header{background:var(--surface-soft);border-bottom:1px solid var(--border-light);padding:16px 20px;display:flex;align-items:center;gap:16px}.template-session-body{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:768px){.template-session-body{grid-template-columns:1fr}}.template-textarea{width:100%;border:1px solid var(--border-light);border-radius:8px;padding:12px 16px;font-family:inherit;font-size:.95rem;color:var(--text-main);resize:vertical;background:var(--surface);transition:all .2s ease}.template-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.template-textarea.activities-ta{min-height:180px}.template-textarea.materials-ta{min-height:120px}.template-modal-footer{position:sticky;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:20px 32px;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;z-index:10;margin:0 -32px -32px;border-radius:0 0 16px 16px}.daily-notes-container{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.daily-note-postit{background:#eff6ff;border-radius:12px;padding:16px;box-shadow:0 1px 2px #0000000d;position:relative;transition:all .2s;border:1px solid #bfdbfe}.daily-note-postit.preview-mode{width:100%;max-width:400px;margin:0 auto}.daily-note-postit.is-completed{background:var(--surface-soft);border-color:#e2e8f0}.daily-note-text-area p{font-size:1.05rem;color:#1e293b;margin:0;line-height:1.5;white-space:pre-wrap;font-weight:500;transition:color .2s}.daily-note-postit.is-completed .daily-note-text-area p{color:#94a3b8}.daily-note-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.daily-note-menu-btn{background:transparent;border:none;cursor:pointer;color:#94a3b8;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s,background .2s}@media(max-width:768px){.daily-note-menu-btn{opacity:1;background:#94a3b82e;color:#475569;width:32px;height:32px;border-radius:8px}}.daily-note-postit:hover .daily-note-menu-btn{opacity:1}.daily-note-menu-btn:hover{background:var(--surface-pressed);color:#475569}.daily-note-menu{position:absolute;bottom:40px;left:16px;background:var(--surface);border:1px solid var(--border-light);border-radius:8px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;overflow:hidden;z-index:10}.daily-note-menu button{background:transparent;border:none;padding:8px 16px;text-align:left;font-size:.9rem;cursor:pointer;color:var(--text-main)}.daily-note-menu button:hover{background:var(--surface-hover)}.daily-note-menu button.delete-action{color:#ef4444}.daily-note-menu button.delete-action:hover{background:#fef2f2}.daily-note-checkbox-wrapper{display:flex;align-items:center;gap:6px;cursor:pointer;margin-left:auto}.daily-note-checkbox{width:16px;height:16px;cursor:pointer;accent-color:#94a3b8}.daily-note-checkbox-label{font-size:.85rem;font-weight:500;color:#64748b;-webkit-user-select:none;user-select:none}.reminder-edit-textarea{width:100%;min-height:140px;padding:14px;border-radius:14px;border:1px solid var(--border-subtle);background:var(--surface-soft);color:var(--text-primary);font-family:inherit;font-size:1rem;line-height:1.6;resize:vertical;transition:border-color .2s,box-shadow .2s}.reminder-edit-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.reminder-edit-link-section{margin-top:14px;padding:14px 16px;border-radius:14px;background:var(--surface-soft);border:1px solid var(--border-subtle)}.reminder-edit-link-input{padding:9px 12px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--surface);font-family:inherit;font-size:.875rem;color:var(--text-primary);min-width:0;transition:border-color .2s}.reminder-edit-link-input:focus{outline:none;border-color:var(--primary)}@media(max-width:768px){.reminder-edit-textarea{min-height:160px;font-size:16px}}.note-modal-content{background:var(--surface);border-radius:16px;width:90%;max-width:500px;margin:5vh auto;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;max-height:90vh}.note-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-light)}.note-modal-header h2{font-size:1.5rem;margin:0;color:var(--text-main);font-weight:700}.note-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;transition:color .2s}.note-close-btn:hover{color:var(--text-main)}.note-modal-body{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.note-date-selector{display:flex;align-items:center;gap:16px;padding:12px;border-radius:16px;border:1px solid transparent;transition:all .2s ease}.note-date-selector.interactive:hover{background:var(--surface);border-color:#e2e8f0;box-shadow:0 4px 12px #00000008;transform:translateY(-1px)}.note-date-icon-box{width:56px;height:56px;background:var(--surface-hover);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#475569}.note-date-text-box{display:flex;flex-direction:column;gap:4px;position:relative}.note-date-text-box label{font-size:.85rem;font-weight:600;color:#64748b}.note-date-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.note-date-display{font-size:1.1rem;font-weight:600;color:var(--text-main)}.note-input-container{display:flex;flex-direction:column}.note-main-textarea{width:100%;min-height:120px;font-size:1.15rem;line-height:1.5;padding:16px;border:2px solid #e2e8f0;border-radius:12px;resize:vertical;background:var(--surface-soft);transition:all .2s;font-family:inherit;color:var(--text-main)}.note-main-textarea:focus{outline:none;border-color:#93c5fd;background:var(--surface);box-shadow:0 0 0 3px #93c5fd33}.note-preview-section{display:flex;flex-direction:column;gap:12px;align-items:center;margin-top:8px;padding-top:24px;border-top:1px dashed #e2e8f0}.note-preview-label{font-size:.85rem;font-weight:600;color:#94a3b8}.note-modal-footer{padding:24px;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:12px;background:var(--surface-soft);border-bottom-left-radius:16px;border-bottom-right-radius:16px}.icon-btn-lg{width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-main);background:var(--surface-soft);border:1px solid var(--border-subtle);flex-shrink:0;transition:background .15s,color .15s,border-color .15s}.icon-btn-lg:hover{background:var(--surface-hover);color:var(--primary);border-color:var(--primary)}.programs-dash-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding:18px 22px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.dashboard-title{font-size:1.75rem;color:var(--text-main);margin:0 0 4px;font-weight:800;text-transform:uppercase}.dashboard-subtitle{font-size:.95rem;color:var(--text-muted);margin:0}.empty-programs-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 32px;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;border:1px solid var(--border-subtle);margin-top:24px}.empty-programs-icon{width:72px;height:72px;border-radius:999px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:20px}.empty-programs-card h3{font-size:1.15rem;font-weight:700;color:var(--text-main);margin:0 0 6px}.empty-programs-card p{font-size:.9rem;color:var(--text-muted);margin:0;max-width:340px}.programs-folders{display:flex;flex-direction:column;gap:18px;padding-bottom:40px}.programs-subject-folder{display:flex;flex-direction:column;gap:16px}.programs-subject-folder-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface);border:1px solid var(--border-subtle);border-left:3px solid var(--folder-color, var(--primary));border-radius:var(--radius-md, 12px);box-shadow:var(--shadow-sm);cursor:pointer;color:var(--text-main);width:100%;text-align:left;transition:background .15s ease}.programs-subject-folder-header:hover{background:var(--surface-soft)}.programs-subject-folder-header .folder-icon{display:inline-flex;align-items:center}.programs-subject-folder-header .folder-name{font-size:1rem;font-weight:700;flex:1}.programs-subject-folder-header .folder-count{font-size:.8rem;font-weight:700;color:var(--text-muted);background:var(--surface-soft);padding:2px 10px;border-radius:999px}.programs-grid-v2{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.program-card-v2{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);padding:22px;display:flex;flex-direction:column;transition:all .2s ease;box-shadow:var(--shadow-sm)}.program-card-v2:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 30%,var(--border-subtle))}.program-card-v2.archived{opacity:.65;background:var(--surface-soft)}.program-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.program-card-title-area{flex:1;min-width:0}.program-card-title-area h3{font-size:1.15rem;font-weight:700;color:var(--text-main);margin:0 0 10px;line-height:1.3;overflow-wrap:break-word;word-break:break-word}.program-card-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.badge-subject{padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.2px}.badge-date{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-muted);font-weight:500;background:var(--surface-soft);padding:3px 10px;border-radius:999px}.program-card-middle{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px dashed var(--border-subtle);border-bottom:1px dashed var(--border-subtle);margin-bottom:18px;flex-wrap:wrap;gap:10px}.status-chip{padding:4px 12px;border-radius:999px;font-size:.8rem;font-weight:600;display:inline-flex;align-items:center}.status-chip.active{background:color-mix(in srgb,var(--success) 15%,transparent);color:var(--success)}.status-chip.archived{background:var(--surface-soft);color:var(--text-muted)}.program-card-metrics{display:flex;gap:14px;flex-wrap:wrap}.metric-item{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted);font-weight:600}.metric-item svg{color:var(--primary)}.program-card-footer-v2{display:flex;justify-content:flex-end;margin-top:auto}.action-btn-secondary{background:var(--surface);border:1px solid var(--primary);color:var(--primary);padding:9px 18px;border-radius:999px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;width:100%;display:inline-flex;align-items:center;justify-content:center}.action-btn-secondary:hover{background:var(--primary-soft)}.datepicker-modal-content{background:var(--surface);border-radius:20px;width:90%;max-width:480px;margin:auto;box-shadow:0 16px 40px #00000026;display:flex;flex-direction:column;overflow:hidden;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.datepicker-header{padding:24px 32px;background:var(--surface-soft);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:flex-start}.datepicker-header-titles h2{font-size:1.5rem;font-weight:700;color:var(--text-main);margin:0 0 8px}.datepicker-header-titles p{font-size:.95rem;color:#64748b;margin:0;line-height:1.4}.datepicker-body{padding:24px 32px;background:var(--surface)}.datepicker-month-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.current-month-display{font-size:1.25rem;font-weight:700;color:var(--text-main);text-transform:capitalize;margin:0}.month-nav-btn{background:transparent;border:none;cursor:pointer;color:#64748b;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.month-nav-btn:hover{background:var(--surface-hover);color:var(--text-main)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:12px}.weekday-label{font-size:.85rem;font-weight:700;color:#94a3b8;text-transform:uppercase}.calendar-days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-day-btn{background:transparent;border:1px solid transparent;padding:12px 0;border-radius:12px;cursor:pointer;font-size:1.1rem;font-weight:500;color:var(--text-main);transition:all .2s;display:flex;align-items:center;justify-content:center}.calendar-day-btn:hover:not(.selected){background:var(--surface-hover)}.calendar-day-btn.off-month{color:#cbd5e1}.calendar-day-btn.today{border-color:#cbd5e1;font-weight:700;color:var(--primary)}.calendar-day-btn.selected{background:var(--primary);color:#fff;box-shadow:0 4px 12px #38bdf866;font-weight:700;border-color:var(--primary)}.datepicker-footer{padding:20px 32px;border-top:1px solid var(--border-light);background:var(--surface-soft);display:flex;justify-content:flex-end;gap:12px}.update-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:var(--text-main);color:#fff;padding:12px 24px;border-radius:30px;font-size:.95rem;font-weight:600;z-index:9999;box-shadow:0 4px 12px #00000026}.animate-fade-up{animation:fadeUp .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeUp{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.visual-editor-container-v3{display:flex;flex-direction:column;height:100%;min-height:80vh;margin:-20px;background-color:var(--bg-app)}.zone-a-header{background:var(--surface);padding:24px 40px;display:flex;flex-direction:column;gap:16px;border-bottom:1px solid var(--border-light);flex-shrink:0}.back-btn-human{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;font-size:1rem;font-weight:600;color:var(--text-muted);cursor:pointer;padding:0;transition:color .2s;width:fit-content}.back-btn-human:hover{color:var(--primary)}.header-titles{display:flex;flex-direction:column;gap:4px}.header-main-title{font-size:1.25rem;font-weight:500;color:var(--text-muted);margin:0}.header-sub-title{font-size:2.5rem;font-weight:800;color:var(--primary);margin:0;letter-spacing:-.02em}.visual-body-wrapper{display:flex;flex:1;overflow:hidden}.zone-b-sidebar{width:260px;background:var(--bg-main);border-right:1px solid var(--border-light);padding:32px 24px;display:flex;flex-direction:column;gap:24px;flex-shrink:0;overflow-y:auto}.sidebar-title{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0;padding-left:10px}.days-pill-list{display:flex;flex-direction:column;gap:8px}.day-pill-btn{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;background:transparent;border:none;border-radius:12px;font-size:1.1rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .2s;text-align:left}.day-pill-btn:hover{background:var(--bg-hover);color:var(--text-main)}.day-pill-btn.active{background:var(--primary-soft);color:var(--primary-dark);font-weight:700;font-size:1.15rem}.day-indicator{width:6px;height:6px;border-radius:50%;background-color:transparent;transition:background-color .2s}.day-pill-btn.active .day-indicator{background-color:var(--primary)}.zone-c-main{flex:1;padding:32px 40px 100px;overflow-y:auto;background-color:var(--bg-app)}.main-actions-row{display:flex;justify-content:flex-end;margin-bottom:24px}.btn-copy-day{background:var(--surface);color:var(--text-main);border:1px solid var(--border-light);box-shadow:0 1px 3px #0000000d;font-size:.95rem;padding:8px 16px}.btn-copy-day:hover{background:var(--bg-hover);border-color:var(--border-color)}.slots-list-v3{display:flex;flex-direction:column;gap:16px;max-width:800px}.empty-state-clean{padding:40px;text-align:center;color:var(--text-muted);font-size:1.1rem;background:transparent;border:2px dashed var(--border-light);border-radius:var(--radius-lg)}.slot-card-v3{display:flex;align-items:center;padding:16px 20px;background:var(--surface);border-radius:12px;border:1px solid var(--border-light);box-shadow:0 4px 12px #00000005;gap:20px;transition:all .2s ease}.slot-card-v3:hover{box-shadow:0 8px 16px #0000000a;transform:translateY(-2px);border-color:var(--border-color)}.slot-card-v3.dragging{opacity:.4;box-shadow:none}.drag-handle-v3{color:var(--text-muted);opacity:.3;cursor:grab;display:flex;align-items:center;justify-content:center;padding:4px}.slot-card-v3:hover .drag-handle-v3{opacity:.8}.drag-handle-v3:active{cursor:grabbing}.slot-time-v3{font-size:1.1rem;font-weight:500;color:var(--text-secondary);width:140px;flex-shrink:0}.slot-subject-v3{flex:1}.inline-subject-input{width:100%;font-size:1.25rem;font-weight:700;background:transparent;border:none;outline:none;padding:4px 0;letter-spacing:.01em}.inline-subject-input::placeholder{color:var(--text-muted);opacity:.5;font-weight:400}.delete-slot-btn{background:transparent;border:none;color:var(--text-error);opacity:.6;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.slot-card-v3:hover .delete-slot-btn{opacity:.8}.delete-slot-btn:hover{opacity:1!important;background:#fee2e2;color:#dc2626}.mini-save-toast{position:absolute;bottom:24px;right:24px;background:var(--subject-green, #10b981);color:#fff;padding:10px 20px;border-radius:100px;font-weight:600;font-size:.95rem;box-shadow:0 4px 12px #10b9814d;display:flex;align-items:center;gap:8px;animation:fadeUp .3s cubic-bezier(.16,1,.3,1) forwards;z-index:1000}.add-slot-btn-v3{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:24px;background:transparent;border:2px dashed var(--border-light);border-radius:12px;color:var(--text-muted);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px}.add-slot-btn-v3:hover{background:var(--surface);border-color:var(--primary);color:var(--primary)}.add-slot-card-v3{background:var(--surface);border-radius:12px;border:1px solid var(--primary);box-shadow:0 8px 24px #0000000f;padding:24px;display:flex;flex-direction:column;gap:20px;margin-top:8px;animation:dropdownFadeIn .2s ease-out}.time-inputs-row{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-weight:500}.time-input-clean{padding:8px 12px;border:1px solid var(--border-light);border-radius:8px;font-family:inherit;font-size:1rem;color:var(--text-main);background:var(--bg-main);outline:none}.time-input-clean:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.subject-input-row{border-bottom:2px solid var(--border-light);padding-bottom:8px}.subject-input-row .inline-subject-input{color:var(--text-main)}.subject-input-row .inline-subject-input:focus{border-color:var(--primary)}.add-slot-actions{display:flex;justify-content:flex-end;gap:16px;align-items:center}.copy-day-overlay{position:fixed;inset:0;background-color:#1e293b99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1200;display:flex;align-items:center;justify-content:center}.copy-day-modal{background:var(--surface);border-radius:16px;width:90%;max-width:480px;padding:32px;box-shadow:0 20px 40px #00000026;display:flex;flex-direction:column;gap:24px}.copy-day-header{text-align:center}.copy-day-header h3{font-size:1.5rem;font-weight:700;color:var(--text-main);margin-bottom:12px}.copy-day-header p{color:var(--text-muted);font-size:1.05rem;line-height:1.5;margin:0}.copy-day-body{margin:8px 0}.week-view-container{display:flex;flex-direction:column;gap:20px;width:100%;animation:fadeInWeek .3s ease-out}.week-header-nav{display:flex;align-items:center;justify-content:center;gap:30px;background:var(--surface);padding:12px 24px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:10px}.week-range-title{font-size:1.1rem;font-weight:800;color:var(--text-main);margin:0}.nav-btn-human.sm{width:36px;height:36px;padding:0;justify-content:center}.week-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;min-height:500px;margin-top:28px}.week-column{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);border:1px solid var(--border-light);display:flex;flex-direction:column;overflow:hidden;transition:background .2s}.week-column:hover{background:#fff9}.week-day-header{padding:16px;background:var(--bg-main);border-bottom:1px solid var(--border-light);display:flex;flex-direction:column;align-items:center;gap:4px}.week-day-header .day-name{font-weight:800;text-transform:capitalize;color:var(--text-main);font-size:1rem}.week-day-header .day-date{font-size:.8rem;font-weight:600;color:var(--text-muted)}.week-sessions-list{padding:12px;display:flex;flex-direction:column;gap:10px;flex:1}.week-empty-day{text-align:center;padding:20px;border:1px dashed var(--border-light);border-radius:var(--radius-md);opacity:.6}.week-session-card{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);display:flex;overflow:hidden;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.week-session-card:hover{transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-md);border-color:var(--primary)}.week-session-info{padding:10px 12px;display:flex;flex-direction:column;gap:4px;overflow:hidden;flex:1}.week-session-subject{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-session-title{font-size:.85rem;font-weight:700;color:var(--text-main);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.week-session-card.completed{opacity:.6;filter:grayscale(.4)}.week-session-card.completed .week-session-title{text-decoration:line-through;color:var(--text-muted)}@media(max-width:1024px){.week-grid{overflow-x:auto;grid-template-columns:repeat(5,220px);padding-bottom:15px;scroll-snap-type:x mandatory}.week-column{scroll-snap-align:center}}.week-navigation-group{display:flex;align-items:center;gap:12px;background:var(--surface);padding:6px 12px;border-radius:100px;box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.week-range-display{font-weight:700;color:var(--text-main);font-size:.95rem;min-width:140px;text-align:center}@keyframes fadeInWeek{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.day-cards-list{display:flex;flex-direction:column;gap:12px}.day-selectable-card{display:flex;align-items:center;gap:16px;width:100%;padding:16px 20px;background:var(--surface);border:1px solid var(--border-light);border-radius:12px;cursor:pointer;transition:all .2s ease;min-height:60px;text-align:left}.day-selectable-card:hover:not(:disabled){border-color:var(--primary-soft);background:var(--surface-soft)}.day-selectable-card.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 2px 8px rgba(var(--primary-rgb),.1)}.day-selectable-card:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-main)}.checkbox-indicator{width:24px;height:24px;border:2px solid var(--border-light);border-radius:6px;display:flex;align-items:center;justify-content:center;background:var(--surface);flex-shrink:0;transition:all .2s ease}.day-selectable-card.selected .checkbox-indicator{background:var(--primary);border-color:var(--primary);color:#fff}.day-name{font-size:1.1rem;font-weight:500;color:var(--text-main);flex-grow:1}.source-badge{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:var(--border-light);color:var(--text-secondary);padding:4px 10px;border-radius:100px}.copy-day-footer{display:flex;justify-content:flex-end;gap:16px;margin-top:8px}.apply-copy-btn{padding:12px 28px}.full-height-modal{width:95vw!important;max-width:1400px!important;margin:20px auto;border-radius:16px}.custom-select-dropdown{padding:12px!important;display:flex!important;flex-direction:column!important;gap:8px!important}.dropdown-item-btn{display:flex;align-items:center;width:100%;padding:12px 16px;background:var(--surface);border:1px solid var(--border-light);font-size:1.15rem;color:var(--text-main);text-align:left;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);min-height:52px;gap:16px}.dropdown-item-btn:hover{background:var(--bg-hover);border-color:var(--border-color);transform:translateY(-1px);box-shadow:0 4px 12px #00000008}.dropdown-item-btn.selected{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.subject-color-dot{width:16px;height:16px;border-radius:50%;flex-shrink:0}.subject-name-large{font-weight:600;text-transform:capitalize;flex:1}.selected-subject-chip{display:flex;align-items:center;gap:10px;background:var(--bg-main);border:1px solid var(--border-light);padding:6px 14px;border-radius:100px;font-weight:700;font-size:1.05rem}.meetings-home-modal{width:min(980px,92vw);max-height:min(640px,85vh);background:var(--surface);border-radius:18px;box-shadow:0 12px 48px #00000026;font-family:inherit;display:flex;flex-direction:column}.meetings-header{padding:24px 32px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--border-light)}.meetings-titles h2{font-size:22px;font-weight:800;color:var(--text-main);margin:0 0 6px}.meetings-titles p{font-size:13px;font-weight:500;color:var(--text-secondary);margin:0}.meetings-home-body{padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:24px;justify-content:center}@media(max-width:640px){.meetings-home-body{grid-template-columns:1fr}}.neae-home-grid{grid-template-columns:1fr 1fr 1fr!important}@media(max-width:760px){.neae-home-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:480px){.neae-home-grid{grid-template-columns:1fr!important}}.meeting-action-card{background:var(--surface-soft);border:1px solid var(--border-light);border-radius:16px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .2s cubic-bezier(.16,1,.3,1)}.meeting-action-card:hover{box-shadow:0 4px 16px #0000000d;border-color:#cbd5e1;transform:translateY(-2px)}.mac-icon{margin-bottom:16px;color:var(--primary)}.meeting-action-card h3{font-size:16px;font-weight:800;color:var(--text-main);margin:0 0 8px}.mac-desc{font-size:13px;color:var(--text-secondary);margin:0 0 24px}.mac-btn{height:44px;border-radius:12px;font-size:14px;font-weight:800;width:100%}.new-meeting-modal{width:min(1040px,94vw);height:min(760px,90vh);background:var(--surface);border-radius:18px;box-shadow:0 12px 48px #00000026;display:flex;flex-direction:column}.editor-header-nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border-light)}.eh-center{text-align:center}.eh-center h2{font-size:20px;font-weight:800;color:var(--text-main);margin:0}.eh-center p{font-size:13px;color:var(--text-secondary);font-weight:500;margin:4px 0 0}.editor-body{flex:1;padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.editor-top-fields{display:grid;grid-template-columns:2fr 3fr;gap:16px}@media(max-width:768px){.editor-top-fields{grid-template-columns:1fr}}.field-group{background:var(--surface);border:1px solid var(--border-light);border-radius:14px;padding:16px}.field-group label{display:block;font-size:12px;font-weight:700;color:var(--text-main);margin-bottom:12px}.date-row{display:flex;gap:12px}.clickable-field-btn{flex:1;display:flex;align-items:center;height:52px;background:var(--surface);border:1px solid var(--border-light);border-radius:12px;padding:0 16px;font-size:15px;font-weight:700;color:var(--text-main);cursor:pointer;transition:all .2s ease}.clickable-field-btn:hover{background:var(--surface-soft);border-color:#cbd5e1}.large-input{width:100%;height:52px;background:var(--surface);border:1px solid var(--border-light);border-radius:12px;padding:0 16px;font-size:15px;font-weight:700;color:var(--text-main);transition:all .2s ease}.large-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.large-input.error-border{border-color:#f87171;background:#fef2f2}.inline-error-msg{display:block;font-size:12px;color:#f87171;margin-top:6px;font-weight:500}.content-block{flex:1;display:flex;flex-direction:column}.content-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.autosave-indicator{font-size:12px;color:var(--text-secondary);font-weight:600}.large-textarea{width:100%;flex:1;min-height:360px;background:var(--surface);border:1px solid var(--border-light);border-radius:12px;padding:16px;font-size:15px;font-weight:500;line-height:1.5;color:var(--text-main);resize:none;font-family:inherit;transition:border-color .2s ease}.large-textarea:focus{outline:none;border-color:var(--primary)}.editor-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border-light);height:72px;flex-shrink:0}.review-meetings-modal{width:min(1040px,94vw);height:min(760px,90vh);background:var(--surface);border-radius:18px;box-shadow:0 12px 48px #00000026;display:flex;flex-direction:column}.meetings-search-container{padding:24px;display:flex;justify-content:center}.search-pill{width:min(720px,100%);height:52px;background:var(--surface);border:1px solid var(--border-light);border-radius:999px;display:flex;align-items:center;padding:0 16px;box-shadow:0 2px 8px #00000008;transition:border-color .2s ease}.search-pill:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.sp-icon{color:var(--text-secondary);margin-right:12px}.sp-input{flex:1;border:none;background:transparent;outline:none;font-size:14px;font-weight:600;color:var(--text-main)}.meetings-grid-wrapper{flex:1;padding:0 24px 24px;overflow-y:auto}.meetings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1024px){.meetings-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.meetings-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.meetings-grid{grid-template-columns:1fr}}.empty-search-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:15px;font-weight:500;text-align:center;opacity:.8}.meeting-lib-card{background:var(--surface);border:1px solid var(--border-light);border-radius:16px;min-height:140px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s ease}.meeting-lib-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000000f;border-color:#cbd5e1}.mlc-title{font-size:16px;font-weight:800;color:var(--text-main);margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.mlc-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.mlc-date{font-size:13px;font-weight:600;color:var(--text-secondary)}.meeting-detail-card{width:min(840px,94vw);height:min(760px,90vh);background:var(--surface);border-radius:18px;box-shadow:0 12px 48px #00000026;display:flex;flex-direction:column}.mdc-header{padding:16px 24px;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.mdc-actions{display:flex;align-items:center;gap:8px}.mdc-body{flex:1;padding:32px 40px;overflow-y:auto}.mdc-title{font-size:26px;font-weight:800;color:var(--text-main);margin:0 0 12px;line-height:1.2}.mdc-date{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:32px}.mdc-content{font-size:16px;line-height:1.6;color:var(--text-main);white-space:pre-wrap}.mdc-content p{margin:0 0 1em}.mdc-empty{color:var(--text-secondary);font-style:italic}.non-teaching-empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:calc(100vh - 160px);padding:48px 24px}.non-teaching-empty-card{background:var(--header-card, var(--surface));color:var(--header-card-text, var(--text-main));border:1px solid var(--header-card-border, var(--border-light));border-radius:18px;padding:36px 28px;box-shadow:0 4px 16px #0000000a;max-width:780px;width:100%;display:flex;flex-direction:column;align-items:center}.nte-icon-badge{width:92px;height:92px;border-radius:50%;background-color:var(--primary-soft);display:flex;align-items:center;justify-content:center;margin-bottom:18px}.nte-icon{color:var(--primary)}.nte-title{font-size:34px;font-weight:800;color:var(--text-main);line-height:1.15;margin:0 0 10px;text-align:center;max-width:720px}.nte-subtitle{font-size:15px;font-weight:500;color:var(--text-secondary);margin:0;max-width:640px;text-align:center}@media(max-width:768px){.nte-title{font-size:28px}}.delete-program-modal-overlay{background-color:#1e3a8af2!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.delete-program-modal-content{max-width:740px!important;padding:32px!important}.dp-options-grid{margin-top:8px}.dp-option-card{display:flex;align-items:flex-start;gap:16px;padding:20px;border:2px solid var(--border-light);border-radius:12px;cursor:pointer;transition:all .2s ease;background:var(--surface)}.dp-option-card:hover{border-color:#cbd5e1}.dp-option-card.selected{border-color:var(--primary);background-color:#3b82f60a}.dp-option-icon{color:var(--text-muted);margin-top:2px}.dp-option-card.selected .dp-option-icon{color:var(--primary)}.dp-option-text{flex:1}.dp-option-text h4{margin:0 0 6px;font-size:16px;color:var(--text-main)}.dp-option-text p{margin:0;font-size:14px;color:var(--text-muted);line-height:1.4}.dp-radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--border-light);display:flex;align-items:center;justify-content:center;margin-top:2px;flex-shrink:0}.dp-option-card.selected .dp-radio{border-color:var(--primary)}.dp-radio .radio-inner{width:10px;height:10px;border-radius:50%;background-color:transparent;transition:background-color .2s}.dp-option-card.selected .dp-radio .radio-inner{background-color:var(--primary)}.format-notice-modal-overlay{background-color:#0f172a80!important}.format-notice-modal-content{max-width:760px!important;width:92vw;max-height:640px!important;height:min(640px,88vh);overflow:hidden!important;padding:32px!important;border-radius:20px!important;background-color:var(--surface)!important;box-shadow:0 20px 40px #0000001a!important;display:flex!important;flex-direction:column!important;position:relative}.format-notice-body{flex:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;position:relative;height:100%}.format-notice-close{position:absolute;top:-8px;right:-8px;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);background:transparent;border:none;cursor:pointer;transition:all .2s ease;z-index:10}.format-notice-close:hover{background-color:var(--surface-hover);color:var(--text-main)}.format-notice-hero-icon{width:48px;height:48px;background-color:#e0f2fe;color:#0284c7;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;flex-shrink:0}.format-notice-title{font-size:28px;font-weight:800;color:var(--text-main);margin:0 0 12px;text-align:center;flex-shrink:0}.format-notice-text-block{max-width:560px;margin:0 auto 16px;text-align:center;flex-shrink:0}.format-notice-text-block p{font-size:15px;line-height:1.6;color:var(--text-secondary);margin:0 0 8px}.format-notice-text-block p:last-child{margin-bottom:0}.format-notice-preview-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;flex-shrink:0}.format-notice-preview-block{width:100%;max-width:560px;height:200px;margin:0 auto;border:1px solid #e2e8f0;background-color:var(--surface-soft);border-radius:16px;padding:12px;display:flex;align-items:center;justify-content:center;position:relative}.format-notice-image-container{width:100%;height:100%;position:relative;border-radius:12px;overflow:hidden;background:var(--surface)}.format-notice-image{width:100%;height:100%;object-fit:contain;display:block;border-radius:12px}.format-notice-zoom-btn{position:absolute;bottom:8px;right:8px;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--border-light);border-radius:8px;padding:6px 14px;display:flex;align-items:center;gap:6px;font-weight:600;font-size:13px;color:var(--text-main);box-shadow:var(--shadow-sm);transition:all .2s;cursor:pointer}.format-notice-zoom-btn:hover{background:var(--surface);transform:translateY(-2px);box-shadow:var(--shadow-md)}.format-notice-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.format-notice-preview-caption{font-size:13px;color:#64748b;margin:8px 0 16px}.format-notice-actions{width:100%;display:flex;flex-direction:column;align-items:center;margin-top:auto}.primary-action-wrapper{display:flex;flex-direction:column;align-items:center;width:100%;position:relative}.format-notice-adapter-btn{width:100%;max-width:320px;height:48px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;border-radius:999px;justify-content:center;display:flex;align-items:center;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.format-notice-secondary-actions{display:flex;flex-direction:column;align-items:center;margin-top:10px}.format-notice-continue-btn{font-size:14.5px;font-weight:500;color:var(--text-secondary);text-decoration:none;background:transparent;border:none;cursor:pointer;padding:8px 16px;transition:color .2s ease}.format-notice-continue-btn:hover{color:var(--text-main);text-decoration:underline;text-underline-offset:4px}.format-notice-checkbox-label{cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14.5px;color:var(--text-secondary);margin-top:12px;transition:color .2s}.format-notice-checkbox-label:hover{color:var(--text-main)}.format-notice-microfeedback{font-size:13px;opacity:0;transform:translateY(-5px);transition:all .3s;text-align:center;position:absolute;top:100%;margin-top:6px;pointer-events:none}.format-notice-microfeedback.showing{opacity:1;transform:translateY(0);color:#059669}.hidden-placeholder{visibility:hidden}.image-expand-overlay{position:fixed;inset:0;background:#000000e6;z-index:20000;display:flex;align-items:center;justify-content:center;padding:24px}.image-expand-content{position:relative;max-width:100%;max-height:100%;display:flex;justify-content:center;align-items:center}.image-expand-close{position:absolute;top:-40px;right:0;color:#fff;background:#fff3;border-radius:50%;padding:8px}.image-expand-close:hover{background:#ffffff4d}.expanded-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px}.link-pill-micro{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;background-color:#1e40af0f;border:1px solid rgba(30,64,175,.25);color:var(--primary);font-size:11.5px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.link-pill-micro:hover{background-color:#1e40af1f}.link-pill-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;background-color:#1e40af14;border:1px solid rgba(30,64,175,.3);color:var(--primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:none}.link-pill-btn:hover{background-color:#1e40af24}.link-pill-btn:active{background-color:#1e40af33}.welcome-primary-card{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:220px;height:48px;padding:0 20px;background:var(--primary);color:#fff;border:none;border-radius:14px;font-size:15px;font-weight:600;box-shadow:0 6px 16px #0000001f;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.welcome-primary-card:hover{background:var(--primary-hover);box-shadow:0 8px 20px #00000029;transform:translateY(-1px)}.welcome-primary-card:active{background:var(--primary-pressed);box-shadow:0 4px 10px #0000001f;transform:translateY(0)}.welcome-primary-card:focus{outline:2px solid var(--focus);outline-offset:2px}.welcome-secondary-card{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:180px;height:40px;padding:0 18px;background:var(--menu-button-bg);color:var(--menu-button-text);border:1px solid var(--border-subtle);border-radius:12px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #00000014;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.welcome-secondary-card:hover{background:var(--surface-hover);color:var(--text-main);box-shadow:0 6px 16px #0000001f;transform:translateY(-1px)}.welcome-secondary-card:active{background:var(--surface-pressed);transform:translateY(0)}.primary-btn,.secondary-btn{height:42px;border-radius:999px;padding:0 24px;font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;border:none;cursor:pointer}.primary-btn{background:var(--primary);color:var(--on-primary)}.primary-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.secondary-btn{background:var(--surface);color:var(--text-primary);border:1px solid var(--border-subtle)}.secondary-btn:hover{background:var(--surface-hover);transform:translateY(-1px)}.lang-icon-btn{width:36px;height:36px;border-radius:999px;background:var(--surface);border:1px solid var(--border-subtle);overflow:hidden;padding:0;display:flex;justify-content:center;align-items:center;cursor:pointer;opacity:.95;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.lang-icon-btn:hover{transform:scale(1.03);background:var(--surface-hover);opacity:1}.lang-icon-btn.selected{opacity:1;box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--primary)}.secondary-action-row-container{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%);z-index:10000;width:max-content;max-width:calc(100vw - 80px)}.secondary-capsule{background:var(--surface);border:1px solid var(--border-subtle);border-radius:999px;box-shadow:var(--shadow-sm);padding:12px 14px;display:flex;flex-direction:column;align-items:center;margin:0 auto}.secondary-row-1{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:nowrap}.secondary-row-2{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:nowrap;margin-top:12px}@media(max-width:980px){.secondary-row-1,.secondary-row-2{flex-wrap:wrap}}.submenu-popover-item{display:flex;align-items:center;gap:10px;height:42px;padding:0 12px;border-radius:12px;background:transparent;cursor:pointer;border:none;width:100%;color:var(--text-primary);font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1)}.submenu-popover-item:hover{background:var(--surface-hover)}.submenu-popover-item:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent)}.submenu-popover-item:active{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.submenu-popover-item .icon{color:var(--text-muted)}.submenu-popover-item.danger,.submenu-popover-item.danger .icon{color:var(--error)}.submenu-divider{height:1px;background:var(--border-subtle);margin:8px 0}.format-notice-section-title{font-size:.85rem;font-weight:800;color:var(--text-primary);margin-bottom:14px;text-align:center;text-transform:uppercase;letter-spacing:.06em;opacity:.9}.format-notice-columns-list{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-bottom:14px}.format-notice-column-pill{background:var(--surface);border:1px solid var(--border-subtle);padding:8px 18px;border-radius:12px;font-size:.95rem;font-weight:700;color:var(--primary);box-shadow:0 2px 4px #0000000a}.format-notice-schema-strip{background:var(--primary-very-soft);border:1px dashed var(--primary-soft);padding:16px;border-radius:14px;font-family:inherit;font-size:1rem;font-weight:800;color:var(--text-primary);text-align:center;margin:12px 0 28px;letter-spacing:.01em;box-shadow:inset 0 2px 4px #00000005}.format-notice-secondary-help{font-size:.92rem;color:var(--text-secondary);text-align:center;line-height:1.6;max-width:480px;margin:20px auto 0}.format-notice-image-header{margin-bottom:16px;text-align:center}@keyframes popIn{0%{opacity:0;transform:scale(.93) translateY(-4px)}70%{opacity:1;transform:scale(1.02) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fadeInBlock{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-pop{animation:popIn .22s cubic-bezier(.16,1,.3,1) forwards}.animate-fade-in{animation:fadeInBlock .18s ease-out forwards}.header-content.main-wrapper.no-pad.header-center-reference.vertical-stack.items-center{max-width:420px!important;margin-inline:auto!important;padding:20px 16px 16px!important;border-radius:18px!important;border:.5px solid var(--header-card-border, var(--border, var(--border-subtle)))!important;background:var(--header-card, var(--background-primary, var(--surface)))!important;color:var(--header-card-text, var(--text-main))!important;gap:0!important}.brand-label{font-size:10px!important;font-weight:600!important;letter-spacing:.08em!important;opacity:.55!important;margin-bottom:10px!important}.main-date-title{font-size:26px!important;font-weight:700!important;letter-spacing:-.01em!important;line-height:1.08!important;text-transform:uppercase!important;margin-bottom:0!important}.date-header{margin-bottom:12px!important}.day-navigation-group{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:4px!important;border-radius:999px!important;background:var(--background-secondary, var(--surface-soft))!important;border:none!important;box-shadow:none!important;gap:0!important;width:100%!important;margin:0 0 12px!important}.nav-btn-human{min-height:32px!important;padding:0 14px!important;border-radius:999px!important;font-size:13px!important;font-weight:500!important;color:var(--text-secondary, var(--text-muted))!important;background:transparent!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;flex:1;justify-content:center!important}.nav-btn-human:hover{background:var(--surface, #fff)!important;color:var(--text-main)!important;box-shadow:0 1px 4px #00000012!important}.nav-btn-human.today{background:var(--accent, var(--primary))!important;color:var(--accent-foreground, #fff)!important;box-shadow:0 2px 8px #0000001a!important;font-weight:600!important}.action-bar-container{margin-bottom:16px!important;margin-top:20px!important}.action-bar-layout{width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important}.action-bar{display:flex!important;justify-content:center!important;align-items:center!important;gap:12px!important;border:none!important;background:transparent!important;box-shadow:none!important;padding:0!important}.action-bar>.menu-action-btn.primary-pill{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:170px!important;min-height:56px!important;padding:0 22px!important;border-radius:14px!important;background:var(--menu-button-bg, var(--background-primary, var(--surface)))!important;color:var(--menu-button-text, var(--text-muted))!important;font-size:15px!important;font-weight:600!important;border:.5px solid var(--border, var(--border-subtle))!important;box-shadow:none!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important}.action-bar>.menu-action-btn.primary-pill:hover{background:var(--menu-button-hover, var(--surface-hover, #f1f5f9))!important;color:var(--menu-button-text, var(--text-main))!important;box-shadow:0 4px 12px #0000000f!important;transform:translateY(-1px)!important}.action-bar>.menu-action-btn.primary-pill.active{background:var(--menu-button-selected, var(--accent, var(--primary)))!important;color:var(--menu-button-selected-text, var(--accent-foreground, #fff))!important;border-color:transparent!important;box-shadow:0 4px 12px rgba(var(--primary-rgb),.2)!important}.action-bar>.menu-action-btn.primary-pill:active{transform:translateY(0)!important;box-shadow:none!important}.action-bar{width:100%!important;max-width:min(420px,calc(100vw - 16px))!important;margin-inline:auto!important}.action-bar>.menu-action-btn.primary-pill{flex:1 1 0!important;min-width:0!important}.action-bar>.menu-action-btn.primary-pill>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacherscreen-btn{flex:0 0 56px!important;width:56px;height:56px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:14px;border:.5px solid var(--border, var(--border-subtle));background:var(--menu-button-bg, var(--background-primary, var(--surface)));color:var(--menu-button-text, var(--text-muted));cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.teacherscreen-btn:hover{background:var(--menu-button-hover, var(--surface-hover, #f1f5f9));color:var(--menu-button-text, var(--accent, var(--primary)));box-shadow:0 4px 12px #0000000f;transform:translateY(-1px)}.teacherscreen-btn.active{background:var(--menu-button-selected, var(--accent, var(--primary)));color:var(--menu-button-selected-text, var(--accent-foreground, #fff));border-color:transparent;box-shadow:0 4px 12px rgba(var(--primary-rgb),.2)}.teacherscreen-btn:active{transform:translateY(0);box-shadow:none}@media(max-width:580px){.action-bar>.menu-action-btn.primary-pill{padding:0 10px!important;font-size:13px!important;gap:6px!important}}.secondary-action-row-container{width:max-content!important;max-width:calc(100vw - 32px)!important;position:relative!important;left:auto!important;top:auto!important;transform:none!important;margin-top:18px!important;margin-inline:auto!important;align-self:center!important}.secondary-capsule{background:var(--background-secondary, var(--surface-soft))!important;border:none!important;border-radius:16px!important;box-shadow:0 8px 32px #00000014,0 1px 4px #0000000a!important;padding:10px!important;display:grid!important;grid-auto-flow:column!important;grid-auto-columns:minmax(120px,1fr)!important;gap:10px!important;align-items:stretch!important;margin:0 auto!important}.secondary-row-1,.secondary-row-2{display:contents!important}.secondary-row-2>div{display:flex!important;flex-direction:column!important;height:100%!important}.secondary-row-2>div>.menu-action-btn.primary-pill{flex:1!important;width:100%!important}.secondary-row-1 .menu-action-btn.primary-pill,.secondary-row-2 .menu-action-btn.primary-pill{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:96px!important;height:100%!important;padding:14px 12px!important;border-radius:14px!important;border:.5px solid var(--border, var(--border-subtle))!important;background:var(--menu-button-bg, var(--background-primary, var(--surface)))!important;color:var(--menu-button-text, var(--text-primary))!important;font-size:13px!important;font-weight:500!important;text-align:center!important;line-height:1.2!important;box-shadow:0 1px 2px #0000000a!important;transition:all .18s cubic-bezier(.16,1,.3,1)!important}.secondary-row-1 .menu-action-btn.primary-pill:hover,.secondary-row-2 .menu-action-btn.primary-pill:hover{background:var(--menu-button-selected, var(--accent, var(--primary)))!important;color:var(--menu-button-selected-text, var(--accent-foreground, #fff))!important;border-color:transparent!important;box-shadow:0 4px 12px #0000001f!important;transform:translateY(-2px)!important}.secondary-row-1 .menu-action-btn.primary-pill.active,.secondary-row-2 .menu-action-btn.primary-pill.active{background:var(--menu-button-selected, var(--accent, var(--primary)))!important;color:var(--menu-button-selected-text, var(--accent-foreground, #fff))!important;border-color:transparent!important;box-shadow:0 4px 12px #0000001f!important}.secondary-row-1 .menu-action-btn.primary-pill svg,.secondary-row-2 .menu-action-btn.primary-pill svg{width:20px!important;height:20px!important;stroke-width:1.8!important;flex-shrink:0!important;margin-bottom:2px!important}.secondary-row-1 .menu-action-btn.primary-pill span,.secondary-row-2 .menu-action-btn.primary-pill span{display:block!important;white-space:normal!important;text-align:center!important;word-break:normal!important;max-width:100%!important}.secondary-row-1 .menu-action-btn.primary-pill .notification-dot,.secondary-row-2 .menu-action-btn.primary-pill .notification-dot{display:block!important;position:absolute!important;top:8px!important;right:8px!important;width:10px!important;height:10px!important;max-width:10px!important;border-radius:50%!important;background:var(--primary)!important;border:2px solid var(--menu-button-bg, var(--background-primary, var(--surface)))!important;padding:0!important}.settings-dropdown{background:var(--background-secondary, var(--surface-soft))!important;border:1px solid var(--border-subtle)!important;border-radius:14px!important;padding:10px!important;box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000f!important;margin-top:10px!important}.submenu-popover-item{border-radius:10px!important;font-size:13px!important;font-weight:500!important;background:transparent!important;padding:10px 12px!important}.submenu-popover-item:hover{background:var(--accent, var(--primary))!important;color:var(--accent-foreground, #fff)!important}.submenu-popover-item:hover .icon{color:var(--accent-foreground, #fff)!important}.submenu-popover-item.danger:hover{background:var(--danger-soft)!important;color:var(--danger)!important}@media(max-width:980px){.secondary-capsule{grid-auto-flow:row!important;grid-template-columns:repeat(3,1fr)!important}}@media(max-width:580px){.secondary-capsule{grid-template-columns:repeat(2,1fr)!important}.header-content.main-wrapper.no-pad.header-center-reference.vertical-stack.items-center{max-width:calc(100vw - 16px)!important}}.support-badge{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;letter-spacing:.01em;padding:4px 12px;border-radius:12px;color:var(--primary);background:var(--primary-soft);border:1px solid var(--primary-very-soft);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-badge svg{flex-shrink:0}.week-support-chip{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;margin-top:6px;padding:2px 7px;border:1px solid currentColor;border-radius:999px;font-size:.65rem;font-weight:700;color:inherit;opacity:.85;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-support-chip svg{flex-shrink:0}.neae-hub-grid{grid-template-columns:1fr 1fr!important}@media(max-width:560px){.neae-hub-grid{grid-template-columns:1fr!important}}.neae-hub-card{padding:24px 20px;border-radius:20px;background:var(--modal-surface-soft);border:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;text-align:center}.neae-hub-card-icon{width:52px;height:52px;border-radius:14px;background:var(--primary);color:var(--on-primary, #fff);display:flex;align-items:center;justify-content:center;margin-bottom:14px}.neae-hub-count{display:block;font-size:.75rem;font-weight:600;color:var(--text-muted);margin-bottom:16px}.supports-list-body,.supports-form-body{display:flex;flex-direction:column;gap:20px;padding:4px 0}.support-create-card{display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;border-radius:16px;border:1px dashed var(--primary);background:var(--primary-soft);cursor:pointer;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1)}.support-create-card:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000000f}.support-create-icon{width:40px;height:40px;flex-shrink:0;border-radius:12px;background:var(--primary);color:var(--on-primary, #fff);display:flex;align-items:center;justify-content:center}.support-create-text{display:flex;flex-direction:column;gap:2px}.support-create-text strong{font-size:.95rem;font-weight:700;color:var(--text-main)}.support-create-text small{font-size:.8rem;color:var(--text-muted)}.supports-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:28px 20px;border-radius:16px;border:1px dashed var(--border-subtle);color:var(--text-muted)}.supports-empty p{margin:6px 0 0;font-size:.95rem;font-weight:700;color:var(--text-main)}.supports-empty span{font-size:.82rem;max-width:380px}.supports-cards{display:flex;flex-direction:column;gap:12px}.support-card{padding:16px 18px;border-radius:16px;background:var(--modal-surface-soft);border:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:12px}.support-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.support-card-identity{display:flex;align-items:center;gap:12px;min-width:0}.support-avatar{width:34px;height:34px;flex-shrink:0;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center}.support-card-identity h4{margin:0;font-size:.95rem;font-weight:700;color:var(--text-main);overflow-wrap:anywhere}.support-card-meta{font-size:.75rem;color:var(--text-muted)}.support-card-actions{display:flex;gap:6px;flex-shrink:0}.support-icon-btn{width:30px;height:30px;border-radius:9px;border:1px solid var(--border-subtle);background:var(--surface, #fff);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.support-icon-btn:hover{color:var(--primary);border-color:var(--primary)}.support-icon-btn.is-danger:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.support-session-chips{display:flex;flex-wrap:wrap;gap:6px}.support-session-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.75rem;font-weight:600}.support-delete-hint{margin:0;font-size:.78rem;font-weight:600;color:var(--danger-text, var(--danger))}.support-field{display:flex;flex-direction:column;gap:8px}.support-field>label{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.support-help-text{margin:-2px 0 4px;font-size:.8rem;line-height:1.45;color:var(--text-muted)}.support-text-input{width:100%;padding:11px 14px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface, #fff);color:var(--text-main);font-family:inherit;font-size:.95rem;outline:none;transition:border-color .2s,box-shadow .2s}.support-text-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.support-sessions-empty{padding:14px 16px;border-radius:12px;border:1px dashed var(--border-subtle);font-size:.82rem;color:var(--text-muted);text-align:center}.support-session-rows{display:flex;flex-direction:column;gap:8px}.support-session-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--modal-surface-soft);border:1px solid var(--border-subtle)}.support-session-row.is-invalid{border-color:var(--danger);background:var(--danger-soft)}.support-select{flex:0 0 130px;padding:8px 10px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface, #fff);color:var(--text-main);font-family:inherit;font-size:.88rem;font-weight:600;outline:none;cursor:pointer}.support-select:focus{border-color:var(--primary)}.support-time-pair{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.support-time-pair .time-input-clean{flex:1;min-width:0;background:var(--surface, #fff)}.support-time-dash{color:var(--text-muted);font-weight:600}.support-add-session-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--primary);background:transparent;color:var(--primary);font-family:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .15s ease}.support-add-session-btn:hover{background:var(--primary-soft)}.support-slot-picker{display:flex;flex-direction:column;gap:6px;padding-top:4px}.support-slot-picker-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.support-slot-chips{display:flex;flex-wrap:wrap;gap:6px}.support-slot-chip{padding:4px 10px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface, #fff);color:var(--text-muted);font-family:inherit;font-size:.74rem;font-weight:600;cursor:pointer;transition:all .15s ease}.support-slot-chip:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.support-error{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:var(--danger-soft);color:var(--danger-text, var(--danger));font-size:.85rem;font-weight:600}@media(max-width:560px){.support-session-row{flex-wrap:wrap}.support-select{flex:1 1 100%}}.primary-btn.sync-danger-btn,.base-modal-footer-pill .primary-btn.sync-danger-btn{background:var(--danger)!important;border-color:var(--danger)!important;color:#fff!important}.primary-btn.sync-danger-btn:hover,.base-modal-footer-pill .primary-btn.sync-danger-btn:hover{filter:brightness(.92)}.cloud-unreadable-banner{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:10px;align-items:flex-start;max-width:min(560px,calc(100vw - 2rem));padding:12px 16px;border-radius:12px;background:var(--danger-soft);border:1px solid var(--danger);color:var(--danger-text);font-size:.85rem;line-height:1.45;z-index:9998;box-shadow:0 4px 12px #00000026}.cloud-restored-banner{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:10px;align-items:flex-start;max-width:min(560px,calc(100vw - 2rem));padding:12px 16px;border-radius:12px;background:var(--surface-card, #fff);border:1px solid var(--primary);color:var(--text-main);font-size:.85rem;line-height:1.45;z-index:9998;box-shadow:0 4px 12px #00000026}.cloud-banner-close{background:none;border:none;color:inherit;font-size:1.15rem;line-height:1;padding:0 2px;cursor:pointer;opacity:.6;align-self:flex-start}.cloud-banner-close:hover{opacity:1}.report-stack{display:flex;flex-direction:column;gap:14px}.report-section{background:var(--modal-surface-soft);border:1px solid var(--border-subtle);border-radius:16px;padding:18px}.report-section-head{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"icon title action" ".    hint  .";align-items:center;column-gap:12px;margin-bottom:16px}.report-section-head.is-last{margin-bottom:0}.report-section-icon{grid-area:icon;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--primary) 12%,var(--modal-surface));color:var(--primary)}.report-section-title{grid-area:title;margin:0;min-width:0;font-size:.97rem;font-weight:700;letter-spacing:-.01em;color:var(--text-main)}.report-section-action{grid-area:action;display:flex;gap:4px}.report-section-hint{grid-area:hint;margin:4px 0 0;font-size:.82rem;line-height:1.5;color:var(--text-muted)}.report-note{margin:14px auto 0;max-width:52ch;text-align:center;font-size:.83rem;line-height:1.55;color:var(--text-muted)}.report-period+.report-period{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border-subtle)}.report-period-tag{display:block;margin-bottom:8px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.report-range{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.report-range.has-remove{grid-template-columns:1fr auto 1fr auto}.report-range-arrow{display:grid;place-items:center;color:var(--text-muted)}.report-datefield{display:flex;align-items:center;gap:11px;width:100%;padding:10px 14px;border-radius:13px;border:1px solid var(--border-subtle);background:var(--modal-surface);font-family:inherit;text-align:left;cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}.report-datefield:hover{border-color:var(--primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.report-datefield:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 35%,transparent)}.report-datefield-icon{display:grid;place-items:center;flex-shrink:0;color:var(--primary)}.report-datefield-text{min-width:0}.report-datefield-caption{display:block;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.report-datefield-value{display:block;font-size:.94rem;font-weight:700;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-datefield-value:first-letter{text-transform:uppercase}.report-period-meta{margin-top:9px;text-align:center;font-size:.78rem;color:var(--text-muted)}@media(max-width:560px){.report-range,.report-range.has-remove{grid-template-columns:1fr}.report-range-arrow{transform:rotate(90deg)}.report-range .btn-ghost{justify-self:end}}.report-option-list{display:flex;flex-direction:column;gap:8px;max-height:210px;overflow-y:auto;padding-right:4px}.report-option{display:flex;align-items:center;gap:10px;font-size:.9rem;cursor:pointer}.report-option-name{flex:1;min-width:0;font-size:.9rem;font-weight:600;color:var(--text-main)}.report-option-meta{flex-shrink:0;font-size:.78rem;color:var(--text-muted)}.report-error{display:flex;align-items:center;gap:9px;padding:12px 14px;border-radius:13px;border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);background:color-mix(in srgb,var(--danger) 9%,var(--modal-surface));color:var(--danger);font-size:.85rem;font-weight:600}@media(max-width:640px){.modal-choice-grid,.method-selection-grid,.meetings-home-body,.neae-home-grid,.neae-hub-grid{grid-template-columns:1fr!important;gap:16px!important;min-height:0!important;max-width:none!important}.method-card-v2{padding:22px 18px;border-radius:16px}.method-card-v2 p{max-width:none}.card-icon-v2{width:56px;height:56px;border-radius:18px;margin-bottom:16px}.card-icon-v2 svg{width:32px;height:32px}.meeting-action-card{padding:20px 16px}.evaluation-hub-tile{min-height:0!important;padding:18px 16px!important;gap:10px!important}}.sl-field-label{display:block;font-size:.875rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.sl-field-hint{margin:0 0 12px;font-size:.8rem;line-height:1.45;color:var(--text-muted)}.sl-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:8px 10px 8px 12px;margin-bottom:10px;border-radius:14px;border:1px solid var(--border-subtle);background:var(--modal-surface-soft)}.sl-counts{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.sl-count{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px solid transparent;font-size:.78rem;color:var(--text-muted);white-space:nowrap}.sl-count b{font-size:.85rem;font-weight:800;color:var(--text-main)}.sl-count:before{content:"";width:7px;height:7px;border-radius:50%;flex-shrink:0}.sl-count--yes{border-color:color-mix(in srgb,var(--success) 30%,transparent);background:color-mix(in srgb,var(--success) 10%,transparent)}.sl-count--yes:before{background:var(--success)}.sl-count--no{border-color:color-mix(in srgb,var(--danger) 30%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent)}.sl-count--no:before{background:var(--danger)}.sl-count--pending{border-color:var(--border-subtle);background:var(--surface)}.sl-count--pending:before{background:transparent;border:1.5px solid var(--text-muted);width:8px;height:8px}.sl-bulk{display:flex;align-items:center;gap:6px}.sl-bulk-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface);color:var(--text-main);font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.sl-bulk-btn:hover:not(:disabled){background:var(--surface-hover);border-color:var(--text-muted)}.sl-bulk-btn:disabled{opacity:.45;cursor:default}.sl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:6px;max-height:300px;overflow-y:auto;padding:2px 4px 2px 2px}.sl-row{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 8px 7px 11px;border-radius:12px;border:1px solid var(--border-subtle);background:var(--surface-soft);transition:background .15s,border-color .15s}.sl-row:hover{background:var(--surface-hover)}.sl-row--yes{border-color:color-mix(in srgb,var(--success) 40%,transparent);background:color-mix(in srgb,var(--success) 8%,var(--surface))}.sl-row--no{border-color:color-mix(in srgb,var(--danger) 40%,transparent);background:color-mix(in srgb,var(--danger) 8%,var(--surface))}.sl-row--yes:hover{background:color-mix(in srgb,var(--success) 15%,var(--surface))}.sl-row--no:hover{background:color-mix(in srgb,var(--danger) 15%,var(--surface))}.sl-row-index{flex-shrink:0;min-width:14px;font-size:.75rem;font-weight:700;color:var(--text-muted);font-variant-numeric:tabular-nums}.sl-row-name{flex:1;min-width:0;font-size:.9rem;font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-row-remove{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--danger);cursor:pointer;opacity:0;transition:opacity .15s,background .15s}.sl-row-remove:hover{background:color-mix(in srgb,var(--danger) 14%,transparent)}.sl-row-remove.is-visible{opacity:1}.sl-toggle{display:inline-flex;flex-shrink:0;gap:2px;padding:2px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface)}.sl-toggle button{padding:3px 10px;border:none;border-radius:999px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.76rem;font-weight:700;line-height:1.6;cursor:pointer;transition:background .15s,color .15s}.sl-toggle button:hover{color:var(--text-main)}.sl-toggle button.is-on-yes{background:var(--success);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.sl-toggle button.is-on-no{background:var(--danger);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.sl-toggle button.is-on-yes:hover,.sl-toggle button.is-on-no:hover{color:var(--text-inverse)}.sl-group-head{display:flex;align-items:center;gap:8px;margin:0 0 8px 2px}.sl-group-head h4{margin:0;font-size:.9rem;font-weight:800;color:var(--text-main)}.sl-group-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sl-group-count{padding:1px 9px;border-radius:999px;font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}.sl-group-count--yes{background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success)}.sl-group-count--no{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.sl-grid--detail{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-height:260px}.sl-group-dot--yes{background:var(--success)}.sl-group-dot--no{background:var(--danger)}.sl-note{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;border-radius:12px;border:1px solid var(--border-subtle);background:var(--modal-surface-soft);font-size:.8rem;line-height:1.45;color:var(--text-muted)}.sl-note svg{flex-shrink:0;margin-top:1px;color:var(--text-muted)}.sl-detail-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--border-subtle)}.sl-detail-head h4{margin:0;font-size:1.05rem;font-weight:800;color:var(--text-main)}.sl-detail-meta{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-muted)}@media(max-width:560px){.sl-grid,.sl-grid--detail{grid-template-columns:1fr;max-height:46vh}.sl-bulk{flex:1 1 100%}.sl-row-remove{opacity:1}.sl-detail-meta{margin-left:0;width:100%}}@font-face{font-family:Playwrite ES;src:url(./PlaywriteES-variable-9BGy0NHf.woff2) format("woff2");font-weight:100 400;font-style:normal;font-display:swap}.teacher-screen{position:fixed;z-index:9500;display:flex;flex-direction:column;overflow:hidden;background:var(--modal-surface, var(--surface));border:1px solid var(--border-subtle);border-radius:18px;box-shadow:0 18px 48px #0f172a2e;font-family:var(--font-family);color:var(--text-main);animation:popIn .2s cubic-bezier(.16,1,.3,1) forwards}.teacher-screen.is-fullscreen{inset:0;width:100vw;height:100vh;border-radius:0;border:none;box-shadow:none}.ts-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border-subtle);background:var(--surface-soft);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0}.ts-header:active{cursor:grabbing}.is-fullscreen .ts-header{cursor:default}.ts-header-side{display:flex;align-items:center;gap:10px;min-width:0}.ts-header-side--start{justify-self:start}.ts-header-grip{color:var(--text-muted);opacity:.6;flex-shrink:0}.is-fullscreen .ts-header-grip{display:none}.ts-header-date{min-width:0;font-size:16px;font-weight:700;color:var(--text-secondary, var(--text-muted));text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.is-fullscreen .ts-header-date{font-size:20px}.ts-header-clock{justify-self:center;display:flex;align-items:baseline;gap:5px;padding:3px 14px;border-radius:8px;background:#f4f8fd;border:1px solid #D7E2EF;box-shadow:0 2px 6px #0f172a0f;font-family:SFMono-Regular,ui-monospace,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums;letter-spacing:.05em}.ts-clock-time{font-size:30px;font-weight:700;color:#405675;line-height:1}.ts-clock-seconds{font-size:13px;font-weight:700;color:#40567580}.is-fullscreen .ts-header-clock{padding:5px 22px}.is-fullscreen .ts-clock-time{font-size:50px}.is-fullscreen .ts-clock-seconds{font-size:20px}.ts-header-actions{justify-self:end;display:flex;align-items:center;gap:4px}.ts-tab{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:9px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.ts-tab:hover{background:var(--surface-hover);color:var(--text-main)}.ts-close:hover{background:var(--danger-soft);color:var(--danger)}.ts-resize-handle{position:absolute;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;touch-action:none;z-index:5;background:linear-gradient(135deg,transparent 50%,var(--border-subtle) 50%,var(--border-subtle) 60%,transparent 60%,transparent 70%,var(--border-subtle) 70%,var(--border-subtle) 80%,transparent 80%)}.ts-detached-root{position:fixed;inset:0;display:flex;flex-direction:column;font-family:var(--font-family);color:var(--text-main)}.ts-detached-view{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--modal-surface, var(--surface))}.ts-detached-view:fullscreen{width:100vw;height:100vh}.ts-header--static,.ts-header--static:active{cursor:default}.teacher-screen.is-detached{inset:auto 24px 24px auto;width:300px;height:auto}.ts-detached-note{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 18px;text-align:center;color:var(--text-muted)}.ts-detached-note p{margin:0;font-size:13px;line-height:1.5;max-width:28ch}.ts-popup-blocked{margin:0;padding:10px 14px;background:var(--warning-soft);color:var(--warning-text);font-size:12px;line-height:1.45}.ts-canvas{position:relative;flex:1;min-height:0;overflow:hidden}.ts-frame{position:absolute;display:flex;flex-direction:column;overflow:visible;background:var(--ts-card, #FFFFFF);border:1px solid rgba(15,23,42,.1);border-radius:12px;box-shadow:0 2px 10px #0f172a12;color:#334155;-webkit-user-select:none;user-select:none;touch-action:none}.ts-frame input,.ts-frame textarea,.ts-frame [contenteditable]{-webkit-user-select:text;user-select:text}.ts-frame.is-active{border-color:var(--accent, var(--primary));box-shadow:0 6px 20px #0f172a24}.ts-frame.is-bare{background:transparent;border-color:transparent;box-shadow:none}.ts-frame.is-bare .ts-frame-body{padding:0}.ts-frame.is-bare.is-active{border-color:var(--accent, var(--primary));border-style:dashed}.ts-frame-close{position:absolute;top:6px;right:6px;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid rgba(15,23,42,.1);border-radius:50%;background:#fff;color:#7a869a;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease;box-shadow:0 1px 4px #0f172a24}.ts-frame:hover .ts-frame-close,.ts-frame.is-active .ts-frame-close,.ts-frame-close:focus-visible{opacity:1}.ts-frame-close:hover{background:var(--danger-soft);color:var(--danger)}.ts-frame-body{flex:1;min-height:0;padding:10px;overflow:hidden;container-type:size}.ts-frame-handle{position:absolute;width:14px;height:14px;touch-action:none;opacity:0}.ts-frame:hover .ts-frame-handle,.ts-frame.is-active .ts-frame-handle{opacity:1;background:var(--accent, var(--primary));border-radius:3px}.ts-frame-handle--nw{left:-6px;top:-6px;cursor:nwse-resize}.ts-frame-handle--ne{right:-6px;top:-6px;cursor:nesw-resize}.ts-frame-handle--sw{left:-6px;bottom:-6px;cursor:nesw-resize}.ts-frame-handle--se{right:-6px;bottom:-6px;cursor:nwse-resize}.ts-frame-toolbar{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);z-index:4;display:flex;flex-direction:column;gap:4px;width:max-content;max-width:min(560px,var(--toolbar-room, 92vw));padding:5px 7px;border:1px solid rgba(15,23,42,.08);border-radius:12px;background:#fff;box-shadow:0 10px 28px #0f172a33;color:#334155}.ts-frame-toolbar:empty{display:none}.ts-frame-toolbar.is-below{bottom:auto;top:calc(100% + 8px)}.ts-frame:not(.is-active) .ts-frame-toolbar{display:none}.ts-frame-toolbar.is-inline{position:static;transform:none;max-width:none;align-self:flex-start}.ts-dock{position:absolute;right:16px;top:16px;bottom:16px;z-index:9000;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:10px;pointer-events:none}.ts-dock>*{pointer-events:auto}.ts-dock-buttons{display:flex;align-items:center;gap:8px}.ts-dock-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(15,23,42,.1);border-radius:50%;background:#fff;color:#64748b;cursor:pointer;box-shadow:0 3px 12px #0f172a1f;transition:transform .15s ease,box-shadow .15s ease}.ts-dock-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0f172a2e}.ts-dock-btn.primary{width:46px;height:46px;border-color:transparent;background:var(--accent, var(--primary));color:var(--accent-foreground, #fff)}.ts-popover{min-width:190px;max-height:calc(100% - 56px);overflow-y:auto;overscroll-behavior:contain;padding:6px;border:1px solid rgba(15,23,42,.1);border-radius:12px;background:#fff;box-shadow:0 10px 30px #0f172a29;animation:popIn .16s cubic-bezier(.16,1,.3,1) forwards}.ts-popover-title{padding:6px 10px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#94a3b8}.ts-popover-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:#334155;font-family:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer}.ts-popover-item:hover:not(:disabled){background:#f1f5f9}.ts-popover-item:disabled{opacity:.42;cursor:not-allowed}.ts-popover-note{display:flex;align-items:center;gap:5px;margin:2px 0 0;padding:4px 10px 2px;font-size:10px;line-height:1.3;color:#94a3b8}.ts-popover--looks{min-width:232px;max-height:min(340px,calc(100% - 56px))}.ts-bg-row{display:flex;flex-wrap:wrap;gap:8px;padding:4px 10px 8px}.ts-file-input{display:none}.ts-bg-dot{width:30px;height:30px;border:2px solid rgba(15,23,42,.12);border-radius:50%;cursor:pointer}.ts-bg-dot.active{border-color:var(--accent, var(--primary))}.ts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;padding:12px;color:#94a3b8;text-align:center;font-size:12px}.ts-empty p{margin:0}.ts-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;border:none;border-radius:7px;background:transparent;color:#94a3b8;cursor:pointer}.ts-icon-btn:hover:not(:disabled){background:#f1f5f9;color:#334155}.ts-icon-btn:disabled{opacity:.35;cursor:default}.ts-icon-btn.active{background:var(--accent, var(--primary));color:#fff}.ts-icon-btn.lg{width:36px;height:36px;border:1px solid rgba(15,23,42,.1)}.ts-run-btn{display:flex;align-items:center;justify-content:center;gap:7px;min-width:110px;height:36px;padding:0 16px;border:none;border-radius:10px;background:var(--accent, var(--primary));color:var(--accent-foreground, #fff);font-family:inherit;font-size:13px;font-weight:700;cursor:pointer}.ts-run-btn:hover:not(:disabled){filter:brightness(1.06)}.ts-run-btn:disabled{opacity:.5;cursor:default}.ts-chrono{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;gap:8px}.ts-chrono-more{position:absolute;top:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid rgba(15,23,42,.1);border-radius:50%;background:#fff;color:#7a869a;cursor:pointer;opacity:0;transition:opacity .12s ease}.ts-frame:hover .ts-chrono-more,.ts-chrono-more.active,.ts-chrono-more:focus-visible{opacity:1}.ts-chrono-more.active{background:var(--accent, var(--primary));color:#fff;border-color:transparent}.ts-chrono-settings{position:absolute;top:26px;left:0;z-index:4;display:flex;flex-direction:column;gap:10px;min-width:min(212px,100%);max-width:100%;max-height:calc(100cqh - 32px);padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#fff;box-shadow:0 10px 30px #0f172a2e}.ts-chrono-scroll{display:flex;flex-direction:column;gap:10px;min-height:0;overflow-y:auto;margin-right:-4px;padding-right:4px}.ts-chrono-rows{display:flex;flex-direction:column;gap:4px;min-height:0;overflow-y:auto}.ts-chrono-row{display:flex;align-items:center;gap:8px;flex-shrink:0;width:100%;min-height:30px;padding:0 6px 0 10px;border:1px solid rgba(15,23,42,.08);border-radius:10px;background:#fff;font-family:inherit;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.ts-chrono-row:hover{background:#f8fafc;border-color:#0f172a29}.ts-chrono-row-label{flex:1;min-width:0;font-size:11px;font-weight:700;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ts-chrono-row-value{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;font-size:11px;font-weight:800;color:var(--primary)}.ts-chrono-row-arrow{flex-shrink:0;color:#cbd5e1}.ts-chrono-view-head{display:flex;align-items:center;gap:6px;flex-shrink:0}.ts-chrono-back{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border:none;border-radius:7px;background:#f1f5f9;color:#64748b;cursor:pointer;transition:background .12s ease,color .12s ease}.ts-chrono-back:hover{background:#e2e8f0;color:#334155}.ts-chrono-view-title{min-width:0;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ts-chrono-settings-row{display:flex;gap:6px;justify-content:center;flex-shrink:0;padding-top:8px;border-top:1px solid rgba(15,23,42,.07)}.ts-chrono-run{width:100%;flex-shrink:0}.ts-chrono-modes{display:flex;align-items:center;gap:2px;flex-shrink:0;padding:2px;border-radius:999px;background:#f1f5f9}.ts-seg{flex:1;min-width:0;padding:5px 8px;border:none;border-radius:999px;background:transparent;color:#94a3b8;font-family:inherit;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:background .12s ease,color .12s ease}.ts-seg:hover:not(.active){color:#475569}.ts-seg.active{background:#fff;color:var(--primary);box-shadow:0 1px 3px #0f172a24}.ts-chrono-face{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.ts-chrono-value{font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.02em;line-height:1;color:#1e293b;font-size:clamp(20px,min(calc(170cqw / var(--ts-chrono-chars, 5)),calc(94cqh - 56px)),190px)}.ts-chrono--digital .ts-chrono-value{font-family:SFMono-Regular,ui-monospace,Menlo,Consolas,monospace}.ts-chrono.is-finished .ts-chrono-value{color:var(--danger);animation:tsPulse .9s ease-in-out infinite}@keyframes tsPulse{0%,to{opacity:1}50%{opacity:.35}}.ts-chrono--ring .ts-chrono-face{--ts-ring-size: min(78cqw, calc(96cqh - 44px) )}.ts-ring{width:var(--ts-ring-size);aspect-ratio:1;flex-shrink:0;transform:rotate(-90deg)}.ts-ring+.ts-chrono-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:calc(var(--ts-ring-size) * 1.5 / var(--ts-chrono-chars, 5))}.ts-ring-track,.ts-ring-progress{fill:none;stroke-width:8;stroke-linecap:round}.ts-ring-track{stroke:#e2e8f0}.ts-ring-progress{stroke:var(--accent, var(--primary));transition:stroke-dashoffset .1s linear}.ts-chrono.is-finished .ts-ring-progress{stroke:var(--danger)}.ts-bar-track{width:100%;height:clamp(10px,6cqh,40px);border-radius:999px;background:#e2e8f0;overflow:hidden}.ts-bar-fill{height:100%;border-radius:999px;background:var(--accent, var(--primary));transition:width .1s linear}.ts-chrono.is-finished .ts-bar-fill{background:var(--danger)}.ts-chrono-presets{display:flex;flex-wrap:wrap;align-items:center;gap:4px;flex-shrink:0}.ts-chip{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:24px;padding:0 9px;border:1px solid rgba(15,23,42,.1);border-radius:999px;background:#fff;color:#94a3b8;font-family:inherit;font-size:11px;font-weight:700;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.ts-chip:hover{background:#f1f5f9;color:#334155}.ts-chip.active{border-color:transparent;background:var(--primary-soft);color:var(--primary)}.ts-step{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:50%;background:#f1f5f9;color:#64748b;font-family:inherit;font-size:14px;font-weight:700;line-height:1;cursor:pointer}.ts-step:hover{background:#e2e8f0;color:#334155}.ts-chrono-steppers{display:inline-flex;align-items:center;gap:4px;margin-left:auto}.ts-chrono-custom{display:flex;align-items:center;gap:6px;flex-shrink:0}.ts-time-field{display:inline-flex;align-items:baseline;gap:1px;height:26px;padding:0 8px 0 5px;border:1px solid rgba(15,23,42,.1);border-radius:999px;background:#fff;cursor:text}.ts-time-field:focus-within{border-color:transparent;background:var(--primary-soft)}.ts-chrono-custom .ts-time-input{width:32px;height:auto;padding:0;border:none;background:none;color:#334155;font-family:inherit;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;text-align:right;outline:none}.ts-time-unit{color:#94a3b8;font-size:11px;font-weight:700}.ts-time-field:focus-within .ts-time-input,.ts-time-field:focus-within .ts-time-unit{color:var(--primary)}.ts-chrono-tones{display:flex;flex-wrap:wrap;gap:4px}.ts-tone{gap:5px;padding:0 9px 0 7px;white-space:nowrap}.ts-tone-icon{font-size:12px;line-height:1}.ts-activities{display:flex;flex-direction:column;gap:10px;height:100%;min-height:0}.ts-activities-tabs{display:flex;gap:5px;overflow-x:auto;padding:0 24px 3px 0;flex-shrink:0}.ts-slot-tab{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;padding:5px 10px;border:1px solid rgba(15,23,42,.1);border-radius:9px;background:#fff;color:#94a3b8;font-family:inherit;cursor:pointer}.ts-slot-tab:hover{background:#f8fafc}.ts-slot-tab.active{border-width:2px;background:#f8fafc}.ts-slot-tab-time{font-size:10px;font-weight:700;opacity:.8;font-variant-numeric:tabular-nums}.ts-slot-tab-name{font-size:11px;font-weight:700;max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ts-activities-body{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}.ts-activities-heading{border-left:4px solid #E2E8F0;padding-left:9px;flex-shrink:0}.ts-activities-subject{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.ts-activities-title{margin:2px 0 0;font-size:clamp(13px,5cqw,30px);font-weight:700;line-height:1.25}.ts-activities-none{margin:0;font-size:12px;color:#94a3b8}.ts-activities-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:0}.ts-activities-list li{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;border-radius:10px;background:#f8fafc;font-size:clamp(12px,4cqw,24px);line-height:1.4}.ts-activities-list li.done .ts-activity-text{color:#94a3b8;text-decoration:line-through}.ts-activity-mark{display:flex;flex-shrink:0;margin-top:2px;color:#94a3b8}.ts-activities-list li.done .ts-activity-mark{color:var(--success)}.ts-board{display:flex;flex-direction:column;height:100%;gap:8px}.ts-board-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap;flex-shrink:0;padding-right:24px}.ts-board-sep{width:1px;height:18px;margin:0 3px;background:#e2e8f0}.ts-swatch{width:20px;height:20px;border:2px solid transparent;border-radius:50%;cursor:pointer;box-shadow:0 0 0 1px #0f172a1f}.ts-swatch.active{border-color:#fff;box-shadow:0 0 0 2px var(--accent, var(--primary))}.ts-width{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:7px;background:transparent;cursor:pointer}.ts-width span{display:block;border-radius:50%;background:#64748b}.ts-width:hover{background:#f1f5f9}.ts-width.active{background:var(--primary-soft)}.ts-width.active span{background:var(--primary)}.ts-board-surface{flex:1;min-height:0;border:1px solid #E2E8F0;border-radius:10px;background:#fff;overflow:hidden}.ts-board-surface canvas{display:block;touch-action:none;cursor:crosshair}.ts-board-surface canvas.is-erasing{cursor:cell}.ts-picker{display:flex;flex-direction:column;height:100%;gap:8px}.ts-picker-select{flex-shrink:0;height:30px;margin-right:24px;padding:0 8px;border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#fff;color:#334155;font-family:inherit;font-size:12px;font-weight:600}.ts-picker-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:6px;border-radius:10px;background:#f8fafc;text-align:center;overflow:hidden}.ts-picker-name{font-size:clamp(18px,min(13cqw,26cqh),110px);font-weight:800;letter-spacing:-.02em;line-height:1.1;color:#1e293b}@keyframes ts-picker-land{0%{transform:scale(.86);opacity:.4}60%{transform:scale(1.06);opacity:1}to{transform:scale(1)}}.ts-picker-name{animation:ts-picker-land .28s cubic-bezier(.2,1.4,.5,1)}.ts-picker-name.is-rolling{animation:none;color:#64748b;opacity:.85}@media(prefers-reduced-motion:reduce){.ts-picker-name{animation:none}}.ts-picker-hint{font-size:12px;color:#94a3b8}.ts-picker-footer{display:flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0}.ts-picker-count{margin:0;text-align:center;font-size:10px;color:#94a3b8;flex-shrink:0}.ts-notes{display:flex;flex-direction:column;height:100%;gap:6px}.ts-notes-bar{display:flex;flex-direction:column;gap:4px;width:min(524px,calc(var(--toolbar-room, 86vw) - 16px))}.ts-notes-tools{display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:wrap;flex-shrink:0}.ts-size-pill{display:flex;align-items:center;justify-content:center;gap:2px;min-width:52px;height:26px;padding:0 6px;border:1px solid #E2E8F0;border-radius:7px;background:#fff;color:#334155;font-family:inherit;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer}.ts-size-pill:hover{background:#f1f5f9}.ts-size-pill.active{border-color:transparent;background:var(--accent, var(--primary));color:#fff}.ts-align-opt{display:flex;align-items:center;justify-content:center;width:28px;height:26px;border:1px solid transparent;border-radius:6px;background:#fff;color:#334155;cursor:pointer}.ts-align-opt:hover{border-color:#cbd5e1}.ts-align-opt.active{border-color:transparent;background:var(--accent, var(--primary));color:#fff}.ts-size-opt{min-width:26px;height:24px;padding:0 3px;border:1px solid transparent;border-radius:6px;background:#fff;color:#334155;font-family:inherit;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer}.ts-size-opt:hover{border-color:#cbd5e1}.ts-size-opt.active{border-color:transparent;background:var(--accent, var(--primary));color:#fff}.ts-notes-sep{width:1px;height:16px;margin:0 3px;background:#e2e8f0}.ts-notes-menu{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;flex-shrink:0;padding:4px;border:1px solid #E2E8F0;border-radius:8px;background:#f8fafc}.ts-notes-menu--sizes{gap:2px}.ts-notes-face{padding:3px 8px;border:1px solid transparent;border-radius:6px;background:#fff;color:#334155;font-size:12px;line-height:1.2;cursor:pointer;white-space:nowrap}.ts-notes-face:hover{border-color:#cbd5e1}.ts-notes-face.active{border-color:var(--accent, var(--primary));color:#1e293b}.ts-notes-sheet{--sheet-pad: 8px;position:relative;display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:var(--sheet-pad) 10px;border:1px solid #E2E8F0;border-radius:10px;background:#fff}.ts-notes-sheet:focus-within{border-color:var(--accent, var(--primary))}.ts-notes-pauta{position:absolute;top:var(--sheet-pad);left:0;right:0;pointer-events:none;background-repeat:repeat-y;background-size:100% var(--pauta-step);background-image:linear-gradient(to bottom,transparent var(--pauta-x),#A9C6E6 var(--pauta-x),#A9C6E6 calc(var(--pauta-x) + var(--pauta-weight)),transparent calc(var(--pauta-x) + var(--pauta-weight)),transparent var(--pauta-base),#7FA8D4 var(--pauta-base),#7FA8D4 calc(var(--pauta-base) + var(--pauta-weight)),transparent calc(var(--pauta-base) + var(--pauta-weight)))}.ts-notes-area{flex:1 1 auto;width:100%;position:relative;background:transparent;color:#1e293b;font-weight:500;line-height:1.35;-webkit-user-select:text;user-select:text;cursor:text}.ts-notes-area:focus{outline:none}.ts-notes-area.is-face-cursive{font-weight:300}.ts-notes-area.is-blank:before{content:attr(data-placeholder);font-weight:400;color:#94a3b8;pointer-events:none}.ts-noise{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px}.ts-noise-lights{min-height:0;display:flex;flex-direction:column;gap:clamp(6px,4cqh,18px);padding:clamp(8px,5cqh,20px) clamp(6px,4cqw,16px);border-radius:999px;background:#222a38;box-shadow:inset 0 1px #ffffff14,0 6px 18px #0f172a59}.ts-noise-light{position:relative;width:clamp(24px,min(22cqw,16cqh),90px);height:clamp(24px,min(22cqw,16cqh),90px);border:none;border-radius:50%;background:var(--light-off, rgba(255, 255, 255, .14));cursor:pointer;box-shadow:inset 0 2px 6px #0000008c;transition:background .2s ease,box-shadow .25s ease,transform .15s ease}.ts-noise-light:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.45),rgba(255,255,255,.08) 42%,transparent 62%);pointer-events:none}.ts-noise-light.active{background:var(--light-on);box-shadow:inset 0 0 clamp(6px,3cqw,22px) #ffffff8c,0 0 clamp(6px,2.5cqw,18px) var(--light-on),0 0 clamp(16px,7cqw,52px) var(--light-glow, var(--light-on)),0 0 clamp(30px,14cqw,104px) var(--light-glow, var(--light-on))}.ts-noise-light:hover{transform:scale(1.06)}@keyframes ts-noise-breathe{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}.ts-noise-light.active{animation:ts-noise-breathe 2.6s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.ts-noise-light.active{animation:none}}.ts-noise-label{margin:0;font-size:clamp(11px,6cqw,30px);font-weight:800;text-transform:uppercase;letter-spacing:.03em;text-align:center}@container (max-height: 175px){.ts-chrono-run{min-width:0;height:30px;padding:0 10px;font-size:12px}.ts-chrono-run span{display:none}.ts-chrono-run{width:auto;align-self:center;height:26px;padding:0 14px;border-radius:999px}.ts-chrono,.ts-chrono-face{gap:5px}.ts-bar-track{height:8px}.ts-chrono-value{font-size:clamp(20px,min(calc(170cqw / var(--ts-chrono-chars, 5)),calc(100cqh - 46px)),190px)}.ts-noise-label,.ts-activities-tabs,.ts-picker-count{display:none}}@container (max-width: 250px){.ts-tone{min-width:26px;padding:0 5px}.ts-tone-icon{font-size:14px}.ts-tone-name{display:none}.ts-chrono-tones{justify-content:center}.ts-seg{padding:5px 4px;font-size:10px}.ts-chrono-settings{padding:8px;gap:8px}.ts-chrono-custom .ts-time-input{width:26px}}@container (max-width: 150px){.ts-chrono-run span{display:none}.ts-chrono-row{padding:0 2px 0 4px;border-color:transparent}.ts-noise-label{font-size:10px}}@container (max-height: 120px){.ts-picker-stage{padding:0}.ts-board-tools,.ts-ring{display:none}.ts-ring+.ts-chrono-value{position:static;transform:none;font-size:clamp(20px,min(calc(170cqw / var(--ts-chrono-chars, 5)),calc(100cqh - 46px)),190px)}}.ts-brain{display:flex;flex-direction:column;height:100%;min-height:0;gap:8px}.ts-brain--intro{align-items:center;justify-content:center;text-align:center;gap:10px;color:#64748b}.ts-brain-pitch{margin:0;max-width:34ch;font-size:clamp(11px,3.6cqw,17px);line-height:1.35}.ts-brain-note-legal{margin:0;max-width:34ch;font-size:clamp(9px,2.8cqw,13px);color:#94a3b8}.ts-brain-blink{animation:ts-brain-blink 1.1s ease-in-out infinite}@keyframes ts-brain-blink{0%,to{opacity:1}50%{opacity:.35}}.ts-brain-bar{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;padding-bottom:7px;border-bottom:1px solid rgba(15,23,42,.08)}.ts-brain-label{display:block;font-size:clamp(8px,2cqw,11px);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.ts-brain-code strong{display:block;font-size:clamp(20px,7cqw,54px);font-weight:800;letter-spacing:.14em;line-height:1.05;color:#1e293b}.ts-brain-where{flex:1 1 90px;min-width:0}.ts-brain-url{display:flex;align-items:center;gap:5px;max-width:100%;padding:0;border:none;background:none;font-family:inherit;font-size:clamp(10px,2.8cqw,16px);font-weight:600;color:#334155;cursor:pointer}.ts-brain-url span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-brain-url:hover{color:var(--accent, var(--primary))}.ts-brain-stats{display:flex;flex-shrink:0;gap:10px;margin-left:auto;font-size:clamp(10px,2.6cqw,15px);font-weight:700;color:#64748b}.ts-brain-stats span{display:flex;align-items:center;gap:4px}.ts-brain-tools{display:flex;flex-shrink:0;gap:2px}.ts-icon-btn.is-asking{background:#fee2e2;color:#b91c1c}.ts-brain-strip{margin:0;padding:4px 8px;border-radius:7px;background:#eef2f7;font-size:clamp(10px,2.6cqw,14px);font-weight:600;text-align:center;color:#475569}.ts-brain-strip.is-warn{background:#fef3c7;color:#92400e}.ts-brain-wall{display:flex;flex-direction:column;gap:clamp(4px,1.2cqh,12px);flex:1;min-height:0;overflow-y:auto;scroll-behavior:smooth}.ts-brain-waiting{margin:auto;font-size:clamp(11px,3.2cqw,18px);color:#94a3b8}.ts-brain-idea{position:relative;flex-shrink:0;padding:clamp(5px,1.4cqh,14px) clamp(34px,5cqw,48px) clamp(5px,1.4cqh,14px) clamp(9px,2cqw,20px);border-radius:10px;box-shadow:0 1px 4px #0f172a1f;color:#1e293b;font-weight:600;line-height:1.25;overflow-wrap:anywhere;animation:ts-brain-pop .26s ease-out}@keyframes ts-brain-pop{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.ts-brain-idea{animation:none}.ts-brain-wall{scroll-behavior:auto}}.ts-brain-wall[data-density=xl] .ts-brain-idea{font-size:clamp(15px,6cqw,64px)}.ts-brain-wall[data-density=l] .ts-brain-idea{font-size:clamp(13px,4.2cqw,42px)}.ts-brain-wall[data-density=m] .ts-brain-idea{font-size:clamp(11px,3cqw,28px)}.ts-brain-wall[data-density=s] .ts-brain-idea{font-size:clamp(10px,2.2cqw,20px)}.ts-brain-drop{position:absolute;top:50%;right:8px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:19px;height:19px;border:none;border-radius:50%;background:#1e293b;color:#fff;cursor:pointer;opacity:0;transition:opacity .12s}.ts-brain-idea:hover .ts-brain-drop,.ts-brain-drop:focus-visible{opacity:1}@container (max-width: 330px){.ts-brain-where{display:none}}.ts-bar-row{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.ts-bar-btn{display:flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid #E2E8F0;border-radius:7px;background:#fff;color:#334155;font-family:inherit;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}.ts-bar-btn:hover{background:#f1f5f9}.ts-setup-title{margin:0;font-size:clamp(11px,min(3.6cqw,8cqh),36px);font-weight:700;color:#475569;text-align:center}.ts-setup-field{display:flex;flex-direction:column;gap:4px;font-size:clamp(10px,min(3cqw,7cqh),28px);font-weight:600;color:#64748b}.ts-setup-field input[type=range]{accent-color:var(--accent, var(--primary))}.ts-setup-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.ts-setup-card{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:82px;padding:9px 10px;border:1px solid #E2E8F0;border-radius:10px;background:#fff;color:#334155;font-family:inherit;cursor:pointer}.ts-setup-card:hover{border-color:var(--accent, var(--primary))}.ts-setup-art{display:flex;align-items:center;gap:4px}.ts-setup-art b,.ts-setup-art i{display:flex;align-items:center;justify-content:center;width:clamp(20px,min(5cqw,11cqh),54px);height:clamp(20px,min(5cqw,11cqh),54px);border-radius:50%;color:#fff;font-size:clamp(11px,min(2.8cqw,6cqh),28px);font-style:normal;font-weight:800}.ts-setup-art svg{width:58%;height:58%}.ts-setup-art.is-home i,.ts-setup-art.is-points i{width:clamp(18px,min(4.6cqw,10cqh),50px);height:clamp(22px,min(5.4cqw,12cqh),60px);border-radius:5px;background:#e2e8f0;color:#475569}.ts-setup-art.is-points i:first-child{background:#dbeafe;color:#1d4ed8}.ts-setup-art.is-points i:last-child{background:#fee2e2;color:#b91c1c}.ts-setup-art.is-race{color:#94a3b8}.ts-setup-name{font-size:clamp(11px,min(2.6cqw,6cqh),26px);font-weight:700;color:#475569;text-align:center}.ts-step.is-add{background:var(--primary-soft);color:var(--primary)}.ts-step.is-add:hover{background:var(--accent, var(--primary));color:#fff}.ts-video{position:relative;display:flex;flex-direction:column;height:100%;min-height:0}.ts-video--empty{align-items:center;justify-content:center;gap:9px;padding:4px;color:#94a3b8;text-align:center}.ts-video .ts-video-field{width:min(100%,320px);height:30px;padding:0 9px;border:1px solid #CBD5E1;border-radius:8px;background:#fff;color:#334155;font-family:inherit;font-size:12px}.ts-video .ts-video-field:focus{outline:none;border-color:var(--accent, var(--primary))}.ts-video-frame{flex:1;width:100%;min-height:0;border:none;border-radius:8px;background:#000}.ts-video-shield{position:absolute;inset:0;border-radius:8px;cursor:grab}.ts-score{display:flex;height:100%;min-height:0;gap:8px}.ts-score--setup{flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;overflow-y:auto}.ts-score--setup .ts-setup-field{width:min(100%,260px)}.ts-score .ts-score-name{width:100%;padding:1px 4px;border:1px solid transparent;border-radius:6px;background:transparent;color:#64748b;font-family:inherit;font-size:clamp(9px,min(4cqw,9cqh),40px);font-weight:700;text-align:center;text-overflow:ellipsis}.ts-score .ts-score-name:hover{border-color:#e2e8f0}.ts-score .ts-score-name:focus{outline:none;border-color:var(--accent, var(--primary))}.ts-score-steps{display:flex;justify-content:center;gap:clamp(4px,1.5cqw,14px)}.ts-score .ts-step{width:clamp(22px,min(7cqw,14cqh),72px);height:clamp(22px,min(7cqw,14cqh),72px)}.ts-score .ts-step svg{width:55%;height:55%}.ts-score--home{align-items:center}.ts-score-side{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0}.ts-score-digits{font-size:clamp(26px,min(20cqw,42cqh),190px);font-weight:800;font-variant-numeric:tabular-nums;line-height:1;letter-spacing:-.02em;color:#1e293b}.ts-score--points{flex-wrap:wrap;align-content:stretch;justify-content:center;overflow-y:auto}.ts-points-card{display:flex;flex:1 1 78px;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:64px;max-width:100%;padding:6px 4px;border:2px solid var(--team);border-radius:12px;background:#fff}.ts-points-value{font-size:clamp(20px,min(15cqw,30cqh),200px);font-weight:800;font-variant-numeric:tabular-nums;line-height:1;color:var(--team)}.ts-score--race{flex-direction:column;justify-content:space-evenly}.ts-race-lane{display:flex;align-items:center;gap:clamp(6px,1.6cqw,18px);min-height:0}.ts-race-tag{flex:0 0 auto;max-width:24%;overflow:hidden;font-size:clamp(9px,min(calc(22cqh / var(--lanes, 3)),4.6cqw),30px);font-weight:700;white-space:nowrap;text-overflow:ellipsis}.ts-race-track{--runner: clamp(18px, min(calc(46cqh / var(--lanes, 3)), 12cqw), 64px);position:relative;flex:1;height:clamp(16px,min(calc(52cqh / var(--lanes, 3)),14cqw),70px);border-radius:999px;background:#f1f5f9}.ts-race-runner{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:var(--runner);height:var(--runner);transition:left .35s cubic-bezier(.2,.9,.3,1)}.ts-race-runner svg{width:82%;height:82%}@media(prefers-reduced-motion:reduce){.ts-race-runner{transition:none}}.ts-race-score{flex:0 0 auto;min-width:2ch;font-size:clamp(11px,min(calc(26cqh / var(--lanes, 3)),7cqw),40px);font-weight:800;font-variant-numeric:tabular-nums;text-align:right;color:#334155}.ts-meter{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:0;gap:6px}.ts-meter-gauge{flex:1;min-height:0;width:100%;display:flex;align-items:flex-end;justify-content:center}.ts-meter-gauge svg{width:100%;height:100%}.ts-meter-track,.ts-meter-over,.ts-meter-fill{fill:none;stroke-width:11;stroke-linecap:round}.ts-meter-track{stroke:#eef2f7}.ts-meter-over{stroke:#fbdcdc}.ts-meter-fill{stroke:#1d9e75;transition:stroke .2s ease}.ts-meter.is-over .ts-meter-fill{stroke:#e24b4a}.ts-meter-needle{stroke:#334155;stroke-width:2.4;stroke-linecap:round}.ts-meter-pin{fill:#334155}.ts-meter-limit{display:flex;flex-direction:column;gap:2px;width:100%;font-size:clamp(9px,min(3.4cqw,7cqh),28px);font-weight:700;color:#64748b;text-align:center}.ts-meter-limit input[type=range]{width:100%;accent-color:var(--accent, var(--primary))}.ts-meter-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(4px,1.5cqw,14px);flex-shrink:0}.ts-meter .ts-icon-btn.lg{width:clamp(28px,min(8cqw,14cqh),64px);height:clamp(28px,min(8cqw,14cqh),64px)}.ts-meter .ts-icon-btn.lg svg{width:52%;height:52%}.ts-meter-count{display:flex;align-items:center;gap:3px;height:clamp(24px,min(7cqw,12cqh),56px);padding:0 clamp(8px,2cqw,18px);border:none;border-radius:999px;background:#f1f5f9;color:#64748b;font-family:inherit;font-size:clamp(12px,min(3.4cqw,7cqh),28px);font-weight:700;font-variant-numeric:tabular-nums;cursor:pointer}.ts-meter.is-ringing .ts-meter-count{background:#fee2e2;color:#b91c1c}.ts-meter-note{display:flex;align-items:center;gap:4px;margin:0;font-size:10px;color:#b91c1c;text-align:center}@keyframes ts-meter-flash{0%,to{box-shadow:0 0 #e24b4a00}50%{box-shadow:0 0 0 6px #e24b4a59}}.ts-meter.is-ringing{animation:ts-meter-flash .6s ease-in-out 3;border-radius:10px}@media(prefers-reduced-motion:reduce){.ts-meter.is-ringing{animation:none}}.ts-poll{display:flex;flex-direction:column;height:100%;min-height:0;gap:6px}.ts-poll--setup{align-items:center;justify-content:center;justify-content:safe center;overflow-y:auto;gap:10px}.ts-poll .ts-poll-question{width:100%;padding:2px 6px;border:1px solid transparent;border-radius:7px;background:transparent;color:#1e293b;font-family:inherit;font-size:clamp(12px,min(5cqw,11cqh),60px);font-weight:700;line-height:1.2}.ts-poll .ts-poll-question:hover{border-color:#e2e8f0}.ts-poll .ts-poll-question:focus{outline:none;border-color:var(--accent, var(--primary))}.ts-poll .ts-poll-question::placeholder{color:#94a3b8;font-weight:600}.ts-poll-body{flex:1;min-height:0;overflow-y:auto}.ts-poll-veiled{display:flex;align-items:center;justify-content:center;gap:6px;height:100%;margin:0;font-size:clamp(11px,3.4cqw,34px);font-weight:600;color:#94a3b8}.ts-poll-bars{display:flex;flex-direction:column;gap:clamp(3px,1.5cqh,10px);margin:0;padding:0;list-style:none}.ts-poll-bars li{display:grid;grid-template-columns:auto minmax(0,1.3fr) minmax(0,1fr) auto;align-items:center;gap:6px}.ts-poll-badge{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:clamp(18px,min(6cqw,13cqh),76px);height:clamp(18px,min(6cqw,13cqh),76px);border-radius:50%;color:#fff;font-size:clamp(10px,min(3.4cqw,7cqh),44px);font-weight:800}.ts-poll-badge svg{width:60%;height:60%}.ts-poll-label{overflow:hidden;font-size:clamp(10px,min(3.4cqw,7cqh),44px);font-weight:600;color:#334155;white-space:nowrap;text-overflow:ellipsis}.ts-poll .ts-poll-label--edit{width:100%;padding:1px 4px;border:1px solid transparent;border-radius:6px;background:transparent;font-family:inherit}.ts-poll .ts-poll-label--edit:hover{border-color:#e2e8f0}.ts-poll .ts-poll-label--edit:focus{outline:none;border-color:var(--accent, var(--primary))}.ts-poll-track{height:clamp(8px,min(3cqw,6cqh),40px);border-radius:999px;background:#f1f5f9;overflow:hidden}.ts-poll-fill{display:block;height:100%;border-radius:999px;transition:width .3s ease}@media(prefers-reduced-motion:reduce){.ts-poll-fill{transition:none}}.ts-poll-count{font-size:clamp(10px,min(3.4cqw,7cqh),44px);font-weight:800;font-variant-numeric:tabular-nums;color:#475569}.ts-poll-round{display:flex;align-items:center;gap:10px;height:100%}.ts-poll-round svg{flex:0 0 auto;width:min(45%,100%);max-height:100%}.ts-poll-empty{fill:none;stroke:#eef2f7}.ts-poll-legend{display:flex;flex:1;flex-direction:column;gap:clamp(2px,1cqh,8px);min-width:0;margin:0;padding:0;list-style:none}.ts-poll-legend li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px}.ts-poll-vote{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(4px,1.6cqw,14px);flex-shrink:0;padding-top:2px}.ts-poll-key{display:flex;align-items:center;justify-content:center;width:clamp(26px,min(9cqw,20cqh),130px);height:clamp(26px,min(9cqw,20cqh),130px);border:none;border-radius:50%;color:#fff;font-family:inherit;font-size:clamp(12px,min(4.5cqw,10cqh),64px);font-weight:800;cursor:pointer;box-shadow:0 2px 6px #0f172a2e;transition:transform .12s ease}.ts-poll-key svg{width:58%;height:58%}.ts-poll-key:hover:not(:disabled){transform:translateY(-2px)}.ts-poll-key:active:not(:disabled){transform:scale(.94)}.ts-poll-key:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.ts-poll-total{font-size:clamp(9px,min(2.6cqw,6cqh),28px);font-weight:700;color:#94a3b8}@container (max-height: 175px){.ts-meter-limit span,.ts-poll-total,.ts-race-tag,.ts-score--points .ts-score-name{display:none}}@container (max-width: 250px){.ts-race-tag{display:none}.ts-poll-round{flex-direction:column;gap:4px}.ts-poll-round svg{width:min(62%,100%)}.ts-score--home{flex-direction:column}}@container (max-width: 190px){.ts-poll-bars li{grid-template-columns:auto minmax(0,1fr) auto}.ts-poll-track{display:none}}@container (max-width: 150px){.ts-meter-count{display:none}}.overlay-modal-glass{position:fixed;inset:0;z-index:20000;display:flex;align-items:center;justify-content:center;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.overlay-modal-content{width:min(980px,90vw);height:min(720px,84vh);background:var(--modal-surface, #ffffff);border-radius:26px;box-shadow:0 28px 90px #00000038;display:flex;flex-direction:column;animation:scaleUpOver .25s cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes scaleUpOver{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.overlay-modal-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:24px 32px;border-bottom:1px solid var(--border-subtle, #eee);background:var(--bg-primary, #fff);gap:20px}@media(max-width:768px){.overlay-modal-header{display:flex;flex-direction:column;align-items:flex-start;padding:16px 20px}}.overlay-header-left{display:flex;justify-content:flex-start}.overlay-header-center{text-align:center}.history-back-btn-pill{display:flex;align-items:center;gap:8px;background:var(--bg-primary, #fff);border:1.5px solid var(--border-subtle, #eee);padding:8px 18px;border-radius:20px;color:var(--text-primary);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 5px #0000000d;position:relative}.history-back-btn-pill:hover{border-color:var(--accent);background:var(--surface-hover);transform:translate(-2px);box-shadow:0 4px 12px #0000001a}.overlay-modal-footer-centered{padding:20px 32px;border-top:1px solid var(--border-subtle, #eee);display:flex;justify-content:center;background:var(--bg-primary, #fff)}.prominent-redeem-btn{height:52px;border-radius:26px;padding:0 32px;gap:12px;font-size:1.1rem;font-weight:700;background:var(--accent, #3b82f6);color:#fff;border:none;box-shadow:0 8px 25px #3b82f659;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.prominent-redeem-btn:hover{transform:translateY(-2px);background:var(--accent-hover, #2563eb);box-shadow:0 12px 30px #3b82f673}@media(max-width:768px){.overlay-header-center{text-align:left}}.overlay-title{font-size:1.3rem;font-weight:700;margin:0 0 4px;color:var(--text-primary)}.overlay-subtitle{font-size:.9rem;color:var(--text-secondary);margin:0}.overlay-header-right{display:flex;justify-content:flex-end;gap:12px}.overlay-body{flex:1;overflow-y:auto;padding:24px 32px;background:var(--bg-tertiary, #f8fafc)}.history-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-primary, #fff);border:1px solid var(--border-subtle, #eee);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:4px}.stat-card-label{font-size:.85rem;color:var(--text-secondary);font-weight:500}.stat-card-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.history-students-list{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:800px){.history-students-list{grid-template-columns:1fr 1fr}}.student-history-row{display:flex;align-items:center;background:var(--bg-primary, #fff);border:1px solid var(--border-subtle, #eee);border-radius:20px;padding:16px;gap:16px;box-shadow:0 2px 8px #00000005}.history-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;font-size:1rem;flex-shrink:0}.history-student-info{flex:1;min-width:0}.history-student-name{font-weight:600;color:var(--text-primary);font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.history-progress-bar{height:6px;background:var(--bg-tertiary, #eee);border-radius:4px;overflow:hidden;position:relative}.history-progress-fill{position:absolute;top:0;left:0;bottom:0;border-radius:4px;transition:width .4s ease}.history-points-display{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.history-points-big{font-size:1.35rem;font-weight:800}.history-badge-soft{font-size:.75rem;padding:2px 8px;border-radius:12px;font-weight:600}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-wrapper input{padding:8px 12px 8px 34px;border-radius:20px;border:1px solid var(--border-subtle);background:var(--bg-tertiary);font-size:.9rem;outline:none;width:200px;transition:all .2s}.search-input-wrapper input:focus{border-color:var(--accent);background:var(--bg-primary);box-shadow:0 0 0 2px #3b82f61a}.search-input-wrapper svg{position:absolute;left:10px;color:var(--text-secondary)}.text-positive{color:#10b981}.text-negative{color:#f59e0b}.text-neutral{color:var(--text-secondary)}.bg-soft-positive{background-color:#10b98126;color:#10b981}.bg-soft-negative{background-color:#f59e0b26;color:#f59e0b}.bg-soft-neutral{background-color:#94a3b826;color:#64748b}.bg-soft-highlight{background-color:#3b82f626;color:#3b82f6}.manage-config-content{width:min(700px,90vw);height:min(650px,80vh);background:var(--modal-surface, #ffffff);border-radius:26px;box-shadow:0 28px 90px #00000038;display:flex;flex-direction:column;animation:scaleUpOver .25s cubic-bezier(.16,1,.3,1);overflow:hidden}.manage-config-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-subtle);background:var(--bg-primary)}.manage-config-title{font-size:1.25rem;font-weight:700;margin:0;color:var(--text-primary);display:flex;align-items:center;gap:10px}.config-tabs-container{display:flex;padding:0 24px;border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary);gap:20px}.config-tab-btn{padding:14px 4px;background:none;border:none;border-bottom:3px solid transparent;font-weight:600;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.95rem;transition:all .2s}.config-tab-btn.active.reward-tab{color:#10b981;border-bottom-color:#10b981}.config-tab-btn.active.penalty-tab{color:#f59e0b;border-bottom-color:#f59e0b}.manage-config-body{flex:1;overflow-y:auto;padding:24px;background:var(--bg-primary);display:flex;flex-direction:column;gap:12px}.config-item-row{display:flex;align-items:center;gap:12px;background:var(--bg-tertiary);padding:10px 12px;border-radius:12px;border:1px solid var(--border-subtle)}.config-item-drag{color:var(--text-tertiary);cursor:grab;display:flex}.config-item-input-text{flex:1;background:var(--bg-primary);border:1px solid var(--border-subtle);padding:8px 12px;border-radius:8px;font-size:.95rem;color:var(--text-primary);outline:none}.config-item-input-text:focus{border-color:var(--accent)}.config-item-input-val{width:70px;background:var(--bg-primary);border:1px solid var(--border-subtle);padding:8px 4px;border-radius:8px;font-size:.95rem;font-weight:700;text-align:center;color:var(--text-primary);outline:none}.config-item-input-val:focus{border-color:var(--accent)}.config-item-delete{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.config-item-delete:hover{background:#ef44441a;color:#ef4444}.config-add-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:transparent;border:2px dashed var(--border-subtle);border-radius:12px;color:var(--text-secondary);font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px}.config-add-btn:hover{border-color:var(--text-secondary);color:var(--text-primary);background:var(--bg-tertiary)}.manage-config-footer{padding:16px 24px;border-top:1px solid var(--border-subtle);background:var(--bg-primary);display:flex;justify-content:flex-end;gap:12px}.points-modal-overlay{position:fixed;inset:0;background-color:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:10000;display:flex;justify-content:center;align-items:center;padding:20px}.points-modal-content{background-color:var(--modal-surface, #ffffff);width:min(1100px,92vw);height:min(780px,88vh);border-radius:28px;padding:28px;box-shadow:0 24px 80px #0000002e;position:relative;display:flex;flex-direction:column;overflow:hidden;color:var(--text-primary)}.points-modal-close-btn{position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;background:var(--surface-hover, rgba(0,0,0,.05));border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;color:var(--text-secondary);transition:all .2s ease;z-index:10}.points-modal-close-btn:hover{background:var(--surface-active, rgba(0,0,0,.1));color:var(--text-primary);transform:scale(1.05)}.points-modal-header-simple{margin-bottom:24px;display:flex;align-items:center;gap:12px}.points-modal-header-title{display:flex;align-items:center;gap:12px}.points-modal-header-badge{background:var(--primary-soft, #eff6ff);color:var(--primary, #3b82f6);padding:10px;border-radius:16px}.points-modal-header-simple h2{font-size:1.5rem;font-weight:700;margin:0}.points-modal-top-actions{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:12px;background:var(--bg-tertiary);padding:6px;border-radius:24px;box-shadow:0 4px 20px #00000014}.points-top-action-btn{padding:0 20px;height:44px;display:flex;align-items:center;gap:10px;background:var(--bg-primary);border:1.5px solid var(--border-subtle);border-radius:20px;font-size:.95rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000a}.points-top-action-btn:hover{background:var(--surface-hover);border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 12px #00000014}.points-top-action-btn.prominent{background:var(--accent, #3b82f6);color:#fff;border-color:transparent;box-shadow:0 4px 14px #3b82f64d}.points-top-action-btn.prominent:hover{background:var(--accent-hover, #2563eb);box-shadow:0 6px 20px #3b82f666}.points-top-action-btn svg{flex-shrink:0}.points-modal-grid{display:grid;flex:1;gap:24px;min-height:0}@media(min-width:900px){.points-modal-grid{grid-template-columns:240px 1fr 320px}}@media(min-width:600px)and (max-width:899px){.points-modal-grid{grid-template-columns:240px 1fr;grid-template-rows:1fr auto}.points-col-action{grid-column:span 2}}@media(max-width:599px){.points-modal-grid{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;overflow-y:auto;padding-right:4px}}.points-change-student-btn{display:none}@media(max-width:599px){.points-change-student-btn{display:flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 12px;border-radius:12px;border:1.5px solid var(--accent, #3b82f6);background:var(--primary-soft, #eff6ff);color:var(--accent, #3b82f6);font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap}.points-action-header{flex-wrap:wrap}}.points-col{display:flex;flex-direction:column;gap:16px;min-height:0}.points-col-title{font-size:1rem;font-weight:600;color:var(--text-secondary);margin:0;padding-bottom:8px;border-bottom:2px solid var(--border-subtle, #eee);flex-shrink:0}.points-col.is-disabled{opacity:.4;pointer-events:none;filter:grayscale(.5);transition:all .3s ease}.points-col:not(.is-disabled){opacity:1;transition:all .3s ease}.points-subject-select{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--border-subtle, #ccc);background:var(--bg-primary, #fff);color:var(--text-primary);font-size:1rem;font-weight:500;cursor:pointer;appearance:none;outline:none;transition:border-color .2s}.points-subject-select:focus{border-color:var(--accent, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.points-student-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:8px}.points-student-list::-webkit-scrollbar{width:6px}.points-student-list::-webkit-scrollbar-track{background:transparent}.points-student-list::-webkit-scrollbar-thumb{background-color:var(--border-subtle, #ccc);border-radius:10px}.points-student-btn{display:flex;align-items:center;justify-content:space-between;min-height:56px;border-radius:18px;padding:0 18px;font-weight:600;font-size:.95rem;background:var(--bg-secondary, #f8f9fa);border:2px solid transparent;color:var(--text-primary);cursor:pointer;text-align:left;transition:all .2s ease;-webkit-user-select:none;user-select:none}.points-student-btn:hover{background:var(--surface-hover, #f0f0f0);transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.points-student-btn:active{transform:translateY(0)}.points-student-btn.is-selected{border-color:var(--accent, #3b82f6);background:var(--primary-soft, #eff6ff);color:var(--accent, #3b82f6)}.points-helper-msg{font-size:.9rem;color:var(--text-secondary);text-align:center;padding:24px 0;font-style:italic}.points-action-header{display:flex;align-items:center;gap:12px;background:var(--bg-secondary, #f8f9fa);padding:12px 16px;border-radius:16px;margin-bottom:8px}.points-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent, #3b82f6);color:#fff;display:flex;justify-content:center;align-items:center;font-weight:700;font-size:.9rem}.points-action-header-info{flex:1;display:flex;flex-direction:column}.points-action-header-name{font-weight:600;font-size:.95rem;color:var(--text-primary)}.points-action-header-sub{font-size:.8rem;color:var(--text-secondary)}.points-action-buttons{display:flex;gap:12px;margin-bottom:16px}.points-action-btn{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;height:80px;border-radius:18px;border:2px solid transparent;font-weight:600;font-size:.9rem;cursor:pointer;background:var(--bg-secondary, #f8f9fa);color:var(--text-secondary);transition:all .2s ease}.points-action-btn.reward{--btn-color: #10b981}.points-action-btn.penalty{--btn-color: #f59e0b}.points-action-btn:hover{background:var(--surface-hover, #f0f0f0);transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.points-action-btn.is-active{border-color:var(--btn-color);background:#10b98114;color:var(--btn-color)}.points-action-btn.penalty.is-active{background:#f59e0b14}.points-action-content{background:var(--bg-secondary, #f8f9fa);border-radius:20px;padding:18px;flex:1;display:flex;flex-direction:column;animation:slideDown .3s ease forwards;min-height:220px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.points-empty-state{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--text-secondary);gap:12px;padding:20px}.points-empty-state-icon{opacity:.5;margin-bottom:8px}.points-autosave-banner{position:absolute;bottom:20px;left:50%;transform:translate(-50%) translateY(100px);background:var(--text-primary);color:var(--bg-primary, #fff);padding:10px 20px;border-radius:100px;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:8px;opacity:0;transition:all .3s cubic-bezier(.175,.885,.32,1.275);z-index:100;box-shadow:0 10px 25px #0003}.points-autosave-banner.visible{transform:translate(-50%) translateY(0);opacity:1}.points-action-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1;padding-right:4px}.points-action-list::-webkit-scrollbar{width:6px}.points-action-list::-webkit-scrollbar-track{background:transparent}.points-action-list::-webkit-scrollbar-thumb{background-color:var(--border-subtle, #ccc);border-radius:10px}.points-action-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-primary, #ffffff);border:1px solid var(--border-subtle, #eee);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;font-size:.9rem;color:var(--text-primary)}.points-action-item:hover{border-color:var(--accent, #3b82f6);transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.points-action-item:active{transform:translateY(0)}.points-action-item-text{flex:1;padding-right:12px;line-height:1.4}.points-action-item-value{font-weight:700;padding:4px 10px;border-radius:20px;font-size:.85rem;white-space:nowrap}.points-action-item.reward-item .points-action-item-value{background:#10b9811a;color:#10b981}.points-action-item.penalty-item .points-action-item-value{background:#f59e0b1a;color:#f59e0b}.points-modal-dimmed{opacity:.55;pointer-events:none;transform:scale(.985);transition:opacity .3s ease,transform .3s ease}.points-sort-dropdown-container{display:flex;align-items:center;position:relative}.points-sort-select{appearance:none;background:transparent;border:1px solid var(--border-subtle, #eee);padding:4px 24px 4px 8px;border-radius:8px;font-size:.8rem;color:var(--text-secondary);cursor:pointer;outline:none}.points-sort-icon{position:absolute;right:6px;pointer-events:none;color:var(--text-secondary)}.student-points-badge{font-weight:600;font-size:.8rem;padding:2px 8px;border-radius:12px}.student-points-badge.positive{background:#10b9811a;color:#10b981}.student-points-badge.negative{background:#f59e0b1a;color:#f59e0b}.student-points-badge.neutral{background:var(--bg-tertiary);color:var(--text-secondary)}.points-tab-btn{flex:1;background:transparent;border:none;border-bottom:2px solid transparent;padding:8px;color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.points-tab-btn.is-active{color:var(--accent);border-bottom-color:var(--accent)}.bg-positive{background-color:#10b981!important}.bg-negative{background-color:#f59e0b!important}.bg-neutral{background-color:#94a3b8!important}.points-history-item{display:flex;flex-direction:column;padding:10px 14px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:10px;margin-bottom:8px}.history-item-main{display:flex;align-items:center;gap:10px}.history-pill{font-weight:700;font-size:.8rem;padding:2px 8px;border-radius:12px;flex-shrink:0}.history-pill.reward-pill{background:#10b9811a;color:#10b981}.history-pill.penalty-pill{background:#f59e0b1a;color:#f59e0b}.history-label{font-size:.85rem;line-height:1.3}.history-date{font-size:.75rem;color:var(--text-tertiary, #9ca3af);margin-top:6px;text-align:right}.select-all-btn{background:var(--bg-primary);border:1px solid var(--border-subtle);margin-bottom:4px}.select-all-btn:hover{background:var(--surface-hover);border-color:var(--accent)}.select-all-btn.is-selected{background:var(--primary-soft);border-color:var(--accent);color:var(--accent)}@media(max-width:599px){.points-modal-overlay{padding:8px}.points-modal-content{width:100%;height:95vh;height:95dvh;padding:14px 12px;border-radius:22px}.points-modal-close-btn{top:10px;right:10px;width:32px;height:32px}.points-modal-header-simple{flex-wrap:wrap;gap:10px;margin-bottom:12px}.points-modal-header-title{padding-right:40px}.points-modal-header-simple h2{font-size:1.15rem}.points-modal-header-badge{padding:7px;border-radius:12px}.points-modal-header-badge svg{width:20px;height:20px}.points-modal-top-actions{position:static;transform:none;width:100%;gap:8px;padding:0;background:transparent;box-shadow:none}.points-top-action-btn{flex:1;min-width:0;justify-content:center;height:38px;padding:0 10px;gap:6px;font-size:.82rem}.points-modal-grid{gap:12px}.points-col{gap:10px}.points-col-title{font-size:.85rem;padding-bottom:6px}.points-col-subject .input-card-v2{padding:8px 12px;min-height:0;gap:0;border-radius:14px}.points-col-subject .input-card-v2:hover,.points-col-subject .input-card-v2:focus-within{transform:none}.points-col-subject .input-card-v2-label{display:none}.points-col-subject .input-card-v2-body{gap:10px}.points-col-subject .input-card-v2-icon{width:32px;height:32px;border-radius:10px}.points-col-subject .input-card-v2-icon svg{width:18px;height:18px}.points-col-subject .input-card-v2-control,.points-col-subject .input-card-v2-control span{font-size:.95rem!important}.points-subject-decor{display:none}.points-col-students:not(.is-disabled){min-height:52vh}.points-modal-grid.has-selection .points-col-students:not(.is-disabled){min-height:32vh}.points-student-list{gap:6px;padding-right:2px;overscroll-behavior:contain}.points-student-btn{min-height:46px;padding:0 14px;border-radius:14px;font-size:.9rem}.points-col-action .points-empty-state{padding:10px;gap:6px;font-size:.85rem}.points-col-action .points-empty-state-icon{display:none}.points-action-content{min-height:200px;padding:12px}}.redeem-modal-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:30000;display:flex;justify-content:center;align-items:center;padding:24px;animation:fadeIn .3s ease}.redeem-modal-content{background:var(--modal-surface, #ffffff);width:min(920px,92vw);height:min(760px,88vh);border-radius:28px;box-shadow:0 28px 90px #00000038;display:flex;flex-direction:column;position:relative;overflow:hidden;color:var(--text-primary);animation:redeemScaleUp .3s cubic-bezier(.16,1,.3,1)}@keyframes redeemScaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.redeem-close-btn{position:absolute;top:20px;right:20px;width:40px;height:40px;border-radius:50%;border:none;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.redeem-close-btn:hover{background:var(--surface-hover);color:var(--text-primary);transform:rotate(90deg)}.redeem-modal-header{padding:24px 32px;border-bottom:1px solid var(--border-subtle);position:relative}.redeem-back-btn-pill{position:absolute;left:32px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:8px;background:var(--bg-primary, #fff);border:1.5px solid var(--border-subtle, #eee);padding:8px 18px;border-radius:20px;color:var(--text-primary);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 5px #0000000d;z-index:20}.redeem-back-btn-pill:hover{border-color:var(--accent);background:var(--surface-hover);transform:translateY(-50%) translate(-2px);box-shadow:0 4px 12px #0000001a}.redeem-title{font-size:1.5rem;font-weight:800;margin:0;text-align:center}.redeem-subtitle{font-size:.95rem;color:var(--text-secondary);margin:4px 0 0;text-align:center}.redeem-body{flex:1;padding:32px;overflow-y:auto;background:var(--bg-tertiary)}.redeem-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:700px;margin:40px auto}.redeem-type-card{background:var(--bg-primary);border:2px solid var(--border-subtle);border-radius:24px;padding:32px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:all .3s ease}.redeem-type-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 12px 30px #00000014}.type-icon-wrapper{width:80px;height:80px;border-radius:20px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.type-icon-wrapper.blue{background:#3b82f61a;color:#3b82f6}.type-icon-wrapper.green{background:#10b9811a;color:#10b981}.redeem-type-card h3{font-size:1.25rem;font-weight:700;margin:0 0 8px}.redeem-type-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.4;margin:0}.redeem-step-container{display:flex;flex-direction:column;height:100%;max-width:600px;margin:0 auto}.student-search-redeem{padding:12px 18px;border-radius:14px;border:1px solid var(--border-subtle);background:var(--bg-primary);margin-bottom:16px;font-size:1rem;outline:none}.student-list-redeem{flex:1;display:flex;flex-direction:column;gap:8px;padding-right:8px;max-height:400px}.student-item-redeem{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:14px;cursor:pointer;font-weight:600;transition:all .2s}.student-item-redeem:hover{border-color:var(--accent);background:var(--primary-soft)}.student-pts-redeem{font-size:.85rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:2px 8px;border-radius:8px}.reward-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-weight:600;color:var(--text-secondary);padding:0 4px}.manage-toggle-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border-subtle);padding:6px 12px;border-radius:8px;font-size:.85rem;cursor:pointer;color:var(--text-secondary)}.reward-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:24px}.reward-card{display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--bg-primary);border:2px solid var(--border-subtle);border-radius:18px;cursor:pointer;text-align:left;transition:all .2s;position:relative}.reward-card:hover:not(.disabled){border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 20px #0000000d}.reward-card.selected{border-color:var(--accent);background:var(--primary-soft)}.reward-card.disabled{opacity:.6;filter:grayscale(.5);cursor:not-allowed}.reward-card-top{display:flex;justify-content:space-between;align-items:center}.reward-points{font-weight:800;font-size:1.1rem;color:var(--accent);background:var(--primary-soft);padding:4px 10px;border-radius:8px}.reward-text{font-size:1rem;font-weight:600;line-height:1.3;margin:0;color:var(--text-primary)}.error-msg{font-size:.75rem;color:#f59e0b;display:flex;align-items:center;gap:4px;margin-top:auto}.continue-btn{width:100%;margin-top:auto;justify-content:center;height:52px;font-size:1.1rem;gap:12px}.confirmation-card{background:var(--bg-primary);padding:40px;border-radius:24px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 10px 40px #0000000a}.conf-icon{width:80px;height:80px;border-radius:50%;background:var(--primary-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:24px}.conf-details{width:100%;margin:24px 0 32px;display:flex;flex-direction:column;gap:16px}.conf-row{display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.conf-row.info{background:var(--bg-tertiary);padding:12px;border-radius:12px;border:none;font-size:.85rem;color:var(--text-secondary);text-align:left;line-height:1.4;gap:8px}.confirm-action-btn{width:100%;height:56px;font-size:1.1rem;box-shadow:0 8px 24px #3b82f64d}.manage-header{display:flex;justify-content:space-between;margin-bottom:16px}.manage-list{display:flex;flex-direction:column;gap:10px;max-height:480px;padding-right:8px}.manage-item{display:grid;grid-template-columns:1fr 80px 40px;gap:10px;align-items:center}.manage-item input{padding:10px;border-radius:8px;border:1px solid var(--border-subtle);outline:none}.cost-input{text-align:center;font-weight:700}.icon-btn-delete{background:transparent;border:none;color:#ef4444;cursor:pointer}.add-btn{margin-top:12px;background:var(--bg-primary);border:1px dashed var(--border-subtle);padding:12px;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:600;color:var(--text-secondary)}.add-btn:hover{border-color:var(--accent);color:var(--accent)}.manage-footer{margin-top:24px}.animate-fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:600px){.redeem-type-grid{grid-template-columns:1fr}.redeem-modal-content{height:100%;width:100%;border-radius:0}.reward-grid{grid-template-columns:1fr}}.chatdock-panel{width:380px;max-width:calc(100vw - 32px);background:var(--modal-surface);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 1px 2px #1018280f,0 8px 24px #1018281f;overflow:hidden;display:flex;flex-direction:column}.chatdock-header{flex:0 0 auto;height:56px;padding:0 14px;display:flex;align-items:center;gap:4px;background:var(--modal-surface-soft);border-bottom:1px solid var(--border-light)}.chatdock-header-title{flex:1;min-width:0;font-size:16px;font-weight:650;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chatdock-icon-btn{flex-shrink:0;width:32px;height:32px;display:grid;place-items:center;border:none;border-radius:10px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.chatdock-icon-btn:hover{background:var(--border-light);color:var(--text-main)}.chatdock-list{flex:1;overflow-y:auto;padding:6px}.chatdock-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:13px}.chatdock-row{position:relative;width:100%;min-height:64px;padding:8px 10px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;border:none;border-radius:12px;background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background .15s ease}.chatdock-row:hover{background:var(--modal-surface-soft)}.chatdock-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:14px;font-weight:700;overflow:hidden}.chatdock-avatar img{width:100%;height:100%;object-fit:cover}.chatdock-row-content{min-width:0}.chatdock-name{font-size:14px;font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chatdock-preview{margin-top:2px;font-size:12.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chatdock-meta{align-self:center;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.chatdock-time{font-size:11px;color:var(--text-muted);white-space:nowrap}.chatdock-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--primary);color:var(--text-inverse, #fff);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.help-spotlight{position:fixed;z-index:10090;border-radius:12px;pointer-events:none;outline:3px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 9999px #0f172a0a;animation:helpSpotlightPulse 1.4s ease-in-out infinite}@keyframes helpSpotlightPulse{0%,to{outline-offset:2px;opacity:1}50%{outline-offset:7px;opacity:.45}}@media(prefers-reduced-motion:reduce){.help-spotlight{animation:none;outline-offset:4px}}.help-panel{position:fixed;top:88px;right:20px;z-index:10100;display:flex;flex-direction:column;width:360px;max-height:calc(100vh - 230px);background:var(--modal-surface);border:1px solid var(--border-subtle);border-radius:18px;box-shadow:0 18px 44px #0f172a33,0 2px 8px #0f172a14;overflow:hidden;opacity:1;transition:opacity .12s ease}.help-panel--fading{opacity:0}.help-panel__header{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--primary-soft);color:var(--primary);border-bottom:1px solid var(--border-subtle);flex-shrink:0}.help-panel__title{flex:1;min-width:0;font-weight:700;font-size:.95rem}.help-panel__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:inherit;cursor:pointer}.help-panel__icon-btn:hover{background:#0000000f}.help-panel__messages{flex:1;min-height:0;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.help-msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:.87rem;line-height:1.5;word-break:break-word}.help-msg--bot{align-self:flex-start;background:var(--surface-soft, var(--modal-surface-soft));color:var(--text-primary);border-bottom-left-radius:4px}.help-msg--user{align-self:flex-end;background:var(--primary);color:var(--on-primary);border-bottom-right-radius:4px}.help-msg--step{align-self:stretch;max-width:100%;background:var(--primary-soft);color:var(--text-primary);border:1px solid var(--primary);border-radius:14px}.help-msg__step-label{display:block;margin-bottom:4px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--primary)}.help-msg p{margin:0}.help-msg p+p{margin-top:8px}.help-chips{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;max-width:100%}.help-chip{padding:7px 12px;border:1px solid var(--primary);border-radius:999px;background:var(--modal-surface);color:var(--primary);font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,color .15s ease}.help-chip:hover{background:var(--primary);color:var(--on-primary)}.help-chip--ghost{border-color:var(--border);color:var(--text-muted)}.help-chip--ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.help-panel__composer{display:flex;gap:6px;padding:10px;border-top:1px solid var(--border-subtle);flex-shrink:0}.help-panel__input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-primary);font-size:.85rem;font-family:inherit;outline:none}.help-panel__input:focus{border-color:var(--primary)}.help-panel__send{display:inline-flex;align-items:center;justify-content:center;padding:0 13px;border:none;border-radius:10px;background:var(--primary);color:var(--on-primary);cursor:pointer}.help-panel__send:disabled{opacity:.45;cursor:default}@media(max-width:1023px){.help-panel{top:72px;right:12px;width:320px;max-height:calc(100vh - 160px)}}@media(max-width:767px){.help-panel{inset:auto 8px 8px;width:auto;max-height:60vh;border-radius:16px}}.help-panel.help-panel--dodge-left{left:20px;right:auto}@media(max-width:1023px){.help-panel.help-panel--dodge-left{left:12px}}@media(max-width:767px){.help-panel.help-panel--dodge-left{left:8px;right:8px}}.help-panel-folded{position:fixed;right:20px;bottom:20px;z-index:10150;display:inline-flex;align-items:center;gap:9px;max-width:calc(100vw - 40px);padding:11px 15px;border:1px solid var(--primary);border-radius:999px;background:var(--modal-surface);color:var(--primary);font-family:inherit;font-size:.83rem;font-weight:600;text-align:left;cursor:pointer;box-shadow:0 10px 28px #0f172a38;transition:background .15s ease,color .15s ease}.help-panel-folded:hover{background:var(--primary);color:var(--on-primary)}.help-panel-folded span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:767px){.help-panel-folded{right:8px;bottom:8px}}.welcome-tour-overlay{display:flex;align-items:center;justify-content:center;padding:20px}.welcome-tour-card{position:relative;width:100%;max-width:440px;padding:34px 28px 26px;border-radius:24px;background:var(--modal-surface);border:1px solid var(--border-subtle);box-shadow:0 24px 60px #0f172a47;text-align:center}.welcome-tour-badge{display:inline-flex;align-items:center;justify-content:center;width:66px;height:66px;margin-bottom:16px;border-radius:50%;background:var(--primary-soft);color:var(--primary)}.welcome-tour-title{margin:0 0 10px;font-size:1.35rem;line-height:1.3;color:var(--text-primary)}.welcome-tour-desc{margin:0 0 12px;font-size:.98rem;line-height:1.55;color:var(--text-muted);white-space:pre-line}.welcome-tour-desc--strong{color:var(--text-primary);font-weight:600}.welcome-tour-langs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 22px}.welcome-tour-lang{position:relative;display:flex;align-items:center;gap:11px;padding:11px 13px;border:2px solid var(--border-subtle);border-radius:14px;background:var(--modal-surface-soft);color:var(--text-primary);font-family:inherit;font-size:.92rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease}.welcome-tour-lang:hover{border-color:var(--primary)}.welcome-tour-lang.is-selected{border-color:var(--primary);background:var(--primary-soft)}.welcome-tour-lang img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.welcome-tour-lang span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.welcome-tour-lang-check{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:auto;border-radius:50%;background:var(--primary);color:var(--on-primary);flex-shrink:0}.welcome-tour-actions{display:flex;flex-direction:column;gap:9px;margin-top:22px}.welcome-tour-primary{width:100%;padding:13px 18px;border:none;border-radius:14px;background:var(--primary);color:var(--on-primary);font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer}.welcome-tour-primary:hover{filter:brightness(1.06)}.welcome-tour-ghost{width:100%;padding:11px 18px;border:1px solid var(--border-subtle);border-radius:14px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.92rem;font-weight:600;cursor:pointer}.welcome-tour-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.welcome-tour-note{margin:16px 0 0;font-size:.8rem;line-height:1.45;color:var(--text-muted)}@media(max-width:420px){.welcome-tour-card{padding:28px 20px 22px}.welcome-tour-langs{grid-template-columns:1fr}}
