/* EISA operational workspace. Uses the original site's palette and controls. */
.w-root{display:flex;flex-direction:column;gap:22px;min-width:0}
.w-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:4px 0 6px}
.w-heading h1{font-size:32px;margin:8px 0;line-height:1.2}
.w-heading p{color:var(--muted);max-width:800px;font-size:14px}
.w-heading>.btn{flex-shrink:0}
.w-box{padding:26px;min-width:0}
.w-box>h2{font-size:21px;letter-spacing:-.025em;margin-bottom:20px}
.w-box>p{margin:12px 0}
.w-box>.notice{margin-bottom:18px}
.w-box>.w-form{margin-top:16px}
.w-box>.btn{margin-top:16px}
.w-box .w-box{box-shadow:none}
.w-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.w-stat{padding:22px;display:flex;flex-direction:column;gap:8px;min-width:0}
.w-stat strong{font-size:28px;line-height:1.2;letter-spacing:-.045em}
.w-stat span{font-size:12px;color:var(--muted)}
.w-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.w-two .w-fields{grid-template-columns:1fr}
.w-form{display:flex;flex-direction:column;gap:18px;min-width:0}
.w-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
.w-fields>input[type=hidden]{display:none}
.w-fields>.w-check,.w-fields>.w-multi{grid-column:1/-1}
.w-fields:has(>.field:only-child){grid-template-columns:1fr}
.w-form .field{display:block}
.w-form .field textarea{min-height:90px}
.w-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:4px}
.w-form-feedback{font-size:12px;max-width:440px}
.w-check{display:flex;align-items:flex-start;gap:9px;font-size:13px;line-height:1.5;cursor:pointer}
.w-check input{margin:3px 0 0;accent-color:var(--blue);width:16px;height:16px;flex-shrink:0}
.w-multi{padding:14px 16px;border:1px solid var(--line);border-radius:10px;display:flex;gap:12px 22px;flex-wrap:wrap;min-width:0}
.w-multi legend{font-size:13px;color:var(--ink-soft);padding-inline:6px;font-weight:600}
.w-filter{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:18px 20px;background:#edf2fa;border:1px solid #e0e7f2;border-radius:14px}
.w-filter .field{flex:1;min-width:140px}
.w-filter .field:first-child{flex:1.8;min-width:200px}
.w-filter .field-label{font-size:12px;margin-bottom:6px}
.w-filter .input{min-height:42px;padding:9px 12px}
.w-filter .btn{min-height:42px}
.w-table{overflow:auto;border-radius:14px;min-width:0;width:100%}
.w-table table{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
.w-table th{white-space:nowrap;font-size:11px;letter-spacing:.02em;font-weight:600;background:#f9fbfe;color:var(--muted);padding:14px 18px;text-align:left}
.w-table td{padding:16px 18px;border-top:1px solid var(--line);vertical-align:top}
.w-table .table-id{display:block;font-size:11px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}
.w-table .w-fields{grid-template-columns:repeat(2,minmax(145px,1fr))}
.w-table .w-details-body{min-width:min(540px,68vw)}
.w-table td>.w-details{margin-top:10px}
.w-table .w-form+.w-form{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}
.w-table [data-w-form="group.grade"]{width:min(360px,calc(100vw - 88px));white-space:normal;overflow-wrap:anywhere}
.w-table [data-w-form="group.grade"] .w-fields{grid-template-columns:minmax(0,1fr)}
.w-strong{font-weight:650;display:block}
.w-row-alert{background:#fff7f5}
.w-row-muted{background:#f8f9fb;color:#8490a0}
.w-row-muted a{color:#6c7c95}
.w-badge{display:inline-flex;border-radius:5px;background:#edf1f7;padding:4px 8px;font-size:11px;font-weight:650;line-height:1.4;white-space:nowrap;color:#52647b}
.w-status-active,.w-status-approved,.w-status-paid,.w-status-done{color:#087f61;background:#e6f6ef}
.w-status-training,.w-status-teacher,.w-status-instructor,.w-status-open,.w-status-planned{color:#2463d1;background:#edf3ff}
.w-status-pending,.w-status-reserved,.w-status-exams,.w-status-recruiting{color:#916004;background:#fff4d5}
.w-status-inactive,.w-status-failed,.w-status-rejected,.w-status-refund-required,.w-status-no-show{color:#b13d43;background:#fff0ef}
.w-status-completed,.w-status-closed,.w-status-archived,.w-status-cancelled,.w-status-refunded{color:#67758b;background:#edf0f5}
.w-empty{padding:26px;text-align:center;color:var(--muted);font-size:13px}
.w-details{border:1px solid var(--line);border-radius:10px;background:#fff;min-width:0;overflow:hidden}
.w-details>summary{padding:12px 15px;cursor:pointer;color:var(--blue);font-size:12px;font-weight:600;list-style-position:inside}
.w-details>summary:hover{background:var(--blue-pale)}
.w-details[open]>summary{border-bottom:1px solid var(--line);background:#f9fbff}
.w-details-body{padding:18px}
.w-details-body>.w-form+.w-form{margin-top:20px;border-top:1px solid var(--line);padding-top:20px}
.w-details-body>.w-details{margin-top:18px}
.w-details-body .w-facts{margin-bottom:18px}
.w-error{color:var(--danger)!important;display:block;font-size:12px;margin-top:5px}
.w-success{color:var(--success);font-size:13px;font-weight:600;margin-top:12px}
.w-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.w-facts dt{color:var(--muted);font-size:12px;margin-bottom:5px}
.w-facts dd{font-size:14px;overflow-wrap:anywhere;font-weight:550}
.w-medical{padding:18px;margin:18px 0;background:#f5f8fc;border-radius:12px;border:1px solid var(--line)}
.w-medical h3{font-size:15px;margin-bottom:8px}
.w-medical>p{font-size:12px;margin-bottom:16px}
.w-timeline{margin:0;padding-left:18px}
.w-timeline li{padding:6px 0;color:var(--ink-soft);font-size:12px}
.w-timeline li>*{display:block;overflow-wrap:anywhere}
.w-timeline li small{color:var(--muted)}
.w-history-row{padding:18px 0;border-bottom:1px solid var(--line)}
.w-history-row:last-child{border-bottom:0}
.w-history-row>small{display:block;color:var(--muted);margin-top:6px}
.w-history-row h3{font-size:17px;margin-bottom:10px}
.w-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);overflow:auto;scrollbar-width:thin;margin-bottom:0}
.w-tabs a{display:block;white-space:nowrap;color:var(--muted);font-size:12px;font-weight:600;padding:13px 16px;border-bottom:2px solid transparent}
.w-tabs a.active{color:var(--blue);border-color:var(--blue);background:linear-gradient(transparent,#edf3ff)}
.w-tabs a:hover{color:var(--blue)}
.w-doc-list{display:flex;flex-direction:column;gap:10px}
.w-doc-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;background:#f8faff;border:1px solid var(--line);border-radius:10px}
.w-doc-list strong{font-size:13px;display:block}
.w-doc-list small{display:block;color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.w-grade-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.w-grade-list>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:7px 12px;border-radius:6px;background:#f5f7fb;font-size:12px}
.w-grade-list strong{font-size:16px}
.w-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.w-day{display:flex;flex-direction:column;align-items:center;padding:14px 8px;gap:5px;background:white;color:var(--ink);cursor:pointer;font:inherit}
.w-day strong{font-size:25px;line-height:1.2;letter-spacing:-.04em}
.w-day small,.w-day span{font-size:11px;color:var(--muted)}
.w-day.active{background:var(--blue);border-color:var(--blue);color:white}
.w-day.active small,.w-day.active span{color:#dce7ff}
.w-day:hover:not(.active){background:var(--blue-pale)}
.w-hours{overflow:auto;min-width:0}
.w-hours-head,.w-hours-row{display:grid;grid-template-columns:70px repeat(4,minmax(90px,1fr));gap:12px;align-items:center;min-width:540px;padding:8px 0}
.w-hours-head{color:var(--muted);font-size:11px}
.w-hours-row .input{min-height:38px;padding:8px;font-size:12px}
.w-hours-row .w-check{align-items:center}
.w-hours-row .w-check input{margin:0}
.w-box>.w-details+.w-details{margin-top:12px}
.w-price{font-size:32px;display:block;margin:20px 0;letter-spacing:-.045em}
.w-school-mark{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:var(--blue);border-radius:14px;color:white;font-weight:750;font-size:28px;margin-bottom:22px}
.w-ticket-list{display:flex;flex-direction:column;gap:20px}
.w-ticket-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.w-ticket-meta>small{color:var(--muted)}
.w-chat{display:flex;flex-direction:column;gap:12px;padding:20px 0;margin-bottom:4px}
.w-message{align-self:flex-start;max-width:88%;padding:15px 18px;border-radius:14px 14px 14px 3px;background:#f0f4fa;overflow-wrap:anywhere}
.w-message-own{align-self:flex-end;background:var(--blue-pale);border-radius:14px 14px 3px 14px}
.w-message>strong{font-size:12px}
.w-message>p{font-size:14px;white-space:pre-wrap;margin:6px 0}
.w-message>small{font-size:10px;color:var(--muted)}
.w-payment-dialog{width:min(480px,calc(100vw - 32px));padding:0;border:0;border-radius:20px;box-shadow:0 22px 100px #16325944;color:var(--ink)}
.w-payment-dialog::backdrop{background:#14264066;backdrop-filter:blur(3px)}
.w-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px;border-bottom:1px solid var(--line)}
.w-dialog-head h2{font-size:20px}
.w-payment-body{padding:26px;text-align:center}
.w-payment-body .w-actions{justify-content:center;margin-top:20px}
.w-payment-body .notice{font-size:12px;text-align:left;margin-top:16px}
.w-demo-qr{width:140px;height:140px;margin:0 auto;display:flex;align-items:center;justify-content:center;border:10px solid white;outline:1px solid var(--line);border-radius:8px;background:repeating-conic-gradient(#214b9e 0% 25%,#edf3ff 0% 50%) 50%/22px 22px}
.w-demo-qr span{font-size:17px;font-weight:750;letter-spacing:.1em;background:white;color:var(--blue);padding:8px;border:4px solid white;border-radius:5px}
.public-role-links{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:18px}
.sidebar nav{max-height:none}
.workspace-body{min-width:0}
@media(min-width:1280px){.w-heading h1{font-size:36px}}
@media(max-width:1000px){.w-two{grid-template-columns:1fr}.w-two .w-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.w-heading{align-items:flex-start}.w-heading>.btn{max-width:200px}.w-box{padding:20px}.w-filter{gap:12px}}
@media(max-width:640px){
 .w-root{gap:18px}.w-heading{flex-direction:column;gap:14px}.w-heading h1{font-size:27px}.w-heading>.btn{max-width:none}.w-heading .section-kicker{font-size:9px}.w-heading p{font-size:13px}.w-fields,.w-two .w-fields{grid-template-columns:1fr}.w-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.w-stat{padding:16px}.w-stat strong{font-size:24px}.w-stat span{font-size:11px}.w-filter{padding:14px}.w-filter .field,.w-filter .field:first-child{min-width:calc(50% - 10px)}.w-filter .field:first-child{flex-basis:100%}.w-filter .btn{width:100%}.w-box{padding:18px}.w-box>h2{font-size:19px}.w-facts{grid-template-columns:1fr;gap:13px}.w-week{gap:5px}.w-day{padding:12px 2px;border-radius:10px}.w-day strong{font-size:20px}.w-day span{font-size:9px}.w-day small{font-size:10px}.w-tabs a{padding:12px;font-size:11px}.w-message{max-width:95%}.w-doc-list>div{flex-direction:column;align-items:flex-start}.w-details-body{padding:14px}.w-table .w-fields{grid-template-columns:1fr}.w-table .w-details-body{min-width:250px}.w-hours-head,.w-hours-row{gap:8px}.w-payment-body{padding:20px}.w-dialog-head h2{font-size:17px}.w-medical{padding:14px}
}

.w-registry-tabs{padding-bottom:8px;gap:8px}
.w-registry-dialog{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:0;border-radius:20px;box-shadow:0 22px 100px #16325944;color:var(--ink)}
.w-registry-dialog::backdrop{background:#14264066;backdrop-filter:blur(3px)}
.w-registry-body{padding:22px}
.w-registry-body>.w-form{margin-top:16px}
.w-registry-body>.w-form:first-child{margin-top:0}
.w-registry-body .w-actions{flex-wrap:wrap}
[data-registry-list="vehicles"] .w-table th,[data-registry-list="vehicles"] .w-table td{padding:14px 12px}
[data-registry-list="vehicles"] [data-vehicle-model]{display:block;max-width:180px;overflow-wrap:anywhere}
[data-registry-list="vehicles"] td:first-child .table-id{width:130px;max-width:130px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
[data-vehicle-added-at]{white-space:nowrap}
[data-registry-list="vehicles"] .w-table td>.w-details{width:min(540px,calc(100vw - 76px));white-space:normal;overflow-wrap:anywhere}
[data-registry-list="vehicles"] .w-table .w-details-body{min-width:0}
[data-registry-list="vehicles"] .w-form :is(input,select,textarea){min-width:0;max-width:100%}
[data-vehicle-status-reason]{min-width:0}
@media(max-width:640px){.w-registry-body{padding:16px}.w-registry-dialog .w-dialog-head{padding:16px}}

.w-group-summary{display:grid;grid-template-columns:minmax(160px,1.3fr) repeat(3,minmax(120px,1fr));gap:20px;padding:20px;min-width:0}
.w-group-summary>div{min-width:0}.w-group-summary dt{font-size:12px;color:var(--muted);margin-bottom:8px}.w-group-summary dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.w-root[data-section="groups"] .w-table td:first-child{min-width:110px;max-width:150px;overflow-wrap:anywhere}
@media(max-width:700px){.w-group-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}

.w-ticket-attachments{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.w-ticket-attachments>.field{grid-column:1/-1}.w-media-picker{display:flex;flex-direction:column;gap:8px;min-width:0}.w-media-picker small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.w-ticket-list>[data-ticket-id]{scroll-margin-top:28px}.w-ticket-list>[data-ticket-id]:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
@media(max-width:640px){.w-ticket-attachments{grid-template-columns:minmax(0,1fr)}}

.w-registry-body>[data-shared-refresh]{margin-bottom:16px}

.w-root:is([data-section="staff"],[data-section="teachers"],[data-section="instructors"],[data-section="employees"]) .w-table td:first-child{min-width:110px;max-width:150px;overflow-wrap:anywhere}

.w-root:is([data-section="staff"],[data-section="teachers"],[data-section="instructors"],[data-section="employees"]) .w-table td:first-child .table-id{width:130px;max-width:130px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
.w-root:is([data-section="staff"],[data-section="teachers"],[data-section="instructors"],[data-section="employees"]) .w-table td>.w-details{width:min(540px,calc(100vw - 76px));white-space:normal;overflow-wrap:anywhere}
.w-root:is([data-section="staff"],[data-section="teachers"],[data-section="instructors"],[data-section="employees"]) .w-table .w-details-body{min-width:0}

.w-resource-search,.w-resource-options,.w-resource-selection{grid-column:1/-1}
.w-resource-options{display:flex;flex-direction:column;gap:9px;padding:14px;border:1px solid var(--line);border-radius:12px;max-height:340px;overflow:auto;min-width:0}
.w-resource-options legend{font-size:13px;color:var(--muted);padding:0 6px}
.w-resource-option{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer;min-width:0;white-space:normal;overflow-wrap:anywhere}
.w-resource-option:has(input:checked){border-color:var(--blue);background:#edf3ff}.w-resource-option input{margin-top:3px;flex-shrink:0}.w-resource-selection{font-size:13px;overflow-wrap:anywhere}
.w-tabs a.w-resource-warning{color:#b42318;border-bottom-color:#d92d20;background:#fff1f0}.w-resource-warning-dot{margin-left:7px;font-size:9px}
.w-resource-dialog [data-resource-empty]{grid-column:1/-1;margin:0}.w-resource-dialog [data-shared-refresh]{margin-bottom:16px}

.w-schedule-periods{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}.w-schedule-periods legend{font-weight:600;padding:0 8px}.w-schedule-period{display:grid;grid-template-columns:minmax(120px,1.5fr) 1fr 1fr;gap:12px;align-items:center;margin:10px 0}.w-schedule-period>.field{min-width:0}.w-schedule-period .input{min-width:0;width:100%}
@media(max-width:600px){.w-schedule-period{grid-template-columns:1fr 1fr;gap:8px}.w-schedule-period>span{grid-column:1/-1}.w-schedule-periods{padding:12px}}

[data-managed-student-card]{display:grid;gap:22px;min-width:0}

/* Versioned student document drafts and official-sample data entry. */
.w-student-form-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0 22px}
.w-student-form-tile{display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:14px;padding:18px;min-width:0}
.w-student-form-tile h3{font-size:16px;line-height:1.4}
.w-student-form-tile p{font-size:13px;line-height:1.6;color:var(--muted)}
.w-student-form-course{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px}
.w-student-form-course>span{overflow-wrap:anywhere;flex:1;min-width:100px}
.w-student-form-course>.btn{flex-shrink:0}
.w-student-form-history{margin-block:18px}
.w-student-issued-heading{font-size:16px;margin:22px 0 14px}
.w-student-form-dialog{width:min(960px,calc(100vw - 32px))}
.w-student-form-section{border:1px solid var(--line);border-radius:12px;padding:16px;min-width:0}
.w-student-form-section>legend{padding-inline:6px;font-size:14px;font-weight:600}
.w-student-form-section>.subtle{margin-block:14px;font-size:12px;line-height:1.6}
.w-student-answer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.w-student-answer{display:grid;grid-template-columns:auto 1fr 1fr;gap:7px;align-items:center;background:#edf2fa;border-radius:10px;padding:9px;min-width:0}
.w-student-answer strong{font-size:12px}
.w-student-answer .field-label{font-size:10px;white-space:nowrap}
.w-student-answer .input{padding:7px 5px;min-width:0;min-height:36px}
.w-student-penalties{display:grid;gap:12px}
.w-student-penalties .w-check{padding-block:8px;border-bottom:1px solid var(--line)}
.w-student-form-dialog form:has(select[name="mode"] option[value="theory"]:checked) [data-student-form-mode="practical"],
.w-student-form-dialog form:has(select[name="mode"] option[value="practical"]:checked) [data-student-form-mode="theory"]{display:none}
@media(max-width:900px){.w-student-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.w-student-form-tiles{grid-template-columns:minmax(0,1fr)}.w-student-form-tile{padding:15px}.w-student-form-section{padding:12px}.w-student-answer-grid{gap:7px}.w-student-answer{padding:7px;gap:5px;grid-template-columns:1fr 1fr}.w-student-answer>strong{grid-column:1/-1}.w-student-answer .field-label{font-size:9px}.w-student-answer .input{width:100%}.w-student-form-course .btn{max-width:100%;white-space:normal}}
