:root{color:#0f172a;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#dbeafe,#f8fafc 28rem)}button,input,textarea{font:inherit}button{min-height:48px;border:0;border-radius:16px;cursor:pointer;font-weight:700}button:disabled{cursor:not-allowed;opacity:.58}input,textarea{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:14px;padding:.85rem 1rem;color:#0f172a;background:#fff}textarea{min-height:112px;resize:vertical}label{display:grid;gap:.45rem;font-weight:700}.label-inline{display:inline-flex;align-items:baseline;gap:.35rem}.app-shell,.login-screen{width:min(100%,560px);max-width:100%;margin:0 auto;padding:max(1rem,env(safe-area-inset-top)) 1rem max(5rem,env(safe-area-inset-bottom))}.login-screen{display:grid;min-height:100vh;place-items:center}.login-card,.card,.stat-card,.hero{border:1px solid rgba(148,163,184,.36);border-radius:24px;background:#fffffff0;box-shadow:0 18px 44px #0f172a14}.login-card{width:100%;padding:1.25rem}.login-card form,.inline-form{display:grid;gap:.8rem}.hero{display:flex;position:relative;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.4rem;padding:1rem 4.6rem 1rem 1rem;color:#fff;background:linear-gradient(135deg,#2563eb,#0f766e)}.hero h1,.login-card h1{margin:.2rem 0 .45rem;font-size:clamp(1.45rem,7vw,2.1rem);line-height:1}.hero h1{margin:.5rem 0 .2rem;white-space:nowrap}.hero p,.login-card p{margin:0}.eyebrow{margin:0;color:#2563eb;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero .eyebrow{color:#bfdbfe}.muted,small{color:#64748b}.grid{display:grid;gap:.75rem}.two-stats{grid-template-columns:1fr 1fr;margin-bottom:.75rem}.stat-card{padding:1rem}.stat-card strong{display:block;font-size:2rem}.stat-card span{color:#64748b;font-size:.9rem}.card{min-width:0;margin:.75rem 0;padding:1rem}.bottom-card{margin-bottom:2rem}.section-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.section-title h2{margin:0;font-size:1.25rem}.cancel-observation-button{min-width:auto;min-height:28px;border-radius:999px;padding:.15rem .65rem;color:#64748b;background:#f1f5f9;font-size:.78rem;font-weight:900}.section-title span{border-radius:999px;padding:.35rem .65rem;color:#1e3a8a;background:#dbeafe;font-size:.8rem;font-weight:800}.summary-line{margin:.35rem 0}.primary-button,.inline-form button{width:100%;color:#fff;background:#2563eb;box-shadow:0 12px 24px #2563eb33}.ghost-button{position:absolute;top:.9rem;right:.9rem;min-width:48px;min-height:24px;border-radius:14px;padding:0 .75rem;color:#fff;background:#ffffff2e;font-size:.82rem}.notice{margin:.75rem 0;border-radius:16px;padding:.85rem 1rem;font-weight:700;white-space:pre-wrap;overflow-wrap:anywhere}.notice.error{color:#991b1b;background:#fee2e2}.notice.success{color:#166534;background:#dcfce7}.notice.info{color:#1e3a8a;background:#dbeafe}.quota-hint{margin:.65rem 0;border-radius:14px;padding:.75rem .85rem;color:#92400e;background:#fef3c7;font-weight:700}.list{display:grid;gap:.65rem;margin-top:.85rem}.list-item{display:flex;width:100%;min-height:64px;align-items:center;justify-content:flex-start;border:1px solid #e2e8f0;border-radius:18px;padding:.85rem;color:#0f172a;background:#fff;text-align:left}.list-item.selected{border-color:#2563eb;background:#eff6ff}.list-item span{display:grid;gap:.25rem}.empty{margin:0;border:1px dashed #cbd5e1;border-radius:18px;padding:1rem;color:#64748b;background:#f8fafc}.observation-item{border:1px solid #e2e8f0;border-radius:18px;padding:.9rem;background:#fff}.observation-item p{margin:.35rem 0;color:#334155}.sticky-action{position:sticky;bottom:max(.75rem,env(safe-area-inset-bottom));z-index:2}@media(min-width:720px){.app-shell,.login-screen{width:min(100%,720px)}.inline-form{grid-template-columns:1fr 1fr}.icf-entry-form{grid-template-columns:minmax(0,1.45fr) minmax(9rem,.75fr)}.icf-entry-form.has-environmental-role{grid-template-columns:minmax(0,1.5fr) minmax(8rem,.65fr) minmax(8rem,.65fr)}.inline-form>textarea,.inline-form>button,.inline-form>.chip-fieldset{grid-column:1 / -1}}select{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:14px;padding:.85rem 1rem;color:#0f172a;background:#fff}.chip-fieldset{margin:0;border:1px solid #dbeafe;border-radius:18px;padding:.85rem;background:#f8fafc}.chip-fieldset legend{padding:0 .25rem;font-weight:900}.chip-fieldset legend span{color:#64748b;font-size:.85rem;font-weight:700}.chip-row,.quick-filter,.area-badges{display:flex;flex-wrap:wrap;gap:.5rem}.area-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.chip{min-height:42px;border:1px solid #bfdbfe;border-radius:999px;padding:0 .8rem;color:#1e3a8a;background:#eff6ff;box-shadow:none}.chip.selected{border-color:#2563eb;color:#fff;background:#2563eb}.area-chip{display:grid;min-height:48px;align-content:center;border-radius:18px;padding:.55rem .5rem;text-align:center;white-space:normal}.area-chip.unselected{border-color:#cbd5e1;color:#475569;background:#fff}.area-chip.selected{border-color:#1d4ed8;color:#fff;background:#2563eb;box-shadow:0 10px 22px #2563eb40,inset 0 0 0 2px #ffffff47}.chip-label{font-weight:900;line-height:1.1}.chip.compact{min-height:36px;padding:0 .7rem;font-size:.86rem}.quick-filter{align-items:center;margin-top:.9rem}.quick-filter span{color:#475569;font-size:.9rem;font-weight:800}.area-badges{margin-top:.5rem}.area-badges span{border-radius:999px;padding:.25rem .55rem;color:#0f766e;background:#ccfbf1;font-size:.78rem;font-weight:900}.area-badges span.automatic{color:#1d4ed8;background:#dbeafe}.observation-area-hint{margin:.65rem 0 0;font-size:.8rem}.observation-area-edit-button{width:fit-content;min-height:32px;border:1px solid #cbd5e1;border-radius:10px;padding:.3rem .6rem;color:#475569;background:#fff;box-shadow:none;font-size:.78rem}.observation-area-editor{display:grid;gap:.65rem;margin-top:.65rem;border-top:1px solid #e2e8f0;padding-top:.65rem}.observation-area-editor-actions{display:flex;flex-wrap:wrap;gap:.45rem}.observation-area-editor-actions button{min-height:34px;border:1px solid #cbd5e1;border-radius:10px;padding:.35rem .65rem;color:#334155;background:#fff;box-shadow:none;font-size:.8rem}.summary-panel{display:grid;gap:.8rem;margin-top:1rem;border:1px solid #bfdbfe;border-radius:20px;padding:.9rem;background:#f8fbff}.compact-title{margin-bottom:0}.compact-title h3{margin:0;font-size:1.08rem;white-space:nowrap}.compact-title .cancel-observation-button{width:auto;min-width:5.25rem;flex:0 0 auto;padding-inline:.85rem}.summary-actions{display:grid;gap:.6rem}.secondary-button,.ai-button{width:100%;border:1px solid #2563eb;color:#1e3a8a;background:#dbeafe;box-shadow:none}.ai-button{border-color:#7c3aed;color:#fff;background:linear-gradient(135deg,#7c3aed,#2563eb)}.compact-empty{padding:.8rem;font-size:.92rem}.summary-content{display:grid;gap:.9rem}.summary-content h4{margin:0 0 .45rem;font-size:.98rem}.summary-status{display:grid;gap:.2rem;border-radius:16px;padding:.8rem;background:#ecfeff;color:#0f766e}.summary-status.insufficient_data{background:#fff7ed;color:#9a3412}.summary-status span,.summary-disclaimer{font-size:.88rem}.summary-disclaimer{margin:0;color:#475569}.theme-list,.area-summary-list,.source-list{display:grid;gap:.55rem}.theme-list span{border-radius:999px;padding:.45rem .65rem;color:#1e3a8a;background:#dbeafe;font-size:.86rem;font-weight:800}.area-summary-card,.source-ref{border:1px solid #e2e8f0;border-radius:16px;padding:.75rem;background:#fff}.area-summary-card ul,.points-list{margin:.45rem 0;padding-left:1.1rem;color:#334155}.source-ref{display:grid;gap:.25rem;background:#f8fafc}.source-ref span{color:#64748b;font-size:.8rem;font-weight:800}.source-ref p{margin:0;color:#334155;font-size:.9rem}.ai-summary-content{border-top:1px dashed #c4b5fd;padding-top:.9rem}.ai-section-card{display:grid;gap:.45rem;border:1px solid #ddd6fe;border-radius:16px;padding:.8rem;background:#fff}.ai-section-card p{margin:0;color:#334155;line-height:1.45}.ai-item-list{display:grid;gap:.65rem}.ai-item-list article{display:grid;gap:.35rem;border-top:1px solid #f1f5f9;padding-top:.55rem}.ai-source-chips{display:flex;flex-wrap:wrap;gap:.35rem}.ai-source-chips span{border-radius:999px;padding:.28rem .5rem;color:#5b21b6;background:#ede9fe;font-size:.76rem;font-weight:900}.icf-card{border-color:#fed7aa}.icf-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem}.icf-search label{display:grid;min-width:0;gap:.4rem}.icf-search button{width:auto;min-width:5.25rem;padding-inline:.85rem}.sensitive-copy{margin:0 0 .8rem;border-radius:16px;padding:.8rem;color:#7c2d12;background:#ffedd5;font-weight:800;line-height:1.35}.icf-list{margin-top:1rem}.icf-item{display:grid;gap:.55rem;border:1px solid #fed7aa;border-radius:18px;padding:.9rem;background:#fff}.icf-item p{margin:0;color:#334155;line-height:1.4}.teacher-note{border-left:3px solid #fb923c;padding-left:.65rem}.danger-button{width:100%;border:1px solid #fecaca;color:#991b1b;background:#fee2e2;box-shadow:none}.checkbox-row{display:flex;align-items:center;gap:.55rem;padding:.75rem .85rem;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;color:#334155;font-weight:700}.checkbox-row input{width:18px;height:18px;accent-color:#0f766e}.schedule-card{border-color:#99f6e4}.schedule-form textarea{min-height:76px}.schedule-form .time-row{grid-template-columns:1fr}.schedule-form .schedule-day-time-row{grid-template-columns:5.5rem minmax(0,1fr) minmax(0,1fr)}.schedule-form .schedule-class-site-row{grid-template-columns:5.5rem minmax(0,1fr)}.time-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.observation-title-date-row{grid-template-columns:minmax(0,1fr) minmax(8.75rem,.45fr)}.observation-title-date-row>input{min-width:0;height:100%}.schedule-table-wrap{max-width:100%;min-width:0;margin-top:.75rem;overflow-x:hidden;border:1px solid #ccfbf1;border-radius:14px;background:#f0fdfa}.schedule-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.schedule-table th,.schedule-table td{border-right:1px solid #ccfbf1;border-bottom:1px solid #ccfbf1;padding:.18rem;vertical-align:top;background:#fff}.schedule-table thead th,.schedule-table tbody th{background:#ccfbf1;color:#0f766e;font-weight:800;text-align:center;font-size:.62rem}.schedule-table thead th{background:#99f6e4;text-align:center}.schedule-table thead th:first-child{text-align:center}.schedule-table th:first-child,.schedule-table td:first-child{width:42px}.schedule-table tr:last-child th,.schedule-table tr:last-child td{border-bottom:0}.schedule-table th:last-child,.schedule-table td:last-child{border-right:0}.schedule-cell-slot{display:grid;width:100%;min-height:32px;place-items:center;border:1px solid var(--slot-color, #0f766e);border-left:3px solid var(--slot-color, #0f766e);border-radius:7px;padding:.18rem .12rem;background:var(--slot-bg, #ccfbf1);color:var(--slot-color, #0f766e);text-align:center;cursor:pointer;box-shadow:0 8px 18px #0f766e14}.schedule-cell-slot strong{max-width:100%;overflow:hidden;font-size:.66rem;line-height:1;text-overflow:ellipsis;white-space:nowrap}.schedule-cell-slot:disabled{cursor:wait;opacity:.75}.schedule-cell-slot+.schedule-cell-slot{margin-top:.18rem}.schedule-cell-slot small{display:block;color:#64748b;line-height:1.25}.schedule-cell-slot p{margin:0;color:#334155;font-size:.92rem;line-height:1.3}.empty-cell-button{display:grid;width:100%;min-height:32px;place-items:center;border:1px dashed #99f6e4;border-radius:7px;background:#f8fafc;color:#0f766e;font-size:.8rem;font-weight:800;cursor:pointer}.empty-cell-button:disabled{color:#94a3b8;cursor:not-allowed;opacity:.7}.empty-cell{color:#94a3b8;font-size:.68rem}.timetable-empty{text-align:center}.slot-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.compact-actions{grid-template-columns:1fr}.compact-button{min-height:42px;padding:0 .75rem}@media(min-width:720px){.inline-form>.time-row{grid-column:1 / -1}.slot-actions{min-width:190px}.compact-actions{min-width:0}}.legal-card{border-color:#1e40af38}.legal-question-field{grid-column:1 / -1;min-width:0;margin-top:.35rem}.legal-search-form textarea{width:100%;max-width:100%;min-height:230px;line-height:1.5}.legal-question-help{color:#64748b;font-size:.78rem;font-weight:600}.legal-results{margin-top:.9rem}.legal-ai-answer{display:grid;gap:.65rem;margin-top:.8rem;border:1px solid #bfdbfe;border-radius:18px;padding:.9rem;background:#eff6ff}.legal-ai-answer h3,.legal-ai-answer p,.legal-ai-answer ul{margin:0}.legal-ai-answer ul{padding-left:1.15rem}.legal-result-card{margin-top:.8rem;border:1px solid #dbeafe;border-radius:8px;background:#fff;overflow:hidden}.legal-source-links,.tag-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.tag-row span,.legal-source-links span{border-radius:999px;padding:.25rem .55rem;color:#475569;background:#f1f5f9;font-size:.78rem;font-weight:800}.legal-result-card h3,.legal-result-card h4,.legal-result-card p{margin:0}.legal-result-summary{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;border:0;padding:.9rem;color:#0f172a;background:#fff;text-align:left;cursor:pointer}.legal-result-summary:hover{background:#f8fafc}.legal-result-summary>span:first-child{display:grid;gap:.25rem}.legal-result-summary small{color:#475569;font-size:.88rem}.legal-result-summary>span:last-child{color:#2563eb;font-size:1.35rem;line-height:1}.legal-result-detail{display:grid;gap:1rem;border-top:1px solid #dbeafe;padding:.9rem}.legal-result-detail section{display:grid;gap:.5rem}.legal-result-detail ul{margin:0;padding-left:1.2rem}.legal-full-text{max-height:28rem;overflow:auto;border-left:4px solid #2563eb;padding:.8rem;color:#1e293b;background:#f8fafc;font-family:inherit;line-height:1.55;white-space:pre-wrap}.legal-source-check{color:#64748b;font-size:.78rem}.legal-source-links a{border-radius:999px;padding:.35rem .65rem;color:#1d4ed8;background:#dbeafe;font-size:.82rem;font-weight:900;text-decoration:none}.section-stack{display:grid;gap:.75rem;min-width:0}.app-section-panel{min-width:0}.app-section-panel[hidden]{display:none}.home-stack{display:grid;gap:0}.home-welcome-card h2{margin:.2rem 0 .45rem;font-size:1.45rem}.compact-stat{min-height:78px;align-content:center;padding:.85rem}.compact-stat .eyebrow{margin:0;font-size:.68rem}.compact-stat strong{font-size:1.8rem;line-height:1}.home-actions{display:grid;gap:.6rem;margin-top:.9rem}.quick-observation-card,.home-schedule-card{display:grid;gap:.8rem}.home-schedule-card{gap:.1rem;margin:.4rem 0}.student-cycle{display:grid;grid-template-columns:1fr 58px;gap:.55rem;align-items:stretch}.student-current-card{display:grid;gap:.12rem;min-height:58px;align-content:center;border:1px solid #dbeafe;border-radius:18px;padding:.6rem .75rem;color:#1d4ed8;background:#eff6ff;text-align:left;box-shadow:0 12px 28px #2563eb1f}.student-current-card strong{font-size:.95rem}.student-current-card span{color:#64748b;font-size:.78rem;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.student-next-button{display:grid;width:58px;min-width:58px;min-height:58px;place-items:center;border:1px solid #dbeafe;border-radius:18px;color:#1d4ed8;background:#eff6ff;box-shadow:0 12px 28px #2563eb1f}.student-next-icon{width:30px;height:30px;fill:currentColor}.voice-note-panel{display:grid;place-items:center;border:1px solid #dbeafe;border-radius:22px;padding:.9rem;background:#eff6ff}.voice-record-button{display:grid;width:150px;height:150px;min-height:150px;place-items:center;border:3px solid #bfdbfe;border-radius:999px;color:#fff;background:linear-gradient(135deg,#2563eb,#0f766e);box-shadow:0 16px 30px #2563eb38}.voice-record-button.save-mode{border-color:#bbf7d0;background:linear-gradient(135deg,#16a34a,#0f766e)}.voice-record-button.error-mode{border-color:#fecaca;background:linear-gradient(135deg,#dc2626,#991b1b);box-shadow:0 16px 30px #dc262638}.voice-action-icon{width:68px;height:68px;fill:currentColor}.voice-note-panel.listening{border-color:#bbf7d0;background:#f0fdf4}.voice-note-panel.listening .voice-record-button{border-color:#bbf7d0;background:linear-gradient(135deg,#16a34a,#0f766e);animation:voice-pulse 1.2s infinite}.voice-note-panel.error{border-color:#dbeafe;background:#eff6ff}@keyframes voice-pulse{0%,to{transform:scale(1);box-shadow:0 16px 30px #dc262633}50%{transform:scale(1.05);box-shadow:0 18px 36px #dc262652}}.quick-observation-input{min-height:134px}.day-timeline{display:grid;gap:.5rem}.day-timeline.horizontal{grid-template-columns:repeat(6,minmax(0,1fr));gap:.28rem}.timeline-block{display:grid;grid-template-columns:88px 1fr;align-items:center;gap:.7rem;border:1px solid #ccfbf1;border-radius:16px;padding:.7rem;background:#ecfeff}.day-timeline.horizontal .timeline-block{grid-template-columns:1fr;min-height:58px;gap:.18rem;justify-items:center;padding:.45rem .25rem;text-align:center}.timeline-block.past{border-color:#e2e8f0;color:#64748b;background:#f1f5f9}.timeline-block span{font-size:.78rem;font-weight:900}.day-timeline.horizontal .timeline-block span{font-size:.68rem}.timeline-block strong{color:#0f172a}.day-timeline.horizontal .timeline-block strong{max-width:100%;overflow:hidden;font-size:.82rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.compact-home-title{align-items:center}.weekly-toggle{width:auto;min-height:32px;border:1px solid #bfdbfe;border-radius:999px;padding:0 .65rem;color:#1d4ed8;background:#eff6ff;box-shadow:none;font-size:.76rem;font-weight:900}.weekly-toggle.active{color:#fff;background:#2563eb}.day-ribbon{display:flex;overflow:hidden;border:1px solid #38bdf8;border-radius:12px;background:#4885a7}.ribbon-segment{position:relative;display:grid;flex:1 1 0;min-width:0;min-height:44px;align-content:center;justify-items:center;padding:.35rem .15rem .3rem .5rem;color:#0f172a;background:linear-gradient(180deg,var(--ribbon-bg, #bae6fd),var(--ribbon-color, #7dd3fc));clip-path:polygon(0 0,calc(100% - 16px) 0,100% 50%,calc(100% - 16px) 100%,0 100%,16px 50%)}.ribbon-segment:first-child{clip-path:polygon(0 0,calc(100% - 16px) 0,100% 50%,calc(100% - 16px) 100%,0 100%)}.ribbon-segment:last-child{clip-path:polygon(0 0,100% 0,100% 50%,100% 100%,0 100%,16px 50%)}.ribbon-segment+.ribbon-segment{margin-left:-15px}.ribbon-segment.past{color:#64748b;background:linear-gradient(180deg,#e2e8f0,#cbd5e1)}.ribbon-segment strong{max-width:100%;overflow:hidden;font-size:1rem;line-height:1;text-overflow:ellipsis;white-space:nowrap}.ribbon-segment span{margin-top:.2rem;font-size:.62rem;font-weight:900}.today-official-commitments{display:grid;gap:.25rem;margin:.35rem 0 0;padding-left:1.1rem;color:#0f172a}.today-official-commitments li{font-size:.82rem;line-height:1.35}.compact-weekly-wrap{margin-top:0}.home-schedule-slot{cursor:default}.documents-placeholder{min-height:260px}.documents-pei-card,.pei-phase-list,.pei-phase-card,.pei-draft-content{display:grid;gap:.75rem}.pei-phase-list{gap:1rem}.pei-phase-card{border-top:1px solid #e2e8f0;padding-top:.9rem}.pei-phase-card:first-of-type{border-top:0;padding-top:0}.pei-date-row{grid-template-columns:1fr 1fr}.pei-draft-content .ai-section-card{border:1px solid #e2e8f0;border-radius:14px;padding:.75rem;background:#fff}.bottom-nav{position:fixed;right:auto;bottom:max(.75rem,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;width:min(calc(100vw - 1.5rem),560px);margin:0 auto;border:1px solid rgba(148,163,184,.38);border-radius:24px;padding:.35rem;background:#fffffff5;box-shadow:0 18px 44px #0f172a2e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav button{display:grid;min-height:56px;place-items:center;gap:.1rem;border-radius:18px;padding:.25rem .15rem;color:#64748b;background:transparent;box-shadow:none}.bottom-nav button span{font-size:1.1rem;line-height:1}.bottom-nav button strong{font-size:.68rem;line-height:1}.bottom-nav button.active{color:#fff;background:linear-gradient(135deg,#2563eb,#0f766e)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:720px){.bottom-nav{width:min(calc(100vw - 1.5rem),720px)}.home-actions{grid-template-columns:1fr 1fr}}.students-title .icon-button,.observation-register-title .icon-button{width:44px;min-width:44px;min-height:44px;border-radius:999px;color:#2563eb;background:#dbeafe;font-size:1.65rem;line-height:1;box-shadow:none}.observation-register-title .icon-button{flex:0 0 auto}.observation-student-meta{display:grid;gap:.1rem}.observation-student-meta strong{color:#0f172a;font-size:1.2em;line-height:1.15}.observation-student-meta span{color:#64748b;font-size:.92rem;font-weight:700}.student-list-item{display:grid;grid-template-columns:1fr;align-items:center;gap:.6rem;border:1px solid #e2e8f0;border-radius:20px;padding:.25rem;background:#fff}.student-list-item.selected{border-color:#2563eb;background:#eff6ff}.student-select-button{justify-content:flex-start;min-height:64px;border-radius:16px;padding:.75rem;color:#0f172a;background:transparent;text-align:left;box-shadow:none}.student-select-button span{display:grid;gap:.25rem}.flat-icon-button{display:inline-grid;width:44px;min-width:44px;min-height:44px;place-items:center;border-radius:999px;color:#0f766e;background:#ccfbf1;font-size:1.05rem;box-shadow:none}.student-detail-card .icf-card{margin-top:1rem;border-style:dashed;box-shadow:none}.student-detail-form{display:grid;gap:.8rem}.student-detail-form .student-placement-row{grid-template-columns:minmax(6rem,.55fr) minmax(0,1.45fr);align-items:end}.student-form-group{display:grid;gap:.25rem;padding-top:.25rem}.student-form-group h3{margin:0;font-size:1rem}.privacy-microcopy{margin:.7rem 0;border:1px solid #bfdbfe;border-radius:16px;padding:.75rem .85rem;color:#1e3a8a;background:#eff6ff;font-size:.9rem;font-weight:700}.alias-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.student-overview-stack{display:grid;gap:.8rem}.overview-block{border:1px solid #e2e8f0;border-radius:18px;padding:.85rem;background:#f8fafc}.overview-block p{margin:.35rem 0 0}.overview-icf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.overview-environment-block{min-width:0}.barrier-block{border-color:#fecaca;background:#fff7f7}.facilitator-block{border-color:#bbf7d0;background:#f0fdf4}.unclassified-environment-notice{border:1px solid #fde68a;border-radius:12px;padding:.65rem .75rem;background:#fffbeb}.overview-label{display:block;color:#475569;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.overview-badges{margin-top:.45rem}.overview-environment-block .overview-badges span{max-width:100%;overflow:hidden;text-overflow:ellipsis}@media(max-width:520px){.overview-icf-grid{grid-template-columns:1fr}}.overview-block-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.overview-date{color:#64748b;font-size:.76rem;font-weight:900}.student-actions-row,.action-row{display:grid;gap:.55rem}.secondary-button{width:100%;border:1px solid #cbd5e1;color:#1e3a8a;background:#fff;box-shadow:none}@media(min-width:720px){.student-actions-row{grid-template-columns:repeat(3,1fr)}.action-row{grid-template-columns:repeat(2,1fr)}}.contracts-card{border-color:#bfdbfe}.section-subtitle{margin:.25rem 0 0;color:#64748b;font-size:.88rem;font-weight:600}.contracts-list{display:grid;gap:.65rem;margin:.8rem 0 0}.contract-item{display:grid;grid-template-columns:1fr auto;align-items:stretch;gap:.5rem;border:1px solid #e2e8f0;border-radius:20px;padding:.35rem;background:#fff}.contract-item.selected{border-color:#2563eb;background:#eff6ff}.contract-main{display:grid;gap:.25rem;justify-items:start;min-height:74px;border-radius:16px;padding:.75rem;color:#0f172a;background:transparent;text-align:left;box-shadow:none}.contract-heading{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem}.contract-heading strong{color:#0f172a;font-size:1rem}.contract-active-badge{flex:0 0 auto;border-radius:999px;padding:.25rem .55rem;color:#1d4ed8!important;background:#dbeafe;font-size:.72rem;font-weight:900}.contract-meta{font-size:.9rem}.contract-duration{font-size:.82rem;font-weight:600!important}.contract-main span,.contract-main small{color:#64748b;font-weight:700}.contract-actions{display:grid;align-content:center;gap:.35rem}.danger-flat{color:#be123c;background:#ffe4e6}.contract-form{grid-template-columns:minmax(0,1fr);border-top:1px dashed #cbd5e1;margin-top:.9rem;padding-top:.9rem}.contract-form>*{grid-column:1}.contract-form-group{display:grid;gap:.75rem;border:1px solid #e2e8f0;border-radius:18px;padding:.9rem;background:#f8fafc}.contract-form-group h4{margin:0;color:#1e3a8a;font-size:.92rem}.contract-form .time-row,.contract-form .contract-date-row{grid-template-columns:1fr}.contract-form .contract-date-row input[type=date]{width:100%}.contract-choice{display:grid;grid-template-columns:auto 1fr;align-items:center;min-height:64px;border:1px solid #dbeafe;border-radius:14px;padding:.7rem .8rem;background:#fff}.contract-choice span{display:grid;gap:.15rem}.contract-choice small{font-size:.78rem;font-weight:600}.contract-empty-action{display:grid;gap:.2rem;width:100%;min-height:64px;border:1px dashed #cbd5e1;border-radius:18px;color:#64748b;background:#f8fafc;text-align:left;box-shadow:none}.contract-empty-action span{font-size:.85rem;font-weight:600}@media(min-width:720px){.schedule-form .time-row,.contract-form .time-row{grid-template-columns:repeat(2,1fr)}.schedule-form .schedule-day-time-row{grid-template-columns:5.5rem minmax(0,1fr) minmax(0,1fr)}.schedule-form .schedule-class-site-row{grid-template-columns:5.5rem minmax(0,1fr)}.contract-form .contract-date-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.document-list{display:grid;gap:.7rem;margin-top:1rem}.document-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.85rem;border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc}.document-row p{margin:.2rem 0 0}.document-actions{display:grid;align-content:start;gap:.35rem}.document-actions .flat-icon-button{width:40px;min-width:40px;min-height:40px}.storage-path{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.72rem}.commitments-title{align-items:center}.title-icon-actions{display:inline-flex;align-items:center;gap:.45rem}.commitments-title .icon-button,.commitments-title .flat-icon-button{width:44px;min-width:44px;min-height:44px;place-items:center;border-radius:999px;box-shadow:none}.commitments-title .icon-button{color:#2563eb;background:#dbeafe;font-size:1.65rem;line-height:1}.commitments-title .camera-button{color:#0f766e;background:#ccfbf1;font-size:1rem}.commitment-item{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:.75rem}.commitment-content{min-width:0}.commitment-delete-button{color:#991b1b;background:#fee2e2}.document-upload-row{grid-template-columns:5.5rem minmax(0,1fr);align-items:end}.document-upload-row input[type=file],.document-upload-row select{height:48px;min-height:48px}.document-upload-row input[type=file]{padding:.7rem .55rem;overflow:hidden;font-size:.82rem;white-space:nowrap}.document-privacy-review{display:grid;gap:.65rem;margin-top:.8rem;padding:.9rem;border:1px solid #99f6e4;border-radius:.8rem;background:#f0fdfa}.document-privacy-review p{margin:0}.document-privacy-review summary{cursor:pointer;color:#115e59;font-weight:600}.document-privacy-review pre{max-height:14rem;overflow:auto;margin:.55rem 0 0;padding:.7rem;border-radius:.55rem;background:#fff;color:#134e4a;font:inherit;white-space:pre-wrap}.options-stack,.options-card{display:grid;gap:.75rem}.options-actions{display:flex;flex-wrap:wrap;gap:.55rem}.options-info-list,.plan-limit-grid{display:grid;gap:.55rem}.options-info-list div,.plan-limit-grid{border:1px solid #e2e8f0;border-radius:16px;padding:.75rem;background:#f8fafc}.options-info-list div{display:grid;gap:.2rem}.options-info-list span,.plan-limit-grid span{color:#64748b;font-size:.78rem;font-weight:800}.options-info-list strong,.plan-limit-grid strong{overflow-wrap:anywhere}.plan-limit-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center}.option-placeholder-list{display:flex;flex-wrap:wrap;gap:.45rem}.option-placeholder-list span{border-radius:999px;padding:.35rem .65rem;color:#475569;background:#f1f5f9;font-size:.78rem;font-weight:800}.ai-assistant-stack,.ai-assistant-intro-card,.ai-assistant-situation-card,.ai-assistant-activity-screen{display:grid;gap:.75rem}.ai-assistant-back-button{justify-self:start;min-height:34px;border:1px solid #cbd5e1;border-radius:10px;padding:.35rem .75rem;color:#0f172a;background:#fff;box-shadow:none;font-size:.84rem;font-weight:900}.ai-assistant-placeholder-panel{display:grid;gap:.35rem;border:1px dashed #cbd5e1;border-radius:12px;padding:.9rem;background:#f8fafc}.ai-assistant-placeholder-panel strong{color:#0f172a}.ai-assistant-placeholder-panel p{margin:0}.ai-assistant-choice-grid{display:grid;gap:.55rem}.ai-assistant-choice{display:grid;gap:.2rem;min-height:76px;border:1px solid #e2e8f0;border-radius:16px;padding:.75rem;color:#0f172a;background:#f8fafc;text-align:left;box-shadow:none}.ai-assistant-choice.active{border-color:#2563eb;background:#eff6ff}.ai-assistant-choice span{color:#64748b;font-size:.86rem;line-height:1.3;font-weight:700}.pei-workflow,.pei-section-detail{display:grid;gap:.8rem}.pei-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.pei-context-grid>div,.pei-detail-summary,.pei-detail-block,.pei-draft-panel,.pei-source-panel,.pei-guardrail-panel,.pei-warning-panel{border:1px solid #e2e8f0;border-radius:12px;padding:.75rem;background:#fff}.pei-context-grid span,.pei-detail-summary span,.pei-section-meta{color:#64748b;font-size:.76rem;font-weight:900;text-transform:uppercase}.pei-context-grid strong{display:block;margin-top:.15rem;color:#0f172a;font-size:.95rem}.pei-context-grid small,.pei-section-row small{color:#64748b;font-size:.78rem;font-weight:800}.pei-warning-panel{border-color:#fde68a;color:#92400e;background:#fffbeb;font-size:.86rem;font-weight:800;line-height:1.4}.pei-phase-selector{display:flex;flex-wrap:wrap;gap:.5rem;border:0;padding:0}.pei-phase-selector legend{width:100%;color:#0f172a;font-size:.88rem;font-weight:900}.pei-phase-selector label{display:flex;align-items:center;gap:.35rem;border:1px solid #e2e8f0;border-radius:999px;padding:.45rem .65rem;color:#334155;background:#fff;font-size:.82rem;font-weight:800}.pei-section-list{display:grid;gap:.55rem}.pei-section-row{position:relative;display:grid;gap:.25rem;min-height:96px;border:1px solid #e2e8f0;border-radius:14px;padding:.75rem;color:#0f172a;background:#f8fafc;text-align:left;box-shadow:none}.pei-section-row strong{font-size:.96rem}.pei-section-row span:not(.pei-section-meta){color:#475569;font-size:.84rem;line-height:1.35;font-weight:700}.pei-section-row small{width:fit-content;border-radius:999px;padding:.2rem .5rem;background:#e2e8f0}.pei-section-row.status-ready{border-color:#bbf7d0;background:#f0fdf4}.pei-section-row.status-ready small{color:#166534;background:#dcfce7}.pei-section-row.status-empty{border-color:#fde68a;background:#fffbeb}.pei-section-row.status-empty small{color:#92400e;background:#fef3c7}.pei-section-row.status-partial{border-color:#bfdbfe;background:#eff6ff}.pei-section-row.status-partial small{color:#1d4ed8;background:#dbeafe}.pei-section-row:disabled{cursor:not-allowed;opacity:.68}.pei-detail-summary p,.pei-detail-block ul,.pei-guardrail-panel ul,.pei-warning-panel ul{margin:.35rem 0 0}.pei-detail-summary p,.pei-detail-block li,.pei-guardrail-panel li,.pei-warning-panel li{color:#334155;font-size:.86rem;line-height:1.45}.pei-detail-block h3,.pei-draft-panel h3,.pei-guardrail-panel h3,.pei-warning-panel strong{margin:0;color:#0f172a;font-size:.95rem}.pei-draft-title{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.55rem}.pei-draft-title.only-actions{justify-content:flex-end}.pei-draft-title span{display:block;margin-top:.15rem;color:#64748b;font-size:.78rem;font-weight:800}.pei-draft-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.pei-draft-actions.inline{flex-wrap:nowrap}.pei-draft-part-list{display:grid;gap:.9rem}.pei-step-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.pei-step-strip button{border:1px solid #cbd5e1;border-radius:8px;padding:.65rem .75rem;color:#334155;background:#f8fafc;font-weight:900;text-align:left}.pei-step-strip button.active{border-color:#2563eb;color:#1d4ed8;background:#eff6ff}.pei-step-strip button:disabled{cursor:not-allowed;opacity:.55}.pei-draft-part{display:grid;gap:.45rem}.pei-draft-part+.pei-draft-part{padding-top:.85rem;border-top:1px solid #e2e8f0}.pei-draft-part-title{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.pei-draft-part-title h4{margin:.1rem 0 0;color:#0f172a;font-size:.92rem}.pei-draft-part-title span{color:#64748b;font-size:.74rem;font-weight:900;text-transform:uppercase}.pei-draft-panel pre{overflow-x:auto;margin:0;border-radius:10px;padding:.75rem;color:#1e293b;background:#f8fafc;white-space:pre-wrap;font-family:inherit;font-size:.84rem;line-height:1.45}.pei-draft-panel textarea{width:100%;min-height:340px;resize:vertical;border:1px solid #cbd5e1;border-radius:10px;padding:.75rem;color:#0f172a;background:#fff;font:inherit;line-height:1.5}.pei-draft-part textarea{min-height:240px}.pei-source-panel summary{cursor:pointer;color:#0f172a;font-size:.9rem;font-weight:900}.pei-source-list{display:grid;gap:.55rem;margin-top:.7rem}.pei-source-ref{display:grid;gap:.2rem;border:1px solid #e2e8f0;border-radius:10px;padding:.65rem;background:#f8fafc}.pei-source-ref strong{color:#0f172a;font-size:.88rem}.pei-source-ref span,.pei-source-ref small{color:#64748b;font-size:.76rem;font-weight:800}.pei-source-ref p{margin:0;color:#334155;font-size:.82rem;line-height:1.4}.balance-workflow,.balance-setup,.balance-flow,.balance-step-panel{display:grid;gap:.85rem}.balance-student-context{display:grid;gap:.15rem;border-radius:14px;padding:.75rem;color:#0f172a;background:#f1f5f9}.balance-student-context span{color:#64748b;font-size:.84rem;font-weight:700}.balance-resume-panel{display:grid;gap:.65rem;border:1px solid #dbeafe;border-radius:14px;padding:.75rem;background:#f8fbff}.balance-resume-title{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.balance-resume-title h3{margin:0;color:#0f172a;font-size:.95rem}.ghost-button.compact{position:static;min-width:auto;min-height:32px;border:1px solid #cbd5e1;border-radius:10px;padding:.3rem .65rem;color:#334155;background:#fff;box-shadow:none}.balance-resume-list{display:grid;gap:.5rem}.balance-resume-item{display:grid;gap:.45rem;width:100%;border:1px solid #e2e8f0;border-radius:12px;padding:.65rem;color:#0f172a;background:#fff;text-align:left;box-shadow:none}.balance-resume-item span{display:grid;gap:.12rem}.balance-resume-item small,.balance-resume-item>span:last-child{color:#64748b;font-size:.78rem;font-weight:700}.balance-setup h3,.balance-step-panel h3{margin:0 0 .55rem;color:#0f172a;font-size:1rem}.balance-purpose-grid{display:grid;gap:.55rem}.balance-purpose-grid button{display:grid;gap:.2rem;min-height:68px;border:1px solid #e2e8f0;border-radius:14px;padding:.75rem;color:#0f172a;background:#f8fafc;text-align:left;box-shadow:none}.balance-purpose-grid button.active{border-color:#2563eb;background:#eff6ff}.balance-purpose-grid button span{color:#64748b;font-size:.84rem;line-height:1.3;font-weight:700}.balance-glo-types{display:flex;flex-wrap:wrap;gap:.55rem;border:0;padding:0}.balance-glo-types legend{width:100%;margin-bottom:.25rem;color:#0f172a;font-size:.9rem;font-weight:900}.balance-glo-types label{display:flex;align-items:center;gap:.35rem;border:1px solid #e2e8f0;border-radius:999px;padding:.45rem .7rem;color:#334155;background:#fff;font-size:.84rem;font-weight:800}.balance-period,.balance-sources{border:1px solid #e2e8f0;border-radius:14px;padding:.7rem;background:#fff}.balance-period summary,.balance-sources summary{color:#0f172a;cursor:pointer;font-size:.88rem;font-weight:900}.balance-period-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:.7rem}.balance-period-fields label{display:grid;gap:.3rem;color:#475569;font-size:.78rem;font-weight:800}.balance-period-fields input{width:100%}.balance-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.balance-steps button{display:grid;justify-items:center;gap:.25rem;min-height:58px;border:1px solid #e2e8f0;border-radius:12px;padding:.4rem .2rem;color:#64748b;background:#f8fafc;box-shadow:none;font-size:.72rem;font-weight:900}.balance-steps button span{display:grid;width:22px;height:22px;place-items:center;border-radius:999px;color:#475569;background:#e2e8f0}.balance-steps button.active{border-color:#2563eb;color:#1d4ed8;background:#eff6ff}.balance-steps button.active span{color:#fff;background:#2563eb}.balance-steps button:disabled{cursor:not-allowed;opacity:.55}.balance-framework,.balance-framework-section,.balance-framework-items,.balance-dimensions{display:grid;gap:.7rem}.balance-framework-section{border-top:1px solid #e2e8f0;padding-top:.8rem}.balance-framework-section h4{margin:0;color:#0f172a;font-size:.95rem}.balance-dimension-card,.balance-framework-item,.balance-underobserved{border:1px solid #e2e8f0;border-radius:14px;padding:.75rem;background:#fff}.balance-dimension-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.65rem}.balance-dimension-card>header strong{color:#0f172a;font-size:.9rem}.balance-dimension-card>header small{color:#64748b;white-space:nowrap}.balance-framework-item{display:grid;gap:.55rem;background:#f8fafc}.balance-item-kind{width:fit-content;border-radius:999px;padding:.2rem .5rem;color:#1e3a8a;background:#dbeafe;font-size:.72rem;font-weight:700}.balance-framework-item.kind-summary{border-color:#bfdbfe;background:#eff6ff}.balance-framework-item.kind-notice{border-color:#fde68a;background:#fffbeb}.balance-framework-item.kind-notice .balance-item-kind{color:#92400e;background:#fef3c7}.balance-dimension-summary{gap:.55rem}.balance-section-intro{margin:-.15rem 0 0;font-size:.82rem;line-height:1.4}.balance-framework-item>p,.balance-source-ref p{margin:0;color:#334155;font-size:.88rem;line-height:1.45}.balance-framework-item textarea{width:100%;resize:vertical}.balance-item-actions{display:flex;flex-wrap:wrap;gap:.4rem}.balance-item-actions button{min-height:34px;border:1px solid #cbd5e1;border-radius:10px;padding:.35rem .65rem;color:#334155;background:#fff;box-shadow:none;font-size:.78rem}.balance-item-sources summary,.balance-underobserved>summary{color:#475569;cursor:pointer;font-size:.8rem;font-weight:800}.balance-source-ref{display:grid;gap:.2rem;margin-top:.55rem;border-left:3px solid #cbd5e1;padding-left:.6rem}.balance-source-ref strong{color:#1e293b;font-size:.82rem}.balance-source-ref small{color:#64748b}.balance-underobserved>.balance-framework-items{margin-top:.7rem}.balance-evolution,.evolution-period-setup{display:grid;gap:.75rem}.evolution-period-card,.evolution-period-summary{display:grid;gap:.45rem;border:1px solid #dbeafe;border-radius:12px;padding:.7rem;background:#f8fbff}.evolution-period-card label{display:grid;gap:.25rem;color:#475569;font-size:.8rem;font-weight:700}.evolution-period-card input{width:100%}.evolution-period-summary{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));color:#475569;font-size:.82rem}.evolution-category{gap:.55rem}.evolution-item{padding:.65rem}.evolution-source-columns{display:grid;gap:.75rem;margin-top:.6rem}.evolution-source-columns>div>strong{color:#334155;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}@media(min-width:720px){.evolution-period-setup{grid-template-columns:1fr 1fr}.evolution-period-setup>.primary-button,.evolution-period-setup>.warning-box{grid-column:1 / -1}.evolution-source-columns{grid-template-columns:1fr 1fr}}.meeting-preparation-actions{display:flex;align-items:center;justify-content:flex-start}.meeting-preparation-actions .primary-button{width:auto}.meeting-prep-stack{display:grid;gap:.9rem}.meeting-focus-grid{display:grid;gap:.65rem}.meeting-focus-card,.meeting-discourse-card,.meeting-strategy-card{border:1px solid #e2e8f0;border-radius:8px;padding:.8rem;background:#fff}.meeting-focus-card{display:grid;gap:.45rem}.meeting-focus-card>span,.meeting-strategy-row span,.meeting-discourse-card header span{color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase}.meeting-focus-card strong{color:#0f172a;font-size:.92rem;line-height:1.3}.meeting-focus-card ul{display:grid;gap:.35rem;margin:0;padding:0;list-style:none}.meeting-focus-card li{color:#334155;font-size:.84rem;line-height:1.35}.meeting-focus-card.trend-positive{border-color:#bbf7d0;background:#f0fdf4}.meeting-focus-card.trend-steady{border-color:#fde68a;background:#fffbeb}.meeting-focus-card.trend-negative{border-color:#fecaca;background:#fef2f2}.meeting-discourse-card,.meeting-strategy-card{display:grid;gap:.75rem}.meeting-discourse-card>header,.meeting-strategy-card>header,.meeting-strategy-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.meeting-discourse-card h4,.meeting-strategy-card h4{margin:0;color:#0f172a;font-size:.98rem}.meeting-discourse-actions{display:flex;flex-wrap:wrap;gap:.45rem}.meeting-discourse-actions button{min-height:34px;border:1px solid #bfdbfe;border-radius:8px;padding:.4rem .65rem;color:#1d4ed8;background:#eff6ff;box-shadow:none;font-size:.78rem;font-weight:800;white-space:nowrap}.meeting-teleprompter{border:1px solid #e5e7eb;border-radius:8px;padding:1rem;background:#fffdf7;color:#111827;box-shadow:inset 0 0 0 1px #ffffffb3}.meeting-teleprompter p{margin:0 0 .8rem;font-size:1rem;line-height:1.7}.meeting-teleprompter p:last-child{margin-bottom:0}.meeting-discourse-editor{display:grid;gap:.6rem}.meeting-discourse-editor textarea{width:100%;min-height:260px;border:1px solid #cbd5e1;border-radius:8px;padding:.75rem;color:#0f172a;background:#fffdf7;font:inherit;font-size:1rem;line-height:1.65;resize:vertical}.meeting-strategy-list{display:grid;gap:.6rem}.meeting-strategy-row{border:1px solid #e2e8f0;border-radius:8px;padding:.7rem;background:#f8fafc}.meeting-strategy-row>div{display:grid;flex:1 1 0;gap:.2rem;min-width:0}.meeting-strategy-row strong,.meeting-strategy-row p{margin:0;color:#0f172a;font-size:.88rem;line-height:1.4}.meeting-strategy-arrow{color:#2563eb;font-size:1rem;font-weight:900}@media(min-width:900px){.meeting-focus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.warning-box{display:grid;gap:.25rem;border:1px solid #fed7aa;border-radius:16px;padding:.75rem;color:#7c2d12;background:#fff7ed;font-size:.9rem;font-weight:700}.warning-box p{margin:0}.contracts-card .section-title .icon-button{width:44px;min-width:44px;min-height:44px;border-radius:999px;color:#2563eb;background:#dbeafe;font-size:1.65rem;line-height:1;box-shadow:none}.teaching-tips-toggle{justify-content:flex-start}.teaching-tips-panel{display:grid;gap:.75rem;border:1px solid #bfdbfe;border-radius:20px;padding:.85rem;background:#eff6ff}.teaching-tips-section{display:grid;gap:.5rem}.teaching-tips-analysis{border-left:3px solid #2563eb;padding-left:.75rem}.teaching-tips-analysis p{margin:0;color:#1e293b;line-height:1.55}.teaching-tips-section h3{margin:0;font-size:.95rem}.teaching-tips-prose{border:1px solid #dbeafe;border-radius:16px;padding:.8rem .9rem;background:#fff}.teaching-tips-prose p{margin:0;color:#334155;line-height:1.6;white-space:pre-line}.teaching-tips-prose p+p{margin-top:.75rem}.teaching-tips-compact-block{border:1px solid #dbeafe;border-radius:16px;padding:.7rem .85rem;background:#fff}.teaching-tips-compact-block ul{display:grid;gap:.45rem;margin:0;padding-left:1.15rem;color:#334155}.teaching-tips-compact-block li{line-height:1.45}.teaching-tip-frequency{color:#64748b;font-size:.88em}.privacy-consent-card{border-color:#99f6e4}.consent-summary{display:grid;gap:.55rem;margin:1rem 0;border:1px solid #bfdbfe;border-radius:18px;padding:.9rem;background:#eff6ff}.consent-summary strong{color:#1e3a8a}.consent-summary ul{display:grid;gap:.45rem;margin:0;padding-left:1.1rem;color:#334155}.consent-checklist{display:grid;gap:.75rem;margin:1rem 0}.consent-checklist .checkbox-row{align-items:flex-start}.consent-checklist .checkbox-row input{margin-top:.2rem;flex:0 0 auto}.consent-account-note{margin:.75rem 0;color:#64748b;font-size:.9rem}.consent-actions{grid-template-columns:1fr}.document-context-summary{display:grid;gap:.35rem;margin-top:.55rem;padding:.65rem;border:1px solid #dbeafe;border-radius:12px;background:#eff6ff}.document-context-summary p,.error-text{margin:0;font-size:.88rem;line-height:1.4}.error-text{margin-top:.5rem;color:#b91c1c}
