:root{--bg:#f7f6f3;--panel:#fff;--panel-muted:#fbfbfa;--line:#e8e5df;--line-strong:#d8d4cc;--text:#1f211f;--muted:#73706a;--muted-strong:#4f4c47;--accent:#346538;--accent-bg:#edf3ec;--accent-dark:#234b28;--warning-bg:#fbf3db;--warning:#7b5a12;--danger-bg:#fdebec;--danger:#9f2f2d;--blue-bg:#eaf4fb;--blue:#285f7a;--ds-gray-100:#f2f2f2;--ds-gray-200:#ebebeb;--ds-gray-500:#c9c9c9;--ds-gray-600:#a8a8a8;--ds-gray-700:#8f8f8f;--ds-gray-1000:#171717;--ds-background-100:#fff}.dark{--ds-gray-100:#1a1a1a;--ds-gray-200:#1f1f1f;--ds-gray-500:#454545;--ds-gray-600:#878787;--ds-gray-700:#8f8f8f;--ds-gray-1000:#ededed;--ds-background-100:#0a0a0a}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);letter-spacing:0;margin:0;font-family:SF Pro Display,Geist Sans,Helvetica Neue,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}html{scrollbar-gutter:stable}a{color:inherit;text-decoration:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,input,select,textarea{font:inherit}input[type=checkbox]:not(.image-upload-input){border:1px solid var(--ds-gray-700);background:var(--ds-background-100);width:16px;min-width:16px;height:16px;min-height:16px;color:var(--ds-gray-100);appearance:none;cursor:pointer;border-radius:4px;flex:none;place-content:center;margin:0;padding:0;transition:background .16s,border-color .16s,box-shadow .16s;display:inline-grid}input[type=checkbox]:not(.image-upload-input):before{content:none}input[type=checkbox]:not(.image-upload-input):hover:not(:disabled){background:var(--ds-gray-200)}input[type=checkbox]:not(.image-upload-input):checked{border-color:var(--ds-gray-1000);background:var(--ds-gray-1000);background-image:url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 7L8.5 12.5L6 10' fill='none' stroke='%23f2f2f2' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:16px 16px}input[type=checkbox]:not(.image-upload-input):indeterminate{border-color:var(--ds-gray-700);background:var(--ds-background-100);background-image:linear-gradient(var(--ds-gray-700), var(--ds-gray-700));background-position:50%;background-repeat:no-repeat;background-size:10px 2px}input[type=checkbox]:not(.image-upload-input):focus-visible{outline:none;box-shadow:0 0 0 3px #1f211f1f}input[type=checkbox]:not(.image-upload-input):disabled{border-color:var(--ds-gray-500);background:var(--ds-gray-100);color:var(--ds-gray-100);cursor:not-allowed}input[type=checkbox]:not(.image-upload-input):disabled:checked{border-color:var(--ds-gray-600);background:var(--ds-gray-600);color:var(--ds-gray-100)}.module-switch input[type=checkbox]{opacity:0;pointer-events:none;width:1px;min-width:1px;height:1px;min-height:1px;padding:0;position:absolute}button,a,input,textarea{-webkit-tap-highlight-color:transparent}.shell{grid-template-columns:272px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--line);background:#fbfbfaeb;height:100dvh;padding:20px 14px;position:sticky;top:0}.brand{color:#191a18;align-items:center;gap:11px;padding:8px 10px 22px;font-weight:720;display:flex}.brand-mark{background:var(--text);color:#fff;letter-spacing:.04em;border-radius:8px;place-items:center;width:30px;height:30px;font-size:11px;display:grid}.nav{gap:2px;display:grid}.nav a{min-height:39px;color:var(--muted-strong);border-radius:7px;align-items:center;gap:11px;padding:8px 11px;font-size:14px;transition:background .18s,color .18s,transform .18s;display:flex}.nav a svg{color:#7f7b72;transition:color .18s}.nav a:hover,.nav a.active{color:var(--text);background:#efede8}.nav a:hover svg,.nav a.active svg{color:var(--text)}.nav a:active,.button:active,.secondary-button:active,.danger-button:active{transform:scale(.985)}.main{grid-template-rows:64px 1fr;min-width:0;display:grid}.topbar{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f7f6f3db;justify-content:space-between;align-items:center;padding:0 30px;display:flex;position:sticky;top:0}.topbar-title{letter-spacing:.02em;color:#2f302d;font-size:13px;font-weight:720}.user-pill{color:var(--muted);align-items:center;gap:11px;font-size:13px;display:flex}.admin-language-switcher{border:1px solid var(--line);background:#ffffffbd;border-radius:7px;grid-template-columns:1fr 1fr;gap:2px;padding:2px;display:inline-grid}.admin-language-switcher a{min-width:34px;min-height:28px;color:var(--muted);border-radius:5px;justify-content:center;align-items:center;font-size:12px;font-weight:720;transition:background .16s,color .16s;display:inline-flex}.admin-language-switcher a.active{background:var(--text);color:#fff}.avatar{width:30px;height:30px;color:var(--text);background:#ece9e1;border-radius:50%;place-items:center;font-size:12px;font-weight:720;display:grid}.content{width:min(100%,1360px);padding:32px}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.page-heading h1{letter-spacing:0;margin:0 0 8px;font-size:31px;font-weight:760;line-height:1.08}.page-heading p{color:var(--muted);max-width:62ch;margin:0;font-size:14px;line-height:1.6}.grid{gap:18px;display:grid}.metrics{grid-template-columns:1.2fr 1fr 1fr 1fr}.two-col{grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;transition:border-color .18s,box-shadow .18s;overflow:hidden;box-shadow:0 1px 2px #1f211f06}.panel-header{border-bottom:1px solid var(--line);background:#fffdfa;padding:20px 22px 16px}.panel-header h2{color:#252622;margin:0 0 5px;font-size:15px;font-weight:720}.panel-header p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.panel-body{padding:22px}.metric{background:#fff;padding:21px 22px}.metric span{color:var(--muted);text-transform:uppercase;letter-spacing:.045em;font-size:12px;font-weight:650}.metric strong{letter-spacing:0;margin-top:12px;font-size:31px;font-weight:760;line-height:1;display:block}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{color:var(--muted);text-align:left;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.055em;background:#fffdfa;padding:13px 16px;font-size:11px;font-weight:700}.table td{vertical-align:top;color:#343530;border-bottom:1px solid #efede8;padding:15px 16px}.table tbody tr{transition:background .16s}.table tbody tr:hover{background:#fbfaf7}.table tr:last-child td{border-bottom:0}.table-link{color:inherit;text-decoration:none}.table-link:hover{text-underline-offset:3px;text-decoration:underline}.status{background:var(--accent-bg);height:24px;color:var(--accent-dark);letter-spacing:.045em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:760;display:inline-flex}.status.draft,.status.unresolved{background:var(--warning-bg);color:var(--warning)}.status.resolved{background:var(--accent-bg);color:var(--accent-dark)}.status.idea,.status.planned{background:var(--blue-bg);color:var(--blue)}.status.in_progress{background:var(--warning-bg);color:var(--warning)}.status.implemented{background:var(--accent-bg);color:var(--accent-dark)}.status.blocked,.status.suspended,.status.archived{background:var(--danger-bg);color:var(--danger)}.status.healthy{background:var(--accent-bg);color:var(--accent-dark)}.status.warning,.status.pending,.status.unknown{background:var(--warning-bg);color:var(--warning)}.button,.secondary-button,.danger-button{cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-weight:680;transition:background .16s,border-color .16s,color .16s,transform .16s,box-shadow .16s;display:inline-flex}.button{background:var(--text);color:#fff}.button:disabled,.secondary-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.72}.button:disabled{background:#a29f98}.button:hover:not(:disabled){background:#33342f;box-shadow:0 7px 18px -16px #19201f8c}.icon-only-button{width:38px;padding:0;font-size:20px;line-height:1}.secondary-button{border:1px solid var(--line-strong);color:var(--muted-strong);background:#fff;min-width:38px;padding:0 10px}.secondary-button:hover:not(:disabled){color:var(--text);background:#f7f5f0;box-shadow:0 7px 18px -17px #19201f6b}.danger-button{background:var(--danger-bg);color:var(--danger);border:1px solid #e4bcbc;border-radius:6px;min-height:34px;padding:0 11px;font-size:12px}.danger-button:hover:not(:disabled){background:#f8dedf}.button-spinner,.button-check{flex:0 0 14px;place-items:center;width:14px;height:14px;display:inline-grid}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:999px;animation:.72s linear infinite button-spin}.button-check{background:#ffffff2e;border-radius:999px;font-size:11px;font-weight:900;animation:.18s ease-out button-saved-pop}.secondary-button .button-check{color:#276339;background:#e7f3e7}.backup-progress{width:min(100%,360px);color:var(--danger);background:#fff7f7;border:1px solid #f0d0d0;border-radius:8px;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.35;display:flex}.backup-progress-spinner{background:conic-gradient(from 90deg, transparent 0 22%, currentColor 22% 100%);border-radius:999px;flex:0 0 24px;width:24px;height:24px;animation:.9s linear infinite button-spin;position:relative}.backup-progress-spinner:after{content:"";border-radius:inherit;background:#fff7f7;position:absolute;inset:4px}.inline-form-status{color:#4f5a54;align-items:center;gap:5px;margin-top:4px;font-size:10px;font-weight:760;line-height:1.2;animation:.16s ease-out form-status-in;display:inline-flex}.inline-form-status.saved{color:#276339}.tenant-create-progress{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;gap:8px;padding:12px;display:grid}.tenant-create-progress-head{color:#17201c;justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;font-weight:800;display:flex}.tenant-create-progress-track{background:#e2e8f0;border-radius:999px;height:10px;overflow:hidden}.tenant-create-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#2f80d0,#1f9d75);height:100%;transition:width .42s;display:block}.tenant-create-progress p{color:#64748b;margin:0;font-size:.8rem;line-height:1.35}@keyframes button-spin{to{transform:rotate(360deg)}}@keyframes button-saved-pop{0%{opacity:0;transform:scale(.72)}}@keyframes form-status-in{0%{opacity:0;transform:translateY(-2px)}}@keyframes portal-page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes portal-card-in{0%{opacity:0;transform:translateY(8px)scale(.992)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes portal-row-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes portal-spinner{to{transform:rotate(360deg)}}@keyframes portal-spin-in{0%{opacity:0;transform:rotate(-32deg)scale(.94)}to{opacity:1;transform:rotate(0)scale(1)}}.form{gap:18px;display:grid}.form-section-title{border-top:1px solid var(--line);color:var(--muted-strong);letter-spacing:.055em;text-transform:uppercase;padding-top:18px;font-size:12px;font-weight:780}.form-section-title:first-child{border-top:0;padding-top:0}.field{gap:8px;display:grid}.field label{color:#30312d;font-size:13px;font-weight:720}.field input,.field select,.field textarea{border:1px solid var(--line-strong);width:100%;min-height:43px;color:var(--text);background:#fff;border-radius:6px;outline:none;padding:9px 11px;transition:border-color .16s,box-shadow .16s,background .16s}.field input::placeholder{color:#aaa59b}.field input:focus,.field select:focus,.field textarea:focus{background:#fffefa;border-color:#9f998d;box-shadow:0 0 0 3px #1f211f0e}.field-format-message{color:#8a5a00;margin:-4px 0 0;font-size:12px;line-height:1.35}.field textarea{resize:vertical}.field p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.field p.image-upload-error{color:#963535;font-weight:800}.field .image-upload-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;min-height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.module-switch{color:#252622;align-items:center;gap:10px;font-size:13px;font-weight:800;display:inline-flex}.module-switch[data-disabled]{cursor:not-allowed;opacity:.62}.module-switch-control{border:1px solid color-mix(in srgb, var(--line-strong) 86%, #fff);cursor:pointer;background:#d7dad5;border-radius:9px;align-items:center;width:64px;min-width:64px;height:34px;padding:4px;transition:background .18s,border-color .18s,box-shadow .18s;display:inline-flex;position:relative}.module-switch-control[data-state=checked]{border-color:color-mix(in srgb, var(--tenant-primary,#1d2a24) 42%, #fff);background:var(--tenant-primary,#1d2a24)}.module-switch-control[data-focus-visible]{box-shadow:0 0 0 3px color-mix(in srgb, var(--tenant-primary,#1d2a24) 18%, transparent)}.module-switch-text{color:#62675f;pointer-events:none;font-size:10px;font-weight:900;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.module-switch-text.off{right:8px}.module-switch-text.on{color:#fff;opacity:0;left:8px}.module-switch-control[data-state=checked] .module-switch-text.off{opacity:0}.module-switch-control[data-state=checked] .module-switch-text.on{opacity:1}.module-switch-thumb{z-index:1;background:#fff;border-radius:7px;width:24px;height:24px;transition:transform .18s;position:relative;box-shadow:0 6px 14px #1f27222e}.module-switch-thumb[data-state=checked]{transform:translate(30px)}.module-switch-label{cursor:pointer}.image-upload-field{align-content:start}.image-upload-dropzone{border:2px dashed color-mix(in srgb, var(--tenant-primary,#1d2a24) 20%, var(--line-strong));background:color-mix(in srgb, var(--tenant-secondary,#eef4eb) 38%, #fff);min-height:210px;color:var(--muted-strong);text-align:center;cursor:pointer;border-radius:8px;place-items:center;gap:14px;padding:22px;transition:border-color .16s,background .16s,transform .16s;display:grid}.image-upload-dropzone:hover,.image-upload-dropzone.dragging{border-color:color-mix(in srgb, var(--tenant-primary,#1d2a24) 56%, var(--line-strong));background:color-mix(in srgb, var(--tenant-secondary,#eef4eb) 62%, #fff)}.image-upload-dropzone:focus-visible{outline:3px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 18%, transparent);outline-offset:2px}.image-upload-icon{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:50px;height:50px;display:inline-flex;box-shadow:0 10px 24px #1f27221a}.image-upload-copy{gap:3px;display:grid}.image-upload-copy strong{color:var(--text);font-size:13px}.image-upload-copy small{color:var(--muted);font-size:12px}.image-upload-preview{gap:8px;display:grid}.image-upload-thumbnail{position:relative}.image-upload-image-button{border:1px solid var(--line-strong);cursor:pointer;background:#fff;border-radius:8px;width:100%;min-height:210px;padding:0;position:relative;overflow:hidden}.image-upload-image-button img{object-fit:cover;width:100%;height:210px;transition:transform .22s;display:block}.image-upload-image-button:hover img{transform:scale(1.035)}.image-upload-overlay{color:#fff;opacity:0;background:#0f17136b;place-items:center;transition:opacity .16s;display:grid;position:absolute;inset:0}.image-upload-image-button:hover .image-upload-overlay,.image-upload-image-button:focus-visible .image-upload-overlay,.image-upload-thumbnail:hover .image-upload-remove-button,.image-upload-thumbnail:focus-within .image-upload-remove-button{opacity:1}.image-upload-overlay span,.image-upload-actions button,.image-upload-file-row button,.image-upload-remove-button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.image-upload-overlay span{color:#16211b;background:#ffffffeb;border-radius:999px;min-height:34px;padding:0 12px;font-size:12px;font-weight:800}.image-upload-remove-button{color:#b33e3e;opacity:0;cursor:pointer;z-index:2;background:#fffffff0;border:1px solid #b33e3e47;border-radius:999px;width:34px;height:34px;transition:background .16s,opacity .16s,transform .16s;position:absolute;top:50%;left:calc(50% + 74px);transform:translateY(-50%)}.image-upload-remove-button:hover,.image-upload-remove-button:focus-visible{opacity:1;background:#fff3f3;transform:translateY(-50%)scale(1.04)}.image-upload-file-row{color:var(--muted);align-items:center;gap:8px;min-width:0;font-size:12px;display:flex}.image-upload-file-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.image-upload-file-row button{width:26px;height:26px;color:var(--muted-strong);cursor:pointer;background:0 0;border:0;border-radius:999px;margin-left:auto}.image-upload-file-row button:hover{background:#1f272214}.image-upload-actions{flex-wrap:wrap;gap:8px;display:flex}.image-upload-actions button{border:1px solid var(--line-strong);min-height:34px;color:var(--text);cursor:pointer;background:#fff;border-radius:999px;padding:0 12px;font-size:12px;font-weight:800}.image-upload-actions button.danger{color:#963535;border-color:#b33e3e59}.field .checkbox-row{color:#30312d;align-items:center;gap:9px;font-size:13px;font-weight:720;display:inline-flex}.field .checkbox-row input[type=checkbox]{width:17px;min-width:17px;height:17px;min-height:17px;padding:0}.personnel-list{padding:10px 18px 18px;display:grid}.personnel-row{border-bottom:1px solid var(--line)}.personnel-row:first-child{border-top:1px solid var(--line)}.personnel-row-summary{color:#252622;cursor:pointer;align-items:center;min-height:46px;padding:0 4px;list-style:none;display:flex}.personnel-row-summary::-webkit-details-marker{display:none}.personnel-row-summary:after{content:"";border-bottom:2px solid #7c8178;border-right:2px solid #7c8178;width:9px;height:9px;margin-left:auto;transition:transform .16s;transform:rotate(45deg)}.personnel-row[open] .personnel-row-summary:after{transform:rotate(-135deg)}.personnel-row-summary span{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:760;overflow:hidden}.personnel-row-body{gap:12px;max-width:620px;padding:0 0 16px;display:grid}.personnel-card{border:1px solid var(--line);background:#fffefb;border-radius:8px;gap:14px;padding:14px;display:grid}.personnel-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.personnel-card-header strong,.personnel-card-header span{display:block}.personnel-card-header span{color:var(--muted);margin-top:2px;font-size:12px}.personnel-switches{flex-wrap:wrap;gap:9px 14px;display:flex}.personnel-switches .checkbox-row{color:#30312d;align-items:center;gap:7px;font-size:12px;font-weight:760;display:inline-flex}.personnel-switches input[type=checkbox]{width:16px;height:16px}.personnel-age-limit{gap:9px;display:grid}.personnel-age-limit-main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.personnel-age-limit-toggle{border:1px solid var(--line-strong);color:#30312d;cursor:pointer;background:#fff;border-radius:7px;align-items:center;gap:9px;min-height:34px;padding:0 10px;font-size:12px;font-weight:760;transition:background .16s,border-color .16s,box-shadow .16s;display:inline-flex}.personnel-age-limit-toggle strong{min-width:31px;min-height:20px;color:var(--muted-strong);background:#efede8;border-radius:5px;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.personnel-age-limit-toggle.active{background:var(--accent-bg);color:var(--accent-dark);border-color:#34653861}.personnel-age-limit-toggle.active strong{background:var(--accent);color:#fff}.personnel-age-limit-toggle:focus-visible,.personnel-help-button:focus-visible{outline:none;box-shadow:0 0 0 3px #34653829}.personnel-help-button{border:1px solid var(--line-strong);width:30px;height:30px;color:var(--muted-strong);cursor:pointer;background:#fff;border-radius:999px;place-items:center;padding:0;transition:background .16s,color .16s,border-color .16s;display:inline-grid}.personnel-help-button:hover{color:var(--text);background:#f8f6f1;border-color:#c9c4ba}.personnel-age-limit-input{width:fit-content;color:var(--muted);gap:5px;font-size:12px;font-weight:700;display:grid}.personnel-age-limit-input input{border:1px solid var(--line-strong);width:92px;min-height:34px;color:var(--text);background:#fff;border-radius:7px;padding:0 10px;font-size:13px;font-weight:680}.snowdesk-tooltip-content{color:#fff;background:#171816;border:1px solid #ffffff1f;border-radius:8px;max-width:275px;padding:8px 10px;font-size:12px;line-height:1.4;box-shadow:0 12px 30px #1f211f38}.snowdesk-tooltip-content p{margin:0}.snowdesk-tooltip-light{border-color:var(--line);color:var(--text);background:#fff}.personnel-delete-form{display:flex}.personnel-delete-button{gap:7px;min-height:36px}.empty{color:var(--muted);text-align:center;padding:36px 22px;font-size:13px}.kv{gap:10px;display:grid}.kv div{border-bottom:1px solid #efede8;justify-content:space-between;gap:20px;padding-bottom:11px;display:flex}.kv div:last-child{border-bottom:0;padding-bottom:0}.kv span{color:var(--muted);font-size:13px}.kv strong{color:#30312d;text-align:right}.database-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.database-card .panel-body{min-height:190px}.infra-metrics,.docker-disk-metrics{margin-bottom:18px}.docker-disk-metric small{color:var(--muted);margin-top:9px;font-size:12px;font-weight:650;display:block}.release-panel{margin-bottom:18px}.release-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.release-form{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;align-content:start;gap:14px;min-width:0;padding:16px;display:grid}.release-form h3{color:var(--text);margin:0;font-size:15px;line-height:1.25}.release-form p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.5}.database-tree-panel,.database-environment-panel{margin-top:18px}.database-environment-tabs{gap:18px}.database-environment-content{gap:18px;display:grid}.database-environment-summary{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:18px;padding:14px 16px;display:flex}.database-environment-summary strong,.database-environment-summary span{display:block}.database-environment-summary strong{color:var(--text);font-size:14px;line-height:1.25}.database-environment-summary span{color:var(--muted);font-size:12px;line-height:1.45}.database-environment-summary>span{border:1px solid var(--line);min-height:26px;color:var(--muted-strong);text-transform:uppercase;white-space:nowrap;background:#fff;border-radius:999px;flex-shrink:0;align-items:center;padding:0 10px;font-size:11px;font-weight:760;display:inline-flex}.docker-stack-tree-panel{margin-bottom:18px}.docker-stack-tree{gap:0;display:grid}.docker-stack-node{border-bottom:1px solid var(--line);background:#fff;gap:13px;padding:20px 22px;display:grid}.docker-stack-node:last-child{border-bottom:0}.docker-stack-row{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.docker-stack-row strong,.docker-container-node strong{color:var(--text);font-size:14px;line-height:1.25;display:block}.docker-stack-row span,.docker-container-node>div:first-child span{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.35;display:block}.docker-stack-meta,.docker-container-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.docker-stack-meta span,.docker-container-meta span{border:1px solid var(--line);background:var(--panel-muted);min-height:24px;color:var(--muted-strong);text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;font-size:11px;font-weight:760;display:inline-flex}.docker-container-meta small{max-width:min(52vw,420px);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-family:Geist Mono,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;overflow:hidden}.docker-stack-details,.docker-container-details{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:12px;line-height:1.55;display:flex}.docker-stack-details span,.docker-container-details span{min-width:0}.docker-stack-details b,.docker-container-details b{color:var(--muted-strong);font-weight:760}.docker-stack-details code,.docker-container-details code,.docker-volume-node code{overflow-wrap:anywhere}.docker-container-branch{gap:10px;margin-top:4px;padding-left:26px;display:grid;position:relative}.docker-container-branch:before{content:"";background:var(--line-strong);width:1px;position:absolute;top:0;bottom:14px;left:9px}.docker-container-node{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr);gap:9px 16px;padding:13px 14px;display:grid;position:relative}.docker-container-node:before{content:"";background:var(--line-strong);width:17px;height:1px;position:absolute;top:25px;left:-17px}.docker-container-details{grid-column:1/-1}.docker-volume-branch{gap:8px;margin-top:2px;display:grid;position:relative}.docker-volume-node{border:1px dashed var(--line-strong);color:var(--muted-strong);background:#fffdfa;border-radius:8px;grid-template-columns:minmax(120px,.7fr) minmax(180px,1.2fr) auto;align-items:center;gap:12px;padding:11px 13px;font-size:12px;display:grid}.docker-volume-node span{font-weight:760}.docker-volume-node strong{color:var(--text);justify-self:end;font-size:12px}.database-tree{gap:10px;padding:4px 0;display:grid}.database-node{border-bottom:1px solid var(--line);gap:12px;padding:18px 22px;display:grid;position:relative}.database-tree>.database-node:last-child{border-bottom:0}.database-node-row{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.database-node-row strong{color:var(--text);font-size:15px;line-height:1.3;display:block}.database-node-row span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.database-node-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.database-node-meta span:not(.status){border:1px solid var(--line);min-height:24px;color:var(--muted-strong);text-transform:uppercase;background:#fff;border-radius:999px;align-items:center;margin-top:0;padding:0 9px;font-size:11px;font-weight:760;display:inline-flex}.database-node-details{color:var(--muted);flex-wrap:wrap;gap:10px 16px;font-size:12px;line-height:1.55;display:flex}.database-node-details span{align-items:baseline;gap:5px;min-width:0;padding:2px 0;display:inline-flex}.database-node-details b{color:var(--muted-strong);font-weight:760}.database-node-details code{overflow-wrap:anywhere}.database-node-children{background:0 0;gap:10px;margin:8px 0 0 5px;padding:8px 0 2px 28px;display:grid;position:relative}.database-node-children:before{content:"";background:var(--line-strong);width:1px;position:absolute;top:0;bottom:13px;left:10px}.database-node-children .database-node{border-bottom:0;padding:12px 0 12px 16px}.database-node-children .database-node:before{content:"";background:var(--line-strong);width:18px;height:1px;position:absolute;top:24px;left:-18px}.database-node-children .database-node:after{content:"";border:1px solid var(--line-strong);background:var(--panel);border-radius:999px;width:7px;height:7px;position:absolute;top:20px;left:-21px}.infra-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr);gap:18px;margin-top:18px;display:grid}.infra-grid>.panel:last-child:nth-child(odd){grid-column:1/-1}.table-wrap{overflow-x:auto}.infra-table td{overflow-wrap:anywhere;max-width:280px}.mono{font-family:Geist Mono,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px}.notice{background:var(--accent-bg);color:var(--accent-dark);border:1px solid #dce5d8;border-radius:8px;padding:14px;font-size:13px;line-height:1.5}.warning-notice{background:var(--warning-bg);color:var(--warning);border-color:#eadfb9}.mail-account-panel{align-self:start}.mail-account-panel+.school-grid,.mail-account-panel+.grid{margin-top:18px}.mail-account-body{gap:16px;display:grid}.mail-account-linked,.mail-account-empty,.mail-config-summary{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:13px;display:grid}.mail-account-linked strong,.mail-account-empty strong,.mail-config-summary strong{color:#252622;font-size:15px;display:block}.mail-account-linked span{color:var(--muted-strong);margin-top:2px;display:block}.mail-account-linked p,.mail-account-empty p{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.55}.mail-account-linked.compact{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:2px 0}.mail-account-linked.compact p{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px;display:flex}.mail-account-linked.compact p>span:not(.status){color:var(--muted);margin-top:0;font-size:12px;display:inline-flex}.mail-config-summary{background:#fbfdf8;border:1px solid #dfe8d7;border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto;padding:14px}.mail-config-summary.compact{padding:12px}.mail-config-summary-actions{align-items:center;gap:8px;display:flex}.mail-config-summary-actions>form{align-self:center}.mail-config-summary-details{color:var(--muted);gap:4px;margin-top:8px;font-size:12px;line-height:1.45;display:grid}.mail-config-summary-details code{color:#2e4238;font-family:var(--font-mono);overflow-wrap:anywhere}.mail-config-summary .status{width:fit-content;margin-top:7px}.mail-config-summary .config-error{color:var(--danger)}.mail-account-icon{border:1px solid var(--line);width:42px;height:42px;color:var(--muted-strong);background:#fbfaf7;border-radius:8px;place-items:center;display:grid}.mail-account-icon.success{color:#386f3f;background:#f0f7ed;border-color:#cfe0c8}.mail-account-meta{border-top:1px solid var(--line);gap:9px;padding-top:14px;display:grid}.mail-account-meta div{grid-template-columns:130px minmax(0,1fr);align-items:start;gap:12px;display:grid}.mail-account-meta span{color:var(--muted);font-size:12px;font-weight:720}.mail-account-meta strong{overflow-wrap:anywhere;min-width:0;color:var(--muted-strong)}.microsoft-setup-fields{border:1px solid var(--line);background:#fbfaf7;border-radius:8px;gap:9px;padding:14px;display:grid}.setup-fields-header{gap:4px;display:grid}.setup-fields-header strong{color:#252622;font-size:14px}.setup-fields-header span,.setup-field-row span{color:var(--muted);font-size:12px;line-height:1.45}.setup-field-row{border-top:1px solid var(--line);grid-template-columns:minmax(170px,.8fr) minmax(0,1.2fr);gap:12px;padding-top:9px;display:grid}.setup-field-row strong{color:var(--muted-strong);font-size:13px;display:block}.setup-field-value{justify-content:space-between;align-items:flex-start;gap:9px;min-width:0;display:flex}.setup-field-value code{overflow-wrap:anywhere;min-width:0;color:var(--muted-strong);font-family:var(--font-mono);font-size:12px}.field-status{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;flex:none;padding:3px 7px;font-size:11px;font-weight:760}.field-status.configured{color:#237343;border-color:#cfe4d4}.field-status.missing{color:var(--warning);border-color:#eadfb9}.microsoft-config-form{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}.microsoft-config-form .secondary-button{justify-self:start}.permission-summary{border:1px solid var(--line);background:#fbfaf7;border-radius:8px;gap:5px;padding:11px 12px;display:grid}.permission-summary strong{color:var(--muted-strong);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:13px}.permission-summary span{color:var(--muted);font-size:12px;line-height:1.45}.mail-account-actions{flex-wrap:wrap;gap:8px;display:flex}.mail-account-empty-actions{align-items:center;min-height:96px;display:flex}.mail-config-modal{width:min(100%,680px)}.config-error-modal{width:min(100%,520px)}.nested-error-backdrop{z-index:80;background:#19201f5c}.mail-config-modal-body{gap:16px;display:grid}.microsoft-config-form.compact{background:0 0;border:0;padding:0}.mail-config-connect{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.mail-config-connect p{color:var(--muted);margin:0;font-size:12px}.integration-tabs{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;margin-bottom:18px;padding:4px;display:inline-flex}.integration-tabs a,.integration-tabs button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex}.integration-tabs a.active,.integration-tabs button.active{background:var(--text);color:#fff}.findings-layout{align-items:start}.findings-list{display:grid}.finding-card{border-bottom:1px solid var(--line);gap:13px;padding:18px 20px;display:grid}.finding-card:last-child{border-bottom:0}.finding-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.finding-card h3{color:#252622;margin:6px 0 0;font-size:16px;line-height:1.28}.finding-card p{color:var(--muted-strong);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.6}.finding-type{background:var(--blue-bg);min-height:22px;color:var(--blue);letter-spacing:.045em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:760;display:inline-flex}.finding-type.automation_bug{background:var(--warning-bg);color:var(--warning)}.finding-type.pentest_issue,.finding-type.security_note{background:var(--danger-bg);color:var(--danger)}.finding-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:12px;display:flex}.finding-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-issues-layout{align-items:start}.tenant-issue-card.done{background:#fbfcf8}.tenant-issue-edit-form{background:#fff;border:1px solid #edf1e9;border-radius:8px;gap:10px;padding:12px;display:grid}.item-actions{flex-wrap:wrap;gap:8px;display:flex}.item-actions .secondary-button,.item-actions .danger-button,.blueprint-actions .danger-button{min-height:32px;font-size:12px}.blueprint-summary{grid-template-columns:minmax(0,1fr) 150px 150px;gap:14px;margin-bottom:18px;display:grid}.blueprint-path{align-items:center;gap:10px;min-width:0;display:flex}.blueprint-path span{min-width:0}.blueprint-path code{vertical-align:bottom;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.blueprint-counter{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:13px 14px}.blueprint-counter strong{font-size:24px;font-weight:760;line-height:1;display:block}.blueprint-counter span{color:var(--muted);margin-top:7px;font-size:12px;font-weight:680;display:block}.blueprint-layout{align-items:start}.blueprint-tree-header{align-items:flex-start}.blueprint-tree-header>div{min-width:0}.blueprint-add-button{flex:none}.blueprint-create-modal{width:min(100%,720px)}.blueprint-tree{display:grid}.blueprint-category{border-bottom:1px solid var(--line)}.blueprint-category:last-child{border-bottom:0}.blueprint-category-head{background:#fbfaf7;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px;display:flex}.blueprint-category-head h3{margin:0 0 4px;font-size:16px;line-height:1.25}.blueprint-category-head p{color:var(--muted);margin:0;font-size:13px}.blueprint-category-head>span{border:1px solid var(--line);min-width:28px;min-height:28px;color:var(--muted-strong);background:#fff;border-radius:999px;place-items:center;font-size:12px;font-weight:760;display:grid}.blueprint-branches{padding-left:22px;display:grid;position:relative}.blueprint-branches:before{content:"";background:var(--line);width:1px;position:absolute;top:0;bottom:0;left:22px}.blueprint-feature{border-bottom:1px solid #efede8;gap:12px;padding:17px 20px 17px 22px;display:grid;position:relative}.blueprint-feature:last-child{border-bottom:0}.blueprint-feature:before{content:"";background:var(--line);width:14px;height:1px;position:absolute;top:31px;left:0}.blueprint-feature-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.blueprint-feature h4{margin:6px 0 0;font-size:16px;line-height:1.28}.blueprint-feature p{color:var(--muted-strong);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.6}.blueprint-feature ul{color:var(--muted-strong);margin:0;padding-left:18px;font-size:13px;line-height:1.6}.priority-pill{background:var(--blue-bg);min-height:22px;color:var(--blue);letter-spacing:.045em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:760;display:inline-flex}.priority-pill.high,.priority-pill.critical{background:var(--warning-bg);color:var(--warning)}.priority-pill.critical{background:var(--danger-bg);color:var(--danger)}.blueprint-actions{flex-wrap:wrap;gap:8px;display:flex}.blueprint-actions .secondary-button{min-height:32px;font-size:12px}.blueprint-actions .secondary-button:disabled{cursor:not-allowed;color:var(--text);background:#efede8}.blueprint-empty{color:var(--muted);align-items:center;gap:8px;padding:20px 22px;font-size:13px;display:flex;position:relative}.blueprint-context-panel{margin-top:18px}.blueprint-context{white-space:pre-wrap;max-height:720px;color:var(--muted-strong);background:#fffefa;margin:0;padding:22px;font-family:Geist Mono,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.65;overflow:auto}.success-notice,.error-notice{margin-bottom:18px}.success-notice{background:var(--accent-bg);color:var(--accent-dark);border-color:#dce5d8}.error-notice{background:var(--danger-bg);color:var(--danger);border-color:#ead2ce}.unauthorized{place-items:center;min-height:100dvh;padding:24px;display:grid}.unauthorized .panel{width:min(100%,480px)}.login-page{background:linear-gradient(90deg, color-mix(in srgb, var(--login-overlay,#0e1714) 34%, transparent), color-mix(in srgb, var(--login-overlay,#0e1714) 8%, transparent) 43%, color-mix(in srgb, var(--login-overlay,#0e1714) 24%, transparent)), linear-gradient(180deg, color-mix(in srgb, var(--login-gradient-from,#f7f6f3) 18%, transparent), color-mix(in srgb, var(--login-gradient-to,#f7f6f3) 42%, transparent)), var(--login-background-image,url(/brand/snowdesk-login-winter-bg.png)) center / cover no-repeat, var(--bg);place-items:center;min-height:100dvh;padding:28px;display:grid;position:relative}.login-page.login-background-gradient{background:linear-gradient(135deg, var(--login-gradient-from,#eef4eb), var(--login-gradient-to,#fff)), var(--bg)}.login-page.login-background-solid{background:var(--login-gradient-from,#eef4eb)}.language-switcher{z-index:30;position:fixed;top:22px;right:24px}.language-switcher summary{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:38px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffffd1;border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:720;line-height:1;list-style:none;display:inline-flex;box-shadow:0 18px 45px -38px #1f211f73}.language-switcher summary::-webkit-details-marker{display:none}.language-switcher summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;margin-left:2px;transition:transform .16s;transform:translateY(-2px)rotate(45deg)}.language-switcher[open] summary:after{transform:translateY(2px)rotate(225deg)}.language-menu{border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-radius:10px;gap:4px;min-width:178px;padding:5px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 22px 55px -34px #1f211f80}.language-switcher a{min-height:34px;color:var(--muted);border-radius:6px;justify-content:flex-start;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:650;transition:background .16s,color .16s,transform .16s;display:inline-flex}.language-switcher a:hover{color:var(--text)}.language-switcher a.active{background:var(--text);color:#fff}.language-switcher a:active{transform:translateY(1px)}.login-shell{border:1px solid var(--line);background:var(--login-panel,#fff);border-radius:14px;grid-template-columns:minmax(0,1.15fr) 420px;width:min(100%,1120px);min-height:680px;display:grid;overflow:hidden;box-shadow:0 30px 80px -62px #1f211f7a}.compact-login-shell{border-radius:16px;grid-template-columns:1fr;width:min(100%,430px);min-height:0}.compact-login-panel{text-align:center;border-left:0;align-items:center;min-height:390px;padding:46px 40px}.login-logo{border:1px solid var(--line);object-fit:cover;border-radius:18px;width:68px;height:68px;box-shadow:0 18px 40px -30px #1f211f73}.compact-login-copy{gap:8px;display:grid}.compact-login-copy span{color:var(--accent-dark);letter-spacing:.075em;text-transform:uppercase;font-size:12px;font-weight:760}.compact-login-copy h1{letter-spacing:0;margin:0;font-size:30px;line-height:1.05}.compact-login-copy p{color:var(--muted);margin:0;font-size:14px}.login-progress{background:#ece9e1;border-radius:999px;width:100%;height:3px;overflow:hidden}.login-progress:before{content:"";border-radius:inherit;background:var(--text);width:42%;height:100%;animation:1.1s cubic-bezier(.16,1,.3,1) infinite login-progress;display:block}@keyframes login-progress{0%{transform:translate(-110%)}to{transform:translate(245%)}}.login-copy{background:linear-gradient(#f7f6f3c7,#fffffff5),repeating-linear-gradient(90deg,#1f211f0a 0 1px,#0000 1px 72px),repeating-linear-gradient(0deg,#1f211f08 0 1px,#0000 1px 72px);flex-direction:column;justify-content:space-between;padding:52px;display:flex}.login-brand{align-items:center;gap:14px;display:flex}.login-brand img,.login-panel-head img{object-fit:cover;border:1px solid var(--line);border-radius:16px;width:56px;height:56px}.login-brand span{color:var(--muted);font-size:13px;display:block}.login-brand strong{font-size:17px;display:block}.login-kicker{color:var(--accent-dark);text-transform:uppercase;margin:0 0 14px;font-size:13px;font-weight:750}.login-copy h1{letter-spacing:0;max-width:620px;margin:0;font-size:48px;line-height:1.02}.login-lede{max-width:560px;color:var(--muted);margin:20px 0 0;font-size:16px;line-height:1.6}.login-system{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:560px;display:grid}.login-system div{border-top:1px solid var(--line);padding-top:14px}.login-system span{color:var(--muted);font-size:12px;display:block}.login-system strong{margin-top:5px;display:block}.login-panel{border-left:1px solid var(--line);background:var(--login-panel,#fbfbfa);flex-direction:column;justify-content:center;gap:18px;padding:40px;display:flex}.login-panel-head{align-items:center;gap:14px;margin-bottom:4px;display:flex}.login-panel-head h2{margin:0 0 4px;font-size:24px}.login-panel-head p{color:var(--muted);margin:0;font-size:13px}.setup-callout{background:var(--accent-bg);color:var(--accent-dark);border:1px solid #dce5d8;border-radius:8px;padding:14px;font-size:13px}.setup-callout.warning{background:var(--danger-bg);color:var(--danger);border-color:#f1d4d6}.setup-callout strong{margin-bottom:5px;display:block}.setup-callout p{margin:0;line-height:1.5}.planning-selector-shell{background:#fffffce6;border:1px solid #19201f1a;border-radius:28px;gap:18px;width:min(100%,620px);padding:34px;display:grid;box-shadow:0 24px 70px #19201f24}.planning-selector-heading{gap:8px;display:grid}.planning-selector-heading span,.planning-selector-card span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.planning-selector-heading h1{color:var(--text);margin:0;font-size:clamp(30px,5vw,48px);line-height:.95}.planning-selector-heading p{color:var(--muted-strong);margin:0;line-height:1.55}.planning-selector-grid{gap:12px;width:100%;display:grid}.planning-selector-card{border:1px solid var(--line-strong);color:var(--text);text-align:left;background:#fffefb;border-radius:18px;gap:6px;padding:18px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.planning-selector-card:hover{border-color:#19201f47;transform:translateY(-2px);box-shadow:0 14px 35px #19201f1a}.planning-selector-card strong{font-size:20px}.planning-selector-card small{color:var(--muted-strong);font-size:13px}.login-submit{width:100%;min-height:44px}.social-login{gap:12px;width:100%;display:grid}.social-login-divider{color:var(--muted);align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.social-login-divider:before,.social-login-divider:after{content:"";background:var(--line);flex:1;height:1px}.social-login-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.social-login-button{width:100%;min-height:42px}.login-details{border:1px solid var(--line);background:#fff;border-radius:8px;gap:0;display:grid;overflow:hidden}.login-details div{border-bottom:1px solid #efede8;gap:5px;padding:12px;display:grid}.login-details div:last-child{border-bottom:0}.login-details span,.login-footer-note{color:var(--muted);font-size:12px}.login-details strong{overflow-wrap:anywhere}.login-footer-note{line-height:1.5}.tenant-shell{grid-template-columns:248px minmax(0,1fr);min-height:100dvh;display:grid}.tenant-sidebar{border-right:1px solid var(--line);background:#fbfbfa;height:100dvh;padding:20px 14px;position:sticky;top:0}.tenant-brand{align-items:center;gap:12px;padding:8px 10px 22px;display:flex}.tenant-brand strong,.tenant-topbar strong{display:block}.tenant-brand span,.tenant-topbar span{color:var(--muted);font-size:12px;display:block}.tenant-nav{gap:2px;display:grid}.tenant-nav a{min-height:39px;color:var(--muted-strong);border-radius:7px;align-items:center;gap:11px;padding:8px 11px;font-size:14px;display:flex}.tenant-nav a:hover{color:var(--text);background:#efede8}.tenant-main{grid-template-rows:64px 1fr;min-width:0;display:grid}.tenant-topbar{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f7f6f3e0;justify-content:space-between;align-items:center;padding:0 30px;display:flex;position:sticky;top:0}.tenant-content{width:min(100%,1500px);padding:32px}.tenant-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.checkbox-stack{border:1px solid var(--line-strong);background:#fff;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;min-height:43px;padding:8px 10px;display:flex}.checkbox-stack label{color:var(--muted-strong);align-items:center;gap:7px;font-size:13px;font-weight:680;display:inline-flex}.checkbox-stack input{width:16px;min-height:16px}.weekday-checks{border:1px solid var(--line-strong);background:#fff;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;min-height:43px;padding:8px 10px;display:flex}.weekday-checks label{color:var(--muted-strong);align-items:center;gap:6px;font-size:13px;font-weight:720;display:inline-flex}.weekday-checks input{width:16px;min-height:16px}.customer-flags{color:var(--danger);flex-wrap:wrap;gap:5px;font-weight:820;display:inline-flex}.customer-list-header-actions,.customer-form-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.customer-list-meta{color:var(--muted);margin-top:3px;font-size:12px}.customer-list-table tbody tr{cursor:pointer}.customer-list-table td:not(:last-child){padding:0}.customer-row-cell-link{min-height:50px;color:inherit;padding:15px 16px;text-decoration:none;display:block}.customer-row-cell-link:hover strong{text-underline-offset:3px;text-decoration:underline}.customer-row-cell-link .customer-list-meta{display:block}.customer-result-count{border:1px solid var(--line);min-height:30px;color:var(--muted-strong);background:#fff;border-radius:6px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:780;display:inline-flex}.customer-stat-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.customer-stat-badge{gap:6px}.customer-stat-value{color:var(--muted-strong)}.customer-stat-label{color:var(--muted);font-weight:760}.customer-stat-help{width:18px;height:18px;color:var(--muted-strong);cursor:help;background:#eef4eb;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.customer-stat-help:hover,.customer-stat-help:focus-visible{color:var(--text);outline-offset:1px;outline:2px solid #dfe5dc}.panel-header.split{justify-content:space-between;align-items:center;gap:16px;display:flex}.customer-row-action{min-height:30px;font-size:12px}.customer-card-heading h1{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.customer-card-heading h1 span{background:var(--tenant-primary,#1d2a24);color:#fff;border-radius:999px;align-items:center;min-height:26px;padding:0 10px;font-size:13px;font-weight:780;display:inline-flex}.customer-detail-layout{grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:start}.customer-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;display:grid}.customer-form-column{align-content:start;gap:18px;display:grid}.tenant-form-row.compact{grid-template-columns:minmax(120px,1fr) minmax(90px,.72fr) minmax(86px,.62fr)}.segmented-choice{border:1px solid var(--line-strong);background:#fff;border-radius:6px;flex-wrap:wrap;gap:6px;min-height:43px;padding:4px;display:flex}.segmented-choice label{min-height:33px;color:var(--muted-strong);border-radius:4px;flex:auto;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:720;display:inline-flex}.segmented-choice input{width:14px;min-height:14px}.customer-card-summary{position:sticky;top:92px}.customer-profile-strip{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px;display:flex}.customer-profile-strip strong{color:#17201d;font-size:22px;line-height:1}.customer-profile-strip span{color:var(--muted);font-size:13px;font-weight:720}.customer-quick-page{max-width:900px}.customer-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.customer-quick-wide{grid-column:1/-1}.customer-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.customer-list-grid{grid-template-columns:minmax(0,1fr)}.result-limit-note{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.45}.empty-state{border-top:1px solid var(--line);color:var(--muted);gap:6px;padding:30px 22px;font-size:13px;display:grid}.empty-state strong{color:var(--text);font-size:15px}.field-help{color:var(--muted);font-size:12px;line-height:1.45}.general-settings-form{gap:16px;display:grid}.schedule-settings-row{align-items:start}.evaluation-settings-panel{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 16%, #dfe5dc)}.evaluation-settings-panel .panel-body{justify-items:start;gap:18px;display:grid}.setting-label-with-help{align-items:center;gap:7px;display:inline-flex}.help-tooltip{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 18%, #dfe5dc);width:24px;height:24px;color:var(--tenant-primary,#263d2e);cursor:help;background:#fff;border-radius:999px;outline:none;place-items:center;display:inline-grid;position:relative}.help-tooltip:focus-visible{border-color:var(--tenant-primary,#263d2e);box-shadow:0 0 0 3px color-mix(in srgb, var(--tenant-primary,#263d2e) 16%, transparent)}.help-tooltip [role=tooltip]{z-index:20;color:#fff;opacity:0;pointer-events:none;background:#17201d;border:1px solid #dfe5dc;border-radius:8px;width:min(320px,78vw);padding:10px 12px;font-size:12px;font-weight:650;line-height:1.45;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,4px);box-shadow:0 14px 34px #0f171338}.help-tooltip:hover [role=tooltip],.help-tooltip:focus [role=tooltip]{opacity:1;transform:translate(-50%)}.quick-add-panel{scroll-margin-top:90px}.quick-add-form{max-width:780px}.customer-detail-heading{margin-bottom:18px}.customer-tabs{background:#fff;border:1px solid #dfe5dc;border-radius:8px;flex-wrap:wrap;gap:6px;margin:-6px 0 18px;padding:4px;display:flex}.customer-tabs span,.customer-tabs a{color:#5d6862;border-radius:5px;align-items:center;min-height:31px;padding:0 10px;font-size:12px;font-weight:760;transition:background .16s,color .16s,transform .16s;display:inline-flex}.customer-tabs a:hover{color:#1d2a24;background:#f2f5ef}.customer-tabs a:active{transform:scale(.985)}.customer-tabs span.active,.customer-tabs a.active{color:#fff;background:#1d2a24}.customer-card-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.customer-edit-panel .panel-body{padding:24px}.customer-profile-home,.customer-subscriptions{gap:18px;display:grid}.customer-home-hero{grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:stretch;gap:16px;display:grid}.customer-home-hero>div:first-child{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;align-content:center;gap:5px;padding:18px;display:grid}.customer-home-hero span,.customer-info-card span,.customer-product-card span,.account-tree-node span{color:var(--muted);font-size:12px;font-weight:720}.customer-home-hero strong{color:#17201d;font-size:26px;line-height:1.1}.customer-home-hero small{color:var(--tenant-primary,#1d2a24);font-size:13px;font-weight:820}.customer-home-hero .customer-profile-strip{margin:0}.customer-info-grid,.customer-ledger-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-info-card{background:#fffefb;border:1px solid #dfe5dc;border-radius:8px;align-content:center;gap:6px;min-height:76px;padding:14px;display:grid}.customer-info-card strong{color:#17201d;overflow-wrap:anywhere;min-width:0;font-size:14px;line-height:1.35}.customer-product-list{gap:8px;display:grid}.customer-product-add-form{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(170px,auto) auto;align-items:center;gap:9px;padding:12px;display:grid}.customer-product-add-form select{background:#fff;border:1px solid #d4dccf;border-radius:6px;min-width:0;min-height:36px;padding:0 9px}.customer-product-add-form label{color:#4f5a54;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:760;display:inline-flex}.customer-product-add-form label select{min-width:132px}.customer-product-add-button{white-space:nowrap;min-height:36px;padding-inline:12px}.customer-product-card{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:14px;padding:13px 14px;display:grid}.customer-product-card div{gap:3px;display:grid}.customer-product-card strong{color:#17201d;font-size:14px}.customer-product-card>span:not(.status){color:#263d2e;font-weight:820}.customer-product-payment-actions{justify-content:flex-end;gap:6px;min-width:74px;display:inline-flex}.customer-product-payment-actions form{margin:0}.muted-product{background:#fffefb}.customer-lesson-list{display:grid}.lesson-mail-notice{margin:0 16px 12px}.lesson-mail-planning-notice{margin:0 0 12px}.portal-settings-form,.portal-social-login-form{gap:16px}.portal-social-login-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.portal-social-provider-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:14px;padding:16px;display:grid}.portal-social-provider-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.portal-social-provider-head h3{margin:0 0 4px;font-size:16px}.portal-social-provider-head p,.portal-login-help p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.portal-provider-toggle{background:#f8faf7}.portal-login-help{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;gap:4px;padding:12px;display:grid}.portal-login-help strong{color:#263d2e;font-size:13px}.portal-credit-toggle{color:#263d2e;background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.portal-credit-toggle input{margin-top:2px}.portal-credit-toggle span{gap:4px;display:grid}.portal-credit-toggle strong{font-size:13px;line-height:1.25}.portal-credit-toggle small{color:var(--muted);font-size:12px;line-height:1.4}@media (max-width:760px){.portal-social-login-grid{grid-template-columns:1fr}}.customer-lesson-table{border-collapse:collapse;background:#fff;width:100%}.customer-lesson-table th{color:#5d6862;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:#fbfcf8;border-top:1px solid #dfe5dc;border-bottom:1px solid #dfe5dc;padding:10px 14px;font-size:11px;font-weight:820}.customer-lesson-table td{color:#263d2e;vertical-align:middle;border-bottom:1px solid #edf1e9;padding:0;font-size:13px}.customer-lesson-table tbody tr{transition:background .16s}.customer-lesson-table tbody tr:hover{background:#fbfcf8}.customer-lesson-cell-link{min-height:48px;padding:10px 14px;display:block}.customer-lesson-table td:first-child{min-width:240px}.customer-lesson-delete-cell{text-align:center;width:42px}.customer-lesson-delete-cell form{place-items:center;display:grid}.customer-lesson-delete-button{color:#9f2f2d;cursor:pointer;background:#fff7f7;border:1px solid #f1c7c7;border-radius:6px;place-items:center;width:26px;height:26px;font-size:18px;line-height:1;transition:background .16s,border-color .16s,transform .16s;display:inline-grid}.customer-lesson-delete-button:hover{background:#fdebec;border-color:#e59a9a}.customer-lesson-delete-button:active{transform:scale(.94)}.customer-lesson-table strong,.customer-lesson-table span{display:block}.customer-lesson-table strong{color:#17201d;font-size:14px;line-height:1.25}.customer-lesson-table span{color:var(--muted);margin-top:2px;font-size:12px;font-weight:720}.customer-account-tree{gap:0;display:grid}.account-tree-node{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:3px;padding:14px;display:grid;position:relative}.account-tree-node.root{background:#fbfcf8}.account-tree-node strong{color:#17201d;font-size:14px}.account-tree-children{gap:10px;margin-left:18px;padding:12px 0 0 18px;display:grid;position:relative}.account-tree-children:before{content:"";border-left:1px solid #cfd8ca;position:absolute;top:0;bottom:16px;left:0}.account-tree-children .account-tree-node:before{content:"";border-top:1px solid #cfd8ca;width:18px;margin-top:11px;margin-left:-33px;position:absolute}.empty-link{color:var(--muted)}.customer-link-open-button{align-items:center;gap:7px;min-height:36px;display:inline-flex}.customer-link-modal-backdrop{z-index:9000;background:#10181457;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.customer-link-modal{background:#fff;border:1px solid #dbe3d8;border-radius:10px;gap:16px;width:min(520px,100%);padding:18px;animation:.15s ease-out lesson-popover-in;display:grid;box-shadow:0 28px 70px -34px #131b179e}.customer-link-modal-head{justify-content:space-between;gap:14px;display:flex}.customer-link-modal-head span{color:#17201d;align-items:center;gap:8px;font-size:17px;font-weight:820;display:inline-flex}.customer-link-modal-head p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.45}.customer-link-modal-head button{color:#24332b;background:#fff;border:1px solid #dbe3d8;border-radius:7px;place-items:center;width:30px;height:30px;display:inline-grid}.customer-link-search-form{gap:12px;display:grid}.customer-link-autocomplete input{min-height:42px;font-size:13px}.customer-link-modal-actions{justify-content:flex-end;gap:8px;display:flex}.customer-note-open-button{align-items:center;gap:7px;min-height:36px;display:inline-flex}.customer-note-modal-backdrop{z-index:9000;background:#10181457;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.customer-note-modal{background:#fff;border:1px solid #dbe3d8;border-radius:10px;gap:16px;width:min(560px,100%);padding:18px;animation:.15s ease-out lesson-popover-in;display:grid;box-shadow:0 28px 70px -34px #131b179e}.customer-note-modal-head{justify-content:space-between;gap:14px;display:flex}.customer-note-modal-head span{color:#17201d;align-items:center;gap:8px;font-size:17px;font-weight:820;display:inline-flex}.customer-note-modal-head button{color:#24332b;background:#fff;border:1px solid #dbe3d8;border-radius:7px;place-items:center;width:30px;height:30px;display:inline-grid}.customer-note-form{gap:12px;display:grid}.customer-note-form label{color:#3e4d45;gap:7px;font-size:13px;font-weight:760;display:grid}.customer-note-form textarea{resize:vertical;color:#17201d;width:100%;min-height:180px;font:inherit;border:1px solid #d7ded4;border-radius:8px;padding:10px;line-height:1.5}.customer-note-modal-actions{justify-content:flex-end;gap:8px;display:flex}.customer-notes-panel{gap:12px;display:grid}.customer-note-list{gap:10px;display:grid}.customer-note-card{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:8px;padding:14px;display:grid}.customer-note-meta strong{color:#5e6c64;font-size:12px;font-weight:780}.customer-note-card p{white-space:pre-wrap;color:#17201d;margin:0;font-size:14px;line-height:1.55}.customer-summary-panel{position:sticky;top:94px}.customer-number-block{background:#fbfaf7;border:1px solid #dfe5dc;border-radius:8px;gap:8px;margin-bottom:18px;padding:16px;display:grid}.customer-number-block span{color:var(--muted);text-transform:uppercase;letter-spacing:.055em;font-size:12px;font-weight:720}.customer-number-block strong{color:#17201d;font-size:28px;line-height:1}.customer-summary-kv{gap:12px}.tenant-search,.date-picker{gap:10px;display:flex}.tenant-search input,.date-picker input{border:1px solid var(--line-strong);background:#fff;border-radius:6px;min-height:38px;padding:8px 10px}.tenant-search input{flex:1}.tenant-live-search{border:1px solid var(--line-strong);width:min(420px,100%);min-height:34px;color:var(--muted-strong);background:#fff;border-radius:7px;align-items:center;gap:7px;padding:0 8px;transition:border-color .15s,box-shadow .15s;display:flex}.tenant-live-search:focus-within{border-color:#91a18f;box-shadow:0 0 0 3px #263d2e14}.tenant-live-search input{min-width:0;min-height:32px;color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:5px 0;font-size:13px}.tenant-live-search .customer-search-loader{color:#2f80d0;flex:none}.tenant-live-search button{width:22px;height:22px;color:var(--muted-strong);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;display:inline-grid}.tenant-live-search button:hover{color:var(--text);background:#f2f5ef}.planning-grid{gap:12px;display:grid}.planning-hour{grid-template-columns:76px minmax(0,1fr);align-items:start;gap:12px;display:grid}.planning-time{border:1px solid var(--line);color:var(--muted-strong);text-align:center;background:#fffdfa;border-radius:8px;padding:12px 10px;font-weight:760;position:sticky;top:76px;left:0}.planning-lanes{gap:12px;min-width:0;display:grid}.planning-lane{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.planning-lane-title,.planning-group-title{border-bottom:1px solid var(--line);color:var(--muted-strong);background:#fffdfa;padding:10px 12px;font-size:12px;font-weight:760}.planning-groups{gap:0;display:grid}.planning-group{border-right:1px solid var(--line)}.planning-group:last-child{border-right:0}.planning-cell{border-bottom:1px solid #efede8;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-height:58px;padding:8px;display:grid}.planning-create-cell{grid-template-columns:minmax(0,1fr)}.planning-cell:last-child{border-bottom:0}.planning-cell select{border:1px solid var(--line-strong);background:#fff;border-radius:6px;min-width:0;min-height:34px;padding:0 8px;font-size:12px}.planning-cell button{border:1px solid var(--line-strong);min-height:34px;color:var(--text);cursor:pointer;background:#fbfaf7;border-radius:6px;font-size:12px;font-weight:720}.planning-cell.assigned{background:var(--accent-bg);grid-template-columns:1fr}.planning-cell.assigned button{text-align:left;background:0 0;border:0;gap:3px;width:100%;padding:0;display:grid}.planning-cell.assigned span{color:var(--accent-dark);font-size:12px}.school-app{color:#19201f;background:linear-gradient(#f4f7f2 0,#f8f8f4 190px,#f7f6f1 100%);min-height:100dvh}.school-app.planning-background-solid,.planning-branding-preview.planning-background-solid{background:linear-gradient(180deg, color-mix(in srgb, var(--planning-background-color,#f7f6f1) var(--planning-background-opacity,100%), transparent) 0, color-mix(in srgb, var(--planning-background-color,#f7f6f1) 72%, #fff) 220px, color-mix(in srgb, var(--planning-background-color,#f7f6f1) 82%, #f4f3ee) 100%)}.school-app.planning-background-gradient,.planning-branding-preview.planning-background-gradient{background:var(--planning-background-gradient), linear-gradient(180deg, #f4f7f2 0, #f8f8f4 190px, #f7f6f1 100%);background-position:var(--planning-background-position,0 0), 0 0;background-size:var(--planning-background-size,auto), auto;background-attachment:fixed}.school-app.planning-background-image,.planning-branding-preview.planning-background-image{background:linear-gradient(180deg, #f8faf6db, #f7f6f1eb), var(--planning-background-image) center / cover no-repeat, linear-gradient(180deg, #f4f7f2 0, #f8f8f4 190px, #f7f6f1 100%);background-attachment:fixed}.school-topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8faf6eb;border-bottom:1px solid #dfe5dc;grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto;align-items:center;gap:22px;min-height:74px;padding:12px 28px;display:grid;position:sticky;top:0}.school-brand,.school-user{align-items:center;gap:12px;min-width:0;display:flex}.school-brand strong,.school-user strong{color:#18201d;font-size:14px;display:block}.school-brand span,.school-user span{color:#68746e;font-size:12px;display:block}.school-brand-mark{background:var(--tenant-secondary,#edf4e9);width:36px;height:36px;color:var(--tenant-primary,#263d2e);letter-spacing:0;border:1px solid #cdd8cd;border-radius:10px;place-items:center;font-weight:820;display:grid;overflow:hidden}.school-brand-mark img{object-fit:contain;background:#fff;width:100%;height:100%;padding:4px}.school-nav{background:#fff;border:1px solid #dfe5dc;border-radius:10px;justify-self:center;align-items:center;gap:4px;min-width:0;padding:4px;display:inline-flex}.portal-app{min-height:100dvh;color:var(--portal-text,#19201f);background:linear-gradient(120deg, color-mix(in srgb, var(--tenant-secondary,#d9ead4) 34%, transparent) 0, transparent 38%), linear-gradient(180deg, var(--portal-bg,#f5f8f3) 0, color-mix(in srgb, var(--portal-bg,#f5f8f3) 64%, #fff) 240px, color-mix(in srgb, var(--portal-bg,#f5f8f3) 82%, #f4f3ee) 100%)}.portal-topbar{z-index:20;background:color-mix(in srgb, var(--portal-surface,#fff) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid #dfe5dc;padding:10px 24px;position:sticky;top:0}.portal-topbar-row{flex-wrap:wrap;align-items:center;gap:10px 14px;max-width:1680px;min-height:58px;margin:0 auto;display:flex}.portal-brand{flex:0 200px;min-width:0}.portal-brand .school-brand-mark{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 22%, #cdd8cd);border-radius:8px;width:42px;height:42px;box-shadow:0 10px 22px #1f272214}.portal-nav{background:#fffc;border:1px solid #dbe3d8;border-radius:10px;flex-wrap:wrap;flex:620px;justify-content:center;align-items:center;gap:4px;min-width:0;max-width:100%;padding:4px;display:inline-flex;overflow-x:visible;box-shadow:0 14px 32px #222b250f}.portal-nav a{color:#536058;white-space:nowrap;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 9px;font-size:12.5px;font-weight:760;transition:background .16s,color .16s,transform .16s,box-shadow .16s;display:inline-flex}.portal-nav a:hover{color:#19201f;background:#f1f6ef;transform:translateY(-1px)}.portal-nav a.active{background:var(--tenant-primary,#263d2e);color:#fff;box-shadow:0 10px 22px #23372a2e}.portal-nav a.portal-nav-primary{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 22%, #dbe3d8);min-width:104px;color:var(--tenant-primary,#263d2e);background:#fff;box-shadow:0 10px 22px #1f272214}.portal-nav a.portal-nav-primary:hover,.portal-nav a.portal-nav-primary.active{background:var(--tenant-primary,#263d2e);color:#fff;box-shadow:0 14px 30px #23372a38}.portal-account{flex:0 250px;align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.portal-account>div{min-width:0}.portal-account strong,.portal-account span{display:block}.portal-account strong{color:#18201d;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;overflow:hidden}.portal-account span{color:#68746e;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.portal-profile-menu{position:relative}.portal-profile-menu summary{color:#263d2e;cursor:pointer;background:#fff;border:1px solid #cdd8cd;border-radius:7px;place-items:center;width:34px;height:34px;list-style:none;display:grid}.portal-profile-menu summary svg{transition:transform .18s cubic-bezier(.2,.8,.2,1);transform:rotate(0)}.portal-profile-menu[open] summary svg{transform:rotate(90deg)}.portal-profile-menu summary::-webkit-details-marker{display:none}.portal-profile-menu form{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:4px;width:min(320px,100vw - 32px);padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 40px #1a201d24}.portal-profile-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:2px;padding:10px;transition:background .15s,transform .15s;display:grid}.portal-profile-menu button:hover,.portal-profile-menu button.active{background:#f2f6ef}.portal-profile-menu button:hover{transform:translate(2px)}.portal-school-switcher{flex:0 230px;min-width:0;position:relative}.portal-school-switcher summary{width:100%;max-width:100%;min-height:48px;color:var(--tenant-primary,#263d2e);cursor:pointer;background:#fff;border:1px solid #dbe3d8;border-radius:10px;align-items:center;gap:10px;padding:4px 10px 4px 6px;font-size:13px;font-weight:760;list-style:none;display:flex;box-shadow:0 10px 22px #1f27220f}.portal-school-switcher summary span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-school-switcher .school-brand-mark{flex:none}.portal-school-switcher .portal-brand-copy{flex:auto}.portal-school-switcher summary strong,.portal-school-switcher summary small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.portal-school-switcher summary strong{color:#18201d;font-size:14px}.portal-school-switcher summary small{color:#68746e;font-size:12px}.portal-school-switcher summary::-webkit-details-marker{display:none}.portal-school-menu{z-index:30;background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:4px;width:min(340px,100vw - 32px);padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 40px #1a201d24}.portal-school-menu a,.portal-school-picker-list a{color:#19201f;border-radius:7px;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:9px;transition:background .15s,transform .15s;display:grid}.portal-school-menu a:hover,.portal-school-menu a.active,.portal-school-picker-list a:hover,.portal-school-picker-list a.active{background:#f2f6ef}.portal-school-menu a:hover,.portal-school-picker-list a:hover{transform:translate(2px)}.portal-school-menu img,.portal-school-picker-list img,.portal-school-fallback{border-radius:8px;width:34px;height:34px}.portal-school-menu img,.portal-school-picker-list img{object-fit:contain;background:#fff;border:1px solid #e3e9e1;padding:3px}.portal-school-fallback{background:var(--tenant-primary,#263d2e);color:#fff;place-items:center;font-size:11px;font-weight:800;display:grid}.portal-school-menu strong,.portal-school-menu small,.portal-school-picker-list strong,.portal-school-picker-list small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.portal-school-menu small,.portal-school-picker-list small{color:#68746e;font-size:12px}.portal-school-picker-backdrop{z-index:200;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#f5f8f3f5,#f4f3eefa),#10161394;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.portal-school-picker{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:14px;width:min(430px,100%);padding:20px;display:grid;position:relative;box-shadow:0 24px 70px #0c120e40}.portal-school-picker>.icon-button{position:absolute;top:10px;right:10px}.portal-school-picker h2{color:#19201f;margin:0;padding-right:34px;font-size:20px}.portal-school-picker-list{gap:5px;display:grid}.portal-main{padding:30px 18px 48px}.portal-workspace{gap:20px;max-width:1480px;margin:0 auto;display:grid}.portal-page-enter{animation:.32s ease-out both portal-page-in}.portal-motion-card{animation:.34s ease-out both portal-card-in}.portal-eyebrow{border:1px solid color-mix(in srgb, var(--tenant-accent,#4e8fa8) 28%, #dfe5dc);min-height:24px;color:var(--tenant-primary,#263d2e);text-transform:uppercase;letter-spacing:.05em;background:#fff;border-radius:999px;align-items:center;margin-bottom:8px;padding:0 9px;font-size:11px;font-weight:820;display:inline-flex}.portal-hero{background:linear-gradient(90deg, color-mix(in srgb, var(--portal-banner-overlay,#fff) 94%, transparent) 0%, color-mix(in srgb, var(--portal-banner-overlay,#fff) 78%, transparent) 36%, color-mix(in srgb, var(--portal-banner-overlay,#fff) 34%, transparent) 68%, color-mix(in srgb, var(--portal-banner-overlay,#fff) 10%, transparent) 100%), var(--portal-banner-image,none) center / cover no-repeat, linear-gradient(135deg, var(--portal-banner-from,var(--portal-bg,#eef4eb)), var(--portal-banner-to,var(--portal-bg,#fff)));border:1px solid #dbe3d8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;min-height:286px;padding:34px;display:grid;overflow:hidden;box-shadow:0 18px 44px #1f272214}.portal-banner-gradient .portal-hero{background:linear-gradient(90deg, color-mix(in srgb, var(--portal-banner-overlay,#fff) 90%, transparent), color-mix(in srgb, var(--portal-banner-overlay,#fff) 40%, transparent)), linear-gradient(135deg, var(--portal-banner-from,#eef4eb), var(--portal-banner-to,#fff))}.portal-banner-solid .portal-hero{background:var(--portal-banner-from,#eef4eb)}.portal-hero h1{max-width:650px;color:var(--portal-banner-text,#15201b);letter-spacing:0;text-shadow:0 1px #ffffffb8;margin:0;font-size:48px;line-height:1.03}.portal-hero p{color:#536058;margin:12px 0 0;font-size:15px;font-weight:650}.portal-hero-side{justify-items:end;gap:12px;display:grid}.portal-hero-logo{width:82px;height:82px;color:var(--tenant-primary,#263d2e);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffdb;border:1px solid #ffffffc7;border-radius:8px;place-items:center;font-size:20px;font-weight:860;display:grid;overflow:hidden;box-shadow:0 20px 42px #1c2e382e}.portal-hero-logo img{object-fit:contain;width:100%;height:100%;padding:10px}.portal-hero-stats{grid-template-columns:repeat(3,minmax(92px,1fr));gap:10px;display:grid}.portal-hero-stats div,.portal-action-card,.portal-subscription-hero{background:#ffffffd1;border:1px solid #d7ded4eb;border-radius:8px;box-shadow:0 12px 28px #1f272212}.portal-hero-stats div{align-content:center;gap:6px;min-height:88px;padding:14px;display:grid}.portal-hero-stats span,.portal-subscription-hero span{color:#68746e;text-transform:uppercase;letter-spacing:.045em;font-size:12px;font-weight:780}.portal-hero-stats strong,.portal-subscription-hero strong{color:#17201d;font-size:34px;line-height:1}.portal-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.portal-action-card{color:#17201d;align-items:center;gap:13px;min-height:92px;padding:17px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.portal-action-card:hover{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 42%, #dbe3d8);transform:translateY(-2px);box-shadow:0 20px 42px #1f27221a}.portal-action-icon{background:var(--tenant-secondary,#edf4e9);width:38px;height:38px;color:var(--tenant-primary,#263d2e);border-radius:8px;flex:0 0 38px;place-items:center;display:inline-grid}.portal-action-card strong,.portal-action-card em{font-style:normal;display:block}.portal-action-card strong{font-size:14px}.portal-action-card em{color:#68746e;margin-top:3px;font-size:12px;font-weight:680}.portal-page-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.portal-page-heading h1{color:#18201d;margin:0;font-size:30px;line-height:1.08}.portal-page-heading p{color:#68746e;margin:7px 0 0;font-size:14px}.portal-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:18px;display:grid}.portal-overview-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:18px;display:grid}.portal-side-stack{gap:18px;display:grid}.portal-onboarding{max-width:520px;margin:52px auto}.portal-complete-form,.portal-customer-form{gap:16px;display:grid}.portal-lesson-list{gap:0;display:grid}.portal-lesson-row{border-top:1px solid #ecefe7;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.portal-lesson-row strong{color:#18201d;font-size:14px}.portal-lesson-row span{color:#68746e;font-size:13px}.portal-status-list,.portal-kv-list{display:grid}.portal-status-list>div,.portal-kv-list>div{border-top:1px solid #ecefe7;justify-content:space-between;align-items:center;gap:14px;padding:15px 18px;display:flex}.portal-status-list span,.portal-kv-list span{color:#68746e;font-size:12px;font-weight:740}.portal-status-list strong,.portal-kv-list strong{color:#18201d;align-items:center;gap:7px;font-size:14px;display:inline-flex}.portal-count-chip,.portal-status-chip{color:#286236;white-space:nowrap;background:#f3f8f1;border:1px solid #cddfca;border-radius:999px;align-items:center;gap:7px;min-height:30px;padding:0 10px;font-size:12px;font-weight:820;display:inline-flex}.portal-status-chip.warning{color:#7b5a12;background:#fff7df;border-color:#ecd9a2}.portal-timeline{padding:8px 0;display:grid}.portal-timeline-row{animation:.26s ease-out both portal-row-in;animation-delay:calc(var(--row-index,0) * 42ms);border-top:1px solid #ecefe7;grid-template-columns:minmax(180px,.72fr) minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 20px;display:grid}.portal-timeline-date strong,.portal-timeline-date span,.portal-timeline-detail strong,.portal-timeline-detail span{display:block}.portal-timeline-date strong,.portal-timeline-detail strong{color:#18201d;font-size:14px}.portal-timeline-date span,.portal-timeline-detail span{color:#68746e;font-size:13px}.portal-timeline-actions{justify-content:flex-end;display:flex}.portal-timeline-actions form{margin:0}.portal-cancel-lesson-button{color:#9f2f2d;border-color:#e4bcbc;min-height:32px;font-size:12px}.portal-cancel-lesson-button:hover:not(:disabled){color:#812422;background:#fff5f5}.portal-cancel-locked{color:#8a958e;white-space:nowrap;font-size:12px;font-weight:720}.portal-subscription-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:24px;display:grid}.portal-subscription-hero p{color:#68746e;margin:10px 0 0;font-size:14px}.portal-progress-ring{--progress:0%;background:conic-gradient(var(--tenant-primary,#263d2e) var(--progress), #e8eee4 0);border-radius:999px;place-items:center;width:104px;height:104px;animation:.62s ease-out both portal-spin-in;display:grid;position:relative}.portal-progress-ring:after{content:"";border-radius:inherit;background:#fff;position:absolute;inset:10px}.portal-progress-ring span{z-index:1;color:#17201d;letter-spacing:0;font-size:18px;font-weight:820;position:relative}.portal-product-list{display:grid}.portal-product-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.portal-add-subscription-button{gap:6px;min-height:34px;padding:0 12px;font-size:12px}.portal-product-row{border-top:1px solid #ecefe7;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 18px;display:grid}.portal-product-row strong,.portal-product-row span{display:block}.portal-product-row strong{color:#18201d;font-size:14px}.portal-product-row span,.portal-product-row em{color:#68746e;font-size:12px;font-style:normal;font-weight:700}.portal-product-payment-form{justify-content:flex-end;margin:0;display:flex}.portal-product-payment-form .secondary-button{min-height:32px;padding:0 11px;font-size:12px}.portal-product-actions,.portal-catalog-buy{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.portal-catalog-list{border-top:1px solid #ecefe7}.portal-catalog-row{grid-template-columns:34px minmax(0,1fr) minmax(126px,auto);align-items:start;gap:10px;min-width:0;padding:12px 14px}.portal-catalog-row:first-child{border-top:0}.portal-catalog-row-main{min-width:0}.portal-catalog-row-main strong,.portal-catalog-row-main span{overflow-wrap:anywhere;white-space:normal;min-width:0}.portal-catalog-buy em{text-align:right;color:#18201d;min-width:76px;font-size:13px;font-weight:820}.portal-catalog-rule{margin-top:4px}.portal-catalog-modal{overscroll-behavior:contain;background:#fff;border:1px solid #dfe7db;border-radius:12px;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:min(760px,100%);max-height:min(760px,100vh - 36px);padding:15px;display:grid;overflow:hidden;box-shadow:0 30px 90px #10171347}.portal-catalog-scroll{min-height:0;overflow:hidden}.portal-catalog-groups{overscroll-behavior:contain;scrollbar-gutter:stable;align-content:start;gap:14px;height:100%;min-height:0;padding-bottom:10px;padding-right:4px;display:grid;overflow-y:auto}.portal-catalog-basket-add{gap:6px;width:106px;min-height:32px;padding:0 11px;font-size:12px}.portal-catalog-basket-add.selected{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 46%, #d7ded4);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 9%, #fff);color:var(--tenant-primary,#263d2e)}.portal-catalog-quantity-control{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 38%, #d7ded4);background:#fff;border-radius:8px;grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;width:106px;min-height:32px;display:grid;overflow:hidden}.portal-catalog-quantity-control button{height:100%;color:var(--tenant-primary,#263d2e);cursor:pointer;background:#fff;border:0;place-items:center;display:grid}.portal-catalog-quantity-control button:disabled{opacity:.38;cursor:not-allowed}.portal-catalog-quantity-control strong{text-align:center;color:#17201d;min-width:0;font-size:13px;font-weight:800}.portal-catalog-basket-bar{background:#fbfcf8;border:1px solid #dfe7db;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px;display:grid}.portal-catalog-basket-button,.portal-catalog-clear{color:#17201d;cursor:pointer;background:#fff;border:1px solid #d7ded4;border-radius:8px;place-items:center;display:grid}.portal-catalog-basket-button{width:42px;height:38px;position:relative}.portal-catalog-basket-button span{background:var(--tenant-primary,#263d2e);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font-size:11px;font-weight:860;display:grid;position:absolute;top:-7px;right:-7px}.portal-catalog-clear{width:34px;height:34px}.portal-catalog-basket-bar>div{min-width:0}.portal-catalog-basket-bar strong,.portal-catalog-basket-bar span{display:block}.portal-catalog-basket-bar strong{color:#17201d;font-size:13px}.portal-catalog-basket-bar span{color:#68746e;font-size:12px;font-weight:760}.portal-catalog-checkout{min-height:36px;padding:0 14px}.portal-catalog-checkout-error{color:#9f2e2e;grid-column:1/-1;margin:0;font-size:12px;font-weight:760}.portal-catalog-group{background:#fbfcf8;border:1px solid #e3e9df;border-radius:8px;overflow:hidden}.portal-catalog-group-title{border-bottom:1px solid #e8eee4;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.portal-catalog-group-title strong{color:#17201d;font-size:14px}.portal-catalog-group-title span{color:#4f5a54;background:#eef4eb;border-radius:999px;place-items:center;min-width:26px;height:26px;font-size:12px;font-weight:820;display:inline-grid}.portal-request-form{gap:16px;display:grid}.portal-disabled-action{opacity:.84}.portal-compact-list{display:grid}.portal-compact-list>div{color:#68746e;border-top:1px solid #ecefe7;align-items:flex-start;gap:10px;padding:14px 18px;font-size:13px;display:flex}.portal-compact-lesson-row{position:relative;padding-right:48px!important}.portal-compact-lesson-row>span{min-width:0}.portal-compact-lesson-row form,.portal-compact-lesson-row>.portal-compact-cancel-button{margin:0;position:absolute;top:12px;right:12px}.portal-compact-cancel-button{color:#9f2f2d;cursor:pointer;background:#fff;border:1px solid #e4bcbc;border-radius:7px;place-items:center;width:28px;height:28px;transition:background .15s,border-color .15s,color .15s,transform .15s;display:grid}.portal-compact-cancel-button:hover{color:#812422;background:#fff5f5;border-color:#d99a9a;transform:translateY(-1px)}.portal-compact-cancel-button.disabled,.portal-compact-cancel-button:disabled{color:#a0aaa4;cursor:not-allowed;background:#f2f5f0;border-color:#e4e9e0;transform:none}.portal-compact-list strong{color:#18201d;font-size:14px;display:block}.portal-success-callout{color:#286236;background:#f3f9f0;border:1px solid #cfe2c9;border-radius:8px;align-items:center;gap:9px;min-height:44px;padding:0 14px;font-size:13px;font-weight:760;animation:.26s ease-out both portal-card-in;display:flex}.portal-schedule-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:0;display:grid}.portal-week-panel{min-width:0}.portal-week-controls{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.portal-sport-filter{border-color:#d7ded4;min-height:36px;padding:3px}.portal-sport-filter a{min-height:28px;color:var(--muted-strong);border-radius:4px;justify-content:center;align-items:center;padding:0 11px;font-size:13px;font-weight:780;text-decoration:none;display:inline-flex}.portal-sport-filter a.active{background:var(--tenant-primary,#2f5f3d);color:#fff}.portal-week-date-picker{min-height:36px;color:var(--tenant-primary,#263d2e);background:#fff;border:1px solid #d7ded4;border-radius:8px;align-items:center;gap:7px;padding:0 9px;display:inline-flex;box-shadow:0 8px 18px #1f27220b}.portal-week-date-picker input{color:#18201d;background:0 0;border:0;outline:0;width:128px;min-height:32px;padding:0;font-size:13px;font-weight:760}.portal-week-date-picker:focus-within{border-color:var(--tenant-primary,#263d2e);box-shadow:0 0 0 3px color-mix(in srgb, var(--tenant-primary,#263d2e) 12%, transparent)}.portal-recurring-planner{align-items:center;display:inline-flex;position:relative}.portal-recurring-trigger{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 24%, #d7ded4);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 58%, #fff);min-height:36px;color:var(--tenant-primary,#263d2e);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:820;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s;display:inline-flex;box-shadow:0 8px 18px #1f27220b}.portal-recurring-trigger:hover{border-color:var(--tenant-primary,#263d2e);transform:translateY(-1px);box-shadow:0 14px 28px #1f27221a}.portal-group-trigger{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 26%, #d7ded4);min-height:36px;color:var(--tenant-primary,#263d2e);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:820;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s;display:inline-flex;box-shadow:0 8px 18px #1f27220b}.portal-group-trigger:hover{border-color:var(--tenant-primary,#263d2e);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 36%, #fff);transform:translateY(-1px);box-shadow:0 14px 28px #1f27221a}.portal-recurring-popover{z-index:30;background:#fffffffa;border:1px solid #dfe7db;border-radius:10px;gap:12px;width:min(420px,100vw - 32px);padding:14px;animation:.17s ease-out both portal-card-in;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 24px 70px #1f27222e}.portal-recurring-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.portal-recurring-head span{color:#18201d;align-items:center;gap:8px;font-size:14px;font-weight:840;display:inline-flex}.portal-recurring-head button{color:#4e5c54;cursor:pointer;background:#fff;border:1px solid #dfe7db;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.portal-recurring-fields{grid-template-columns:1fr 1fr .8fr;gap:9px;display:grid}.portal-recurring-fields label{color:#647069;gap:5px;font-size:11px;font-weight:820;display:grid}.portal-recurring-fields select,.portal-recurring-fields input{color:#18201d;background:#fff;border:1px solid #d7ded4;border-radius:8px;width:100%;min-height:36px;padding:7px 9px;font-size:13px;font-weight:760}.portal-recurring-actions{align-items:center;gap:8px;display:flex}.portal-recurring-search,.portal-recurring-book{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 12px;font-size:13px;font-weight:820;display:inline-flex}.portal-recurring-book{background:var(--tenant-primary,#263d2e);color:#fff;border:0}.portal-recurring-book:disabled,.portal-recurring-search:disabled{cursor:wait;opacity:.66}.portal-recurring-results{gap:6px;max-height:230px;padding-right:3px;display:grid;overflow:auto}.portal-recurring-result{color:#8a958e;background:#f5f7f3;border:1px solid #e4e9e0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:7px 9px;display:flex}.portal-recurring-result>span{min-width:0}.portal-recurring-result.available{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 24%, #d7ded4);color:#18201d;background:#fff}.portal-recurring-result.excluded{color:#8a958e;background:#f2f5f0;border-color:#e4e9e0}.portal-recurring-result.excluded strong,.portal-recurring-result.excluded span,.portal-recurring-result.excluded em{color:#8a958e}.portal-recurring-result strong,.portal-recurring-result em{font-style:normal;display:block}.portal-recurring-result strong{font-size:13px;font-weight:820}.portal-recurring-result em{color:#66736b;flex:none;font-size:12px;font-weight:800}.portal-recurring-toggle{color:#9f2f2d;cursor:pointer;background:#fff;border:1px solid #e4bcbc;border-radius:7px;flex:0 0 28px;place-items:center;width:28px;height:28px;transition:background .15s,border-color .15s,color .15s,transform .15s;display:grid}.portal-recurring-toggle:hover{color:#812422;background:#fff5f5;border-color:#d99a9a;transform:translateY(-1px)}.portal-recurring-result.excluded .portal-recurring-toggle{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 24%, #d7ded4);color:var(--tenant-primary,#263d2e);background:#fff}.portal-recurring-result.excluded .portal-recurring-toggle:hover{border-color:var(--tenant-primary,#263d2e);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 46%, #fff);color:var(--tenant-primary,#263d2e)}.portal-recurring-message{color:#286236;background:#f3f9f0;border-radius:8px;align-items:center;min-height:34px;padding:0 10px;font-size:12px;font-weight:800;display:flex}.portal-friends-panel{gap:16px;display:grid}.portal-page-action-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.portal-page-action-row h2{color:#18201d;margin:0;font-size:22px;line-height:1.1}.portal-page-action-row p{color:#637068;margin:4px 0 0;font-size:13px;font-weight:700}.portal-floating-add-button{background:var(--tenant-primary,#263d2e);color:#fff;cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:13px;font-weight:840;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 16px 34px #1f27222e}.portal-floating-add-button:hover{transform:translateY(-1px);box-shadow:0 20px 42px #1f272238}.portal-friend-status{color:#286236;background:#f3f9f0;border:1px solid #cfe2c9;border-radius:8px;align-items:center;min-height:42px;padding:0 13px;font-size:13px;font-weight:800;animation:.18s ease-out both portal-card-in;display:flex}.portal-friend-section{gap:13px;display:grid}.portal-friend-list{gap:9px;display:grid}.portal-friend-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.portal-friend-card,.portal-friend-request-row,.portal-friend-empty{background:#fff;border:1px solid #e1e8dc;border-radius:9px;box-shadow:0 10px 24px #1f27220b}.portal-friend-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:82px;padding:12px;display:grid}.portal-friend-request-row{justify-content:space-between;align-items:center;gap:12px;min-height:62px;padding:10px 12px;display:flex}.portal-friend-avatar{background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 72%, #fff);width:42px;height:42px;color:var(--tenant-primary,#263d2e);text-transform:uppercase;border-radius:999px;flex:0 0 42px;place-items:center;font-size:13px;font-weight:860;display:grid}.portal-friend-identity{gap:2px;min-width:0;display:grid}.portal-friend-identity strong,.portal-friend-empty strong{color:#18201d;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:840;overflow:hidden}.portal-friend-identity em,.portal-friend-empty em{color:#68746e;font-size:12px;font-style:normal;font-weight:740}.portal-friend-request-actions{flex:none;align-items:center;gap:7px;display:flex}.portal-friend-accept,.portal-friend-decline{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 11px;font-size:12px;font-weight:820;display:inline-flex}.portal-friend-accept{background:var(--tenant-primary,#263d2e);color:#fff;border:0}.portal-friend-decline{color:#5f6e65;background:#fff;border:1px solid #dfe7db}.portal-friend-accept:disabled,.portal-friend-decline:disabled{cursor:wait;opacity:.68}.portal-friend-chip{color:#66736b;background:#f2f5f0;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:820;display:inline-flex}.portal-friend-remove{color:#9f2f2d;cursor:pointer;background:#fff;border:1px solid #e5c8c8;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.portal-friend-remove:hover:not(:disabled){background:#fff5f5}.portal-friend-remove:disabled{cursor:wait;opacity:.68}.portal-friend-empty{color:#68746e;align-items:center;gap:10px;min-height:82px;padding:13px;display:flex}.portal-friend-empty span{gap:2px;display:grid}.portal-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1017136b;place-items:center;padding:18px;animation:.15s ease-out both portal-card-in;display:grid;position:fixed;inset:0}.portal-friend-modal{background:#fff;border:1px solid #dfe7db;border-radius:12px;gap:14px;width:min(420px,100%);padding:15px;display:grid;box-shadow:0 30px 90px #10171347}.portal-group-modal{background:#fff;border:1px solid #dfe7db;border-radius:12px;gap:14px;width:min(620px,100%);padding:15px;display:grid;box-shadow:0 30px 90px #10171347}.portal-group-preferences{background:#fbfcf8;border:1px solid #e1e8dc;border-radius:10px;grid-template-columns:minmax(110px,.8fr) minmax(160px,1.2fr) minmax(96px,.7fr) minmax(96px,.7fr);gap:10px;padding:12px;display:grid}.portal-group-preferences label,.portal-group-friend-field{color:#647069;gap:6px;font-size:12px;font-weight:820;display:grid}.portal-group-preferences input,.portal-group-preferences select{color:#18201d;background:#fff;border:1px solid #d7ded4;border-radius:8px;min-height:38px;padding:7px 9px;font-size:13px;font-weight:760}.portal-group-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.portal-group-friend-field{position:relative}.portal-group-friend-field .lesson-autocomplete{color:var(--tenant-primary,#263d2e);background:#fff;border:1px solid #d7ded4;border-radius:8px;align-items:center;gap:7px;padding:0 9px;display:flex;position:relative}.portal-group-friend-field .lesson-autocomplete input{border:0;min-height:38px;padding:0;font-size:13px}.portal-group-suggestions{gap:8px;max-height:230px;padding-right:3px;display:grid;overflow:auto}.portal-group-suggestion{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 24%, #d7ded4);color:#18201d;cursor:pointer;text-align:left;background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:9px 10px;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #1f27220f}.portal-group-suggestion:before{content:"";background:color-mix(in srgb, var(--tenant-primary,#263d2e) 10%, transparent);opacity:0;pointer-events:none;border-radius:999px;width:82px;height:82px;position:absolute;inset:auto -24px -34px auto;transform:scale(.2)}.portal-group-suggestion:hover:not(:disabled){border-color:var(--tenant-primary,#263d2e);transform:translateY(-1px);box-shadow:0 18px 34px #1f27221f}.portal-group-suggestion.booking,.portal-group-suggestion.booked{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 50%, #d7ded4);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 64%, #fff)}.portal-group-suggestion.booked{animation:.52s cubic-bezier(.2,.9,.2,1) both portal-slot-booked}.portal-group-suggestion.booked:before{animation:.52s ease-out both portal-slot-ripple}.portal-group-suggestion:disabled{cursor:wait}.portal-group-suggestion strong,.portal-group-suggestion em{align-items:center;gap:6px;font-style:normal;display:flex}.portal-group-suggestion strong{font-size:13px;font-weight:840}.portal-group-suggestion em{color:#66736b;margin-top:3px;font-size:12px;font-weight:780}.portal-group-suggestion-meta{color:var(--tenant-primary,#263d2e);flex:none;align-items:center;gap:8px;font-size:12px;font-weight:840;display:inline-flex}.portal-group-suggestion-meta>span{background:var(--tenant-primary,#263d2e);color:#fff;border-radius:999px;place-items:center;width:26px;height:26px;display:grid}.portal-friend-add-form{gap:12px;display:grid}.portal-friend-add-form label{color:#647069;gap:7px;font-size:12px;font-weight:820;display:grid}.portal-friend-add-form label>span{min-height:40px;color:var(--tenant-primary,#263d2e);background:#fff;border:1px solid #d7ded4;border-radius:9px;align-items:center;gap:8px;padding:0 10px;display:flex}.portal-friend-add-form input{color:#18201d;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:14px}.portal-preferences-panel{gap:16px;display:grid}.portal-preference-card,.portal-calendar-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid}.portal-calendar-card{grid-template-columns:auto minmax(0,1fr);align-items:start}.portal-preference-icon{background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 68%, #fff);width:44px;height:44px;color:var(--tenant-primary,#263d2e);border-radius:9px;place-items:center;display:grid}.portal-preference-card h2,.portal-calendar-card h2{color:#18201d;margin:0;font-size:17px;line-height:1.15}.portal-preference-card p,.portal-calendar-card p{color:#68746e;margin:5px 0 0;font-size:13px;font-weight:700}.portal-toggle{cursor:pointer;width:54px;height:32px;display:inline-flex;position:relative}.portal-toggle input{opacity:0;pointer-events:none;position:absolute}.portal-toggle span{background:#e8eee4;border:1px solid #d7ded4;border-radius:999px;width:100%;height:100%;transition:background .16s,border-color .16s}.portal-toggle span:after{content:"";background:#fff;border-radius:999px;width:24px;height:24px;transition:transform .18s cubic-bezier(.2,.9,.2,1);position:absolute;top:4px;left:4px;box-shadow:0 5px 12px #1f272229}.portal-toggle input:checked+span{border-color:var(--tenant-primary,#263d2e);background:var(--tenant-primary,#263d2e)}.portal-toggle input:checked+span:after{transform:translate(22px)}.portal-toggle input:disabled+span{opacity:.7;cursor:wait}.portal-calendar-copy{gap:12px;min-width:0;display:grid}.portal-calendar-url{min-width:0;color:var(--tenant-primary,#263d2e);background:#fff;border:1px solid #d7ded4;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 8px 8px 11px;display:grid}.portal-calendar-url input{color:#39443d;background:0 0;border:0;outline:0;min-width:0;font-size:13px}.portal-calendar-url button{background:var(--tenant-primary,#263d2e);color:#fff;cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:0 11px;font-size:12px;font-weight:820;display:inline-flex}.portal-week-calendar{background:linear-gradient(#fbfdfa 0,#f7faf6 100%);grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:10px;padding:12px;display:grid;overflow-x:visible}.portal-day-column{background:#ffffffe0;border:1px solid #e1e8dc;border-radius:10px;align-content:start;min-width:0;display:grid;overflow:hidden;box-shadow:0 10px 24px #1f27220e}.portal-day-column.selected{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 44%, #d7ded4);box-shadow:0 14px 32px #1f272217}.portal-day-column:last-child{border-right:1px solid #e1e8dc}.portal-day-head{background:linear-gradient(#fff 0%,#f6faf4 100%);border-bottom:1px solid #e5ebe2;align-content:center;gap:2px;min-height:64px;padding:0 12px 10px;display:grid}.portal-day-head strong{color:#18201d;text-transform:capitalize;font-size:14px}.portal-day-head span{color:#68746e;font-size:12px;font-weight:700}.portal-day-column.selected .portal-day-head{background:linear-gradient(180deg, color-mix(in srgb, var(--tenant-secondary,#edf4e9) 78%, #fff) 0%, #fff 100%)}.portal-day-column.selected .portal-day-head strong{color:var(--tenant-primary,#263d2e)}.portal-slot-list{gap:8px;padding:11px;display:grid}.portal-slot-form{margin:0}.portal-slot-button{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 18%, #d7ded4);color:#18201d;cursor:pointer;text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;width:100%;min-height:48px;padding:7px 9px;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 18px #1f27220b}.portal-slot-button:before{content:"";background:color-mix(in srgb, var(--tenant-primary,#263d2e) 10%, transparent);opacity:0;pointer-events:none;border-radius:999px;width:68px;height:68px;position:absolute;inset:-34px auto auto -34px;transform:scale(.2)}.portal-slot-action-icon{background:var(--tenant-primary,#263d2e);color:#fff;border-radius:999px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:15px;font-weight:820;line-height:1;transition:background .16s,color .16s,transform .18s;display:grid}.portal-slot-button:hover:not(:disabled){border-color:var(--tenant-primary,#263d2e);transform:translateY(-1px);box-shadow:0 14px 28px #1f27221a}.portal-slot-button:hover:not(:disabled) .portal-slot-action-icon{transform:rotate(90deg)scale(1.06)}.portal-slot-button.planned{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 42%, #d7ded4);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 64%, #fff)}.portal-slot-button.planned .portal-slot-action-icon{background:#9f2f2d}.portal-slot-button.planned:hover:not(:disabled){border-color:#b74440;box-shadow:0 14px 28px #8024221a}.portal-slot-button.planned:hover:not(:disabled) .portal-slot-action-icon{transform:scale(1.06)}.portal-slot-button.planned:disabled{cursor:not-allowed;opacity:.76}.portal-slot-button.group-planned{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 50%, #d7ded4);background:linear-gradient(135deg, color-mix(in srgb, var(--tenant-secondary,#edf4e9) 72%, #fff), #fff)}.portal-slot-group-badge{background:color-mix(in srgb, var(--tenant-primary,#263d2e) 12%, #fff);width:19px;height:19px;color:var(--tenant-primary,#263d2e);vertical-align:-4px;border-radius:999px;place-items:center;margin-left:7px;display:inline-grid}.portal-slot-button.booking{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 42%, #d7ded4);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 58%, #fff);cursor:progress}.portal-slot-button.booked{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 52%, #d7ded4);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 72%, #fff);animation:.52s cubic-bezier(.2,.9,.2,1) both portal-slot-booked}.portal-slot-button.booked:before{animation:.52s ease-out both portal-slot-ripple}.portal-slot-button.booked .portal-slot-action-icon{background:color-mix(in srgb, var(--tenant-primary,#263d2e) 88%, #1f7a4c);transform:scale(1.08)}.portal-slot-button.cancelled{background:#f3f9f0;border-color:#cfe2c9;animation:.42s cubic-bezier(.2,.9,.2,1) both portal-slot-booked}.portal-slot-button.cancelled .portal-slot-action-icon{background:#286236}.portal-slot-button.error{background:#fff6f3;border-color:#d96d54}.portal-slot-button.error .portal-slot-action-icon{background:#d96d54}.portal-slot-button strong,.portal-slot-button em{font-style:normal;display:block}.portal-slot-button strong{font-size:13px;font-weight:820}.portal-slot-button em{color:#5f6e65;margin-top:1px;font-size:11px;font-weight:760}.portal-slot-button.disabled{color:#8a958e;cursor:not-allowed;box-shadow:none;background:#f2f5f0;border-color:#e4e9e0}.portal-slot-button.disabled .portal-slot-action-icon{background:#d7ded4}.portal-slot-button.disabled em{color:#8a958e}.portal-cancel-modal{background:#fff;border:1px solid #dfe7db;border-radius:12px;gap:14px;width:min(380px,100vw - 32px);padding:15px;animation:.17s ease-out both portal-card-in;display:grid;box-shadow:0 30px 90px #10171347}.portal-cancel-modal p{color:#536058;margin:0;font-size:13px;font-weight:760;line-height:1.45}.portal-cancel-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@keyframes portal-slot-booked{0%{transform:translateY(0)scale(1)}42%{transform:translateY(-2px)scale(1.025);box-shadow:0 18px 34px #1f272221}to{transform:translateY(0)scale(1)}}@keyframes portal-slot-ripple{0%{opacity:.5;transform:scale(.2)}to{opacity:0;transform:scale(1.8)}}@media (prefers-reduced-motion:reduce){.portal-slot-button,.portal-slot-action-icon{transition:none}.portal-slot-button.booked,.portal-slot-button.booked:before{animation:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.tooltip-content{white-space:nowrap;display:inline-block}.tooltip-content-wrapper{height:16px;animation:.15s ease-out fadeIn;position:relative;overflow:hidden}.tooltip-label{opacity:1;transition:all .8s cubic-bezier(.34,1.56,.64,1);position:absolute;top:0;left:0;right:0;transform:translateY(0)}[data-state=closed]{opacity:0;transition:opacity .15s ease-out}[data-state=open]{opacity:1;transition:opacity .15s ease-out,width .8s cubic-bezier(.34,1.56,.64,1)}.tooltip-animation{animation:.3s ease-in-out fadeIn,.3s ease-in-out slideIn}.portal-loading{color:#536058;align-content:center;place-items:center;gap:14px;min-height:320px;font-size:13px;font-weight:760;display:grid}.portal-orbit-spinner,.portal-mini-spinner{border:2px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 24%, transparent);border-top-color:var(--tenant-primary,#263d2e);border-radius:999px;animation:.76s linear infinite portal-spinner;display:inline-block}.portal-orbit-spinner{width:42px;height:42px;box-shadow:0 0 0 7px color-mix(in srgb, var(--tenant-secondary,#edf4e9) 62%, transparent)}.portal-mini-spinner{flex:0 0 15px;width:15px;height:15px}.portal-account-kv{margin-top:12px}.portal-link-notice{margin:16px}.account-tree-node.current-link{border-color:var(--tenant-accent,#4e8fa8);background:#f7fbfb}.school-nav a{color:#5d6862;white-space:nowrap;border-radius:7px;align-items:center;gap:8px;min-height:36px;padding:0 13px;font-size:13px;font-weight:680;display:inline-flex}.school-nav a:hover{background:var(--tenant-secondary,#eef4eb);color:#19201f}.school-user{justify-self:end}.school-settings-link{color:#263d2e;background:#fff;border:1px solid #d7ded4;border-radius:8px;flex:none;place-items:center;width:34px;height:34px;transition:background .15s,color .15s,transform .15s,box-shadow .15s;display:inline-grid}.school-settings-link:hover{background:var(--tenant-secondary,#eef4eb);color:#18201d;transform:translateY(-1px);box-shadow:0 8px 18px -17px #19201f6b}.school-settings-link:active{transform:translateY(0)}.school-user .signout-button{min-height:34px}.school-main{min-width:0}.home-dashboard{gap:18px;display:grid}.home-dashboard-header{justify-content:space-between;align-items:end;gap:16px;display:flex}.home-dashboard-header h1{color:#17201d;letter-spacing:0;margin:0;font-size:clamp(28px,3vw,42px);line-height:1.04}.home-date-chip{color:#435049;background:#fff;border:1px solid #d7ded4;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:0 12px;font-size:13px;font-weight:720;display:inline-flex}.home-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.home-stat-card{color:#263d2e;background:#fff;border:1px solid #dfe5dc;border-radius:8px;align-content:space-between;gap:14px;min-height:154px;padding:15px;display:grid;overflow:hidden;box-shadow:0 18px 40px -38px #19201f5c}.home-stat-card.green{color:#2f6d3a}.home-stat-card.blue{color:#2f6f9d}.home-stat-card.dark{color:#263d2e}.home-stat-card.red{color:#a84642}.home-stat-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.home-stat-card-top span{background:color-mix(in srgb, currentColor 12%, #fff);border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.home-stat-card small,.home-mini-stat small{color:#68746e;font-size:12px;font-weight:720}.home-stat-card strong{color:#17201d;font-size:34px;line-height:1}.home-sparkline{opacity:.9;width:100%;height:44px}.home-insight-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px;display:grid}.home-insight-panel{background:#fff;border:1px solid #dfe5dc;border-radius:8px;box-shadow:0 18px 40px -38px #19201f5c}.home-metric-list,.home-mini-stats{gap:10px;padding:16px 18px 18px;display:grid}.home-metric-row{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.home-metric-row span{color:#435049}.home-metric-row strong{color:#17201d;font-size:13px}.home-metric-row small{color:#435049;font-size:12px;font-weight:780}.home-metric-bar{background:#eef2eb;border-radius:999px;grid-column:2/-1;height:7px;overflow:hidden}.home-metric-bar i{border-radius:inherit;background:var(--tenant-primary,#263d2e);height:100%;display:block}.home-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.home-mini-stat{background:#fbfcf8;border:1px solid #edf1e9;border-radius:8px;gap:6px;min-height:94px;padding:12px;display:grid}.home-mini-stat span{color:var(--tenant-primary,#263d2e)}.home-mini-stat strong{color:#17201d;font-size:24px;line-height:1}.home-conflict-panel{border-color:#e5c8c6}.home-conflict-list{gap:10px;padding:16px 18px 18px;display:grid}.home-conflict-item{color:inherit;background:snow;border:1px solid #f0d8d6;border-radius:8px;grid-template-columns:190px minmax(0,1fr);gap:14px;padding:12px;text-decoration:none;transition:background .16s,border-color .16s,transform .16s;display:grid}.home-conflict-item:hover{background:#fff5f4;border-color:#e7bbb8;transform:translateY(-1px)}.home-conflict-time{align-content:start;gap:4px;display:grid}.home-conflict-time strong{color:#17201d;font-size:13px}.home-conflict-time span{color:#8c4d4d;font-size:12px;font-weight:760}.home-conflict-customers{align-content:start;gap:6px;display:grid}.home-conflict-customer{color:#17201d;background:#fff;border:1px solid #f0d8d6;border-radius:999px;align-items:center;width:fit-content;padding:5px 9px;font-size:12px;font-weight:820;display:inline-flex}.home-conflict-customer em{color:#8c4d4d;margin-left:4px;font-style:normal}.home-conflict-empty{color:#435049;background:#fbfcf8;border:1px solid #edf1e9;border-radius:8px;align-items:center;gap:9px;min-height:58px;padding:12px;font-size:13px;font-weight:720;display:flex}.home-conflict-empty svg{color:#2f6d3a}.school-content{width:min(100%,1840px);margin:0 auto;padding:30px 28px 44px}.school-page-heading{justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:22px;display:flex}.school-page-heading h1{color:#17201d;letter-spacing:0;margin:0;font-size:clamp(28px,3vw,42px);line-height:1.04}.school-page-heading p{color:#66716b;max-width:760px;margin:8px 0 0;font-size:14px;line-height:1.55}.school-page-kicker{color:#435049;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:780;display:block}.planning-page-toolbar{justify-content:center;align-items:center;margin-bottom:14px;display:flex}.planning-workspace{width:100%;max-width:100%}.planning-undo-status{z-index:12000;color:#fff;background:#17201d;border:1px solid #dfe5dc;border-radius:8px;align-items:center;min-height:36px;padding:0 13px;font-size:13px;font-weight:760;animation:.18s ease-out both planning-undo-status-in;display:inline-flex;position:fixed;bottom:22px;right:22px;box-shadow:0 12px 28px #17201d2e}.lesson-date-controls{align-items:center;gap:10px;display:flex}.planning-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.quick-group-trigger{flex:none}.planning-date-button-group{background:#fff;border:1px solid #d7ded4;border-radius:7px;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 9px 24px -24px #19201f75}.planning-date-nav-button{color:#263d2e;cursor:pointer;background:#fff;border:0;border-right:1px solid #d7ded4;place-items:center;width:36px;height:34px;transition:background .14s,color .14s,transform .14s;display:inline-grid}.planning-date-nav-button:last-child{border-right:0}.planning-date-nav-button:hover:not(:disabled){color:#18201d;background:#eef4eb}.planning-date-nav-button:active:not(:disabled){transform:translateY(1px)}.planning-date-nav-button:disabled{cursor:wait;opacity:.72}.planning-date-jump{align-items:center;gap:6px;display:inline-flex}.planning-date-jump input{color:#18201d;background:#fff;border:1px solid #d7ded4;border-radius:7px;width:142px;min-height:34px;padding:6px 8px;font-size:13px}.planning-date-go-button{color:#fff;cursor:pointer;background:#2f80d0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 13px;font-weight:760;transition:background .14s,transform .14s,box-shadow .14s;display:inline-flex}.planning-date-go-button:hover:not(:disabled){background:#256fb7;box-shadow:0 8px 18px -16px #144f82b3}.planning-date-go-button:active:not(:disabled){transform:translateY(1px)}.planning-date-go-button:disabled{cursor:wait;opacity:.72}.evaluation-panel .panel-body{padding-top:0}.evaluation-settings-toggle{align-items:flex-start;margin:4px 0 10px}.evaluation-table-wrap{width:100%;overflow-x:auto}.evaluation-board{gap:16px;padding-top:16px;display:grid}.evaluation-piste-tabs{scrollbar-width:none;margin-bottom:0;overflow-x:auto}.evaluation-piste-tabs::-webkit-scrollbar{display:none}.evaluation-piste-tabs button{white-space:nowrap}.evaluation-piste-tabs button em{background:var(--surface-muted);min-width:22px;min-height:22px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;font-size:.74rem;font-style:normal;display:inline-flex}.evaluation-piste-tabs button.active em{color:var(--text);background:#fff}.integration-tabs button:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 60%, transparent);outline-offset:2px}.integration-tabs button:disabled{cursor:not-allowed;opacity:.55}.school-app .integration-tabs button{border-radius:7px;font-weight:500}.school-app .integration-tabs button.active{background:var(--text);color:#fff}.evaluation-hour-list{gap:18px;display:grid}.evaluation-hour-group{gap:8px;display:grid}.evaluation-hour-heading{border-bottom:1px solid var(--border);min-height:32px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;display:flex}.evaluation-hour-heading strong{color:var(--text);font-size:1rem}.evaluation-hour-heading span{font-size:.78rem;font-weight:800}.evaluation-person-list{gap:7px;display:grid}.evaluation-person-card{border:1px solid color-mix(in srgb, var(--evaluation-level-color,#cad4c8) 38%, var(--border));border-left:5px solid var(--evaluation-level-color,#9aa0a6);background:var(--evaluation-level-bg,var(--surface));border-radius:8px;grid-template-columns:minmax(220px,1fr) auto minmax(210px,.48fr);align-items:center;gap:12px;padding:8px 10px;display:grid}.evaluation-person-main{align-items:center;gap:9px;min-width:0;display:flex}.evaluation-person-slot{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.evaluation-person-slot span{border:1px solid var(--border);min-height:26px;color:var(--muted-strong);background:#ffffffa3;border-radius:999px;align-items:center;padding:0 9px;font-size:.74rem;font-weight:800;display:inline-flex}.evaluation-table th,.evaluation-table td{vertical-align:middle}.evaluation-customer-link{align-items:center;gap:9px;min-width:0;display:inline-flex}.evaluation-customer-link strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:820;overflow:hidden}.evaluation-customer-number{background:var(--tenant-primary,#1d2a24);color:#fff;border-radius:999px;flex:none;align-items:center;min-height:24px;padding:0 9px;font-size:12px;font-weight:780;display:inline-flex}.evaluation-count-chip{border:1px solid var(--border);background:var(--surface-muted);min-height:28px;color:var(--text);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:.78rem;font-weight:800;display:inline-flex}.evaluation-level-form{gap:5px;min-width:210px;display:grid}.evaluation-level-select{appearance:none;border:2px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 26%, var(--border));background:linear-gradient(45deg, transparent 50%, var(--muted-strong) 50%) calc(100% - 18px) 17px / 6px 6px no-repeat, linear-gradient(135deg, var(--muted-strong) 50%, transparent 50%) calc(100% - 12px) 17px / 6px 6px no-repeat, #fff;width:100%;min-height:40px;color:var(--text);font:inherit;border-radius:8px;padding:0 34px 0 12px;font-weight:700;box-shadow:0 2px #17201d0a}.evaluation-level-select:focus{outline:3px solid color-mix(in srgb, var(--accent) 22%, transparent);border-color:var(--accent)}.evaluation-level-change{color:color-mix(in srgb, var(--text) 72%, var(--evaluation-level-color,#9aa0a6));text-align:center;font-size:11px;font-weight:760}@media (max-width:760px){.evaluation-person-card{grid-template-columns:1fr;align-items:stretch}.evaluation-person-slot{justify-content:flex-start}.evaluation-level-form{min-width:0}}.piste-planning-page{gap:16px;display:grid}.piste-planning-controls{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;display:flex}.piste-date-form,.piste-opening-form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.piste-template-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.piste-template-actions .icon-button{color:#263d2e;background:#fff;border-color:#d5ddd3;width:38px;height:38px}.piste-template-actions .icon-button:hover{background:#f8faf5;border-color:#9dc5b6}.piste-date-form input,.piste-opening-form select,.piste-range-form input,.piste-range-form select,.piste-cell-form select{color:#18201d;background:#fff;border:1px solid #d7ded4;border-radius:7px;min-height:36px;padding:7px 9px;font-size:13px}.piste-range-panel{overflow:hidden}.piste-range-form{grid-template-columns:repeat(7,minmax(118px,1fr)) auto;align-items:end;gap:10px;display:grid}.piste-note-field{min-width:150px}.piste-board-shell{padding-bottom:12px;overflow-x:auto}.piste-drag-hint{color:#68746e;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:12px;font-weight:720;display:flex}.piste-drag-hint b{color:#17201d;font-weight:820}.piste-board-table{table-layout:fixed;border-spacing:0;background:#fff;border:1px solid #dfe5dc;border-radius:8px;width:100%;min-width:880px;box-shadow:0 18px 40px -38px #19201f5c}.piste-board-table th,.piste-board-table td{border-bottom:1px solid #e7ece3;border-right:1px solid #dfe5dc}.piste-board-table th:last-child,.piste-board-table td:last-child{border-right:0}.piste-board-table thead th{color:#18201d;text-align:center;background:#f8faf5;height:34px;padding:7px 9px;font-size:12px;font-weight:800}.piste-board-table tbody th{z-index:2;color:#263d2e;text-align:center;font-variant-numeric:tabular-nums;background:#fbfcf8;width:72px;padding:10px 8px;font-size:12px;font-weight:820;position:sticky;left:0}.piste-board-cell{vertical-align:top;background:#fffefb;min-height:104px;padding:8px;position:relative}.piste-board-cell.lessons{background:#fffefb}.piste-board-cell.private{background:#fff3d7}.piste-board-cell.snowboard{background:#d9edf7}.piste-board-cell.event{background:#eadffd}.piste-board-cell.closed{background:#f2dede}.piste-board-cell.mixed{background:#eef0ea}.piste-drag-board{-webkit-user-select:none;user-select:none}.piste-drag-cell{cursor:crosshair;touch-action:none;height:112px;transition:box-shadow .12s,outline-color .12s,transform .12s}.piste-drag-cell:hover{z-index:1;box-shadow:inset 0 0 0 2px #57766738}.piste-drag-cell.selected{z-index:2;outline-offset:-2px;outline:2px solid #577667;box-shadow:inset 0 0 0 999px #9dc5b638}.piste-drag-cell[style*=--piste-code-color]{border-left:4px solid var(--piste-code-color)}.piste-cell-edit{color:#38433e;cursor:pointer;opacity:0;background:#ffffffd1;border:1px solid #19201f1f;border-radius:6px;place-items:center;width:26px;height:26px;transition:opacity .12s,background .12s;display:grid;position:absolute;top:7px;right:7px}.piste-drag-cell:hover .piste-cell-edit,.piste-cell-edit:focus-visible{opacity:1}.piste-cell-edit:hover{color:#17201d;background:#fff}.piste-cell-top{gap:3px;min-height:38px;display:grid}.piste-cell-top strong,.piste-cell-top span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.piste-cell-top strong{color:#17201d;font-size:13px;font-weight:820}.piste-cell-top span{color:#5d6862;font-size:11px;font-weight:700}.piste-group-chips{flex-wrap:wrap;gap:4px;min-height:24px;margin:6px 0 8px;display:flex}.piste-group-chips span{color:#263d2e;background:#fff;border:1px solid #17201d21;border-radius:5px;place-items:center;min-width:25px;height:20px;font-size:10px;font-weight:820;display:inline-grid}.piste-group-chips span.private{background:#ffe7ae}.piste-group-chips span.snowboard{background:#bfe2f3}.piste-group-chips span.event{background:#dcccf9}.piste-group-chips span.closed{background:#edc9c9}.piste-group-chips span.mixed{background:#dfe3db}.piste-code-pill{color:#38433e;font-variant-numeric:tabular-nums;background:#ffffffb8;border:1px solid #19201f21;border-radius:6px;align-items:center;max-width:100%;min-height:22px;padding:0 7px;font-size:11px;font-weight:820;display:inline-flex}.piste-cell-form{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.piste-cell-form button{color:#fff;cursor:pointer;background:#17201d;border:0;border-radius:7px;min-height:36px;padding:0 10px;font-size:12px;font-weight:760}.piste-cell-form button:hover{background:#33342f}.piste-code-modal{width:min(520px,100%)}.piste-code-range{grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid}.piste-code-range span{color:#38433e;background:#fbfcf8;border:1px solid #dfe5dc;border-radius:7px;min-height:30px;padding:6px 9px;font-size:12px;font-weight:760}.piste-code-field{gap:6px;display:grid}.piste-code-field>span{color:#38433e;font-size:12px;font-weight:780}.piste-code-field input{color:#17201d;background:#fff;border:1px solid #d5ddd3;border-radius:7px;min-height:40px;padding:0 10px;font-size:14px;font-weight:760}.piste-code-preview{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 9px;padding:10px;display:grid}.piste-code-preview>span,.piste-code-suggestions button>span{background:var(--piste-code-color,#9dc5b6);border-radius:4px;width:14px;height:14px}.piste-code-preview>span{grid-row:span 2}.piste-code-preview b{color:#17201d;font-size:13px;font-weight:820}.piste-code-preview small{color:#68746e;font-size:11px;font-weight:700}.piste-code-suggestions{gap:6px;max-height:220px;display:grid;overflow:auto}.piste-code-suggestions button{color:#17201d;cursor:pointer;text-align:left;background:#fff;border:1px solid #dfe5dc;border-radius:7px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:9px;min-height:38px;padding:0 10px;display:grid}.piste-code-suggestions button:hover{background:#f8faf5;border-color:#9dc5b6}.piste-code-suggestions b{font-size:12px;font-weight:820}.piste-code-suggestions small{color:#68746e;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.piste-code-modal-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.piste-code-modal-actions .secondary-button,.piste-code-modal-actions .button{align-items:center;gap:7px;display:inline-flex}.secondary-button.danger{color:#9f2f2d}.piste-block-shell{gap:8px;padding-bottom:12px;display:grid;overflow-x:auto}.piste-block-empty{color:#68746e;background:#fbfcf8;border:1px dashed #cfd9ca;border-radius:8px;gap:4px;padding:18px;display:grid}.piste-block-empty strong{color:#17201d;font-size:15px}.piste-block-empty span{font-size:13px;font-weight:700}.piste-week-board{grid-template-columns:64px repeat(var(--piste-day-count,7), minmax(calc(var(--piste-lane-count,2) * 104px), 1fr));background:#fff;border:1px solid #dfe5dc;border-radius:8px;min-width:max(1120px,100%);display:grid;box-shadow:0 18px 40px -38px #19201f5c}.piste-block-time-column{z-index:3;height:calc(60px + var(--piste-slot-count) * var(--piste-slot-height));background:#fbfcf8;border-right:1px solid #dfe5dc;grid-template-rows:60px auto;display:grid;position:sticky;left:0}.piste-block-time-spacer{background:#f8faf5;border-bottom:1px solid #dfe5dc}.piste-block-time-scale{height:calc(var(--piste-slot-count) * var(--piste-slot-height));position:relative}.piste-block-time-scale span{color:#263d2e;font-variant-numeric:tabular-nums;font-size:12px;font-weight:820;position:absolute;right:10px;transform:translateY(-50%)}.piste-block-day-set{border-right:1px solid #dfe5dc;grid-template-rows:32px 28px auto;min-width:0;display:grid}.piste-block-day-set:last-child{border-right:0}.piste-block-day-head{color:#17201d;background:#f8faf5;border-bottom:1px solid #dfe5dc;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;padding:0 8px;display:grid}.piste-block-day-head strong{text-transform:capitalize;font-size:13px;font-weight:860}.piste-block-day-head span{color:#68746e;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;font-size:11px;font-weight:720;overflow:hidden}.piste-block-day-lane-heads,.piste-block-day-columns{grid-template-columns:repeat(var(--piste-lane-count,2), minmax(0, 1fr));min-width:0;display:grid}.piste-block-lane-head{color:#17201d;background:#f8faf5;border-bottom:1px solid #dfe5dc;border-right:1px solid #dfe5dc;place-items:center;min-width:0;font-size:11px;font-weight:820;display:grid}.piste-block-lane-head:last-child{border-right:0}.piste-block-column{height:calc(var(--piste-slot-count) * var(--piste-slot-height));cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background:#fffefb;border-right:1px solid #e7ece3;min-width:0;position:relative}.piste-block-column:last-child{border-right:0}.piste-block-grid{grid-template-rows:repeat(var(--piste-slot-count), var(--piste-slot-height));pointer-events:none;display:grid;position:absolute;inset:0}.piste-block-grid span{color:#68746e6b;font-variant-numeric:tabular-nums;border-bottom:1px solid #e7ece3;padding:5px 8px;font-size:11px;font-weight:760}.piste-planning-block{z-index:1;border:1px solid #19201f1f;border-left:4px solid var(--piste-code-color,#9dc5b6);background:color-mix(in srgb, var(--piste-code-color,#9dc5b6) 12%, #fff);cursor:grab;border-radius:8px;align-content:start;gap:3px;min-height:38px;padding:7px 6px 6px;display:grid;position:absolute;left:5px;right:5px;overflow:visible;box-shadow:0 14px 28px -24px #19201f8c}.piste-planning-block:not(.editing){-webkit-user-select:none;user-select:none}.piste-direct-save-form{display:none}.piste-planning-block:active{cursor:grabbing}.piste-planning-block.lessons{background:color-mix(in srgb, var(--piste-code-color,#9dc5b6) 10%, #fffefb)}.piste-planning-block.snowboard{background:#d9edf7}.piste-planning-block.closed{background:#f2dede}.piste-planning-block.mixed{background:#eef0ea}.piste-planning-block.draft,.piste-planning-block.editing{z-index:6;outline-offset:-2px;cursor:default;outline:2px solid #577667;min-height:106px}.piste-planning-block-top{gap:2px;min-width:0;padding-right:14px;display:grid}.piste-planning-block-top strong,.piste-planning-block-top span,.piste-planning-block small,.piste-planning-block em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.piste-planning-block-top strong{color:#17201d;font-size:10px;font-weight:840}.piste-planning-block-top span{color:#5d6862;font-variant-numeric:tabular-nums;font-size:9px;font-weight:760}.piste-planning-block small{color:#5d6862;font-size:9px;font-weight:700}.piste-planning-block em{color:#38433e;background:#ffffffb3;border:1px solid #19201f1f;border-radius:6px;justify-self:start;padding:3px 7px;font-size:9px;font-style:normal;font-weight:820}.piste-block-inline-form{gap:7px;min-width:0;display:grid;position:relative}.piste-block-inline-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.piste-block-inline-heading b{color:#17201d;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-weight:820;overflow:hidden}.piste-block-inline-heading button{color:#38433e;cursor:pointer;background:#ffffffc2;border:1px solid #19201f24;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}.piste-block-inline-form>input{color:#17201d;background:#fff;border:1px solid #d5ddd3;border-radius:7px;width:100%;min-width:0;min-height:32px;padding:0 7px;font-size:11px;font-weight:780}.piste-block-code-preview{color:#38433e;align-items:center;gap:7px;min-width:0;min-height:24px;font-size:10px;font-weight:780;display:flex}.piste-block-code-preview b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.piste-block-code-preview span,.piste-block-suggestions span{background:var(--piste-code-color,#9dc5b6);border-radius:4px;width:13px;height:13px}.piste-block-suggestions{z-index:10;background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:5px;width:max-content;min-width:180px;max-width:min(340px,82vw);max-height:190px;padding:6px;display:grid;position:absolute;top:78px;left:50%;right:auto;overflow:auto;transform:translate(-50%);box-shadow:0 18px 42px -28px #19201f6b}.piste-block-suggestions button{color:#17201d;cursor:pointer;text-align:left;white-space:nowrap;background:#fff;border:1px solid #0000;border-radius:6px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;min-height:34px;padding:0 8px;display:grid}.piste-block-suggestions button:hover{background:#f8faf5;border-color:#9dc5b6}.piste-block-suggestions b,.piste-block-suggestions small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.piste-block-suggestions b{font-size:12px;font-weight:820}.piste-block-suggestions small{color:#68746e;font-size:11px;font-weight:700}.piste-block-inline-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.piste-block-enter-submit{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.piste-block-inline-actions .button,.piste-block-inline-actions .secondary-button{border-radius:7px;justify-content:center;align-items:center;gap:6px;width:32px;min-height:32px;padding:0;font-size:11px;display:inline-flex}.weekly-opening-form{gap:18px;display:grid}.weekly-opening-week-form{gap:14px;display:grid}.weekly-opening-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.weekly-opening-time-range{color:#68746e;align-items:center;gap:8px;font-size:12px;font-weight:760;display:inline-flex}.weekly-opening-board{--opening-timeline-height:960px;--opening-bottom-extension:18px;min-width:980px;padding-bottom:var(--opening-bottom-extension);background:#fff;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:64px repeat(7,minmax(112px,1fr));gap:0;display:grid;overflow:visible}.weekly-opening-times{height:var(--opening-timeline-height);background:#fbfcf8;border-right:1px solid #dfe5dc;margin-top:44px;position:relative}.weekly-opening-times span{color:#68746e;font-variant-numeric:tabular-nums;font-size:10px;font-weight:760;position:absolute;right:9px;transform:translateY(-50%)}.weekly-opening-times span:last-child{transform:translateY(-100%)}.weekly-opening-day{border-right:1px solid #dfe5dc;min-width:0}.weekly-opening-day:last-child{border-right:0}.weekly-opening-day-head{text-align:center;background:#f8faf5;border-bottom:1px solid #dfe5dc;align-content:center;gap:1px;height:44px;padding:6px 8px;display:grid}.weekly-opening-day-head strong{color:#17201d;font-size:13px;font-weight:820}.weekly-opening-day-head span{color:#68746e;font-size:10px;font-weight:700}.weekly-opening-column{height:var(--opening-timeline-height);cursor:crosshair;touch-action:none;background:repeating-linear-gradient(#0000 0 39px,#dfe5dcb8 39px 40px),repeating-linear-gradient(#0000 0 9px,#dfe5dc47 9px 10px),#fffefb;position:relative}.weekly-opening-column:hover{background:repeating-linear-gradient(#0000 0 39px,#aeb8adbf 39px 40px),repeating-linear-gradient(#0000 0 9px,#dfe5dc59 9px 10px),#fbfcf8}.weekly-opening-block{color:#18201d;cursor:grab;-webkit-user-select:none;user-select:none;background:#dff2eb;border:1px solid #9dc5b6;border-left-width:4px;border-radius:7px;align-content:center;justify-items:start;min-height:18px;padding:8px 28px 8px 8px;display:grid;position:absolute;left:7px;right:7px;overflow:hidden;box-shadow:0 12px 24px -20px #19201f6b}.weekly-opening-block:active{cursor:grabbing}.weekly-opening-block.draft{opacity:.78;border-style:dashed}.weekly-opening-block strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;font-weight:820;line-height:1.15}.weekly-opening-delete{color:#38433e;cursor:pointer;background:#ffffffbd;border:1px solid #19201f24;border-radius:5px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:5px;right:5px}.weekly-opening-delete:hover{color:#9f2f2d;background:#fff}.weekly-opening-resize{cursor:ns-resize;background:#19201f21;border:0;border-radius:999px;height:5px;position:absolute;left:14px;right:14px}.weekly-opening-resize.start{top:2px}.weekly-opening-resize.end{bottom:2px}.month-picker{color:#38433e;background:#fff;border:1px solid #d5ddd3;border-radius:7px;align-items:center;gap:8px;height:38px;padding:0 10px;display:inline-flex}.month-picker input{color:#17201d;background:0 0;border:0;width:132px;padding:0;font-size:13px;font-weight:760}.icon-button-text{align-items:center;gap:7px;display:inline-flex}.weekly-opening-template-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.monthly-bulk-modal{max-width:720px}.monthly-template-apply-form{gap:14px;display:grid}.monthly-bulk-intro{color:#68746e;margin:0;font-size:13px;font-weight:700;line-height:1.4}.monthly-week-grid,.monthly-target-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.monthly-target-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.piste-template-target-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.monthly-week-card,.monthly-target-card{color:#17201d;cursor:pointer;text-align:left;background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:4px;padding:12px;display:grid}.monthly-week-card strong,.monthly-target-card strong{font-size:14px;font-weight:820}.monthly-week-card span,.monthly-target-card span,.monthly-week-card em{color:#68746e;font-size:12px;font-weight:680;line-height:1.35}.monthly-week-card em{font-style:normal}.monthly-week-card:hover,.monthly-target-card:hover{background:#f8faf5;border-color:#9dc5b6}.monthly-week-card.selected,.monthly-target-card.selected{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 46%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 8%, #fff)}.monthly-custom-picker{width:fit-content}.monthly-template-apply-footer{border-top:1px solid #e4ebe1;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.monthly-template-apply-footer span{color:#68746e;font-size:12px;font-weight:720}.planner-modal-backdrop{z-index:80;background:#19201f61;place-items:center;padding:20px;animation:.15s ease-out modal-backdrop-in;display:grid;position:fixed;inset:0}.planner-modal{background:#fff;border:1px solid #dfe5dc;border-radius:8px;width:min(760px,100%);max-height:min(82vh,760px);animation:.17s ease-out modal-panel-in;overflow:hidden;box-shadow:0 28px 80px -44px #19201f94}.planner-modal-header{background:#f8faf5;border-bottom:1px solid #e7ece3;justify-content:space-between;align-items:start;gap:16px;padding:18px 20px;display:flex}.planner-modal-header h2{color:#18201d;margin:0;font-size:19px;line-height:1.2}.planner-modal-header p{color:#68746e;margin:4px 0 0;font-size:13px}.icon-button{color:#263d2e;cursor:pointer;background:#fff;border:1px solid #d7ded4;border-radius:6px;place-items:center;width:34px;height:34px;transition:background .15s,transform .15s;display:inline-grid}.icon-button:hover{background:#eef4eb;transform:translateY(-1px)}.planner-modal-body{gap:16px;max-height:calc(min(82vh,760px) - 78px);padding:18px 20px 20px;display:grid;overflow-y:auto}.quick-group-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quick-group-preferences{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:minmax(150px,1fr) minmax(120px,.72fr) minmax(120px,.72fr);gap:10px;padding:12px;display:grid}.quick-group-preferences .field{gap:5px}.quick-group-preferences input,.quick-group-preferences select{background:#fff;border:1px solid #d4dccf;border-radius:6px;min-height:36px;padding:0 9px}.quick-week-modal{width:min(860px,100%)}.quick-week-preferences{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:minmax(220px,1.35fr) minmax(130px,.8fr) minmax(112px,.65fr) minmax(112px,.65fr) minmax(86px,.45fr);gap:10px;padding:12px;display:grid}.quick-week-preferences .field{gap:5px}.quick-week-preferences input,.quick-week-preferences select{background:#fff;border:1px solid #d4dccf;border-radius:6px;min-height:36px;padding:0 9px}.quick-week-customer-field{position:relative}.quick-week-results{border:1px solid #e3e9df;border-radius:8px;display:grid;overflow:hidden}.quick-week-row{color:#68746e;background:#fbfcf8;border-top:1px solid #e9eee5;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.quick-week-row:first-child{border-top:0}.quick-week-row.available{color:#263d2e;background:#fff}.quick-week-row input{width:16px;min-height:16px}.quick-week-row span{gap:2px;display:grid}.quick-week-row strong{color:#18201d;font-size:13px}.quick-week-row em{color:inherit;font-size:12px;font-style:normal;font-weight:700}.quick-group-customer-field{gap:6px;display:grid;position:relative}.quick-group-customer-field label{color:#4f5a54;font-size:12px;font-weight:760}.quick-group-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.quick-group-result{border-radius:7px;gap:3px;padding:10px 12px;font-size:13px;display:grid}.quick-group-result span{color:#4f5a54}@keyframes modal-backdrop-in{0%{opacity:0}}@keyframes modal-panel-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}.school-grid{gap:18px;display:grid}.school-grid.two-col{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);align-items:start}.school-app .panel{background:#fffffcdb;border-color:#dfe5dc}.school-app .panel-header{background:#fbfcf8}.school-app .button{background:var(--tenant-primary,#1d2a24)}.school-app .secondary-button{background:#fff}.school-app .date-picker{background:#fff;border:1px solid #dfe5dc;border-radius:10px;padding:5px}.lesson-board-shell{padding-bottom:12px;overflow-x:auto}.lesson-board{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:0;min-width:980px;display:grid}.old-lesson-board{min-width:920px}.lesson-corner,.lesson-column-heading,.lesson-time,.lesson-group-card{border-bottom:1px solid #dfe5dc;border-right:1px solid #dfe5dc}.lesson-corner,.lesson-column-heading{z-index:3;background:#f8faf5;min-height:58px;position:sticky;top:74px}.lesson-corner{z-index:4;color:#5d6862;place-items:center;font-size:12px;font-weight:780;display:grid;left:0}.lesson-column-heading{align-content:center;gap:2px;padding:10px 12px;display:grid}.lesson-column-heading span{color:#68746e;letter-spacing:.055em;text-transform:uppercase;font-size:11px;font-weight:760}.lesson-column-heading strong{color:#18201d;font-size:13px}.lesson-time{z-index:2;color:#263d2e;font-variant-numeric:tabular-nums;background:#fbfcf8;place-items:start center;min-height:112px;padding-top:9px;font-weight:820;display:grid;position:sticky;left:0}.lesson-group-card{background:#fffefb;min-height:112px;padding:6px}.lesson-group-card.snowboard-hour{background:#eaf6ff}.lesson-group-card.closed-hour{background:#f1efea}.lesson-group-meta{color:#68746e;justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;font-size:11px;display:flex}.lesson-status-cell{color:#827b70;border:1px dashed #d7d1c6;border-radius:5px;place-items:center;min-height:32px;font-size:12px;font-weight:760;display:grid}.lesson-group-meta strong{color:#435049}.lesson-participants{gap:5px;display:grid}.lesson-participant{color:#18201d;background:#f6f8f3;border:1px solid #19201f1f;border-left-width:5px;border-radius:4px;gap:3px;width:100%;padding:4px;transition:transform .16s,border-color .16s,background .16s;display:grid}.lesson-participant:hover{border-color:#19201f38;transform:translateY(-1px)}.lesson-participant-edit{position:relative}.lesson-participant-edit .lesson-autocomplete input{border-style:solid;min-height:24px;padding:4px 7px;font-size:12px;font-weight:760}.lesson-participant-row{grid-template-columns:minmax(0,1fr) 22px;align-items:stretch;gap:4px;display:grid}.lesson-participant-body{min-height:30px;color:inherit;border-radius:5px;align-content:center;gap:2px;padding:3px 4px;text-decoration:none;display:grid}.lesson-participant-body:hover{background:#ffffff94}.lesson-remove-button{color:#5f6a64;cursor:pointer;background:#ffffff9e;border:1px solid #19201f1f;border-radius:5px;justify-content:center;align-items:center;width:22px;height:22px;min-height:22px;padding:0;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.lesson-remove-button:hover{color:#9f2f2d;background:#fff}.lesson-participant strong{font-size:11px;line-height:1.25}.lesson-participant span{color:#4f5a54;font-variant-numeric:tabular-nums;font-size:10px}.level-0{background:#f1f2f2;border-left-color:#9aa0a6}.level-1,.level-2-a{background:#edf6ec;border-left-color:#6aa36f}.level-2-b,.level-2-c{background:#eaf5f8;border-left-color:#4e8fa8}.level-2-d,.level-3-a{background:#fff6df;border-left-color:#d3a33c}.level-3-b,.level-3-c,.level-3-d{background:#fff0e7;border-left-color:#d17b45}.level-4-a,.level-4-b,.level-4-c,.level-4-d{background:#fdecef;border-left-color:#bd5d69}.level-5-a,.level-5-b,.level-5-c,.level-5-d{background:#f0eefb;border-left-color:#6f6aa8}.lesson-empty-slots{gap:4px;margin-top:5px;display:grid}.lesson-add-form{position:relative}.lesson-table-cell:focus-within{z-index:30;position:relative}.lesson-add-form:focus-within,.lesson-slot-edit:focus-within,.lesson-autocomplete:focus-within{z-index:40;position:relative}.lesson-autocomplete input{color:#19201f;background:#fff;border:1px dashed #cfd8ce;border-radius:5px;outline:none;width:100%;min-height:23px;padding:4px 6px;font-size:10px}.lesson-autocomplete input:focus{border-style:solid;border-color:#91a18f;box-shadow:0 0 0 3px #263d2e14}.lesson-suggestions{z-index:60;background:#fff;border:1px solid #d7ded4;border-radius:7px;gap:2px;max-height:210px;padding:4px;animation:.14s ease-out lesson-popover-in;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 20px 44px -24px #19201f8c}.lesson-suggestions-floating{z-index:10000;position:fixed}.lesson-suggestions button{color:#19201f;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;gap:2px;padding:7px;transition:background .14s,transform .14s;display:grid}.lesson-suggestions button:hover{background:#eef4eb;transform:translate(2px)}.lesson-suggestions strong,.lesson-suggestions span,.lesson-form-error{font-size:11px}.lesson-suggestions span,.lesson-form-error{color:#68746e}.planning-code-suggestion-title{align-items:center;gap:6px;min-width:0;display:inline-flex}.planning-code-suggestion-color{background:var(--planning-hour-type-bg,#eef4eb);border:1px solid #19201f29;border-radius:999px;flex:none;width:10px;height:10px}.lesson-form-error{color:#9f2f2d;margin:4px 0 0}.lesson-form-warning{color:#8a5a00;margin:4px 0 0;font-size:10px;line-height:1.25}.lesson-form-warning.active{background:#fff8e5;border:1px solid #efd7a3;border-radius:6px;padding:5px 6px}.lesson-add-form.warning-shake .lesson-autocomplete input{border-color:#d69439;animation:.28s ease-in-out instructor-warning-shake;box-shadow:0 0 0 3px #d6943921}.sport-choice-backdrop{z-index:12000}.sport-choice-modal{width:min(360px,100vw - 32px)}.sport-choice-actions{grid-template-columns:1fr 1fr;gap:10px;padding:16px;display:grid}.lesson-table-shell{width:100%;padding-bottom:14px;overflow-x:hidden}.lesson-planning-table{--lesson-table-width:70%;--lesson-time-width:54px;--lesson-piste-gap:clamp(24px, 2.8vw, 64px);width:var(--lesson-table-width);table-layout:fixed;border-spacing:0;background:#fff;border:1px solid #dfe5dc;border-radius:8px;min-width:0;margin:0 auto;box-shadow:0 18px 40px -38px #19201f5c}@media (max-width:1200px){.lesson-planning-table{--lesson-table-width:100%}}.lesson-planning-table th,.lesson-planning-table td{vertical-align:top;border-bottom:1px solid #e7ece3;border-right:1px solid #dfe5dc}.lesson-planning-table th:last-child,.lesson-planning-table td:last-child{border-right:0}.lesson-time-col{width:var(--lesson-time-width)}.lesson-slot-col{width:calc(( var(--lesson-table-width) - var(--lesson-time-width) - (var(--lesson-piste-gaps,0) * var(--lesson-piste-gap)) ) / var(--lesson-group-columns,4))}.lesson-spacer-col{width:var(--lesson-piste-gap)}.lesson-table-corner,.lesson-table-section,.lesson-table-subhead,.lesson-table-group-head,.lesson-table-spacer-head{background:#f8faf5}.lesson-table-section{color:#18201d;text-align:center;height:25px;padding:4px 6px;font-size:12px;font-weight:780}.lesson-table-subhead,.lesson-table-group-head,.lesson-table-spacer-head{color:#5d6862;text-align:center;height:24px;padding:4px 6px;font-size:11px;font-weight:760}.lesson-table-corner,.lesson-table-subhead,.lesson-table-time{width:var(--lesson-time-width);min-width:var(--lesson-time-width)}.lesson-table-time{z-index:2;color:#263d2e;text-align:center;font-variant-numeric:tabular-nums;background:#fbfcf8;padding:6px 5px;font-size:11px;font-weight:820;position:sticky;left:0}.lesson-table-divider td{background:#c5ccc1;border-bottom-color:#aeb8ad;height:5px;padding:0}.lesson-table-row{height:39px}.expanded-hour-row{animation:.22s ease-out both lesson-hour-open;animation-delay:calc(var(--row-index,0) * 24ms)}.collapsed-hour-row{height:30px;animation:.18s ease-out both lesson-hour-close}.collapsed-hour-row .lesson-table-time,.collapsed-hour-cell{background:#fbfcf8;padding:5px;transition:background .15s}.collapsed-hour-row:hover .lesson-table-time,.collapsed-hour-row:hover .collapsed-hour-cell{background:#eef4eb}.collapsed-hour-cell{text-align:center;vertical-align:middle}.activity-note-head{color:#5c635e}.collapsed-hour-cell.activity-note-cell,.lesson-table-cell.activity-note-cell{cursor:default;background:#fffefb}.collapsed-hour-row:hover .collapsed-hour-cell.activity-note-cell{background:#fffefb}.collapsed-hour-count{color:#263d2e;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #d7ded4;border-radius:999px;justify-content:center;align-items:center;min-height:20px;padding:0 7px;font-size:11px;font-weight:820;animation:.18s ease-out both collapsed-count-in;display:inline-flex}.collapsed-hour-count.closed{color:#8c4d4d;background:#fff5f5;border-color:#e4c7c7}.clickable-hour:hover,.clickable-hour-space:hover{background:#eef4eb}.clickable-hour,.clickable-hour-space{cursor:pointer}.lesson-table-cell{background:#fffefb;padding:3px}.lesson-table-cell[style]{background:var(--level-bg,#fffefb)}.lesson-table-cell.assigned-hour{padding:0}.lesson-table-cell.typed-hour{background:var(--planning-hour-type-bg,#fffefb)}.lesson-table-cell.snowboard-hour{background:#d9edf7}.lesson-table-cell.private-hour{background:#fff3d7}.lesson-table-cell.event-hour{background:#eadffd}.lesson-table-cell.closed-hour{background:#f2dede}.lesson-table-cell.typed-hour.closed-hour{background:var(--planning-hour-type-bg,#f2dede)}.lesson-table-cell.planning-focus-target{animation:5s ease-out both planning-focus-fade;position:relative}.lesson-table-cell.planning-focus-target .lesson-slot-assignment,.lesson-table-cell.planning-focus-target .lesson-add-form{animation:.18s ease-out lesson-assignment-in,5s ease-out both planning-focus-inner}@keyframes planning-focus-fade{0%,18%{background-color:#fff0a8;box-shadow:inset 0 0 0 3px #d99614,0 0 0 2px #d9961433}to{box-shadow:inset 0 0 #d9961400,0 0 #d9961400}}@keyframes planning-focus-inner{0%,18%{background-color:#ffffff94}to{background-color:#0000}}.instructor-planner-stack{gap:12px;display:grid}.instructor-bulk-planner{border:1px solid var(--line);background:#fbfcf8;border-radius:8px;grid-template-columns:minmax(180px,1fr) minmax(220px,340px) auto auto;align-items:center;gap:10px;padding:10px;display:grid}.instructor-bulk-planner strong,.instructor-bulk-planner span{display:block}.instructor-bulk-planner span,.instructor-bulk-planner p{color:var(--muted);margin:2px 0 0;font-size:12px}.instructor-bulk-planner input[name=instructorName]{border:1px solid var(--line-strong);border-radius:6px;width:100%;min-height:36px;padding:8px 10px}.instructor-bulk-planner.warning-shake input[name=instructorName]{border-color:#d69439;animation:.28s ease-in-out instructor-warning-shake;box-shadow:0 0 0 3px #d6943921}.instructor-planner-shell{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:auto}.instructor-planner-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.instructor-planner-table th,.instructor-planner-table td{border-bottom:1px solid #e7ece3;border-right:1px solid #dfe5dc}.instructor-planner-corner,.instructor-planner-time{z-index:2;color:#263d2e;text-align:center;background:#fbfcf8;width:64px;min-width:64px;font-size:11px;font-weight:820;position:sticky;left:0}.instructor-planner-day,.instructor-planner-lane{color:#30312d;text-align:center;background:#f8faf5}.instructor-planner-day{height:42px;padding:5px 8px}.instructor-planner-day span,.instructor-planner-day strong{display:block}.instructor-planner-day span{color:var(--muted);text-transform:uppercase;font-size:10px}.instructor-planner-day strong{margin-top:2px;font-size:12px}.instructor-planner-lane{color:#5d6862;width:135px;min-width:135px;height:26px;padding:4px 6px;font-size:11px;font-weight:760}.instructor-planner-cell{vertical-align:top;background:#fffefb;width:135px;min-width:135px;height:48px;padding:4px}.instructor-planner-cell.selected{background:#f4faef;box-shadow:inset 0 0 0 2px #9eb693}.instructor-cell-form{grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:4px;display:grid}.instructor-cell-form input[name=instructorName]{width:100%;min-width:0;height:29px;color:var(--text);background:#fff;border:1px solid #d7ded4;border-radius:6px;outline:none;padding:5px 7px;font-size:12px}.instructor-cell-form button{color:#30312d;cursor:pointer;background:#f8faf5;border:1px solid #d7ded4;border-radius:6px;height:29px;font-size:10px;font-weight:820}.instructor-cell-form.warning-shake input[name=instructorName]{border-color:#d69439;animation:.28s ease-in-out instructor-warning-shake;box-shadow:0 0 0 3px #d6943921}.instructor-warning-bubble{color:#8a5a00;margin-top:4px;font-size:10px;line-height:1.25}.instructor-warning-bubble.active{background:#fff8e5;border:1px solid #efd7a3;border-radius:6px;padding:5px 6px}@keyframes instructor-warning-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}.instructor-block-shell{gap:8px;padding-bottom:12px;display:grid;overflow-x:auto}.instructor-week-board{grid-template-columns:64px repeat(var(--instructor-day-count,7), minmax(calc(var(--instructor-lane-count,2) * 112px), 1fr));background:#fff;border:1px solid #dfe5dc;border-radius:8px;min-width:max(1120px,100%);display:grid;box-shadow:0 18px 40px -38px #19201f5c}.instructor-block-time-column{z-index:3;height:calc(60px + var(--instructor-slot-count) * var(--instructor-slot-height));background:#fbfcf8;border-right:1px solid #dfe5dc;grid-template-rows:60px auto;display:grid;position:sticky;left:0}.instructor-block-time-spacer{background:#f8faf5;border-bottom:1px solid #dfe5dc}.instructor-block-time-scale{height:calc(var(--instructor-slot-count) * var(--instructor-slot-height));position:relative}.instructor-block-time-scale span{color:#263d2e;font-variant-numeric:tabular-nums;font-size:12px;font-weight:820;position:absolute;right:10px;transform:translateY(-50%)}.instructor-block-day-set{border-right:1px solid #dfe5dc;grid-template-rows:32px 28px auto;min-width:0;display:grid}.instructor-block-day-set:last-child{border-right:0}.instructor-block-day-head{color:#17201d;background:#f8faf5;border-bottom:1px solid #dfe5dc;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;padding:0 8px;display:grid}.instructor-block-day-head strong{text-transform:capitalize;font-size:13px;font-weight:860}.instructor-block-day-head span{color:#68746e;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;font-size:11px;font-weight:720;overflow:hidden}.instructor-block-day-lane-heads,.instructor-block-day-columns{grid-template-columns:repeat(var(--instructor-lane-count,2), minmax(0, 1fr));min-width:0;display:grid}.instructor-block-lane-head{color:#17201d;background:#f8faf5;border-bottom:1px solid #dfe5dc;border-right:1px solid #dfe5dc;place-items:center;min-width:0;font-size:11px;font-weight:820;display:grid}.instructor-block-lane-head:last-child{border-right:0}.instructor-block-column{height:calc(var(--instructor-slot-count) * var(--instructor-slot-height));cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;background:#fffefb;border-right:1px solid #e7ece3;min-width:0;position:relative}.instructor-block-column:last-child{border-right:0}.instructor-block-grid{grid-template-rows:repeat(var(--instructor-slot-count), var(--instructor-slot-height));pointer-events:none;display:grid;position:absolute;inset:0}.instructor-block-grid span{color:#68746e6b;font-variant-numeric:tabular-nums;border-bottom:1px solid #e7ece3;padding:5px 8px;font-size:11px;font-weight:760}.instructor-planning-block{z-index:1;cursor:grab;background:#eef5fb;border:1px solid #19201f1f;border-left:4px solid #6f8fb7;border-radius:8px;align-content:start;gap:4px;min-height:38px;padding:7px 6px 6px;display:grid;position:absolute;left:5px;right:5px;overflow:visible;box-shadow:0 14px 28px -24px #19201f8c}.instructor-planning-block.warning{background:#fff8e5;border-left-color:#d69439}.instructor-planning-block.draft,.instructor-planning-block.editing{z-index:6;outline-offset:-2px;cursor:default;outline:2px solid #577667;min-height:108px}.instructor-planning-block-top{gap:2px;min-width:0;padding-right:14px;display:grid}.instructor-planning-block-top strong,.instructor-planning-block-top span,.instructor-planning-block small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.instructor-planning-block-top strong{color:#17201d;font-size:10px;font-weight:840}.instructor-planning-block-top span,.instructor-planning-block small{color:#5d6862;font-size:9px;font-weight:720}.instructor-block-inline-form{gap:7px;min-width:0;display:grid;position:relative}.instructor-block-inline-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.instructor-block-inline-heading b{color:#17201d;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-weight:820;overflow:hidden}.instructor-block-inline-heading button{color:#38433e;cursor:pointer;background:#ffffffc2;border:1px solid #19201f24;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}.instructor-block-inline-form>input[name=instructorName]{color:#17201d;background:#fff;border:1px solid #d5ddd3;border-radius:7px;width:100%;min-width:0;min-height:32px;padding:0 7px;font-size:11px;font-weight:780}.instructor-block-inline-form.warning-shake>input[name=instructorName]{border-color:#d69439;animation:.28s ease-in-out instructor-warning-shake;box-shadow:0 0 0 3px #d6943921}.instructor-block-enter-submit{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.instructor-block-resize{cursor:ns-resize;background:#19201f21;border:0;border-radius:999px;height:5px;position:absolute;left:14px;right:14px}.instructor-block-resize.start{top:2px}.instructor-block-resize.end{bottom:2px}.lesson-table-spacer,.lesson-table-spacer-head{background:0 0;padding:0;border-bottom-color:#0000!important;border-right:0!important}.lesson-table-spacer-head{background:0 0}.lesson-table-spacer.clickable-hour-space:hover{background:#eef4eb94}.lesson-slot-assignment{color:#18201d;background:0 0;border-radius:0;gap:2px;height:100%;min-height:33px;padding:3px;animation:.18s ease-out lesson-assignment-in;display:grid;position:relative}.lesson-slot-assignment.snowboard-assignment{padding-left:19px}.lesson-slot-assignment.snowboard-assignment:before{color:#fff;content:"SB";writing-mode:vertical-rl;background:#dc2626;border-radius:4px;justify-content:center;align-items:center;width:11px;font-size:8px;font-weight:800;line-height:1;display:flex;position:absolute;top:4px;bottom:4px;left:4px;transform:rotate(180deg)}.lesson-slot-assignment:hover{background:#ffffff24}.lesson-slot-assignment .lesson-autocomplete input{border-color:color-mix(in srgb, var(--level-color,#cad4c8) 28%, #cad4c8)}.lesson-slot-edit{position:relative}.lesson-slot-edit .lesson-autocomplete input,.lesson-add-form .lesson-autocomplete input,.lesson-closed-input{color:#18201d;background:#fff;border:1px solid #cad4c8;border-radius:5px;outline:none;width:100%;min-height:24px;padding:4px 7px;font-size:11px;line-height:1.2}.lesson-slot-edit .lesson-autocomplete input{font-weight:760}.lesson-slot-assignment .lesson-slot-edit .lesson-autocomplete input{border-color:color-mix(in srgb, var(--level-color,#111) 28%, #ffffffb3);background:#ffffff6b;padding:2px 5px;box-shadow:inset 0 1px #ffffff47}.lesson-slot-assignment .lesson-slot-edit .lesson-autocomplete input:focus{border-color:color-mix(in srgb, var(--level-color,#111) 38%, #fff);background:#ffffffa3}.lesson-add-form .lesson-autocomplete input{color:#5d6862;border-style:dashed}.lesson-hour-setting-label{color:#263d2e;text-align:center;background:#ffffffbd;border-radius:5px;min-height:18px;margin-bottom:4px;padding:2px 6px;font-size:10px;font-weight:820}.lesson-command-hint{color:#263d2e;background:#ffffffc2;border-radius:5px;align-items:center;gap:5px;margin-top:4px;padding:3px 6px;font-size:10px;font-weight:780;display:flex}.lesson-command-hint span{background:var(--planning-hour-type-bg);border:1px solid #19201f29;border-radius:999px;width:8px;height:8px}.lesson-closed-input{color:#8c4d4d}.lesson-slot-edit .lesson-autocomplete input:focus,.lesson-add-form .lesson-autocomplete input:focus{border-style:solid;border-color:#91a18f;box-shadow:0 0 0 3px #263d2e14}.lesson-slot-meta{color:#4f5a54;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;min-height:10px;font-size:9px;line-height:1.2;display:flex}.lesson-slot-meta a{color:#273f31;text-decoration:none}.lesson-slot-meta a:hover{text-underline-offset:2px;text-decoration:underline}.planning-hour-types-settings{gap:12px;display:grid}.planning-code-toolbar{justify-content:flex-end;display:flex}.planning-code-list{gap:8px;display:grid}.planning-code-row,.planning-code-chip{border:1px solid var(--line);cursor:grab;-webkit-user-select:none;user-select:none;background:#fffefa;border-radius:7px;align-items:center;gap:7px;min-height:36px;padding:6px 10px}.planning-code-row{background:#fffefa;grid-template-columns:24px 28px minmax(130px,1fr) minmax(86px,auto) minmax(92px,auto) minmax(72px,auto) 34px;padding:8px 9px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.planning-code-row:hover{border-color:#cfd8ce;transform:translateY(-1px);box-shadow:0 12px 26px -24px #19201f6b}.planning-code-chip{display:inline-flex}.planning-code-row:active,.planning-code-chip:active{cursor:grabbing}.planning-code-row.inactive,.planning-code-chip.inactive{opacity:.55}.planning-code-row.system{cursor:default}.planning-code-row.system .planning-code-drag-handle{opacity:.42}.planning-code-drag-handle{color:#8a948e;place-items:center;display:grid}.planning-code-chip strong{color:#263d2e;font-size:13px;line-height:1}.planning-code-main{gap:1px;min-width:0;display:grid}.planning-code-main strong{color:#263d2e;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.1;overflow:hidden}.planning-code-main em{color:#4f7f5f;font-size:11px;font-style:normal;font-weight:800;line-height:1.1}.planning-code-main span,.planning-code-meta,.planning-code-status,.planning-code-portal{color:#68746e;font-size:11px;font-weight:720}.planning-code-meta,.planning-code-status,.planning-code-portal{background:#fff;border:1px solid #e2e8de;border-radius:999px;justify-self:start;align-items:center;min-height:24px;padding:0 8px;display:inline-flex}.planning-code-status.closed{color:#9f2f2d;background:#fff4f4;border-color:#f0d0cf}.planning-code-portal.enabled{color:#2f6d3a;background:#eef6ec;border-color:#cfe0cc}.planning-code-system-note{color:#8c4d4d;background:#fff4f4;border:1px solid #f0d0cf;border-radius:7px;margin:-2px 0 0;padding:9px 10px;font-size:12px;font-weight:720}.planning-code-edit{cursor:pointer;width:32px;height:32px}.planning-code-modal{width:min(620px,100%)}@media (max-width:760px){.planning-code-row{grid-template-columns:24px 28px minmax(0,1fr) 34px}.planning-code-edit{grid-area:1/4}}.planning-hour-type-list{gap:10px;display:grid}.planning-hour-type-row{border:1px solid var(--line);background:#fffefa;border-radius:8px;align-items:flex-end;gap:10px;padding:10px;display:flex}.planning-hour-type-row.inactive{opacity:.58}.planning-hour-type-row-form{flex:1;grid-template-columns:24px minmax(88px,.8fr) minmax(130px,1.2fr) 62px minmax(92px,.8fr) minmax(92px,.8fr) 78px auto auto auto;align-items:end;gap:8px;display:grid}.planning-hour-type-swatch{border:1px solid #1f211f2e;border-radius:6px;width:24px;height:24px;margin-bottom:1px}.field.compact{gap:4px}.field.compact label{font-size:10px}.field.compact input,.field.compact select{min-height:34px;font-size:12px}.field.color-field input{padding:3px}.field.sort-field input{min-width:0}.checkbox-field.compact{align-items:center;min-height:34px;padding-bottom:2px;font-size:12px}.compact-checkbox{color:#435049;align-items:center;gap:8px;min-height:38px;font-size:13px;font-weight:760;display:inline-flex}.small-button{min-height:34px;padding-inline:10px;font-size:12px}.lesson-slot-meta span:empty{display:none}.lesson-slot-meta .lesson-remove-form{flex:0 0 18px;margin-left:auto}.lesson-slot-meta .lesson-remove-button{border-radius:3px;width:18px;height:18px;min-height:18px;font-size:10px}.lesson-remove-button:disabled{cursor:wait;opacity:.7}.lesson-remove-spinner{border:1.5px solid;border-right-color:#0000;border-radius:999px;width:9px;height:9px;animation:.72s linear infinite button-spin;display:inline-block}@keyframes lesson-popover-in{0%{opacity:0;transform:translateY(-3px)}}@keyframes lesson-row-in{0%{opacity:.65}}@keyframes lesson-hour-open{0%{opacity:0;height:32px;transform:translateY(-4px)}}@keyframes lesson-hour-close{0%{opacity:0;height:44px;transform:translateY(3px)}}@keyframes collapsed-count-in{0%{opacity:0;transform:translateY(2px)scale(.98)}}@keyframes planning-undo-status-in{0%{opacity:0;transform:translateY(6px)}}@keyframes lesson-assignment-in{0%{opacity:0;transform:scale(.985)}}.lesson-table-cell.level-0,.lesson-slot-assignment.level-0{background:#f1f2f2}.lesson-table-cell.level-1,.lesson-table-cell.level-2-a,.lesson-slot-assignment.level-1,.lesson-slot-assignment.level-2-a{background:#edf6ec}.lesson-table-cell.level-2-b,.lesson-table-cell.level-2-c,.lesson-slot-assignment.level-2-b,.lesson-slot-assignment.level-2-c{background:#eaf5f8}.lesson-table-cell.level-2-d,.lesson-table-cell.level-3-a,.lesson-slot-assignment.level-2-d,.lesson-slot-assignment.level-3-a{background:#fff6df}.lesson-table-cell.level-3-b,.lesson-table-cell.level-3-c,.lesson-table-cell.level-3-d,.lesson-slot-assignment.level-3-b,.lesson-slot-assignment.level-3-c,.lesson-slot-assignment.level-3-d{background:#fff0e7}.lesson-table-cell.level-4-a,.lesson-table-cell.level-4-b,.lesson-table-cell.level-4-c,.lesson-table-cell.level-4-d,.lesson-slot-assignment.level-4-a,.lesson-slot-assignment.level-4-b,.lesson-slot-assignment.level-4-c,.lesson-slot-assignment.level-4-d{background:#fbf1c9}.lesson-table-cell.level-5-a,.lesson-table-cell.level-5-b,.lesson-table-cell.level-5-c,.lesson-table-cell.level-5-d,.lesson-slot-assignment.level-5-a,.lesson-slot-assignment.level-5-b,.lesson-slot-assignment.level-5-c,.lesson-slot-assignment.level-5-d{background:#f1eafb}.staff-list{gap:0;display:grid}.staff-card{border-bottom:1px solid var(--line);gap:16px;padding:18px 20px;display:grid}.staff-card:last-child{border-bottom:0}.tenant-user-create-modal{width:min(100%,860px)}.tenant-permissions-panel{border:1px solid var(--line);background:#fbfcfb;border-radius:8px;gap:16px;padding:16px;display:grid}.tenant-permissions-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tenant-permissions-heading strong{color:#252622;font-size:14px;font-weight:780}.tenant-permissions-heading span{max-width:420px;color:var(--muted);text-align:right;font-size:12px;line-height:1.45}.tenant-permissions-section{gap:10px;display:grid}.tenant-permissions-section h3{color:#333a34;margin:0;font-size:13px;font-weight:760}.tenant-permissions-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.tenant-permissions-grid.compact{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.tenant-permission-option{background:#fff;border:1px solid #dde5dc;border-radius:8px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;min-height:72px;padding:11px 12px;display:grid}.tenant-permission-option.compact{align-items:center;min-height:42px}.tenant-permission-option input{accent-color:var(--tenant-primary,#1d2a24);margin-top:2px}.tenant-permission-option span{gap:3px;min-width:0;display:grid}.tenant-permission-option strong{color:#222822;font-size:13px;font-weight:740}.tenant-permission-option small{color:var(--muted);font-size:12px;line-height:1.35}.personnel-create-modal{width:min(100%,760px)}.personnel-name-field{position:relative}.personnel-customer-suggestions{top:calc(100% + 6px)}.personnel-permissions-panel{border:1px solid var(--line);background:#fffefb;border-radius:8px;gap:12px;padding:14px;display:grid}.personnel-permissions-panel>strong,.personnel-level-picker-header>span{color:#252622;font-size:13px;font-weight:760}.personnel-level-picker{gap:8px;display:grid}.personnel-level-picker-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.personnel-level-picker-header .compact-button{min-height:30px;padding:0 10px;font-size:12px}.personnel-level-picker p{color:var(--muted);margin:-2px 0 0;font-size:12px}.personnel-level-options{flex-wrap:wrap;gap:8px 12px;display:flex}.staff-edit,.staff-reset,.staff-delete{gap:14px;display:grid}.users-current-panel{grid-template-columns:minmax(0,1fr) minmax(260px,380px);align-items:start;gap:22px;display:grid}.users-current-security-stack{gap:12px;display:grid}.platform-admin-card{grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:start}.codex-test-account-panel{margin-bottom:18px}.codex-test-account-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;gap:18px;display:grid}.codex-test-account-actions{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;align-content:start;padding:16px}.platform-admin-summary{gap:8px;min-width:0;display:grid}.platform-admin-actions{gap:12px;display:grid}.admin-user-tags{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.muted-note{color:var(--muted);margin:0;font-size:13px}.security-setup-card{border:1px solid var(--line);background:#fffefb;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.security-setup-card.compact{grid-template-columns:auto minmax(0,1fr)}.security-setup-card.compact .security-setup-action{grid-column:2;justify-self:start}.security-setup-card.muted{background:var(--panel-muted)}.security-setup-icon{background:var(--accent-bg);width:38px;height:38px;color:var(--accent-dark);border-radius:8px;place-items:center;display:grid}.security-setup-copy{min-width:0}.security-setup-copy strong{color:var(--text);font-size:14px;display:block}.security-setup-copy p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.45}.security-setup-action{white-space:nowrap}.tenant-access-pill-list{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.tenant-access-pill{border:1px solid var(--line);background:var(--panel-muted);color:var(--text);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}.tenant-access-panel{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;gap:12px;padding:12px;display:grid}.tenant-access-grid{gap:8px;max-height:220px;padding-right:2px;display:grid;overflow:auto}.tenant-access-option{border:1px solid var(--line);background:var(--panel);border-radius:7px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;padding:9px;display:grid}.tenant-access-option input{width:16px;height:16px;margin-top:2px}.tenant-access-option span{gap:2px;min-width:0;display:grid}.tenant-access-option small{color:var(--muted);word-break:break-word;font-size:12px}.admin-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f211f75;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.admin-modal{border:1px solid var(--line);background:var(--panel);border-radius:10px;grid-template-rows:auto minmax(0,1fr);width:min(100%,760px);max-height:min(86dvh,720px);display:grid;overflow:hidden;box-shadow:0 28px 88px -42px #1f211f94}.admin-modal-header{border-bottom:1px solid var(--line);background:#fffdfa;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px 18px;display:flex}.admin-modal-header h2{margin:0;font-size:22px;line-height:1.2}.admin-modal-header p{color:var(--muted);margin:6px 0 0;font-size:13px}.admin-modal-body{padding:24px;overflow:auto}.admin-modal-actions{justify-content:flex-end;gap:10px;padding-top:6px;display:flex}.danger-panel{border-color:#edd4d4}.danger-panel .panel-header{background:#fff8f7}.danger-actions{justify-content:space-between;align-items:center;gap:18px;display:flex}.danger-actions p{max-width:68ch;color:var(--muted);margin:5px 0 0;font-size:13px}.customer-create-grid{max-width:760px}.staff-error{background:var(--danger-bg);color:var(--danger);border-radius:6px;margin:10px 0 0;padding:10px;font-size:12px;line-height:1.45}.tenant-settings-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:20px;width:100%;max-width:100%;display:grid}.tenant-settings-sidebar{align-self:start;gap:12px;width:220px;min-width:220px;display:grid;position:sticky;top:94px}.tenant-settings-sidebar-heading{border-bottom:1px solid #dfe5dc;padding:0 2px 8px}.tenant-settings-sidebar-heading strong{color:#17201d;font-size:14px;display:block}.tenant-settings-sidebar-heading span{color:#68746e;font-size:12px}.tenant-settings-nav{gap:3px;display:grid}.tenant-settings-nav a{color:#5d6862;border-radius:7px;align-items:center;gap:9px;width:100%;min-height:38px;padding:0 9px;font-size:13px;font-weight:720;transition:background .16s,color .16s,transform .16s;display:flex}.tenant-settings-nav a:hover,.tenant-settings-nav a.active{background:var(--tenant-secondary,#eef4eb);color:#18201d}.tenant-settings-nav a:active{transform:scale(.985)}.tenant-settings-content{width:100%;min-width:0;max-width:100%}.tenant-settings-page{width:100%;min-width:0;animation:.18s ease-out both tenant-settings-page-in}.tenant-settings-content .school-grid,.tenant-settings-content .panel,.tenant-settings-content .settings-wide-panel{min-width:0}.compact-heading{margin-bottom:18px}.settings-wide-panel{margin-top:18px}.mcp-token{color:#17201d;background:#fff;border:1px solid #dfe7df;border-radius:7px;width:100%;padding:12px;font-size:12px;display:block;overflow-x:auto}.mcp-token-inline{background:#f4fbf6;border:1px solid #b7d6c3;border-radius:8px;gap:8px;margin-bottom:14px;padding:12px;display:grid}.mcp-token-inline strong,.mcp-token-inline span{display:block}.mcp-token-inline strong{color:#17201d;font-size:13px}.mcp-token-inline span{color:#68746e;font-size:12px}.mcp-api-details{gap:12px;display:grid}.mcp-api-details div{gap:5px;display:grid}.mcp-api-details span,.mcp-agent-meta{color:#65716b;font-size:12px}.mcp-api-details code{color:#17201d;background:#f7faf7;border:1px solid #dfe7df;border-radius:7px;padding:9px 10px;font-size:12px;overflow-x:auto}.mcp-permission-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;display:grid}.mcp-permission-grid label,.mcp-active-toggle{color:#26312d;background:#f9fbf9;border:1px solid #dfe7df;border-radius:7px;align-items:center;gap:8px;min-height:34px;padding:8px 10px;font-size:13px;font-weight:650;display:flex}.mcp-create-agent{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-bottom:16px;display:grid}.mcp-agent-list{gap:12px;display:grid}.mcp-agent-card{background:#fff;border:1px solid #dfe7df;border-radius:8px;padding:14px}.mcp-agent-head{grid-template-columns:minmax(220px,1fr) 150px 110px;align-items:end;gap:12px;display:grid}.mcp-rate-field input{max-width:130px}.mcp-agent-meta{flex-wrap:wrap;gap:10px;margin:-2px 0 4px;display:flex}.mcp-log-list{display:grid}.mcp-log-row{border-top:1px solid #e8ede7;grid-template-columns:90px minmax(140px,220px) minmax(220px,1fr) 160px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:grid}.mcp-log-row time{color:#65716b;text-align:right;font-size:12px}@media (max-width:780px){.mcp-create-agent,.mcp-agent-head,.mcp-log-row{grid-template-columns:1fr}.mcp-log-row time{text-align:left}}@keyframes tenant-settings-page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.tenant-settings-page{animation:none}}.color-input-row{grid-template-columns:42px minmax(0,1fr);gap:8px;display:grid}.color-input-row input[type=color],.level-settings-row input[type=color]{min-height:38px;padding:3px}.branding-tabs{border:1px solid var(--line);background:#fff;border-radius:10px;flex-wrap:wrap;gap:4px;margin:0 0 16px;padding:4px;display:inline-flex;box-shadow:0 14px 30px #1f27220f}.branding-tabs a{min-height:36px;color:var(--muted);border-radius:7px;justify-content:center;align-items:center;padding:0 14px;font-size:13px;font-weight:760;display:inline-flex}.branding-tabs a.active{background:var(--text);color:#fff}.branding-form-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.planning-background-settings{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;gap:14px;padding:14px;display:grid}.planning-background-settings-head h3{margin:0 0 4px;font-size:15px}.planning-background-settings-head p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.planning-background-tabs{gap:12px;display:grid}.planning-background-tabs [data-slot=tabs-list]{background:#fff;border:1px solid #dfe5dc;border-radius:9px;gap:2px;width:fit-content;padding:3px;display:inline-flex;position:relative;box-shadow:0 12px 24px #1f27220d}.planning-background-tabs [data-slot=tabs-tab]{min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:0 13px;font-size:13px;font-weight:780;transition:background .18s,color .18s,transform .18s;display:inline-flex}.planning-background-tabs [data-slot=tabs-tab]:hover{color:var(--text);transform:translateY(-1px)}.planning-background-tabs [data-slot=tabs-tab][data-selected],.planning-background-tabs [data-slot=tabs-tab][data-active]{background:var(--text);color:#fff}.planning-background-tabs [data-slot=tab-indicator]{display:none}.planning-background-panel{animation:.22s planning-background-panel-in}@keyframes planning-background-panel-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.planning-opacity-field{align-content:start;gap:7px;display:grid}.planning-opacity-field span{color:var(--muted-strong);font-size:13px;font-weight:740}.planning-opacity-field input[type=range]{accent-color:var(--tenant-primary,#1d2a24)}.planning-opacity-field strong{color:var(--muted);font-size:12px}.planning-color-swatches{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.planning-color-swatches button{cursor:pointer;border:1px solid #d5ddd2;border-radius:999px;width:32px;height:32px;box-shadow:inset 0 0 0 3px #fff}.planning-gradient-carousel{width:100%;overflow:hidden}.planning-gradient-carousel-inner{width:100%;max-width:880px;margin:0 auto;padding:4px}.planning-gradient-carousel-card{background:#fff;border:1px solid #1f27221a;border-radius:20px;flex-direction:column;padding:18px 14px 16px;display:flex;position:relative;box-shadow:0 18px 40px #1f272214}.planning-gradient-carousel-badge{z-index:2;color:#2f3a35;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffc7;border:1px solid #d6ddd3;border-radius:12px;align-items:center;gap:7px;padding:7px 10px;font-size:13px;font-weight:760;display:inline-flex;position:absolute;top:16px;left:16px}.planning-gradient-carousel-badge svg{color:#c0629c;fill:#eebde0;width:17px;height:17px}.planning-gradient-carousel-stage{justify-content:center;align-items:center;width:100%;height:260px;padding-top:34px;display:flex;position:relative;overflow:hidden}.planning-gradient-carousel-track{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.planning-gradient-card{width:min(46%,260px);height:92%;position:absolute}.planning-gradient-card-preview{background:#eef4eb;border-radius:18px;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 22px 42px #1f27221f}.planning-gradient-card-preview>div{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd6;border:1px solid #1f27221a;border-radius:12px;padding:10px 12px;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 12px 28px #1f272214}.planning-gradient-card-preview h4{color:#1f211f;margin:0;font-size:16px;line-height:1.2}.planning-gradient-card-preview span{color:#73706a;font-size:12px}.planning-gradient-carousel-controls{justify-content:center;align-items:center;gap:16px;margin-top:14px;display:flex}.planning-gradient-carousel-controls>button{color:#2f3a35;cursor:pointer;background:#f7f8f5;border:1px solid #d6ddd3;border-radius:999px;place-items:center;width:38px;height:38px;transition:background .16s,transform .16s;display:grid}.planning-gradient-carousel-controls>button:hover{background:#e9eee5;transform:translateY(-1px)}.planning-gradient-carousel-controls svg{width:20px;height:20px}.planning-gradient-carousel-controls>div{flex-wrap:wrap;justify-content:center;gap:5px;max-width:260px;display:flex}.planning-gradient-carousel-controls>div button{cursor:pointer;background:#cfd7cc;border:0;border-radius:999px;width:8px;height:8px;padding:0;transition:width .22s,background .22s}.planning-gradient-carousel-controls>div button.active{background:#f472b6;width:24px}.branding-preview{border:1px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 22%, #dfe5dc);background:linear-gradient(135deg, var(--tenant-secondary,#eef4eb), #fffefb 72%);min-height:190px;color:var(--tenant-primary,#1d2a24);text-align:center;border-radius:8px;place-items:center;gap:16px;padding:24px;display:grid}.branding-preview.portal-banner-image,.branding-preview.portal-banner-gradient,.branding-preview.portal-banner-solid{min-height:260px;color:var(--portal-banner-text,#15201b);background:linear-gradient(90deg, color-mix(in srgb, var(--portal-banner-overlay,#fff) 88%, transparent), color-mix(in srgb, var(--portal-banner-overlay,#fff) 24%, transparent)), var(--portal-banner-image,none) center / cover no-repeat, linear-gradient(135deg, var(--portal-banner-from,var(--portal-bg,#eef4eb)), var(--portal-banner-to,var(--portal-bg,#fff)));align-content:end;place-items:stretch stretch}.branding-preview.portal-banner-gradient{background:linear-gradient(90deg, color-mix(in srgb, var(--portal-banner-overlay,#fff) 88%, transparent), color-mix(in srgb, var(--portal-banner-overlay,#fff) 24%, transparent)), linear-gradient(135deg, var(--portal-banner-from,#eef4eb), var(--portal-banner-to,#fff))}.branding-preview.portal-banner-solid{background:var(--portal-banner-from,#eef4eb)}.branding-preview.login-background-image,.branding-preview.login-background-gradient,.branding-preview.login-background-solid{background:linear-gradient(90deg, color-mix(in srgb, var(--login-overlay,#0e1714) 34%, transparent), color-mix(in srgb, var(--login-overlay,#0e1714) 8%, transparent)), var(--login-background-image,url(/brand/snowdesk-login-winter-bg.png)) center / cover no-repeat;min-height:260px}.branding-preview.login-background-gradient{background:linear-gradient(135deg, var(--login-gradient-from,#eef4eb), var(--login-gradient-to,#fff))}.branding-preview.login-background-solid{background:var(--login-gradient-from,#eef4eb)}.branding-preview.login-background-image .branding-preview-logo,.branding-preview.login-background-gradient .branding-preview-logo,.branding-preview.login-background-solid .branding-preview-logo{background:var(--login-panel,#fff)}.branding-preview-logo{border:1px solid color-mix(in srgb, var(--tenant-accent,#4e8fa8) 28%, #dfe5dc);background:#fff;border-radius:14px;place-items:center;width:70px;height:70px;font-weight:820;display:grid;overflow:hidden}.branding-preview-logo img{object-fit:contain;width:100%;height:100%;padding:8px}.branding-preview span,.branding-preview small{color:#5d6862;font-size:12px;font-weight:720;display:block}.branding-preview strong{margin:4px 0;font-size:24px;line-height:1.1;display:block}.planning-branding-preview,.login-branding-preview{border:1px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 18%, #dfe5dc);background:#f7faf6;border-radius:8px;overflow:hidden;box-shadow:0 18px 44px #1f272214}.planning-branding-preview{color:#17201d;background:linear-gradient(120deg, color-mix(in srgb, var(--tenant-secondary,#eef4eb) 64%, transparent), transparent 40%), #f8faf7;display:grid}.planning-branding-preview header{background:#fff;border-bottom:1px solid #dfe5dc;grid-template-columns:minmax(160px,.58fr) minmax(250px,1fr);align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:grid}.planning-preview-brand{align-items:center;gap:9px;min-width:0;display:flex}.planning-preview-brand span{background:var(--tenant-primary,#1d2a24);color:#fff;border-radius:8px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:12px;font-weight:860;display:grid;overflow:hidden}.planning-preview-brand img{object-fit:contain;background:#fff;width:100%;height:100%;padding:5px}.planning-preview-brand strong{color:#17201d;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.planning-branding-preview nav{background:#fff;border:1px solid #d9e1d6;border-radius:8px;flex-wrap:wrap;justify-self:end;gap:4px;padding:4px;display:inline-flex}.planning-branding-preview nav span{color:#5d6862;border-radius:6px;align-items:center;min-height:29px;padding:0 9px;font-size:11px;font-weight:780;display:inline-flex}.planning-branding-preview nav span.active{background:var(--tenant-primary,#1d2a24);color:#fff}.planning-preview-toolbar{flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px 0;display:flex}.planning-preview-toolbar button,.login-branding-preview button{background:var(--tenant-primary,#1d2a24);color:#fff;border:0;border-radius:7px;min-height:34px;font-size:12px;font-weight:820}.planning-preview-date{background:#fff;border:1px solid #dfe5dc;border-radius:7px;align-items:center;gap:8px;min-height:34px;margin-left:auto;padding:0 10px;display:inline-flex}.planning-preview-date span{color:#68746e;font-size:11px;font-weight:720}.planning-preview-date strong{color:#17201d;font-size:12px;font-weight:820}.planning-preview-table-wrap{padding:12px 14px 14px;overflow-x:auto}.planning-preview-table{border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff;border:1px solid #dfe5dc;border-radius:8px;width:100%;min-width:560px;overflow:hidden}.planning-preview-table th,.planning-preview-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e4e9e1;border-right:1px solid #e4e9e1;height:46px;padding:7px 8px;font-size:11px}.planning-preview-table thead th{background:color-mix(in srgb, var(--tenant-secondary,#eef4eb) 56%, #fff);color:#27332e;text-align:center;vertical-align:middle;font-weight:820}.planning-preview-table thead tr:first-child th{background:var(--tenant-primary,#1d2a24);color:#fff;border-right-color:color-mix(in srgb, var(--tenant-primary,#1d2a24) 70%, #fff)}.planning-preview-table tbody th{width:58px;color:var(--tenant-primary,#1d2a24);text-align:center;vertical-align:middle;background:#f7f9f6;font-weight:860}.planning-preview-table tbody td{color:#17201d;font-weight:760}.planning-preview-table tr:last-child th,.planning-preview-table tr:last-child td{border-bottom:0}.planning-preview-table th:last-child,.planning-preview-table td:last-child{border-right:0}.planning-preview-table .planning-preview-gap{background:#f2f5f0;width:12px;padding:0}.planning-preview-table .lesson{border-left:4px solid var(--tenant-accent,#4e8fa8);background:color-mix(in srgb, var(--tenant-secondary,#eef4eb) 42%, #fff)}.planning-preview-table .lesson.level-1{border-left-color:#86a8e7}.planning-preview-table .lesson.level-2{border-left-color:#dc2626}.planning-preview-table .lesson.level-4{border-left-color:var(--tenant-primary,#1d2a24)}.planning-preview-table .lesson span{color:#64706a;font-size:10px;font-weight:700}.planning-preview-table .empty{color:#8a948e;font-weight:720}.planning-preview-table .closed{color:#79837d;background:#eef0ed;font-weight:820}.planning-preview-modal{width:min(1420px,100vw - 44px)}.planning-branding-preview.compact{min-height:430px}.planning-branding-preview.large{min-height:min(760px,100dvh - 140px)}.planning-branding-preview .planning-preview-topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8faf6f0;border-bottom:1px solid #dfe5dc;grid-template-columns:minmax(170px,auto) minmax(0,1fr) minmax(110px,auto);align-items:center;gap:18px;min-height:66px;padding:10px 18px;display:grid}.planning-preview-main{gap:12px;padding:14px 18px 18px;display:grid}.planning-preview-topbar-brand{gap:10px}.planning-preview-mark{background:var(--tenant-secondary,#edf4e9);width:36px;height:36px;color:var(--tenant-primary,#263d2e);border:1px solid #cdd8cd;border-radius:10px;flex:0 0 36px}.planning-preview-topbar-brand strong,.planning-preview-user strong{color:#18201d;font-size:14px;display:block}.planning-preview-topbar-brand small,.planning-preview-user span{color:#68746e;font-size:12px;display:block}.planning-branding-preview .planning-preview-nav{background:0 0;border:0;border-radius:0;justify-self:center;align-items:center;gap:2px;min-width:0;padding:0;display:inline-flex}.planning-branding-preview .planning-preview-nav span{color:#5d6862;border-radius:8px;align-items:center;gap:8px;min-height:36px;padding:8px 10px;font-size:13px;font-weight:560;display:inline-flex}.planning-branding-preview .planning-preview-nav span.active{color:#19201f;background:#dfe5dc}.planning-preview-user{text-align:right;justify-self:end}.planning-preview-toolbar{padding:0}.planning-preview-toolbar button.secondary{color:#263d2e;background:#fff;border:1px solid #d8dfd5}.planning-preview-table-wrap{padding:0}.planning-preview-table{width:70%;min-width:640px;margin:0 auto;box-shadow:0 18px 40px -38px #19201f5c}.planning-branding-preview.large .planning-preview-table{min-width:820px}.planning-preview-table th,.planning-preview-table td{height:50px}.planning-preview-table thead tr:first-child th{color:#18201d;background:#f8faf5;border-right-color:#dfe5dc}.planning-preview-table thead th{color:#5d6862;background:#f8faf5}.planning-preview-table tbody th{z-index:2;color:#2f3a35;background:#fff;position:sticky;left:0}.planning-preview-table .lesson{box-shadow:inset 0 0 0 999px color-mix(in srgb, var(--tenant-secondary,#eef4eb) 36%, transparent);background:#fff;border-left:0}.planning-preview-table .lesson strong,.planning-preview-table .lesson span{display:block}.planning-preview-table .lesson strong{color:#19201f;font-size:11px;line-height:1.25}.planning-preview-table .lesson span{color:#64706a;margin-top:3px}.planning-preview-table .lesson.snowboard{box-shadow:inset 0 0 0 999px #e9f4ff}.planning-preview-table .closed{background:#ecefeb}@media (max-width:1100px){.planning-preview-table{width:100%}}.login-branding-preview{background:linear-gradient(90deg, color-mix(in srgb, var(--login-overlay,#0e1714) 34%, transparent), color-mix(in srgb, var(--login-overlay,#0e1714) 8%, transparent)), var(--login-background-image,url(/brand/snowdesk-login-winter-bg.png)) center / cover no-repeat;place-items:center;min-height:420px;padding:22px;display:grid}.login-branding-preview.large{min-height:min(820px,92dvh - 58px);box-shadow:none;border:0;border-radius:0;overflow-y:auto}.login-branding-preview.login-background-gradient{background:linear-gradient(135deg, var(--login-gradient-from,#eef4eb), var(--login-gradient-to,#fff))}.login-branding-preview.login-background-solid{background:var(--login-gradient-from,#eef4eb)}.login-branding-preview section{border:1px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 16%, #dfe5dc);background:var(--login-panel,#fff);border-radius:8px;justify-items:start;gap:9px;width:min(360px,100%);padding:24px;display:grid;box-shadow:0 20px 52px #0f171333}.login-branding-preview.large section{width:min(420px,92%);padding:30px}.login-branding-preview span,.login-branding-preview label,.login-branding-preview p,.login-preview-options a{color:#68746e;font-size:12px;font-weight:760}.login-branding-preview p{margin:-2px 0 4px;font-weight:650;line-height:1.45}.login-branding-preview strong{color:var(--tenant-primary,#1d2a24);font-size:24px;line-height:1.1}.login-preview-input{color:#17201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;align-items:center;width:100%;min-height:40px;padding:0 11px;font-size:13px;display:flex}.login-preview-input.muted{color:#68746e;letter-spacing:0}.login-preview-input.code{color:var(--tenant-primary,#1d2a24);letter-spacing:0;justify-content:center;font-size:16px;font-weight:860}.login-preview-options{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.login-preview-options span{align-items:center;gap:7px;display:inline-flex}.login-preview-options i{border:1px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 42%, #dfe5dc);background:color-mix(in srgb, var(--tenant-primary,#1d2a24) 12%, #fff);border-radius:3px;width:13px;height:13px;display:inline-block}.login-preview-options a{color:var(--tenant-primary,#1d2a24);text-decoration:none}.login-preview-divider{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;width:100%;margin:2px 0;display:grid}.login-preview-divider:before,.login-preview-divider:after{content:"";background:#dfe5dc;height:1px}.login-preview-divider span{text-transform:uppercase;font-size:10px}.login-branding-preview button{width:100%}.portal-app{--portal-line:color-mix(in srgb, var(--tenant-primary,#263d2e) 14%, #ededed);--portal-line-strong:color-mix(in srgb, var(--tenant-primary,#263d2e) 28%, #cdcdcd);--portal-muted:color-mix(in srgb, var(--portal-text,#19201f) 58%, #fff);--portal-muted-strong:color-mix(in srgb, var(--portal-text,#19201f) 78%, #fff);--portal-nav-hover-bg:color-mix(in srgb, var(--portal-nav-hover,#eef4eb) 78%, var(--portal-surface,#fff));--portal-nav-hover-shadow:color-mix(in srgb, var(--portal-nav-hover,#eef4eb) 42%, transparent);background:linear-gradient(120deg, color-mix(in srgb, var(--portal-nav-hover,#d9ead4) 30%, transparent) 0, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--portal-bg,#f5f8f3) 86%, #fff) 0, var(--portal-bg,#f5f8f3) 260px, color-mix(in srgb, var(--portal-bg,#f5f8f3) 84%, #fff) 100%);color:var(--portal-text,#19201f);font-feature-settings:"cv02", "cv03", "cv04", "cv11";font-family:OpenAI Sans,Inter,Geist Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5}.portal-app.portal-background-image{background:linear-gradient(120deg, color-mix(in srgb, var(--portal-background-overlay,#fff) 72%, transparent) 0, color-mix(in srgb, var(--portal-background-overlay,#fff) 38%, transparent) 46%, transparent 100%), var(--portal-background-image,none) center / cover fixed no-repeat, linear-gradient(180deg, color-mix(in srgb, var(--portal-bg,#f5f8f3) 86%, #fff) 0, var(--portal-bg,#f5f8f3) 260px, color-mix(in srgb, var(--portal-bg,#f5f8f3) 84%, #fff) 100%)}.portal-app.portal-background-gradient{background:linear-gradient(120deg, color-mix(in srgb, var(--portal-nav-hover,#d9ead4) 22%, transparent) 0, transparent 34%), linear-gradient(160deg, var(--portal-background-from,#f5f8f3) 0%, var(--portal-background-to,#fff) 100%)}.portal-app.portal-background-solid{background:linear-gradient(120deg, color-mix(in srgb, var(--portal-nav-hover,#d9ead4) 30%, transparent) 0, transparent 34%), linear-gradient(180deg, color-mix(in srgb, var(--portal-bg,#f5f8f3) 86%, #fff) 0, var(--portal-bg,#f5f8f3) 260px, color-mix(in srgb, var(--portal-bg,#f5f8f3) 84%, #fff) 100%)}.portal-topbar{border-bottom-color:var(--portal-line);background:color-mix(in srgb, var(--portal-surface,#fff) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:0 24px}.portal-topbar-row{gap:10px 18px;max-width:1500px;min-height:56px}.portal-nav,.portal-school-switcher summary,.portal-action-card,.portal-hero-stats div,.portal-overview-grid .panel,.portal-grid .panel{border-color:var(--portal-line);background:color-mix(in srgb, var(--portal-surface,#fff) 96%, #fff);box-shadow:0 1px 2px color-mix(in srgb, var(--tenant-primary,#263d2e) 8%, transparent);border-radius:8px}.portal-school-switcher{flex-basis:210px}.portal-school-switcher summary{min-height:40px;color:var(--portal-text,#263d2e);border-radius:8px;gap:10px;padding:4px 10px 4px 6px;font-size:13px;font-weight:600}.portal-school-switcher summary strong,.portal-account strong{color:var(--portal-text,#18201d);font-size:13px;font-weight:600}.portal-school-switcher summary small,.portal-account span,.portal-page-heading p,.portal-action-card em,.portal-lesson-row span,.portal-status-list span,.portal-kv-list span,.portal-product-row span,.portal-product-row em,.portal-timeline-date span,.portal-timeline-detail span,.portal-subscription-hero p{color:var(--portal-muted,#68746e)}.portal-school-switcher .school-brand-mark,.portal-hero-logo{background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e);border-radius:8px}.portal-main{width:min(100%,1500px);margin:0 auto;padding:26px 28px 44px}.portal-workspace{gap:16px;max-width:none}.portal-nav{box-shadow:none;scrollbar-width:none;background:0 0;border:0;border-radius:0;flex-basis:620px;justify-self:center;gap:1px;padding:0;overflow-x:auto}.portal-nav::-webkit-scrollbar{display:none}.portal-nav a{min-height:36px;color:var(--portal-muted-strong,#414141);border-radius:8px;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;transition:background .18s,color .18s,transform .18s}.portal-nav a svg{color:color-mix(in srgb, var(--portal-text,#263d2e) 48%, var(--portal-muted,#8f8f8f));transition:color .18s}.portal-nav a.active{background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e);transform:none}.portal-nav a:hover{background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e);box-shadow:0 8px 18px -16px var(--portal-nav-hover-shadow);transform:none}.portal-nav a:hover svg,.portal-nav a.active svg{color:var(--portal-text,#263d2e)}.portal-nav a.portal-nav-primary{min-width:0;color:var(--portal-muted-strong,#414141);box-shadow:none;background:0 0;border:0}.portal-nav a.portal-nav-primary svg{background:0 0;border-radius:0;width:auto;height:auto;padding:0}.portal-nav a.portal-nav-primary.active{background:var(--portal-text,#263d2e);color:#fff;box-shadow:none}.portal-nav a.portal-nav-primary:hover{background:var(--portal-text,#263d2e);color:#fff;box-shadow:0 10px 22px -16px var(--portal-nav-hover-shadow)}.portal-account{color:var(--portal-muted,#68746e);flex-basis:250px;gap:10px;font-size:12px}.portal-account>svg{color:var(--portal-muted-strong,#414141)}.portal-profile-menu summary,.portal-account .signout-button,.portal-app .secondary-button,.portal-app .danger-button{border-color:var(--portal-line-strong);background:var(--portal-surface,#fff);min-height:32px;color:var(--portal-muted-strong,#414141);box-shadow:none;border-radius:8px;font-size:13px;font-weight:500}.portal-profile-menu summary{width:32px;height:32px;min-height:32px;display:grid}.portal-profile-menu summary:hover,.portal-account .signout-button:hover,.portal-app .secondary-button:hover:not(:disabled),.portal-app .danger-button:hover:not(:disabled){background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e);box-shadow:none}.portal-app .button,.portal-app .portal-recurring-book,.portal-app .portal-floating-add-button,.portal-app .portal-friend-accept,.portal-app .portal-catalog-basket-button{background:var(--portal-text,#263d2e);color:#fff;min-height:34px;box-shadow:none;border-radius:8px;font-size:13px;font-weight:500}.portal-app .button:hover:not(:disabled),.portal-app .portal-recurring-book:hover:not(:disabled),.portal-app .portal-floating-add-button:hover,.portal-app .portal-friend-accept:hover:not(:disabled),.portal-app .portal-catalog-basket-button:hover:not(:disabled){background:color-mix(in srgb, var(--portal-text,#263d2e) 86%, #000);box-shadow:none}.portal-app .panel,.portal-app .portal-subscription-hero,.portal-app .portal-friend-card,.portal-app .portal-friend-request-row,.portal-app .portal-friend-empty,.portal-app .portal-preference-card,.portal-app .portal-calendar-card{border-color:var(--portal-line);background:color-mix(in srgb, var(--portal-surface,#fff) 96%, #fff);box-shadow:0 1px 2px color-mix(in srgb, var(--tenant-primary,#263d2e) 8%, transparent);border-radius:12px}.portal-app .panel-header{border-bottom-color:var(--portal-line);background:var(--portal-surface,#fff);padding:16px 18px 14px}.portal-app .panel-header h2{color:var(--portal-text,#18201d);font-size:16px;font-weight:600;line-height:1.35}.portal-app .panel-header p{color:var(--portal-muted,#68746e);font-size:13px}.portal-app .panel-body{padding:18px}.portal-app .field input,.portal-app .field select,.portal-app .field textarea,.portal-app input,.portal-app select,.portal-app textarea{border-color:var(--portal-line-strong);background:var(--portal-surface,#fff);color:var(--portal-text,#18201d);border-radius:8px;font-size:13px}.portal-app .field input:focus,.portal-app .field select:focus,.portal-app .field textarea:focus,.portal-app input:focus,.portal-app select:focus,.portal-app textarea:focus{border-color:var(--portal-text,#263d2e);box-shadow:0 0 0 2px color-mix(in srgb, var(--portal-nav-hover,#eef4eb) 42%, transparent);background:var(--portal-surface,#fff)}.portal-hero{border-color:var(--portal-line);min-height:230px;box-shadow:0 1px 2px color-mix(in srgb, var(--tenant-primary,#263d2e) 8%, transparent);border-radius:8px;padding:26px}.portal-hero h1{color:var(--portal-banner-text,#15201b);text-shadow:none;font-size:clamp(32px,4vw,46px);font-weight:600;line-height:1.08}.portal-hero p{color:color-mix(in srgb, var(--portal-banner-text,#15201b) 66%, #fff);font-size:14px;font-weight:500}.portal-action-grid{gap:10px}.portal-action-card{min-height:82px;box-shadow:0 1px 2px color-mix(in srgb, var(--tenant-primary,#263d2e) 8%, transparent);padding:14px}.portal-action-card:hover{border-color:color-mix(in srgb, var(--portal-nav-hover,#eef4eb) 58%, var(--portal-line));box-shadow:0 8px 18px -16px var(--portal-nav-hover-shadow);transform:translateY(-1px)}.portal-action-card strong,.portal-page-heading h1,.portal-lesson-row strong,.portal-status-list strong,.portal-kv-list strong,.portal-product-row strong,.portal-timeline-date strong,.portal-timeline-detail strong,.portal-subscription-hero strong{color:var(--portal-text,#18201d)}.portal-action-card strong{font-size:14px;font-weight:600}.portal-page-heading h1{font-size:32px;font-weight:600;line-height:1.18}.portal-lesson-row,.portal-status-list>div,.portal-kv-list>div{border-top-color:var(--portal-line);padding:12px 16px}.portal-count-chip,.portal-status-chip{background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e);border-radius:7px}.portal-branding-preview-wrap{gap:10px;display:grid}.portal-branding-preview-toolbar{justify-content:space-between;align-items:center;gap:12px;min-height:36px;display:flex}.portal-branding-preview-toolbar span{color:var(--muted-strong);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:820}.portal-branding-preview-toolbar button,.portal-preview-modal-header button{border:1px solid var(--line-strong);min-height:34px;color:var(--text);cursor:pointer;background:#fff;border-radius:999px;font-size:12px;font-weight:820}.portal-branding-preview-toolbar button{justify-content:center;align-items:center;gap:7px;padding:0 12px;display:inline-flex}.portal-branding-preview{background:linear-gradient(120deg, color-mix(in srgb, var(--portal-nav-hover,#d9ead4) 34%, transparent) 0, transparent 38%), linear-gradient(180deg, var(--portal-bg,#f5f8f3) 0, color-mix(in srgb, var(--portal-bg,#f5f8f3) 68%, #fff) 44%, color-mix(in srgb, var(--portal-bg,#f5f8f3) 82%, #f4f3ee) 100%);min-height:0;color:var(--portal-text,#19201f);border:1px solid #dbe3d8;border-radius:8px;overflow:hidden;box-shadow:0 18px 44px #1f272214}.portal-branding-preview.compact{max-height:620px;overflow-y:auto}.portal-branding-preview.portal-app{font-size:13px}.portal-branding-preview .portal-topbar{padding:8px 12px;position:static}.portal-branding-preview .portal-topbar-row{gap:8px 12px;max-width:none;min-height:48px}.portal-branding-preview .portal-brand{flex-basis:190px}.portal-branding-preview .school-brand-mark{width:38px;height:38px}.portal-branding-preview .portal-nav{flex-basis:520px}.portal-branding-preview .portal-nav span{min-height:34px;color:var(--portal-muted-strong,#414141);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:500;display:inline-flex}.portal-branding-preview .portal-nav span svg{color:color-mix(in srgb, var(--portal-text,#263d2e) 48%, var(--portal-muted,#8f8f8f))}.portal-branding-preview .portal-nav span.active{background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e)}.portal-branding-preview .portal-nav span.active svg{color:var(--portal-text,#263d2e)}.portal-branding-preview .portal-nav span.portal-nav-primary{background:color-mix(in srgb, var(--portal-nav-hover,#eef4eb) 50%, var(--portal-surface,#fff));color:var(--portal-text,#263d2e)}.portal-branding-preview .portal-nav span.portal-nav-primary svg{color:currentColor}.portal-branding-preview .portal-account{flex-basis:210px}.portal-preview-menu-button{border:1px solid var(--portal-line-strong);background:var(--portal-surface,#fff);width:32px;height:32px;color:var(--portal-muted-strong,#414141);border-radius:8px;place-items:center;display:grid}.portal-branding-preview .portal-main{width:100%;padding:14px}.portal-branding-preview .portal-workspace{gap:12px;max-width:none}.portal-branding-preview .portal-hero{min-height:190px;padding:24px}.portal-branding-preview .portal-hero h1{font-size:34px}.portal-branding-preview .portal-hero-stats{grid-template-columns:repeat(3,minmax(76px,1fr));gap:8px}.portal-branding-preview .portal-hero-stats div{min-height:72px;padding:10px}.portal-branding-preview .portal-hero-stats strong{font-size:27px}.portal-branding-preview .portal-hero-logo{width:68px;height:68px}.portal-branding-preview .portal-action-grid{gap:9px}.portal-branding-preview .portal-action-card{min-height:72px;padding:12px}.portal-branding-preview .portal-overview-grid{gap:10px}.portal-branding-preview .panel-header{padding:13px}.portal-branding-preview .portal-lesson-row,.portal-branding-preview .portal-status-list>div{min-height:34px;padding:9px 13px}.portal-preview-topbar{border-bottom:1px solid var(--portal-line);background:color-mix(in srgb, var(--portal-surface,#fff) 94%, transparent);grid-template-columns:minmax(150px,.72fr) minmax(240px,1fr) minmax(110px,auto);align-items:center;gap:10px;min-height:58px;padding:9px 12px;display:grid}.portal-preview-brand,.portal-preview-account,.portal-preview-nav,.portal-preview-action{min-width:0}.portal-preview-brand,.portal-preview-account{align-items:center;gap:8px;display:flex}.portal-preview-mark{border:1px solid var(--portal-line);background:var(--portal-nav-hover-bg);width:38px;height:38px;color:var(--portal-text,#263d2e);border-radius:8px;flex:0 0 38px;place-items:center;font-size:12px;font-weight:860;display:grid;overflow:hidden}.portal-preview-mark img{object-fit:contain;width:100%;height:100%;padding:5px}.portal-preview-brand strong,.portal-preview-brand small,.portal-preview-account span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.portal-preview-brand strong{color:var(--portal-text,#18201d);font-size:13px}.portal-preview-brand small,.portal-preview-account span{color:var(--portal-muted,#68746e);font-size:11px;font-weight:720}.portal-preview-nav{border:1px solid var(--portal-line);background:color-mix(in srgb, var(--portal-surface,#fff) 86%, transparent);border-radius:8px;justify-content:center;gap:4px;padding:4px;display:inline-flex}.portal-preview-nav span{min-height:30px;color:var(--portal-muted-strong,#536058);white-space:nowrap;border-radius:6px;align-items:center;padding:0 9px;font-size:11px;font-weight:780;display:inline-flex}.portal-preview-nav span.active{background:var(--portal-nav-hover-bg);color:var(--portal-text,#263d2e)}.portal-preview-account{color:var(--portal-muted,#68746e);justify-content:flex-end}.portal-preview-main{gap:12px;padding:14px;display:grid}.portal-preview-hero{border:1px solid var(--portal-line);min-height:190px;color:var(--portal-banner-text,#15201b);background:linear-gradient(90deg, color-mix(in srgb, var(--portal-banner-overlay,#fff) 94%, transparent) 0%, color-mix(in srgb, var(--portal-banner-overlay,#fff) 74%, transparent) 38%, color-mix(in srgb, var(--portal-banner-overlay,#fff) 22%, transparent) 100%), var(--portal-banner-image,none) center / cover no-repeat, linear-gradient(135deg, var(--portal-banner-from,var(--portal-bg,#eef4eb)), var(--portal-banner-to,var(--portal-bg,#fff)));border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:24px;display:grid;overflow:hidden}.portal-banner-gradient .portal-preview-hero{background:linear-gradient(90deg, color-mix(in srgb, var(--portal-banner-overlay,#fff) 90%, transparent), color-mix(in srgb, var(--portal-banner-overlay,#fff) 40%, transparent)), linear-gradient(135deg, var(--portal-banner-from,#eef4eb), var(--portal-banner-to,#fff))}.portal-banner-solid .portal-preview-hero{background:var(--portal-banner-from,#eef4eb)}.portal-preview-hero h3{color:var(--portal-banner-text,#15201b);letter-spacing:0;margin:0;font-size:34px;line-height:1.05}.portal-preview-hero p{color:color-mix(in srgb, var(--portal-banner-text,#15201b) 68%, var(--portal-muted,#536058));margin:8px 0 0;font-size:13px;font-weight:720}.portal-preview-stats{grid-template-columns:repeat(3,minmax(76px,1fr));gap:8px;display:grid}.portal-preview-stats span,.portal-preview-action,.portal-preview-content section{border:1px solid var(--portal-line);background:color-mix(in srgb, var(--portal-surface,#fff) 88%, transparent);box-shadow:0 1px 2px color-mix(in srgb, var(--portal-nav-hover,#eef4eb) 22%, transparent);border-radius:8px}.portal-preview-stats span{align-content:center;gap:4px;min-height:72px;padding:10px;display:grid}.portal-preview-stats strong{color:var(--portal-text,#17201d);font-size:27px;line-height:1}.portal-preview-stats small{color:var(--portal-muted,#68746e);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:820}.portal-preview-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.portal-preview-action{grid-template-columns:32px minmax(0,1fr);grid-template-areas:"icon label""icon value";align-items:center;gap:2px 9px;min-height:72px;padding:12px;display:grid}.portal-preview-action>span{background:var(--portal-nav-hover-bg);width:32px;height:32px;color:var(--portal-text,#263d2e);border-radius:8px;grid-area:icon;place-items:center;display:grid}.portal-preview-action strong{color:var(--portal-text,#17201d);text-overflow:ellipsis;white-space:nowrap;grid-area:label;font-size:12px;overflow:hidden}.portal-preview-action small{color:var(--portal-muted,#68746e);text-overflow:ellipsis;white-space:nowrap;grid-area:value;font-size:11px;font-weight:700;overflow:hidden}.portal-preview-content{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:10px;display:grid}.portal-preview-content section{align-content:start;gap:8px;min-height:122px;padding:13px;display:grid}.portal-preview-content h4{color:var(--portal-text,#17201d);margin:0;font-size:13px}.portal-preview-lesson,.portal-preview-status span{border-top:1px solid var(--portal-line);min-height:32px;color:var(--portal-muted,#68746e);justify-content:space-between;align-items:center;gap:10px;padding-top:8px;font-size:11px;display:flex}.portal-preview-lesson strong,.portal-preview-status strong{color:var(--portal-text,#17201d)}.portal-preview-status{gap:4px;display:grid}.portal-preview-modal-backdrop{z-index:20000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d12109e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.portal-preview-modal{background:#fff;border:1px solid #ffffff57;border-radius:10px;grid-template-rows:auto minmax(0,1fr);width:min(1280px,100%);max-height:min(92dvh,980px);display:grid;overflow:hidden;box-shadow:0 28px 90px #00000061}.portal-preview-modal-header{border-bottom:1px solid #dfe5dc;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:12px 14px 12px 18px;display:flex}.portal-preview-modal-header strong,.portal-preview-modal-header span{display:block}.portal-preview-modal-header strong{color:var(--text);font-size:15px}.portal-preview-modal-header span{color:var(--muted);font-size:12px}.portal-preview-modal-header button{border-radius:8px;width:36px;padding:0}.portal-branding-preview.large{height:min(820px,92dvh - 58px);box-shadow:none;border:0;border-radius:0;overflow-y:auto}.portal-branding-preview.large .portal-preview-main{padding:22px}.portal-branding-preview.large .portal-preview-hero{min-height:300px;padding:34px}.portal-branding-preview.large .portal-preview-hero h3{font-size:48px}.portal-branding-preview.large .portal-preview-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.level-settings-list{gap:0;display:grid}.price-settings-list{gap:10px;padding:0 18px 18px;display:grid}.price-category-board{gap:14px;padding:0 18px 18px;display:grid}.price-category-toolbar{justify-content:flex-end;display:flex}.price-category-title-form input{color:#17201d;background:#fff;border:1px solid #dfe5dc;border-radius:6px;min-height:36px;padding:0 10px}.compact-action-button{align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:12px;display:inline-flex}.price-category-modal{width:min(460px,100%)}.planner-modal.monthly-bulk-modal{grid-template-rows:auto minmax(0,1fr);width:min(760px,100vw - 40px);max-height:min(88vh,760px);display:grid}.planner-modal.piste-template-modal-months{width:min(680px,100vw - 40px)}.monthly-bulk-modal .modal-header.compact{background:#f8faf5;border-bottom:1px solid #e7ece3;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.monthly-bulk-modal .modal-header.compact h3{color:#17201d;min-width:0;margin:0;font-size:18px;font-weight:760;line-height:1.22}.monthly-bulk-modal .modal-header.compact button{color:#38433e;cursor:pointer;background:#fff;border:1px solid #d7ded4;border-radius:7px;flex:none;place-items:center;width:32px;height:32px;font-size:16px;line-height:1;display:grid}.monthly-bulk-modal .monthly-template-apply-form{grid-template-rows:auto minmax(0,1fr) auto;min-height:0;padding:16px 18px 18px;display:grid;overflow:hidden}.monthly-bulk-modal .piste-template-target-grid,.monthly-bulk-modal .monthly-target-grid{align-content:start;max-height:min(48vh,420px);padding-right:2px;overflow-y:auto}.monthly-bulk-modal .piste-template-target-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.monthly-bulk-modal .monthly-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-bulk-modal .monthly-target-card{min-height:62px}.monthly-bulk-modal .monthly-target-card strong,.monthly-bulk-modal .monthly-target-card span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.monthly-bulk-modal .monthly-template-apply-footer{background:#fff;flex-wrap:wrap;margin:0 -18px -18px;padding:12px 18px 14px}.monthly-bulk-modal .monthly-template-apply-footer span{min-width:0;line-height:1.35}.monthly-bulk-modal .monthly-template-apply-footer .button{white-space:nowrap;flex:none}@media (max-width:560px){.planner-modal.monthly-bulk-modal,.planner-modal.piste-template-modal-months{width:calc(100vw - 20px)}.monthly-bulk-modal .monthly-target-grid{grid-template-columns:1fr}.monthly-bulk-modal .monthly-template-apply-footer{flex-direction:column;align-items:stretch}.monthly-bulk-modal .monthly-template-apply-footer .button{width:100%}}.price-category-list{gap:14px;display:grid}.price-category-section{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;display:grid;overflow:hidden}.price-category-section.uncategorized{background:#fff}.price-category-section.inactive{opacity:.68}.price-category-header{cursor:grab;border-bottom:1px solid #e7ece4;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;padding:10px 12px;display:grid}.price-category-header.dragging{opacity:.56}.price-category-header>strong{color:#17201d;font-size:14px}.price-category-header>span{color:#4f5a54;background:#eef4eb;border-radius:999px;place-items:center;min-width:28px;height:28px;font-size:12px;font-weight:820;display:inline-grid}.price-category-title-form{grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:8px;display:grid}.price-category-title-form label{color:#4f5a54;align-items:center;gap:6px;font-size:12px;font-weight:720;display:inline-flex}.category-price-list{padding:12px}.levels-layout{grid-template-columns:1fr;align-items:start}.level-create-modal{width:min(640px,100%)}.price-item-modal{width:min(720px,100%)}.level-create-modal-actions{justify-content:flex-end;gap:10px;padding-top:2px;display:flex}.rental-page{gap:18px;display:grid}.rental-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.rental-summary-card{background:#fffefb;border:1px solid #dfe5dc;border-radius:8px;align-content:center;gap:8px;min-height:112px;padding:18px;display:grid;box-shadow:0 12px 30px -28px #19201f6b}.rental-summary-card span{color:#66716b;font-size:12px;font-weight:780}.rental-summary-card strong{color:#17201d;font-size:34px;line-height:1}.rental-board{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;display:grid}.rental-card{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:16px;padding:18px;display:grid;box-shadow:0 18px 40px -36px #19201f5c}.rental-card.concept{background:#fffdf6;border-color:#ead5a6}.rental-card-main{justify-content:space-between;align-items:start;gap:16px;display:flex}.rental-card h2{color:#17201d;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 5px;font-size:22px;line-height:1.15;display:flex}.rental-card p{color:#66716b;margin:0;font-size:13px;line-height:1.45}.rental-eyebrow{color:#66716b;font-size:11px;font-weight:820}.rental-date-stack{text-align:right;background:#fbfcf8;border:1px solid #edf1e9;border-radius:8px;flex:none;gap:3px;min-width:120px;padding:10px;display:grid}.rental-date-stack span,.rental-date-stack em{color:#66716b;font-size:11px;font-style:normal;font-weight:720}.rental-date-stack strong{color:#263d2e;font-size:13px}.rental-date-stack b{color:#1f583b;background:#e7f2eb;border-radius:999px;justify-self:end;width:fit-content;padding:3px 7px;font-size:11px;font-weight:820}.rental-item-list{flex-wrap:wrap;gap:8px;display:flex}.rental-item-chip{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:7px;gap:3px;padding:8px 10px;display:grid}.rental-item-chip strong{color:#263d2e;font-size:12px}.rental-item-chip span{color:#66716b;font-size:11px}.rental-note{border-left:3px solid #cad4c8;padding-left:10px}.rental-card-actions{justify-content:flex-end;gap:8px;display:flex}.rental-concept-board{grid-template-columns:1fr}.rental-section-heading{grid-column:1/-1}.rental-section-heading h2{color:#17201d;margin:0;font-size:18px}.rental-empty{grid-column:1/-1;gap:4px;padding:28px;display:grid}.rental-modal{width:min(820px,100%)}.rental-customer-search{position:relative}.rental-customer-results{z-index:5;inset-inline:0;background:#fff;border:1px solid #dfe5dc;border-radius:8px;display:grid;position:absolute;top:calc(100% + 4px);overflow:hidden;box-shadow:0 18px 36px -26px #19201f70}.rental-customer-results button{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1e9;gap:2px;padding:9px 10px;display:grid}.rental-customer-results button:hover{background:#f8faf5}.rental-customer-results span{color:#66716b;font-size:12px}.rental-item-builder{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;gap:10px;padding:12px;display:grid}.rental-item-builder-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.rental-item-row{grid-template-columns:minmax(170px,1fr) minmax(180px,1.2fr) 70px 36px;gap:8px;display:grid}.rental-item-row select,.rental-item-row input,.rental-catalog-create select,.rental-catalog-create input,.rental-catalog-row select,.rental-catalog-row input{color:#18201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:36px;padding:7px 9px;font-size:13px}.rental-settings-toggle-panel{margin-bottom:18px}.rental-module-warning{color:#7b5a12;background:#fff8e5;border:1px solid #ead5a6;border-radius:7px;margin:12px 0 0;padding:10px 12px;font-size:13px;font-weight:720;line-height:1.45}.rental-cleanup-panel{margin-bottom:18px}.rental-cleanup-body{gap:14px;display:grid}.rental-cleanup-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;display:grid}.rental-cleanup-stats span,.rental-cleanup-stats strong{min-width:0}.rental-cleanup-stats span{color:#68746e;font-size:12px;font-weight:720}.rental-cleanup-stats strong{color:#17201d;grid-row:2;font-size:22px;line-height:1}.rental-cleanup-form{border-top:1px solid #e7ece3;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.rental-toggle-form,.rental-catalog-create,.rental-catalog-row{grid-template-columns:minmax(180px,1.25fr) minmax(170px,1.1fr) minmax(110px,.55fr) minmax(92px,.42fr) minmax(92px,.42fr) 76px auto;align-items:center;gap:10px;display:grid}.rental-toggle-form{grid-template-columns:minmax(0,1fr) auto}.rental-toggle{color:#263d2e;align-items:center;gap:8px;font-weight:780;display:inline-flex}.rental-catalog-list{border-top:1px solid #dfe5dc;gap:0;display:grid}.rental-catalog-tabs{flex-wrap:wrap;gap:8px;padding:0 18px 14px;display:flex}.rental-catalog-tabs a{color:#37453f;background:#fff;border:1px solid #dfe5dc;border-radius:7px;justify-content:center;align-items:center;min-height:34px;padding:7px 12px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.rental-catalog-tabs a.active{color:#1f583b;background:#e7f2eb;border-color:#2f6f4e}.rental-catalog-row{border-bottom:1px solid #edf1e9;padding:12px 18px}.rental-field-switches{flex-wrap:wrap;grid-column:1/-2;gap:6px 10px;display:flex}.rental-field-switches label{color:#5d6862;align-items:center;gap:5px;font-size:12px;font-weight:720;display:inline-flex}.rental-create-page-form{gap:18px;display:grid}.rental-draft-status{color:#6f5a22;background:#fffdf6;border:1px solid #e6dcc2;border-radius:8px;align-items:center;gap:8px;width:fit-content;padding:8px 10px;font-size:12px;font-weight:760;display:flex}.rental-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.rental-create-full{grid-column:1/-1}.rental-create-items{gap:14px;display:grid}.rental-create-item{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;gap:12px;padding:14px;display:grid}.rental-create-item-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.rental-create-item-head>div{gap:2px;display:grid}.rental-create-item-head strong{color:#17201d;font-size:14px}.rental-create-item-head span{color:#66716b;font-size:12px;font-weight:720}.rental-create-empty{color:#66716b;background:#fbfcf8;border:1px dashed #cfd8ca;border-radius:8px;gap:4px;padding:18px;display:grid}.rental-create-empty strong{color:#17201d}.rental-create-grid .field{gap:6px;display:grid}.rental-create-grid .field span,.rental-create-page-form .field>span{color:#435049;font-size:12px;font-weight:780}.rental-create-grid input,.rental-create-grid select,.rental-create-page-form textarea{color:#18201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:38px;padding:8px 10px;font-size:13px}.rental-shoe-size-field{max-width:150px}.rental-age-field{max-width:92px}.rental-height-field,.rental-weight-field{max-width:112px}.rental-shoe-size-field input,.rental-age-field input,.rental-height-field input,.rental-weight-field input{width:100%}.rental-create-page-form textarea{resize:vertical;width:100%}.rental-create-actions{justify-content:flex-end;gap:10px;padding-top:14px;display:flex}.rental-item-picker-modal{width:min(440px,100%)}.rental-item-picker-field{gap:6px;display:grid}.rental-item-picker-field span{color:#435049;font-size:12px;font-weight:780}.rental-item-picker-field select{color:#18201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:40px;padding:8px 10px;font-size:13px}.rental-item-picker-actions{justify-content:flex-end;gap:10px;display:flex}.payment-status-body{gap:14px;display:grid}.payment-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.payment-empty-body{place-items:center;min-height:220px;display:grid}.payment-status-badge{color:#5d6862;background:#fbfcf8;border:1px solid #dfe5dc;border-radius:999px;align-items:center;gap:8px;width:fit-content;min-height:34px;padding:0 12px;font-size:13px;font-weight:820;display:inline-flex}.payment-status-badge.success{color:#286236;background:#f2f8f0;border-color:#c9dfc6}.payment-status-badge.warning{color:#7b5a12;background:#fff8e5;border-color:#ecd9a2}.payment-checklist{flex-wrap:wrap;gap:8px;display:flex}.payment-checklist span{color:#68746e;background:#fff;border:1px solid #dfe5dc;border-radius:7px;align-items:center;gap:7px;min-height:32px;padding:0 10px;font-size:12px;font-weight:760;display:inline-flex}.payment-checklist span.done{color:#286236;background:#f6fbf4;border-color:#c9dfc6}.payment-settings-form{gap:18px;display:grid}.payment-tabs{margin-bottom:16px}.payment-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.payment-provider-card{cursor:pointer;background:#fff;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:96px;padding:16px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:grid;position:relative}.payment-provider-card:hover{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 34%, #dfe5dc);transform:translateY(-1px);box-shadow:0 14px 32px -28px #19201f70}.payment-provider-card:has(input:checked){border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 56%, #dfe5dc);background:color-mix(in srgb, var(--tenant-secondary,#eef4eb) 62%, #fff)}.payment-provider-card input{opacity:0;pointer-events:none;position:absolute}.payment-provider-card strong,.payment-provider-card em{display:block}.payment-provider-card strong{color:#17201d;font-size:16px}.payment-provider-card em{color:#66716b;margin-top:4px;font-size:13px;font-style:normal;line-height:1.4}.payment-brand-icon{color:#fff;letter-spacing:0;border-radius:8px;flex:none;place-items:center;min-width:44px;height:44px;padding:0 10px;font-size:13px;font-weight:900;line-height:1;display:inline-grid}.payment-brand-icon.stripe{background:#635bff;font-size:15px;font-style:italic}.payment-brand-icon.mollie{color:#000;text-transform:lowercase;background:#fff;border:1px solid #111;min-width:76px;font-size:17px;font-weight:850}.payment-config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.payment-config-grid label{color:#435049;gap:6px;font-size:12px;font-weight:780;display:grid}.payment-config-grid input,.payment-config-grid select{color:#18201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:38px;padding:8px 10px;font-size:13px}.payment-config-grid .rental-toggle{width:fit-content;display:inline-flex}.payment-config-grid .rental-toggle input[type=checkbox],.retaildesk-mapping-row input[type=checkbox],.retaildesk-debug-forms input[type=checkbox]{flex:none;width:16px;height:16px;min-height:0;padding:0}.payment-config-grid input:invalid{background:#fff8f7;border-color:#d9a19a}.webshop-mode-field{color:#435049;gap:6px;font-size:12px;font-weight:780;display:inline-grid}.webshop-module-controls{flex-wrap:wrap;align-items:center;gap:12px;display:inline-flex}.webshop-provider-choice-body{gap:14px;display:grid}.webshop-provider-choice-body .button{justify-self:end}.webshop-mode-field select{color:#18201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:36px;padding:7px 10px}.payment-provider-grid.one-card{grid-template-columns:minmax(220px,420px)}.webshop-icon,.webshop-provider-icon{background:color-mix(in srgb, var(--tenant-primary,#263d2e) 76%, #264653)}.webshop-package-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.webshop-order-list,.webshop-orders-grid{gap:14px;display:grid}.webshop-page-actions,.webshop-pack-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.webshop-order-card,.webshop-order-detail{overflow:hidden}.webshop-order-main{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.webshop-order-main strong,.webshop-order-item strong,.webshop-disabled strong{color:#17201d;display:block}.webshop-order-main span,.webshop-order-item span,.webshop-pack-actions span,.webshop-disabled span{color:#66716b;font-size:13px}.webshop-order-items{gap:9px;display:grid}.webshop-order-item{background:#fff;border:1px solid #edf0ea;border-radius:8px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px;display:grid}.webshop-order-item img,.webshop-item-placeholder{object-fit:cover;background:#f4f6f1;border-radius:7px;width:52px;height:52px}.webshop-item-placeholder{color:#6d786f;place-items:center;display:grid}.webshop-order-item em{color:#66716b;justify-self:end;font-size:12px;font-style:normal}.webshop-order-body{gap:16px;display:grid}.webshop-package-form{grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px;display:grid}.webshop-package-form label{color:#435049;gap:5px;font-size:12px;font-weight:760;display:grid}.webshop-package-form input{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:7px;min-height:36px;padding:7px 9px}.webshop-shipping-summary{flex-wrap:wrap;gap:8px;display:flex}.webshop-shipping-summary span{color:#4c5a53;background:#fbfcf8;border:1px solid #dfe5dc;border-radius:7px;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:12px;font-weight:760;display:inline-flex}.webshop-disabled{justify-items:start;gap:10px;display:grid}.payment-full-field{grid-column:1/-1}.payment-provider-fields{display:none}:is(.payment-settings-form:has(input[name=provider][value=stripe]:checked) .stripe-fields,.payment-settings-form:has(input[name=provider][value=mollie]:checked) .mollie-fields){display:block}.payment-actions{justify-content:flex-end;display:flex}.pin-settings-icon{color:#fff;background:#17201d;border-radius:8px;place-items:center;width:44px;height:44px;display:inline-grid}.retaildesk-icon{background:color-mix(in srgb, var(--tenant-primary,#263d2e) 78%, #17201d)}.retaildesk-placeholder{color:#66716b;gap:5px;font-size:13px;display:grid}.retaildesk-placeholder strong{color:#17201d;font-size:15px}.retaildesk-button-grid{flex-wrap:wrap;gap:10px;display:flex}.retaildesk-button-grid form{display:contents}.retaildesk-mapping-list,.retaildesk-pending-list,.retaildesk-log-list{gap:10px;display:grid}.retaildesk-mapping-row{background:#fbfcf8;border:1px solid #e2e8df;border-radius:8px;grid-template-columns:minmax(160px,1fr) minmax(150px,.8fr) minmax(170px,1fr) minmax(140px,.8fr) auto auto;align-items:center;gap:8px;padding:10px;display:grid}.retaildesk-mapping-row input{background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:34px;padding:7px 9px}.retaildesk-mapping-row .compact-checkbox{white-space:nowrap;min-height:34px}.retaildesk-pending-row{background:#fff;border:1px solid #e2e8df;border-radius:8px;grid-template-columns:minmax(170px,.8fr) minmax(120px,.5fr) minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid}.retaildesk-pending-row em,.muted-line{color:#66716b;font-size:12px;font-style:normal}.retaildesk-log-list details{background:#fff;border:1px solid #e2e8df;border-radius:8px}.retaildesk-log-list summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.retaildesk-log-list summary span,.retaildesk-log-list summary em{color:#66716b;font-size:12px;font-style:normal}.retaildesk-log-list pre{color:#22312a;border-top:1px solid #e2e8df;margin:0;padding:12px;font-size:12px;line-height:1.45;overflow:auto}.retaildesk-debug-forms{gap:8px;margin-bottom:4px;display:grid}.retaildesk-debug-forms form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.retaildesk-debug-forms input{border:1px solid #dfe5dc;border-radius:7px;min-height:34px;padding:7px 9px}.pin-settings-toggle-body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.planning-pin-controls{align-items:center;gap:7px;display:inline-flex}.planning-pin-controls .secondary-button.active{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 52%, #dfe5dc);background:color-mix(in srgb, var(--tenant-secondary,#eef4eb) 68%, #fff);color:#17201d}.pin-basket-button,.pin-selection-clear{color:#17201d;cursor:pointer;background:#fff;border:1px solid #d7ded4;border-radius:7px;place-items:center;min-width:36px;height:34px;display:inline-grid;position:relative}.pin-basket-button:disabled,.pin-selection-clear:disabled{cursor:not-allowed;opacity:.48}.pin-basket-button span{color:#fff;background:#17201d;border-radius:999px;place-items:center;min-width:18px;height:18px;font-size:11px;font-weight:800;display:grid;position:absolute;top:-7px;right:-6px}.pin-selection-clear{color:#6a3e38;min-width:32px}.lesson-pin-select{color:#17201d;cursor:pointer;background:#fff;border:1px solid #cfd8cf;border-radius:6px;place-items:center;width:22px;height:22px;font-size:13px;font-weight:850;line-height:1;display:inline-grid}.lesson-pin-select.selected{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 58%, #cfd8cf);color:#fff;background:#17201d}.pin-basket-backdrop{z-index:13000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17201d57;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.pin-basket-dialog{background:#fff;border:1px solid #dfe5dc;border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;width:min(720px,100%);max-height:min(760px,100dvh - 44px);display:grid;overflow:hidden;box-shadow:0 24px 80px #19201f38}.pin-basket-header,.pin-basket-actions{background:#fffdfa;border-bottom:1px solid #dfe5dc;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.pin-basket-actions{border-top:1px solid #dfe5dc;border-bottom:0;justify-content:flex-end}.pin-basket-header h2{color:#17201d;margin:0;font-size:20px;line-height:1.15}.pin-basket-header p{color:#68746e;margin:3px 0 0;font-size:13px}.pin-basket-header button{color:#17201d;cursor:pointer;background:#fff;border:1px solid #dfe5dc;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.pin-basket-body{align-content:start;gap:12px;min-height:220px;padding:16px 18px;display:grid;overflow:auto}.pin-basket-loading{color:#68746e;place-items:center;min-height:120px;font-size:13px;font-weight:700;display:grid}.pin-basket-table{border:1px solid #dfe5dc;border-radius:8px;overflow:hidden}.pin-basket-table-head,.pin-basket-row{grid-template-columns:minmax(0,1.05fr) minmax(0,1.2fr) 112px;align-items:center;gap:12px;padding:10px 12px;display:grid}.pin-basket-table-head{color:#68746e;background:#f7f9f5;font-size:12px;font-weight:820}.pin-basket-row{color:#17201d;border-top:1px solid #edf0eb;font-size:13px}.pin-basket-row>span{min-width:0}.pin-basket-row strong,.pin-basket-row em{overflow-wrap:anywhere;min-width:0;display:block}.pin-basket-row em{color:#68746e;margin-top:2px;font-size:12px;font-style:normal}.pin-basket-row>span:last-child,.pin-basket-table-head>span:last-child{text-align:right}.pin-basket-total{color:#17201d;background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.pin-basket-total span{color:#68746e;font-size:13px;font-weight:780}.pin-basket-total strong{font-size:20px}.pin-payment-status{background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;gap:3px;padding:12px 14px;display:grid}.pin-payment-status.success,.pin-payment-status.paid{background:#f2f8f0;border-color:#c9dfc6}.pin-payment-status.failed,.pin-payment-status.cancelled,.pin-payment-status.canceled,.pin-payment-status.expired,.pin-payment-status.manualintervention{background:#fff8f7;border-color:#eac1bd}.pin-payment-status span,.pin-payment-status em{color:#68746e;font-size:12px;font-style:normal}.pin-payment-status strong{color:#17201d;font-size:15px}.level-category-create{background:#fbfcf8;border-bottom:1px solid #dfe5dc}.level-category-create-form,.level-subcategory-create{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.level-subcategory-create{background:#fbfcf8;border:1px dashed #cad4c8;border-radius:8px;grid-template-columns:minmax(100px,150px) 74px auto;margin:0 18px 18px 54px;padding:12px}.level-category-create-form input,.level-subcategory-create input{border:1px solid #dfe5dc;border-radius:6px;min-height:34px;padding:0 8px}.level-subcategory-create label{gap:5px;display:grid}.level-subcategory-create label span,.level-editor-field span{color:#66716b;font-size:11px;font-weight:760}.level-subcategory-create input[type=color]{padding:3px}.level-tree{background:#fffefb;gap:16px;padding:18px;display:grid}.level-tree-category{background:#fff;border:1px solid #dfe5dc;border-radius:8px;overflow:hidden;box-shadow:0 12px 30px -28px #19201f6b}.level-tree-category:first-child{border-top:0}.level-tree-category summary{cursor:pointer;background:#fbfcf8;border-bottom:1px solid #edf1e9;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.level-tree-branch{color:#18201d;align-items:center;gap:8px;font-weight:820;display:inline-flex;position:relative}.level-tree-branch:before{content:"";background:#fff;border:2px solid #91a18f;border-radius:999px;width:10px;height:10px}.level-category-actions{align-items:center;gap:6px;display:inline-flex}.level-category-actions .icon-button{width:30px;height:30px;font-size:13px}.level-category-actions .icon-button span{line-height:1}.level-tree-children{gap:12px;margin:0 18px 18px 36px;padding:2px 0 0 18px;display:grid;position:relative}.level-tree-children:before{content:"";background:#cad4c8;width:1px;position:absolute;top:-18px;bottom:18px;left:0}.level-settings-row,.price-settings-card{border-top:0;padding:0}.level-settings-row:first-child,.price-settings-card:first-child{border-top:0}.level-settings-row{position:relative}.level-settings-row:before{content:"";background:#cad4c8;width:18px;height:1px;position:absolute;top:24px;left:-18px}.level-editor-form{background:#fff;border:1px solid #dfe5dc;border-radius:8px;grid-template-columns:minmax(150px,.9fr) minmax(180px,1.2fr) 92px 86px 70px 92px auto auto;align-items:end;gap:10px;padding:12px;display:grid}.level-editor-heading{align-items:center;gap:10px;min-width:0;padding-bottom:2px;display:flex}.level-editor-heading strong,.level-editor-heading span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.level-editor-heading strong{color:#17201d;font-size:14px;font-weight:840}.level-editor-heading span{color:#66716b;font-size:11px;font-weight:720}.level-editor-field{gap:5px;display:grid}.level-settings-row input:not([type=checkbox]){border:1px solid #dfe5dc;border-radius:6px;min-height:34px;padding:0 8px}.level-editor-color input[type=color]{width:100%}.level-editor-opacity input{text-align:right}.level-editor-active{color:#4f5a54;align-items:center;gap:6px;min-height:34px;font-size:12px;font-weight:760;display:inline-flex}.level-deactivate-form{width:fit-content;margin:8px 0 0 auto}.level-swatch{border-radius:4px;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #18201d26}.compatibility-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:18px;display:grid}.compatibility-column{gap:10px;display:grid}.compatibility-column h3{color:#17201d;margin:0 0 4px;font-size:14px}.compatibility-card{background:#fffefb;border:1px solid #dfe5dc;border-radius:8px;gap:10px;padding:12px;display:grid}.compatibility-options{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:6px 10px;display:grid}.compatibility-options label{color:#4f5a54;font-size:12px}.compatibility-groups{gap:14px;padding:18px;display:grid}.compatibility-group-card{background:#fffefb;border:1px solid #dfe5dc;border-radius:8px;gap:12px;padding:14px;display:grid}.compatibility-group-create{background:#fbfcf8}.compatibility-group-form{gap:12px;display:grid}.compatibility-group-header,.age-rule-form{grid-template-columns:minmax(220px,1fr) minmax(130px,.35fr) minmax(110px,.25fr);align-items:end;gap:10px;display:grid}.compatibility-group-header label,.age-rule-form label{color:#4f5a54;gap:5px;font-size:12px;font-weight:760;display:grid}.compatibility-group-header input,.compatibility-group-header select,.age-rule-form input:not([type=checkbox]){color:#17201d;background:#fff;border:1px solid #dfe5dc;border-radius:6px;min-height:34px;padding:0 8px}.compatibility-group-delete{justify-self:end}.age-rule-form{grid-template-columns:minmax(140px,.4fr) minmax(140px,.4fr) auto auto;padding:18px}.price-settings-card{will-change:transform;background:#fffefb;border:1px solid #dfe5dc;border-radius:8px;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .16s,opacity .16s,border-color .16s;display:grid;overflow:hidden}.price-settings-card[open]{background:#fff}.price-settings-card.dragging{opacity:.42;border-color:#b9c7b5;box-shadow:0 14px 34px -28px #19201f85}.price-settings-summary{cursor:pointer;grid-template-columns:18px minmax(0,1fr) auto 28px;align-items:center;gap:10px;min-height:58px;padding:12px 14px;list-style:none;display:grid}.price-settings-summary::-webkit-details-marker{display:none}.price-settings-summary:focus-visible{outline-offset:-2px;outline:2px solid #286848}.price-drag-preview{z-index:100000;pointer-events:none;background:#fffefb;border:1px solid #cfd8ce;border-radius:8px;position:fixed;top:-1000px;left:-1000px;overflow:hidden;box-shadow:0 18px 44px -26px #19201f7a}.price-drag-preview .price-settings-summary{background:#fffefb}.price-drag-handle{color:#94a09a;letter-spacing:0;cursor:grab;font-size:12px;font-weight:900}.price-empty-dropzone{border:1px dashed #d7ded4;border-radius:8px;place-items:center;min-height:58px;display:grid}.price-settings-title{gap:3px;min-width:0;display:grid}.price-settings-title strong,.price-settings-title small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.price-settings-title strong{color:#17201d;font-size:14px;font-weight:840}.price-settings-title small{color:#68746e;font-size:12px;font-weight:720}.price-settings-price{color:#17201d;white-space:nowrap;font-size:15px;font-weight:850}.price-settings-toggle{color:#4f5a54;border:1px solid #dfe5dc;border-radius:6px;place-items:center;width:28px;height:28px;font-size:16px;font-weight:820;transition:transform .14s;display:inline-grid}.price-settings-card[open] .price-settings-toggle{transform:rotate(90deg)}.price-settings-editor{background:#fff;border-top:1px solid #edf1e9;padding:14px}.price-settings-editor .form{gap:12px}.price-item-delete-form{border-top:1px solid #edf1e9;justify-content:flex-end;margin-top:12px;padding-top:12px;display:flex}.admin-shell{--bg:#f9f9f9;--panel:#fff;--panel-muted:#fcfcfc;--line:#ededed;--line-strong:#cdcdcd;--text:#0d0d0d;--muted:#767676;--muted-strong:#414141;--accent:#0d0d0d;--accent-bg:#f3f3f3;--accent-dark:#0d0d0d;--warning-bg:#fff6d9;--warning:#916f00;--danger-bg:#fff0f0;--danger:#ba2623;--blue-bg:#e5f3ff;--blue:#0169cc;--font-mono:"SF Mono", "SFMono-Regular", ui-monospace, Consolas, "Liberation Mono", Menlo, monospace;background:var(--bg);min-height:100dvh;color:var(--text);font-feature-settings:"cv02", "cv03", "cv04", "cv11";grid-template-columns:248px minmax(0,1fr);font-family:OpenAI Sans,Inter,Geist Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5}.admin-shell .sidebar{border-right-color:var(--line);background:#fff;padding:14px 10px}.admin-shell .brand{color:var(--text);gap:10px;padding:8px 10px 18px;font-size:14px;font-weight:600}.admin-shell .brand-mark{background:var(--text);letter-spacing:0;border-radius:8px;width:28px;height:28px;font-size:10px;font-weight:600}.admin-shell .nav{gap:1px}.admin-shell .nav a{min-height:36px;color:var(--muted-strong);border-radius:8px;gap:10px;padding:8px 10px;font-size:13px;font-weight:500}.admin-shell .nav a svg{color:#8f8f8f}.admin-shell .nav a:hover,.admin-shell .nav a.active{background:var(--line);color:var(--text)}.admin-shell .main{grid-template-rows:56px 1fr}.admin-shell .topbar{border-bottom-color:var(--line);background:#ffffffe0;min-height:56px;padding:0 24px}.admin-shell .topbar-title{color:var(--text);letter-spacing:0;font-size:13px;font-weight:600}.admin-shell .user-pill{color:var(--muted);gap:10px;font-size:12px}.admin-shell .user-pill strong{font-weight:600}.admin-shell .avatar{background:var(--line);width:28px;height:28px;color:var(--text);font-size:11px;font-weight:600}.admin-shell .admin-language-switcher{border-color:var(--line);background:var(--panel-muted);border-radius:8px}.admin-shell .admin-language-switcher a{border-radius:6px;min-height:26px;font-size:11px;font-weight:600}.admin-shell .admin-language-switcher a.active{background:var(--text);color:#fff}.admin-shell .content{width:min(100%,1440px);padding:28px 32px 44px}.admin-shell .page-heading{align-items:flex-end;margin-bottom:22px}.admin-shell .page-heading h1{color:var(--text);font-size:32px;font-weight:600;line-height:1.18}.admin-shell .page-heading p{color:var(--muted);font-size:14px;line-height:1.55}.admin-shell .grid{gap:16px}.admin-shell .panel,.admin-shell .blueprint-counter{border-color:var(--line);background:var(--panel);border-radius:12px;box-shadow:0 1px 2px #0000000a}.admin-shell .panel-header{border-bottom-color:var(--line);background:#fff;padding:16px 18px 14px}.admin-shell .panel-header h2{color:var(--text);font-size:16px;font-weight:600;line-height:1.35}.admin-shell .panel-header p{color:var(--muted);font-size:13px}.admin-shell .panel-body,.admin-shell .metric{padding:18px}.admin-shell .metric span{color:var(--muted);letter-spacing:0;text-transform:none;font-size:12px;font-weight:500}.admin-shell .metric strong{color:var(--text);margin-top:9px;font-size:32px;font-weight:600}.admin-shell .table{font-size:13px}.admin-shell .table th{border-bottom-color:var(--line);color:var(--muted);letter-spacing:0;text-transform:none;background:#fff;font-size:12px;font-weight:500}.admin-shell .table td{border-bottom-color:var(--line);color:var(--muted-strong)}.admin-shell .table tbody tr:hover{background:var(--panel-muted)}.admin-shell .button,.admin-shell .secondary-button,.admin-shell .danger-button{border-radius:8px;min-height:34px;font-size:13px;font-weight:500}.admin-shell .button{background:var(--text);color:#fff}.admin-shell .button:hover:not(:disabled){box-shadow:none;background:#303030}.admin-shell .secondary-button{border-color:var(--line-strong);color:var(--muted-strong);background:#fff}.ollama-chat-grid{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:18px;display:grid}.ollama-chat-panel{min-height:640px}.ollama-chat-header{justify-content:space-between;align-items:center;gap:18px;display:flex}.ollama-chat-header svg{color:var(--accent-dark);flex:none}.ollama-chat-body{grid-template-rows:minmax(320px,1fr) auto auto;gap:16px;display:grid}.ollama-message-list{align-content:start;gap:12px;min-height:360px;max-height:520px;padding-right:4px;display:grid;overflow:auto}.ollama-message{border:1px solid var(--line);background:#fbfaf7;border-radius:8px;width:min(88%,760px);padding:13px 15px}.ollama-message.user{background:#f0f5ef;border-color:#dbe8d9;justify-self:end}.ollama-message.pending{opacity:.78}.ollama-message span{color:var(--muted);text-transform:uppercase;letter-spacing:.045em;margin-bottom:4px;font-size:11px;font-weight:760;display:block}.ollama-message p{color:var(--text);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.ollama-tool-events{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.ollama-tool-events em{border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:11px;font-style:normal;font-weight:720;display:inline-flex}.ollama-tool-events em.ok{background:var(--accent-bg);color:var(--accent-dark)}.ollama-tool-events em.failed{background:var(--danger-bg);color:var(--danger)}.ollama-compose{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.ollama-compose textarea{border:1px solid var(--line-strong);resize:vertical;border-radius:6px;outline:none;width:100%;min-height:86px;padding:10px 12px}.ollama-compose textarea:focus{border-color:#9f998d;box-shadow:0 0 0 3px #1f211f0e}.ollama-model-meta strong{font-size:13px}@media (max-width:920px){.ollama-chat-grid{grid-template-columns:1fr}.ollama-chat-panel{min-height:auto}.ollama-compose{grid-template-columns:1fr}.ollama-compose .button{width:100%}}.admin-shell .secondary-button:hover:not(:disabled){background:var(--panel-muted);color:var(--text);box-shadow:none}.admin-shell .danger-button{background:var(--danger-bg);color:var(--danger);border-color:#ffd9d9}.admin-shell .status,.admin-shell .finding-type,.admin-shell .priority-pill,.admin-shell .database-node-meta span:not(.status),.admin-shell .field-status{letter-spacing:0;text-transform:none;border-radius:999px;min-height:22px;font-size:11px;font-weight:600}.admin-shell .notice{border-color:var(--line);color:var(--muted-strong);background:#fff;border-radius:12px;font-size:13px}.admin-shell .sidebar .notice{background:var(--panel-muted);color:var(--muted);align-items:flex-start;gap:8px;display:flex}.admin-shell .field label,.admin-shell .form-section-title{color:var(--muted-strong);letter-spacing:0;text-transform:none;font-size:13px;font-weight:500}.admin-shell .field input,.admin-shell .field select,.admin-shell .field textarea,.admin-shell .tenant-search input,.admin-shell .date-picker input{border-color:var(--line-strong);min-height:40px;color:var(--text);background:#fff;border-radius:8px;font-size:13px}.admin-shell .field input:focus,.admin-shell .field select:focus,.admin-shell .field textarea:focus{border-color:var(--text);background:#fff;box-shadow:0 0 0 2px #0d0d0d14}.admin-shell .mono,.admin-shell .blueprint-context,.admin-shell .setup-field-value code{font-family:var(--font-mono)}.admin-shell .integration-tabs,.admin-shell .customer-tabs{border-color:var(--line);background:#fff;border-radius:10px}.school-app .page-heading{align-items:flex-end;margin-bottom:22px}.school-app .page-heading h1{color:var(--text);font-size:32px;font-weight:600;line-height:1.18}.school-app .page-heading p{color:var(--muted);font-size:14px;line-height:1.55}.school-app .integration-tabs{border-color:var(--line);background:#fff;border-radius:10px}.admin-shell .integration-tabs a,.school-app .integration-tabs a,.admin-shell .customer-tabs span,.admin-shell .customer-tabs a{border-radius:7px;font-weight:500}.admin-shell .integration-tabs a.active,.school-app .integration-tabs a.active,.admin-shell .customer-tabs span.active,.admin-shell .customer-tabs a.active{background:var(--text);color:#fff}.admin-shell .panel,.admin-shell .panel-body,.admin-shell .table,.admin-shell .staff-card,.admin-shell .page-heading>div{min-width:0}.admin-shell .table{-webkit-overflow-scrolling:touch}.school-app{--bg:#f9f9f9;--panel:#fff;--panel-muted:#fcfcfc;--line:#ededed;--line-strong:#cdcdcd;--text:#0d0d0d;--muted:#767676;--muted-strong:#414141;--accent:#0d0d0d;--accent-bg:#f3f3f3;--accent-dark:#0d0d0d;--warning-bg:#fff6d9;--warning:#916f00;--danger-bg:#fff0f0;--danger:#ba2623;--blue-bg:#e5f3ff;--blue:#0169cc;--font-mono:"SF Mono", "SFMono-Regular", ui-monospace, Consolas, "Liberation Mono", Menlo, monospace;background:var(--bg);color:var(--text);font-feature-settings:"cv02", "cv03", "cv04", "cv11";font-family:OpenAI Sans,Inter,Geist Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5}.school-topbar{border-bottom-color:var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;grid-template-columns:minmax(190px,auto) minmax(0,1fr) auto;gap:18px;min-height:56px;padding:0 24px}.school-brand{gap:10px}.school-brand strong,.school-user strong{color:var(--text);font-size:13px;font-weight:600}.school-brand span,.school-user span{color:var(--muted);font-size:12px}.school-brand-mark{background:var(--text);color:#fff;border:0;border-radius:8px;width:28px;height:28px;font-size:10px;font-weight:600}.school-brand-mark img{background:#fff;padding:3px}.school-nav{scrollbar-width:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);justify-self:center;align-items:center;gap:10px;max-width:100%;padding:0;display:grid;overflow-x:auto}.school-nav-side,.school-nav-center{align-items:center;gap:1px;min-width:0;display:inline-flex}.school-nav-left{justify-content:flex-end}.school-nav-center{justify-content:center}.school-nav-right{justify-content:flex-start}.school-nav-center{border:1px solid var(--line);background:#fff;border-radius:10px;padding:2px}.school-nav-mobile{display:none}.school-nav::-webkit-scrollbar{display:none}.school-nav a{min-height:36px;color:var(--muted-strong);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;transition:background .18s,color .18s,transform .18s;display:inline-flex}.school-nav a svg{color:#8f8f8f;transition:color .18s}.school-nav a:hover,.school-nav a.active{background:var(--line);color:var(--text)}.school-nav a:hover svg,.school-nav a.active svg{color:var(--text)}.mobile-menu{scrollbar-width:none;-webkit-overflow-scrolling:touch;min-width:0;max-width:100%;position:relative;overflow:auto visible}.mobile-menu::-webkit-scrollbar{display:none}.mobile-menu-tooltip{z-index:30;pointer-events:none;position:absolute;top:-33px;left:0;right:0}.mobile-menu-tooltip-bubble{border:1px solid color-mix(in srgb, var(--line-strong) 70%, transparent);min-height:28px;color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-radius:8px;justify-content:center;align-items:center;padding:0 12px;font-size:13px;font-weight:600;line-height:1;display:inline-flex;box-shadow:0 8px 18px #0000001a,0 0 0 1px #0000000a}.mobile-menu-bar{border:1px solid color-mix(in srgb, var(--line-strong) 70%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-radius:999px;justify-content:flex-start;align-items:center;gap:4px;width:max-content;min-width:max-content;height:44px;padding:4px 5px;display:inline-flex;box-shadow:0 10px 20px #00000014,0 0 0 1px #00000008}.mobile-menu-button{width:50px;height:36px;color:var(--muted-strong);border-radius:999px;flex:0 0 50px;justify-content:center;align-items:center;transition:background .18s,color .18s,transform .18s;display:inline-flex}.mobile-menu-button:hover,.mobile-menu-button:focus-visible,.mobile-menu-button.active{background:var(--line);color:var(--text)}.mobile-menu-button:focus-visible{outline:2px solid color-mix(in srgb, var(--tenant-primary,var(--accent)) 60%, transparent);outline-offset:2px}.mobile-menu-button:active{transform:scale(.97)}.school-user{color:var(--muted);gap:10px;font-size:12px}.school-user .avatar{background:var(--line);width:28px;height:28px;color:var(--text);font-size:11px;font-weight:600}.school-settings-link{border-color:var(--line);width:32px;height:32px;color:var(--muted-strong);box-shadow:none;background:#fff;border-radius:8px}.school-settings-link:hover{background:var(--panel-muted);color:var(--text);box-shadow:none}.school-user .signout-button{border-color:var(--line-strong);min-height:32px;color:var(--muted-strong);background:#fff;border-radius:8px;font-size:13px;font-weight:500}.planning-workspace .lesson-planning-table{background:#fff;border-color:#d0d0d0;box-shadow:0 18px 40px -38px #0000005c}.planning-workspace .lesson-planning-table th,.planning-workspace .lesson-planning-table td{border-bottom-color:#e4e4e4;border-right-color:#ddd}.planning-workspace .lesson-table-corner,.planning-workspace .lesson-table-section,.planning-workspace .lesson-table-subhead,.planning-workspace .lesson-table-group-head,.planning-workspace .lesson-table-spacer-head,.planning-workspace .lesson-table-time{color:#111;background:#f6f6f6}.planning-workspace .lesson-table-subhead,.planning-workspace .lesson-table-group-head,.planning-workspace .lesson-table-spacer-head,.planning-workspace .activity-note-head{color:#666}.planning-workspace .lesson-table-divider td{background:#d6d6d6;border-bottom-color:#b8b8b8}.planning-workspace .lesson-planning-table{--lesson-piste-gap:clamp(12px, 1.4vw, 28px)}.planning-workspace .lesson-table-spacer,.planning-workspace .lesson-table-spacer-head{background:#f8f8f8}.planning-workspace .lesson-table-cell,.planning-workspace .collapsed-hour-cell,.planning-workspace .collapsed-hour-row .lesson-table-time,.planning-workspace .collapsed-hour-cell.activity-note-cell,.planning-workspace .lesson-table-cell.activity-note-cell{background:#fffefe}.planning-workspace .lesson-table-cell.assigned-hour{background:var(--level-bg,#fffefb)}.planning-workspace .lesson-table-cell.snowboard-hour,.planning-workspace .lesson-table-cell.private-hour,.planning-workspace .lesson-table-cell.event-hour,.planning-workspace .lesson-table-cell.closed-hour,.planning-workspace .lesson-table-cell.typed-hour.closed-hour{background:#f3f3f3}.planning-workspace .collapsed-hour-row:hover .lesson-table-time,.planning-workspace .collapsed-hour-row:hover .collapsed-hour-cell,.planning-workspace .clickable-hour:hover,.planning-workspace .clickable-hour-space:hover{background:#eee}.planning-workspace .collapsed-hour-row:hover .collapsed-hour-cell.activity-note-cell{background:#fffefe}.planning-workspace .collapsed-hour-count{color:#333;background:#fff;border-color:#d0d0d0}.planning-workspace .collapsed-hour-count.closed{color:#555;background:#f3f3f3;border-color:#d0d0d0}.planning-workspace .lesson-add-form .lesson-autocomplete input,.planning-workspace .lesson-closed-input,.planning-workspace .planning-date-button-group,.planning-workspace .planning-date-jump input,.planning-workspace .planning-date-nav-button,.planning-workspace .planning-date-go-button{border-color:#cfcfcf}.planning-workspace .lesson-add-form .lesson-autocomplete input,.planning-workspace .lesson-closed-input{color:#555;background:#fff}.planning-workspace .lesson-add-form .lesson-autocomplete input:focus,.planning-workspace .lesson-closed-input:focus,.planning-workspace .planning-date-jump input:focus{border-color:#111;box-shadow:0 0 0 2px #11111114}.planning-workspace .planning-date-nav-button:hover:not(:disabled){color:#111;background:#eee}.planning-workspace .planning-date-go-button{color:#fff;background:#111}.planning-workspace .planning-date-go-button:hover:not(:disabled){background:#333}.school-content{width:min(100%,1440px);padding:28px 32px 44px}@media (min-width:1505px){.planning-workspace{width:calc(100vw - 64px);max-width:calc(100vw - 64px);margin-left:calc(50% - 50vw + 32px)}}.school-page-heading{margin-bottom:22px}.school-page-heading h1{color:var(--text);font-size:32px;font-weight:600;line-height:1.18}.school-page-heading p{color:var(--muted);font-size:14px;line-height:1.55}.school-page-kicker{color:var(--muted);letter-spacing:0;text-transform:none;font-size:12px;font-weight:500}.school-grid{gap:16px}.school-app .panel,.school-app .home-stat-card,.school-app .home-insight-card,.school-app .rental-card,.school-app .rental-summary-card,.school-app .platform-admin-card{border-color:var(--line);background:var(--panel);border-radius:12px;box-shadow:0 1px 2px #0000000a}.school-app .panel-header{border-bottom-color:var(--line);background:#fff;padding:16px 18px 14px}.school-app .panel-header h2{color:var(--text);font-size:16px;font-weight:600;line-height:1.35}.school-app .panel-header p{color:var(--muted);font-size:13px}.school-app .panel-body{padding:18px}.school-app .button,.school-app .secondary-button,.school-app .danger-button,.planning-date-go-button,.planning-date-nav-button{min-height:34px;box-shadow:none;border-radius:8px;font-size:13px;font-weight:500}.school-app .button,.planning-date-go-button{background:var(--text);color:#fff}.school-app .button:hover:not(:disabled),.planning-date-go-button:hover:not(:disabled){box-shadow:none;background:#303030}.school-app .secondary-button,.planning-date-nav-button{border-color:var(--line-strong);color:var(--muted-strong);background:#fff}.school-app .secondary-button:hover:not(:disabled),.planning-date-nav-button:hover:not(:disabled){background:var(--panel-muted);color:var(--text);box-shadow:none}.planning-date-button-group,.planning-date-jump input,.school-app .date-picker{border-color:var(--line-strong);box-shadow:none;background:#fff;border-radius:8px}.planning-date-jump input,.school-app .field input,.school-app .field select,.school-app .field textarea,.school-app .tenant-search input{border-color:var(--line-strong);min-height:40px;color:var(--text);background:#fff;border-radius:8px;font-size:13px}.school-app .field input:focus,.school-app .field select:focus,.school-app .field textarea:focus,.planning-date-jump input:focus{border-color:var(--text);background:#fff;box-shadow:0 0 0 2px #0d0d0d14}@media (max-width:920px){.shell,.tenant-shell{grid-template-columns:1fr}.tenant-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.tenant-main{grid-template-rows:auto 1fr}.tenant-topbar{min-height:64px;padding:0 18px}.tenant-content{padding:20px 16px}.school-topbar{grid-template-columns:1fr;gap:12px;padding:14px 16px;position:static}.school-nav{justify-self:stretch;overflow-x:auto}.school-nav-mobile{justify-self:stretch}.school-user{justify-content:space-between;justify-self:stretch}.school-content{padding:20px 16px 32px}.school-page-heading,.home-dashboard-header{flex-direction:column;align-items:start}.home-stat-grid,.home-insight-grid,.home-mini-stats,.home-conflict-item{grid-template-columns:1fr}.planning-page-toolbar{justify-content:stretch;align-items:stretch}.planning-heading-actions,.lesson-date-controls,.quick-group-actions{align-items:stretch;width:100%}.planning-heading-actions,.lesson-date-controls{flex-direction:column}.quick-group-trigger,.planning-date-button-group,.planning-date-jump,.planning-date-jump input,.planning-date-go-button{width:100%}.planning-date-nav-button{flex:1 1 0;width:auto}.quick-group-fields,.quick-group-preferences,.quick-week-preferences{grid-template-columns:1fr}.piste-planning-controls,.piste-date-form,.piste-opening-form{flex-direction:column;align-items:stretch;width:100%}.piste-range-form{grid-template-columns:1fr}.piste-date-form input,.piste-opening-form select,.piste-range-form input,.piste-range-form select,.piste-date-form .secondary-button,.piste-opening-form .secondary-button,.piste-range-form .button{width:100%}.piste-template-actions{justify-content:flex-end;width:100%;margin-left:0}.piste-template-target-grid{grid-template-columns:1fr}.piste-board-table{min-width:720px}.weekly-opening-panel{overflow-x:auto}.weekly-opening-toolbar{flex-direction:column;align-items:stretch}.weekly-opening-toolbar .button{width:100%}.monthly-week-grid,.monthly-target-grid{grid-template-columns:1fr}.month-picker,.month-picker input,.weekly-opening-template-actions .button,.weekly-opening-template-actions .secondary-button,.monthly-template-apply-footer .button{width:100%}.weekly-opening-template-actions,.monthly-template-apply-footer{flex-direction:column;align-items:stretch}.rental-summary-grid,.rental-board{grid-template-columns:1fr}.rental-card-main,.rental-card-actions,.level-create-modal-actions{flex-direction:column;align-items:stretch}.rental-date-stack{text-align:left}.rental-date-stack b{justify-self:start}.rental-item-row,.rental-catalog-create,.rental-catalog-row,.rental-toggle-form,.rental-create-grid,.payment-provider-grid,.payment-config-grid{grid-template-columns:1fr}.rental-field-switches{grid-column:auto}.rental-create-actions{flex-direction:column;align-items:stretch}.rental-cleanup-stats{grid-template-columns:1fr}.rental-cleanup-stats strong{grid-row:auto}.rental-cleanup-form{flex-direction:column;align-items:stretch}.payment-actions{flex-direction:column;justify-content:stretch}.webshop-provider-choice-body .button{justify-self:stretch}.payment-heading-actions,.payment-heading-actions form,.payment-heading-actions .secondary-button,.payment-actions .button,.payment-actions .secondary-button{width:100%}.planner-modal-backdrop{align-items:end;padding:10px}.planner-modal{max-height:88vh}.school-grid.two-col,.customer-detail-layout,.customer-form-grid,.customer-home-hero,.customer-info-grid,.customer-ledger-grid{grid-template-columns:1fr}.customer-product-card,.customer-product-add-form{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.customer-card-summary{position:static}.customer-actions{justify-content:flex-start}.customer-card-layout{grid-template-columns:1fr}.customer-summary-panel{position:static}.tenant-settings-layout{grid-template-columns:1fr;gap:14px}.tenant-settings-sidebar{width:100%;min-width:0;position:static}.tenant-settings-nav{padding-bottom:4px;display:flex;overflow-x:auto}.tenant-settings-nav a{flex:none}.compatibility-grid,.compatibility-group-header,.age-rule-form,.levels-layout{grid-template-columns:1fr}.level-editor-form{grid-template-columns:minmax(0,1fr) minmax(160px,1fr)}.level-editor-heading,.level-editor-name,.level-editor-form .secondary-button{grid-column:1/-1}.level-subcategory-create,.level-category-create-form{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{gap:14px;min-height:64px;padding:0 18px}.content{padding:20px 16px}.page-heading{flex-direction:column;align-items:start}.user-pill{gap:8px}.user-pill>div:not(.admin-language-switcher):not(.avatar){display:none}.metrics,.two-col,.database-overview-grid,.release-grid,.infra-grid,.blueprint-summary,.login-shell,.platform-admin-card,.users-current-panel,.planning-hour{grid-template-columns:1fr}.planning-time{text-align:left;position:static}.planning-lanes{overflow-x:auto}.login-shell{min-height:0}.login-copy,.login-panel{padding:28px}.login-panel{border-left:0;border-top:1px solid var(--line)}.login-copy h1{font-size:34px}.login-system{margin-top:40px}.language-switcher{justify-self:end;margin-bottom:14px;position:static}.language-menu{right:0}}@media (max-width:560px){.sidebar{padding:14px 12px}.brand{padding-bottom:14px}.nav{grid-template-columns:1fr}.school-nav-desktop{display:none}.school-nav-mobile{width:100%;display:block}.tenant-form-row,.tenant-form-row.compact,.tenant-search,.date-picker,.customer-quick-grid{flex-direction:column;grid-template-columns:1fr}.customer-list-header-actions,.customer-form-actions{flex-direction:column;align-items:stretch;width:100%}.school-nav a{flex:1 0 auto;justify-content:center}.school-page-heading h1{font-size:29px}.school-app .planning-hour{grid-template-columns:1fr}.school-app .planning-time{text-align:left;position:static}.topbar-title{font-size:12px}.admin-language-switcher a{min-width:30px}.page-heading h1{font-size:27px}.panel-header,.panel-body,.metric{padding:18px}.mail-account-meta div{grid-template-columns:1fr;gap:3px}.setup-field-row,.setup-field-value{flex-direction:column;grid-template-columns:1fr}.mail-account-empty-actions{min-height:80px}.mail-config-summary{grid-template-columns:42px minmax(0,1fr)}.mail-config-summary-actions{flex-wrap:wrap;grid-column:1/-1}.mail-config-connect{flex-direction:column;align-items:stretch}.blueprint-category-head,.blueprint-feature-head{flex-direction:column}.blueprint-branches{padding-left:16px}.blueprint-branches:before{left:16px}.table{display:block;overflow-x:auto}.database-node{padding:16px 18px}.database-node-row{flex-direction:column;gap:10px}.database-node-meta{justify-content:flex-start}.database-node-children{margin-left:0;padding-left:22px}.database-node-children:before{left:7px}.database-node-children .database-node{padding-left:14px}.database-node-children .database-node:before{width:15px;left:-15px}.database-node-children .database-node:after{left:-18px}.docker-stack-row,.docker-container-node{flex-direction:column;grid-template-columns:1fr}.docker-stack-meta,.docker-container-meta{justify-content:flex-start}.docker-container-branch{padding-left:20px}.docker-container-branch:before{left:6px}.docker-container-node:before{width:14px;left:-14px}.docker-volume-node{grid-template-columns:1fr}.docker-volume-node strong{justify-self:start}}@media (max-width:920px){.portal-topbar-row{align-items:stretch;gap:12px}.portal-brand,.portal-school-switcher,.portal-nav,.portal-account{flex-basis:100%}.portal-nav{overflow-x:visible}.portal-school-switcher summary{justify-content:center;width:100%;max-width:none}.portal-nav a{flex:none;justify-content:center}.portal-account{justify-content:space-between;width:100%;margin-left:0}.portal-grid,.portal-overview-grid,.portal-schedule-layout{grid-template-columns:1fr}.portal-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shell{grid-template-columns:1fr}.admin-shell .sidebar{z-index:30;border-right:0;border-bottom:1px solid var(--line);max-width:100vw;height:auto;padding:14px 12px;position:sticky;top:0;overflow:hidden}.admin-shell .brand{padding:2px 4px 10px}.admin-shell .nav{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;grid-template-columns:none;gap:8px;margin:0 -12px;padding:0 12px 2px;display:flex;overflow-x:auto}.admin-shell .nav::-webkit-scrollbar{display:none}.admin-shell .nav a{white-space:nowrap;flex:none;max-width:190px;min-height:40px}.admin-shell .nav a span{text-overflow:ellipsis;overflow:hidden}.admin-shell .sidebar .notice{display:none}.admin-shell .main{grid-template-rows:auto 1fr}.admin-shell .topbar{gap:12px;min-height:52px;padding:0 18px;position:static}.admin-shell .content{padding:20px 16px 32px}.admin-shell .page-heading{flex-direction:column;align-items:flex-start;gap:14px}.admin-shell .page-heading>.button,.admin-shell .page-heading>.secondary-button,.admin-shell .page-heading>form,.admin-shell .page-heading>div:last-child:not(:first-child){align-self:stretch}.admin-shell .page-heading .button,.admin-shell .page-heading .secondary-button{width:100%}.admin-shell .metrics,.admin-shell .two-col,.admin-shell .database-overview-grid,.admin-shell .release-grid,.admin-shell .infra-grid,.admin-shell .blueprint-summary,.admin-shell .platform-admin-card,.admin-shell .users-current-panel{grid-template-columns:1fr}.admin-shell .table{display:block;overflow-x:auto}.admin-shell .table th,.admin-shell .table td{white-space:nowrap}}@media (max-width:560px){.portal-topbar,.portal-main{padding:16px}.portal-nav{justify-content:flex-start}.portal-nav a{flex-basis:calc(50% - 4px);min-width:0}.portal-nav a.portal-nav-primary{min-width:0}.portal-account{grid-template-columns:auto minmax(0,1fr) auto auto;display:grid}.portal-hero,.portal-subscription-hero,.portal-timeline-row,.portal-product-row{grid-template-columns:1fr}.portal-hero{min-height:0;padding:22px}.portal-hero h1{font-size:31px}.portal-hero-side{justify-items:stretch}.portal-hero-logo{width:62px;height:62px}.portal-hero-stats,.portal-action-grid{grid-template-columns:1fr}.portal-week-controls{align-items:stretch;width:100%}.portal-week-controls .secondary-button{flex:1 1 0}.portal-page-action-row,.portal-friend-request-row,.portal-preference-card,.portal-calendar-card{flex-direction:column;align-items:stretch}.portal-preference-card,.portal-calendar-card{grid-template-columns:1fr}.portal-floating-add-button,.portal-friend-request-actions,.portal-friend-accept,.portal-friend-decline,.portal-recurring-planner,.portal-recurring-trigger,.portal-group-trigger{width:100%}.portal-recurring-popover{width:auto;max-height:calc(100dvh - 24px);position:fixed;inset:auto 12px 12px;overflow:auto}.portal-recurring-fields,.portal-group-preferences,.portal-group-fields{grid-template-columns:1fr}.portal-recurring-actions{flex-direction:column;align-items:stretch}.portal-recurring-search,.portal-recurring-book{width:100%}.portal-calendar-url{grid-template-columns:auto minmax(0,1fr)}.portal-calendar-url button{grid-column:1/-1}.portal-week-calendar{grid-template-columns:repeat(7,minmax(132px,1fr));margin:0 -18px -18px;padding:12px;overflow-x:auto}.portal-page-heading h1{font-size:25px}.portal-lesson-row{flex-direction:column;align-items:flex-start;gap:4px}.portal-product-payment-form,.portal-product-payment-form .secondary-button{width:100%}.portal-product-actions,.portal-catalog-buy{flex-direction:column;align-items:stretch;width:100%}.portal-catalog-row{grid-template-columns:32px minmax(0,1fr);align-items:start}.portal-catalog-buy{grid-column:2;justify-self:stretch}.portal-catalog-buy em{text-align:left;width:100%}.portal-catalog-basket-add,.portal-catalog-quantity-control{width:100%}.portal-catalog-basket-bar{grid-template-columns:auto minmax(0,1fr)}.portal-catalog-clear,.portal-catalog-checkout{width:100%}.portal-catalog-checkout{grid-column:1/-1}.admin-shell .topbar{flex-direction:column;align-items:stretch;padding:12px 14px}.admin-shell .content{padding:16px 12px 28px}.admin-shell .page-heading h1{font-size:27px}.admin-shell .panel-header,.admin-shell .panel-body,.admin-shell .metric{padding:16px}.admin-shell .brand{padding-bottom:8px}.admin-shell .brand-mark{border-radius:7px;width:26px;height:26px}.admin-shell .nav a{max-width:154px;min-height:38px;padding:7px 10px;font-size:12px}.admin-shell .topbar-title{font-size:12px}.admin-shell .user-pill{justify-content:space-between;gap:8px;width:100%}.admin-shell .user-pill>div:not(.admin-language-switcher):not(.avatar){display:none}.admin-shell .admin-language-switcher a{min-width:32px}.admin-shell .button,.admin-shell .secondary-button,.admin-shell .danger-button{min-height:40px}.admin-shell .tenant-form-row,.admin-shell .tenant-form-row.compact,.admin-shell .date-picker,.admin-shell .tenant-search,.admin-shell .users-current-panel,.admin-shell .codex-test-account-grid,.admin-shell .platform-admin-card{grid-template-columns:1fr}.admin-shell .platform-admin-actions,.admin-shell .staff-reset,.admin-shell .staff-delete,.admin-shell .platform-admin-actions .button,.admin-shell .platform-admin-actions .secondary-button,.admin-shell .platform-admin-actions .danger-button,.admin-shell .staff-reset .button,.admin-shell .staff-reset .secondary-button,.admin-shell .staff-delete .button,.admin-shell .staff-delete .danger-button{width:100%}.admin-shell .integration-tabs,.admin-shell .customer-tabs{-webkit-overflow-scrolling:touch;justify-content:flex-start;overflow-x:auto}.admin-shell .integration-tabs a,.admin-shell .customer-tabs a,.admin-shell .customer-tabs span{flex:none}.admin-shell .admin-modal-backdrop{align-items:end;padding:10px}.admin-shell .admin-modal{width:100%;max-height:calc(100dvh - 20px);overflow-y:auto}}[data-slot=tabs-list],.integration-tabs,.branding-tabs,.admin-shell .customer-tabs{z-index:0;border:1px solid color-mix(in srgb, var(--line) 70%, transparent);width:fit-content;max-width:100%;color:var(--muted);scrollbar-width:none;background:#f1efea;border-radius:9px;justify-content:center;align-items:center;gap:2px;margin-bottom:16px;padding:3px;display:inline-flex;position:relative;overflow-x:auto;box-shadow:0 12px 24px #1f27220d}[data-slot=tabs-list]::-webkit-scrollbar{display:none}.integration-tabs::-webkit-scrollbar{display:none}.branding-tabs::-webkit-scrollbar{display:none}.admin-shell .customer-tabs::-webkit-scrollbar{display:none}[data-slot=tabs-tab],.integration-tabs a,.integration-tabs button,.branding-tabs a,.admin-shell .customer-tabs a,.admin-shell .customer-tabs span{min-height:34px;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:13px;font-weight:780;text-decoration:none;transition:background .18s,color .18s,box-shadow .18s,transform .18s;display:inline-flex}[data-slot=tabs-tab]:hover,.integration-tabs a:hover,.integration-tabs button:hover,.branding-tabs a:hover,.admin-shell .customer-tabs a:hover,.admin-shell .customer-tabs span:hover{color:var(--text);transform:translateY(-1px)}[data-slot=tabs-tab][data-active],[data-slot=tabs-tab][data-selected],.integration-tabs a.active,.integration-tabs button.active,.branding-tabs a.active,.admin-shell .customer-tabs a.active,.admin-shell .customer-tabs span.active{color:var(--text);background:#fff;box-shadow:0 1px 2px #1f272214}[data-slot=tab-indicator]{background:#fff;border-radius:7px;box-shadow:0 1px 2px #1f272214}[data-slot=tabs-content]{outline:none}:root{--snowdesk-tabs-muted-bg:#f1efea;--snowdesk-tabs-background:#fff;--snowdesk-tabs-foreground:var(--text);--snowdesk-tabs-muted-foreground:color-mix(in srgb, var(--muted) 72%, transparent);--snowdesk-tabs-hover:var(--muted);--snowdesk-tabs-ring:color-mix(in srgb, var(--text) 18%, transparent)}[data-slot=tabs]{flex-direction:column;gap:8px;display:flex}[data-slot=tabs-list],.planning-background-tabs [data-slot=tabs-list],.integration-tabs,.branding-tabs,.admin-shell .integration-tabs,.school-app .integration-tabs,.admin-shell .customer-tabs,.school-app .customer-tabs{z-index:0;background:var(--snowdesk-tabs-muted-bg);width:fit-content;max-width:100%;color:var(--snowdesk-tabs-muted-foreground);box-shadow:none;scrollbar-width:none;border:0;border-radius:8px;justify-content:center;align-items:center;gap:2px;padding:2px;display:flex;position:relative;overflow-x:auto}.integration-tabs,.branding-tabs,.admin-shell .integration-tabs,.school-app .integration-tabs,.admin-shell .customer-tabs,.school-app .customer-tabs{margin:0 0 16px}[data-slot=tabs-list]::-webkit-scrollbar{display:none}.planning-background-tabs [data-slot=tabs-list]::-webkit-scrollbar{display:none}.integration-tabs::-webkit-scrollbar{display:none}.branding-tabs::-webkit-scrollbar{display:none}.admin-shell .integration-tabs::-webkit-scrollbar{display:none}.school-app .integration-tabs::-webkit-scrollbar{display:none}.admin-shell .customer-tabs::-webkit-scrollbar{display:none}.school-app .customer-tabs::-webkit-scrollbar{display:none}[data-slot=tabs-tab],.planning-background-tabs [data-slot=tabs-tab],.integration-tabs a,.integration-tabs button,.branding-tabs a,.admin-shell .integration-tabs a,.school-app .integration-tabs a,.admin-shell .integration-tabs button,.school-app .integration-tabs button,.admin-shell .customer-tabs a,.admin-shell .customer-tabs span,.school-app .customer-tabs a,.school-app .customer-tabs span{min-height:36px;color:inherit;cursor:pointer;white-space:nowrap;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:6px;outline:none;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:16px;font-weight:500;line-height:1.25;text-decoration:none;transition:color .2s,background-color .2s,box-shadow .2s;display:flex;position:relative;transform:none}@media (min-width:640px){[data-slot=tabs-tab],.planning-background-tabs [data-slot=tabs-tab],.integration-tabs a,.integration-tabs button,.branding-tabs a,.admin-shell .integration-tabs a,.school-app .integration-tabs a,.admin-shell .integration-tabs button,.school-app .integration-tabs button,.admin-shell .customer-tabs a,.admin-shell .customer-tabs span,.school-app .customer-tabs a,.school-app .customer-tabs span{min-height:32px;font-size:14px}}[data-slot=tabs-tab]:hover,.planning-background-tabs [data-slot=tabs-tab]:hover,.integration-tabs a:hover,.integration-tabs button:hover,.branding-tabs a:hover,.admin-shell .integration-tabs a:hover,.school-app .integration-tabs a:hover,.admin-shell .integration-tabs button:hover,.school-app .integration-tabs button:hover,.admin-shell .customer-tabs a:hover,.admin-shell .customer-tabs span:hover,.school-app .customer-tabs a:hover,.school-app .customer-tabs span:hover{color:var(--snowdesk-tabs-hover);background:0 0;transform:none}[data-slot=tabs-tab]:focus-visible,.planning-background-tabs [data-slot=tabs-tab]:focus-visible,.integration-tabs a:focus-visible,.integration-tabs button:focus-visible,.branding-tabs a:focus-visible,.admin-shell .integration-tabs a:focus-visible,.school-app .integration-tabs a:focus-visible,.admin-shell .integration-tabs button:focus-visible,.school-app .integration-tabs button:focus-visible,.admin-shell .customer-tabs a:focus-visible,.admin-shell .customer-tabs span:focus-visible,.school-app .customer-tabs a:focus-visible,.school-app .customer-tabs span:focus-visible{box-shadow:0 0 0 2px var(--snowdesk-tabs-ring);outline:none}[data-slot=tabs-tab][data-active],[data-slot=tabs-tab][data-selected],.planning-background-tabs [data-slot=tabs-tab][data-active],.planning-background-tabs [data-slot=tabs-tab][data-selected],.integration-tabs a.active,.integration-tabs button.active,.branding-tabs a.active,.admin-shell .integration-tabs a.active,.school-app .integration-tabs a.active,.admin-shell .integration-tabs button.active,.school-app .integration-tabs button.active,.admin-shell .customer-tabs a.active,.admin-shell .customer-tabs span.active,.school-app .customer-tabs a.active,.school-app .customer-tabs span.active{background:var(--snowdesk-tabs-background);color:var(--snowdesk-tabs-foreground);box-shadow:none}[data-slot=tab-indicator],.planning-background-tabs [data-slot=tab-indicator]{z-index:-1;height:var(--active-tab-height);width:var(--active-tab-width);translate:var(--active-tab-left) calc(var(--active-tab-bottom) * -1);background:var(--snowdesk-tabs-background);border-radius:6px;transition:width .2s ease-in-out,translate .2s ease-in-out;display:block;position:absolute;bottom:0;left:0;box-shadow:0 1px 2px #1f27220d}[data-slot=tabs-content],.planning-background-tabs [data-slot=tabs-content]{outline:none;flex:auto}
