.service-tabs {display:flex;flex-wrap:wrap;gap:var(--s2);margin-block:var(--s6)}
.service-tabs a,.service-tabs button {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--s2) var(--s4);background:var(--white);border:1px solid var(--line);border-radius:var(--r1);font-size:var(--text-sm)}
.service-tabs [aria-current],.service-tabs [aria-pressed="true"] {background:var(--accent);color:var(--white);border-color:transparent}
.service-intro {display:flex;align-items:center;gap:var(--s4);margin-bottom:var(--s6);padding:var(--s5);background:var(--brand-blue-soft);border-radius:var(--r2)}
.service-intro>svg {flex-shrink:0;width:24px;height:24px;color:var(--brand-blue-icon)}
.service-intro p {margin:0;line-height:1.8;font-size:var(--text-sm);color:var(--brand-blue-ink)}
.service-toolbar {display:flex;flex-wrap:wrap;gap:var(--s3);align-items:end;margin-block:var(--s5)}
.service-toolbar .flow-field {flex:1;min-width:0}
.service-toolbar button {flex-shrink:0}
.service-item {padding-block:var(--s6);border-bottom:1px solid var(--line);min-width:0}
.service-item:last-child {border-bottom:0}
.service-item header {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s3)}
.service-item h3 {font-size:var(--text-lg);line-height:1.6;overflow-wrap:anywhere}
.service-item p,.service-copy {line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}
.service-item small,.service-meta {font-size:var(--text-xs);color:var(--muted);line-height:1.8}
.service-item.unread {background:var(--brand-blue-soft);border-radius:var(--r1);padding:var(--s5);margin-block:var(--s3)}
.service-response {padding:var(--s5);background:var(--surface);border-radius:var(--r1);margin-top:var(--s4)}
.service-response strong {display:block;margin-bottom:var(--s2)}
.service-form {display:grid;gap:var(--s5)}
.service-form fieldset {min-width:0;border:0;padding:0;margin:0}
.service-form legend {font-size:var(--text-sm);font-weight:600;margin-bottom:var(--s3)}
.service-form textarea {min-height:140px;resize:vertical}
.service-form input[type=file] {width:100%;min-height:44px;font-size:var(--text-sm);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r1)}
.service-form input[type=checkbox],.service-form input[type=radio] {accent-color:var(--accent)}
.service-attachment {display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;max-width:100%;font-size:var(--text-sm);overflow-wrap:anywhere;margin-right:var(--s4);text-decoration:underline;text-underline-offset:4px}
.service-file-state {font-size:var(--text-xs);line-height:1.8;color:var(--brand-blue-ink)}
.service-times {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2)}
.service-times label {display:flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;background:var(--surface);border-radius:var(--r1);font-size:var(--text-sm)}
.service-times label:has(:checked) {background:var(--accent-soft);color:var(--accent-hover)}
.service-danger {margin-top:var(--s8)}
.service-danger summary {min-height:44px;display:flex;align-items:center;font-weight:600;cursor:pointer}
.service-danger .service-form {margin-top:var(--s5)}
.service-checks {display:grid;gap:var(--s3);margin-block:var(--s5)}
.service-checks label {display:flex;align-items:center;gap:var(--s3);min-height:44px;line-height:1.6}
.service-teacher {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:var(--s12);align-items:center;margin-block:var(--s8)}
.service-teacher .portrait-frame {width:100%;max-width:400px;aspect-ratio:300/260;height:auto;border-radius:var(--r2)}
.service-teacher h1 {font-size:40px;line-height:1.4;margin-bottom:var(--s4);letter-spacing:-.03em}
.service-teacher .flow-facts {margin-block:var(--s6)}
.service-teacher .specialty-tags {margin-block:var(--s4)}
.service-progress {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4);margin-block:var(--s6);counter-reset:steps}
.service-progress div {padding-top:var(--s4);border-top:1px solid var(--line);font-size:var(--text-sm);line-height:1.7}
.service-progress strong {display:block;margin-top:var(--s2)}
.service-receipt {max-width:720px;margin-inline:auto}
.service-receipt .flow-total {margin-block:var(--s6)}
.service-feedback {margin-top:var(--s5);min-height:24px;line-height:1.7;font-size:var(--text-sm);color:var(--brand-blue-ink)}
.service-feedback[data-error=true] {color:var(--ink);font-weight:700}
.service-empty {padding-block:var(--s8);text-align:center;color:var(--muted);line-height:1.8}
.service-quick-links {display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-block:var(--s5)}
.service-quick-links a {min-height:44px;display:inline-flex;align-items:center;font-size:var(--text-sm);color:var(--brand-blue-ink)}
#room-join[aria-disabled=true] {opacity:.5}
.service-page button:focus-visible,.service-page a:focus-visible,.service-page input:focus-visible,.service-page textarea:focus-visible,.service-page select:focus-visible {outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:1000px){.service-teacher{grid-template-columns:1fr;gap:var(--s6)}.service-teacher h1{font-size:28px}.service-times{grid-template-columns:repeat(3,minmax(0,1fr))}.service-toolbar{flex-direction:column;align-items:stretch}.service-progress{gap:var(--s3)}}
@media(max-width:480px){.service-times{grid-template-columns:repeat(2,minmax(0,1fr))}.service-progress{grid-template-columns:1fr}.service-intro{align-items:flex-start}.service-item header{align-items:flex-start;flex-direction:column}}
@media print{.header,.site-footer,.account-sidebar,.service-tabs,.service-intro,.flow-actions,.service-feedback,.skip{display:none!important}.account-layout,.account-content{display:block!important;width:100%!important}.service-receipt{max-width:none}.account-main{padding:0}.flow-panel{border:0;box-shadow:none}}
