@import "https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700;800&family=Instrument+Sans:wght@400;500;600;700&display=swap";
:root{--bg-top:#d7e7df;--bg-mid:#e7ddd0;--bg-bottom:#f4f1e8;--ink:#102227;--ink-soft:#456168;--accent:#13856f;--accent-strong:#0a6d5f;--accent-2:#d9872f;--card:#ffffffd1;--card-strong:#ffffffe6;--line:#143a4329;--line-strong:#143a4342;--shadow-soft:0 24px 50px #0c30371f;--shadow-card:0 14px 34px #0d2f261f}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{color:var(--ink);background:radial-gradient(circle at 8% 10%, #ffffffd1 0, #fff0 26%), radial-gradient(circle at 88% 12%, #12856f2e 0, #12856f00 34%), radial-gradient(circle at 78% 84%, #d9872f2e 0, #d9872f00 30%), linear-gradient(120deg, #ffffff47 0%, #fff0 22%), linear-gradient(155deg, var(--bg-top) 0%, var(--bg-mid) 52%, var(--bg-bottom) 100%);background-attachment:fixed;font-family:Instrument Sans,sans-serif}a{color:inherit;text-decoration:none}.obok-shell{width:100%;max-width:100%;margin:0;padding:24px clamp(14px,2.6vw,34px) 34px}.premium-shell{isolation:isolate;max-width:100%;position:relative}.premium-shell:after{content:"";filter:blur(6px);pointer-events:none;z-index:-1;background:radial-gradient(circle,#13856f29 0,#13856f00 68%);border-radius:50%;width:min(34vw,380px);height:min(34vw,380px);position:absolute;inset:22px 10px auto auto}.dashboard-layout{grid-template-columns:292px minmax(0,1fr);align-items:start;gap:16px;display:grid}.dashboard-layout.sidebar-hidden{grid-template-columns:minmax(0,1fr)}.dashboard-layout.compact-mode .dashboard-topbar,.dashboard-layout.compact-mode .dashboard-sidebar,.dashboard-layout.compact-mode .card,.dashboard-layout.compact-mode .dashboard-kpi{padding:11px}.dashboard-layout.compact-mode .dashboard-headline h1{margin-top:6px;font-size:clamp(1.12rem,1.7vw,1.4rem)}.dashboard-layout.compact-mode .dashboard-headline p,.dashboard-layout.compact-mode .muted{font-size:.88rem}.dashboard-main{width:100%;min-width:0}.dashboard-sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#effbf7;background:radial-gradient(circle at 0 0,#3ed6ad2e 0,#3ed6ad00 26%),linear-gradient(#082e33f5 0%,#0a3d37f0 56%,#124842eb 100%);border:1px solid #ffffff2e;border-radius:28px;padding:16px;position:sticky;top:14px;box-shadow:0 24px 48px #051c1f57}.dashboard-sidebar-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.dashboard-shell-meta{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.dashboard-shell-title{letter-spacing:.08em;text-transform:uppercase;color:#d8f5edc7;font-family:Outfit,sans-serif;font-size:.72rem;display:block}.dashboard-shell-subtitle{color:#effbf7eb;margin:1px 0 0;font-size:.82rem}.dashboard-sidebar-toggle{justify-content:center;width:100%}.dashboard-sidebar-tenant-card{background:linear-gradient(#ffffff1a,#ffffff0a);border:1px solid #d3f4eb29;border-radius:18px;margin-top:10px;padding:10px;box-shadow:inset 0 1px #ffffff14}.dashboard-sidebar-tenant{color:#e5f7f1c7;margin:8px 0 0;font-size:.86rem}.dashboard-sidebar-section{margin-top:12px}.dashboard-sidebar-section-title{color:#d7f4eca8;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:700}.dashboard-sidebar-divider{border-top:1px dashed #dbf4ed2e;margin-top:12px}.dashboard-sidebar-links{gap:8px;display:grid}.dashboard-sidebar-link{background:#ffffff0f;border:1px solid #d8f5ed14;border-radius:16px;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-size:.88rem;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;display:flex}.dashboard-sidebar-link:hover{background:#ffffff1a;border-color:#d8f5ed33;transform:translate(2px)}.dashboard-sidebar-link.active{background:linear-gradient(135deg,#ffffff2e,#51cfa91f);border-color:#78eccc61;box-shadow:0 0 0 1px #78eccc52,inset 0 1px #ffffff1a}.dashboard-sidebar-link-main{font-weight:600}.dashboard-sidebar-actions{gap:8px;display:grid}.dashboard-sidebar-command-link{background:#ffffff0d;border:1px solid #d8f5ed14;border-radius:15px;gap:2px;padding:8px 10px;display:grid}.dashboard-sidebar-command-link:hover{background:#ffffff1a;border-color:#d8f5ed33}.dashboard-sidebar-command-link span{font-size:.86rem;font-weight:600}.dashboard-sidebar-command-link small{color:#e5f7f1ad;font-size:.73rem;line-height:1.25}.dashboard-sidebar-utility{justify-content:center;width:100%}.premium-shell:before{content:"";pointer-events:none;opacity:.65;border:1px solid #ffffff8a;border-radius:30px;position:absolute;inset:0}.dashboard-topbar{box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(90deg,#13856f1a,#13856f00 26%),linear-gradient(136deg,#fffffff0 0%,#f9f3e6eb 52%,#ecf8f2e6 100%);border:1px solid #ffffff94;border-radius:28px;padding:18px 20px}.dashboard-topbar-main{align-items:center;gap:10px;display:flex;position:relative}.dashboard-status-rail{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.dashboard-status-pill{color:#184d43;letter-spacing:.02em;background:#fffc;border:1px solid #124a4224;border-radius:999px;align-items:center;gap:7px;padding:6px 11px;font-size:.78rem;font-weight:700;display:inline-flex;box-shadow:0 10px 18px #0d2f2614}.dashboard-status-pill.live{color:#0d5e4f;background:linear-gradient(135deg,#e9fcf6,#d9f6ec);border-color:#13856f61}.dashboard-live-dot{background:#0fa98b;border-radius:50%;width:8px;height:8px;animation:1.7s ease-out infinite live-pulse;box-shadow:0 0 #0fa98b80}.dashboard-headline h1{letter-spacing:-.02em;margin:10px 0 4px;font-family:Outfit,sans-serif;font-size:clamp(1.3rem,2.1vw,1.9rem)}.dashboard-headline p{color:var(--ink-soft);margin:0}.dashboard-topbar-tools{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.dashboard-profile-menu-wrap{margin-left:auto;position:relative}.dashboard-profile-trigger{cursor:pointer;font:inherit;background:linear-gradient(135deg,#fffffffa,#edf7f3f5);border:1px solid #124a4224;border-radius:999px;align-items:center;gap:8px;min-width:206px;padding:6px 10px 6px 7px;display:inline-flex;box-shadow:0 10px 24px #0e3b331f}.dashboard-profile-trigger:hover{transform:translateY(-1px);box-shadow:0 8px 16px #16332120}.dashboard-profile-avatar{color:#0d4f43;background:linear-gradient(130deg,#e9fcf6,#d4f3e8);border:1px solid #124a421f;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.78rem;font-weight:700;display:grid}.dashboard-profile-meta{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.dashboard-profile-meta strong,.dashboard-profile-meta small{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.dashboard-profile-meta strong{font-size:.83rem}.dashboard-profile-meta small{color:#365543;font-size:.73rem}.dashboard-profile-menu{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fcfffcf5;border:1px solid #124a4224;border-radius:18px;width:min(300px,88vw);padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 22px 46px #1027152e}.dashboard-profile-menu a,.dashboard-profile-menu button{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px}.dashboard-profile-menu a:hover,.dashboard-profile-menu button:hover{background:#edf7ee}.dashboard-topbar-tools .pill-btn{background:#ffffffd9;align-items:center;gap:8px;display:inline-flex}.dashboard-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.dashboard-quick-access{background:linear-gradient(135deg,#ffffffe6,#eef8f4db);border:1px solid #124a421a;border-radius:18px;margin-top:10px;padding:10px 12px;box-shadow:inset 0 1px #ffffffa3}.dashboard-quick-access-list{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.dashboard-quick-chip{cursor:pointer;font:inherit;background:#ffffffdb;border:1px solid #124a421f;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;display:inline-flex;box-shadow:0 8px 16px #0e342214}.dashboard-quick-chip span{font-size:.84rem;font-weight:600}.dashboard-quick-chip small{color:#3a5a47;font-size:.75rem}.dashboard-quick-chip:hover{transform:translateY(-1px);box-shadow:0 6px 14px #1433221e}.role-badge{letter-spacing:.08em;text-transform:uppercase;color:#0f5d50;background:linear-gradient(135deg,#e9fcf6,#d5f4ebeb);border:1px solid #105c4e2e;border-radius:999px;padding:6px 11px;font-size:.78rem}.dashboard-tabs{background:#ffffffad;border:1px solid #124a421a;border-radius:999px;flex-wrap:wrap;gap:8px;margin-top:14px;padding:4px;display:flex;overflow-x:auto;box-shadow:inset 0 1px #ffffffb8}.dashboard-tab{background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:9px 14px;font-size:.85rem;transition:transform .2s,background .2s,border-color .2s;display:inline-flex}.dashboard-tab:hover{background:#fff;transform:translateY(-1px)}.dashboard-capabilities{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.dashboard-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.dashboard-kpi{background:linear-gradient(160deg,#ffffffeb,#f1f9f6d6);border:1px solid #124a421a;border-radius:20px;padding:14px;box-shadow:0 14px 26px #0c2b2214}.dashboard-kpi span{color:#355443;font-size:.82rem;display:block}.dashboard-kpi strong{margin-top:5px;font-family:Outfit,sans-serif;font-size:1.4rem;display:block}.dashboard-kpi small{color:#3c5f4a;margin-top:3px;font-size:.77rem;display:block}.dashboard-kpi.good{background:linear-gradient(150deg,#f6fff8,#ecf8ef);border-color:#2f7a4b7a}.dashboard-kpi.warn{background:linear-gradient(150deg,#fffaf1,#fdf3de);border-color:#99631e70}.dashboard-capability{color:#1d515b;background:#fafffdd6;border:1px solid #124a421f;border-radius:999px;padding:8px 12px;font-size:.82rem;box-shadow:inset 0 1px #ffffffb3}.dashboard-compliance{gap:8px;margin-top:12px;display:grid}.compliance-item{background:linear-gradient(160deg,#ffffffe6,#f4faf7d6);border:1px solid #124a421f;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex;box-shadow:0 12px 24px #0d2f2614}.compliance-item strong{margin-bottom:4px;display:block}.compliance-item p{color:#355442;margin:0;font-size:.84rem}.compliance-status{white-space:nowrap;border:1px solid #3f645073;border-radius:999px;padding:4px 8px;font-size:.76rem}.compliance-item.ok{border-color:#2f7a4b6b}.compliance-item.attention{border-color:#98611f7a}.dashboard-command-overlay{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#07141699;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dashboard-command-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#fbfefdf5,#eef7f3f0);border:1px solid #fff6;border-radius:22px;gap:10px;width:min(720px,100%);max-height:80vh;padding:16px;display:grid;box-shadow:0 28px 60px #081b1e3d}.dashboard-shortcuts-footnote{margin:0}.dashboard-command-input{font:inherit;background:#fff;border:1px solid #2f5a6554;border-radius:10px;padding:11px}.dashboard-command-input:focus{outline-offset:1px;border-color:#0a7f46;outline:2px solid #0a7f4680}.dashboard-command-list{gap:6px;display:grid;overflow:auto}.dashboard-command-item{background:#fff;border:1px solid #2f5a654d;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:7px 8px;display:flex}.dashboard-command-item.active{border-color:#13856f7f;box-shadow:0 0 0 2px #13856f2b}.dashboard-command-main{text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;width:100%;padding:2px}.dashboard-command-pin{font:inherit;cursor:pointer;white-space:nowrap;background:#f9fff9;border:1px solid #2f5a6547;border-radius:999px;padding:4px 8px;font-size:.75rem}.dashboard-command-pin.pinned{color:#13856f;background:#ecf9f5;border-color:#13856f}.dashboard-command-item strong{display:block}.dashboard-command-item small{color:#3d5d49}.dashboard-command-recent{border-top:1px dashed #3f66524d;padding-top:8px}.shortcut-card h3{margin:0}.shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.shortcut-grid p{color:#2d4f3a;align-items:center;gap:6px;margin:0;font-size:.9rem;display:flex}.dashboard-mobile-dock{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:55;background:#fcfdfcd1;border:1px solid #ffffff61;border-radius:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:min(560px,100% - 24px);padding:8px;display:none;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 18px 40px #0921232e}.dashboard-mobile-dock .pill-btn{width:100%;padding:8px 10px}.schedule-board{background:linear-gradient(160deg,#ffffffdb,#edf7f3c7);border:1px solid #124a421f;border-radius:22px;padding:12px;overflow:hidden;box-shadow:0 16px 30px #0b2b231a}.schedule-board-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.schedule-board-controls{flex-wrap:wrap;gap:8px;display:flex}.schedule-week-label{letter-spacing:.06em;color:#145e54;text-transform:uppercase;margin:10px 0 0;font-family:Outfit,sans-serif;font-size:.82rem}.schedule-grid{background:#ffffffd1;border:1px solid #124a4229;border-radius:18px;grid-template-columns:62px repeat(7,minmax(120px,1fr));margin-top:12px;display:grid;overflow:auto;box-shadow:inset 0 1px #ffffffbd}.schedule-grid-corner{z-index:4;color:#2a5d54;background:linear-gradient(#f2fbf7,#e9f6f0);border-bottom:1px solid #124a422e;border-right:1px solid #124a422e;padding:8px;font-size:.78rem;font-weight:700;position:sticky;left:0}.schedule-grid-dayhead{background:linear-gradient(#f8fcfaf5,#ecf7f2f5);border-bottom:1px solid #124a4229;border-right:1px solid #124a421a;padding:8px}.schedule-grid-dayhead strong{text-transform:uppercase;letter-spacing:.08em;color:#115d53;font-size:.72rem;display:block}.schedule-grid-dayhead small{color:#3f636b;font-weight:600}.schedule-grid-time{z-index:3;color:#2f665d;background:#f6fcf9f0;border-top:1px solid #124a421a;border-right:1px solid #124a4229;padding:8px;font-size:.78rem;font-weight:600;position:sticky;left:0}.schedule-grid-cell{background:linear-gradient(#fffffff0,#fafdfceb),repeating-linear-gradient(0deg,#104b4308 0 1px,#104b4300 1px 22px);border-top:1px solid #124a4214;border-right:1px solid #124a4212;align-content:start;gap:4px;min-height:70px;padding:4px;display:grid}.schedule-slot-hit{color:#1b6459;cursor:pointer;background:linear-gradient(135deg,#f8fffd,#eaf7f2);border:1px dashed #124a4266;border-radius:999px;justify-self:end;width:22px;height:22px;font-weight:700;transition:transform .16s,box-shadow .16s,border-color .16s}.schedule-slot-hit:hover{background:linear-gradient(135deg,#eef8f3,#def4ec);border-color:#12856f9e;transform:translateY(-1px);box-shadow:0 8px 14px #093e3426}.schedule-event-pill{text-align:left;cursor:pointer;font:inherit;border:1px solid #0000;border-radius:12px;gap:2px;padding:6px;font-size:.76rem;line-height:1.25;transition:transform .16s,box-shadow .16s;display:grid}.schedule-event-card{gap:5px;display:grid}.schedule-event-card .schedule-event-pill{width:100%}.schedule-event-pill:hover{transform:translateY(-1px);box-shadow:0 10px 16px #0c2e2624}.schedule-event-meta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.schedule-event-inline-link{color:inherit;text-underline-offset:2px;font-weight:700;text-decoration:underline;text-decoration-thickness:1px}.schedule-event-inline-link:hover{text-decoration-thickness:2px}.schedule-event-actions{flex-wrap:wrap;gap:5px;display:flex}.schedule-event-action{color:#184d43;font:inherit;cursor:pointer;background:#ffffffd1;border:1px solid #124a4224;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:700;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 8px 14px #0c2e2614}.schedule-event-action:hover{border-color:#13856f66;transform:translateY(-1px);box-shadow:0 12px 18px #0c2e261f}.schedule-event-action:focus-visible,.schedule-event-inline-link:focus-visible{outline-offset:2px;outline:2px solid #13856fa3}.schedule-event-pill span{opacity:.95;font-weight:700}.schedule-event-pill strong{font-size:.78rem}.schedule-event-pill small{opacity:.9;font-size:.72rem}.schedule-event-pill.driving{color:#0f5c4a;background:linear-gradient(160deg,#e8f8f3,#dcf2ea);border-color:#17a3817a}.schedule-event-pill.step2{color:#715611;background:linear-gradient(160deg,#f8f4e6,#f3ebd4);border-color:#be97406e}.schedule-event-pill.step3{color:#7b3f11;background:linear-gradient(160deg,#f6ede2,#f3e4d3);border-color:#cc84496e}.schedule-event-pill.course{color:#2a4586;background:linear-gradient(160deg,#ecf1fb,#e0e9fb);border-color:#5f7fcb70}.schedule-event-pill.other{color:#2d5157;background:linear-gradient(160deg,#eef3f4,#e3ebed);border-color:#5b7a8068}.schedule-legend{background:#f8fdfbe0;border:1px solid #124a421a;border-radius:14px;flex-wrap:wrap;gap:10px;margin-top:10px;padding:8px;display:flex}.schedule-dot{border:1px solid #0000;border-radius:999px;padding:6px 11px;font-size:.78rem;font-weight:600;box-shadow:0 8px 14px #0c2e261a}.schedule-dot.driving{color:#0f5c4a;background:#e8f8f3;border-color:#17a38166}.schedule-dot.step2{color:#715611;background:#f8f4e6;border-color:#be974055}.schedule-dot.step3{color:#7b3f11;background:#f6ede2;border-color:#cc844955}.schedule-dot.course{color:#2a4586;background:#ecf1fb;border-color:#5f7fcb55}.duration-presets{flex-wrap:wrap;gap:8px;margin:10px 0 4px;padding:2px;display:flex}.duration-chip{cursor:pointer;font:inherit;background:linear-gradient(135deg,#fffffff0,#f0f8f5eb);border:1px solid #124a4224;border-radius:999px;padding:7px 11px;font-size:.82rem;font-weight:600;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 8px 14px #0c2e2614}.duration-chip:hover{transform:translateY(-1px);box-shadow:0 12px 18px #0c2e261f}.duration-chip.active{background:linear-gradient(135deg,#ecf9f5,#dbf2e9);border-color:#13856fa3;box-shadow:0 0 0 2px #13856f29,0 12px 20px #0c2e261f}.schedule-selection-card{background:linear-gradient(160deg,#ffffffe6,#f0f8f5d6);border:1px solid #124a421f;border-radius:18px;margin-top:12px;padding:12px;box-shadow:0 14px 24px #0d2f2614}kbd{color:#274938;white-space:nowrap;background:#f8fff9;border:1px solid #3f66525e;border-bottom-width:2px;border-radius:6px;padding:2px 6px;font-family:Space Grotesk,sans-serif;font-size:.72rem}.obok-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.brand{letter-spacing:.14em;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:800}.brand-with-logo{align-items:center;gap:10px;display:inline-flex}.brand-logo{filter:drop-shadow(0 3px 8px #17342433);border-radius:8px;flex:none;width:28px;min-width:28px;max-width:28px;height:28px;min-height:28px;max-height:28px;display:block}.login-shell{place-items:center;min-height:100vh;display:grid}.login-panel{width:min(700px,100%)}.login-brand-wrap{justify-content:center;margin-bottom:12px;display:flex}.login-brand{font-size:clamp(1.25rem,2.8vw,1.7rem)}.login-card{margin:0}.login-card-top{justify-content:flex-end;margin-bottom:8px;display:flex}.pill{background:linear-gradient(135deg,#fffffff0,#f4fbf8eb);border:1px solid #124a421f;border-radius:999px;padding:8px 14px;font-size:.86rem;font-weight:600;transition:background .2s,transform .2s,box-shadow .2s;box-shadow:0 10px 18px #0e342214}.pill:hover{background:#fff;transform:translateY(-1px);box-shadow:0 14px 24px #0e34221f}.pill-btn{cursor:pointer;font:inherit;background:linear-gradient(135deg,#fffffff5,#f1f8f5f0);border:1px solid #124a421f;border-radius:999px;padding:8px 13px;font-weight:600;box-shadow:0 10px 18px #0e342214}.row-actions{align-items:center;gap:8px;display:flex}.muted{color:#496760;margin:4px 0}.hero{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);background:radial-gradient(circle at 0 0,#12856f1f 0,#12856f00 28%),linear-gradient(160deg,#ffffffe6,#f3f8f6d1);border:1px solid #ffffff8f;border-radius:28px;padding:30px;animation:.65s ease-out rise}.hero h1{letter-spacing:-.02em;margin:0 0 8px;font-family:Outfit,sans-serif;font-size:clamp(1.7rem,3.6vw,3.2rem)}.hero p{color:var(--ink-soft);max-width:74ch;margin:0;line-height:1.55}.cta-row{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:14px;padding:12px 16px;font-weight:700;transition:transform .2s,box-shadow .2s,border-color .2s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px #1633212b}.btn-primary{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);color:#fff;box-shadow:0 16px 28px #0a6d5f47}.btn-secondary{background:#ffffffe6;border-color:#124a421f;box-shadow:0 12px 22px #0e342214}.grid{grid-template-columns:repeat(12,1fr);gap:12px;margin-top:18px;display:grid}.stats-grid .card{grid-column:span 4}.stat{color:var(--accent);margin:8px 0 0;font-size:1.7rem;font-weight:800}.card{box-shadow:var(--shadow-card);background:radial-gradient(circle at 0 0,#12856f14 0,#12856f00 24%),linear-gradient(170deg,#ffffffe6,#f3f8f6d1);border:1px solid #ffffff94;border-radius:22px;grid-column:span 6;padding:18px;transition:transform .2s,box-shadow .2s;animation:.6s both rise}.card:nth-child(2){animation-delay:.1s}.card:nth-child(3){animation-delay:.18s}.card:nth-child(4){animation-delay:.26s}.card h3{margin:0 0 8px;font-family:Outfit,sans-serif;font-size:1.15rem}.card ul{color:var(--ink-soft);margin:0;padding-left:18px;line-height:1.55}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field span{color:#284f46;font-size:.9rem;font-weight:600}.field input,.field select{font:inherit;background:#ffffffdb;border:1px solid #124a4224;border-radius:14px;padding:11px 12px;box-shadow:inset 0 1px #ffffffa6}.field input:focus,.field select:focus,.compact-input:focus{outline-offset:1px;border-color:#0a7f46;outline:2px solid #0a7f4680}.field.checkbox{flex-direction:row;align-items:center}.field.checkbox input{width:auto}.table-wrap{background:#ffffffb8;border:1px solid #124a421a;border-radius:18px;overflow-x:auto;box-shadow:inset 0 1px #ffffffb3}.support-banner{background:linear-gradient(135deg,#ffffffe6,#ecf8f2db);border:1px solid #124a421f;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex;box-shadow:0 14px 26px #0d2f2614}.compact-input{width:100%;min-width:110px;font:inherit;background:#ffffffdb;border:1px solid #124a4224;border-radius:12px;padding:7px 8px}table{border-collapse:collapse;width:100%;min-width:740px;margin-top:0}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #43654f29;padding:12px 10px}th{color:#284637;text-transform:uppercase;letter-spacing:.08em;background:#f4faf7e0;font-size:.78rem}tbody tr:hover{background:#eef8f28a}.mini-list{color:#2c4736;margin:10px 0 0;padding-left:16px;line-height:1.5}.error-box{color:#7b1f1f;background:#fff0ef;border:1px solid #a24a49;border-radius:10px;padding:10px}.security-note{color:#244434;background:#f5fbf8;border:1px solid #2f5a6551;border-radius:10px;margin-top:10px;padding:10px 12px}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.status-chip{background:linear-gradient(160deg,#ffffffeb,#f2f9f6d6);border:1px solid #124a421f;border-radius:16px;padding:12px;box-shadow:0 12px 20px #0d2f2614}.status-chip strong{color:var(--accent);margin-bottom:4px;display:block}.settings-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.settings-calendar-card{background:linear-gradient(160deg,#ffffffe6,#f2f9f6d6);border:1px solid #124a421f;border-radius:18px;gap:8px;padding:12px;display:grid;box-shadow:0 12px 20px #0d2f2614}.settings-calendar-card h4{margin:0;font-family:Outfit,sans-serif}.student-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.student-feature-tile{background:linear-gradient(160deg,#ffffffeb,#f1f9f6d6);border:1px solid #124a421f;border-radius:18px;gap:8px;padding:12px;display:grid;box-shadow:0 12px 20px #0d2f2614}.student-feature-tile strong{color:#15422c}.payment-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.payment-status-card{background:linear-gradient(160deg,#ffffffeb,#f1f9f6d6);border:1px solid #124a421f;border-radius:18px;padding:12px;box-shadow:0 12px 20px #0d2f2614}.payment-status-card strong{color:#18442e;margin-bottom:4px;display:block}.role-access-summary{background:linear-gradient(160deg,#fcfffee6,#eef7f3d1);border:1px solid #124a421a;border-radius:20px;margin-top:14px;padding:12px;box-shadow:inset 0 1px #ffffffa3}.role-access-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px;display:grid}.role-access-card{background:linear-gradient(160deg,#ffffffeb,#f1f9f6d6);border:1px solid #124a421f;border-radius:18px;padding:13px;box-shadow:0 12px 20px #0d2f2614}.role-access-card strong{color:#1a4d3f;margin-bottom:7px;display:block}.role-access-card.good{background:linear-gradient(155deg,#f6fff8,#ecf8ef);border-color:#2f7a4b73}.role-access-card.warn{background:linear-gradient(155deg,#fffaf1,#fdf3de);border-color:#99631e70}.role-access-card.neutral{background:linear-gradient(155deg,#f8fefe,#eef6f7);border-color:#2f5a6550}.role-access-list{color:#2c4f3d;gap:6px;margin:0;padding-left:18px;font-size:.9rem;display:grid}.future-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.future-card{background:radial-gradient(circle at 18% 6%,#ffffffc7 0,#fff0 48%),linear-gradient(162deg,#f6fdfa,#e8f7f1);border:1px solid #124a421f;border-radius:20px;gap:8px;padding:14px;display:grid;box-shadow:0 18px 30px #0f3f2f1a}.future-card h3{color:#15483a;margin:0;font-family:Outfit,sans-serif}.future-card .muted{margin:0}.booking-widget-shell{justify-content:center;align-items:center;min-height:100vh;padding:22px 14px;display:flex}.booking-widget-stage{grid-template-columns:330px minmax(0,1fr);gap:16px;width:min(1120px,100%);display:grid}.booking-widget-hero{color:#eefcf6;background:radial-gradient(circle at 12% 14%,#ffffff6e 0,#fff0 30%),linear-gradient(170deg,#0f7d68 0%,#0f6f59 42%,#185243 100%);border:1px solid #1c6f6048;border-radius:22px;gap:12px;padding:18px;animation:.42s booking-fade-up;display:grid;box-shadow:0 22px 46px #0c3f342e}.booking-widget-hero .muted{color:#d9f2ea}.booking-widget-hero h1{margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.3rem,2vw,1.9rem)}.booking-widget-card{border:1px solid var(--line);background:#fffffff2;border-radius:22px;padding:18px;animation:.52s booking-fade-up;box-shadow:0 14px 34px #0d36292b}.booking-widget-kicker{letter-spacing:.08em;text-transform:uppercase;color:#d7f4eb;margin:0;font-size:.72rem;font-weight:700}.booking-widget-card .booking-widget-kicker{color:#1f6d5f;letter-spacing:.04em}.booking-widget-schoolline{background:linear-gradient(160deg,#f7fffb,#edf7f3);border:1px solid #1a6f6038;border-radius:12px;gap:4px;margin-top:6px;padding:10px;display:grid}.booking-widget-schoolline span{color:#215244;font-size:.88rem}.booking-widget-card h1,.booking-widget-card h2,.booking-widget-card h3{color:#163d33;margin:0;font-family:Outfit,sans-serif}.booking-widget-form{gap:10px;margin-top:12px;display:grid}.booking-widget-block{background:#fff;border:1px solid #1f5d5030;border-radius:14px;gap:8px;padding:12px;display:grid}.booking-widget-grid{gap:10px;display:grid}.booking-widget-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-widget-grid.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-chip-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.booking-chip{text-align:left;font:inherit;cursor:pointer;color:#1d4c40;background:linear-gradient(170deg,#f8fdfa,#f2faf7);border:1px solid #2a6a5b44;border-radius:12px;gap:3px;padding:9px;display:grid}.booking-chip small{color:#2f705f}.booking-chip.active{background:linear-gradient(170deg,#ecfaf4,#ddf3ec);border-color:#13856f8c;box-shadow:0 0 0 2px #13856f26}.booking-time-row{flex-wrap:wrap;gap:7px;display:flex}.booking-time-chip{font:inherit;color:#1f5d4f;cursor:pointer;background:#f7fffb;border:1px solid #23695b4f;border-radius:999px;padding:6px 11px}.booking-time-chip.active{color:#0f5648;background:#e2f4ee;border-color:#13856f}.booking-submit-btn{width:100%;margin-top:4px;padding:12px 14px}.booking-widget-form textarea{resize:vertical;min-height:74px}.booking-ticket-card{color:#1f4d41;background:#f5fffbd1;border:1px dashed #b7e0d5;border-radius:14px;margin-top:8px;padding:12px}.booking-ticket-head{justify-content:space-between;align-items:center;font-family:Outfit,sans-serif;display:flex}.booking-ticket-head span{background:#ffffffbd;border:1px solid #2d6f6045;border-radius:999px;padding:3px 8px;font-size:.78rem}.booking-ticket-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 0;display:grid}.booking-ticket-card dt{opacity:.8;font-size:.72rem}.booking-ticket-card dd{margin:2px 0 0;font-weight:600}.booking-widget-badges{flex-wrap:wrap;gap:8px;display:flex}.booking-widget-badges span{color:#1c4f41;background:#e9faf4;border:1px solid #b4ddd0;border-radius:999px;padding:5px 10px;font-size:.78rem}@keyframes booking-fade-up{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes live-pulse{0%{box-shadow:0 0 #0fa98b85}70%{box-shadow:0 0 0 8px #0fa98b00}to{box-shadow:0 0 #0fa98b00}}.role-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px;display:grid}.role{border:1px solid var(--line);background:#fffffff0;border-radius:12px;padding:10px}.role strong{color:var(--accent);margin-bottom:4px;display:block}footer{color:#2a4131;margin:20px 0 10px;font-size:.9rem}.dashboard-sidebar{background:radial-gradient(circle at 0 0,#3ed6ad2e 0,#3ed6ad00 26%),linear-gradient(#082e33f5 0%,#0a3d37f0 56%,#124842eb 100%);border-radius:28px;padding:18px;box-shadow:0 24px 48px #051c1f57}.dashboard-topbar{z-index:16;box-shadow:var(--shadow-soft);border-radius:28px;position:sticky;top:12px}.dashboard-shell-brand,.dashboard-topbar-main>.brand-with-logo{align-items:center;gap:10px;line-height:1;display:inline-flex}.dashboard-shell-brand{letter-spacing:.11em;font-size:.95rem}.dashboard-topbar-main>.brand-with-logo{background:linear-gradient(135deg,#fffffff7,#edf7f3f2);border:1px solid #124a4224;border-radius:999px;padding:5px 11px 5px 8px;box-shadow:0 10px 20px #0e3b3314}.dashboard-shell-brand .brand-logo,.dashboard-topbar-main>.brand-with-logo .brand-logo{flex:none;width:clamp(22px,1.4vw,28px)!important;min-width:clamp(22px,1.4vw,28px)!important;max-width:clamp(22px,1.4vw,28px)!important;height:clamp(22px,1.4vw,28px)!important;min-height:clamp(22px,1.4vw,28px)!important;max-height:clamp(22px,1.4vw,28px)!important}.dashboard-shell-brand>span,.dashboard-topbar-main>.brand-with-logo>span{letter-spacing:.1em;font-size:.92rem;font-weight:800}.dashboard-mobile-menu-trigger{display:none}.dashboard-tool-btn{background:linear-gradient(135deg,#fffffff5,#f1f8f5f0)}.dashboard-tabs{scrollbar-width:thin;background:#ffffffb3;border:1px solid #124a421a;border-radius:999px;margin-top:14px;padding:3px;overflow-x:auto}.dashboard-tab{background:0 0;border-color:#0000;flex:none;padding:9px 14px}.dashboard-tab.active{background:linear-gradient(135deg,#f1fdf8,#e1f6ef);border-color:#13856f47;box-shadow:0 10px 20px #0e3b3314}.dashboard-kpi{background:linear-gradient(160deg,#ffffffeb,#f1f9f6d6);border-radius:20px;padding:14px}.card{box-shadow:var(--shadow-card);background:radial-gradient(circle at 0 0,#12856f14 0,#12856f00 24%),linear-gradient(170deg,#ffffffe6,#f3f8f6d1);border-radius:22px}.card:hover{transform:translateY(-1px);box-shadow:0 18px 34px #0c2b221f}.error-box{background:linear-gradient(#fff7f6,#ffeceb);border-color:#b44543;box-shadow:0 4px 12px #b4454314}.schedule-grid{scroll-snap-type:x proximity;border-radius:16px}.schedule-grid-dayhead,.schedule-grid-cell{scroll-snap-align:start}.schedule-grid-cell{min-height:82px}.schedule-grid-cell.clickable{cursor:pointer}.schedule-grid-cell.clickable:hover{background:linear-gradient(#f8fffd,#eff8f4)}.schedule-grid-cell.clickable:focus-visible{outline-offset:-2px;outline:2px solid #13856f8f}.schedule-slot-hit{width:25px;height:25px}.dashboard-mobile-backdrop{display:none}.dashboard-mobile-tab{text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#fff;border:1px solid #2f5a6542;border-radius:12px;padding:8px;font-size:.78rem;overflow:hidden}.dashboard-mobile-tab.active{background:#ecf8f3;border-color:#13856f82}.dashboard-mobile-utility{display:none}.panel-focus{border-color:#13856f7f;box-shadow:0 0 0 2px #13856f2a}.app-flow-strip{background:linear-gradient(160deg,#ffffffe6,#ecf8f2d1);border:1px solid #124a421f;border-radius:20px;margin-top:14px;padding:12px;box-shadow:0 14px 26px #0d2f2614}.flow-step-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:8px;display:grid}.flow-step{text-align:center;background:linear-gradient(160deg,#fffffff0,#f1f9f6d6);border:1px solid #124a4224;border-radius:16px;padding:11px;font-size:.84rem;font-weight:600;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 10px 18px #0d2f2614}.flow-step:hover{background:#fff;border-color:#13856f70;transform:translateY(-1px);box-shadow:0 14px 24px #0d2f261f}.day-planner-card{background:linear-gradient(160deg,#ffffffe6,#ecf8f2d1);border:1px solid #124a421f;border-radius:20px;margin-top:14px;padding:12px;box-shadow:0 14px 26px #0d2f2614}.day-planner-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.day-planner-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.day-planner-tile{background:linear-gradient(160deg,#fffffff0,#f1f9f6d6);border:1px solid #124a421f;border-radius:16px;padding:12px;box-shadow:0 10px 18px #0d2f2614}.day-planner-tile strong{color:#0f5a4f;margin-bottom:4px;display:block}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes surface-enter{0%{opacity:0;filter:blur(1.5px);transform:translateY(10px)scale(.995)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes module-enter{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.dashboard-topbar,.dashboard-sidebar,.hero{animation:.5s ease-out both surface-enter}.dashboard-kpi,.compliance-item,.future-card,.flow-step,.day-planner-tile,.status-chip,.role-access-card,.student-feature-tile,.payment-status-card,.settings-calendar-card,.dashboard-sidebar-link,.dashboard-sidebar-command-link{animation:.42s ease-out both module-enter}.dashboard-kpi:nth-child(2),.compliance-item:nth-child(2),.future-card:nth-child(2),.flow-step:nth-child(2),.day-planner-tile:nth-child(2),.status-chip:nth-child(2),.role-access-card:nth-child(2),.student-feature-tile:nth-child(2),.payment-status-card:nth-child(2),.settings-calendar-card:nth-child(2),.dashboard-sidebar-link:nth-child(2),.dashboard-sidebar-command-link:nth-child(2){animation-delay:60ms}.dashboard-kpi:nth-child(3),.compliance-item:nth-child(3),.future-card:nth-child(3),.flow-step:nth-child(3),.day-planner-tile:nth-child(3),.status-chip:nth-child(3),.role-access-card:nth-child(3),.student-feature-tile:nth-child(3),.payment-status-card:nth-child(3),.settings-calendar-card:nth-child(3),.dashboard-sidebar-link:nth-child(3),.dashboard-sidebar-command-link:nth-child(3){animation-delay:.12s}.dashboard-kpi:nth-child(4),.compliance-item:nth-child(4),.future-card:nth-child(4),.flow-step:nth-child(4),.day-planner-tile:nth-child(4),.status-chip:nth-child(4),.role-access-card:nth-child(4),.student-feature-tile:nth-child(4),.payment-status-card:nth-child(4),.settings-calendar-card:nth-child(4),.dashboard-sidebar-link:nth-child(4),.dashboard-sidebar-command-link:nth-child(4){animation-delay:.18s}.dashboard-kpi,.compliance-item,.future-card,.flow-step,.day-planner-tile,.status-chip,.role-access-card,.student-feature-tile,.payment-status-card,.settings-calendar-card{transition:transform .18s,box-shadow .18s,border-color .18s}.dashboard-kpi:hover,.compliance-item:hover,.future-card:hover,.flow-step:hover,.day-planner-tile:hover,.status-chip:hover,.role-access-card:hover,.student-feature-tile:hover,.payment-status-card:hover,.settings-calendar-card:hover{transform:translateY(-2px);box-shadow:0 18px 28px #0a2a2224}.dashboard-command-item{transition:transform .16s,box-shadow .16s,border-color .16s}.dashboard-command-item:hover{border-color:#13856f5c;transform:translateY(-1px);box-shadow:0 10px 18px #0a2a221f}.pill:focus-visible,.pill-btn:focus-visible,.btn:focus-visible,.dashboard-status-pill:focus-visible,.dashboard-sidebar-link:focus-visible,.dashboard-sidebar-command-link:focus-visible,.dashboard-tab:focus-visible,.dashboard-quick-chip:focus-visible,.duration-chip:focus-visible,.dashboard-command-item:focus-within,.schedule-slot-hit:focus-visible,.schedule-event-pill:focus-visible{outline-offset:2px;outline:2px solid #13856fa3}.table-wrap td,.table-wrap th,.table-wrap tbody tr{transition:background-color .16s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.dashboard-live-dot{animation:none!important}}@media (max-width:900px){.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{z-index:70;max-height:calc(100vh - 24px);display:none;position:fixed;top:12px;left:12px;right:12px;overflow:auto}.dashboard-sidebar.mobile-open{display:block}.dashboard-mobile-backdrop{z-index:65;cursor:pointer;background:#0f1f194f;border:0;display:block;position:fixed;inset:0}.dashboard-mobile-menu-trigger{align-items:center;display:inline-flex}.dashboard-tool-advanced{display:none}.dashboard-topbar{position:static}.dashboard-topbar-main>.brand-with-logo{padding:4px 9px 4px 6px}.dashboard-topbar-main>.brand-with-logo>span{letter-spacing:.08em;font-size:.84rem}.dashboard-tabs{z-index:15;position:sticky;top:8px}.dashboard-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.shortcut-grid{grid-template-columns:1fr}.card{grid-column:span 12}.stats-grid .card{grid-column:span 6}.form-grid{grid-template-columns:1fr}.role-grid{grid-template-columns:repeat(2,1fr)}.status-grid,.settings-calendar-grid,.student-feature-grid,.payment-status-grid,.role-access-grid,.future-hub-grid{grid-template-columns:1fr}.booking-widget-form{gap:10px}.booking-widget-stage,.booking-widget-grid.two-col,.booking-widget-grid.three-col,.booking-chip-row{grid-template-columns:1fr}.schedule-grid{grid-template-columns:56px repeat(7,minmax(144px,1fr))}.dashboard-mobile-dock{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.dashboard-mobile-utility{justify-content:center;align-items:center;width:100%;font-size:.78rem;display:inline-flex}.flow-step-list{grid-template-columns:repeat(2,minmax(0,1fr))}.day-planner-grid{grid-template-columns:1fr}}@media (max-width:560px){.obok-shell{padding:16px}.booking-widget-shell{padding:14px 10px}.booking-widget-hero,.booking-widget-card{border-radius:16px;padding:14px}.booking-ticket-card dl,.flow-step-list{grid-template-columns:1fr}.login-shell{align-items:start;min-height:auto}.hero{padding:20px}.role-grid{grid-template-columns:1fr}.stats-grid .card{grid-column:span 12}.support-banner{flex-direction:column;align-items:flex-start}.dashboard-topbar{padding:14px}.dashboard-topbar-tools{gap:6px}.dashboard-status-rail{gap:6px;margin-top:10px}.dashboard-status-pill{justify-content:flex-start;width:100%}.dashboard-topbar-tools .pill-btn{justify-content:space-between;align-items:center;width:100%;display:inline-flex}.dashboard-profile-menu-wrap{width:100%;margin-left:0}.dashboard-profile-trigger{justify-content:space-between;width:100%}.dashboard-profile-menu{width:100%;left:0;right:auto}.dashboard-quick-chip{justify-content:space-between;width:100%}.dashboard-command-item{flex-direction:column;align-items:flex-start}.dashboard-command-pin{align-self:flex-start}.dashboard-mobile-dock{bottom:calc(10px + env(safe-area-inset-bottom));display:grid}.dashboard-kpi-strip{grid-template-columns:1fr}.compliance-item{flex-direction:column;align-items:flex-start}.compact-input{min-width:92px}.schedule-grid{grid-template-columns:52px repeat(7,minmax(170px,1fr))}.dashboard-main{padding-bottom:88px}}:root{--surface-1:#ffffffe0;--surface-2:#f8fdfae6;--surface-accent:linear-gradient(145deg, #0f77651a, #d7822717);--radius-xl:24px}.dashboard-topbar{border-color:#ffffffa8;border-radius:30px;box-shadow:0 28px 50px #0f393e24}.dashboard-headline h1{letter-spacing:-.03em}.dashboard-status-pill{background:#ffffffeb;border-color:#0f574d33}.card{border-radius:var(--radius-xl);background:var(--surface-1);border:1px solid #10463f1c;box-shadow:0 16px 38px #0b38301a}.future-card,.role-access-card,.student-feature-tile,.day-planner-tile,.dashboard-kpi,.dashboard-tab,.dashboard-sidebar-command-link{border-radius:18px}.dashboard-tab{background:var(--surface-2);border:1px solid #11584e21;transition:transform .16s,box-shadow .16s,border-color .16s}.dashboard-tab:hover{border-color:#11584e38;transform:translateY(-1px);box-shadow:0 10px 20px #0c352d1a}.dashboard-tab.active{background:var(--surface-accent);border-color:#0e6c5b57}.dashboard-kpi{background:linear-gradient(140deg,#fffffff5,#f1faf6eb);border:1px solid #114e461f}.dashboard-kpi strong{letter-spacing:-.02em;font-family:Outfit,sans-serif}.table-wrap{background:#ffffffc2;border:1px solid #10453d1f;border-radius:18px}table thead th{color:#0e4a41;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(#11695b17,#11695b08);font-size:.78rem}table tbody tr:hover{background:#147e6b12}.learning-overview-card{background:radial-gradient(circle at 8% 16%,#16987d2e,#16987d00 28%),radial-gradient(circle at 90% 20%,#dc8b2729,#dc8b2700 30%),linear-gradient(145deg,#fffffff2,#f4fbf7f0);border-color:#0d675833}.learning-overview-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.learning-overview-badge{color:#0f5f51;background:#edfbf6e6;border:1px solid #0d67583d;border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:700}.learning-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.learning-overview-tile{background:#ffffffd6;border:1px solid #105a4e24;border-radius:16px;padding:12px}.learning-overview-tile strong{color:#0f4f45;letter-spacing:.02em;text-transform:uppercase;font-size:.82rem;display:block}.learning-overview-tile p{letter-spacing:-.01em;margin:8px 0 0;font-family:Outfit,sans-serif;font-size:1rem}.learning-overview-tile.warn{background:#fff5e5e6;border-color:#a05a0042}@media (max-width:980px){.learning-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.learning-overview-head{flex-direction:column;align-items:flex-start}.learning-overview-grid{grid-template-columns:1fr}}.obok-shell .dashboard-layout{grid-template-columns:286px minmax(0,1fr);align-items:start;gap:20px;display:grid}.obok-shell .dashboard-layout.sidebar-hidden{grid-template-columns:minmax(0,1fr)}.obok-shell .dashboard-main{width:100%;min-width:0}.obok-shell .dashboard-sidebar{z-index:12;position:sticky;top:12px}.obok-shell .dashboard-topbar{z-index:16;position:sticky;top:12px}.obok-shell .dashboard-kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.obok-shell .dashboard-tabs{flex-wrap:wrap;gap:8px;display:flex}.obok-shell .card{border-radius:22px}@media (max-width:900px){.obok-shell .dashboard-layout{grid-template-columns:1fr}.obok-shell .dashboard-sidebar{z-index:70;max-height:calc(100vh - 24px);display:none;position:fixed;top:12px;left:12px;right:12px;overflow:auto}.obok-shell .dashboard-sidebar.mobile-open{display:block}.obok-shell .dashboard-topbar{position:static}.obok-shell .dashboard-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.obok-shell .dashboard-kpi-strip{grid-template-columns:1fr}.obok-shell .dashboard-main{padding-bottom:88px}}:root{--fusion-bg:#f4f7fb;--fusion-surface:#fff;--fusion-surface-muted:#f8fafd;--fusion-ink:#1f2937;--fusion-ink-soft:#5f6f85;--fusion-primary:#2563eb;--fusion-primary-soft:#dbeafe;--fusion-border:#d7e0ec;--fusion-shadow:0 10px 28px #0f172a14}body{color:var(--fusion-ink);background:radial-gradient(circle at 6% 9%, #2563eb14 0, #2563eb00 24%), radial-gradient(circle at 94% 14%, #05966912 0, #05966900 28%), linear-gradient(180deg, #f7f9fd 0%, var(--fusion-bg) 100%)}.dashboard-sidebar{color:var(--fusion-ink);border:1px solid var(--fusion-border);box-shadow:var(--fusion-shadow);background:linear-gradient(#fff 0%,#f8fbff 100%)}.dashboard-shell-title,.dashboard-sidebar-section-title,.dashboard-shell-subtitle,.dashboard-sidebar-tenant,.dashboard-sidebar-command-link small{color:var(--fusion-ink-soft)}.dashboard-sidebar-link,.dashboard-sidebar-command-link{color:var(--fusion-ink);background:var(--fusion-surface);border:1px solid var(--fusion-border)}.dashboard-sidebar-link:hover,.dashboard-sidebar-command-link:hover{background:var(--fusion-surface-muted);border-color:#b7c6db}.dashboard-sidebar-link.active{background:linear-gradient(135deg, var(--fusion-primary-soft), #eef4ff);box-shadow:inset 3px 0 0 var(--fusion-primary);border-color:#90b4ff}.dashboard-topbar,.hero,.card,.table-wrap,.dashboard-kpi,.status-chip,.compliance-item,.future-card,.settings-calendar-card,.student-feature-tile,.payment-status-card,.role-access-card{background:var(--fusion-surface);border:1px solid var(--fusion-border);box-shadow:var(--fusion-shadow)}.dashboard-headline h1,.hero h1,.card h3{color:#0f172a;letter-spacing:-.02em}.dashboard-headline p,.muted,.card ul,.hero p{color:var(--fusion-ink-soft)}.dashboard-tabs{border:1px solid var(--fusion-border);background:#f1f5fb;border-radius:14px;gap:6px;padding:5px}.dashboard-tab{background:0 0;border:1px solid #0000;border-radius:10px;font-weight:600}.dashboard-tab:hover{background:#e8eef8;border-color:#d6e0ef}.dashboard-tab.active{color:#103b8c;background:#fff;border-color:#b9cdf6;box-shadow:0 1px #2563eb29}.pill,.pill-btn,.btn-secondary{border:1px solid var(--fusion-border);box-shadow:none;background:#fff}.btn-primary{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);box-shadow:0 10px 20px #2563eb4d}.brand-logo{width:28px;min-width:28px;max-width:28px;height:28px;min-height:28px;max-height:28px}.dashboard-root-shell{padding:16px clamp(12px,2.1vw,28px) 26px}.dashboard-layout{grid-template-columns:268px minmax(0,1fr);gap:12px}.dashboard-sidebar{border-radius:18px;padding:12px}.dashboard-main-header{border-radius:18px;padding:14px}.dashboard-topbar-main{justify-content:space-between}.dashboard-topbar-main>.brand-with-logo{border:1px solid var(--fusion-border);background:#fff;border-radius:10px;padding:6px 10px}.dashboard-workspace-stage{border:1px solid var(--fusion-border);box-shadow:var(--fusion-shadow);background:linear-gradient(#fff 0%,#fbfdff 100%);border-radius:18px;gap:10px;margin-top:10px;padding:12px;display:grid}.dashboard-kpi-strip{gap:8px}.dashboard-kpi{background:linear-gradient(#fff 0%,#f7faff 100%);border:1px solid #dbe3f0;border-radius:12px;padding:12px}.dashboard-kpi strong{font-size:1.18rem}.dashboard-status-rail{margin-top:8px}.dashboard-status-pill{border-radius:8px;padding:5px 8px;font-size:.72rem;font-weight:600}.dashboard-status-pill.live{color:#125949;background:linear-gradient(135deg,#ddf6ea,#e9f8ff)}.dashboard-actions,.dashboard-topbar-tools,.dashboard-capabilities{gap:7px}.dashboard-tab{align-items:center;gap:6px;min-height:36px;display:inline-flex}.dashboard-tab kbd,.dashboard-sidebar-link kbd{opacity:.75;background:#edf2fa;border-color:#c6d2e5}.dashboard-sidebar-tenant-card,.dashboard-quick-access,.dashboard-command-card,.dashboard-profile-menu{border-radius:14px}.dashboard-profile-trigger{border-radius:10px;min-width:220px}.dashboard-profile-menu{box-shadow:0 18px 42px #0f172a24}.dashboard-command-card{width:min(760px,100%)}.dashboard-mobile-dock{border-radius:14px}.app-home-shell{padding-top:18px}.app-home-header{align-items:center;margin-bottom:12px}.app-home-brand-row{align-items:center;gap:8px;display:inline-flex}.app-home-actions{gap:8px;display:inline-flex}.home-env-pill,.home-board-badge,.home-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700}.home-env-pill{border:1px solid var(--fusion-border);background:#fff;border-radius:999px;padding:6px 10px}.home-kicker{color:#2b5aaa;margin:0 0 6px}.home-hero-grid{grid-template-columns:1.35fr .95fr;gap:10px;display:grid}.home-hero-main{border-radius:18px;padding:20px}.home-command-card{border:1px solid var(--fusion-border);box-shadow:var(--fusion-shadow);background:linear-gradient(#fff 0%,#f6faff 100%);border-radius:18px;padding:16px}.home-command-card h3{margin:0;font-family:Outfit,sans-serif;font-size:1.02rem}.home-command-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.home-command-grid div{background:#fff;border:1px solid #dbe4f3;border-radius:12px;padding:10px}.home-command-grid span{color:var(--fusion-ink-soft);font-size:.76rem;display:block}.home-command-grid strong{margin-top:4px;font-size:.9rem;display:block}.home-module-board{margin-top:10px;margin-bottom:6px}.home-module-header{justify-content:space-between;align-items:center;display:flex}.home-module-header h2{margin:0;font-family:Outfit,sans-serif;font-size:1.06rem}.home-board-badge{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:6px 10px}.home-grid .card{border-radius:16px}.home-role-card{border-radius:16px;margin-top:10px}.login-shell-fusion{align-items:center;min-height:100vh;display:grid}.login-layout-grid{grid-template-columns:.92fr 1.08fr;gap:12px;width:min(1140px,100%);margin:0 auto;display:grid}.login-side-panel{color:#eef4ff;background:linear-gradient(170deg,#0f2f59 0%,#153a70 56%,#1c457c 100%);border:1px solid #c7d7ef;border-radius:18px;align-content:start;gap:10px;padding:18px;display:grid;box-shadow:0 22px 48px #0f172a47}.login-side-panel .brand-with-logo span{color:#eef4ff}.login-side-panel .brand-logo{filter:drop-shadow(0 0 #0000)}.login-side-panel h2{margin:0;font-family:Outfit,sans-serif;font-size:clamp(1.2rem,2vw,1.6rem)}.login-side-panel p{color:#d6e6ff;margin:0;line-height:1.55}.login-kicker{color:#9fc3ff;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:700}.login-side-metrics{gap:8px;display:grid}.login-side-metrics div{background:#ffffff0f;border:1px solid #bfdbfe42;border-radius:12px;padding:10px}.login-side-metrics span{color:#bcd4ff;font-size:.74rem;display:block}.login-side-metrics strong{color:#f8fbff;margin-top:4px;font-size:.9rem;display:block}.login-side-panel .pill{color:#eaf2ff;background:#ffffff14;border-color:#bfdbfe80;justify-self:start;margin-top:4px}.login-main-card{border-radius:18px;padding:18px}.login-main-card .form-grid{gap:8px}@media (max-width:1080px){.home-hero-grid,.login-layout-grid{grid-template-columns:1fr}.login-side-panel{order:2}}@media (max-width:900px){.dashboard-layout{grid-template-columns:1fr}.dashboard-workspace-stage{padding:10px}.home-command-grid{grid-template-columns:1fr}}.v3-shell{--v3-bg:#eef3fb;--v3-surface:#fff;--v3-surface-alt:#f6f9ff;--v3-ink:#121a2a;--v3-ink-soft:#5a6780;--v3-primary:#0f62fe;--v3-primary-strong:#0043ce;--v3-teal:#00856a;--v3-line:#d5deee;--v3-shadow:0 8px 26px #0d182d17;--v3-radius:14px}.v3-shell,.v3-shell body{color:var(--v3-ink)}body:has(.v3-shell){background:radial-gradient(circle at 8% 8%, #0f62fe17 0, #0f62fe00 30%), radial-gradient(circle at 92% 12%, #00856a14 0, #00856a00 34%), linear-gradient(180deg, #f8fbff 0%, var(--v3-bg) 100%)}.v3-shell .dashboard-layout{grid-template-columns:250px minmax(0,1fr);gap:10px}.v3-shell .dashboard-sidebar{border-radius:var(--v3-radius);border:1px solid var(--v3-line);color:var(--v3-ink);box-shadow:var(--v3-shadow);background:linear-gradient(#fff 0%,#f6f9ff 100%);padding:10px;top:10px}.v3-shell .dashboard-shell-title,.v3-shell .dashboard-sidebar-section-title,.v3-shell .dashboard-shell-subtitle,.v3-shell .dashboard-sidebar-tenant,.v3-shell .dashboard-sidebar-command-link small,.v3-shell .muted{color:var(--v3-ink-soft)}.v3-shell .dashboard-sidebar-link,.v3-shell .dashboard-sidebar-command-link,.v3-shell .pill,.v3-shell .pill-btn{background:var(--v3-surface);border:1px solid var(--v3-line);color:var(--v3-ink);box-shadow:none;border-radius:10px}.v3-shell .dashboard-sidebar-link.active{box-shadow:inset 3px 0 0 var(--v3-primary);background:linear-gradient(135deg,#edf3ff,#eaf8ff);border-color:#9ab8ff}.v3-shell .dashboard-main-header{border-radius:var(--v3-radius);border:1px solid var(--v3-line);box-shadow:var(--v3-shadow);background:linear-gradient(#fff,#f8fbff);padding:12px}.v3-shell .dashboard-status-pill{background:#f8fbff;border:1px solid #ccd8ee;border-radius:999px;padding:4px 10px;font-size:.72rem}.v3-shell .dashboard-status-pill.live{color:#0a5a4a;background:linear-gradient(135deg,#e9fff9,#e8f3ff);border-color:#8dd3c6}.v3-shell .dashboard-headline h1{color:var(--v3-ink);margin:8px 0 2px;font-family:Outfit,sans-serif;font-size:clamp(1.25rem,1.8vw,1.6rem)}.v3-shell .dashboard-workspace-stage{border:1px solid var(--v3-line);border-radius:var(--v3-radius);box-shadow:var(--v3-shadow);background:linear-gradient(#fff,#fbfdff);gap:9px;padding:10px}.v3-shell .dashboard-kpi{background:linear-gradient(#fff,#f7faff);border:1px solid #d9e3f4;border-radius:10px;padding:10px}.v3-shell .dashboard-kpi strong{font-size:1.08rem}.v3-shell .dashboard-tabs{background:#f4f8ff;border:1px solid #d8e2f2;border-radius:10px;padding:4px}.v3-shell .dashboard-tab{border:1px solid #0000;border-radius:8px;min-height:34px}.v3-shell .dashboard-tab.active{color:#0a3b8a;background:#fff;border-color:#b5cdfb}.v3-shell .dashboard-capability{color:#234b86;background:#f3f8ff;border:1px solid #cfe0ff;border-radius:999px;font-weight:600}.v3-shell .compliance-item,.v3-shell .card,.v3-shell .hero,.v3-shell .table-wrap,.v3-shell .home-command-card,.v3-shell .home-role-card,.v3-shell .home-module-board{border:1px solid var(--v3-line);background:var(--v3-surface);box-shadow:var(--v3-shadow);border-radius:12px}.v3-shell .btn-primary{background:linear-gradient(135deg, var(--v3-primary), var(--v3-primary-strong));border-radius:10px;box-shadow:0 10px 22px #0f62fe47}.v3-shell .btn-secondary{border:1px solid var(--v3-line);background:#fff;border-radius:10px}.v3-shell .field input,.v3-shell .field select,.v3-shell .dashboard-command-input,.v3-shell .compact-input{background:#fff;border:1px solid #cfdcf0;border-radius:10px}.v3-shell .home-hero-grid{grid-template-columns:1.5fr 1fr;gap:10px}.v3-shell .home-command-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.v3-shell .home-command-grid div{background:#fff;border:1px solid #dce6f6;border-radius:10px;padding:8px}.v3-shell .home-kicker,.v3-shell .home-board-badge,.v3-shell .home-env-pill{letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700}.v3-shell .home-board-badge{color:#1f4aa5;background:#eef4ff;border:1px solid #b8cff8;border-radius:999px;padding:5px 10px}.v3-shell .role{background:#f9fbff;border:1px solid #d9e5f6;border-radius:10px}.v3-shell .login-layout-grid{grid-template-columns:1fr 1.1fr;gap:10px;width:min(1180px,100%)}.v3-shell .login-side-panel{background:linear-gradient(175deg,#0f2d57 0%,#173c6e 58%,#1f4b82 100%);border:1px solid #304f8f;border-radius:14px;padding:14px;box-shadow:0 24px 56px #0a142859}.v3-shell .login-main-card{border-radius:14px;padding:14px}.v3-shell .dashboard-main,.v3-shell .login-panel,.v3-shell .home-grid{animation:none}@media (max-width:1024px){.v3-shell .dashboard-layout,.v3-shell .home-hero-grid,.v3-shell .login-layout-grid{grid-template-columns:1fr}}
