:root{color:#17202a;background:#eef2f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{align-items:center;background:#fff;border:1px solid #cbd7df;border-radius:8px;color:#17202a;cursor:pointer;display:inline-flex;gap:8px;min-height:40px;justify-content:center;padding:0 13px}button:hover{border-color:#7895aa}button:disabled{cursor:not-allowed;opacity:.62}button.primary{background:#176b80;border-color:#176b80;color:#fff}button.large{min-height:48px;padding:0 18px}button.icon-danger{color:#9b3f27;min-width:40px;padding:0 10px}button.icon-danger:hover{background:#fff1ed;border-color:#d49b8b}.app-shell{min-height:100vh;padding:22px}.app-shell-wide{padding-left:8px;padding-right:8px}.workspace{display:flex;flex-direction:column;gap:14px;margin:0 auto;max-width:1600px}.app-shell-wide .workspace{max-width:none}.product-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.eyebrow{color:#526879;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.product-header h1{font-size:30px;line-height:1.05;margin:4px 0}.product-header p,.hero-copy p,.decision-panel p{color:#526879;line-height:1.5;margin:0}.status-pill{align-items:center;background:#fff;border:1px solid #cbd7df;border-radius:999px;display:flex;gap:8px;min-height:38px;padding:0 14px;white-space:nowrap}.status-pill[data-status=success]{border-color:#8db89f;color:#1f6f50}.status-pill[data-status=working]{border-color:#88a9bc;color:#176b80}.status-pill[data-status=error]{border-color:#d49b8b;color:#9b3f27}.hero-band{align-items:center;background:#fff;border:1px solid #d3dde4;border-radius:8px;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:18px}.hero-copy h2{font-size:21px;margin:0 0 6px}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.summary-strip{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(170px,1fr))}.metric{align-items:flex-start;background:#fff;border:1px solid #d3dde4;border-radius:8px;display:flex;gap:12px;padding:14px}.metric-icon{align-items:center;background:#ecf5f6;border-radius:8px;color:#176b80;display:flex;height:36px;justify-content:center;width:36px}.metric span,.solution-summary span{color:#607687;display:block;font-size:12px;font-weight:800;text-transform:uppercase}.metric strong,.solution-summary strong{display:block;font-size:24px;margin-top:2px}.metric small{color:#667987;display:block;margin-top:4px}.view-switch{background:#dfe8ee;border:1px solid #cfdae2;border-radius:8px;display:inline-flex;gap:4px;padding:4px;width:fit-content}.view-switch button{background:transparent;border:0;min-height:36px}.view-switch button.selected{background:#fff;box-shadow:0 1px 4px #17202a14}.setup-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.info-panel,.result-main,.decision-panel,.advanced-section{background:#fff;border:1px solid #d3dde4;border-radius:8px;min-width:0}.panel-title,.result-title{align-items:center;border-bottom:1px solid #e3e9ee;display:flex;gap:12px;justify-content:space-between;min-height:54px;padding:12px 14px}.panel-title>div,.result-title>div{align-items:center;display:flex;gap:9px}.panel-title h2,.result-title h2,.decision-panel h2{font-size:16px;margin:0}.result-title select{border:1px solid #cbd7df;border-radius:8px;height:36px;max-width:260px;min-width:160px;padding:0 8px}.title-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.table-wrap{overflow:auto}.editor-stack{display:grid;gap:14px;padding:14px}.editable-list{display:grid;gap:10px}.editable-row{align-items:end;background:#f8fafb;border:1px solid #e1e8ee;border-radius:8px;display:grid;gap:10px;padding:12px}.group-row{grid-template-columns:minmax(170px,1.3fr) minmax(80px,.65fr) minmax(80px,.65fr) minmax(130px,.85fr) minmax(88px,.65fr) auto}.subject-row{align-items:center;grid-template-columns:minmax(220px,1fr) auto auto}.specialist-row{align-items:end;grid-template-columns:minmax(88px,.55fr) minmax(160px,1.15fr) minmax(140px,.95fr) minmax(92px,.55fr) minmax(86px,.5fr) minmax(170px,.95fr) minmax(180px,1fr) minmax(120px,.7fr)}.specialist-list{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.specialist-card{background:#f8fafb;border:1px solid #e1e8ee;border-radius:8px;display:grid;gap:12px;min-width:0;padding:12px}.specialist-card-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.specialist-card-header strong,.specialist-card-header span{display:block}.specialist-card-header span{color:#607687;font-size:13px;margin-top:3px}.specialist-fields,.specialist-availability{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.specialist-fields label{display:grid;gap:5px}.room-row{grid-template-columns:minmax(180px,1.3fr) minmax(92px,.55fr) minmax(140px,1fr) minmax(130px,.9fr) auto}.editable-row label,.specialist-fields label,.add-box label,.form-control,.wide-label{display:grid;gap:5px}.editable-row label span,.specialist-fields label span,.add-box label span,.form-control>span,.wide-label span{color:#607687;font-size:12px;font-weight:800;text-transform:uppercase}.editable-row input,.editable-row select,.specialist-card input,.specialist-card select,.add-box input,.add-box select,.wide-label input,.table-input{background:#fff;border:1px solid #cbd7df;border-radius:8px;color:#17202a;min-height:38px;min-width:0;outline:0;padding:0 10px;width:100%}.editable-row input:focus,.editable-row select:focus,.specialist-card input:focus,.specialist-card select:focus,.add-box input:focus,.add-box select:focus,.wide-label input:focus,.table-input:focus{border-color:#176b80;box-shadow:0 0 0 3px #176b801f}.add-box input[type=range]{accent-color:#176b80;min-height:20px;padding:0}.editable-row input[readonly]{background:#edf3f6;color:#405363}.editable-row small{color:#607687}.availability-control{display:grid;gap:5px}.availability-control>span{color:#607687;font-size:12px;font-weight:800;text-transform:uppercase}.availability-buttons{display:flex;flex-wrap:wrap;gap:4px}.availability-button{background:#fff;border:1px solid #cbd7df;border-radius:7px;color:#405363;cursor:pointer;font-size:12px;font-weight:800;min-height:30px;padding:0 8px}.availability-button[data-active=true]{background:#eaf4f4;border-color:#1c7b78;color:#176b80}.detail-hint{background:#f7f9fb;border:1px solid #e3e9ee;border-radius:8px;color:#526879;font-size:13px;line-height:1.4;padding:10px 12px}.add-box,.subsection{background:#fff;border:1px dashed #cbd7df;border-radius:8px;display:grid;gap:12px;padding:12px}.add-box h3,.subsection h3{font-size:15px;margin:0}.form-grid{display:grid;gap:10px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:1.5fr .8fr .8fr}.form-grid.four{grid-template-columns:1.5fr .7fr 1fr .9fr}.form-grid.five{grid-template-columns:1.4fr .65fr .65fr .9fr .65fr}.instructor-add-grid{grid-template-columns:minmax(180px,1.5fr) minmax(160px,1fr) minmax(110px,.7fr) minmax(100px,.65fr)}.form-note{color:#607687;font-size:13px;line-height:1.35}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid #edf1f4;padding:11px 14px;text-align:left;vertical-align:top}th{color:#607687;font-size:12px;font-weight:800;text-transform:uppercase}td{color:#253542}.card-list{display:grid;gap:10px;padding:14px}.card-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.rule-toolbar{align-items:center;background:#f7fafb;border-bottom:1px solid #e1e8ee;display:flex;flex-wrap:wrap;gap:8px;padding:12px 14px}.rule-toolbar>div{display:grid;gap:2px;margin-right:auto}.rule-toolbar strong{color:#172431;font-size:15px}.rule-toolbar span{color:#607687;font-size:13px;font-weight:700}.rule-toolbar button{min-height:36px}.priority-board{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.priority-column{background:#f8fafb;border:1px solid #e1e8ee;border-radius:8px;display:grid;gap:10px;min-width:0;padding:12px}.priority-column[data-priority=mandatory]{border-top:4px solid #176b80}.priority-column[data-priority=strong-preference]{border-top:4px solid #d79b2b}.priority-column[data-priority=weak-preference]{border-top:4px solid #8ba0af}.priority-column-header{display:grid;gap:4px}.priority-column-header strong{color:#172431;font-size:15px}.priority-column-header span,.priority-column-header small{color:#607687;font-size:12px}.priority-column-header span{font-weight:800;text-transform:uppercase}.priority-column-header small{line-height:1.35}.priority-rule-list{display:grid;gap:8px}.priority-rule-card,.priority-empty{background:#fff;border:1px solid #e1e8ee;border-radius:8px;min-width:0;padding:10px}.priority-rule-card{display:grid;gap:9px}.priority-rule-card strong,.priority-rule-card span{display:block}.priority-rule-card strong{color:#17202a;font-size:13px;line-height:1.25}.priority-rule-card span,.priority-empty{color:#607687;font-size:12px;line-height:1.3}.priority-actions{display:grid;gap:4px;grid-template-columns:repeat(3,minmax(0,1fr))}.priority-actions button{font-size:12px;font-weight:800;min-height:30px;padding:0 6px}.priority-actions button[data-active=true]{background:#17202a;border-color:#17202a;color:#fff}.mini-card,.rule-card,.empty-card{border:1px solid #e1e8ee;border-radius:8px;padding:12px}.empty-card{color:#607687}.mini-card strong,.mini-card span,.mini-card small,.mini-card em,.rule-card strong,.rule-card span,.rule-card em,.rule-card small{display:block}.mini-card span,.rule-card span{color:#526879;margin-top:4px}.mini-card small,.rule-card small{color:#607687;margin-top:7px}.mini-card em{color:#a65d15;font-style:normal;font-weight:700;margin-top:7px}.rule-card em{color:#405363;font-size:13px;font-style:normal;line-height:1.35;margin-top:7px}.mini-action{align-self:flex-start;background:#fff8e8;border-color:#e7b36a;color:#8c5b11;font-size:13px;font-weight:800;margin-top:10px;min-height:34px}.mini-card[data-status=missing]{border-color:#e7b36a}.mini-card[data-status=tight]{border-color:#d6bd59}.mini-card[data-status=missing] small{color:#a65d15}.mini-card[data-status=tight] small{color:#8c6d13}.rule-card{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.editable-rule{align-items:stretch}.rule-copy{flex:1;min-width:0}.rule-edit-form{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(150px,1fr))}.rule-edit-form label{display:grid;gap:5px}.rule-edit-form label>span{color:#607687;font-size:12px;font-weight:800;margin:0;text-transform:uppercase}.rule-edit-form input,.rule-edit-form select{min-height:40px}.rule-edit-form .wide-label{grid-column:1 / -1}.rule-config{display:grid;gap:8px;min-width:170px}.check-line{align-items:center;display:flex;gap:8px}.check-line input{accent-color:#176b80;height:16px;width:16px}.check-line span,.range-control span{color:#405363;font-size:13px;font-weight:800}.inline-check{min-height:38px}.range-control{display:grid;gap:5px}.range-control input{accent-color:#176b80;min-height:20px;padding:0}.rule-actions{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.rule-card[data-strength=Hard]{border-left:4px solid #176b80}.rule-card[data-strength=Soft]{border-left:4px solid #d79b2b}.rule-card small{background:#f2f6f8;border-radius:999px;padding:5px 9px;white-space:nowrap}.result-layout{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) 320px}.result-layout-wide,.result-layout-wide .decision-panel{grid-template-columns:minmax(0,1fr)}.result-main{overflow:hidden}.decision-panel{align-self:start;display:grid;gap:12px;padding:16px}.solution-summary{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(140px,1fr));padding:14px}.solution-summary>div{background:#f7f9fb;border:1px solid #e3e9ee;border-radius:8px;padding:12px}.requirement-audit{border-top:1px solid #eef3f6;padding:0 14px 14px}.audit-header{align-items:center;background:#f7f9fb;border:1px solid #e1e8ee;border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px;padding:12px}.audit-header>div:first-child{display:grid;gap:3px}.audit-header span,.audit-card span{color:#607687;font-size:12px;font-weight:800;text-transform:uppercase}.audit-header strong{font-size:18px}.audit-counts{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.audit-counts span{border-radius:999px;padding:6px 9px}.audit-counts span[data-status=ok]{background:#eaf7ef;color:#1e7a46}.audit-counts span[data-status=warning]{background:#fff5dc;color:#9a6615}.audit-counts span[data-status=fail]{background:#fff0ed;color:#a63d2b}.audit-counts span[data-status=unknown]{background:#eef3f7;color:#526879}.audit-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.audit-card{background:#fff;border:1px solid #e1e8ee;border-left:5px solid #8ba0af;border-radius:8px;display:grid;gap:8px;padding:10px}.audit-card[data-status=ok]{border-left-color:#2d9b60}.audit-card[data-status=warning]{border-left-color:#d79b2b}.audit-card[data-status=fail]{border-left-color:#c05b43}.audit-card[data-status=unknown]{border-left-color:#8ba0af}.audit-card>div{display:grid;gap:2px}.audit-card strong{font-size:15px}.audit-card p{color:#526879;font-size:13px;line-height:1.35;margin:0}.audit-card ul{color:#526879;display:grid;font-size:12px;gap:3px;line-height:1.25;list-style:none;margin:0;padding:0}.audit-card li{border-top:1px dashed #dce5eb;padding-top:4px}.friendly-empty{align-items:center;color:#526879;display:flex;flex-direction:column;min-height:360px;justify-content:center;padding:28px;text-align:center}.friendly-empty h3{color:#17202a;font-size:20px;margin:12px 0 6px}.friendly-empty p{line-height:1.5;margin:0;max-width:520px}.schedule-scroll{overflow:auto;padding:0 14px 14px}.schedule-grid{display:grid;grid-template-columns:86px repeat(10,minmax(104px,1fr));min-width:1120px}.grid-head,.period-cell,.lesson-cell{border-bottom:1px solid #e1e8ee;border-right:1px solid #e1e8ee;min-height:82px;padding:8px}.grid-head{align-items:center;background:#223845;color:#fff;display:flex;font-size:13px;font-weight:800;justify-content:center;min-height:42px}.grid-head.empty-cell{background:#2d4654}.period-cell{align-items:center;background:#f1f5f8;color:#405463;display:flex;flex-direction:column;font-weight:800;gap:4px;justify-content:center}.period-cell span,.master-period span{color:#607687;font-size:11px;font-weight:700;white-space:nowrap}.master-period span{display:block;font-size:10px;line-height:1.2;white-space:normal}.lesson-cell{background:#fff;display:grid;gap:6px}.lesson-token{background:#eaf4f4;border-left:4px solid #1c7b78;border-radius:8px;min-height:58px;padding:8px}.lesson-token strong{display:block;font-size:13px;line-height:1.2}.lesson-token span{color:#526675;display:block;font-size:12px;margin-top:4px}.lesson-token small{color:#607687;display:block;font-size:11px;margin-top:3px}.lesson-token[data-category=Adapted],.group-chip[data-category=Adapted]{background:#fff4c2;border-color:#d59a27}.lesson-token[data-category=Preschool],.group-chip[data-category=Preschool]{background:#eff6ff;border-color:#456fb0}.group-chip[data-collision=true]{background:#ffe1e1;border-color:#c64242;color:#7a1f1f}.free-slot{color:#9aa9b4;display:block;font-size:12px;line-height:1.25}.master-schedule{display:grid;gap:12px;padding:0 14px 14px}.app-shell-wide .master-schedule{gap:8px;padding-left:10px;padding-right:10px}.master-note{align-items:flex-start;background:#f7f9fb;border:1px solid #e3e9ee;border-radius:8px;display:flex;gap:10px;padding:12px}.app-shell-wide .master-note{padding:8px 10px}.master-note strong{color:#17202a;min-width:110px}.master-note span{color:#526879;line-height:1.4}.master-note>div{display:grid;gap:8px;min-width:0}.format-legend{align-items:center;display:flex;flex-wrap:wrap;gap:8px 14px}.format-legend span{align-items:center;color:#526879;display:inline-flex;gap:5px;line-height:1}.format-legend b{align-items:center;border-radius:4px;display:inline-flex;font-size:10px;font-weight:900;height:18px;justify-content:center;min-width:18px;padding:0 4px}.legend-week-badge{background:#dcecff;color:#1d4e89}.legend-half-badge{background:#1d4e89;color:#fff}.legend-weekly-chip{background:#eaf4f4;border-left:4px solid #1c7b78;color:#17202a}.master-scroll{padding:0}.app-shell-wide .schedule-scroll{padding-left:4px;padding-right:4px}.specialist-table{border:3px solid #0f1720;border-collapse:collapse;table-layout:fixed}.specialist-table th,.specialist-table td{border:1px solid #aebbc6;padding:2px;vertical-align:middle}.specialist-table thead th{background:#fff;color:#17202a;text-align:center}.specialist-table .master-corner{background:#fff;border-bottom:3px solid #0f1720;min-width:82px}.app-shell-wide .specialist-table .master-corner{min-width:66px;width:66px}.day-head{border-bottom:1px solid #aebbc6;border-left:3px solid #0f1720!important;border-right:3px solid #0f1720!important;font-size:18px;line-height:1;min-height:28px;padding:4px 0}.instructor-head{border-bottom:3px solid #0f1720!important;height:72px;min-width:42px;overflow:hidden;padding:2px;width:42px}.app-shell-wide .instructor-head{min-width:42px;width:42px}.instructor-head.day-boundary-start{border-left:3px solid #0f1720!important}.instructor-head.day-boundary-end{border-right:3px solid #0f1720!important}.specialist-table tbody tr>*{border-top:3px solid #0f1720}.specialist-table tbody td.day-boundary-start{border-left:3px solid #0f1720!important}.specialist-table tbody td.day-boundary-end{border-right:3px solid #0f1720!important}.vertical-header{align-items:center;display:inline-flex;height:66px;justify-content:center;line-height:1.1;margin:0 auto;transform:rotate(180deg);white-space:nowrap;writing-mode:vertical-rl}.vertical-header strong{color:#17202a;font-size:10px;font-weight:800}.app-shell-wide .vertical-header strong{font-size:9px}.master-period{background:#fff;border-right:3px solid #0f1720!important;color:#17202a;min-width:82px;text-align:center}.app-shell-wide .master-period{min-width:66px;width:66px}.master-period strong{display:block;font-size:15px}.specialist-cell{background:#fff;height:64px;overflow:hidden}.specialist-cell.empty{background:#fff}.week-line{align-items:center;display:flex;gap:1px;justify-content:flex-start;min-height:20px}.week-line+.week-line{border-top:1px dashed #d9e2e8;margin-top:3px;padding-top:3px}.week-line-ab{align-items:stretch;background:#f8fbfd;border:1px solid #c8d6e2;border-radius:4px;gap:2px;margin:1px 0;padding:1px}.week-line-ab+.week-line-ab{border-top:2px solid #41596b;margin-top:3px;padding-top:1px}.week-line-ab[data-week-label=A]{background:#f3f8ff;border-color:#b7cce4}.week-line-ab[data-week-label=B]{background:#f7f5ff;border-color:#c8c1e8}.week-line-weekly+.week-line-weekly{border-top-style:dotted}.week-line-half{align-items:flex-start}.week-line-collision{background:#fff0f0;outline:2px solid #c64242;outline-offset:1px}.week-badge{align-items:center;background:#f3f7fa;border:1px solid #c7d3dc;border-radius:3px;color:#405463;display:inline-flex;font-size:9px;font-weight:800;height:14px;justify-content:center;width:14px}.week-line-ab .week-badge{align-self:stretch;border:0;border-radius:3px;height:auto;min-height:20px}.week-line-ab[data-week-label=A] .week-badge{background:#dcecff;color:#1d4e89}.week-line-ab[data-week-label=B] .week-badge{background:#e9e4ff;color:#4f3b8f}.week-spacer{display:inline-flex;flex:0 0 14px;width:14px}.week-content{align-items:center;display:flex;flex-wrap:wrap;gap:1px;min-width:0}.week-content-half{align-items:flex-start;flex-direction:column;flex-wrap:nowrap;gap:0}.group-chip,.blocked-slot,.mini-chip{border-left:4px solid #1c7b78;border-radius:4px;display:inline-flex;min-height:20px;padding:2px 3px}.group-chip{align-items:center;background:#eaf4f4;gap:2px;position:relative}.app-shell-wide .group-chip,.app-shell-wide .blocked-slot{padding:1px 2px}.group-chip[data-half=true]{background:#f4f8ff;border:1px solid #8ea7bb;border-left:5px solid #456fb0;border-radius:3px;box-shadow:inset 0 -1px #b8c9d8;display:inline-grid;gap:1px;justify-content:center;justify-items:center;min-height:28px;min-width:42px;padding:2px 3px}.group-chip[data-half=true]+.group-chip[data-half=true]{margin-top:1px}.group-chip strong,.group-chip small{display:block}.group-chip strong{font-size:11px;line-height:1;white-space:nowrap}.app-shell-wide .group-chip strong{font-size:10px}.group-chip small{align-items:center;background:#0f172014;border-radius:3px;color:#526675;display:inline-flex;font-size:8px;font-weight:900;justify-content:center;line-height:1;margin-top:0;min-width:8px;padding:1px 2px;text-transform:uppercase}.group-chip[data-half=true] .duration-tag{background:#1d4e89;border-radius:3px;color:#fff;font-size:8px;letter-spacing:0;min-width:24px;padding:1px 3px}.blocked-slot{background:#fff1ed;border-color:#c46b4e;color:#9b3f27;font-size:11px;font-weight:800}.details-stack{display:grid;gap:10px}.result-layout-wide .details-stack{grid-template-columns:repeat(4,minmax(170px,1fr))}.result-layout-wide .details-stack>p,.result-layout-wide .issues,.result-layout-wide .message{grid-column:1 / -1}.detail-card{background:#f8fafb;border:1px solid #e1e8ee;border-radius:8px;display:grid;gap:8px;padding:11px}.detail-card strong,.detail-card span{display:block}.detail-card strong{color:#17202a}.detail-card span,.detail-card li{color:#526879;font-size:13px;line-height:1.35}.detail-card ul{display:grid;gap:5px;list-style:none;margin:0;padding:0}.muted-card{background:#f4f6f8;border-style:dashed}.mini-chip-list{display:flex;flex-wrap:wrap;gap:6px}.mini-chip{background:#eaf4f4;color:#17202a;font-size:12px;font-weight:800}.mini-chip.adapted{background:#fff4c2;border-color:#d59a27}.message{align-items:center;border-radius:8px;display:flex;gap:10px;padding:12px}.message.error{background:#fff1ed;color:#9b3f27}.message.success{background:#edf8f2;color:#1f6f50}.solve-mode-notice{background:#eef6fb;border:1px solid #b9d4e4;border-left:4px solid #176b80;border-radius:8px;color:#293746;display:grid;gap:8px;margin-bottom:10px;padding:12px 14px}.solve-mode-notice>div{align-items:center;color:#176b80;display:flex;gap:8px}.solve-mode-notice ul{display:grid;gap:4px;margin:0;padding-left:22px}.solve-mode-notice li{color:#536675;font-size:13px;line-height:1.35}.solve-mode-notice p{color:#536675;font-size:13px;margin:0}.error-stack{display:grid;gap:8px}.blocking-diagnostics{background:#fff8e8;border:1px solid #efd49a;border-left:4px solid #d59a27;border-radius:8px;color:#293746;display:grid;gap:6px;padding:12px 14px}.blocking-diagnostics strong{color:#8c5b11;font-size:14px}.blocking-diagnostics ul{margin:0;padding-left:18px}.blocking-diagnostics li,.blocking-diagnostics span{color:#536675;font-size:13px;line-height:1.35}.diagnostic-actions{align-items:center;border-top:1px solid #efd49a;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;padding-top:10px}.diagnostic-actions>span{color:#8c5b11;font-weight:800}.diagnostic-actions button{background:#fff;border-color:#e7b36a;color:#8c5b11;font-size:13px;font-weight:800;min-height:34px}.blocking-suggestions{border-top:1px solid #efd49a;display:grid;gap:9px;margin-top:4px;padding-top:10px}.blocking-suggestions>strong{color:#8c5b11;font-size:14px}.suggestion-list{display:grid;gap:8px}.suggestion-card{align-items:center;background:#fff;border:1px solid #efd49a;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:10px}.suggestion-card span{color:#293746;display:block;font-size:13px;font-weight:800}.suggestion-card p{color:#536675;font-size:13px;line-height:1.35;margin:3px 0 0}.suggestion-card button{background:#176b80;border-color:#176b80;color:#fff;font-size:13px;font-weight:800;min-height:34px;white-space:nowrap}.issues{display:grid;gap:8px}.issue{background:#fff8e8;border-left:4px solid #d59a27;border-radius:8px;padding:10px}.issue.diagnostic{background:#eef4ff;border-left-color:#456fb0}.issue strong,.issue span{display:block}.issue span{color:#536675;font-size:13px;margin-top:4px}.issue .issue-examples{color:#6d7f8d;font-size:12px}.advanced-section{overflow:hidden}.advanced-toggle{background:transparent;border:0;border-radius:0;justify-content:flex-start;min-height:52px;width:100%}.advanced-toggle .open{transform:rotate(180deg)}.advanced-content{border-top:1px solid #e3e9ee;display:grid;gap:12px;padding:14px}.advanced-fields{display:grid;gap:10px;grid-template-columns:minmax(240px,1fr) minmax(220px,.45fr)}.api-field{align-items:center;background:#fff;border:1px solid #cbd7df;border-radius:8px;display:flex;gap:10px;min-height:40px;padding:0 10px}.api-field span{color:#566979;font-size:13px;font-weight:800}.api-field input{border:0;min-width:0;outline:0;width:100%}.numeric-field input{max-width:110px}.numeric-field small{color:#607687;font-size:13px;font-weight:800;white-space:nowrap}.technical-note{color:#607687;font-size:13px;line-height:1.45;margin:0}.json-tools{display:flex;justify-content:flex-end}textarea{border:1px solid #cbd7df;border-radius:8px;color:#14212d;display:block;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.5;min-height:420px;outline:0;padding:14px;resize:vertical;width:100%}@media(max-width:1180px){.hero-band,.result-layout,.priority-board,.setup-grid,.summary-strip{grid-template-columns:1fr}.result-layout-wide .details-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions{justify-content:flex-start}}@media(max-width:680px){.app-shell{padding:12px}.product-header{align-items:flex-start;flex-direction:column}.product-header h1{font-size:25px}.hero-actions,.hero-actions button,.view-switch,.view-switch button{width:100%}.view-switch{display:grid}.card-list.compact,.form-grid.two,.form-grid.three,.form-grid.four,.form-grid.five,.advanced-fields,.instructor-add-grid,.group-row,.room-row,.suggestion-card,.specialist-fields,.specialist-availability,.solution-summary{grid-template-columns:1fr}.rule-card,.subject-row{display:block}.result-title{align-items:flex-start;flex-direction:column}.title-actions,.result-title select{max-width:none;width:100%}.title-actions button{width:100%}.master-note{display:grid}.result-layout-wide .details-stack{grid-template-columns:1fr}}@media print{@page{margin:8mm;size:landscape}:root,body{background:#fff}.app-shell{padding:0}.workspace{max-width:none}.hero-band,.summary-strip,.view-switch,.advanced-section,.decision-panel,.status-pill,.title-actions,.master-note,.format-legend{display:none}.product-header{margin-bottom:4px}.product-header h1{font-size:16px;margin:0}.product-header p,.eyebrow{display:none}.result-layout,.result-layout-wide{display:block}.result-main{border:0}.panel-title,.result-title{border:0;min-height:0;padding:0 0 4px}.panel-title h2,.result-title h2{font-size:13px}.solution-summary{display:none}.schedule-scroll{overflow:visible;padding:0}.master-schedule{display:block;padding:0}.specialist-table{break-inside:avoid;font-size:8px;min-width:0!important;page-break-inside:avoid;width:100%}.specialist-table th,.specialist-table td{padding:1px 2px}.day-head{font-size:12px;padding:2px 0}.instructor-head{height:64px;min-width:0;width:auto}.vertical-header{height:58px}.vertical-header span,.vertical-header strong{font-size:6.8px}.master-period{min-width:0;width:68px}.master-period strong{font-size:10px}.master-period span{font-size:8px}.specialist-table tbody tr{height:62px;page-break-inside:avoid}.specialist-cell{height:62px;max-height:62px}.week-line{min-height:13px}.week-line+.week-line{margin-top:1px;padding-top:1px}.week-badge{border-radius:2px;font-size:6px;height:10px;width:10px}.week-spacer{flex-basis:10px;width:10px}.week-content{gap:1px}.week-content-half{gap:0}.group-chip,.blocked-slot{border-left-width:2px;border-radius:2px;min-height:12px;padding:1px 2px}.group-chip strong{font-size:9px}.group-chip small{display:inline-flex;font-size:6px;min-width:6px;padding:0 1px}.group-chip[data-half=true]{border-left-width:3px;min-height:20px;min-width:32px;padding:1px 2px}.group-chip[data-half=true] .duration-tag{font-size:5px;min-width:16px;padding:0 1px}}
