:root{--lessly-background:#f7f7ff;--lessly-white:#fff;--primary-050:#f1f0fe;--primary-100:#e7e5ff;--primary-500:#4f46e5;--primary-700:#3730a3;--accent-050:#fbeeec;--accent-100:#f5d8d3;--accent-500:#ce4c3b;--accent-700:#9c3529;--success-050:#e9f6f0;--success-700:#20573f;--amber-050:#f5efe0;--amber-700:#6b551e;--ink-900:#22213a;--ink-500:#5c5b73;--ink-300:#a3a2b4;--ink-200:#d3d2de;--ink-100:#e8e7f0;--ink-050:#f2f1f8;--brand-050:var(--primary-050);--brand-100:var(--primary-100);--brand-500:var(--primary-500);--brand-700:var(--primary-700);--font-display:"Onest", "Segoe UI", system-ui, sans-serif;--font-sans:"Manrope", "Segoe UI", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fs-h3:24px;--fs-h3-mobile:21px;--fs-h4:20px;--fs-stat:26px;--fs-body:16px;--fs-ui:15px;--fs-ui-sm:14px;--fs-caption:13px;--lh-heading:1.2;--lh-snug:1.35;--lh-body:1.5;--ls-heading:-.01em;--ls-caps:.06em;--type-h3:var(--fw-semibold) var(--fs-h3) / var(--lh-snug) var(--font-display);--type-h4:var(--fw-semibold) var(--fs-h4) / var(--lh-snug) var(--font-display);--type-body:var(--fw-regular) var(--fs-body) / var(--lh-body) var(--font-sans);--type-ui:var(--fw-medium) var(--fs-ui) / 1.4 var(--font-sans);--type-ui-sm:var(--fw-medium) var(--fs-ui-sm) / 1.4 var(--font-sans);--type-caption:var(--fw-medium) var(--fs-caption) / 1.4 var(--font-sans);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--pad-control-y:10px;--pad-control-x:16px;--pad-card:20px;--pad-card-lg:24px;--page-gutter:24px;--page-max:1120px;--touch-min:44px;--page-inline:max(var(--page-gutter), calc((100% - var(--page-max)) / 2 + var(--page-gutter)));--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--radius-control:var(--radius-md);--radius-card:var(--radius-lg);--radius-sheet:var(--radius-xl);--shadow-xs:0 1px 2px #22213a0f;--shadow-card:0 2px 8px #22213a0f;--shadow-overlay:0 18px 48px #22213a29;--dur-fast:.14s;--ease-standard:cubic-bezier(.2, .6, .3, 1);--transition-control:background-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);--bg-page:var(--lessly-background);--bg-elevated:var(--lessly-white);--bg-muted:var(--ink-050);--surface-card:var(--lessly-white);--surface-highlight:var(--primary-100);--surface-brand-soft:var(--brand-050);--surface-alert-soft:var(--accent-050);--surface-success-soft:var(--success-050);--surface-amber-soft:var(--amber-050);--text-heading:var(--brand-700);--text-body:var(--ink-900);--text-muted:var(--ink-500);--text-on-brand:var(--lessly-white);--text-link:var(--brand-500);--text-alert:var(--accent-700);--text-success:var(--success-700);--text-amber:var(--amber-700);--border-subtle:var(--ink-100);--border-default:var(--ink-200);--border-strong:var(--ink-300);--border-focus:var(--brand-500);--focus-ring:0 0 0 3px #4f46e547;--action-primary-bg:var(--brand-500);--action-primary-bg-hover:var(--brand-700);--action-quiet-bg:var(--bg-elevated);--action-quiet-bg-hover:var(--bg-muted);--action-danger-fg:var(--text-alert);--action-disabled-bg:var(--ink-100);--action-disabled-fg:var(--ink-300);--border:var(--border-subtle);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text-body);background:var(--bg-page);font:var(--type-ui);font-weight:var(--fw-regular);line-height:var(--lh-body);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s}.page-loading{animation:none}}*{box-sizing:border-box}body{background:var(--bg-page);color:var(--text-body);font:var(--type-body);margin:0}::selection{background:var(--brand-100);color:var(--text-heading)}a{color:var(--text-link);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--brand-700)}.table-wrap,.modal-card,.modal-sheet .modal-body{scrollbar-width:thin;scrollbar-color:var(--ink-200) transparent}.table-wrap::-webkit-scrollbar{width:10px;height:10px}.modal-card::-webkit-scrollbar{width:10px;height:10px}.modal-sheet .modal-body::-webkit-scrollbar{width:10px;height:10px}.table-wrap::-webkit-scrollbar-thumb{background:var(--ink-200);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}.modal-card::-webkit-scrollbar-thumb{background:var(--ink-200);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}.modal-sheet .modal-body::-webkit-scrollbar-thumb{background:var(--ink-200);border-radius:var(--radius-pill);background-clip:content-box;border:3px solid #0000}.table-wrap::-webkit-scrollbar-thumb:hover{background-color:var(--ink-300)}.modal-card::-webkit-scrollbar-thumb:hover{background-color:var(--ink-300)}.modal-sheet .modal-body::-webkit-scrollbar-thumb:hover{background-color:var(--ink-300)}h1,h2,h3{font-family:var(--font-display);color:var(--text-heading);letter-spacing:var(--ls-heading);margin:0 0 var(--space-4);text-wrap:balance}h1{font:var(--type-h3);letter-spacing:var(--ls-heading)}h2{font:var(--type-h4);letter-spacing:var(--ls-heading)}h3{font:var(--fw-semibold) var(--fs-body) / var(--lh-snug) var(--font-display);margin:var(--space-6) 0 var(--space-3)}button{justify-content:center;align-items:center;gap:var(--space-2);font:var(--type-ui);cursor:pointer;border-radius:var(--radius-control);padding:var(--pad-control-y) var(--pad-control-x);min-height:var(--touch-min);white-space:nowrap;background:var(--action-primary-bg);color:var(--text-on-brand);transition:var(--transition-control);border:1px solid #0000;display:inline-flex}.button-multiline{white-space:normal;text-align:left;line-height:var(--lh-body)}button:hover:not(:disabled){background:var(--action-primary-bg-hover)}button:active:not(:disabled){transform:scale(.985)}button:focus-visible{box-shadow:var(--focus-ring);outline:none}.modal-actions button.bezpechna:focus{box-shadow:var(--focus-ring);border-color:var(--border-focus);outline:none}button:disabled{background:var(--action-disabled-bg);color:var(--action-disabled-fg);cursor:not-allowed}input:disabled,select:disabled,textarea:disabled{background:var(--action-disabled-bg);color:var(--action-disabled-fg);border-color:var(--border-muted,var(--border-default));cursor:not-allowed}select.pole-zafiksovane:disabled{color:var(--text-body);opacity:1}button.secondary{background:var(--action-quiet-bg);color:var(--text-body);border-color:var(--border-default)}button.secondary:hover:not(:disabled){background:var(--action-quiet-bg-hover);border-color:var(--border-strong)}button.secondary:disabled{background:var(--action-quiet-bg);color:var(--action-disabled-fg);border-color:var(--border-subtle)}button.secondary[data-poznachka=typova],button.secondary[data-poznachka=typova]:hover:not(:disabled){border-style:dashed;border-color:var(--action-primary-bg)}h3 button{min-height:32px}td button{font:var(--type-ui-sm);padding:var(--space-2) 14px;border-radius:var(--radius-sm);min-height:36px}input,select,textarea{font:var(--type-ui);font-weight:var(--fw-regular);width:100%;padding:var(--pad-control-y) 14px;min-height:var(--touch-min);border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--bg-elevated);color:var(--text-body);caret-color:var(--brand-500);transition:var(--transition-control)}.pole-v-rjad{min-width:0}@media (pointer:coarse){.pole-v-rjad{appearance:none;width:100%;display:block}.pole-v-rjad::-webkit-date-and-time-value{text-align:left;width:100%;min-height:1.4em}}input:hover:not(:focus),select:hover,textarea:hover:not(:focus){border-color:var(--ink-500)}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}input::placeholder,textarea::placeholder{color:var(--text-muted)}input[type=checkbox],input[type=radio]{width:auto;min-height:0;accent-color:var(--brand-500)}input:-webkit-autofill{-webkit-text-fill-color:var(--text-body);-webkit-box-shadow:0 0 0 40px var(--bg-elevated) inset;caret-color:var(--brand-500)}input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-body);-webkit-box-shadow:0 0 0 40px var(--bg-elevated) inset;caret-color:var(--brand-500)}input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-body);-webkit-box-shadow:0 0 0 40px var(--bg-elevated) inset;caret-color:var(--brand-500)}select{appearance:none;padding-right:var(--space-10);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235C5B73' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat}label{font:var(--type-ui-sm);color:var(--text-body);margin-bottom:var(--space-4);display:block}label>input,label>select,label>textarea{margin-top:var(--space-2)}.checkbox-row{align-items:flex-start;gap:var(--space-2);font-weight:var(--fw-regular);line-height:var(--lh-body);display:flex}.checkbox-row input{width:auto;margin-top:2px}.table-wrap.student-picker{max-height:180px;margin-bottom:var(--space-4);overflow:auto}:root{--sticky-actions-space:68px}.form-error{scroll-margin-bottom:var(--sticky-actions-space)}.load-error{margin:var(--space-3) 0}.load-error .form-error{margin-bottom:var(--space-2)}.form-error{color:var(--text-alert);background:var(--surface-alert-soft);border:1px solid var(--accent-100);padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);font:var(--type-ui-sm);line-height:var(--lh-body);margin:var(--space-3) 0}.auth-screen{min-height:100svh;padding:var(--page-gutter);background:var(--bg-page);justify-content:center;align-items:center;display:flex}.auth-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);width:100%;max-width:400px;padding:var(--space-8);background:var(--surface-card);box-shadow:var(--shadow-card)}.auth-card h1{margin-bottom:var(--space-6)}.auth-card button[type=submit]{width:100%;margin-top:var(--space-1)}.auth-hint{font:var(--type-caption);color:var(--text-muted);line-height:var(--lh-body);margin:var(--space-5) 0 0}.auth-hint code{font-family:var(--font-mono);background:var(--bg-muted);border-radius:var(--radius-xs);border:1px solid var(--border-subtle);padding:2px 6px}.app-shell{flex-direction:column;min-height:100svh;display:flex}.app-header{padding:var(--space-3) var(--page-inline);background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.app-header-left{align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.app-header>div:last-child{align-items:center;gap:var(--space-2);display:flex}.app-header strong{font:var(--fw-bold) var(--fs-ui) / 1.3 var(--font-display);letter-spacing:var(--ls-heading);color:var(--text-heading)}.app-nav{gap:var(--space-1);flex-wrap:wrap;display:flex}.app-nav-link{color:var(--text-muted);font:var(--type-ui-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);transition:var(--transition-control);text-decoration:none}.app-nav-link:hover{background:var(--bg-muted);color:var(--text-body)}.app-nav-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-nav-link.active{color:var(--brand-700);background:var(--surface-brand-soft)}.page{padding:var(--space-8) var(--page-gutter) var(--space-12);max-width:var(--page-max);width:100%;margin:0 auto}.page-loading{padding:var(--space-10);text-align:center;color:var(--text-muted);font:var(--type-ui);animation:loading-pulse 1.4s var(--ease-standard) infinite}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.5}}.page-toolbar{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-toolbar h1{margin-bottom:0}.page-toolbar p.muted{font:var(--type-ui);color:var(--text-muted);max-width:none;margin:0}.page form{margin-top:var(--space-2)}.page form h3:first-child{margin-top:0}.tabs{gap:var(--space-1);background:var(--surface-highlight);padding:var(--space-1);border-radius:var(--radius-control);flex-wrap:wrap;display:flex}.tab{color:var(--text-muted);padding:var(--space-2) var(--space-3);min-height:36px;font:var(--type-ui-sm);border-radius:var(--radius-sm);background:0 0;border-color:#0000}.tab:hover:not(.active){color:var(--text-body);background:#ffffff80}.tabs-compact{gap:2px;padding:2px}.tabs-compact .tab{padding:var(--space-1) var(--space-2);min-height:36px;font-size:var(--fs-caption)}.tab.active{background:var(--bg-elevated);color:var(--text-heading);box-shadow:var(--shadow-xs)}.tab.active:hover,.tab.active:focus,.tab.active:active{background:var(--bg-elevated);color:var(--text-heading)}.table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--shadow-card);overflow:auto hidden}table{border-collapse:collapse;width:100%;min-width:720px;font:var(--type-ui-sm);font-weight:var(--fw-regular);font-variant-numeric:tabular-nums}th{text-align:left;font:var(--type-caption);text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--text-muted);padding:var(--space-3) var(--space-3);background:var(--bg-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap}td{padding:var(--space-4) var(--space-3);border-bottom:1px solid var(--border-subtle);color:var(--text-body);vertical-align:middle}.debt,.credit,td .badge{white-space:nowrap}.debt.debt-rechennja{white-space:normal}.suma-korotka{white-space:nowrap}@media (width<=1000px){th:first-child,td:first-child{min-width:180px}}tbody tr:last-child td{border-bottom:none}.clickable-row{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard)}.clickable-row:hover td{background:var(--bg-muted)}.row-actions{gap:var(--space-2);flex-wrap:wrap;place-content:center flex-end;display:flex}.row-actions button{padding:var(--space-2) var(--space-3);font:var(--type-caption);padding:var(--space-2) 10px;flex:none;min-height:32px}.muted{font:var(--type-caption);color:var(--text-muted)}.stale-rate-label{opacity:.7}.stale-rate-label input{font-style:italic}.stale-rate{opacity:.55;font-style:italic;text-decoration:line-through;text-decoration-thickness:1px}.link-button{font:inherit;color:var(--text-link);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.link-button:hover{color:var(--brand-700)}p.muted{font:var(--type-ui-sm);font-weight:var(--fw-regular);line-height:var(--lh-body);color:var(--text-muted);max-width:68ch;margin:var(--space-3) 0 var(--space-6)}p.muted:has(strong){color:var(--text-body);background:var(--surface-brand-soft);border:1px solid var(--brand-100);border-radius:var(--radius-control);padding:var(--space-3) var(--space-4);max-width:none}p.muted:has(strong) strong{color:var(--text-heading)}.debt{color:var(--text-alert);font-weight:var(--fw-semibold)}.charge-failed{color:var(--text-alert);background:var(--surface-alert-soft);font-size:var(--fs-body);font-weight:var(--fw-semibold);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control)}.credit{color:var(--text-success);font-weight:var(--fw-semibold)}.is-voided{color:var(--text-muted);text-decoration:line-through}.page-toolbar input[type=search]{flex:220px;width:auto;min-width:180px;max-width:320px}.empty-cell{text-align:center;color:var(--text-muted);font:var(--type-ui);padding:var(--space-12) var(--space-4)!important}p.empty-cell{margin:0;padding:var(--space-6) var(--space-4)!important}.badge{font:var(--type-caption);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--bg-muted);color:var(--text-muted);white-space:nowrap;align-items:center;display:inline-flex}.badge.badge-rechennja{white-space:normal;overflow-wrap:anywhere;line-height:var(--lh-body);display:block}.badge-warning{color:var(--brand-700);background:var(--surface-brand-soft)}.badge-danger{color:var(--text-alert);background:var(--surface-alert-soft)}.badge-success{color:var(--text-success);background:var(--surface-success-soft)}.badge-amber{color:var(--text-amber);background:var(--surface-amber-soft)}.badge.badge-borh-poza-abonementom{white-space:normal;overflow-wrap:anywhere;text-align:left;max-width:100%}.stat-grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.stat-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--pad-card);background:var(--surface-card);box-shadow:var(--shadow-card)}.stat-label{font:var(--type-caption);color:var(--text-muted);margin-bottom:var(--space-2)}.stat-value{font:var(--fw-bold) var(--fs-stat) / var(--lh-heading) var(--font-display);letter-spacing:var(--ls-heading);color:var(--text-heading);font-variant-numeric:tabular-nums}.stat-value.debt{color:var(--text-alert)}.stat-value.credit{color:var(--text-success)}.stat-value.amber{color:var(--text-amber)}.stat-card .muted{margin-top:var(--space-2);display:block}.stat-grid.zvit-onovlennja{opacity:.55;transition:opacity var(--dur-fast) var(--ease-standard)}.zvit-znak-onovlennja{white-space:nowrap}.zvit-znak-onovlennja-prykhovano{visibility:hidden}.stat-card-clickable{cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard)}.stat-card-clickable:hover{background:var(--bg-muted)}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:var(--space-5);z-index:10;background:#22213a52;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sheet);width:100%;max-width:460px;max-height:90vh;box-shadow:var(--shadow-overlay);padding:var(--pad-card-lg);overflow-y:auto}.modal-card h2,.modal-sheet h2{margin-bottom:var(--space-4)}.modal-sheet{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sheet);width:100%;max-width:460px;max-height:90vh;box-shadow:var(--shadow-overlay);flex-direction:column;display:flex;overflow:hidden}.modal-sheet>.modal-body{padding:var(--pad-card-lg);overscroll-behavior:contain;flex:auto;overflow-y:auto}.modal-sheet>.modal-actions{padding:var(--space-3) var(--pad-card-lg);border-top:1px solid var(--border-subtle);flex:none;margin-inline:0;position:static}.modal-sheet>.form-error,.modal-sheet>.form-success{padding:var(--space-3) var(--pad-card-lg);border-left:none;border-right:none;border-radius:0;flex:none;margin:0}.form-success{color:var(--text-success);background:var(--surface-success-soft);border:1px solid var(--success-050);padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);font:var(--type-ui-sm);line-height:var(--lh-body);margin:var(--space-3) 0}.modal-sheet>.modal-poperedzhennja{padding:var(--space-2) var(--pad-card-lg);border-top:1px solid var(--border-subtle);background:var(--surface-amber-soft);color:var(--text-amber,inherit);font:var(--type-ui-sm);line-height:var(--lh-body);white-space:normal;overflow-wrap:anywhere;flex:none;margin:0}.modal-sheet>.modal-nedochytane{padding:var(--space-2) var(--pad-card-lg);border-top:1px solid var(--border-subtle);background:var(--bg-elevated);flex:none;margin:0}.modal-card p.muted,.modal-sheet p.muted{margin:0 0 var(--space-4)}.modal-card .table-wrap,.modal-sheet .table-wrap{box-shadow:none}.modal-sheet table,.modal-sheet th:first-child,.modal-sheet td:first-child{min-width:0}.modal-sheet .row-actions{flex-wrap:wrap}@media (width>=641px){.modal-sheet .hodyny-majstra table{table-layout:fixed}.modal-sheet .hodyny-majstra th:first-child,.modal-sheet .hodyny-majstra td:first-child{width:12%}.modal-sheet .hodyny-majstra th:nth-child(2),.modal-sheet .hodyny-majstra td:nth-child(2){width:36%}.modal-sheet .hodyny-majstra th:nth-child(3),.modal-sheet .hodyny-majstra td:nth-child(3),.modal-sheet .hodyny-majstra th:nth-child(4),.modal-sheet .hodyny-majstra td:nth-child(4){width:26%}.modal-sheet .hodyny-majstra th,.modal-sheet .hodyny-majstra td{padding-left:4px;padding-right:4px}.modal-sheet .hodyny-majstra select{background-position:right 4px center;padding-left:6px;padding-right:22px}.modal-sheet .hodyny-majstra input[type=time]{min-width:0;padding-left:4px;padding-right:4px}.modal-sheet .hodyny-majstra input[type=time]::-webkit-calendar-picker-indicator{display:none}}.modal-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-6);background:var(--bg-elevated);padding-block:var(--space-3);margin-inline:calc(var(--pad-card-lg) * -1);padding-inline:var(--pad-card-lg);z-index:2;flex-wrap:wrap;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 16px -12px #100f2359}.modal-delete-row{margin-top:var(--space-5);padding:var(--space-4) var(--pad-card-lg) 0;border-top:1px solid var(--border-subtle);display:flex}.modal-body .modal-delete-row{padding-inline:0}.modal-delete-row button,.modal-actions button.rujnivna{color:var(--action-danger-fg);border-color:var(--accent-100)}.modal-actions button.rujnivna:hover:not(:disabled),.modal-delete-row button:hover:not(:disabled){background:var(--surface-alert-soft);border-color:var(--accent-500);color:var(--action-danger-fg)}.price-variants{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-subtle)}.price-variants h3{margin-bottom:var(--space-3)}.price-variants label{font:var(--type-caption);color:var(--text-muted);margin-bottom:0;display:block}.price-variants input,.price-variants select{margin-top:2px}.student-services{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-subtle)}.student-services h2{margin-bottom:var(--space-3)}.student-services label{font:var(--type-caption);color:var(--text-muted);margin-bottom:0;display:block}.student-services select{margin-top:2px}.variant-confirm{margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-control);background:var(--bg-muted)}.variant-confirm ul{margin:var(--space-2) 0 var(--space-3);padding-left:var(--space-5)}.variant-confirm-shar{padding:var(--space-5);z-index:20;background:#22213a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.variant-confirm-shar>.variant-confirm{background:var(--bg-elevated);width:100%;max-width:460px;max-height:85vh;box-shadow:var(--shadow-overlay);flex-direction:column;margin-top:0;padding:0;display:flex;overflow:hidden}.variant-confirm-shar .variant-confirm-tilo{padding:var(--pad-card-lg);overscroll-behavior:contain;flex:auto;overflow-y:auto}.variant-confirm-shar .variant-confirm>.modal-nedochytane{padding:var(--space-2) var(--pad-card-lg);border-top:1px solid var(--border-subtle);background:var(--bg-elevated);flex:none;margin:0}.variant-confirm-shar .variant-confirm-actions{padding:var(--space-3) var(--pad-card-lg);border-top:1px solid var(--border-subtle);flex:none;margin-top:0;position:static}.variant-confirm select{width:100%}.variant-confirm-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.page-actions{justify-content:flex-start;gap:var(--space-2);margin-top:var(--space-6);flex-wrap:wrap;display:flex}@media (width<=720px){:root{--page-gutter:16px}h1{font-size:var(--fs-h3-mobile)}.app-header{padding:var(--space-2) var(--page-inline);gap:var(--space-2)}.app-header-left{gap:var(--space-2);width:100%}.app-nav{scrollbar-width:none;flex-wrap:nowrap;width:100%;overflow-x:auto}.app-nav::-webkit-scrollbar{display:none}.app-header>div:last-child{width:100%}.app-header>div:last-child button{flex:1}.page{padding:var(--space-6) var(--page-gutter) var(--space-10)}table{min-width:940px}.row-actions{flex-wrap:nowrap}.stat-grid{gap:var(--space-3);grid-template-columns:1fr}.auth-card{padding:var(--space-6)}.modal-backdrop{padding:var(--space-4)}.modal-card{padding:var(--pad-card)}.modal-sheet>.modal-body,.modal-sheet>.modal-actions{padding-inline:var(--pad-card)}.modal-sheet>.modal-body{padding-block:var(--pad-card)}.modal-delete-row{padding-inline:var(--pad-card)}.modal-actions{margin-inline:calc(var(--pad-card) * -1);padding-inline:var(--pad-card);flex-direction:column}.modal-actions button,.modal-delete-row button{width:100%}.variant-confirm-actions{flex-direction:column}.variant-confirm-actions button{width:100%}.page-actions{flex-direction:column}.page-actions button{width:100%}}@media (pointer:coarse){td button,.app-nav-link,.tab,h3 button{min-height:var(--touch-min)}.app-nav-link,.tab{align-items:center;display:inline-flex}input,select,textarea{font-size:16px}}@media (width<=640px){.app-nav{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.app-nav::-webkit-scrollbar{display:none}.app-nav-link{white-space:nowrap}.app-nav{background:linear-gradient(to right, var(--bg-elevated) 40%, transparent) left center / 28px 100% no-repeat local, linear-gradient(to left, var(--bg-elevated) 40%, transparent) right center / 28px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #00000038, transparent) left center / 14px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #00000038, transparent) right center / 14px 100% no-repeat scroll}.table-wrap{overflow:visible}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{width:100%;min-width:0;display:block}.table-wrap td:first-child{min-width:0}.table-wrap thead{display:none}.table-wrap tr{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-3);margin-bottom:var(--space-3)}.table-wrap td{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-1) 0;text-align:right;border:0;display:flex}.table-wrap td:before{content:attr(data-label);color:var(--text-muted);font:var(--type-ui-sm);text-align:left;flex:none}.table-wrap td.is-empty,.table-wrap td .cell-label{display:none}.table-wrap td.cell-primary{text-align:left;padding-bottom:var(--space-2);justify-content:flex-start;font-size:1.05rem;font-weight:600}.table-wrap td.cell-primary:before{content:none}.table-wrap td.row-actions{align-items:stretch;gap:var(--space-2);padding-top:var(--space-3);flex-direction:column}.table-wrap td.row-actions:before{content:none}.table-wrap td.row-actions button{width:100%}.table-wrap .empty-cell{text-align:center;display:block}.page-toolbar input[type=search]{max-width:none}.table-wrap.student-picker{max-height:max(160px, calc((100vh - var(--kb-inset,0px)) * .45))}.modal-backdrop{align-items:flex-start;padding:0}.modal-card{max-height:100%;padding-bottom:calc(var(--space-6) + var(--kb-inset,0px));--sticky-actions-space:180px;border-radius:0}.modal-sheet{padding-bottom:var(--kb-inset,0px);max-height:100%}.modal-backdrop>.modal-sheet{margin-top:0}.modal-actions{background:var(--bg-elevated);padding-block:var(--space-3);margin-inline:calc(var(--space-5) * -1);padding-inline:var(--space-5);z-index:2;position:sticky;bottom:0;box-shadow:0 -8px 16px -12px #100f2359}.modal-actions button{flex:1}}.back-link{margin-bottom:var(--space-3);font:var(--type-ui-sm);color:var(--text-muted);display:inline-block}.back-link:hover{color:var(--text-heading)}.detail-meta{align-items:center;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.detail-contact{margin-bottom:var(--space-5)}.detail-contact span+span:before{content:"·";margin:0 var(--space-2);color:var(--border-strong)}.detail-actions{gap:var(--space-2);margin-bottom:var(--space-6);flex-direction:column;display:flex}.detail-actions p.muted{margin:0}@media (width>=641px){.detail-actions{flex-flow:wrap;align-items:center}.detail-actions button{width:auto}}@media (height<=480px){.modal-sheet{max-height:100%}.modal-sheet>.modal-body{padding-block:var(--space-3)}.modal-sheet>.modal-actions{flex-direction:row}.modal-sheet>.modal-actions button{width:auto}}
