:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;color:#1f2933;background:#f7f4fa;--text: #1f2933;--ink: #1f2933;--muted: #6b7680;--line: #e7ddec;--panel: #ffffff;--panel-soft: #fbf8fd;--brand: #8f5fb6;--brand-dark: #5d2e68;--accent: #f2b84b;--coral: #d65a4a;--blue: #4f87b7;--success: #287a4d;--danger: #b74343;--warning: #b87918;--shadow: 0 18px 45px rgba(89, 51, 103, .12)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 85% 0%,rgba(143,95,182,.1),transparent 28%),linear-gradient(180deg,#faf7fb,#f4eff7)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;gap:24px;min-height:100vh;padding:22px;background:radial-gradient(circle at 20% 0%,rgba(181,129,212,.44),transparent 36%),var(--brand-dark);color:#fff}.brand,.sidebar-footer,.user-pill{display:flex;align-items:center;gap:12px}.brand strong,.user-pill strong{display:block;line-height:1.2}.brand span,.user-pill span{display:block;margin-top:4px;color:#ffffffad;font-size:.82rem}.brand-mark,.avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:50%;background:linear-gradient(135deg,var(--accent),#f6d47a);color:var(--brand-dark);font-weight:800}.brand-mark{overflow:hidden}.brand-mark.has-logo{padding:0;border:0;background:transparent}.sidebar .brand-mark.has-logo{border-color:#ffffff38;box-shadow:0 8px 24px #00000029}.brand-fallback{display:grid;place-items:center}.brand-logo{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}.brand-mark.large{width:64px;height:64px;border-radius:50%}.nav{display:grid;gap:10px}.nav-group{display:grid;gap:6px}.nav-group-label{display:block;padding:0 12px;color:#ffffff6b;font-size:.68rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.nav-item,.icon-button,.button{border:0;border-radius:8px;transition:background .18s ease,color .18s ease,transform .18s ease,border-color .18s ease}.nav-item{position:relative;display:flex;align-items:center;gap:11px;min-height:42px;padding:0 12px;background:transparent;color:#ffffffb8;text-align:left}.nav-item:hover,.nav-item.active{background:#ffffff1c;color:#fff}.department-nav{gap:10px}.department-item{min-height:72px;align-items:flex-start;padding:13px 12px}.department-item svg{flex:0 0 auto;margin-top:2px}.department-nav-copy{display:grid;gap:3px;min-width:0}.department-nav-copy strong,.department-nav-copy small{display:block;overflow-wrap:anywhere}.department-nav-copy small{color:#ffffff85;font-size:.76rem;line-height:1.25}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:auto;padding:0 7px;border-radius:999px;background:#f97316;color:#fff;font-size:12px;font-weight:800;line-height:1;box-shadow:0 0 0 2px #2c1f45eb}.sidebar-footer{margin-top:auto;justify-content:space-between}.sidebar-footer .avatar{width:38px;height:38px;background:#ffffff21;color:#fff}.icon-button{display:grid;place-items:center;width:38px;height:38px;background:#ffffff1a;color:#fff}.main{min-width:0;padding:28px}.department-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:-8px 0 18px;padding:6px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 22px #5933670d}.department-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:900}.department-tabs button:hover,.department-tabs button.active{background:#f3eaf7;color:var(--brand-dark)}.topbar,.section-head,.profile-header,.lesson-row,.attention-item,.attendance-row,.notification,.task-row,.mini-child-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar{margin-bottom:24px}.eyebrow{margin:0 0 6px;color:var(--brand);font-size:.78rem;font-weight:800;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(1.55rem,2vw,2.35rem);line-height:1.05}h2{margin-bottom:6px;font-size:1.35rem;line-height:1.18}h3{margin-bottom:8px;font-size:1rem}.topbar-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px;min-width:0}.status{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:8px;font-size:.86rem;font-weight:800}.status.mock{background:#fff2df;color:#85520d}.status.live{background:#def6e8;color:#17603a}.status.loading-status{background:#eef1f4;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:38px;padding:0 14px;font-weight:800;text-align:center;white-space:normal}.button.primary{background:var(--brand);color:#fff}.button.primary:hover{background:var(--brand-dark)}.button.ghost{background:#f0e9f5;color:var(--brand-dark)}.danger-text{color:var(--danger)!important}.danger-zone{border-left:5px solid var(--danger)}.stack{display:grid;gap:18px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.dashboard-focus{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.28fr);gap:18px;align-items:stretch}.focus-card,.focus-actions{border-radius:8px;box-shadow:var(--shadow)}.focus-card{min-height:178px;padding:24px;background:linear-gradient(115deg,#5d2e68f5,#8f5fb6e6 48%,#4f87b7d6),var(--brand-dark);color:#fff}.focus-card h2{max-width:720px;margin-bottom:10px;font-size:clamp(1.7rem,3vw,2.75rem)}.focus-card p{max-width:720px;color:#ffffffc7}.focus-card .eyebrow{color:#ffffffb8}.focus-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.focus-meta span{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 11px;border-radius:999px;background:#ffffff21;color:#fff;font-size:.88rem;font-weight:800}.focus-actions{display:grid;align-content:center;gap:10px;padding:18px;border:1px solid var(--line);background:#fff}.focus-actions .button{width:100%}.birthday-panel{overflow:hidden;background:linear-gradient(135deg,#fff6e2eb,#fffffffa 38%,#f7f1fbeb),#fff}.birthday-panel>.section-head:first-child{background:linear-gradient(90deg,#f2b84b38,#8f5fb614),#fff}.birthday-window{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border-radius:999px;background:#fff2df;color:#85520d;font-weight:900}.birthday-panel .notice{margin-bottom:12px}.birthday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px}.birthday-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;min-height:152px;padding:14px;border:1px solid rgba(242,184,75,.38);border-radius:8px;background:#ffffffd1;box-shadow:0 8px 20px #8b5c2e14}.birthday-date{display:grid;place-items:center;width:82px;min-height:82px;padding:10px;border-radius:8px;background:#fff2df;color:#85520d;text-align:center}.birthday-date strong{font-size:1.02rem;line-height:1.08}.birthday-date span,.birthday-info span,.birthday-info p{color:var(--muted);font-size:.88rem}.birthday-info{min-width:0}.birthday-info h3{margin-bottom:4px}.birthday-info p{margin-bottom:6px}.birthday-info span{display:block;overflow-wrap:anywhere}.birthday-action{grid-column:1 / -1;background:#fff2df;color:#85520d}.birthday-action:hover{background:#ffe5bd}.birthday-action:disabled{cursor:not-allowed;opacity:.62}.data-quality-panel{background:linear-gradient(180deg,#fff,#fbf8fd)}.launch-readiness-panel{border-left:5px solid var(--blue);background:linear-gradient(180deg,#fff,#f6fbfc)}.launch-readiness-panel .muted-text{max-width:980px;margin-bottom:14px}.launch-readiness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.launch-readiness-item{display:grid;gap:8px;min-height:148px;padding:13px;border:1px solid var(--line);border-left:5px solid var(--success);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.launch-readiness-item.warning{border-left-color:var(--warning)}.launch-readiness-item.danger{border-left-color:var(--danger)}.launch-readiness-item span,.launch-readiness-item p{color:var(--muted)}.launch-readiness-item span{font-size:.82rem;font-weight:900;text-transform:uppercase}.launch-readiness-item strong{font-size:1.2rem}.launch-readiness-item p{margin:0;line-height:1.42}.launch-readiness-item em{align-self:end;color:var(--brand-dark);font-style:normal;font-weight:900}.data-quality-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.data-quality-item{display:grid;gap:10px;min-height:164px;padding:14px;border:1px solid var(--line);border-left:5px solid var(--warning);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.data-quality-item:hover{background:#fcf8fd}.data-quality-item div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.data-quality-item strong{font-size:1.7rem;line-height:1}.data-quality-item span{color:var(--muted);font-weight:900;text-align:right}.data-quality-item p{margin:0;color:var(--muted);line-height:1.45}.data-quality-item em{align-self:end;color:var(--brand-dark);font-style:normal;font-weight:900}.data-quality-item.danger{border-left-color:var(--danger)}.data-quality-item.ok{border-left-color:var(--success)}.kpi,.panel,.wide-band,.login-panel,.lesson-card{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 10px 30px #59336717}.kpi{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;min-height:104px;padding:18px}.kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--brand)}.kpi:nth-child(2):before{background:var(--blue)}.kpi:nth-child(3):before{background:var(--accent)}.kpi:nth-child(4):before{background:var(--success)}.kpi.danger:before{background:var(--danger)}.kpi-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:8px;background:#f3ebf8}.kpi svg{color:var(--brand)}.kpi span,.info-block span,.attention-item span,.attendance-row span,.lesson-row span,.mini-list span{color:var(--muted);font-size:.88rem}.lesson-row strong,.lesson-row span,.attention-item strong,.attention-item span,.task-row strong,.task-row span{display:block}.kpi strong{display:block;margin-top:6px;font-size:1.45rem}.kpi.danger strong{color:var(--danger)}.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:18px;align-items:start}.panel{padding:18px}.panel>.section-head:first-child{margin:-18px -18px 16px;padding:16px 18px;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;background:linear-gradient(90deg,#8f5fb614,#4f87b70a),#fff}.panel.compact{box-shadow:none}.wide-band{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;min-width:0;padding:22px;background:linear-gradient(90deg,#8f5fb6f0,#4f87b7e0),var(--brand);color:#fff}.wide-band .eyebrow,.wide-band p{color:#ffffffc7}.wide-band>div{min-width:0}.lesson-list,.attention-list,.entity-list,.attendance-list,.notification-list,.mini-list,.task-list,.homework-list,.document-list{display:grid;gap:10px}.lesson-row,.attention-item,.attendance-row,.notification,.task-row,.homework-row,.document-row{min-height:58px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 4px 14px #5933670a}.attention-item{justify-content:flex-start}.attention-item svg{color:var(--warning)}.attention-item.danger svg{color:var(--danger)}.empty-state,.loading{padding:24px;color:var(--muted);text-align:center}.cash-lock-screen{display:grid;gap:18px;justify-items:start;max-width:860px;margin:46px auto 0;padding:28px}.cash-lock-screen h2{margin:0 0 10px}.cash-lock-screen p:not(.eyebrow){max-width:680px;color:var(--muted);line-height:1.55}.cash-lock-icon{display:grid;width:64px;height:64px;place-items:center;border-radius:8px;background:#fff2df;color:#85520d}.department-placeholder{display:grid;gap:22px;padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 28px #59336712}.department-placeholder h2{margin:0 0 8px}.department-placeholder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.department-placeholder-item{display:flex;align-items:center;gap:10px;min-height:58px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fbf8fd;color:var(--brand-dark);font-weight:900}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px}.list-pane,.detail-pane{min-width:0}.list-meta{margin:-4px 0 12px;color:var(--muted);font-size:.82rem;line-height:1.35}.filter-row{margin-bottom:12px}.search{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:0 12px;min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff}.search input,.search input:focus{width:100%;border:0;outline:0}.searchable-select-field{display:grid;gap:7px;min-width:0}.searchable-select-field .field-label{color:var(--muted);font-size:13px;font-weight:700}.searchable-select-field small{color:var(--muted);font-size:12px}.compact-search{min-height:40px;margin-bottom:0}.entity{display:flex;align-items:center;gap:12px;width:100%;min-height:66px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 4px 14px #5933670a}.entity>div:last-child{min-width:0}.entity strong,.entity span{display:block;overflow-wrap:anywhere}.entity.active{border-color:var(--brand);background:linear-gradient(90deg,#f6effa,#eef7f3);box-shadow:0 10px 24px #5933671a}.entity .avatar{width:40px;height:40px;background:#dbece7;color:var(--brand-dark)}.segmented{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#fff}.segmented button{flex:1 1 auto;min-height:34px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:.86rem;font-weight:900}.segmented button.active{background:#eef5f8;color:#245b7d}.inbox-workspace{grid-template-columns:minmax(290px,.34fr) minmax(0,1fr);align-items:start}.inbox-workspace .list-pane{position:sticky;top:24px;padding:14px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fffffff5,#f6fafcf5),#fff;box-shadow:0 10px 24px #22435814}.inbox-filters button{flex-basis:calc(33.333% - 6px)}.inbox-entity{position:relative;min-height:82px;border-left:5px solid transparent}.inbox-entity.active{border-left-color:var(--blue);background:#f4fafc}.inbox-entity .avatar{background:#e7f2f6;color:#245b7d}.inbox-entity strong{margin-bottom:3px}.inbox-entity small{display:block;margin-top:5px;color:var(--muted);font-size:.78rem;font-weight:800}.inbox-entity-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.mini-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:7px;background:#eef5f8;color:#245b7d;font-size:.7rem;font-weight:900}.mini-badge.attention{background:#fff2df;color:#85520d}.mini-badge.success{background:#def6e8;color:#17603a}.inbox-detail{gap:14px}.inbox-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.32fr);gap:14px;align-items:start}.inbox-thread{display:grid;gap:14px;min-height:560px;padding:0;overflow:hidden;background:linear-gradient(180deg,#f6fbfc,#fff 52%),#fff}.inbox-messages{display:grid;align-content:start;gap:12px;min-height:390px;max-height:58vh;padding:18px;overflow:auto}.chat-message{justify-self:start;width:min(82%,620px);padding:12px 14px;border:1px solid #dbeaf0;border-radius:8px;background:#fff;box-shadow:0 6px 14px #2243580f}.chat-message.outbound{justify-self:end;border-color:#ecd7bd;background:#fff8ed}.chat-message.system{justify-self:center;width:min(88%,560px);border-color:#4f87b73d;background:#f5f8fa;box-shadow:none}.chat-message>div:first-child{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.chat-message strong{color:var(--ink)}.chat-message span{color:var(--muted);font-size:.78rem;font-weight:800;text-align:right}.chat-message p{margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.48}.message-error{margin-top:10px;padding:9px 10px;border:1px solid #f2c4c4;border-radius:8px;background:#fff2f2;color:var(--danger);font-size:.84rem;font-weight:800;overflow-wrap:anywhere}.attachment-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.attachment-list a{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:8px;background:#eef5f8;color:#245b7d;font-size:.84rem;font-weight:900;text-decoration:none}.inbox-reply{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;padding:14px;border-top:1px solid var(--line);background:#fff}.inbox-reply textarea{min-height:78px}.inbox-side{display:grid;gap:12px;border-left:5px solid var(--accent)}.stack-actions{display:grid;gap:8px}.stack-actions .button{width:100%}.selected-parent-link{padding:9px 10px;border:1px solid rgba(79,135,183,.32);border-radius:8px;background:#eef6fb;color:#24425c;font-size:13px}.parent-link-results{display:grid;gap:6px;max-height:310px;overflow:auto}.parent-link-result{display:grid;gap:3px;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);text-align:left;cursor:pointer}.parent-link-result:hover,.parent-link-result.active{border-color:#6d4fb76b;background:#f6f2ff}.parent-link-result span{color:var(--muted);font-size:12px;line-height:1.35}.vk-status-panel{border-left:5px solid #4f87b7}.vk-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.detail-pane{display:grid;gap:16px}.profile-header{padding:20px;border-radius:8px;background:#fff;border:1px solid var(--line)}.profile-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.balance{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:8px;font-weight:900}.balance.success,.success{color:var(--success)}.balance.danger,.danger{color:var(--danger)}.muted{color:var(--muted)}.warning{color:var(--warning)}.lead-status,.lead-badge{display:inline-flex;align-items:center;max-width:100%;min-height:32px;padding:0 10px;border-radius:8px;background:#f2eaf7;color:var(--brand-dark);font-size:.82rem;font-weight:900;line-height:1.2;overflow-wrap:anywhere;text-align:left}.lead-status.new{background:#fff2df;color:#85520d}.lead-status.contact,.lead-status.trial_booked,.lead-status.trial_done,.lead-status.payment_waiting{background:#eaf3fb;color:#245981}.lead-status.won{background:#def6e8;color:#17603a}.lead-status.lost,.lead-status.archived{background:#eef1f4;color:var(--muted)}.lead-meta{display:flex;flex-wrap:wrap;gap:8px}.lead-badge.success{background:#def6e8;color:#17603a}.lead-badge.warning-badge{background:#fff2df;color:#85520d}.admin-tasks-workspace{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.admin-tasks-main,.admin-tasks-side,.admin-task-sections,.admin-task-list,.admin-recurring-list{display:grid;gap:12px;min-width:0}.task-workday-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-task-section{display:grid;gap:8px}.admin-task-section .section-head{padding:0 2px}.admin-task-card,.recurring-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 18px #5933670f}.admin-task-card.overdue{border-left:5px solid var(--danger)}.admin-task-card.today{border-left:5px solid var(--accent)}.admin-task-card.tomorrow,.admin-task-card.later{border-left:5px solid var(--blue)}.admin-task-card.done,.admin-task-card.cancelled,.recurring-card.paused{opacity:.72}.admin-task-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.admin-task-main strong,.admin-task-main span,.recurring-card strong,.recurring-card span{display:block}.admin-task-main span,.recurring-card span{margin-top:3px;color:var(--muted);font-size:.86rem}.admin-task-due{min-width:118px;text-align:right}.admin-task-due b{display:block;color:var(--ink)}.admin-task-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.recurring-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.sales-pipeline{display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:start;gap:18px}.pipeline-main,.pipeline-detail{min-width:0}.pipeline-detail{display:grid;gap:14px;scroll-margin-top:90px}.pipeline-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 22px #5933670f}.pipeline-toolbar h2{margin:0 0 6px}.pipeline-toolbar p{max-width:680px;margin:0}.pipeline-toolbar-actions{display:grid;justify-items:end;gap:10px;min-width:min(360px,100%)}.pipeline-toolbar-actions .search{width:100%;margin:0}.pipeline-board{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:12px;min-height:520px;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:4px}.pipeline-column{display:flex;flex-direction:column;min-width:210px;min-height:520px;border:1px solid var(--line);border-radius:8px;background:#fdfbfe}.pipeline-column.drop-ready{outline:2px dashed rgba(143,95,182,.24);outline-offset:-6px}.pipeline-column-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:112px;padding:14px;border-bottom:1px solid var(--line);background:#fff;border-radius:8px 8px 0 0}.pipeline-column-head h3{margin:0 0 6px;font-size:.98rem}.pipeline-column-head p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.35}.pipeline-column-head>span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:8px;background:#f2eaf7;color:var(--brand-dark);font-weight:900}.pipeline-cards{display:grid;align-content:start;gap:10px;padding:10px}.pipeline-card{display:grid;gap:8px;width:100%;min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 5px 16px #5933670d}.pipeline-card:hover,.pipeline-card.active{border-color:var(--brand);box-shadow:0 12px 26px #5933671c}.pipeline-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.pipeline-card strong,.pipeline-card span,.pipeline-card small{overflow-wrap:anywhere}.pipeline-card>span,.pipeline-card small{color:var(--muted);font-size:.82rem}.pipeline-empty{min-height:74px;padding:18px 10px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);text-align:center}.closed-deals-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;color:var(--muted)}.closed-deals-strip button{min-height:32px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}.compact-button{min-height:32px;padding:0 10px}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.info-block{min-height:98px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.info-block strong{display:block;margin-top:8px;white-space:pre-line}.inline-form{display:flex;align-items:center;gap:8px}.form-panel{display:grid;gap:14px;border-left:5px solid var(--brand);background:linear-gradient(180deg,#fff,#fcf8fd)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.schedule-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.weekday-picker{display:grid;grid-template-columns:repeat(7,minmax(38px,1fr));gap:6px}.weekday-button{min-height:38px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-weight:900}.weekday-button.active{border-color:var(--brand);background:#f2eaf7;color:var(--brand-dark)}label{display:grid;gap:6px;color:var(--muted);font-weight:700}input,select,textarea{width:100%;min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}textarea{padding:11px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid rgba(143,95,182,.2);border-color:var(--brand)}.table{display:grid;gap:6px}.table-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:12px;align-items:center;min-height:44px;padding:9px 10px;border-radius:8px;border:1px solid transparent;background:#fbf8fd}.table-row>*{min-width:0;overflow-wrap:anywhere}.table-row:nth-child(2n){background:#fff}.table-row:hover{border-color:#dccbe6;background:#f7f0fa}.table-row:has(:nth-child(2):last-child){grid-template-columns:1fr auto}.group-status-filter{flex-wrap:wrap}.group-schedule-editor{display:grid;gap:12px;padding-top:16px;border-top:1px solid var(--line)}.group-schedule-list{display:grid;gap:8px}.group-schedule-row{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(105px,.7fr) minmax(105px,.7fr) minmax(180px,1.4fr) 40px;gap:10px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fbf8fd}.compact-empty{min-height:auto;padding:14px}.schedule-grid{display:grid;gap:14px}.schedule-calendar-page{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}.schedule-calendar-main{display:grid;gap:12px;min-width:0}.calendar-toolbar,.calendar-toolbar-actions,.calendar-filters,.calendar-days-head,.calendar-body{min-width:0}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.calendar-toolbar h2{margin-bottom:4px}.calendar-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.calendar-period{min-width:190px}.calendar-navigation,.calendar-zoom{display:flex;align-items:center;gap:6px}.calendar-date-picker{width:142px;min-height:40px}.calendar-view-switcher{flex-wrap:nowrap}.calendar-filter-tools{padding:0;overflow:hidden}.calendar-filter-tools summary{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:10px 14px;cursor:pointer;list-style:none}.calendar-filter-tools summary::-webkit-details-marker{display:none}.calendar-filter-tools summary span{display:inline-flex;align-items:center;gap:8px;font-weight:900}.calendar-filter-tools summary b{display:grid;min-width:24px;height:24px;place-items:center;border-radius:50%;background:var(--brand);color:#fff;font-size:.76rem}.calendar-filter-tools[open] .calendar-filters{padding:0 14px 14px}.calendar-filters{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px}.schedule-tools{padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}.schedule-tools summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:12px 16px;cursor:pointer;list-style:none}.schedule-tools summary::-webkit-details-marker{display:none}.schedule-tools summary small{display:block;margin-top:2px;color:var(--muted);font-weight:700}.schedule-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 16px 16px}.schedule-one-off-wrap{padding:0 16px 16px}.schedule-tool-form{padding:14px;border:1px solid rgba(143,95,182,.18);border-left:5px solid var(--brand);border-radius:8px}.calendar-surface{padding:0;overflow:auto}.calendar-grid-shell{min-width:0}.calendar-days-head{display:grid;position:sticky;top:0;z-index:6;border-bottom:1px solid var(--line);background:#fbf8fd}.calendar-day-head{display:grid;gap:2px;min-height:58px;padding:10px 12px;border:0;border-left:1px solid var(--line);background:transparent;color:var(--ink);text-align:left}.calendar-day-head span{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.calendar-day-head.today{background:#f2eaf7;color:var(--brand-dark)}.calendar-scroll{overflow:auto;max-height:min(72vh,900px);overscroll-behavior:contain}.calendar-body{display:grid;min-width:0}.calendar-time-column,.calendar-day-column{position:relative}.calendar-time-column{border-right:1px solid var(--line);background:#fbf8fd}.calendar-hour-label{position:absolute;right:10px;transform:translateY(-8px);color:var(--muted);font-size:.72rem;font-weight:900}.calendar-day-column{border-left:1px solid var(--line);background:linear-gradient(180deg,rgba(231,221,236,.6) 1px,transparent 1px);background-size:100% 58px}.calendar-hour-line{position:absolute;left:0;right:0;height:1px;background:#e7ddecb8}.calendar-now-line{position:absolute;z-index:4;left:0;right:0;height:2px;background:var(--coral);box-shadow:0 0 0 2px #d65a4a14}.calendar-event{position:absolute;z-index:2;display:grid;align-content:start;gap:2px;min-width:0;padding:7px 8px;border:1px solid rgba(79,135,183,.22);border-left:5px solid var(--blue);border-radius:8px;background:#fff;color:var(--ink);text-align:left;overflow:hidden;box-shadow:0 8px 18px #22435817}.calendar-event.active{outline:2px solid rgba(143,95,182,.38);outline-offset:1px}.calendar-event.cancelled,.calendar-event.moved{opacity:.72}.calendar-event.individual{background:#f5fbf8}.calendar-event.trial{background:#fff8ed}.calendar-event strong,.calendar-event span,.calendar-event small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event strong{font-size:.78rem}.calendar-event span,.calendar-event small{color:var(--muted);font-size:.7rem;font-weight:800}.calendar-event-badges{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}.calendar-event-badges em{padding:2px 5px;border-radius:6px;background:#8f5fb61f;color:var(--brand-dark);font-size:.62rem;font-style:normal;font-weight:900}.calendar-list{display:grid;gap:8px;padding:12px}.calendar-list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.calendar-list-item.active{border-color:#8f5fb680;background:#fbf8fd}.calendar-list-item span{display:block;margin-top:4px;color:var(--muted)}.calendar-empty-state{display:grid;min-height:260px;place-items:center;align-content:center;gap:8px;padding:30px;color:var(--muted);text-align:center}.calendar-empty-state h3,.calendar-empty-state p{margin:0}.calendar-month{min-width:760px}.calendar-month-weekdays,.calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-month-weekdays{position:sticky;top:0;z-index:4;border-bottom:1px solid var(--line);background:#fbf8fd}.calendar-month-weekdays span{padding:10px;color:var(--muted);font-size:.74rem;font-weight:900;text-align:center;text-transform:uppercase}.calendar-month-day{min-height:122px;padding:7px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.calendar-month-day.outside{background:#fafafa;color:var(--muted)}.calendar-month-day.today{background:#fbf7fd;box-shadow:inset 0 0 0 2px #8f5fb640}.calendar-month-date{display:grid;width:28px;height:28px;place-items:center;margin-left:auto;border:0;border-radius:50%;background:transparent;color:inherit;font-weight:900}.calendar-month-day.today .calendar-month-date{background:var(--brand);color:#fff}.calendar-month-events{display:grid;gap:4px;margin-top:5px}.calendar-month-events button{display:flex;min-width:0;gap:5px;padding:4px 5px;border:0;border-left:4px solid var(--blue);border-radius:4px;background:#f7f4f9;color:var(--ink);font-size:.68rem;text-align:left}.calendar-month-events button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-month-events .calendar-month-more{justify-content:center;border-left:0;color:var(--brand-dark);font-weight:900}.calendar-detail{position:sticky;top:18px;display:grid;gap:14px}.calendar-detail-close{display:none;justify-self:end}.calendar-detail-info,.calendar-reschedule{grid-template-columns:1fr}.calendar-attendance{max-height:48vh;overflow:auto}.lesson-card{display:grid;grid-template-columns:7px minmax(0,1fr);overflow:hidden}.lesson-accent{min-height:100%}.lesson-main{padding:18px}.lesson-status{display:inline-flex;margin-bottom:8px;padding:4px 8px;border-radius:8px;background:#f2eaf7;color:var(--brand-dark);font-size:.78rem;font-weight:900}.lesson-status.cancelled{background:#fde8e8;color:var(--danger)}.lesson-status.completed{background:#def6e8;color:#17603a}.lesson-status.moved{background:#fff2df;color:#85520d}.reschedule-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0;padding:14px;border:1px solid rgba(143,95,182,.16);border-radius:8px;background:#fcf8fd}.reschedule-form .topbar-actions{align-items:end}.attendance-row select{max-width:190px}.report-band{background:linear-gradient(90deg,#8f5fb6f2,#f2b84bdb),var(--brand)}.report-list{display:grid;gap:10px}.report-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);gap:14px;align-items:center;width:100%;min-height:66px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--ink);text-align:left}.report-row.active-row{border-color:var(--brand);background:#f6effa}.report-row.compact{grid-template-columns:minmax(0,1fr) auto}.report-row span{display:block;margin-top:4px;color:var(--muted);font-size:.88rem}.report-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.progress-bar{overflow:hidden;height:10px;border-radius:999px;background:#e3ebe7}.progress-fill{display:block;min-width:2px;height:100%;border-radius:inherit;background:var(--brand)}.warning-fill{background:var(--warning)}.payroll-band{background:linear-gradient(90deg,#174b45f5,#4377b2db),var(--brand-dark)}.payroll-list{display:grid;gap:12px}.payroll-row{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(4,minmax(110px,.7fr)) minmax(115px,.7fr);gap:10px;align-items:stretch;min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.payroll-teacher{display:flex;align-items:center;gap:12px;min-width:0;min-height:74px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.payroll-teacher span,.payroll-total span{display:block;margin-top:4px;color:var(--muted);font-size:.88rem}.payroll-total{display:grid;align-content:center;min-width:0;min-height:74px;padding:12px;border-radius:8px;background:#edf6f2;color:var(--brand-dark)}.payroll-total strong{display:block;margin-top:8px;font-size:1.18rem}.max-band{background:linear-gradient(90deg,#4f87b7f2,#8f5fb6e6),var(--blue)}.settings-band{background:linear-gradient(90deg,#5d2e68f2,#d65a4ad1),var(--brand-dark)}.max-checks{display:grid;gap:8px;min-width:min(100%,280px)}.max-checks span{display:flex;align-items:center;gap:8px;min-width:0;overflow-wrap:anywhere}.automation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.automation-action{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fcf8fd}.automation-action label,.automation-action .compact-inputs,.automation-action .button{grid-column:1 / -1}.automation-action strong,.automation-action span{display:block}.automation-action span{margin-top:4px;color:var(--muted);font-size:.9rem}.automation-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:#f0e9f5;color:var(--brand-dark)}.automation-icon.accent{background:#fff2df;color:#85520d}.automation-icon.danger{background:#fff0ef;color:var(--danger)}.compact-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.notification p{margin:6px 0 0;color:var(--muted)}.homework-row span{display:block;margin-top:4px;color:var(--muted);font-size:.88rem}.homework-row p{margin:8px 0 0;color:var(--ink)}.document-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.document-row span{display:block;margin-top:4px;color:var(--muted);font-size:.88rem}.document-row a{text-decoration:none}.checkbox-line{display:flex;align-items:center;gap:10px;color:var(--ink)}.checkbox-line input{width:18px;min-height:18px}.pilot-settings-page{gap:22px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-section{display:grid;gap:14px}.settings-section-head{align-items:end;padding:0 2px 2px}.settings-count{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:.82rem;font-weight:900;white-space:nowrap}.settings-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:18px;align-items:start}.settings-layout-wide{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr)}.settings-summary-panel{position:sticky;top:24px;display:grid;gap:14px;border-left:5px solid var(--blue);background:linear-gradient(180deg,#fff,#f8fbfc)}.settings-summary-title{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid var(--line)}.settings-summary-title strong{color:var(--ink);font-size:1rem}.settings-summary-title span{color:var(--muted);font-size:.88rem;line-height:1.4}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-form-card{min-height:100%}.settings-form-card h2,.settings-utility-card h2{font-size:1.05rem}.settings-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.settings-utility-card{border-left-color:var(--blue);background:linear-gradient(180deg,#fff,#f8fbfc)}.settings-utility-card.danger-zone{border-left-color:var(--danger);background:linear-gradient(180deg,#fff,#fff7f6)}.task-row span{display:block;margin-top:4px;color:var(--muted);font-size:.88rem}.student-group-list{display:grid;gap:8px}.student-group-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 12px;border-radius:8px;background:var(--panel-soft)}.student-group-row span{display:block;margin-top:4px;color:var(--muted);font-size:.86rem}.student-group-form{align-items:stretch;margin-top:10px}.student-group-form select{min-width:260px}.student-group-create{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.courses-workspace .detail-pane{gap:18px}.inset-panel{box-shadow:none;border:1px solid var(--line);background:#fbfafc}.course-sublist{display:grid;gap:10px}.course-schedule-row{display:grid;grid-template-columns:92px 1fr 1fr minmax(130px,1.2fr) minmax(130px,1.2fr) auto;gap:8px;align-items:center}.course-material-row{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.subscription-edit-form{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.task-row>span{margin-top:0;font-weight:900}.task-row select{max-width:180px}.parent-preview{display:grid;grid-template-columns:minmax(280px,360px) minmax(320px,430px);gap:22px;align-items:start}.parent-selector{position:sticky;top:24px}.phone-frame{min-height:720px;padding:14px;border-radius:30px;background:#1f2933;box-shadow:var(--shadow)}.mini-app{min-height:692px;max-height:760px;overflow:auto;border-radius:22px;background:#f5f7f6}.parent-mini-page{min-height:100vh;background:linear-gradient(180deg,rgba(143,95,182,.1),transparent 240px),#e8eeeb}.parent-mini-app{width:min(100%,480px);min-height:100vh;margin:0 auto;padding-bottom:22px;background:#f5f7f6;box-shadow:0 18px 58px #1f293329}.parent-mini-top{position:sticky;top:0;z-index:4;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid rgba(31,41,51,.08);background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.parent-mini-top span,.parent-mini-top strong{display:block;min-width:0}.parent-mini-top span{color:var(--muted);font-size:.78rem;font-weight:800}.parent-mini-top strong{overflow:hidden;color:var(--ink);font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.parent-mini-refresh{width:38px;height:38px;background:#f2eef5}.parent-mini-state{margin:18px 12px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted);font-weight:850;text-align:center}.parent-mini-card{display:grid;gap:12px;margin-top:18px}.parent-mini-card svg{color:var(--brand)}.parent-mini-card h1{margin:0;font-size:1.35rem;line-height:1.12}.parent-mini-card p{margin:0;color:var(--muted);line-height:1.45}.parent-mini-phone-form{display:grid;gap:10px}.parent-mini-phone-form input{min-height:44px;border-radius:10px;font-size:1rem}.parent-mini-example{padding:12px;border:1px dashed rgba(143,95,182,.42);border-radius:10px;background:#fbf7fd;color:var(--brand-dark);font-weight:900}.parent-mini-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px}.parent-mini-summary div{min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.parent-mini-summary span,.parent-mini-summary strong{display:block;min-width:0}.parent-mini-summary span{color:var(--muted);font-size:.74rem;font-weight:850}.parent-mini-summary strong{overflow:hidden;margin-top:4px;font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.mini-hero{padding:24px 20px 28px;background:linear-gradient(135deg,#8f5fb6f0,#f2b84bdb),var(--brand);color:#fff}.mini-hero p{margin-bottom:6px;color:#ffffffbf}.mini-notice{margin:12px 12px 0;padding:10px 12px;border:1px solid rgba(143,95,182,.16);border-radius:8px;background:#f2eaf7;color:var(--brand-dark);font-size:.9rem;font-weight:800}.mini-message-form{display:grid;gap:10px}.mini-message-form textarea{width:100%;min-height:84px;resize:vertical;border-radius:8px;font-size:.9rem}.mini-message-button{min-height:36px;justify-self:stretch}.mini-section{margin:12px;padding:14px;border-radius:12px;background:#fff;border:1px solid var(--line)}.mini-section h3{margin:0 0 10px}.mini-toggles{display:grid;gap:8px}.mini-toggle{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 0;border:0;border-bottom:1px solid #eef2ef;background:transparent;color:var(--ink);text-align:left}.mini-toggle:last-child{border-bottom:0}.mini-toggle span,.mini-toggle strong,.mini-toggle em{display:block;min-width:0}.mini-toggle strong{font-size:.92rem}.mini-toggle em{margin-top:3px;color:var(--muted);font-size:.8rem;font-style:normal;line-height:1.25}.mini-toggle i{position:relative;display:block;width:42px;height:24px;border-radius:999px;background:#d9e1dd;transition:background .18s ease}.mini-toggle i:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #1f29332e;content:"";transition:transform .18s ease}.mini-toggle.active i{background:var(--brand)}.mini-toggle.active i:after{transform:translate(18px)}.mini-child-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}.mini-child-head span{display:block;color:var(--muted);font-size:.82rem}.mini-child-head strong,.mini-child-head b{display:block}.mini-child-head b{flex:0 0 auto;font-size:.92rem}.mini-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;border-bottom:1px solid #eef2ef}.mini-lesson>div{min-width:0}.mini-action{flex:0 0 auto;min-height:32px;padding:0 10px;font-size:.82rem}.mini-list>div:last-child{border-bottom:0}.mini-list a{max-width:55%;color:var(--brand-dark);font-weight:900;text-align:right;text-decoration:none}.mini-homework{padding:12px;border-radius:8px;background:#fcf8fd}.mini-homework p{margin:6px 0 0;color:var(--muted)}.login-screen{display:grid;min-height:100vh;place-items:center;padding:24px;background:linear-gradient(120deg,#8f5fb6eb,#5d2e68e6),var(--brand-dark)}.public-booking-screen{min-height:100vh;padding:28px;background:linear-gradient(120deg,#5d2e68f0,#8f5fb6db),var(--brand-dark)}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);gap:28px;align-items:center;width:min(1120px,100%);min-height:calc(100vh - 56px);margin:0 auto}.booking-hero{color:#fff}.booking-hero h1{max-width:720px;margin:14px 0 16px;font-size:clamp(2.4rem,5vw,4.9rem);line-height:.98}.booking-hero p{max-width:640px;color:#ffffffc7;font-size:1.08rem;line-height:1.6}.booking-hero .eyebrow{margin-top:22px;color:#ffffffb8}.booking-points{display:grid;gap:10px;margin:26px 0}.booking-points span{display:flex;align-items:center;gap:10px;color:#ffffffdb;font-weight:800}.public-admin-link{width:fit-content;text-decoration:none}.booking-card{display:grid;gap:14px;padding:24px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#fffffff5;box-shadow:0 22px 60px #00000038}.booking-success{display:grid;gap:12px;justify-items:start;padding:18px 0}.booking-success svg{color:var(--success)}.booking-success p{color:var(--muted);line-height:1.55}.login-panel{width:min(100%,440px);padding:32px}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.login-brand strong,.login-brand span{display:block}.login-brand strong{color:var(--text);font-size:.98rem;line-height:1.18}.login-brand span{margin-top:4px;color:var(--muted);font-size:.84rem}.login-brand .brand-mark.large.has-logo{width:78px;height:78px;padding:6px;border:1px solid #eadcef;background:#f8f1fb;filter:drop-shadow(0 10px 18px rgba(93,46,104,.16))}.login-panel h1{margin:8px 0 12px}.login-copy{color:var(--muted)}.login-form{display:grid;gap:14px;margin-top:24px}.login-form+.notice{margin-top:14px}.secret-input{position:relative;display:block}.secret-input input{padding-right:48px}.secret-toggle{position:absolute;top:1px;right:1px;width:38px;height:38px;background:transparent;color:var(--muted)}.secret-toggle:hover{background:var(--panel-soft);color:var(--brand-dark)}.login-submit{width:100%;min-height:44px}.notice{padding:12px 14px;border-radius:8px;border:1px solid var(--line);background:#fff}.notice.error{border-color:#f2c4c4;background:#fff2f2;color:var(--danger)}.notice.soft{background:var(--panel-soft);color:var(--muted)}.notice.warning-notice{border-color:#f2d8a6;background:#fff8ea;color:#85520d}.muted-text{color:var(--muted);line-height:1.55}.camera-page{gap:18px}.camera-band h2,.camera-access-panel h2,.camera-export-panel h2,.camera-offline h2{margin:0 0 8px}.camera-access-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.camera-access-summary>div{display:grid;gap:5px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.camera-access-summary span{color:var(--muted);font-size:.76rem;font-weight:750}.camera-access-summary strong{font-size:.95rem}.camera-access-note{margin:10px 0 0}.camera-server-state{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:#181b232e;font-weight:800}.camera-server-state span,.camera-tile span i{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#ef9c9c;box-shadow:0 0 0 4px #ef9c9c29}.camera-server-state.online span,.camera-tile.online span i{background:#69d29a;box-shadow:0 0 0 4px #69d29a2e}.camera-tile.checking span i{background:#e1ad55;box-shadow:0 0 0 4px #e1ad552e}.camera-offline{display:flex;align-items:center;gap:18px}.camera-offline>div{flex:1}.camera-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.camera-tile{overflow:hidden;display:grid;padding:0;border:2px solid transparent;border-radius:8px;background:#171b22;color:#fff;box-shadow:0 5px 14px #1d222a1f;text-align:left}.camera-tile:hover,.camera-tile.selected{border-color:var(--brand)}.camera-tile img{display:block;width:100%;height:clamp(82px,9vw,112px);object-fit:cover;background:#242a34}.camera-tile>span{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 9px;font-size:.82rem;font-weight:850}.camera-tile>span b{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}.camera-tile>span small{margin-left:auto;color:#ffffffa6;font-size:.68rem;font-weight:750;white-space:nowrap}.camera-tile.offline{filter:saturate(.55)}.camera-live-panel{overflow:hidden}.camera-live-panel .section-head{margin-bottom:12px}.camera-live-panel h2{margin:0}.camera-live-actions{display:flex;align-items:center;gap:8px}.camera-live-actions>span{min-width:48px;color:var(--muted);font-size:.82rem;font-weight:800;text-align:center}.camera-live-actions .icon-button{flex:0 0 auto;width:38px;min-height:38px;padding:0}.camera-live-quality{display:inline-flex;overflow:hidden;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.camera-live-quality button{min-height:30px;padding:5px 10px;border:0;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:.76rem;font-weight:850;cursor:pointer}.camera-live-quality button.active{background:#fff;color:var(--brand-dark);box-shadow:0 2px 7px #232a351f}.camera-live-frame{position:relative;overflow:hidden;max-width:1080px;margin:0 auto;border-radius:8px;background:#171b22}.camera-live-state{position:absolute;z-index:1;top:12px;left:12px;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#10141bc7;color:#fff;font-size:.72rem;font-weight:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.camera-live-state i{width:8px;height:8px;border-radius:50%;background:#f4b740}.camera-live-state.ready i{background:#48d597;box-shadow:0 0 0 4px #48d5972e}.camera-live-state.error i{background:#ff7d7d}.camera-live-frame img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:contain}.camera-review-panel{display:grid;gap:12px}.camera-review-panel h2{margin:0 0 8px}.camera-review-controls{display:grid;grid-template-columns:minmax(150px,.8fr) repeat(2,minmax(150px,.7fr)) auto;gap:12px;align-items:end}.camera-review-controls label{min-width:0}.camera-open-recording{min-height:42px}.camera-quick-times{display:flex;flex-wrap:wrap;gap:8px}.camera-quick-times .button{min-height:36px;padding:8px 12px}.camera-timeline-block{display:grid;gap:7px;padding:12px 15px 10px;border-top:1px solid rgba(255,255,255,.12);background:#11151b}.camera-timeline-summary,.camera-timeline-labels{display:flex;justify-content:space-between;gap:12px}.camera-timeline-summary{align-items:center;color:#ffffff9e;font-size:.9rem}.camera-timeline-nudge{display:flex;align-items:center;gap:7px}.camera-timeline-nudge strong{min-width:150px;color:#fff;font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap}.camera-timeline-nudge button{min-height:28px;padding:4px 8px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#ffffff0f;color:#ffffffc7;font:inherit;font-size:.72rem;font-weight:800;cursor:pointer}.camera-timeline-nudge button:disabled{opacity:.4;cursor:default}.camera-timeline{position:relative;height:62px}.camera-timeline:before,.camera-timeline-availability{position:absolute;inset:38px 0 8px;overflow:hidden;border-radius:999px}.camera-timeline:before{content:"";background:#303640;box-shadow:inset 0 0 0 1px #ffffff0f}.camera-timeline-availability span{position:absolute;top:0;bottom:0;min-width:2px;border-radius:999px;background:#43b879}.camera-timeline-current{position:absolute;z-index:3;top:0;transform:translate(-50%);padding:5px 8px;border-radius:6px;background:var(--brand);color:#fff;font-size:.72rem;font-weight:850;font-variant-numeric:tabular-nums;line-height:1;pointer-events:none;white-space:nowrap}.camera-timeline-current:after{position:absolute;top:100%;left:50%;width:0;height:0;transform:translate(-50%);border-top:5px solid var(--brand);border-right:5px solid transparent;border-left:5px solid transparent;content:""}.camera-timeline-now{position:absolute;z-index:1;top:31px;bottom:7px;width:2px;transform:translate(-1px);border-radius:999px;background:#f4b740;box-shadow:0 0 0 2px #f4b74033;pointer-events:none}.camera-timeline input[type=range]{position:absolute;z-index:2;top:20px;right:0;left:0;width:100%;height:36px;margin:0;appearance:none;background:transparent;cursor:ew-resize}.camera-timeline input[type=range]::-webkit-slider-runnable-track{height:16px;background:transparent}.camera-timeline input[type=range]::-webkit-slider-thumb{width:24px;height:24px;margin-top:-4px;appearance:none;border:3px solid #ffffff;border-radius:50%;background:var(--brand);box-shadow:0 2px 8px #22273159}.camera-timeline input[type=range]::-moz-range-track{height:16px;background:transparent}.camera-timeline input[type=range]::-moz-range-thumb{width:19px;height:19px;border:3px solid #ffffff;border-radius:50%;background:var(--brand);box-shadow:0 2px 8px #22273159}.camera-timeline-labels{color:#ffffff75;font-size:.74rem}.camera-playback-clock{position:absolute;z-index:4;top:12px;right:12px;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#0c0f13c7;color:#ffffff9e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.camera-playback-clock span,.camera-playback-clock strong{display:block}.camera-playback-clock strong{margin-top:2px;color:#fff;font-variant-numeric:tabular-nums}.camera-archive-player{overflow:hidden;border-radius:8px;background:#171b22}.camera-archive-media{position:relative;overflow:hidden;width:100%;aspect-ratio:16 / 9;background:#090b0e}.camera-archive-media video{display:block;width:100%;height:100%;aspect-ratio:16 / 9;object-fit:contain;background:#090b0e}.camera-scrub-preview{position:absolute;z-index:2;inset:0;display:grid;place-items:center;background:#090b0e}.camera-scrub-preview img{display:block;width:100%;height:100%;object-fit:contain}.camera-scrub-preview>span{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0c0f13c7;color:#ffffffc2;font-size:.78rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.camera-scrub-preview>span strong{color:#fff}.camera-player-help{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 15px 13px;border-top:1px solid rgba(255,255,255,.08);color:#d9dde2}.camera-player-help p{margin:0}.camera-player-help>div{display:flex;flex:0 0 auto;gap:8px}.camera-player-help .button.ghost{border-color:#ffffff40;color:#fff}.camera-export-panel{display:grid;gap:18px}.camera-export-fields{display:grid;grid-template-columns:minmax(150px,.7fr) repeat(2,minmax(190px,1fr)) auto;gap:12px;align-items:end}.camera-export-fields label{min-width:0}.camera-export-fields .button{min-height:42px}.camera-archive-panel{display:grid;gap:18px}.camera-archive-panel h2{margin:0 0 8px}.camera-export-player{overflow:hidden;max-width:960px;margin:0 auto;border-radius:8px;background:#171b22}.camera-export-player video{display:block;width:100%;max-height:70vh}.camera-export-list{display:grid;gap:10px}.camera-export-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.camera-export-row>div:first-child{min-width:0}.camera-export-row strong,.camera-export-row span{display:block}.camera-export-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-export-row>div:first-child span{margin-top:4px;color:var(--muted);font-size:.88rem}.camera-export-status{color:#24764c;font-size:.84rem;font-weight:850}.camera-export-status.working{color:#9b6517}.camera-export-actions{display:flex;gap:8px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1280px){.camera-review-controls,.camera-export-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-calendar-page{grid-template-columns:1fr}.calendar-detail{position:static}}@media(max-width:1080px){.app-shell{grid-template-columns:90px minmax(0,1fr)}.sidebar{padding:16px 12px}.brand div:last-child,.nav-group-label,.department-nav-copy,.nav-item>span:not(.nav-badge),.user-pill div:last-child{display:none}.nav-item{justify-content:center}.nav-badge{position:absolute;top:3px;right:5px;min-width:18px;height:18px;padding:0 5px;font-size:10px}.kpi-grid,.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split,.dashboard-focus,.workspace,.sales-pipeline,.admin-tasks-workspace,.inbox-workspace,.inbox-layout,.course-schedule-row,.group-schedule-row,.vk-status-grid,.parent-preview,.settings-grid,.settings-layout,.settings-form-grid,.settings-tools-grid,.automation-grid,.reschedule-form,.payroll-row,.admin-task-main,.recurring-card{grid-template-columns:1fr}.task-workday-head,.admin-task-main,.recurring-card{align-items:stretch}.task-workday-head{flex-direction:column}.admin-task-due{text-align:left}.admin-task-actions{justify-content:flex-start}.settings-summary-panel,.parent-selector,.inbox-workspace .list-pane{position:static}}@media(max-width:720px){.camera-access-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.camera-export-fields{grid-template-columns:1fr}.camera-review-controls,.camera-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.camera-tile img{height:82px;aspect-ratio:auto}.camera-tile>span{gap:7px;padding:7px 9px;font-size:.78rem}.camera-tile>span small{display:block}.camera-tile span i{width:8px;height:8px}.camera-live-panel .section-head{align-items:stretch;flex-direction:column}.camera-live-actions{flex-wrap:wrap}.camera-live-actions .button:last-child{margin-left:auto}.camera-live-quality{order:4}.camera-quick-times{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.camera-quick-times .button{flex:0 0 auto}.camera-timeline-summary{align-items:stretch;flex-direction:column}.camera-timeline-nudge{justify-content:space-between}.camera-timeline-nudge strong{min-width:132px;font-size:.82rem}.camera-player-help{align-items:stretch;flex-direction:column}.camera-player-help>div{display:grid;grid-template-columns:1fr 1fr}.camera-playback-clock{top:8px;right:8px;width:auto;padding:6px 8px}.camera-export-row{grid-template-columns:1fr}.camera-export-actions{display:grid;grid-template-columns:1fr 1fr}.camera-offline{align-items:stretch;flex-direction:column}.app-shell{display:block}.sidebar{position:sticky;top:0;z-index:5;min-height:auto;flex-direction:row;overflow-x:auto}.brand,.sidebar-footer{display:none}.nav,.nav-group{display:flex;gap:8px}.nav-item{min-width:44px}.department-item{align-items:center;min-width:max-content;min-height:54px;padding:10px 12px}.nav-item.department-item .department-nav-copy{display:grid}.department-nav-copy small{display:none}.department-tabs{flex-wrap:nowrap;overflow-x:auto;margin-top:-4px;-webkit-overflow-scrolling:touch}.department-tabs button{flex:0 0 auto}.main{padding:18px}.birthday-card{grid-template-columns:1fr}.birthday-date{width:100%;min-height:62px;place-items:start;text-align:left}.topbar,.wide-band,.profile-header,.section-head,.attendance-row,.notification,.task-row,.student-group-row,.document-row{align-items:stretch;flex-direction:column}.topbar-actions,.inline-form{flex-wrap:wrap}.kpi-grid,.info-grid,.form-grid,.calendar-filters,.department-placeholder-grid,.inbox-reply,.compact-inputs,.schedule-form-grid,.schedule-calendar-page,.schedule-tools-grid{grid-template-columns:1fr}.calendar-toolbar,.calendar-list-item{align-items:stretch;flex-direction:column}.calendar-toolbar-actions,.calendar-toolbar-actions .segmented{width:100%}.calendar-toolbar-actions .segmented button,.calendar-navigation .button{flex:1 1 0}.calendar-detail{display:none}.calendar-detail.open{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;max-height:84vh;overflow:auto;margin:0;border-radius:8px 8px 0 0;box-shadow:0 -16px 50px #1d222a3d}.calendar-detail-close{display:grid;position:sticky;top:0;z-index:2;background:#fff}.calendar-navigation{width:100%}.calendar-date-picker{flex:1 1 auto;width:auto}.calendar-view-switcher{overflow-x:auto}.calendar-view-switcher button{min-width:82px}.calendar-month{min-width:680px}.calendar-month-day{min-height:104px}.group-schedule-row .icon-button{justify-self:end}.weekday-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.booking-layout{grid-template-columns:1fr;align-items:start}.table-row{grid-template-columns:1fr}.inbox-filters button{flex-basis:calc(50% - 6px)}.chat-message{width:100%}.report-row,.report-row.compact{grid-template-columns:1fr}.pipeline-toolbar{flex-direction:column}.pipeline-toolbar-actions{justify-items:stretch;width:100%}.pipeline-board{grid-template-columns:repeat(5,minmax(220px,82vw));scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;margin-right:-18px;padding-right:18px}.pipeline-column{scroll-snap-align:start}.pipeline-column-head{min-height:98px}.pipeline-detail{scroll-margin-top:78px}.phone-frame{min-height:620px}.public-booking-screen{padding:18px}.booking-layout{min-height:auto}.booking-hero h1{font-size:2.4rem}.booking-card{padding:18px}}
