: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):checked:hover:not(:disabled){border-color:var(--ds-gray-1000);background-color: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;flex-direction:column;height:100dvh;padding:20px 14px;display:flex;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}.page-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.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{background:var(--warning-bg);color:var(--warning)}.status.new{background:var(--panel-muted);color:var(--muted-strong)}.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.rejected,.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-backdrop-in{0%{opacity:0}to{opacity: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:8px;font-size:12px;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:8px;align-items:center;width:54px;min-width:54px;height:28px;padding:3px;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:9px;font-weight:900;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.module-switch-text.off{right:7px}.module-switch-text.on{color:#fff;opacity:0;left:7px}.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:6px;width:20px;height:20px;transition:transform .18s;position:relative;box-shadow:0 6px 14px #1f27222e}.module-switch-thumb[data-state=checked]{transform:translate(26px)}.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}.k8s-cluster-panel{margin-bottom:18px}.k8s-topology-summary,.k8s-layout-map{gap:10px;display:grid}.k8s-topology-summary{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px}.k8s-topology-summary span,.k8s-workload-meta span{border:1px solid var(--line);background:var(--panel-muted);min-width:0;min-height:28px;color:var(--muted-strong);text-transform:uppercase;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-size:11px;font-weight:760;display:inline-flex}.k8s-topology-summary b{color:var(--text);font-size:13px}.k8s-layout-map{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.k8s-layout-map>div{border:1px solid var(--line);background:#fff;border-radius:8px;gap:5px;min-width:0;padding:13px 14px;display:grid}.k8s-layout-map strong,.k8s-resource-list>strong{color:var(--text);font-size:13px;line-height:1.25}.k8s-layout-map span{color:var(--muted);font-size:12px;line-height:1.4}.k8s-layout-map code,.k8s-container-box code{overflow-wrap:anywhere}.k8s-namespace-tree{gap:12px;display:grid}.k8s-namespace-node{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.k8s-namespace-node>summary{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 18px;list-style:none;display:flex}.k8s-namespace-node>summary::-webkit-details-marker{display:none}.k8s-namespace-node>summary:before{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:10px;height:10px;margin-top:4px;transition:transform .16s;transform:rotate(-45deg)}.k8s-namespace-node[open]>summary:before{transform:rotate(45deg)}.k8s-namespace-node>summary>div:first-of-type{flex:1;min-width:0}.k8s-namespace-node>summary strong{color:var(--text);font-size:15px;line-height:1.25;display:block}.k8s-namespace-node>summary span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.k8s-node-meta{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.k8s-node-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;margin:0;padding:0 9px;font-size:11px;font-weight:760;display:inline-flex}.k8s-namespace-frame{grid-template-columns:minmax(220px,.35fr) minmax(0,1fr);gap:14px;padding:0 18px 18px;display:grid}.k8s-resource-rail{align-content:start;gap:10px;display:grid}.k8s-resource-list{border:1px dashed var(--line-strong);background:var(--panel-muted);border-radius:8px;gap:8px;min-width:0;padding:12px;display:grid}.k8s-resource-list span{border:1px solid var(--line);background:#fff;border-radius:7px;gap:2px;min-width:0;padding:8px 9px;display:grid}.k8s-resource-list b,.k8s-resource-list small,.k8s-resource-list em{overflow-wrap:anywhere}.k8s-resource-list b{color:var(--text);font-size:12px}.k8s-resource-list small,.k8s-resource-list em{color:var(--muted);font-size:11px;line-height:1.35}.k8s-workload-grid{gap:12px;min-width:0;display:grid}.k8s-workload-box{background:#fbfdfc;border:1px solid #ccd9d5;border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid;box-shadow:0 1px #1a28230a}.k8s-workload-box.orphan{background:#fffdf8;border-style:dashed}.k8s-workload-heading,.k8s-pod-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.k8s-workload-heading strong,.k8s-pod-heading strong,.k8s-container-box strong{color:var(--text);font-size:13px;line-height:1.25;display:block}.k8s-workload-heading span,.k8s-pod-heading span,.k8s-container-box span,.k8s-container-box small{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.35;display:block}.k8s-workload-meta{flex-wrap:wrap;gap:7px;display:flex}.k8s-pod-stack{gap:10px;display:grid}.k8s-pod-box{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;min-width:0;padding:12px;display:grid}.k8s-pod-box.ready{border-color:#c9d9c8}.k8s-pod-box.not-ready{border-color:#e7cec8}.k8s-container-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px;display:grid}.k8s-container-box{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;gap:6px;min-width:0;padding:10px 11px;display:grid}.k8s-container-box.ready{background:#f6fbf5}.k8s-container-box.not-ready{background:#fff8f6}.k8s-container-box code{color:var(--muted-strong);font-size:10px;line-height:1.35}.compact-empty{padding:10px;font-size:12px}.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}.tenant-admin-issue-card{gap:14px}.tenant-admin-issue-status{grid-template-columns:minmax(180px,260px) auto;align-items:end;gap:10px;max-width:440px;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{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));z-index:80;position:fixed}.language-switcher summary{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-height:36px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffffe6;border:1px solid #dfe5dceb;border-radius:7px;align-items:center;gap:8px;padding:0 11px 0 8px;font-size:13px;font-weight:650;line-height:1;list-style:none;transition:background .16s,border-color .16s,box-shadow .16s;display:inline-flex;box-shadow:0 14px 36px -30px #1f211f7a}.language-switcher summary:hover{background:#fff;border-color:#aeb8ade6;box-shadow:0 16px 38px -30px #1f211f8c}.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{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border:1px solid #dfe5dcf5;border-radius:8px;gap:1px;min-width:170px;padding:5px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 22px 55px -34px #1f211f85}.language-switcher a{min-height:36px;color:var(--muted-strong);border-radius:5px;grid-template-columns:auto minmax(0,1fr) 14px;align-items:center;gap:8px;padding:0 9px;font-size:13px;font-weight:620;text-decoration:none;transition:background .16s,color .16s,transform .16s;display:grid}.language-switcher a:hover{color:var(--text);background:#f5f7f4}.language-switcher a.active{color:var(--text);background:#eef4eb;font-weight:760}.language-switcher a i{width:12px;height:12px;position:relative}.language-switcher a i:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:5px;height:9px;position:absolute;top:1px;left:3px;transform:rotate(45deg)}.language-switcher a:active{transform:translateY(1px)}.language-code{min-width:24px;min-height:22px;color:var(--muted-strong);letter-spacing:0;background:#f8faf5;border:1px solid #dfe5dc;border-radius:5px;place-items:center;font-size:11px;font-weight:820;line-height:1;display:inline-grid}.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;overflow:visible}.compact-login-panel{text-align:center;border-left:0;align-items:center;width:100%;min-width:0;min-height:390px;padding:34px 24px}.security-setup-login-page .compact-login-shell{width:min(100vw - 32px,500px)}.security-setup-login-page .compact-login-panel{min-height:0;padding:18px}.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}.enable-2fa-card{color:#171717;width:100%;max-width:100%;box-shadow:none;text-align:left;background:#fff;border:1px solid #e5e5e5;border-radius:8px;flex-direction:column;gap:24px;padding:18px;display:flex}.enable-2fa-header{flex-direction:column;align-items:center;gap:8px;padding:0;display:flex}.enable-2fa-icon-halo{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:58px;display:flex;position:relative}.enable-2fa-icon-halo:before{content:"";border-radius:inherit;background:linear-gradient(#7373732e,#0000);position:absolute;inset:0}.enable-2fa-icon-inner{z-index:1;color:#525252cc;background:#fff;border:1px solid #e5e5e5;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:relative;box-shadow:0 1px 2px #0a0a0a0d}.enable-2fa-shield{width:22px;height:22px}.enable-2fa-title-wrap{text-align:center;flex-direction:column;gap:6px;display:flex}.enable-2fa-title{color:#171717;letter-spacing:0;margin:0;font-size:18px;font-weight:500;line-height:1.15}.enable-2fa-description{color:#737373;letter-spacing:-.006em;margin:0;font-size:14px;line-height:1.45}.enable-2fa-card [data-orientation=horizontal]{background:#e5e5e5;width:100%;height:1px}.enable-2fa-content{padding:0}.enable-2fa-steps{grid-template-columns:1fr;justify-content:start;align-items:start;display:grid}.enable-2fa-step{flex-direction:row;align-items:flex-start;gap:12px;display:flex;position:relative}.enable-2fa-step.pb-6{padding-bottom:24px}.enable-2fa-step:not(:last-child):after{content:"";background:#e5e5e5;width:1px;position:absolute;top:36px;bottom:8px;left:14px;transform:translate(-.5px)}.enable-2fa-step>div:first-child{flex-direction:column;align-self:stretch;align-items:center;display:flex}.enable-2fa-step-index{z-index:1;color:#171717;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:600;line-height:1;display:flex}.enable-2fa-step-copy{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.enable-2fa-step-title{color:#171717;letter-spacing:-.006em;margin:0;font-size:14px;font-weight:600;line-height:20px}.enable-2fa-step-description{color:#737373;letter-spacing:-.006em;margin:0;font-size:14px;line-height:20px}.enable-2fa-step-content{margin-top:10px}.enable-2fa-qr-block{justify-items:start;gap:8px;display:grid}.enable-2fa-qr-wrap{border:1px solid #e5e5e5;border-radius:8px;padding:4px;display:inline-block}.enable-2fa-qr{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;width:132px;height:132px;display:block}.enable-2fa-qr svg{width:100%;height:100%;display:block}.enable-2fa-qr svg rect{fill:#fff!important}.enable-2fa-qr svg path{fill:#111!important;stroke:#111!important}img.enable-2fa-qr{object-fit:contain}.enable-2fa-qr-matrix-svg{object-fit:contain;image-rendering:pixelated}.enable-2fa-qr-matrix-svg path{fill:#111}.enable-2fa-qr-grid{image-rendering:pixelated;background:#fff;padding:0;display:grid;overflow:hidden}.enable-2fa-qr-cell{aspect-ratio:1;background:#fff}.enable-2fa-qr-cell.dark{background:#111}.enable-2fa-qr.loading{background:linear-gradient(135deg,#f5f5f5,#fff 45%,#eee);border-radius:6px}.enable-2fa-qr.missing{color:#9f2f2d;text-align:center;background:#fff1f2;border-radius:6px;place-items:center;font-size:12px;font-weight:700;display:grid}.enable-2fa-secret{color:#737373;gap:3px;margin:0;font-size:11px;line-height:1.35;display:grid}.enable-2fa-secret code{color:#171717;letter-spacing:0;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px}.enable-2fa-manual-fallback{color:#737373;gap:4px;max-width:330px;margin:10px 0 0;font-size:12px;line-height:1.35;display:grid}.enable-2fa-manual-fallback code{color:#171717;letter-spacing:0;overflow-wrap:anywhere;background:#fafafa;border:1px solid #e5e5e5;border-radius:6px;width:fit-content;max-width:100%;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;display:block}.enable-2fa-code-entry{cursor:text;width:max-content;max-width:100%;position:relative}.enable-2fa-code-input{z-index:1;color:#0000;caret-color:#0000;background:0 0;border:0;outline:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.enable-2fa-otp-group{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.enable-2fa-otp-slot{color:#171717;border:1px solid #e5e5e5;border-radius:8px;justify-content:center;align-items:center;width:28px;height:34px;font-size:14px;transition:border-color .16s,box-shadow .16s;display:flex;position:relative}.enable-2fa-code-entry:focus-within .enable-2fa-otp-slot.active{border-color:#171717;box-shadow:0 0 0 3px #1717171a}.enable-2fa-code-entry:focus-within .enable-2fa-otp-slot.active:empty:after{content:"";background:#171717;border-radius:999px;width:2px;height:18px;animation:1.25s ease-out infinite caret-blink}.enable-2fa-status{color:#737373;margin:9px 0 0;font-size:12px;line-height:1.35}.enable-2fa-result{color:#1f4d25;background:#f0f7ed;border:1px solid #d9ead4;border-radius:8px;gap:2px;margin-top:10px;padding:9px 10px;font-size:12px;line-height:1.35;display:grid}.enable-2fa-result.error{color:#9f2f2d;background:#fff1f2;border-color:#f1d4d6}.enable-2fa-result strong,.enable-2fa-result span{display:block}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}@media (min-width:768px){.enable-2fa-card{padding:24px}.enable-2fa-icon-halo{width:76px;height:76px}.enable-2fa-icon-inner{width:54px;height:54px}.enable-2fa-shield{width:28px;height:28px}.enable-2fa-title{font-size:20px}.enable-2fa-otp-group{gap:10px}.enable-2fa-otp-slot{width:40px;height:40px}}.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}.login-register{width:100%;min-height:42px}.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 label:has(input:disabled){color:var(--muted);cursor:not-allowed;opacity:.62}.checkbox-stack input[type=checkbox]{width:16px;min-width:16px;height:16px;min-height:16px;padding:0}.customer-card-form .customer-compact-checks{border:1px solid var(--line-strong);background:#fff;border-radius:6px;gap:6px;width:100%;min-height:43px;padding:4px}.customer-card-form .customer-compact-checks label{min-height:33px;color:var(--muted-strong);background:0 0;border:0;border-radius:4px;flex:auto;justify-content:center;padding:0 8px;font-weight:720}.customer-card-form .customer-compact-checks label:has(input[type=checkbox]:checked){color:var(--muted-strong)}.customer-card-form .customer-compact-checks input[type=checkbox]{flex:none;width:14px;min-width:14px;height:14px;min-height:14px}.customer-card-form .customer-compact-checks input[type=checkbox]:focus,.customer-card-form .customer-compact-checks input[type=checkbox]:focus-visible{box-shadow:none;outline:none}.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[type=radio]{width:14px;min-width:14px;height:14px;min-height:14px;accent-color:var(--tenant-primary,#1d2a24);flex:none;padding:0}.segmented-choice input[type=radio]:focus,.segmented-choice input[type=radio]:focus-visible{box-shadow:none;outline:none}.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}.planning-layout-field{width:100%;max-width:820px;margin-inline:auto}.planning-layout-options{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.planning-layout-option{cursor:pointer;height:100%;display:grid}.planning-layout-card{color:#08090a;background:#fff;border:1px solid #d6dce0;border-radius:13px;grid-template-rows:1fr auto;height:100%;min-height:292px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;overflow:hidden}.planning-layout-option:hover .planning-layout-card{border-color:#aeb6bc;transform:translateY(-1px);box-shadow:0 16px 36px -32px #10141857}.planning-layout-option input:focus-visible+.planning-layout-card{outline-offset:3px;outline:2px solid #111}.planning-layout-option input:checked+.planning-layout-card{border-color:#161616;box-shadow:0 0 0 1px #161616}.planning-layout-check{z-index:2;box-sizing:border-box;background:#fff;border:2px solid #c9ced4;border-radius:999px;width:25px;height:25px;position:absolute;top:14px;right:14px}.planning-layout-check:after{content:"";opacity:0;background:#111;border-radius:999px;transition:opacity .15s,transform .15s;position:absolute;inset:4px;transform:scale(.72)}.planning-layout-option input:checked+.planning-layout-card .planning-layout-check{border-color:#111}.planning-layout-option input:checked+.planning-layout-card .planning-layout-check:after{opacity:1;transform:scale(1)}.planning-layout-diagram{border-bottom:1px solid #e0e4e7;align-content:center;gap:6px;padding:38px 30px 16px;display:grid}.planning-layout-diagram-head,.planning-layout-diagram-row{grid-template-columns:52px minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:18px;display:grid}.planning-layout-diagram-head strong{color:#08090a;justify-self:center;font-size:13px;font-weight:780;line-height:1}.planning-layout-time{color:#08090a;font-variant-numeric:tabular-nums;justify-self:end;font-size:13px;font-weight:520;line-height:1}.planning-layout-slot{background:linear-gradient(90deg,#f8f8f8 0%,#f2f2f2 52%,#fafafa 100%);border-radius:5px;place-items:center;min-height:32px;display:grid;position:relative}.planning-layout-slot:before{content:"";background:#d8dde1;width:1px;position:absolute;top:-10px;bottom:-10px;left:-9px}.planning-layout-slot-dots{justify-content:center;align-items:center;gap:5px;display:flex}.planning-layout-slot-dots.vertical{flex-direction:column;gap:4px}.planning-layout-slot-dots span{background:linear-gradient(135deg,#babcc0 0%,#91959a 100%);border-radius:3px;width:12px;height:12px;box-shadow:0 1px 2px #00000014}.planning-layout-copy{align-content:start;gap:6px;padding:18px 20px 20px;display:grid}.planning-layout-copy strong{color:#08090a;font-size:18px;font-weight:850;line-height:1.12}.planning-layout-copy span{color:#6d747b;font-size:14px;font-weight:560;line-height:1.35}@media (max-width:760px){.planning-layout-field{max-width:430px}.planning-layout-options{grid-template-columns:1fr}.planning-layout-card{min-height:300px}.planning-layout-diagram{gap:7px;padding:42px 24px 18px}.planning-layout-diagram-head,.planning-layout-diagram-row{grid-template-columns:62px minmax(0,1fr) minmax(0,1fr);column-gap:18px}.planning-layout-diagram-head strong,.planning-layout-time{font-size:14px}.planning-layout-slot{min-height:42px}.planning-layout-slot:before{top:-12px;bottom:-12px;left:-10px}.planning-layout-slot-dots{gap:5px}.planning-layout-slot-dots span{width:13px;height:13px}.planning-layout-copy{padding:23px 22px 25px}.planning-layout-copy strong{font-size:19px}.planning-layout-copy span{font-size:15px}}.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{z-index:1;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:1000;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-override-backdrop{z-index:120;background:#1218157a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.customer-product-override-modal{background:#fffefb;border:1px solid #dfe5dc;border-radius:10px;gap:18px;width:min(430px,100%);padding:20px;display:grid;box-shadow:0 26px 80px #10171347}.customer-product-override-modal span{color:#18201d;font-size:16px;font-weight:860;display:block}.customer-product-override-modal p{color:#55615a;margin:8px 0 0;font-size:13px;line-height:1.5}.customer-product-override-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.customer-product-override-actions form{margin:0}.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.customer-lesson-row.current-season td{background:#eef8ed}.customer-lesson-table tbody tr.customer-lesson-row.outside-season td{background:#f3f5f2}.customer-lesson-table tbody tr.customer-lesson-row.current-season:hover td{background:#eef8ed}.customer-lesson-table tbody tr.customer-lesson-row.outside-season:hover td{background:#f3f5f2}.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:42px;height:42px;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:3px}.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}.school-app:has(:where(.admin-modal-backdrop,.planner-modal-backdrop,.customer-link-modal-backdrop,.customer-note-modal-backdrop,.portal-preview-modal-backdrop,.pin-basket-backdrop)) .school-topbar{z-index:0}.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{color:#19201f;background:#f1f6ef;box-shadow:0 10px 22px #1f272214}.portal-nav a.portal-nav-primary.active:hover{background:var(--portal-nav-hover-bg,#f1f6ef);color:var(--portal-text,#19201f);box-shadow:0 10px 22px #1f272214}.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-payment-state{color:#536058;white-space:nowrap;background:#f7faf5;border:1px solid #dbe4d7;border-radius:999px;align-items:center;gap:7px;min-height:28px;padding:0 9px;font-size:12px;font-weight:820;display:inline-flex}.portal-product-row .portal-payment-state{display:inline-flex}.portal-product-row .portal-payment-state .portal-mini-spinner{display:inline-block}.portal-payment-state.paid{color:#286236;background:#f3f9f0;border-color:#cfe2c9}.portal-payment-state.checking{color:#2f5f7c;background:#f1f7fb;border-color:#cdddea}.portal-payment-state.failed{color:#8e3028;background:#fff4f2;border-color:#e7c1bd}.portal-payment-state.expired{color:#7b5a12;background:#fff7df;border-color:#ecd9a2}.portal-payment-hint{text-align:right;color:#68746e;flex-basis:100%}.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-success-callout.warning{color:#7b5a12;background:#fff7df;border-color:#ecd9a2}.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-week-nav-button{min-width:36px}.portal-week-nav-button:disabled{cursor:wait}.portal-week-today-button{gap:7px}.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-payments-table-shell{flex-direction:column;gap:14px;display:flex}.portal-payments-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.portal-payments-toolbar>span,.portal-payments-date span,.portal-payments-customer-link span,.portal-payments-products span{color:var(--muted);font-size:12px}.portal-payments-search{min-width:min(100%,360px);position:relative}.portal-payments-search svg{width:15px;height:15px;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.portal-payments-search input{padding-left:34px}.portal-payments-table-wrap{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.portal-payments-date,.portal-payments-products,.portal-payments-customer-link{flex-direction:column;gap:3px;min-width:0;display:flex}.portal-payments-customer-link{color:inherit;text-decoration:none}.portal-payments-customer-link:hover strong{text-decoration:underline}.portal-payments-products strong,.portal-payments-customer-link strong{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.portal-payments-provider{text-transform:capitalize}.portal-payments-amount{text-align:right;font-weight:760}.portal-payments-sort{margin-left:-12px}.portal-payments-sort.right{margin-left:auto;margin-right:-12px}.portal-payments-empty{text-align:center;height:112px;color:var(--muted)}.portal-payments-pagination{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.portal-payments-pagination>div{gap:8px;display:flex}.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 h1,.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:start;gap:11px;min-height:82px;padding:12px;display:grid}.portal-friend-card-body{gap:10px;min-width:0;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-permissions{gap:7px;display:grid}.portal-friend-permission-toggle{color:#4d5a52;align-items:center;gap:7px;font-size:12px;font-weight:780;display:flex}.portal-friend-permission-toggle input{width:16px;height:16px;accent-color:var(--tenant-primary,#263d2e)}.portal-friend-permission-toggle span{color:var(--tenant-primary,#263d2e);place-items:center;display:inline-grid}.portal-friend-permission-toggle em{font-style:normal}.portal-buddy-reservation-row{border:1px solid color-mix(in srgb, var(--tenant-primary,#263d2e) 18%, #dfe7db);background:#fff;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:68px;padding:11px 12px;display:grid;box-shadow:0 10px 24px #1f27220b}.portal-buddy-reservation-icon{background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 72%, #fff);width:38px;height:38px;color:var(--tenant-primary,#263d2e);border-radius:999px;place-items:center;display:grid}.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-backdrop-in;display:grid;position:fixed;inset:0}.portal-friend-modal{color:#18201d;background:#fff;border:1px solid #dfe7db;border-radius:12px;gap:14px;width:min(420px,100vw - 36px);max-height:calc(100dvh - 36px);padding:15px;animation:.17s ease-out both portal-card-in;display:grid;overflow:auto;box-shadow:0 30px 90px #10171347}.portal-friend-modal .portal-recurring-head span{color:#18201d}.portal-friend-modal .portal-recurring-head button{color:#4e5c54;background:#fff}.portal-friend-modal .portal-recurring-book{color:#fff;background:#18201d;width:100%}.portal-friend-modal .portal-recurring-book:hover:not(:disabled){background:#0f1512}.portal-friend-modal .portal-recurring-book:disabled{color:#fff;background:#6f7772}.portal-friend-modal-status{color:#286236;background:#f3f9f0;border:1px solid #cfe2c9;border-radius:8px;align-items:center;min-height:38px;padding:9px 11px;font-size:12px;font-weight:820;line-height:1.35;display:flex}.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-friend-note{color:#7a6a37;margin:-1px 0 0;font-size:11px;font-weight:740;line-height:1.35}.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-calendar-app-actions{flex-wrap:wrap;gap:8px;display:flex}.portal-calendar-app-actions a{color:#18201d;background:#fff;border:1px solid #d7ded4;border-radius:8px;flex:130px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 12px;font-size:12px;font-weight:820;text-decoration:none;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.portal-calendar-app-actions a:hover{border-color:var(--tenant-primary,#263d2e);background:color-mix(in srgb, var(--tenant-secondary,#edf4e9) 56%, #fff);color:var(--tenant-primary,#263d2e)}.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-pending-badge,.portal-lesson-inline-badge{color:#8a6414;vertical-align:-4px;background:#fff7df;border-radius:999px;place-items:center;width:19px;height:19px;margin-left:6px;display:inline-grid}.portal-lesson-inline-badge{vertical-align:-5px;width:20px;height:20px}.portal-lesson-inline-badge.pending{color:#8a6414;background:#fff7df}.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;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;overflow:hidden;box-shadow:0 18px 40px -38px #19201f5c}.home-stat-card-link{color:inherit;text-decoration:none;display:block}.home-stat-card-link .home-stat-card{height:100%}.home-stat-card-link:hover .home-stat-card{border-color:#d4dcd0;transform:translateY(-2px);box-shadow:0 18px 40px -34px #19201f75}.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{flex-wrap:wrap;align-content:start;align-items:center;gap:8px;display:flex}.home-conflict-customer{background:var(--conflict-level-bg,#fff);border:1px solid color-mix(in srgb, var(--conflict-level-color,#f0d8d6) 36%, #fff);color:#17201d;border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:4px 10px 4px 7px;font-size:12px;font-weight:820;display:inline-flex}.home-conflict-customer i{background:var(--conflict-level-color,#8c4d4d);border-radius:999px;flex:none;width:9px;height:9px;box-shadow:0 0 0 2px #ffffffb8}.home-conflict-customer strong{color:#17201d;font-size:12px}.home-conflict-customer em{border-left:1px solid color-mix(in srgb, var(--conflict-level-color,#8c4d4d) 28%, transparent);color:color-mix(in srgb, var(--conflict-level-color,#8c4d4d) 72%, #17201d);padding-left:6px;font-style:normal;font-weight:900}.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}.open-payments-page{gap:18px;display:grid}.open-payments-heading{align-items:end}.open-payments-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex;position:relative}.unpaid-period-filter{position:relative}.unpaid-calendar-button svg{vertical-align:-3px;margin-right:6px}.unpaid-calendar-popover{z-index:50;background:#fff;border:1px solid #dfe5dc;border-radius:8px;width:min(330px,100vw - 32px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 24px 60px -34px #19201f94}.unpaid-period-calendar,.unpaid-period-calendar table{width:100%}.unpaid-period-calendar header{align-items:center;gap:6px;padding-bottom:8px;display:flex}.unpaid-period-calendar header button{color:#263d2e;cursor:pointer;background:#fff;border:1px solid #d7ded4;border-radius:7px;place-items:center;width:34px;height:34px;display:inline-grid}.unpaid-period-calendar header button:hover{background:#eef4eb}.unpaid-period-calendar header h2{color:#17201d;text-align:center;flex:1;margin:0;font-size:14px}.unpaid-period-calendar table{border-collapse:collapse}.unpaid-period-calendar th{color:#68746e;width:14.285%;height:32px;font-size:12px;font-weight:760}.unpaid-period-calendar td{padding:1px}.unpaid-period-calendar td>div{color:#17201d;cursor:pointer;border-radius:7px;place-items:center;width:100%;min-height:34px;font-size:13px;display:grid}.unpaid-period-calendar td>div[data-hovered]{background:#eef4eb}.unpaid-period-calendar td>div[data-selected]{background:#edf3ec}.unpaid-period-calendar td>div[data-selection-start],.unpaid-period-calendar td>div[data-selection-end]{color:#fff;background:#263d2e}.unpaid-period-calendar td>div[data-disabled]{cursor:default;opacity:.32}.unpaid-calendar-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.open-payments-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.open-payments-summary-card{background:#fff;border:1px solid #dfe5dc;border-radius:8px;align-content:center;gap:6px;min-height:92px;padding:14px;display:grid}.open-payments-summary-card span{color:#a84642}.open-payments-summary-card small{color:#68746e;font-size:12px;font-weight:760}.open-payments-summary-card strong{color:#17201d;font-size:26px;line-height:1}.open-payments-panel{overflow:hidden}.open-payments-table-wrap{overflow:visible}.open-payments-table{border-collapse:collapse;width:100%}.open-payments-table th,.open-payments-table td{text-align:left;vertical-align:top;border-top:1px solid #edf1e9;padding:12px 14px}.open-payments-table th{color:#68746e;background:#fbfcf8;font-size:12px;font-weight:820}.open-payments-table td{color:#17201d;font-size:13px}.open-payments-table td small,.open-payments-table td>small{color:#68746e;margin-top:2px;font-size:12px;display:block}.open-payments-customer{gap:2px;width:fit-content;display:grid}.open-payments-customer strong{color:#17201d;font-size:13px}.open-payments-customer span{color:#a84642;font-size:12px;font-weight:820}.open-payments-lessons{flex-wrap:wrap;gap:6px;display:flex}.open-payments-lessons a,.open-payments-lessons span{color:#435049;background:#fff;border:1px solid #e8e5df;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:760}.open-payments-lessons a:hover{color:#17201d;background:#eef4eb;border-color:#d7ded4}.open-payments-empty{color:#435049;background:#fbfcf8;border:1px solid #edf1e9;border-radius:8px;align-items:center;gap:9px;min-height:74px;margin:16px;padding:14px;font-size:13px;font-weight:760;display:flex}.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}.tenant-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.temporary-link-active-button{color:#1f6f3f;background:#effaf1;border-color:#b8d9c3}.temporary-staff-open-link-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.staff-invite-page{padding:28px 16px}.staff-invite-page .compact-login-shell{border-radius:14px;width:min(100%,460px);overflow:hidden}.staff-invite-panel{text-align:left;background:#fff;align-items:stretch;gap:16px;width:100%;min-height:0;padding:24px 28px 28px}.staff-invite-panel .login-logo{border-radius:15px;place-self:center;width:52px;height:52px}.staff-invite-panel .compact-login-copy{text-align:center;justify-items:center;gap:7px}.staff-invite-panel .compact-login-copy h1{font-size:22px;line-height:1.12}.staff-invite-panel .compact-login-copy p{color:#6f6a76;font-size:14px;line-height:1.38}.staff-invite-form{gap:14px;width:100%}.staff-invite-row{grid-template-columns:1fr;align-items:start;gap:14px;display:grid}.staff-invite-form .field{gap:7px}.staff-invite-form .field label{color:#111515;font-size:13px;font-weight:760}.staff-invite-form .field input{background:#ffffffd1;border-color:#ded7ce;border-radius:999px;min-height:44px;padding:10px 16px;font-size:14px;line-height:1.2}.staff-invite-form .field input:focus{background:#fffefa;border-color:#bcb3a7;box-shadow:0 0 0 4px #2b3b4d14}.staff-invite-form .field input[readonly]{color:#5d6265;background:#f8f7f4}.staff-invite-form .field-format-message{color:#746f68;margin:-3px 2px 0;font-size:11px;line-height:1.35}.staff-invite-submit{border-radius:8px;width:100%;min-height:46px;margin-top:2px}.staff-invite-done-panel{text-align:center;align-items:center;padding-top:44px;padding-bottom:44px}.staff-invite-success-icon{color:#1f8f46;background:#effaf1;border:1px solid #cfe8d5;border-radius:999px;place-items:center;width:74px;height:74px;display:grid;box-shadow:0 20px 48px -36px #1f8f46bf}.staff-invite-success-icon svg{width:48px;height:48px}.staff-invite-done-actions,.staff-invite-done-actions .button{width:100%}@media (max-width:620px){.staff-invite-page{padding:12px}.staff-invite-panel{padding:22px 18px 24px}}.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%;position:relative}.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-heading-actions>.quick-group-trigger{border-color:#cfcfcf;border-radius:8px;width:40px;height:40px}.planning-date-button-group{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;border:1px solid #e5e5e5;border-radius:10px;align-items:center;gap:5px;padding:4px;transition:box-shadow .18s;display:inline-flex;overflow:visible;box-shadow:0 10px 22px -18px #11111173}.planning-date-button-group:hover{box-shadow:0 12px 26px -18px #11111194}.planning-date-nav-button{color:#263d2e;cursor:pointer;background:#fff;border:0;border-radius:8px;place-items:center;width:32px;height:30px;transition:background .14s,color .14s,box-shadow .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:#f5f5f5}.planning-date-nav-button.active,.planning-date-nav-button.active:disabled{color:#fff;opacity:1;background:#111;box-shadow:0 8px 14px -10px #111111d9}.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{color:#30312d;align-items:flex-start;gap:8px;margin:4px 0 10px;font-size:13px;font-weight:720;display:inline-flex}.evaluation-settings-toggle input[type=checkbox]{border-radius:4px;width:16px;min-width:16px;height:16px;min-height:16px;margin-top:1px;padding:0}.evaluation-table-wrap{width:100%;overflow-x:auto}.evaluation-board{gap:16px;padding-top:16px;display:grid}.evaluation-board-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.evaluation-piste-tabs{scrollbar-width:none;min-width:0;margin-bottom:0;overflow-x:auto}.evaluation-tabs-action{flex:none}.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-page-actions,.evaluation-bottom-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.evaluation-bottom-actions{margin-top:14px}.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(330px,1fr) auto auto minmax(230px,.48fr);align-items:center;gap:12px;padding:8px 10px;display:grid}.evaluation-person-main{flex-wrap:wrap;align-items:center;gap:9px;min-width:0;display:flex}.evaluation-person-meta,.evaluation-person-slot{flex-wrap:wrap;gap:5px;display:flex}.evaluation-person-meta{justify-content:flex-start}.evaluation-person-slot{justify-content:flex-end}.evaluation-person-meta span,.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-current-level{border:1px solid color-mix(in srgb, var(--tenant-primary,#1d2a24) 24%, var(--border));min-height:24px;color:var(--text);background:#ffffffb8;border-radius:999px;flex:none;justify-self:end;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:820;display:inline-flex}.evaluation-current-level em{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:10px;font-style:normal;font-weight:760}.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{min-height:24px;color:color-mix(in srgb, var(--text) 72%, var(--evaluation-level-color,#9aa0a6));text-align:center;background:#ffffffb8;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 9px;font-size:11px;font-weight:760;display:inline-flex}.evaluation-level-change b{color:var(--tenant-primary,#1d2a24);font-size:12px;line-height:1}@media (max-width:760px){.evaluation-board-top{flex-direction:column;align-items:stretch}.evaluation-tabs-action form,.evaluation-tabs-action button{width:100%}.evaluation-person-card{grid-template-columns:1fr;align-items:stretch}.evaluation-person-slot,.evaluation-current-level{justify-content:flex-start;justify-self: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{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 34%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 10%, #fff);width:38px;height:38px;color:var(--tenant-primary,#263d2e);box-shadow:0 10px 22px -20px color-mix(in srgb, var(--tenant-primary,#263d2e) 44%, transparent)}.piste-template-actions .icon-button:hover{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 56%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 16%, #fff)}.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;max-width:100%;padding-bottom:12px;display:grid;overflow-x:hidden}.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:56px repeat(var(--piste-day-count,7), minmax(0, 1fr));background:#fff;border:1px solid #dfe5dc;border-radius:8px;width:100%;min-width:0;max-width: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:minmax(0,1fr);align-items:center;gap:2px;padding:0 5px;display:grid}.piste-block-day-head strong{text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:860;overflow:hidden}.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;text-overflow:ellipsis;white-space:nowrap;background:#f8faf5;border-bottom:1px solid #dfe5dc;border-right:1px solid #dfe5dc;place-items:center;min-width:0;padding:0 1px;font-size:10px;font-weight:820;display:grid;overflow:hidden}.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:6px 5px 5px;display:grid;position:absolute;left:3px;right:3px;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}.weekly-opening-template-actions .secondary-button:not(:disabled){border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 32%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 9%, #fff);color:var(--tenant-primary,#263d2e)}.weekly-opening-template-actions .secondary-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 52%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 14%, #fff)}.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}.monthly-template-apply-footer .button:not(:disabled){background:var(--tenant-primary,#263d2e);color:#fff;box-shadow:0 12px 24px -20px color-mix(in srgb, var(--tenant-primary,#263d2e) 70%, transparent)}.monthly-template-apply-footer .button:hover:not(:disabled){background:color-mix(in srgb, var(--tenant-primary,#263d2e) 88%, #000);box-shadow:0 14px 28px -20px color-mix(in srgb, var(--tenant-primary,#263d2e) 82%, transparent)}.monthly-template-apply-footer .button:disabled{color:#fff;box-shadow:none;opacity:.62;background:#a29f98}.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}.planning-risk-modal{width:min(560px,100%)}.planning-risk-modal-body{gap:12px;padding:18px 20px 4px;display:grid}.planning-risk-modal-body p{color:var(--muted);margin:0;font-size:13px;line-height:1.45}.planning-risk-confirm{color:#3b3320;background:#fff9ea;border:1px solid #ead3a1;border-radius:8px;align-items:flex-start;padding:12px;line-height:1.4}.planning-risk-modal-actions{justify-content:flex-end;gap:10px;padding:16px 20px 20px;display:flex}.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}.staff-availability-panel .panel-body{padding:18px}.staff-availability-selector-panel{margin-bottom:16px}.staff-availability-selector{grid-template-columns:minmax(180px,1fr) minmax(240px,2fr) auto;align-items:end;gap:10px;padding:16px;display:grid}.staff-availability-selector label{color:#66716b;font-size:12px;font-weight:800}.staff-availability-selector select{color:#17201d;min-height:38px;font:inherit;background:#fff;border:1px solid #dfe5dc;border-radius:8px;padding:7px 10px}.staff-availability-form{gap:16px;display:grid}.staff-availability-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.staff-availability-summary>div{background:#fff;border:1px solid #dfe5dc;border-radius:8px;gap:4px;padding:14px 16px;display:grid}.staff-availability-summary span,.staff-availability-block label span{color:#66716b;font-size:12px;font-weight:700}.staff-availability-summary strong{color:#17201d;font-size:18px}.staff-availability-week{gap:10px;display:grid}.staff-availability-day{background:#ffffffc7;border:1px solid #dfe5dc;border-radius:8px;gap:10px;padding:12px;display:grid}.staff-availability-day-header,.staff-availability-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.staff-availability-day-title{align-items:center;gap:10px;min-width:160px;display:flex}.staff-availability-day-title>span{color:#1e4e40;background:#e7f0ec;border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:inline-grid}.staff-availability-day-title strong{color:#17201d}.staff-availability-blocks{gap:8px;display:grid}.staff-availability-block{background:#fff;border:1px solid #edf0ea;border-radius:8px;grid-template-columns:112px 112px minmax(180px,1fr) 36px;align-items:end;gap:8px;padding:10px;display:grid}.staff-availability-block label{gap:5px;display:grid}.staff-availability-block input,.staff-availability-block select{color:#17201d;width:100%;min-width:0;min-height:38px;font:inherit;background:#fbfcf8;border:1px solid #dfe5dc;border-radius:8px;padding:8px 10px}.staff-availability-block select{appearance:none;text-align:center;text-align-last:center}.staff-availability-form.read-only .staff-availability-block input:disabled,.staff-availability-form.read-only .staff-availability-block select:disabled,.staff-availability-form.read-only .staff-availability-empty:disabled{opacity:1;cursor:default}.staff-availability-form.read-only .staff-availability-block input:disabled,.staff-availability-form.read-only .staff-availability-block select:disabled{color:#38453f;background:#f8faf6}.staff-availability-form.read-only .staff-availability-empty:disabled{background:#f8faf6;border-style:solid}.staff-availability-delete{color:#9d342f}.staff-availability-empty{color:#66716b;cursor:pointer;background:#fbfcf8;border:1px dashed #cfd8d0;border-radius:8px;width:100%;min-height:44px;font-weight:700}.staff-availability-empty:hover{color:#304139;background:#f2f7f3;border-color:#9fb4a9}.staff-availability-actions{justify-content:flex-end;padding-top:2px}@media (max-width:760px){.staff-availability-selector,.staff-availability-summary{grid-template-columns:1fr}.staff-availability-panel .panel-body{padding:12px}.staff-availability-day{gap:12px;padding:10px}.staff-availability-day-header,.staff-availability-actions{align-items:stretch}.staff-availability-day-header{align-items:center}.staff-availability-day-title{flex:auto;min-width:0}.staff-availability-day-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.staff-availability-day-header .icon-button{width:42px;min-width:42px;height:42px}.staff-availability-block{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;padding:10px}.staff-availability-time-field{min-width:0}.staff-availability-block input,.staff-availability-block select{min-width:0;min-height:42px;padding:8px 10px;font-size:16px}.staff-availability-note,.staff-availability-delete{grid-column:1/-1}.staff-availability-delete{justify-self:start;width:42px;height:42px}.staff-availability-actions{flex-direction:column-reverse}.staff-availability-actions .button,.staff-availability-actions .secondary-button{width:100%}}.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-mobile-planning{display:none}.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.inactive-capacity-slot{pointer-events:none;background:#fff;border-bottom-color:#0000;padding:0}.lesson-table-cell.outside-capacity-slot{box-shadow:inset 0 0 0 1px #7d887f47}.lesson-table-cell.typed-hour.closed-hour{background:var(--planning-hour-type-bg,#f2dede)}.lesson-table-cell.planning-focus-target{z-index:4;position:relative;box-shadow:inset 0 0 0 2px #d996146b,0 0 0 2px #d996141f}.planning-focus-tooltip{z-index:12;color:#b42318;text-align:center;pointer-events:none;background:#fff;border:1px solid #c7363657;border-radius:999px;min-width:0;padding:8px 12px;font-size:12px;line-height:1.25;animation:5s ease-out both planning-focus-tooltip;display:inline-flex;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);box-shadow:0 18px 44px -24px #1f211f6b}.planning-focus-tooltip:after{content:"";background:#fff;border-bottom:1px solid #c7363657;border-right:1px solid #c7363657;width:12px;height:12px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.planning-focus-tooltip strong{color:#b42318;font-size:12px;font-weight:850}@keyframes planning-focus-tooltip{0%{opacity:0;transform:translate(-50%,6px)scale(.92)}10%,82%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-4px)scale(.96)}}.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;max-width:100%;padding-bottom:12px;display:grid;overflow-x:hidden}.instructor-week-board{grid-template-columns:56px repeat(var(--instructor-day-count,7), minmax(0, 1fr));background:#fff;border:1px solid #dfe5dc;border-radius:8px;width:100%;min-width:0;max-width: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:minmax(0,1fr);align-items:center;gap:2px;padding:0 5px;display:grid}.instructor-block-day-head strong{text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:860;overflow:hidden}.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;text-overflow:ellipsis;white-space:nowrap;background:#f8faf5;border-bottom:1px solid #dfe5dc;border-right:1px solid #dfe5dc;place-items:center;min-width:0;padding:0 3px;font-size:10px;font-weight:820;display:grid;overflow:hidden}.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:6px 5px 5px;display:grid;position:absolute;left:3px;right:3px;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-readonly{border:1px solid color-mix(in srgb, var(--level-color,#111) 22%, #ffffff8a);color:#18201d;background:#ffffff47;border-radius:5px;min-height:24px;padding:3px 6px;font-size:11px;font-weight:760;line-height:1.25}.lesson-slot-readonly-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.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}.lesson-reserved-buddy-badge{color:#7d5d12;background:#fff7df;border-radius:999px;align-items:center;gap:2px;padding:1px 5px;font-weight:820;display:inline-flex}.planning-hour-types-settings{gap:12px;display:grid}.planning-code-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.planning-code-toolbar p{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.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-capacity-fields{align-items:start}.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-item-list{gap:0}.tenant-user-item-row{border-bottom:1px solid var(--line);min-height:68px;color:inherit;grid-template-columns:minmax(180px,1fr) minmax(0,auto) auto;align-items:center;gap:16px;padding:14px 18px;text-decoration:none;transition:background .16s,border-color .16s;display:grid}.tenant-user-item-row:last-child{border-bottom:0}.tenant-user-item-row:hover,.tenant-user-item-row:focus-visible{background:var(--panel-muted);outline:none}.tenant-user-item-main,.tenant-user-summary-block{gap:5px;min-width:0;display:grid}.tenant-user-item-main strong,.tenant-user-summary-block strong{color:var(--text);font-size:14px}.tenant-user-item-main span,.tenant-user-meta-list{color:var(--muted);font-size:12px}.tenant-user-item-meta,.tenant-user-meta-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tenant-user-current-pill{border:1px solid var(--line);color:var(--muted-strong);background:#fff;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700}.tenant-user-edit-icon{pointer-events:none}.tenant-user-detail-heading{align-items:end}.tenant-user-back-link{width:max-content;margin-bottom:12px}.tenant-user-detail-grid{gap:18px;display:grid}.tenant-user-section{overflow:hidden}.tenant-user-section-body{gap:16px;padding:18px;display:grid}@media (max-width:760px){.tenant-user-item-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.tenant-user-item-meta{grid-column:1/-1}.security-setup-actions{justify-content:flex-start}}.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-panel.locked{background:#f6f6f6}.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-permissions-panel.locked .tenant-permission-option{color:var(--muted);background:#f8f8f8}.tenant-permissions-panel.locked .tenant-permission-option input{cursor:not-allowed}.tenant-permissions-panel.locked .tenant-permission-option strong,.tenant-permissions-panel.locked .tenant-permission-option small{color:var(--muted)}.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%,860px)}.personnel-delete-modal{width:min(100%,520px)}.personnel-delete-modal-body{gap:18px;display:grid}.personnel-delete-modal-body p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.personnel-error-banner{color:#84231f;background:#fff4f2;border:1px solid #efc8c5;border-radius:8px;margin:16px 18px 0;padding:12px 14px;font-size:13px;font-weight:700}.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}.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{justify-self:start}.security-setup-card.compact .security-setup-actions{grid-column:2}.security-setup-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.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}.security-setup-action-hint{color:var(--muted);font-size:12px}.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{flex-direction:column;align-self:start;gap:12px;width:220px;min-width:220px;min-height:calc(100dvh - 116px);display:flex;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}.sidebar-build-version,.tenant-build-version{color:var(--muted);gap:2px;margin-top:auto;padding:10px 10px 2px;font-size:11px;line-height:1.25;display:grid}.sidebar-build-version span,.tenant-build-version span{color:color-mix(in srgb, currentColor 78%, transparent);text-transform:uppercase;font-weight:650}.sidebar-build-version strong,.tenant-build-version strong{color:var(--muted-strong);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;font-weight:700;overflow:hidden}.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-page:has(:where(.admin-modal-backdrop,.planner-modal-backdrop,.portal-preview-modal-backdrop,.pin-basket-backdrop)){z-index:30001;position:relative}.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}.tenant-ai-chat-panel{max-width:920px}.tenant-ai-chat-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.tenant-ai-chat-header h2,.tenant-ai-chat-header p{margin:0}.tenant-ai-chat-header p{color:#68746e;font-size:13px}.tenant-ai-chat-header svg{color:var(--tenant-primary,#263d2e)}.tenant-ai-chat-actions{align-items:center;gap:10px;display:flex}.tenant-ai-chat-body{gap:14px;display:grid}.tenant-ai-model-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tenant-ai-provider-switch{background:#fff;border:1px solid #dfe5dc;border-radius:8px;min-height:36px;display:inline-flex;overflow:hidden}.tenant-ai-provider-switch button{color:#59645e;min-width:104px;font:inherit;cursor:pointer;background:0 0;border:0;border-right:1px solid #dfe5dc;padding:0 12px;font-size:12px;font-weight:820}.tenant-ai-provider-switch button:last-child{border-right:0}.tenant-ai-provider-switch button.active{background:var(--tenant-primary,#263d2e);color:#fff}.tenant-ai-provider-switch button:disabled{cursor:not-allowed;opacity:.48}.tenant-ai-model-pill{color:#68746e;background:#fff;border:1px solid #dfe5dc;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:0 10px;font-size:12px;font-weight:740;display:inline-flex}.tenant-ai-model-pill strong{color:#17201d;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px}.tenant-ai-inline-field{gap:4px;min-width:150px;display:grid}.tenant-ai-inline-field span{color:#68746e;font-size:11px;font-weight:800}.tenant-ai-inline-field input,.tenant-ai-inline-field select{color:#17201d;min-height:34px;font:inherit;background:#fff;border:1px solid #dfe5dc;border-radius:8px;padding:0 9px;font-size:12px;font-weight:720}.tenant-ai-inline-field input:focus,.tenant-ai-inline-field select:focus{border-color:var(--tenant-primary,#263d2e);box-shadow:0 0 0 2px color-mix(in srgb, var(--tenant-primary,#263d2e) 14%, transparent);outline:none}.tenant-ai-inline-field input[readonly]{color:#58645d;background:#f8faf7}.tenant-ai-model-status{color:#66706a;background:#fffdfa;border:1px solid #e3e6df;border-radius:8px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:12px;font-weight:760;display:inline-flex}.tenant-ai-model-status:before{content:"";background:#c6b36a;border-radius:999px;width:8px;height:8px}.tenant-ai-model-status.loaded:before{background:#2f7c42;box-shadow:0 0 0 4px #2f7c4217}.tenant-ai-model-status.offline:before{background:#b54141;box-shadow:0 0 0 4px #b5414117}.tenant-ai-model-status strong{color:#17201d;font-size:11px}.tenant-ai-model-controls{flex-wrap:wrap;gap:8px;display:inline-flex}.tenant-ai-model-controls .secondary-button{min-height:34px;font-size:12px}.tenant-ai-model-controls .secondary-button.danger{color:#8f3535;background:snow;border-color:#e7c7c7}.tenant-ai-model-controls .secondary-button.danger:hover:not(:disabled){color:#752a2a;background:#fff4f4}.tenant-ai-runtime-status{color:#4f5b54;background:#f8faf7;border:1px solid #e1e7de;border-radius:8px;padding:9px 10px;font-size:12px;font-weight:720}.tenant-ai-load-progress{background:#fff;border:1px solid #dfe7df;border-radius:8px;gap:7px;padding:9px 10px;display:grid}.tenant-ai-load-progress-head{color:#5b675f;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;font-size:11px;font-weight:820;display:flex}.tenant-ai-load-progress-head strong{color:var(--tenant-primary,#263d2e)}.tenant-ai-load-progress-track{background:#edf2ec;border-radius:999px;height:8px;overflow:hidden}.tenant-ai-load-progress-track span{border-radius:inherit;background:var(--tenant-primary,#263d2e);height:100%;transition:width .45s;display:block}.tenant-ai-load-progress.indeterminate .tenant-ai-load-progress-track span{width:38%;animation:1.25s ease-in-out infinite tenantAiLoadIndeterminate}.tenant-ai-load-progress.complete .tenant-ai-load-progress-track span{animation:none}@keyframes tenantAiLoadIndeterminate{0%{transform:translate(-110%)}50%{transform:translate(95%)}to{transform:translate(260%)}}.tenant-ai-message-list{background:#fbfcfa;border:1px solid #e6ebe2;border-radius:10px;align-content:start;gap:10px;min-height:260px;max-height:440px;padding:12px;display:grid;overflow:auto}.tenant-ai-message{color:#17201d;background:#fff;border:1px solid #dfe5dc;border-radius:10px;gap:5px;width:min(76%,620px);padding:10px 12px;display:grid}.tenant-ai-message.user{border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 28%, #dfe5dc);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 8%, #fff);justify-self:end}.tenant-ai-message.pending{opacity:.76}.tenant-ai-message span{color:#68746e;font-size:11px;font-weight:800}.tenant-ai-message p{white-space:pre-wrap;margin:0;font-size:13px;line-height:1.5}.tenant-ai-stream-panel{background:#fff;border:1px solid #e2e7df;border-radius:8px;gap:8px;padding:10px;display:grid}.tenant-ai-stream-head{color:#68746e;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;font-size:11px;font-weight:820;display:flex}.tenant-ai-stream-head strong{color:var(--tenant-primary,#263d2e)}.tenant-ai-stream-log{flex-wrap:wrap;gap:6px;display:flex}.tenant-ai-stream-log span{color:#56625b;background:#fbfcfa;border:1px solid #e2e7df;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:700}.tenant-ai-compose{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.tenant-ai-compose-fields{gap:8px;display:grid}.tenant-ai-compose textarea,.tenant-ai-whatsapp-phone input{resize:vertical;color:#17201d;min-height:84px;font:inherit;background:#fff;border:1px solid #dfe5dc;border-radius:10px;padding:10px 12px}.tenant-ai-whatsapp-phone input{resize:none;min-height:40px}.tenant-ai-compose textarea:focus,.tenant-ai-whatsapp-phone input:focus{border-color:var(--tenant-primary,#263d2e);box-shadow:0 0 0 2px color-mix(in srgb, var(--tenant-primary,#263d2e) 14%, transparent);outline:none}.tenant-ai-whatsapp-toggle{color:#4f5b54;align-items:center;gap:8px;font-size:12px;font-weight:760;display:inline-flex}.tenant-ai-whatsapp-phone{gap:6px;display:grid}.tenant-ai-whatsapp-phone span{color:#68746e;font-size:11px;font-weight:800}.tenant-ai-provider-form{gap:16px}.ai-provider-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.tenant-ai-provider-fields{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}@media (max-width:720px){.tenant-ai-message{width:100%}.tenant-ai-compose{grid-template-columns:1fr}.tenant-ai-compose .button{width:100%}}.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}to{opacity:1}}@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 .tenant-logo-mark-image,.portal-brand .tenant-logo-mark-image{max-width:min(112px,30vw)}.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-nav-hover-bg);color:var(--portal-text,#263d2e);box-shadow:0 8px 18px -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(520px,100%)}.price-category-manager{gap:14px;display:grid}.price-category-create-form{grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:8px;display:grid}.price-category-create-form input,.price-category-manager-row input{color:#17201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-width:0;min-height:38px;padding:0 10px}.price-category-manager-list{gap:8px;display:grid}.price-category-manager-row{background:#fbfcf8;border:1px solid #e2e8de;border-radius:8px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:44px;padding:5px 5px 5px 12px;display:grid}.price-category-manager-row span{color:#17201d;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:760;overflow:hidden}.danger-icon-button{color:#963535}.danger-icon-button:hover:not(:disabled){background:#fff3f3;border-color:#e2b8b8}.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}.draggable-priority-list{width:100%}.draggable-priority-list ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.priority-list-item{border:1px solid color-mix(in srgb, var(--line,#dfe5dc) 70%, transparent);cursor:grab;outline-offset:2px;background:#fff;border-radius:12px;transition:transform .15s,box-shadow .15s,opacity .15s,border-color .15s,background .15s;position:relative;overflow:hidden}.priority-list-item:hover{background:#fbfcf8;border-color:#cfd8ce}.priority-list-item.dragging{opacity:.9;cursor:grabbing;transform:scale(1.012);box-shadow:0 18px 42px -30px #19201f85}.priority-list-item.drag-over{background:#f2f7ef;border-color:#7b9a76}.priority-list-item.keyboard-grabbed{box-shadow:0 0 0 2px #286848,0 0 0 4px #fff}.priority-list-row{align-items:stretch;min-width:0;display:flex}.priority-list-rank{border-right:1px solid color-mix(in srgb, var(--line,#dfe5dc) 70%, transparent);flex-direction:column;flex:0 0 56px;justify-content:center;align-items:center;gap:2px;width:56px;min-width:56px;padding:14px 0;display:flex}.priority-list-rank span{color:#66716b;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:18px;font-weight:620;line-height:1}.priority-list-rank small{color:#9aa49f;letter-spacing:.08em;text-transform:uppercase;min-height:10px;font-size:9px;font-weight:780;line-height:1}.priority-list-body{flex:auto;min-width:0;padding:13px 16px}.priority-list-titleline{align-items:center;gap:10px;min-width:0;display:flex}.priority-list-titleline>div{min-width:0}.priority-list-titleline strong,.priority-list-titleline small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.priority-list-titleline strong{color:#17201d;font-size:14px;font-weight:760;line-height:1.3}.priority-list-titleline small{color:#68746e;margin-top:2px;font-size:12px}.priority-list-accent{border-radius:4px;flex:0 0 16px;width:16px;height:16px;box-shadow:inset 0 0 0 1px #18201d26}.priority-list-content{margin-top:12px}.priority-list-side{flex:none;align-items:center;padding:0 8px;display:flex}.priority-list-handle,.price-drag-handle{color:#9aa49f;flex:0 0 40px;justify-content:center;align-items:center;width:40px;transition:color .15s;display:flex}.priority-list-handle svg,.price-drag-handle svg{width:16px;height:16px}.priority-list-item:hover .priority-list-handle,.price-settings-summary:hover .price-drag-handle{color:#66716b}.priority-list-keyboard-hint{color:#8b958f;justify-content:flex-end;align-items:center;gap:5px;margin-top:10px;font-size:11px;display:flex}.priority-list-keyboard-hint kbd{color:#68746e;background:#f2f4ef;border:1px solid #dfe5dc;border-radius:5px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:10px}.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-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,.rental-categories-panel{margin-bottom:18px}.rental-categories-modal{width:min(520px,100vw - 32px)}.rental-categories-form{gap:12px}.rental-catalog-item-modal{width:min(760px,100vw - 32px)}.rental-catalog-item-form{gap:14px}.rental-catalog-active-field{width:fit-content}.rental-catalog-modal-switches{background:#fbfcf8;border:1px solid #e7ece3;border-radius:8px;grid-column:auto;padding:10px 12px}.rental-category-list{gap:10px;display:grid}.rental-category-row{color:#4f5a54;grid-template-columns:minmax(92px,.35fr) minmax(0,1fr) 34px;align-items:center;gap:8px;font-size:12px;font-weight:760;display:grid}.rental-category-row input:not([type=hidden]){color:#17201d;background:#fff;border:1px solid #dfe5dc;border-radius:7px;min-height:36px;padding:0 10px}.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:18px;padding-top:14px;display:flex}.rental-cleanup-form .checkbox-field{color:#4f5a54;flex:auto;align-items:center;gap:10px;min-width:0;font-size:13px;font-weight:720;line-height:1.35;display:inline-flex}.rental-cleanup-form .checkbox-field span{min-width:0}.rental-cleanup-form .danger-button{flex:none}.rental-toggle-form,.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 34px;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/-3;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(120px,170px) minmax(108px,140px) minmax(180px,1fr);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}.age-rule-heading{align-items:center;gap:8px;display:inline-flex}.age-rule-heading h2{margin:0}.age-rule-help{width:22px;height:22px;font-size:12px;font-weight:800}.level-subcategory-create label{flex-direction:column;gap:5px;min-width:0;display:flex}.level-subcategory-create label span,.level-editor-field span{color:#66716b;font-size:11px;font-weight:760}.level-subcategory-create small,.level-editor-field small,.compatibility-group-header small,.age-rule-form small{color:#738078;overflow-wrap:anywhere;word-break:break-word;justify-self:stretch;width:100%;min-width:0;max-width:100%;font-size:11px;font-weight:520;line-height:1.35;display:block}.level-subcategory-create input[type=color]{width:100%;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{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.level-category-name-form{align-items:center;gap:6px;display:inline-flex}.level-category-name-form input{background:#fff;border:1px solid #dfe5dc;border-radius:6px;width:clamp(120px,18vw,220px);min-height:30px;padding:0 8px;font-weight:720}.level-category-actions .compact-button{min-height:30px;padding:0 10px;font-size:12px}.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}.priority-level-list{display:block}.priority-level-list .draggable-priority-list ul{gap:10px}.priority-level-list .priority-list-item{overflow:visible}.priority-level-list .priority-list-content .level-settings-row:before{display:none}.priority-level-editor-form{border:0;border-top:1px solid #edf1e9;border-radius:0;grid-template-columns:minmax(220px,2fr) minmax(96px,.8fr) minmax(112px,.9fr) minmax(110px,.8fr) max-content max-content;padding:14px 0 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(140px,170px) minmax(220px,2fr) minmax(96px,.8fr) minmax(112px,.9fr) minmax(110px,.8fr) minmax(110px,.8fr) max-content max-content;align-items:start;gap:14px;padding:16px;display:grid}.level-editor-form>*{min-width:0}.level-editor-heading{align-self:center;align-items:center;gap:10px;min-width:0;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{flex-direction:column;gap:5px;min-width:0;display:flex}.level-settings-row input:not([type=checkbox]){box-sizing:border-box;border:1px solid #dfe5dc;border-radius:6px;width:100%;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;white-space:nowrap;align-self:start;align-items:center;gap:6px;min-height:34px;margin-top:20px;font-size:12px;font-weight:760;display:inline-flex}.level-editor-form .secondary-button{white-space:nowrap;align-self:start;margin-top:20px}.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}@media (max-width:1280px){.level-editor-form{grid-template-columns:minmax(140px,170px) repeat(3,minmax(0,1fr))}.priority-level-editor-form{grid-template-columns:repeat(3,minmax(0,1fr))}.level-editor-name{grid-column:span 2}.level-editor-form .secondary-button{justify-self:start}}.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-fill,minmax(136px,1fr));gap:10px 16px;padding:2px 0 4px;display:grid}.compatibility-options label{color:#4f5a54;overflow-wrap:anywhere;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:7px;min-width:0;min-height:24px;font-size:12px;line-height:1.2;display:grid}.compatibility-options input[type=checkbox]{align-self:center}.compatibility-groups{gap:18px;padding:18px;display:grid}.compatibility-group-card{background:#fffefb;border:1px solid #dfe5dc;border-radius:8px;gap:16px;padding:20px;display:grid}.compatibility-group-create{background:#fbfcf8}.compatibility-group-form{gap:16px;display:grid}.compatibility-group-header,.age-rule-form{grid-template-columns:minmax(260px,1fr) minmax(180px,240px) minmax(140px,190px);align-items:start;gap:14px;display:grid}.compatibility-group-header label,.age-rule-form label{color:#4f5a54;gap:5px;min-width:0;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}.age-rule-panel{z-index:2;position:relative;overflow:visible}.age-rule-panel .panel-header{z-index:2;position:relative}.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:56px minmax(0,1fr) auto 40px 28px;align-items:center;gap:0;min-height:64px;padding:0;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{cursor:grab}.price-settings-rank{align-self:stretch}.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;padding:13px 16px;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;padding:0 12px;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}.tenant-setup-preview-shell{background:linear-gradient(180deg, color-mix(in srgb, var(--accent-bg) 48%, #fff 52%), var(--bg) 38%), var(--bg);min-height:100dvh;padding:32px clamp(18px,5vw,64px)}.tenant-setup-page{flex-direction:column;gap:18px;width:min(980px,100%);margin:0 auto;display:flex}.tenant-setup-hero{justify-content:space-between;align-items:flex-end;gap:18px;padding:6px 0 4px;display:flex}.tenant-setup-hero h1{color:var(--text);letter-spacing:0;margin:4px 0 8px;font-size:clamp(28px,4vw,46px);line-height:1}.tenant-setup-hero p{max-width:68ch;color:var(--muted);margin:0;font-size:15px;line-height:1.6}.tenant-setup-skip{min-width:120px}.tenant-setup-message{max-width:920px}.tenant-setup-progress{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 92%, var(--accent-bg) 8%);border-radius:8px;padding:16px}.tenant-setup-progress-top{color:var(--text);justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;font-size:14px;display:flex}.tenant-setup-progress-top span{color:var(--muted);font-size:13px}.tenant-setup-step-track{--setup-progress:25%;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid;position:relative}.tenant-setup-step-track:before,.tenant-setup-step-track:after{content:"";pointer-events:none;border-radius:999px;height:2px;position:absolute;top:18px;left:28px;right:28px}.tenant-setup-step-track:before{background:repeating-linear-gradient(90deg, var(--line-strong) 0 36px, transparent 36px 48px)}.tenant-setup-step-track:after{width:calc(var(--setup-progress) - 14px);background:var(--tenant-primary,var(--accent));max-width:calc(100% - 56px);transition:width .22s;right:auto}.tenant-setup-step-marker{z-index:1;min-width:0;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr);grid-template-areas:"icon number""icon title";align-items:center;column-gap:10px;padding:0;display:grid;position:relative}.tenant-setup-step-marker span{border:1px solid var(--line-strong);background:var(--panel);width:36px;height:36px;color:var(--muted);border-radius:8px;grid-area:icon;place-items:center;transition:background .18s,border-color .18s,color .18s,transform .18s;display:grid}.tenant-setup-step-marker em{color:var(--muted);grid-area:number;font-size:11px;font-style:normal;font-weight:700;line-height:1}.tenant-setup-step-marker strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;grid-area:title;font-size:13px;font-weight:600;line-height:1.25;overflow:hidden}.tenant-setup-step-marker.active span,.tenant-setup-step-marker.done span{border-color:var(--tenant-primary,var(--accent));background:var(--tenant-primary,var(--accent));color:#fff}.tenant-setup-step-marker.active{color:var(--text)}.tenant-setup-step-marker.active span{transform:translateY(-1px)}.tenant-setup-form{flex-direction:column;gap:18px;display:flex}.tenant-setup-step-pages{min-height:440px}.tenant-setup-step-page{min-width:0;display:none}.tenant-setup-step-page.active{animation:.22s both tenantSetupStepIn;display:block}.tenant-setup-panel-header{align-items:flex-start;gap:12px;display:flex}.tenant-setup-step-icon{background:color-mix(in srgb, var(--tenant-primary,var(--text)) 10%, transparent);width:36px;height:36px;color:var(--tenant-primary,var(--text));border-radius:8px;flex:none;place-items:center;display:grid}.tenant-setup-question-list{flex-direction:column;gap:12px;display:flex}.tenant-setup-question{border:1px solid var(--line);background:var(--panel-muted);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(150px,220px);align-items:center;gap:18px;padding:14px;display:grid}.tenant-setup-question label{color:var(--text);font-size:14px;font-weight:650}.tenant-setup-question p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.45}.tenant-number-stepper{justify-self:end;width:min(100%,168px)}.tenant-number-stepper.compact{width:118px}.tenant-number-stepper-group{border:1px solid var(--line-strong);width:100%;min-height:36px;color:var(--text);background:#fff;border-radius:8px;align-items:center;transition:border-color .16s,box-shadow .16s;display:inline-flex;overflow:hidden;box-shadow:0 1px 2px #0d0d0d0a}.tenant-number-stepper-group[data-focus-within]{border-color:var(--tenant-primary,var(--text));box-shadow:0 0 0 3px color-mix(in srgb, var(--tenant-primary,var(--text)) 16%, transparent)}.tenant-number-stepper-button{width:36px;height:36px;color:var(--muted-strong);cursor:pointer;background:#fff;border:0;flex:0 0 36px;place-items:center;transition:background .16s,color .16s;display:inline-grid}.tenant-number-stepper-button:hover{background:var(--panel-muted);color:var(--text)}.tenant-number-stepper-button:disabled{cursor:not-allowed;opacity:.45}.tenant-number-stepper-button:first-child{border-right:1px solid var(--line)}.tenant-number-stepper-button:last-child{border-left:1px solid var(--line)}.tenant-number-stepper-input{width:100%;min-width:0;height:36px;color:var(--text);font-variant-numeric:tabular-nums;text-align:center;background:#fff;border:0;font-size:13px;font-weight:700}.tenant-number-stepper-input:focus{outline:none}.tenant-time-field{justify-self:end;width:min(100%,168px)}.tenant-time-field-wrap{width:100%;position:relative}.tenant-time-field-icon{pointer-events:none;z-index:1;color:var(--muted-strong);position:absolute;inset-block-start:50%;inset-inline-start:12px;transform:translateY(-50%)}.tenant-time-input{border:1px solid var(--line-strong);width:100%;min-height:36px;color:var(--text);font-variant-numeric:tabular-nums;background:#fff;border-radius:8px;align-items:center;padding:0 12px 0 36px;font-size:13px;font-weight:700;transition:border-color .16s,box-shadow .16s;display:inline-flex;overflow:hidden;box-shadow:0 1px 2px #0d0d0d0a}.tenant-time-input[data-focus-within]{border-color:var(--tenant-primary,var(--text));box-shadow:0 0 0 3px color-mix(in srgb, var(--tenant-primary,var(--text)) 16%, transparent)}.tenant-time-segment{color:var(--text);caret-color:#0000;text-align:center;border-radius:4px;outline:0;min-width:18px;padding:1px 3px;transition:background .12s,box-shadow .12s,color .12s}.tenant-time-segment[data-focused],.tenant-time-segment:focus-visible{background:var(--tenant-primary,var(--text));color:#fff;box-shadow:0 0 0 2px color-mix(in srgb, var(--tenant-primary,var(--text)) 22%, transparent)}.tenant-time-segment[data-placeholder]{color:var(--muted)}.tenant-time-segment[data-focused][data-placeholder],.tenant-time-segment[data-focused][data-type=literal]{color:#fff}.tenant-time-segment[data-type=literal]{color:var(--muted);padding-inline:0}.tenant-season-start-field{justify-self:end;width:min(100%,300px);min-width:260px}.tenant-season-start-input{font-variant-numeric:tabular-nums;letter-spacing:0}.tenant-setup-season-date-question{grid-template-columns:minmax(0,1fr) minmax(260px,300px)}.tenant-season-start-input[aria-invalid=true]{border-color:var(--danger)}.tenant-setup-check{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 82%, #fff 18%);cursor:pointer;border-radius:8px;align-items:flex-start;gap:12px;padding:12px;display:flex}.tenant-setup-check input{width:18px;height:18px;accent-color:var(--tenant-primary,var(--text));margin-top:2px}.tenant-setup-check span{flex-direction:column;gap:3px;min-width:0;display:flex}.tenant-setup-check strong{color:var(--text);font-size:14px}.tenant-setup-check small{color:var(--muted);font-size:12px;line-height:1.45}.tenant-setup-summary{background:var(--panel-muted);color:var(--muted);border-radius:8px;flex-direction:column;gap:4px;padding:12px;font-size:13px;line-height:1.45;display:flex}.tenant-setup-summary strong{color:var(--text)}.tenant-setup-actions{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.tenant-setup-actions>div{min-width:0;color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:10px;font-size:13px;line-height:1.45;display:flex}.tenant-setup-actions svg{color:var(--tenant-primary,var(--text));flex:none}.tenant-setup-arrow{justify-content:center;align-items:center;gap:8px;min-width:116px;display:inline-flex}@keyframes tenantSetupStepIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@media (max-width:900px){.tenant-setup-preview-shell{padding:22px 14px}.tenant-setup-hero{flex-direction:column;align-items:stretch}.tenant-setup-step-track{grid-template-columns:1fr;gap:12px}.tenant-setup-step-track:before,.tenant-setup-step-track:after{width:2px;height:auto;inset:18px auto 18px 18px}.tenant-setup-step-track:before{background:repeating-linear-gradient(180deg, var(--line-strong) 0 26px, transparent 26px 36px)}.tenant-setup-step-track:after{max-width:none;height:calc(var(--setup-progress) - 16px);background:var(--tenant-primary,var(--accent));max-height:calc(100% - 36px);transition:height .22s}.tenant-setup-step-marker strong{white-space:normal}.tenant-setup-question{grid-template-columns:1fr;gap:10px}.tenant-number-stepper,.tenant-number-stepper.compact,.tenant-time-field,.tenant-season-start-field{justify-self:stretch;width:100%;min-width:0}.tenant-setup-actions{grid-template-columns:1fr;align-items:stretch}.tenant-setup-actions .button,.tenant-setup-actions .secondary-button,.tenant-setup-skip{width:100%}}.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(50px,max-content) minmax(0,1fr) auto;gap:18px;min-height:56px;padding:0 24px;position:sticky}.school-brand{z-index:2;grid-column:1;gap:10px;width:auto;max-width:148px;position:relative}.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:42px;height:42px;font-size:12px;font-weight:600}.school-brand-mark img{background:#fff;padding:3px}.tenant-logo-mark{flex:none}.tenant-logo-mark-image{width:clamp(42px, calc(var(--logo-aspect,1) * 42px), 136px);max-width:min(136px,24vw)}.tenant-logo-mark-landscape img{padding:2px}.tenant-logo-mark-wide img{padding:1px}.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:visible}.school-nav-desktop{z-index:1;pointer-events:none;grid-column:1/-1;width:100%;padding:0 180px;position:absolute;inset:0}.school-nav-desktop :where(a,button,.school-nav-manage,.school-nav-manage-list,.school-nav-manage-content,.school-nav-manage-panel,[data-slot=navigation-menu],[data-slot=navigation-menu-list],[data-slot=navigation-menu-item],[data-slot=navigation-menu-content]){pointer-events:auto}.school-nav-side,.school-nav-center{align-items:center;gap:1px;min-width:0;display:inline-flex}.school-nav-manage,.school-nav-manage-list{align-items:center;min-width:0;display:inline-flex;position:relative}.school-nav-manage-list{gap:0;margin:0;padding:0;list-style:none}.school-nav-manage [data-slot=navigation-menu-item]{position:relative}.school-nav-manage{isolation:isolate}.school-nav-left{justify-content:flex-end}.school-nav-center{grid-template-columns:repeat(3,minmax(104px,1fr));justify-content:center;display:grid}.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}.tenant-mobile-nav{width:100%;position:relative}.tenant-mobile-nav-trigger{border:1px solid var(--line);width:100%;min-height:42px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.tenant-mobile-nav-trigger span{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tenant-mobile-nav-trigger .navigation-menu-chevron{transition:transform .18s}.tenant-mobile-nav-trigger.open .navigation-menu-chevron{transform:rotate(180deg)}.tenant-mobile-nav-panel{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px;padding:6px;display:grid;box-shadow:0 18px 44px -34px #0d0d0d6b}.tenant-mobile-nav-panel a{border-radius:8px;justify-content:flex-start;min-width:0;min-height:40px;padding:0 9px}.tenant-mobile-nav-panel a span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.school-nav::-webkit-scrollbar{display:none}.school-nav a,.school-nav-manage-trigger{min-height:36px;color:var(--muted-strong);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:500;line-height:1;transition:background .18s,color .18s,transform .18s;display:inline-flex}.school-nav-manage:not(.school-nav-manage-open) .school-nav-manage-trigger:not(.active),.school-nav-manage:not(.school-nav-manage-open) .school-nav-manage-trigger:not(.active) span{color:var(--muted-strong);opacity:1}.school-nav-manage-trigger .navigation-menu-chevron{color:#8f8f8f;opacity:.9;width:14px;height:14px;transition:color .18s,transform .22s}.school-nav-manage-open .school-nav-manage-trigger .navigation-menu-chevron{transform:rotate(180deg)}.school-nav-manage-content{z-index:50;min-width:212px;box-shadow:none;opacity:0;pointer-events:none;transform-origin:0 0;visibility:hidden;background:0 0;border:0;padding-top:8px;transition:opacity .14s,transform .14s,visibility 0s linear .14s;position:absolute;top:100%;left:0;overflow:visible;transform:translateY(-4px)scale(.98)}.school-nav-manage-open .school-nav-manage-content{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:translateY(0)scale(1)}.school-nav-manage-panel{border:1px solid var(--line);background:#fff;border-radius:10px;gap:2px;margin:0;padding:6px;list-style:none;display:grid;box-shadow:0 18px 44px -30px #0d0d0d6b}.school-nav-manage-panel a{justify-content:flex-start;width:100%;padding:9px 10px}@keyframes school-nav-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes school-nav-menu-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-4px)scale(.96)}}@keyframes school-nav-menu-from-start{0%{opacity:0;transform:translate(-10px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes school-nav-menu-from-end{0%{opacity:0;transform:translate(10px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}.planning-legend-button{z-index:4;width:34px;height:34px;color:var(--text);cursor:pointer;background:#fff;border:1px solid #d0d0d0;border-radius:999px;place-items:center;display:inline-grid;position:absolute;top:0;right:0;box-shadow:0 10px 26px -22px #00000070}.planning-legend-button:hover{background:#f5f5f5}.planning-legend-modal{border-color:#dfe7db;border-radius:12px;gap:14px;width:min(620px,100vw - 32px);max-width:620px;padding:15px;animation:.17s ease-out both portal-card-in;display:grid;box-shadow:0 30px 90px #10171347}.planning-legend-modal .planner-modal-header{background:0 0;border-bottom:0;align-items:center;padding:0}.planning-legend-modal .planner-modal-header h2{font-size:17px;font-weight:840}.planning-legend-modal .planner-modal-header p{max-width:500px;color:var(--muted);font-weight:650;line-height:1.45}.planning-legend-modal .planner-modal-header button{color:#4e5c54;cursor:pointer;background:#fff;border:1px solid #dfe7db;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;transition:background .15s,color .15s,transform .15s;display:grid}.planning-legend-modal .planner-modal-header button:hover{color:var(--text);background:#f5f7f3;transform:translateY(-1px)}.planning-legend-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;display:grid}.planning-legend-item{background:#fff;border:1px solid #dfe7db;border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.planning-legend-item strong,.planning-legend-codes strong{color:var(--text);font-size:.84rem;display:block}.planning-legend-item p{color:var(--muted);margin:2px 0 0;font-size:.76rem}.planning-legend-swatch{border:1px solid var(--border);border-radius:7px;width:28px;height:28px}.planning-legend-swatch.snowboard{background:#e3f2ff}.planning-legend-swatch.private{background:#fff2cc}.planning-legend-swatch.event{background:#ffe4df}.planning-legend-swatch.closed{background:#eceff1}.planning-legend-swatch.lessons{background:#eef4eb}.planning-legend-codes{background:#fbfcfa;border:1px solid #dfe7db;border-radius:10px;margin:0;padding:12px}.planning-legend-codes>div{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.planning-legend-codes span{border:1px solid var(--border);min-height:28px;color:var(--muted-strong);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:.74rem;font-weight:800;display:inline-flex}.planning-legend-codes i{background:var(--planning-hour-type-bg,#eef4eb);border-radius:999px;width:9px;height:9px}.school-nav a svg{color:#8f8f8f;transition:color .18s}.school-nav a:hover,.school-nav a.active,.school-nav-manage-open .school-nav-manage-trigger,.school-nav-manage-trigger.active{background:var(--line);color:var(--text)}.school-nav a:hover svg,.school-nav a.active svg,.school-nav-manage-open .navigation-menu-chevron,.school-nav-manage-trigger.active .navigation-menu-chevron{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{z-index:2;color:var(--muted);grid-column:3;justify-self:end;gap:10px;font-size:12px;position:relative}.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.typed-hour:not(.assigned-hour){background:var(--planning-hour-type-bg,#fffefb)}.planning-workspace .lesson-table-cell.snowboard-hour:not(.assigned-hour):not(.typed-hour),.planning-workspace .lesson-table-cell.private-hour:not(.assigned-hour):not(.typed-hour),.planning-workspace .lesson-table-cell.event-hour:not(.assigned-hour):not(.typed-hour),.planning-workspace .lesson-table-cell.closed-hour:not(.assigned-hour):not(.typed-hour){background:#f3f3f3}.planning-workspace .lesson-table-cell.planning-focus-target{box-shadow:inset 0 0 0 2px #d996146b,0 0 0 2px #d996141f}.planning-workspace .lesson-table-cell.planning-focus-target .lesson-slot-edit .lesson-autocomplete input,.planning-workspace .lesson-table-cell.planning-focus-target .lesson-add-form .lesson-autocomplete input{border-color:#d99614;box-shadow:0 0 0 2px #d9961433}.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-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:#f5f5f5}.planning-workspace .planning-date-nav-button.active,.planning-workspace .planning-date-nav-button.active:disabled,.planning-workspace .planning-date-go-button{color:#fff;background:#111}.planning-workspace .planning-date-go-button:hover:not(:disabled){background:#333}.lesson-mobile-tabs{border:1px solid var(--line);scrollbar-width:none;-webkit-overflow-scrolling:touch;background:#fff;border-radius:10px;gap:4px;margin:0 0 10px;padding:4px;display:flex;overflow-x:auto}.lesson-mobile-tabs::-webkit-scrollbar{display:none}.lesson-mobile-tabs button{min-height:34px;color:var(--muted-strong);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;flex:1 0 auto;padding:0 12px;font-family:inherit;font-size:13px;font-weight:600}.lesson-mobile-tabs button.active{background:var(--text);color:#fff}.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{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}.school-app .weekly-opening-template-actions .secondary-button:not(:disabled){border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 32%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 9%, #fff);color:var(--tenant-primary,#263d2e)}.school-app .weekly-opening-template-actions .secondary-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--tenant-primary,#263d2e) 52%, #9dc5b6);background:color-mix(in srgb, var(--tenant-primary,#263d2e) 14%, #fff);color:var(--tenant-primary,#263d2e)}.school-app .monthly-template-apply-footer .button:not(:disabled){background:var(--tenant-primary,#263d2e);color:#fff;box-shadow:0 12px 24px -20px color-mix(in srgb, var(--tenant-primary,#263d2e) 70%, transparent)}.school-app .monthly-template-apply-footer .button:hover:not(:disabled){background:color-mix(in srgb, var(--tenant-primary,#263d2e) 88%, #000);color:#fff;box-shadow:0 14px 28px -20px color-mix(in srgb, var(--tenant-primary,#263d2e) 82%, transparent)}.school-app .monthly-template-apply-footer .button:disabled{color:#fff;box-shadow:none;opacity:.62;background:#a29f98}.planning-date-button-group,.planning-date-jump input,.school-app .date-picker{box-shadow:none;background:#fff}.planning-date-button-group{background:#fffc;border-color:#e5e5e5;border-radius:10px;box-shadow:0 10px 22px -18px #11111173}.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}.portal-app input[type=checkbox]:not(.image-upload-input),.admin-shell input[type=checkbox]:not(.image-upload-input),.school-app input[type=checkbox]:not(.image-upload-input){border-radius:4px;flex:none;width:16px;min-width:16px;height:16px;min-height:16px;padding:0}.portal-app input[type=checkbox]:not(.image-upload-input):not(:disabled):checked{border-color:var(--portal-text,#263d2e);background:var(--portal-text,#263d2e) 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") center / 16px 16px no-repeat}.admin-shell input[type=checkbox]:not(.image-upload-input):not(:disabled):checked,.school-app input[type=checkbox]:not(.image-upload-input):not(:disabled):checked{border-color:var(--ds-gray-1000);background:var(--ds-gray-1000) 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") center / 16px 16px no-repeat}.portal-app input[type=checkbox]:not(.image-upload-input):disabled:checked,.admin-shell input[type=checkbox]:not(.image-upload-input):disabled:checked,.school-app input[type=checkbox]:not(.image-upload-input):disabled:checked{border-color:var(--ds-gray-600);background:var(--ds-gray-600) 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") center / 16px 16px no-repeat}@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-brand,.school-user,.school-nav-desktop{grid-column:auto}.school-nav{justify-self:stretch;overflow-x:auto}.school-nav-desktop{pointer-events:auto;width:auto;padding:0;position:static;inset: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-button-group{justify-content:space-between}.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-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,.k8s-topology-summary,.k8s-layout-map,.k8s-namespace-frame{grid-template-columns:1fr}.k8s-namespace-node>summary,.k8s-workload-heading,.k8s-pod-heading{flex-direction:column;align-items:flex-start}.k8s-node-meta{justify-content:flex-start}.k8s-container-grid,.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;min-height:0;position:static}.tenant-settings-nav{padding-bottom:4px;display:flex;overflow-x:auto}.tenant-build-version{margin-top:0;padding:2px}.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-editor-active,.level-editor-form .secondary-button{margin-top:0}.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{top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));margin-bottom:0;position:fixed}.language-menu{right:0}}@media (max-width:760px){.lesson-table-shell{overflow-x:visible}.lesson-desktop-table{display:none}.lesson-mobile-planning{display:block}.lesson-mobile-table{--lesson-table-width:100%;--lesson-time-width:48px;width:100%}.lesson-mobile-table .lesson-table-section{height:34px;font-size:13px}.lesson-mobile-table .lesson-table-subhead,.lesson-mobile-table .lesson-table-group-head{height:30px;font-size:12px}.lesson-mobile-table .lesson-table-time{padding:7px 4px;font-size:12px}.lesson-mobile-table .lesson-table-cell{padding:4px}.lesson-mobile-table .lesson-table-cell.assigned-hour{padding:0}.lesson-mobile-table .lesson-slot-assignment{gap:4px;min-height:54px;padding:5px}.lesson-mobile-table .lesson-slot-assignment.snowboard-assignment{padding-left:21px}.lesson-mobile-table .lesson-slot-edit .lesson-autocomplete input,.lesson-mobile-table .lesson-add-form .lesson-autocomplete input,.lesson-mobile-table .lesson-closed-input{text-overflow:ellipsis;min-width:0;max-width:100%;min-height:30px;padding:5px 7px;font-size:12px;overflow:hidden}.lesson-mobile-table .lesson-slot-meta{white-space:normal;flex-wrap:wrap;gap:3px 5px}.lesson-mobile-table .lesson-slot-meta a,.lesson-mobile-table .lesson-slot-meta span{line-height:1.15}.lesson-mobile-table .collapsed-hour-cell{padding:8px 5px}.lesson-mobile-table .collapsed-hour-count{min-height:24px;padding:0 9px;font-size:12px}}@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}.school-topbar{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.school-brand{grid-area:1/2;max-width:min(150px,42vw)}.school-user{grid-area:1/3;justify-content:flex-end;justify-self:end;gap:8px}.school-user>div:not(.avatar){display:none}.school-user .avatar{flex:0 0 32px;width:32px;height:32px}.school-user .school-settings-link{display:none}.school-user .signout-button{width:34px;min-width:34px;height:34px;min-height:34px;padding:0}.school-nav-mobile{grid-area:1/1;justify-self:start;width:auto}.tenant-mobile-nav-trigger{justify-content:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:0}.tenant-mobile-nav-layer{z-index:10000;height:100dvh;position:fixed;inset:0}.tenant-mobile-nav-backdrop{background:#0000007a;border:0;position:fixed;inset:0}.tenant-mobile-nav-drawer{z-index:1;-webkit-overflow-scrolling:touch;width:min(360px,82vw);height:100dvh;min-height:100vh;padding:max(24px, env(safe-area-inset-top)) 14px max(28px, env(safe-area-inset-bottom));color:#f7f7f8;background:#19191e;flex-direction:column;gap:18px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:24px 0 70px -34px #000000bf}.tenant-mobile-nav-drawer-head{justify-content:space-between;align-items:center;gap:12px;padding:0 2px 8px;display:flex}.tenant-mobile-nav-drawer-brand{align-items:center;gap:12px;min-width:0;display:inline-flex}.tenant-mobile-nav-drawer-mark{color:#fff;border:1px solid #ffffff21;border-radius:8px;place-items:center;width:34px;height:34px;font-size:13px;font-weight:760;display:grid}.tenant-mobile-nav-drawer-brand strong{text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:720;overflow:hidden}.tenant-mobile-nav-close{color:#f7f7f8;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.tenant-mobile-nav-section{gap:4px;display:grid}.tenant-mobile-nav-section-title{color:#a7a7af;margin:10px 10px 6px;font-size:13px;font-weight:650;display:block}.tenant-mobile-nav-section a{color:#ededf0;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:12px;min-height:44px;padding:0 10px;font-size:17px;font-weight:560;display:grid}.tenant-mobile-nav-section a.active{color:#fff;background:#ffffff14}.tenant-mobile-nav-section a svg{color:currentColor;justify-self:center;width:22px;height:22px}.tenant-mobile-nav-section a span{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1;overflow:hidden}.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}.tenant-mobile-nav-panel{grid-template-columns:1fr}.tenant-mobile-nav-panel a{grid-template-columns:24px minmax(0,1fr);justify-content:stretch;align-items:center;gap:10px;padding:0 18px;display:grid}.tenant-mobile-nav-panel a svg{justify-self:center;width:21px;height:21px}.tenant-mobile-nav-panel a span{line-height:1}.planning-heading-actions{grid-template-columns:minmax(0,1fr) 40px 40px minmax(0,1fr);place-items:center;gap:10px;display:grid}.planning-heading-actions>.quick-group-trigger{grid-row:1;justify-self:center;width:40px;height:40px}.planning-heading-actions>.quick-group-trigger:first-child{grid-column:2}.planning-heading-actions>.quick-group-trigger:nth-child(2){grid-column:3}.planning-heading-actions>.lesson-date-controls{grid-area:2/1/auto/-1}.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-payment-state{justify-content:center;width:100%}.portal-payment-hint{text-align:center}.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 .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}.snowdesk-error-page{color:#17211d;background:radial-gradient(circle at 15% 10%,#f7fbfff2,#0000 32%),linear-gradient(135deg,#f9fbf8 0%,#eef5f3 44%,#dbe9ed 100%);grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);min-height:100dvh;display:grid;position:relative;overflow:hidden}.snowdesk-error-visual{z-index:0;position:absolute;inset:0;overflow:hidden}.snowdesk-error-art{filter:saturate(.96)contrast(1.03);background-image:linear-gradient(90deg,#f9fbf8f0 0%,#f9fbf8b3 30%,#f9fbf80a 62%),url(/brand/snowdesk-error-piste.png);background-position:50%;background-size:cover;position:absolute;inset:-2% -4% -4% 28%}.snowdesk-error-art:after{content:"";background:linear-gradient(#f9fbf829,#f9fbf8db),radial-gradient(circle at 78% 28%,#f17f363d,#0000 14%);position:absolute;inset:0}.snowdesk-error-content{z-index:1;flex-direction:column;justify-content:center;width:min(100%,640px);min-height:100dvh;padding:clamp(32px,6vw,88px);display:flex;position:relative}.snowdesk-error-brand{color:#22312b;align-items:center;gap:10px;width:fit-content;margin-bottom:clamp(28px,6vh,56px);font-size:15px;font-weight:760;display:inline-flex}.snowdesk-error-brand-mark{color:#f7fbff;background:#1f372d;border-radius:8px;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 12px 34px #1f372d2e}.snowdesk-error-code{letter-spacing:0;color:#1b2923;text-shadow:0 1px #ffffffbd;font-size:clamp(86px,15vw,184px);font-weight:840;line-height:.82}.snowdesk-error-eyebrow{color:#2b5868;background:#ffffff9e;border:1px solid #2b586829;border-radius:999px;width:fit-content;margin:clamp(24px,3vh,32px) 0 14px;padding:6px 11px;font-size:13px;font-weight:760}.snowdesk-error-content h1{color:#16211d;letter-spacing:0;max-width:610px;margin:0;font-size:clamp(34px,5.4vw,68px);font-weight:780;line-height:.98}.snowdesk-error-description{color:#4d5d57;max-width:540px;margin:20px 0 0;font-size:clamp(16px,1.8vw,19px);line-height:1.68}.snowdesk-error-digest{color:#5f6c67;overflow-wrap:anywhere;background:#ffffff8a;border:1px solid #1c2a251a;border-radius:8px;width:fit-content;max-width:100%;margin:20px 0 0;padding:8px 10px;font-size:12px;line-height:1.35}.snowdesk-error-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:30px;display:flex}.snowdesk-error-button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:14px;font-weight:720;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s;display:inline-flex}.snowdesk-error-button:hover{transform:translateY(-1px)}.snowdesk-error-button.primary,.snowdesk-error-button.secondary{color:#fff;background:#1f372d;box-shadow:0 14px 34px #1f372d33}.snowdesk-error-button.primary:hover,.snowdesk-error-button.secondary:hover{background:#162920}.snowdesk-error-button.ghost{color:#1f372d;background:#ffffff94;border-color:#1f372d29}.snowdesk-error-button.ghost:hover{background:#ffffffd1;border-color:#1f372d47}.snowdesk-error-patrol{gap:8px;margin-top:clamp(40px,8vh,76px);display:flex}.snowdesk-error-patrol span{background:#1f372d;border-radius:999px;width:42px;height:4px}.snowdesk-error-patrol span:nth-child(2){background:#f17f36;width:18px}.snowdesk-error-patrol span:nth-child(3){background:#89aeb7;width:72px}@media (max-width:920px){.snowdesk-error-page{grid-template-columns:1fr}.snowdesk-error-art{background-image:linear-gradient(#f9fbf8f5 0%,#f9fbf8c2 24%,#f9fbf81a 62%),url(/brand/snowdesk-error-piste.png);background-position:bottom;inset:38% -28% -6% -10%}.snowdesk-error-content{width:min(100%,680px);min-height:100dvh;padding:28px}.snowdesk-error-content h1{max-width:540px}}@media (max-width:540px){.snowdesk-error-content{padding:22px}.snowdesk-error-brand{margin-bottom:32px}.snowdesk-error-code{font-size:clamp(72px,28vw,112px)}.snowdesk-error-content h1{font-size:clamp(31px,11vw,44px);line-height:1.02}.snowdesk-error-description{font-size:15px;line-height:1.6}.snowdesk-error-actions{flex-direction:column;align-items:stretch}.snowdesk-error-button{width:100%}}:is(.admin-modal-backdrop,.planner-modal-backdrop,.customer-link-modal-backdrop,.customer-note-modal-backdrop,.portal-modal-backdrop,.portal-school-picker-backdrop,.portal-preview-modal-backdrop,.pin-basket-backdrop){z-index:30000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d12109e;width:100vw;min-height:100dvh;position:fixed!important;inset:0!important}@media (max-width:920px){:where(input:not([type=button]):not([type=submit]):not([type=reset]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea,[contenteditable=true]){font-size:16px!important}}.snowdesk-drawer-overlay{z-index:40000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0b10146b;position:fixed;inset:0}.snowdesk-drawer-content{z-index:40001;color:#17201d;background:#fff;border-left:1px solid #dfe5e8;outline:none;flex-direction:column;width:min(1180px,92vw);max-width:100vw;height:100dvh;display:flex;position:fixed;bottom:0;right:0;box-shadow:-28px 0 70px -46px #1118278c}.snowdesk-drawer-handle{display:none}.snowdesk-drawer-header{border-bottom:1px solid #e6ebef;padding:18px 20px 14px}.snowdesk-drawer-footer{border-top:1px solid #e6ebef;gap:8px;padding:14px 20px;display:flex}.snowdesk-drawer-title{color:#111827;margin:0;font-size:18px;font-weight:850;line-height:1.1}.snowdesk-drawer-description{color:#68746e;margin:4px 0 0;font-size:12px;font-weight:720}.personnel-planning-shell{gap:12px;min-width:0;display:grid}.personnel-hidden-form{display:none}.personnel-planning-top{grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:12px;display:grid}.personnel-view-tabs{background:#fff;border:1px solid #dfe5e8;border-radius:6px;align-items:center;min-height:40px;display:inline-flex;overflow:hidden}.personnel-view-tabs button{color:#4a5563;cursor:pointer;background:#fff;border:0;border-right:1px solid #edf1f4;min-width:74px;height:38px;padding:0 12px;font-size:12px;font-weight:760}.personnel-view-tabs button:last-child{border-right:0}.personnel-view-tabs button.active{color:#2453cf;background:#edf4ff}.personnel-week-nav{color:#17201d;align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:780;display:flex}.personnel-week-nav a{color:#415063;background:#fff;border:1px solid #dfe5e8;border-radius:6px;place-items:center;width:38px;height:38px;display:grid}.personnel-week-nav svg,.personnel-toolbar-actions svg,.personnel-search svg,.personnel-cell-editor-head svg,.personnel-drawer-title-row svg{flex:none;width:16px;height:16px}.personnel-week-nav span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.personnel-toolbar-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.personnel-toolbar-actions .secondary-button,.personnel-toolbar-actions .button{white-space:nowrap;border-radius:6px;gap:7px;min-height:38px;padding:0 12px}.personnel-toolbar-actions .secondary-button.active{color:#2550c7;background:#f3f7ff;border-color:#bdd2ff}.personnel-save-button{background:#285ed8}.personnel-view-menu{position:relative}.personnel-view-popover{z-index:30;background:#fff;border:1px solid #dfe5e8;border-radius:8px;gap:9px;width:210px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 44px -30px #11182766}.personnel-view-popover label{color:#2b3643;align-items:center;gap:8px;font-size:12px;font-weight:760;display:flex}.personnel-planning-notice{color:#225b33;background:#f1fbf4;border:1px solid #cfe5d7;border-radius:8px;align-items:center;gap:8px;padding:9px 11px;font-size:12px;font-weight:760;display:flex}.personnel-planning-notice.warning{color:#815412;background:#fff8e7;border-color:#efd6a9}.personnel-planning-notice svg{width:16px;height:16px}.availability-ribbon{background:#fff;border:1px solid #dfe6ee;border-radius:8px;grid-template-columns:190px minmax(0,1fr) auto;align-items:stretch;gap:10px;padding:12px;display:grid;overflow:hidden}.availability-ribbon.collapsed{opacity:.62}.availability-ribbon-title{color:#17201d;align-content:center;gap:2px;font-size:12px;display:grid}.availability-ribbon-title strong{font-weight:850}.availability-ribbon-title span{color:#5f6d78;font-weight:700}.availability-ribbon-days{grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px;min-width:0;display:grid}.availability-day{border-left:1px dashed #cdd7e2;gap:6px;min-width:0;padding-left:8px;display:grid}.availability-day>span{color:#17201d;text-transform:capitalize;font-size:12px;font-weight:820}.availability-day>div{flex-wrap:wrap;gap:4px;min-height:24px;display:flex}.availability-day em{color:#97a1aa;font-size:11px;font-style:normal;font-weight:700}.availability-chip,.staff-abbreviation,.personnel-legend-staff span,.personnel-slot-availability i,.slot-availability-tooltip button{border:1px solid color-mix(in srgb, var(--staff-color,#8fd77e) 42%, #fff);background:color-mix(in srgb, var(--staff-color,#8fd77e) 33%, #fff);color:#17201d;border-radius:5px;place-items:center;min-width:28px;height:24px;font-size:10px;font-style:normal;font-weight:880;line-height:1;display:inline-grid}.availability-chip{cursor:pointer;opacity:.78}.availability-chip:hover{opacity:1;transform:translateY(-1px)}.availability-legend-link{color:#2453cf;cursor:pointer;background:0 0;border:0;align-self:start;font-size:12px;font-weight:780}.personnel-planning-layout{grid-template-columns:230px minmax(0,1fr) 250px;align-items:start;gap:12px;min-width:0;display:grid}.personnel-side-panel,.personnel-table-panel{background:#fff;border:1px solid #dfe5e8;border-radius:8px;box-shadow:0 18px 46px -42px #1118276b}.personnel-side-panel{gap:10px;padding:12px;display:grid}.personnel-panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.personnel-panel-head h2{color:#111827;margin:0;font-size:13px;font-weight:860}.personnel-panel-head.compact h2{font-size:12px}.personnel-search{color:#8a95a1;background:#fbfcfd;border:1px solid #dde5ec;border-radius:6px;align-items:center;gap:7px;min-height:36px;padding:0 9px;display:flex}.personnel-search input{color:#17201d;background:0 0;border:0;outline:none;width:100%;min-width:0;font-size:12px}.personnel-staff-list{gap:5px;max-height:626px;padding-right:2px;display:grid;overflow:auto}.personnel-staff-row{color:#17201d;cursor:grab;text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:32px;padding:3px 5px;display:grid}.personnel-staff-row:hover,.personnel-staff-row:focus-visible{background:#f6f9fb;outline:none}.personnel-staff-row:active{cursor:grabbing}.staff-main{gap:1px;min-width:0;display:grid}.staff-main strong,.staff-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.staff-main strong{color:#26323d;font-size:11px;font-weight:790}.staff-main small{color:#7a8792;font-size:10px;font-weight:690}.staff-hours{color:#24743c;text-align:center;background:#f2fbf3;border:1px solid #bde4c6;border-radius:5px;min-width:34px;padding:1px 5px;font-size:10px;font-weight:820}.staff-hours.over{color:#a45b12;background:#fff6e9;border-color:#ffd0a6}.personnel-staff-row>svg{color:#31a756;width:13px;height:13px}.personnel-add-link{color:#2453cf;border:1px solid #d8e4f6;border-radius:6px;justify-content:center;align-items:center;min-height:34px;margin-top:auto;font-size:12px;font-weight:820;display:flex}.personnel-table-panel{min-width:0;display:grid;overflow:hidden}.personnel-grid-shell{min-width:0;overflow-x:auto}.personnel-week-table{table-layout:fixed;border-spacing:0;background:#fff;width:100%;min-width:920px}.personnel-week-table th,.personnel-week-table td{border-bottom:1px solid #e9eef3;border-right:1px solid #e5eaf0}.personnel-week-table th:last-child,.personnel-week-table td:last-child{border-right:0}.personnel-week-table thead th{color:#111827;text-align:center;background:#f8fafc;height:34px;padding:6px 5px;font-size:11px;font-weight:840}.personnel-week-table thead tr:first-child th{text-transform:capitalize;height:38px;font-size:12px}.personnel-week-table thead th:first-child,.personnel-week-table tbody th{z-index:4;background:#fbfcfd;width:58px;position:sticky;left:0}.personnel-week-table tbody th{color:#22313f;font-variant-numeric:tabular-nums;text-align:right;height:40px;padding:0 7px;font-size:12px;font-weight:830}.personnel-week-table .lane-bar-head{color:#394150;background:#fbfbfc}.personnel-planning-cell{vertical-align:middle;background:#fffefe;height:40px;padding:2px;position:relative}.personnel-planning-cell.bar-cell{background:#fbfcfe}.personnel-empty-slot,.personnel-assignment-block{border-radius:5px;width:100%;height:34px;min-height:34px;padding:0 1px;font-size:11px;line-height:1}.personnel-empty-slot{color:#8a95a1;cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;display:grid;position:relative}.personnel-empty-slot:hover{background:#f7fbff;border-color:#d6e2ee}.personnel-empty-slot em,.personnel-assignment-block em{color:#435263;text-overflow:ellipsis;white-space:nowrap;background:#ffffffad;border:1px solid #364a5b21;border-radius:4px;justify-content:center;align-items:center;width:100%;max-width:100%;min-height:17px;padding:0 1px;font-size:4.7px;font-style:normal;font-weight:820;display:inline-flex;overflow:hidden}.personnel-slot-availability{opacity:0;pointer-events:none;justify-content:center;align-items:center;gap:2px;transition:opacity .12s;display:flex;position:absolute;inset:2px}.personnel-empty-slot:hover .personnel-slot-availability,.personnel-planning-cell.focused-available .personnel-slot-availability{opacity:1}.personnel-slot-availability i{opacity:.68;min-width:20px;height:18px;font-size:8px}.focused-available-mark{color:#24743c;background:#e7faecb8;border:1px dashed #9fd3b0;border-radius:4px;padding:3px 5px;font-size:9px;font-weight:820;display:inline-flex}.personnel-assignment-block{border:1px solid color-mix(in srgb, var(--staff-color,#8fd77e) 52%, #fff);background:color-mix(in srgb, var(--staff-color,#8fd77e) 48%, #fff);color:#111827;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:1px;font-weight:890;display:flex;position:relative}.personnel-assignment-block:hover{filter:saturate(1.04);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--staff-color,#8fd77e) 50%, transparent)}.personnel-assignment-block strong{font-size:11px;font-weight:900}.personnel-assignment-block span{color:#344052;font-size:9px;font-weight:760}.personnel-assignment-block svg{color:#a45b12;width:11px;height:11px;position:absolute;top:3px;right:3px}.personnel-planning-cell.break-warn .personnel-assignment-block{box-shadow:inset 0 0 0 2px #eda6376b}.personnel-planning-cell.break-block .personnel-assignment-block,.personnel-planning-cell.capability-issue .personnel-assignment-block{box-shadow:inset 0 0 0 2px #e5515194}.personnel-planning-cell.drop-ok{outline-offset:-2px;background:#f1fbf4;outline:2px solid #38b660}.personnel-planning-cell.drop-warn{outline-offset:-2px;background:#fff8e8;outline:2px solid #efad3e}.personnel-planning-cell.drop-block{outline-offset:-2px;background:#fff2f2;outline:2px solid #e45858}.slot-availability-tooltip,.drop-feedback-badge,.personnel-cell-editor{z-index:20;background:#fff;border:1px solid #dfe5e8;border-radius:8px;width:max-content;max-width:260px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 18px 44px -30px #11182780}.slot-availability-tooltip{gap:7px;padding:9px;display:none}.personnel-planning-cell:hover .slot-availability-tooltip{display:grid}.slot-availability-tooltip strong{color:#17201d;font-size:11px;font-weight:850}.slot-availability-tooltip div{flex-wrap:wrap;gap:4px;display:flex}.slot-availability-tooltip button{cursor:pointer}.slot-availability-tooltip span{color:#68746e;font-size:11px;font-weight:720}.drop-feedback-badge{color:#17201d;pointer-events:none;align-items:center;gap:6px;padding:7px 9px;font-size:11px;font-weight:820;display:flex}.drop-feedback-badge svg{width:14px;height:14px}.personnel-cell-editor{gap:8px;width:238px;padding:10px;display:grid}.personnel-cell-editor-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.personnel-cell-editor-head strong{color:#111827;font-size:12px;font-weight:850}.personnel-cell-editor-head button{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #dfe5e8;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}.personnel-cell-editor form{gap:7px;display:grid}.personnel-cell-editor select{color:#17201d;background:#fff;border:1px solid #d9e1e8;border-radius:6px;width:100%;min-height:34px;padding:0 8px;font-size:12px}.personnel-cell-editor .button,.personnel-cell-editor .secondary-button{border-radius:6px;min-height:32px;font-size:12px}.personnel-force-row{color:#815412;align-items:center;gap:7px;font-size:11px;font-weight:760;display:flex}.personnel-cell-editor p{color:#815412;margin:0;font-size:11px;font-weight:700;line-height:1.35}.coverage-bars{gap:13px;display:grid}.coverage-bar-row{gap:5px;display:grid}.coverage-bar-row>div{color:#17201d;justify-content:space-between;gap:8px;font-size:12px;font-weight:820;display:flex}.coverage-bar-row span,.coverage-bar-row small{color:#5f6d78;font-size:11px;font-weight:730}.coverage-bar-row progress{background:#e9eef3;border:0;border-radius:999px;width:100%;height:8px;overflow:hidden}.coverage-bar-row progress::-webkit-progress-bar{background:#e9eef3}.coverage-bar-row progress::-webkit-progress-value{background:linear-gradient(90deg,#20b455,#1aa7de);border-radius:999px}.coverage-day-table{border-spacing:0;width:100%;font-size:11px}.coverage-day-table th,.coverage-day-table td{color:#445261;text-align:center;border-bottom:1px solid #edf1f4;height:27px}.coverage-day-table th:first-child{text-align:left}.coverage-day-table thead th{color:#6b7785;font-weight:760}.coverage-day-table tbody th{color:#17201d;text-transform:capitalize;font-weight:850}.coverage-ok,.coverage-warn{width:14px;height:14px}.coverage-ok{color:#24a84f}.coverage-warn{color:#f0a12f}.personnel-quick-add{border-top:1px solid #edf1f4;gap:8px;padding-top:12px;display:grid}.personnel-quick-add p{color:#68746e;margin:0;font-size:11px;font-weight:720}.personnel-quick-add div{flex-wrap:wrap;gap:7px;display:flex}.personnel-quick-add span{color:#24743c;text-align:center;background:#f4fbf5;border:1px solid #cfe4d3;border-radius:6px;min-width:64px;padding:5px 8px;font-size:11px;font-weight:820}.personnel-legend{background:#fff;border-top:1px solid #e5eaf0;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:14px;padding:14px;display:grid}.personnel-legend h3{color:#17201d;margin:0 0 9px;font-size:12px;font-weight:860}.personnel-legend h3 span{color:#4f5f6d;font-weight:680}.personnel-legend-staff{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:7px 10px;display:grid}.personnel-legend-staff button{color:#344052;text-align:left;background:0 0;border:0;align-items:center;gap:7px;min-width:0;font-size:11px;font-weight:720;display:flex}.personnel-legend-items{flex-wrap:wrap;gap:9px 12px;display:flex}.personnel-legend-items span{color:#344052;align-items:center;gap:6px;min-height:22px;font-size:11px;font-weight:740;display:inline-flex;position:relative}.personnel-legend-items span:before{content:"";background:#fff;border:1px solid #d7e1e8;border-radius:4px;width:18px;height:18px;display:inline-block}.personnel-legend-items .baan:before{background:#dff4d7}.personnel-legend-items .bar:before{background:#f7f8fb}.personnel-legend-items .available:before{background:#eef9f0}.personnel-legend-items .warn:before{background:#fff4d9}.personnel-legend-items .blocked:before{background:#ffe5e5}.personnel-member-drawer{width:min(1240px,94vw)}.personnel-drawer-header{padding:16px 18px}.personnel-drawer-title-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.personnel-drawer-title-row .staff-abbreviation{min-width:42px;height:34px;font-size:13px}.personnel-drawer-title-row button{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #dfe5e8;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.personnel-drawer-body{gap:12px;min-height:0;padding:14px 18px 18px;display:grid;overflow:auto}.personnel-drawer-availability{grid-template-columns:repeat(7,minmax(100px,1fr));gap:8px;display:grid}.personnel-drawer-availability div{background:#fbfcfd;border:1px solid #e2e9ef;border-radius:7px;gap:3px;min-height:52px;padding:8px;display:grid}.personnel-drawer-availability strong{color:#111827;text-transform:capitalize;font-size:12px;font-weight:850}.personnel-drawer-availability span{color:#5f6d78;font-size:11px;font-weight:720}.personnel-grid-shell.focused .personnel-week-table{min-width:1050px}@media (min-width:1505px){.personnel-planning-shell{width:calc(100vw - 64px);max-width:calc(100vw - 64px);margin-left:calc(50% - 50vw + 32px)}}.personnel-grid-shell.focused .personnel-empty-slot{cursor:default}@media (max-width:1320px){.personnel-planning-layout{grid-template-columns:230px minmax(720px,1fr)}.personnel-coverage-panel{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.personnel-planning-top,.availability-ribbon,.personnel-planning-layout,.personnel-legend,.personnel-drawer-availability{grid-template-columns:1fr}.personnel-toolbar-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid;overflow-x:visible}.personnel-toolbar-actions .secondary-button,.personnel-toolbar-actions .button,.personnel-view-menu,.personnel-view-menu>.secondary-button{width:100%}.personnel-toolbar-actions .secondary-button,.personnel-toolbar-actions .button{justify-content:center;padding:0 8px;font-size:12px}.personnel-view-popover{left:0;right:auto}.availability-ribbon-days{grid-template-columns:repeat(2,minmax(140px,1fr))}.personnel-coverage-panel{grid-template-columns:1fr}.snowdesk-drawer-content{width:100vw}}
