.timo-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.timo-icon__svg{overflow:visible}.timo-icon__dot{transform-box:fill-box;transform-origin:center}.timo-icon__center{transform-box:fill-box;transform-origin:center;animation:timoCenter 3s ease-in-out infinite}.timo-icon[data-state=idle] .timo-icon__dot--tl{animation:timoPulse 2.8s ease-in-out infinite 0s}.timo-icon[data-state=idle] .timo-icon__dot--tr{animation:timoPulse 2.8s ease-in-out infinite .7s}.timo-icon[data-state=idle] .timo-icon__dot--bl{animation:timoPulse 2.8s ease-in-out infinite 1.4s}.timo-icon[data-state=idle] .timo-icon__dot--br{animation:timoPulse 2.8s ease-in-out infinite 2.1s}.timo-icon[data-state=hovered] .timo-icon__dot--tl{animation:timoChargeTL .45s cubic-bezier(.22,1,.36,1) forwards,timoChargePulse .7s ease-in-out .45s infinite!important}.timo-icon[data-state=hovered] .timo-icon__dot--tr{animation:timoChargeTR .45s cubic-bezier(.22,1,.36,1) forwards,timoChargePulse .7s ease-in-out .52s infinite!important}.timo-icon[data-state=hovered] .timo-icon__dot--bl{animation:timoChargeBL .45s cubic-bezier(.22,1,.36,1) forwards,timoChargePulse .7s ease-in-out .59s infinite!important}.timo-icon[data-state=hovered] .timo-icon__dot--br{animation:timoChargeBR .45s cubic-bezier(.22,1,.36,1) forwards,timoChargePulse .7s ease-in-out .66s infinite!important}.timo-icon[data-state=hovered] .timo-icon__center{animation:timoCoreCharge .5s ease forwards!important}.timo-icon[data-state=burst] .timo-icon__dot--tl{animation:timoFireTL .28s cubic-bezier(.55,0,1,.45) forwards!important}.timo-icon[data-state=burst] .timo-icon__dot--tr{animation:timoFireTR .28s cubic-bezier(.55,0,1,.45) forwards!important}.timo-icon[data-state=burst] .timo-icon__dot--bl{animation:timoFireBL .28s cubic-bezier(.55,0,1,.45) forwards!important}.timo-icon[data-state=burst] .timo-icon__dot--br{animation:timoFireBR .28s cubic-bezier(.55,0,1,.45) forwards!important}.timo-icon[data-state=burst] .timo-icon__center{animation:timoCoreRelease .28s ease forwards!important}@keyframes timoPulse{0%,to{transform:scale(1);opacity:.82}40%{transform:scale(1.18);opacity:1}70%{transform:scale(.92);opacity:.72}}@keyframes timoCenter{0%,to{transform:scale(1);opacity:.18}50%{transform:scale(1.5);opacity:.38}}@keyframes timoChargeTL{0%{transform:translate(0) scale(1);opacity:.85}to{transform:translate(4.5px,4.5px) scale(1.28);opacity:1}}@keyframes timoChargeTR{0%{transform:translate(0) scale(1);opacity:.85}to{transform:translate(-4.5px,4.5px) scale(1.28);opacity:1}}@keyframes timoChargeBL{0%{transform:translate(0) scale(1);opacity:.85}to{transform:translate(4.5px,-4.5px) scale(1.28);opacity:1}}@keyframes timoChargeBR{0%{transform:translate(0) scale(1);opacity:.85}to{transform:translate(-4.5px,-4.5px) scale(1.28);opacity:1}}@keyframes timoChargePulse{0%,to{opacity:.95;filter:brightness(1)}50%{opacity:1;filter:brightness(1.25)}}@keyframes timoCoreCharge{0%{transform:scale(1);opacity:.18;fill:#ffffff2e}to{transform:scale(3.5);opacity:.9;fill:#fff}}@keyframes timoFireTL{0%{transform:translate(4.5px,4.5px) scale(1.28);opacity:1}70%{transform:translate(7px,7px) scale(.4);opacity:.6}to{transform:translate(7px,7px) scale(0);opacity:0}}@keyframes timoFireTR{0%{transform:translate(-4.5px,4.5px) scale(1.28);opacity:1}70%{transform:translate(-7px,7px) scale(.4);opacity:.6}to{transform:translate(-7px,7px) scale(0);opacity:0}}@keyframes timoFireBL{0%{transform:translate(4.5px,-4.5px) scale(1.28);opacity:1}70%{transform:translate(7px,-7px) scale(.4);opacity:.6}to{transform:translate(7px,-7px) scale(0);opacity:0}}@keyframes timoFireBR{0%{transform:translate(-4.5px,-4.5px) scale(1.28);opacity:1}70%{transform:translate(-7px,-7px) scale(.4);opacity:.6}to{transform:translate(-7px,-7px) scale(0);opacity:0}}@keyframes timoCoreRelease{0%{transform:scale(3.5);opacity:.9}50%{transform:scale(6);opacity:1}to{transform:scale(0);opacity:0}}body[data-ui-theme=dark] .timo-icon__dot{opacity:.9}.umenu{position:relative}.umenu__btn{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.65);background:linear-gradient(180deg,#ffffffc7,#fff9);-webkit-backdrop-filter:blur(8px) saturate(160%);backdrop-filter:blur(8px) saturate(160%);padding:6px 10px;border-radius:12px;cursor:pointer;font-weight:800;box-shadow:inset 0 1px #ffffff8c,0 6px 16px #0206171a;transition:filter .15s ease,transform .06s ease,box-shadow .18s ease,border-color .18s ease}.umenu__btn:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 10px 26px #02061724}.umenu__btn.is-open{outline:2px solid var(--primary, #2d6cdf);outline-offset:0}.umenu__avatar{width:28px;height:28px;border-radius:999px;display:inline-grid;place-items:center;font-weight:900;font-size:12px;background:linear-gradient(180deg,#f0f6ff,#e5efff);color:#1b3a8a;border:1px solid var(--line);overflow:hidden;box-shadow:inset 0 1px #ffffffa6}.umenu__avatar--img{padding:0;background:#fff}.umenu__avatar--img img{width:100%;height:100%;object-fit:cover;display:block}.umenu__email{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.umenu__chev{opacity:.76;display:inline-flex;align-items:center}.umenu__menu--portal{z-index:3001;width:260px;padding:10px;background:linear-gradient(135deg,#ffffffe6,color-mix(in oklab,var(--primary, #2d6cdf) 10%,white));border:1px solid rgba(255,255,255,.78);border-radius:14px;-webkit-backdrop-filter:blur(18px) saturate(185%) contrast(1.06) brightness(1.05);backdrop-filter:blur(18px) saturate(185%) contrast(1.06) brightness(1.05);box-shadow:inset 0 1px #ffffff8c,0 16px 44px #02061729,0 6px 18px #0206171a,0 0 0 1px #02061705;position:relative;overflow:hidden;transform-origin:top right}.umenu__menu--portal:before{content:"";position:absolute;inset:-40% -25% auto;height:58%;background:linear-gradient(110deg,#ffffff80,#fff3,#fff0 60%);mix-blend-mode:screen;opacity:.55;pointer-events:none;transform:translate(-12%) rotate(6deg);animation:umenuShine 8s ease-in-out infinite}.umenu__menu--portal:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(900px 420px at -20% -20%,rgba(255,255,255,.22),transparent 55%),radial-gradient(720px 360px at 120% 120%,rgba(0,0,0,.08),transparent 55%);opacity:.45}.umenu__menu.is-open{animation:umenuPop .18s ease-out}.umenu__mode-badge{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:900;letter-spacing:.01em;padding:6px 10px;margin:2px 2px 8px;border-radius:999px;color:var(--ink, #111);background:linear-gradient(180deg,#fffc,#fff9);border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 0 0 1px #0000000a,0 6px 14px #00000014}.umenu__mode-badge .dot{width:8px;height:8px;border-radius:999px;box-shadow:0 0 0 2px #0000000d}.umenu__mode-badge .dot.group{background:var(--primary, #2d6cdf)}.umenu__mode-badge .dot.solo{background:#10b981}.umenu__mode-badge .label{white-space:nowrap}.umenu__item{width:100%;text-align:left;background:transparent;border:1px solid transparent;cursor:pointer;padding:10px 12px;border-radius:10px;font-weight:750;letter-spacing:.01em;transition:transform .06s ease,background .15s ease,box-shadow .18s ease,border-color .18s ease,color .15s ease;display:inline-flex;align-items:center;gap:10px}.umenu__item:hover{background:#ffffff9e;border-color:#0000000f;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff59,0 8px 18px #0206171f}.umenu__item:active{transform:translateY(0);box-shadow:none}.umenu__item--danger{color:#b71c1c}.umenu__item-icon{width:22px;height:22px;border-radius:8px;display:inline-grid;place-items:center;background:#ffffffa3;border:1px solid rgba(15,23,42,.08);color:color-mix(in oklab,var(--text, #0f172a) 84%,var(--primary, #2d6cdf));flex:0 0 auto}.umenu__item--danger .umenu__item-icon{color:#b71c1c;border-color:#b71c1c2e;background:#fff0f0c2}.umenu__item-label{min-width:0}.umenu__sep{height:1px;margin:6px 0;background:linear-gradient(90deg,transparent,rgba(0,0,0,.07),transparent);opacity:.55}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__btn{color:#dbe7f8;border-color:#94a3b857;background:linear-gradient(180deg,#1e293beb,#0f172adb);box-shadow:inset 0 1px #ffffff14,0 10px 24px #02061766}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__btn:hover{filter:brightness(1.06);box-shadow:inset 0 1px #ffffff1a,0 14px 28px #02061775}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__btn.is-open{outline-color:color-mix(in oklab,var(--primary, #2d6cdf) 64%,#bfdbfe)}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__avatar{color:#dbeafe;background:linear-gradient(180deg,#1e293bf2,#0f172ae0);border-color:#94a3b857;box-shadow:inset 0 1px #ffffff1a}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__avatar--img{background:#0f172ae6}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__email{color:#dbe7f8}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__chev{color:#cbd8ea}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__menu--portal{background:linear-gradient(135deg,#1e293bf0,color-mix(in oklab,var(--primary, #2d6cdf) 18%,rgba(15,23,42,.92)));border-color:#94a3b857;box-shadow:inset 0 1px #ffffff14,0 20px 48px #0206178a,0 8px 18px #02061757}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__menu--portal:before{background:linear-gradient(110deg,#fff3,#ffffff14,#fff0 60%);opacity:.4}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__menu--portal:after{background:radial-gradient(900px 420px at -20% -20%,rgba(148,163,184,.16),transparent 55%),radial-gradient(720px 360px at 120% 120%,rgba(2,6,23,.42),transparent 55%);opacity:.5}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__mode-badge{color:#dbe7f8;background:linear-gradient(180deg,#334155e6,#1e293bd6);border-color:#94a3b857;box-shadow:inset 0 0 0 1px #ffffff14,0 6px 14px #02061757}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__mode-badge .dot{box-shadow:0 0 0 2px #ffffff24}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__item{color:#dbe7f8}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__item:hover{background:#334155a3;border-color:#94a3b847;box-shadow:inset 0 1px #ffffff14,0 10px 20px #02061757}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__item-icon{background:#1e293be0;border-color:#94a3b84d;color:color-mix(in oklab,var(--primary, #2d6cdf) 72%,#dbeafe)}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__item--danger{color:#fecaca}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__item--danger .umenu__item-icon{color:#fecaca;border-color:#f871715c;background:#7f1d1d5c}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .umenu__sep{background:linear-gradient(90deg,transparent,rgba(148,163,184,.3),transparent)}@keyframes umenuPop{0%{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes umenuShine{0%{transform:translate(-18%) rotate(6deg);opacity:.45}50%{transform:translate(18%) rotate(6deg);opacity:.62}to{transform:translate(-18%) rotate(6deg);opacity:.45}}@media (prefers-reduced-transparency: reduce){.umenu__btn{background:#fff;border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none}.umenu__menu--portal{background:#fff;border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 14px 30px #0000001f}}@media (prefers-reduced-motion: reduce){.umenu__menu.is-open{animation:none}.umenu__menu--portal:before{animation:none}}@media (max-width: 520px){.umenu__email{display:none}}:root{--sidebar-w: 220px;--sidebar-rail: 68px;--sidebar-transition: .24s cubic-bezier(.4, 0, .2, 1);--topbar-h: 56px}@keyframes logoClockHour{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes logoClockMinute{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes logoSlicePop{0%,to{opacity:.6}45%{opacity:1}}.logo-hand--hour,.logo-hand--minute,.logo-slice{transform-box:fill-box;transform-origin:50px 50px}.logo-slice--tl{animation:logoSlicePop 3.6s ease-in-out infinite 0s}.logo-slice--tr{animation:logoSlicePop 3.6s ease-in-out infinite .9s}.logo-slice--br{animation:logoSlicePop 3.6s ease-in-out infinite 1.8s}.logo-slice--bl{animation:logoSlicePop 3.6s ease-in-out infinite 2.7s}.app-sidebar{display:none}@media (min-width: 721px){.app-sidebar{display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-rail);z-index:var(--z-header, 100);overflow:hidden;background:#ffffffc7;border-right:1px solid rgba(255,255,255,.6);-webkit-backdrop-filter:blur(24px) saturate(200%) contrast(1.04);backdrop-filter:blur(24px) saturate(200%) contrast(1.04);box-shadow:inset -1px 0 #ffffff8c,4px 0 24px #02061712;transition:width var(--sidebar-transition),box-shadow var(--sidebar-transition)}.app-sidebar:hover{width:var(--sidebar-w);box-shadow:inset -1px 0 #ffffff8c,6px 0 40px #02061724}.app-sidebar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary, #2d6cdf),color-mix(in oklab,var(--primary, #2d6cdf) 60%,#54bda5),#54bda5);opacity:.72;z-index:1;pointer-events:none}.app-main-content{margin-left:var(--sidebar-rail)!important}.sidebar__brand{padding:18px 10px 10px;flex:0 0 auto;position:relative}.sidebar__logo-btn{display:flex;align-items:center;gap:10px;background:transparent;border:0;padding:5px 6px;border-radius:12px;cursor:pointer;width:100%;overflow:hidden;white-space:nowrap;transition:background .12s ease}.sidebar__logo-btn:hover{background:#ffffff8f}.sidebar__logo-svg{flex:0 0 auto;width:36px;height:36px;border-radius:10px;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.28));transition:transform .2s ease}.sidebar__logo-wordmark{font-size:17px;font-weight:900;letter-spacing:-.02em;background:linear-gradient(110deg,#ffd03c,#54bda5 45%,#5994dd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;opacity:0;max-width:0;overflow:hidden;transition:opacity var(--sidebar-transition),max-width var(--sidebar-transition);pointer-events:none}.app-sidebar:hover .sidebar__logo-wordmark{opacity:1;max-width:140px;pointer-events:auto}.sidebar__tagline{display:block;font-size:11.5px;font-weight:700;line-height:1.5;letter-spacing:.015em;padding:2px 14px 12px;opacity:0;max-height:0;overflow:hidden;transform:translateY(-4px);transition:opacity var(--sidebar-transition),max-height var(--sidebar-transition),transform var(--sidebar-transition);pointer-events:none;white-space:nowrap}.app-sidebar:hover .sidebar__tagline{opacity:1;max-height:48px;transform:translateY(0);pointer-events:auto}.sidebar__tagline-main{color:var(--muted, #64748b);font-weight:600;font-style:italic;font-size:11px;letter-spacing:.01em}.sidebar__tagline-play{color:var(--primary, #2d6cdf);font-weight:800;font-size:12px;letter-spacing:.02em}.logo-hand--hour{animation:logoClockHour 8s linear infinite}.logo-hand--minute{animation:logoClockMinute 1.4s linear infinite}.app-sidebar:not(:hover) .logo-hand--hour,.app-sidebar:not(:hover) .logo-hand--minute{animation-play-state:paused}.app-sidebar:hover .logo-hand--hour,.app-sidebar:hover .logo-hand--minute{animation-play-state:running}@keyframes sbConvergeTL{0%{transform:translate(0);opacity:.85}to{transform:translate(4px,4px);opacity:1}}@keyframes sbConvergeTR{0%{transform:translate(0);opacity:.85}to{transform:translate(-4px,4px);opacity:1}}@keyframes sbConvergeBR{0%{transform:translate(0);opacity:.85}to{transform:translate(-4px,-4px);opacity:1}}@keyframes sbConvergeBL{0%{transform:translate(0);opacity:.85}to{transform:translate(4px,-4px);opacity:1}}.app-sidebar:hover .sidebar__logo-svg{transform:scale(1.06);filter:drop-shadow(0 1px 3px rgba(0,0,0,.28))}.app-sidebar:hover .logo-slice--tl{animation:sbConvergeTL .45s cubic-bezier(.22,1,.36,1) forwards!important}.app-sidebar:hover .logo-slice--tr{animation:sbConvergeTR .45s cubic-bezier(.22,1,.36,1) .06s forwards!important}.app-sidebar:hover .logo-slice--br{animation:sbConvergeBR .45s cubic-bezier(.22,1,.36,1) .12s forwards!important}.app-sidebar:hover .logo-slice--bl{animation:sbConvergeBL .45s cubic-bezier(.22,1,.36,1) .18s forwards!important}.sidebar__brand:after{content:"";position:absolute;bottom:0;left:10px;right:10px;height:1px;background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--line, #dbe5f1) 80%,white) 20% 80%,transparent)}.sidebar__nav{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:8px;display:flex;flex-direction:column;gap:3px;scrollbar-width:none}.sidebar__nav::-webkit-scrollbar{display:none}.sidebar__item{position:relative;display:flex;align-items:center;gap:11px;width:100%;padding:9px 8px;border-radius:11px;border:1px solid transparent;background:transparent;color:color-mix(in oklab,var(--text, #0f172a) 66%,var(--muted, #64748b));font-size:13.5px;font-weight:600;letter-spacing:.01em;cursor:pointer;white-space:nowrap;overflow:hidden;text-align:left;transition:background .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease}.sidebar__item:hover{background:#ffffffad;border-color:#ffffffb8;color:var(--text, #0f172a);box-shadow:inset 0 1px #ffffff8c,0 4px 12px #02061712}.sidebar__item.is-active{background:linear-gradient(135deg,color-mix(in oklab,var(--primary, #2d6cdf) 14%,rgba(255,255,255,.82)),color-mix(in oklab,var(--primary, #2d6cdf) 8%,rgba(255,255,255,.64)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 32%,rgba(255,255,255,.8));color:color-mix(in oklab,var(--primary, #2d6cdf) 72%,var(--text, #0f172a));font-weight:700;box-shadow:inset 0 1px #ffffff8c,0 6px 16px color-mix(in oklab,var(--primary, #2d6cdf) 14%,transparent)}.sidebar__item-icon{width:34px;height:34px;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:10px;background:color-mix(in oklab,var(--line, #dbe5f1) 60%,white);border:1px solid color-mix(in oklab,var(--line, #dbe5f1) 70%,white);box-shadow:inset 0 1px #ffffffb3;color:inherit;transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.sidebar__item:hover .sidebar__item-icon{transform:translateY(-1px);box-shadow:inset 0 1px #ffffffbf,0 4px 8px #0206171a}.sidebar__item.is-active .sidebar__item-icon{background:color-mix(in oklab,var(--primary, #2d6cdf) 22%,rgba(255,255,255,.9));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 44%,rgba(255,255,255,.8));color:color-mix(in oklab,var(--primary, #2d6cdf) 80%,#0f172a);box-shadow:inset 0 1px #ffffff8c,0 4px 10px color-mix(in oklab,var(--primary, #2d6cdf) 22%,transparent)}.sidebar__item-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;opacity:0;max-width:0;transition:opacity var(--sidebar-transition),max-width var(--sidebar-transition);pointer-events:none}.app-sidebar:hover .sidebar__item-label{opacity:1;max-width:160px;pointer-events:auto}.sidebar__item-pip{width:5px;height:5px;border-radius:999px;background:var(--primary, #2d6cdf);flex:0 0 auto;box-shadow:0 0 0 3px color-mix(in oklab,var(--primary, #2d6cdf) 22%,transparent);opacity:0;max-width:0;overflow:hidden;transition:opacity var(--sidebar-transition),max-width var(--sidebar-transition)}.app-sidebar:hover .sidebar__item-pip{opacity:1;max-width:12px}.app-sidebar:not(:hover) .sidebar__item:after{content:attr(title);position:absolute;left:calc(var(--sidebar-rail) + 6px);top:50%;transform:translateY(-50%) translate(-4px);background:color-mix(in oklab,var(--text, #0f172a) 92%,transparent);color:#fff;font-size:12px;font-weight:600;padding:5px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .1s ease,transform .1s ease;z-index:200;box-shadow:0 4px 12px #0206172e}.app-sidebar:not(:hover) .sidebar__item:hover:after{opacity:1;transform:translateY(-50%) translate(0)}.sidebar__foot{flex:0 0 auto;padding:8px;display:flex;flex-direction:column;gap:3px;border-top:1px solid color-mix(in oklab,var(--line, #dbe5f1) 70%,white)}.sidebar__action{display:flex;align-items:center;gap:11px;width:100%;padding:8px;border-radius:10px;border:1px solid transparent;background:transparent;color:color-mix(in oklab,var(--text, #0f172a) 66%,var(--muted, #64748b));font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;overflow:hidden;text-align:left;transition:background .14s ease,color .14s ease,border-color .14s ease}.sidebar__action:hover{background:#ffffffad;border-color:#ffffffb8;color:var(--text, #0f172a)}.sidebar__action--ai{color:color-mix(in oklab,var(--primary, #2d6cdf) 72%,var(--text, #0f172a))}.sidebar__action--ai .sidebar__item-icon{background:linear-gradient(135deg,color-mix(in oklab,var(--primary, #2d6cdf) 18%,rgba(255,255,255,.9)),color-mix(in oklab,var(--primary, #2d6cdf) 10%,rgba(255,255,255,.8)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 36%,rgba(255,255,255,.8));color:color-mix(in oklab,var(--primary, #2d6cdf) 82%,#0f172a)}.sidebar__action--refresh .sidebar__item-icon{background:color-mix(in oklab,var(--line, #dbe5f1) 60%,white);border-color:color-mix(in oklab,var(--line, #dbe5f1) 70%,white)}@keyframes sidebarSpin{to{transform:rotate(360deg)}}.sidebar__action--refresh.is-rotating .sidebar__item-icon svg{animation:sidebarSpin .9s linear infinite}.sidebar__action .sidebar__item-label{opacity:0;max-width:0;overflow:hidden;transition:opacity var(--sidebar-transition),max-width var(--sidebar-transition);pointer-events:none}.app-sidebar:hover .sidebar__action .sidebar__item-label{opacity:1;max-width:140px;pointer-events:auto}.sidebar__user{margin-top:2px}.sidebar__user .umenu__btn{width:36px;height:36px;min-width:0;padding:0;border-radius:999px;justify-content:center;overflow:hidden;background:transparent;border-color:transparent;box-shadow:none;transition:width var(--sidebar-transition),border-radius var(--sidebar-transition),padding var(--sidebar-transition),background var(--sidebar-transition),border-color var(--sidebar-transition),box-shadow var(--sidebar-transition)}.app-sidebar:hover .sidebar__user .umenu__btn{width:100%;padding:6px 10px;border-radius:11px;justify-content:flex-start;background:linear-gradient(180deg,#ffffffc7,#fff9);border-color:#ffffffa6;box-shadow:inset 0 1px #ffffff8c,0 6px 16px #0206171a}.sidebar__user .umenu__avatar{width:36px;height:36px;font-size:13px;transition:width var(--sidebar-transition),height var(--sidebar-transition),font-size var(--sidebar-transition)}.app-sidebar:hover .sidebar__user .umenu__avatar{width:28px;height:28px;font-size:12px}.sidebar__user .umenu__email,.sidebar__user .umenu__chev{opacity:0;max-width:0;overflow:hidden;transition:opacity var(--sidebar-transition),max-width var(--sidebar-transition);pointer-events:none}.app-sidebar:hover .sidebar__user .umenu__email{opacity:1;max-width:160px;pointer-events:auto}.app-sidebar:hover .sidebar__user .umenu__chev{opacity:.76;max-width:24px;pointer-events:auto}}.app-topbar{display:none}@media (max-width: 720px){.app-topbar{display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:var(--z-header, 100);height:var(--topbar-h);padding:0 14px;background:#ffffffd1;border-bottom:1px solid rgba(255,255,255,.6);-webkit-backdrop-filter:blur(20px) saturate(190%) contrast(1.04);backdrop-filter:blur(20px) saturate(190%) contrast(1.04);box-shadow:0 2px 16px #02061714}.app-topbar:before{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary, #2d6cdf),color-mix(in oklab,var(--primary, #2d6cdf) 60%,#54bda5),#54bda5);opacity:.6}.topbar__hamburger{width:38px;height:38px;border-radius:11px;border:1px solid rgba(255,255,255,.8);background:linear-gradient(180deg,#ffffffd1,#ffffff9e);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px #fff9,0 4px 10px #0206171a;cursor:pointer;display:inline-grid;place-items:center;flex:0 0 auto;transition:transform 80ms ease,filter .14s ease}.topbar__hamburger:hover{filter:brightness(1.05);transform:translateY(-1px)}.topbar__logo-btn{flex:0 0 auto;background:transparent;border:0;padding:4px 6px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .12s ease}.topbar__logo-btn:hover{background:#ffffff8f}.topbar__logo-svg{flex:0 0 auto;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.28))}.topbar__logo-svg .logo-hand--hour{animation:logoClockHour 8s linear infinite}.topbar__logo-svg .logo-hand--minute{animation:logoClockMinute 1.4s linear infinite}.topbar__logo-wordmark{font-size:16px;font-weight:900;letter-spacing:.01em;color:var(--text, #0f172a)}.topbar__actions{margin-left:auto;display:flex;align-items:center;gap:8px}.topbar__btn{width:36px;height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.78);background:linear-gradient(180deg,#fffc,#fff9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 1px #fff9,0 2px 8px #02061714;display:inline-grid;place-items:center;cursor:pointer;transition:transform 80ms ease,filter .14s ease}.topbar__btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.topbar__btn--ai{color:color-mix(in oklab,var(--primary, #2d6cdf) 72%,#0f172a);background:linear-gradient(180deg,color-mix(in oklab,var(--primary, #2d6cdf) 16%,rgba(255,255,255,.88)),color-mix(in oklab,var(--primary, #2d6cdf) 10%,rgba(255,255,255,.72)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 36%,rgba(255,255,255,.8))}}.app-sheet-backdrop,.app-sheet{display:none}@media (max-width: 720px){.app-sheet-backdrop{display:block;position:fixed;inset:0;z-index:1100;background:#02061761;-webkit-backdrop-filter:blur(6px) saturate(140%);backdrop-filter:blur(6px) saturate(140%);opacity:0;pointer-events:none;transition:opacity .26s cubic-bezier(.4,0,.2,1)}.app-sheet-backdrop.is-open{opacity:1;pointer-events:auto}.app-sheet{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;z-index:1200;max-height:90dvh;border-radius:22px 22px 0 0;background:#ffffffeb;border-top:1px solid rgba(255,255,255,.75);-webkit-backdrop-filter:blur(28px) saturate(210%) contrast(1.04);backdrop-filter:blur(28px) saturate(210%) contrast(1.04);box-shadow:inset 0 1px #ffffffb3,0 -8px 48px #02061738;transform:translateY(105%);transition:transform .34s cubic-bezier(.4,0,.2,1);will-change:transform;padding-bottom:calc(18px + env(safe-area-inset-bottom));overflow:hidden}.app-sheet.is-open{transform:translateY(0)}.sheet__handle{width:40px;height:4px;border-radius:999px;background:#0f172a26;margin:10px auto 0;flex:0 0 auto}.sheet__header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 10px;flex:0 0 auto}.sheet__logo{height:32px;border-radius:8px}.sheet__logo-wrap{display:flex;align-items:center;gap:10px}.sheet__logo-svg{flex:0 0 auto;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.28))}.sheet__logo-svg .logo-hand--hour{animation:logoClockHour 8s linear infinite}.sheet__logo-svg .logo-hand--minute{animation:logoClockMinute 1.4s linear infinite}.sheet__logo-wordmark{font-size:18px;font-weight:900;letter-spacing:.01em;color:var(--text, #0f172a)}.sheet__close{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.8);background:linear-gradient(180deg,#fffc,#fff9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px #ffffff8c,0 4px 10px #0206171a;display:inline-grid;place-items:center;cursor:pointer}.sheet__nav{flex:1 1 auto;overflow-y:auto;padding:6px 14px 8px;display:flex;flex-direction:column;gap:6px}.sheet__item{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.88);background:linear-gradient(180deg,#ffffffe0,#ffffffad);color:var(--text, #0f172a);font-weight:700;letter-spacing:.01em;cursor:pointer;text-align:left;-webkit-backdrop-filter:blur(10px) saturate(200%);backdrop-filter:blur(10px) saturate(200%);box-shadow:inset 0 1px #fff9,0 4px 14px #02061714;transform:translateY(16px);opacity:0;animation:sheetItemIn .3s cubic-bezier(.2,.9,.3,1) forwards;animation-delay:calc(var(--sheet-i, 0) * 28ms + 60ms)}@keyframes sheetItemIn{to{transform:translateY(0);opacity:1}}.app-sheet:not(.is-open) .sheet__item{animation:none;opacity:1;transform:none}.sheet__item:hover{filter:brightness(1.04);transform:translateY(-1px)!important;box-shadow:inset 0 1px #ffffffa6,0 8px 20px #0206171f}.sheet__item.is-active{background:linear-gradient(135deg,color-mix(in oklab,var(--primary, #2d6cdf) 18%,rgba(255,255,255,.88)),color-mix(in oklab,var(--primary, #2d6cdf) 10%,rgba(255,255,255,.72)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 38%,rgba(255,255,255,.82));box-shadow:inset 0 1px #ffffff8c,0 6px 18px color-mix(in oklab,var(--primary, #2d6cdf) 16%,transparent)}.sheet__item-icon{width:36px;height:36px;display:inline-grid;place-items:center;flex:0 0 auto;border-radius:11px;background:color-mix(in oklab,var(--line, #dbe5f1) 66%,white);border:1px solid color-mix(in oklab,var(--line, #dbe5f1) 74%,white);box-shadow:inset 0 1px #ffffffb3;color:color-mix(in oklab,var(--text, #0f172a) 78%,var(--primary, #2d6cdf));transition:background .14s ease,border-color .14s ease,color .14s ease}.sheet__item.is-active .sheet__item-icon{background:color-mix(in oklab,var(--primary, #2d6cdf) 26%,rgba(255,255,255,.9));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 48%,rgba(255,255,255,.82));color:color-mix(in oklab,var(--primary, #2d6cdf) 82%,#0f172a)}.sheet__item-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sheet__item-title{display:block;font-size:14px;font-weight:800;line-height:1.1}.sheet__item-hint{display:block;font-size:11.5px;color:var(--muted, #64748b);line-height:1.1;opacity:.9}.sheet__item-arrow{font-size:18px;line-height:1;color:color-mix(in oklab,var(--muted, #64748b) 80%,white);transition:transform .12s ease}.sheet__item:hover .sheet__item-arrow{transform:translate(2px)}.sheet__foot{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:10px 14px 0;border-top:1px solid color-mix(in oklab,var(--line, #dbe5f1) 60%,white)}.sheet__foot-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.8);background:linear-gradient(180deg,#fffc,#ffffff9e);color:var(--text, #0f172a);font-size:13px;font-weight:700;cursor:pointer;box-shadow:inset 0 1px #ffffff8c,0 2px 8px #02061714;transition:filter .12s ease,transform 80ms ease}.sheet__foot-btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.sheet__foot-btn--ai{color:color-mix(in oklab,var(--primary, #2d6cdf) 76%,#0f172a);background:linear-gradient(180deg,color-mix(in oklab,var(--primary, #2d6cdf) 14%,rgba(255,255,255,.9)),color-mix(in oklab,var(--primary, #2d6cdf) 8%,rgba(255,255,255,.74)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 32%,rgba(255,255,255,.82))}@keyframes sheetRefreshSpin{to{transform:rotate(360deg)}}.sheet__foot-btn.is-rotating svg{animation:sheetRefreshSpin .9s linear infinite}.sheet__foot .umenu{margin-left:auto}}.burger-line{position:relative;width:18px;height:2px;background:color-mix(in oklab,var(--primary, #2d6cdf) 20%,#0f172a);transition:transform .16s ease,background .16s ease,opacity .16s ease}.burger-line:before,.burger-line:after{content:"";position:absolute;left:0;width:18px;height:2px;background:color-mix(in oklab,var(--primary, #2d6cdf) 20%,#0f172a);transition:transform .16s ease,top .16s ease,opacity .16s ease}.burger-line:before{top:-5px}.burger-line:after{top:5px}.burger-line.open{background:transparent}.burger-line.open:before{top:0;transform:rotate(45deg)}.burger-line.open:after{top:0;transform:rotate(-45deg)}@media (min-width: 721px){:root[data-ui-theme=dark] .app-sidebar,body[data-ui-theme=dark] .app-sidebar{background:#0f172ae0;border-right-color:#94a3b838;box-shadow:4px 0 24px #02061766}:root[data-ui-theme=dark] .app-sidebar:hover,body[data-ui-theme=dark] .app-sidebar:hover{box-shadow:6px 0 40px #0206178f}:root[data-ui-theme=dark] .sidebar__item,body[data-ui-theme=dark] .sidebar__item{color:color-mix(in oklab,#dce6f4 66%,#94a3b8)}:root[data-ui-theme=dark] .sidebar__item:hover,body[data-ui-theme=dark] .sidebar__item:hover{background:#1e293bc7;border-color:#94a3b842;color:#dce6f4}:root[data-ui-theme=dark] .sidebar__item.is-active,body[data-ui-theme=dark] .sidebar__item.is-active{background:linear-gradient(135deg,color-mix(in oklab,var(--primary, #2d6cdf) 28%,rgba(30,41,59,.9)),color-mix(in oklab,var(--primary, #2d6cdf) 18%,rgba(15,23,42,.86)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 44%,rgba(148,163,184,.3));color:color-mix(in oklab,var(--primary, #2d6cdf) 72%,#e8eef8)}:root[data-ui-theme=dark] .sidebar__item-icon,body[data-ui-theme=dark] .sidebar__item-icon{background:#0f172ae0;border-color:#94a3b84d;box-shadow:inset 0 1px #ffffff14}:root[data-ui-theme=dark] .sidebar__brand:after,body[data-ui-theme=dark] .sidebar__brand:after{background:linear-gradient(90deg,transparent,rgba(148,163,184,.28) 20% 80%,transparent)}:root[data-ui-theme=dark] .sidebar__foot,body[data-ui-theme=dark] .sidebar__foot{border-top-color:#94a3b838}:root[data-ui-theme=dark] .sidebar__logo-wordmark,body[data-ui-theme=dark] .sidebar__logo-wordmark{background:linear-gradient(110deg,#ffd03c,#54bda5 45%,#5994dd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}:root[data-ui-theme=dark] .sidebar__tagline,body[data-ui-theme=dark] .sidebar__tagline{color:inherit}:root[data-ui-theme=dark] .sidebar__tagline-main,body[data-ui-theme=dark] .sidebar__tagline-main{color:#94a3b8cc}:root[data-ui-theme=dark] .sidebar__tagline-play,body[data-ui-theme=dark] .sidebar__tagline-play{color:#7dd3fc}:root[data-ui-theme=dark] .sidebar__action,body[data-ui-theme=dark] .sidebar__action{color:color-mix(in oklab,#dce6f4 66%,#94a3b8)}:root[data-ui-theme=dark] .sidebar__action:hover,body[data-ui-theme=dark] .sidebar__action:hover{background:#1e293bc7;border-color:#94a3b842;color:#dce6f4}}@media (max-width: 720px){:root[data-ui-theme=dark] .app-topbar,body[data-ui-theme=dark] .app-topbar{background:#0f172ae0;border-bottom-color:#94a3b838;box-shadow:0 2px 16px #0206175c}:root[data-ui-theme=dark] .topbar__hamburger,body[data-ui-theme=dark] .topbar__hamburger{background:linear-gradient(180deg,#1e293beb,#0f172ae0);border-color:#94a3b84d}:root[data-ui-theme=dark] .app-sheet,body[data-ui-theme=dark] .app-sheet{background:#0f172aeb;border-top-color:#94a3b838;box-shadow:inset 0 1px #ffffff0f,0 -8px 48px #0206178a}:root[data-ui-theme=dark] .sheet__item,body[data-ui-theme=dark] .sheet__item{background:linear-gradient(180deg,#1e293be0,#0f172ad1);border-color:#94a3b842;color:#dce6f4;box-shadow:inset 0 1px #ffffff0f,0 4px 14px #02061752}:root[data-ui-theme=dark] .sheet__item.is-active,body[data-ui-theme=dark] .sheet__item.is-active{background:linear-gradient(135deg,color-mix(in oklab,var(--primary, #2d6cdf) 26%,rgba(30,41,59,.9)),color-mix(in oklab,var(--primary, #2d6cdf) 16%,rgba(15,23,42,.86)));border-color:color-mix(in oklab,var(--primary, #2d6cdf) 44%,rgba(148,163,184,.28))}:root[data-ui-theme=dark] .sheet__item-icon,body[data-ui-theme=dark] .sheet__item-icon{background:#0f172ae0;border-color:#94a3b84d;box-shadow:inset 0 1px #ffffff14;color:color-mix(in oklab,#dce6f4 78%,var(--primary, #2d6cdf))}:root[data-ui-theme=dark] .sheet__item-hint,body[data-ui-theme=dark] .sheet__item-hint{color:#94a3b8e0}:root[data-ui-theme=dark] .sheet__foot,body[data-ui-theme=dark] .sheet__foot{border-top-color:#94a3b838}:root[data-ui-theme=dark] .sheet__foot-btn,body[data-ui-theme=dark] .sheet__foot-btn{background:linear-gradient(180deg,#1e293be6,#0f172adb);border-color:#94a3b847;color:#dce6f4}:root[data-ui-theme=dark] .sheet__handle,body[data-ui-theme=dark] .sheet__handle{background:#94a3b84d}:root[data-ui-theme=dark] .burger-line,:root[data-ui-theme=dark] .burger-line:before,:root[data-ui-theme=dark] .burger-line:after,body[data-ui-theme=dark] .burger-line,body[data-ui-theme=dark] .burger-line:before,body[data-ui-theme=dark] .burger-line:after{background:color-mix(in oklab,var(--primary, #2d6cdf) 18%,#e2e8f0)}.burger-line.open,:root[data-ui-theme=dark] .burger-line.open,body[data-ui-theme=dark] .burger-line.open{background:transparent}}@media (prefers-reduced-transparency: reduce){.app-sidebar,.app-topbar,.app-sheet{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.app-sheet-backdrop{background:#02061780!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}@media (prefers-reduced-motion: reduce){.app-sheet,.app-sheet-backdrop,.app-sidebar,.sidebar__item,.sidebar__item-label,.sidebar__item-pip,.sidebar__logo-wordmark,.sidebar__tagline,.sidebar__logo-img{transition:none!important}.sheet__item{animation:none!important;opacity:1;transform:none!important}.logo-hand--hour,.logo-hand--minute,.logo-slice,.sidebar__logo-svg{animation:none!important}.sidebar__user .umenu__btn{transition:none!important}}.app-footer{margin-top:clamp(26px,4vw,40px);margin-bottom:calc(8px + env(safe-area-inset-bottom));padding:12px 14px 14px;border:1px solid rgba(148,163,184,.28);border-radius:12px;background:#ffffffbd;-webkit-backdrop-filter:blur(8px) saturate(130%);backdrop-filter:blur(8px) saturate(130%);box-shadow:inset 0 1px #ffffff8a}.app-footer__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-footer__identity{min-width:0}.app-footer__brand{display:inline-flex;align-items:center;gap:8px;font-weight:900;color:#0f172a;line-height:1}.app-footer__name{letter-spacing:.015em;font-size:1rem}.app-footer__version{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;border:1px solid color-mix(in oklab,var(--primary, #2d6cdf) 26%,white);background:color-mix(in oklab,var(--primary, #2d6cdf) 8%,white 92%);color:color-mix(in oklab,var(--primary, #2d6cdf) 44%,#1e293b);font-size:.78rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase}.app-footer__contacts{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.app-footer__label{font-size:.82rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.app-footer__mail-list{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.app-footer__mail{display:inline-flex;align-items:center;gap:6px;height:30px;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(148,163,184,.36);background:#ffffffdb;color:#0f172a;font-weight:800;text-decoration:none;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.app-footer__mail-ico{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:999px;background:color-mix(in oklab,var(--primary, #2d6cdf) 14%,white);color:color-mix(in oklab,var(--primary, #2d6cdf) 54%,#1e293b);font-size:.68rem;font-weight:900}.app-footer__mail:hover{border-color:color-mix(in oklab,var(--primary, #2d6cdf) 38%,#94a3b8);color:color-mix(in oklab,var(--primary, #2d6cdf) 48%,#0f172a);background:#fffffff0}.app-footer__bottom{margin-top:10px;padding-top:8px;border-top:1px solid rgba(148,163,184,.26);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-footer__copy{font-size:.8rem;color:#64748b;font-weight:700}.app-footer__links{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px}.app-footer__link{color:#475569;font-size:.84rem;font-weight:800;text-decoration:none;transition:color .15s ease}.app-footer__link:hover{color:color-mix(in oklab,var(--primary, #2d6cdf) 58%,#1e293b);text-decoration:underline;text-underline-offset:3px}@media (max-width: 680px){.app-footer{padding:11px 12px 12px}.app-footer__top{flex-direction:column;align-items:stretch;gap:10px}.app-footer__brand{width:100%;justify-content:space-between}.app-footer__contacts{width:100%;align-items:flex-start;display:grid;gap:6px}.app-footer__mail-list{width:100%;display:grid;grid-template-columns:1fr;gap:6px}.app-footer__mail{width:100%;justify-content:flex-start;height:auto;min-height:34px;padding:6px 11px}.app-footer__bottom{margin-top:8px;padding-top:8px;align-items:flex-start;flex-direction:column}}@media (max-width: 440px){.app-footer__version{height:22px;padding:0 8px;font-size:.74rem}.app-footer__copy{font-size:.76rem}}:root[data-ui-theme=dark] .app-footer{border-color:#94a3b84d;background:#0f172aad;box-shadow:inset 0 1px #ffffff0f}:root[data-ui-theme=dark] .app-footer__brand{color:#edf3ff}:root[data-ui-theme=dark] .app-footer__version{border-color:color-mix(in oklab,var(--primary, #2d6cdf) 36%,#334155);background:color-mix(in oklab,var(--primary, #2d6cdf) 20%,#0f172a);color:color-mix(in oklab,var(--primary, #2d6cdf) 72%,#e2e8f0)}:root[data-ui-theme=dark] .app-footer__label,:root[data-ui-theme=dark] .app-footer__copy{color:#95a7bf}:root[data-ui-theme=dark] .app-footer__mail{border-color:#94a3b857;background:#0f172ae0;color:#e2eaf8}:root[data-ui-theme=dark] .app-footer__mail-ico{background:color-mix(in oklab,var(--primary, #2d6cdf) 24%,#0f172a);color:color-mix(in oklab,var(--primary, #2d6cdf) 74%,#e2e8f0)}:root[data-ui-theme=dark] .app-footer__mail:hover{border-color:color-mix(in oklab,var(--primary, #2d6cdf) 44%,#334155);color:#f5f9ff;background:#1e293beb}:root[data-ui-theme=dark] .app-footer__bottom{border-top-color:#94a3b83d}:root[data-ui-theme=dark] .app-footer__link{color:#b6c4d8}.timo-portal{position:fixed;inset:0;z-index:9999;pointer-events:none;overflow:hidden;--burst-x: calc(100vw - 44px) ;--burst-y: calc(100vh - 44px) }.timo-portal__wave{position:absolute;width:50px;height:50px;border-radius:50%;left:var(--burst-x);top:var(--burst-y);transform:translate(-50%,-50%);transform-origin:center}.timo-portal__wave--1{background:radial-gradient(circle,#FFD03C 0%,transparent 70%);animation:timoWave .52s cubic-bezier(.2,.6,.4,1) 0s forwards}.timo-portal__wave--2{background:radial-gradient(circle,#4BC1AA 0%,transparent 70%);animation:timoWave .52s cubic-bezier(.2,.6,.4,1) .06s forwards}.timo-portal__wave--3{background:radial-gradient(circle,#FF6A4D 0%,transparent 70%);animation:timoWave .52s cubic-bezier(.2,.6,.4,1) .12s forwards}.timo-portal__wave--4{background:radial-gradient(circle,#5197E5 0%,transparent 70%);animation:timoWave .52s cubic-bezier(.2,.6,.4,1) .18s forwards}@keyframes timoWave{0%{transform:translate(-50%,-50%) scale(1);opacity:.72}55%{opacity:.38}to{transform:translate(-50%,-50%) scale(52);opacity:0}}.app-tour{position:fixed;inset:0;z-index:110000;pointer-events:none}.app-tour__backdrop{position:absolute;inset:0;background:#0a122094;pointer-events:auto}.app-tour__spotlight{position:fixed;border-radius:12px;border:2px solid var(--primary, #2d6cdf);box-shadow:0 0 0 9999px #0a122094,0 10px 26px #02061740;pointer-events:none;transition:left .16s ease,top .16s ease,width .16s ease,height .16s ease}.app-tour__card{position:fixed;width:min(360px,calc(100vw - 24px));padding:14px;border-radius:14px;border:1px solid rgba(148,163,184,.38);background:#fffffffa;box-shadow:0 18px 36px #0206173d;color:#0f172a;pointer-events:auto}.app-tour__card--centered{left:50%;top:50%;transform:translate(-50%,-50%)}.app-tour__card--anchored{transform:none}.app-tour__meta{margin:0;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.app-tour__title{margin:8px 0 0;font-size:19px;line-height:1.25;font-weight:900;letter-spacing:-.01em}.app-tour__body{margin:10px 0 0;font-size:14px;line-height:1.45;color:#1e293b}.app-tour__hint{margin:8px 0 0;font-size:12px;line-height:1.35;color:#64748b}.app-tour__context-actions{margin-top:10px;display:flex;align-items:center;justify-content:flex-start}.app-tour__btn--context{min-height:32px;padding:0 10px;font-size:12px}.app-tour__progress{width:100%;height:6px;margin-top:12px;border-radius:999px;background:#94a3b847;overflow:hidden}.app-tour__progress-bar{display:block;height:100%;border-radius:inherit;background:var(--primary, #2d6cdf);transition:width .16s ease}.app-tour__actions{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.app-tour__actions-right{display:flex;align-items:center;gap:8px}.app-tour__btn{min-height:36px;padding:0 12px;border-radius:10px;border:1px solid transparent;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.app-tour__btn--primary{color:#fff;background:var(--primary, #2d6cdf)}.app-tour__btn--ghost{color:#1e293b;border-color:#94a3b885;background:#fffffff5}.app-tour__btn:hover{filter:brightness(1.04)}.app-tour__btn:disabled{opacity:.52;cursor:default;filter:none}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__backdrop{background:#02060ead}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__spotlight{box-shadow:0 0 0 9999px #02060ead,0 10px 26px #02061785}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__card{border-color:#94a3b857;background:#0f172af5;color:#e2e8f0}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__body{color:#d6e0ee}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__hint{color:#9fb1c8}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__progress{background:#94a3b83d}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-tour__btn--ghost{color:#e2e8f0;border-color:#94a3b866;background:#0f172ad1}@media (max-width: 680px){.app-tour__card{width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow:auto}.app-tour__card--centered{inset:auto 8px 8px;transform:none}.app-tour__actions{flex-direction:column;align-items:stretch}.app-tour__actions-right{width:100%}.app-tour__actions .app-tour__btn,.app-tour__actions-right .app-tour__btn{flex:1}}.undo-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:14px;background:linear-gradient(to bottom right,#ffffffa8,#ffffff6b);backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border:1px solid rgba(255,255,255,.35);box-shadow:0 8px 22px #0000001f;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;font-size:14px;color:#0f172a;animation:fadeInUp .22s ease-out}.undo-toast__msg{flex:1;font-weight:700}.undo-toast__btn{background:var(--primary, #2d6cdf);border:1px solid color-mix(in oklab,var(--primary, #2d6cdf) 30%,#ffffff);border-radius:10px;color:#fff;font-weight:800;padding:6px 12px;cursor:pointer;transition:filter .15s ease,transform .08s ease,box-shadow .18s ease;box-shadow:0 8px 18px color-mix(in oklab,var(--primary, #2d6cdf) 20%,transparent),inset 0 -2px #ffffff2e}.undo-toast__btn:hover{filter:brightness(1.06)}.undo-toast__btn:active{transform:translateY(1px)}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}@media (max-width: 600px){.undo-toast{left:10px;right:10px;bottom:12px;transform:none;font-size:13px;padding:10px 12px}}.app-notice-stack{position:fixed;right:14px;bottom:14px;z-index:calc(var(--z-toast, 4000) + 4);display:grid;gap:8px;width:min(360px,calc(100vw - 20px))}.app-notice{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;border-radius:12px;padding:10px 12px;border:1px solid rgba(148,163,184,.34);background:#fffffff0;box-shadow:0 10px 24px #0206172e;backdrop-filter:blur(10px) saturate(150%);-webkit-backdrop-filter:blur(10px) saturate(150%);color:#0f172a}.app-notice__title{margin:0;font-size:12px;font-weight:900;letter-spacing:.01em}.app-notice__text{margin:2px 0 0;font-size:13px;line-height:1.35;font-weight:700;white-space:pre-wrap}.app-notice__close{width:24px;height:24px;border-radius:8px;border:1px solid rgba(148,163,184,.38);background:#ffffffd6;color:#334155;font:inherit;font-weight:800;cursor:pointer}.app-notice.is-info{border-color:color-mix(in oklab,var(--primary, #2d6cdf) 36%,#cbd5e1 64%)}.app-notice.is-success{border-color:#22c55e75;background:linear-gradient(180deg,#ecfdf5f5,#fffffff5)}.app-notice.is-warn{border-color:#f59e0b7a;background:linear-gradient(180deg,#fffbebf5,#fffffff5)}.app-notice.is-error{border-color:#ef444475;background:linear-gradient(180deg,#fef2f2f5,#fffffff5)}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-notice{border-color:#94a3b857;background:#0f172ae6;box-shadow:0 10px 24px #0206178a;color:#e2e8f0}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-notice__close{border-color:#94a3b852;background:#0f172ad1;color:#cbd5e1}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-notice.is-success{border-color:#22c55e6b;background:linear-gradient(180deg,#14532d47,#0f172ae6)}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-notice.is-warn{border-color:#f59e0b70;background:linear-gradient(180deg,#713f124d,#0f172ae6)}:is(:root[data-ui-theme=dark],body[data-ui-theme=dark]) .app-notice.is-error{border-color:#ef444470;background:linear-gradient(180deg,#7f1d1d52,#0f172ae6)}@media (max-width: 720px){.app-notice-stack{right:10px;left:10px;width:auto}}:root{--ui-radius-sm: 10px;--ui-radius-md: 14px;--ui-radius-lg: 18px;--ui-space-2: 8px;--ui-space-3: 10px;--ui-space-4: 12px;--ui-space-5: 16px;--ui-border-soft: color-mix(in oklab, var(--line) 74%, white);--ui-shadow-sm: 0 2px 8px rgba(15, 23, 42, .05);--ui-shadow-md: 0 8px 24px rgba(15, 23, 42, .08);--ui-shadow-xl: 0 24px 58px rgba(15, 23, 42, .16);--ui-surface: color-mix(in oklab, var(--card) 90%, white);--ui-focus: color-mix(in oklab, var(--primary) 32%, transparent);--ui-transition: .18s cubic-bezier(.4, 0, .2, 1)}.ui-page{--ui-page-flow-gap: 20px;--ui-page-top-gap: var(--ui-space-4);--ui-page-toolbar-gap: var(--ui-space-3);--ui-page-section-gap: 14px;--ui-page-gap-top-next: 20px;--ui-page-gap-top-toolbar: 16px;--ui-page-gap-toolbar-next: 16px;--ui-page-gap-kpi-content: 16px;--ui-page-gap-alerts-next: 14px;--ui-top-shell-pad: clamp(8px, 1.2vw, 12px);--ui-top-shell-radius: calc(var(--ui-radius-lg) + 2px);width:min(1380px,100%);min-height:100vh;margin-inline:auto;padding:0}.ui-page.ui-page--dense{--ui-page-flow-gap: 16px;--ui-page-gap-top-next: 16px}@media (max-width: 640px){.ui-page{padding:0;--ui-page-gap-top-next: 14px;--ui-page-gap-top-toolbar: 12px;--ui-page-gap-toolbar-next: 12px;--ui-page-gap-kpi-content: 12px;--ui-page-gap-alerts-next: 10px}}.ui-page :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass,.group-card){border-radius:var(--ui-radius-lg);border:1px solid var(--ui-border-soft);box-shadow:var(--ui-shadow-sm);background:linear-gradient(165deg,color-mix(in oklab,var(--card) 94%,white),color-mix(in oklab,var(--primary) 5%,var(--card)))}.ui-page .card{padding:20px;position:relative;overflow:hidden}@supports (content-visibility: auto){.ui-page :is(.student-card,.group-card,.grp-card){content-visibility:auto;contain-intrinsic-size:280px}}.ui-page .card.danger-card{background:linear-gradient(135deg,#fef2f2 0%,var(--card) 100%);border-color:#fecaca}.ui-page :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass):hover{box-shadow:var(--ui-shadow-md)}.ui-page :is(.app-hero,.fic-hero){position:relative;overflow:hidden;isolation:isolate;padding:28px 28px 24px;border-radius:var(--ui-radius-lg);background:radial-gradient(ellipse 80% 140% at 98% 50%,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 11%,transparent) 0%,transparent 62%),linear-gradient(148deg,#fffffffa,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 5%,rgba(255,255,255,.96)));border:1px solid color-mix(in oklab,var(--ui-page-accent, var(--primary)) 14%,rgba(148,163,184,.28));border-left:3px solid var(--ui-page-accent, var(--primary));box-shadow:0 1px 2px #02061708,0 4px 16px #0206170f}.ui-page :is(.app-hero,.fic-hero) .greet{font-size:clamp(22px,2.6vw,30px);font-weight:900;letter-spacing:-.028em;line-height:1.06;margin:0;background:linear-gradient(112deg,var(--ui-page-accent, var(--primary)) 0%,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 48%,#0f172a) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:heroGreetIn .55s cubic-bezier(.22,1,.36,1) both}.ui-page :is(.app-hero,.fic-hero) .sub{margin-top:6px;font-size:13.5px;font-weight:400;line-height:1.45;color:var(--muted);max-width:72ch}.ui-page :is(.fic-toolbar,.grp-toolbar,.ui-actionbar){border-radius:var(--ui-radius-md);border:1px solid var(--ui-border-soft);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 93%,white),color-mix(in oklab,var(--primary) 5%,var(--card)));box-shadow:var(--ui-shadow-sm);backdrop-filter:blur(10px) saturate(130%);-webkit-backdrop-filter:blur(10px) saturate(130%)}.ui-page :is(.ui-toolbar,.fic-toolbar,.grp-toolbar,.ui-actionbar){padding:10px 12px}.ui-page .page-toolbar-stack{display:grid;gap:var(--ui-page-toolbar-gap);margin:0;min-width:0}.ui-page .app-page-toolbar-stack{gap:8px}.ui-page .page-toolbar-stack>:is(.ui-toolbar,.fic-toolbar,.grp-toolbar,.ui-actionbar){width:100%;min-width:0}.ui-page.space-y>*+*{margin-top:var(--ui-page-flow-gap)}.ui-page .hstack{display:flex;align-items:center;gap:var(--ui-space-3)}.ui-page .hstack>*+*{margin-left:0}.ui-page .page-top-section{display:grid;gap:var(--ui-page-top-gap);min-width:0}.ui-page .page-top-section>*{min-width:0}.ui-page .app-page-top__body{display:grid;gap:var(--ui-page-toolbar-gap);min-width:0}.ui-page .has-top-body .app-page-top__body{padding-top:2px}.ui-page .app-page-top__hero{margin:0}.ui-page .app-page-top__hero :is(.ui-hero__left,.ui-hero__text,.ui-hero__actions){min-width:0}.ui-page .app-page-top__hero .ui-hero__text :is(.greet,.sub){text-wrap:balance}.ui-page .app-page-section{width:100%;min-width:0}.ui-page .app-page-section--top{gap:var(--ui-page-top-gap)}.ui-page .app-page-section--toolbar,.ui-page .app-page-section--kpi,.ui-page .app-page-section--alerts,.ui-page .app-page-section--content{padding-top:0;margin-top:0}.ui-page .app-page-section--top+.app-page-section{margin-top:var(--ui-page-gap-top-next)}.ui-page .app-page-section--top+.app-page-section--toolbar{margin-top:var(--ui-page-gap-top-toolbar)}.ui-page .app-page-section--toolbar+:is(.app-page-section--kpi,.app-page-section--content,.app-page-section--alerts){margin-top:var(--ui-page-gap-toolbar-next)}.ui-page .app-page-section--kpi+.app-page-section--content{margin-top:var(--ui-page-gap-kpi-content)}.ui-page .app-page-section--alerts+:is(.app-page-section--kpi,.app-page-section--content){margin-top:var(--ui-page-gap-alerts-next)}.ui-page .app-page-section--content+.app-page-section--content{margin-top:var(--ui-page-gap-kpi-content)}.ui-page .app-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.ui-page .app-section-title{margin:0;font-weight:900;letter-spacing:.01em;color:var(--text, #0f172a)}.ui-page .app-section-title--prime{font-size:1.26rem;line-height:1.1;text-shadow:0 1px 1px rgba(0,0,0,.04)}@media (min-width: 880px){.ui-page .app-section-title--prime{font-size:1.38rem}}.ui-page .app-section-subtitle{font-size:.85rem;font-weight:700;color:var(--muted, #64748b)}.ui-page .app-chip-soft{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid color-mix(in oklab,var(--line, rgba(148, 163, 184, .3)) 72%,white);background:color-mix(in oklab,var(--surface, #ffffff) 86%,var(--primary, #2d6cdf) 14%);color:color-mix(in oklab,var(--text, #0f172a) 78%,var(--primary, #2d6cdf) 22%);font-weight:800;font-size:.8rem}.ui-page .app-chip-soft--ok{background:color-mix(in oklab,#effaf2 84%,var(--surface, #ffffff) 16%);border-color:color-mix(in oklab,#bbf7d0 80%,white 20%);color:#166534}.ui-page .app-chip-soft--info{background:color-mix(in oklab,#eef6ff 84%,var(--surface, #ffffff) 16%);border-color:color-mix(in oklab,#bfdbfe 80%,white 20%);color:#1d4ed8}.ui-page .app-chip-soft--warn{background:color-mix(in oklab,#fff7ed 84%,var(--surface, #ffffff) 16%);border-color:color-mix(in oklab,#fed7aa 80%,white 20%);color:#9a3412}.ui-page .app-chip-soft--danger{background:color-mix(in oklab,#fef2f2 84%,var(--surface, #ffffff) 16%);border-color:color-mix(in oklab,#fecaca 80%,white 20%);color:#b91c1c}.ui-page .app-chipline{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.ui-page .app-toolbar-btn--secondary{min-width:112px;padding-inline:13px}.ui-page .app-filter-field{display:inline-flex;align-items:center;gap:8px}.ui-page .app-filter-field__label{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;opacity:.74}.ui-page .app-filter-field__select{min-width:176px}.ui-page .app-toolbar-group-label{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;opacity:.74}.ui-page .app-toolbar-switch{padding:2px 6px;border-radius:999px;background:color-mix(in oklab,var(--card) 90%,white);border:1px solid color-mix(in oklab,var(--line, rgba(148, 163, 184, .28)) 74%,white)}:is(.ui-page,.ui-modal.bk-modal) .app-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}:is(.ui-page,.ui-modal.bk-modal) .app-card-head[role=button]{cursor:pointer}:is(.ui-page,.ui-modal.bk-modal) .app-card-head__left{display:flex;align-items:center;gap:12px;min-width:0}:is(.ui-page,.ui-modal.bk-modal) .app-card-head__left>div{min-width:0}:is(.ui-page,.ui-modal.bk-modal) .app-head-ico{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}:is(.ui-page,.ui-modal.bk-modal) .app-head-ico--blue{background:linear-gradient(180deg,#3b76cf2e,#3b76cf1a)}:is(.ui-page,.ui-modal.bk-modal) .app-head-ico--teal{background:linear-gradient(180deg,#3fb19c2e,#3fb19c1a)}:is(.ui-page,.ui-modal.bk-modal) .app-head-ico--red{background:linear-gradient(180deg,#f74e3b2e,#f74e3b1a)}:is(.ui-page,.ui-modal.bk-modal) .app-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}:is(.ui-page,.ui-modal.bk-modal) .app-meta-label{font-size:12px;color:#64748b;font-weight:800;margin-bottom:4px}:is(.ui-page,.ui-modal.bk-modal) .app-meta-value{font-weight:900;color:#0f172a}.ui-page .card-head:not(.app-card-head){font-size:18px;font-weight:700;color:var(--text);margin-bottom:16px;display:flex;align-items:center;gap:12px;letter-spacing:-.3px}.ui-page .section{margin-bottom:32px}.ui-page .section-title:not(.app-section-title){font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:16px;display:flex;align-items:center;gap:10px}.ui-page .section-title:not(.app-section-title):before{content:"";width:4px;height:18px;background:linear-gradient(180deg,var(--primary),color-mix(in oklab,var(--primary) 60%,transparent));border-radius:999px;box-shadow:0 0 8px var(--primary-shadow)}.ui-page .small{font-size:14px;color:var(--muted)}.ui-page .muted{color:var(--muted)}.ui-page .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-page .icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--muted);cursor:pointer;transition:transform var(--ui-transition),box-shadow var(--ui-transition),border-color var(--ui-transition),background var(--ui-transition),color var(--ui-transition);box-shadow:var(--ui-shadow-sm)}.ui-page .icon-btn:hover{background:var(--primary-weak);color:var(--primary);border-color:color-mix(in oklab,var(--primary) 25%,white);transform:translateY(-2px) scale(1.08);box-shadow:var(--ui-shadow-md)}.ui-page .icon-btn.danger{color:#dc2626;border-color:#fecaca}.ui-page .icon-btn.danger:hover{background:#fef2f2;color:#b91c1c}.ui-page .u-muted{color:var(--muted)!important}.ui-page .u-grid-row-gap-10{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.ui-page .u-hbar-track{height:34px;cursor:pointer}.ui-page .ui-hero__media{height:48px;width:48px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.ui-page .ui-hero__badge{position:absolute;right:8px;top:8px}.ui-page .save-pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid var(--line);background:#f5f6f8;color:#0f172a}.ui-page .save-pill.saving{background:#fff7ed;border-color:#fdba74;color:#c2410c}.ui-page .save-pill.saved{background:#ecfdf5;border-color:#34d399;color:#065f46}.ui-page .save-pill.error{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.ui-page :is(.status-line,.app-status-line){font-weight:800}.ui-page .kpi-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--ui-page-section-gap);margin-top:0}.ui-page .kpi{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;cursor:default;transition:transform .12s ease,box-shadow .18s ease,background .18s ease;min-height:64px}.ui-page .kpi:focus,.ui-page .kpi:hover{transform:translateY(-1px)}.ui-page .kpi-ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px}.ui-page .kpi-ico.teal{background:#3fb19c24}.ui-page .kpi-ico.blue{background:#3b76cf24}.ui-page .kpi-ico.yellow{background:#fdca3033}.ui-page .kpi-body{display:flex;flex-direction:column;gap:2px}.ui-page .kpi-t{color:#475467;font-weight:700;font-size:12.5px}.ui-page .kpi-v{font-weight:900;font-size:18px}.ui-actionbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.ui-actionbar__left,.ui-actionbar__center,.ui-actionbar__right{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;max-width:100%}.ui-actionbar__right{justify-content:flex-end}.ui-actionbar__center{justify-content:center}.ui-actionbar__spacer{min-width:0;width:100%}.ui-actionbar__cluster{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;max-width:100%}.ui-page .app-page-toolbar--primary.ui-actionbar{grid-template-columns:auto minmax(320px,1fr) auto;gap:12px;align-items:center}.ui-page .app-page-toolbar--primary .ui-actionbar__left,.ui-page .app-page-toolbar--primary .ui-actionbar__center,.ui-page .app-page-toolbar--primary .ui-actionbar__right{gap:10px;min-width:0}.ui-page .app-page-toolbar--primary .ui-actionbar__center{justify-content:center}.ui-page .app-page-toolbar--primary .ui-actionbar__right{justify-content:flex-end}.ui-page .app-page-search{display:flex;align-items:center;gap:8px;flex:0 1 auto;width:min(620px,100%);min-width:260px;margin-inline:auto}.ui-page .app-page-search :is(.ico,.fic-search__icon){opacity:.8;position:static;left:auto;font-size:14px}.ui-page .app-page-search :is(.input.flat,.fic-search__input){border:none;outline:none;padding:0;width:100%;background:transparent}.ui-page .app-page-search__clear{appearance:none;border:0;background:color-mix(in oklab,var(--line) 35%,white);color:#475569;width:22px;height:22px;border-radius:999px;display:inline-grid;place-items:center;font-size:14px;font-weight:800;line-height:1;cursor:pointer}.ui-page .app-page-search__clear:hover{background:color-mix(in oklab,var(--primary, #2d6cdf) 22%,white);color:color-mix(in oklab,var(--primary, #2d6cdf) 70%,#1e293b)}.ui-page .app-page-filters-toggle{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.ui-page .app-page-filters-toggle__icon{width:16px;height:16px;display:inline-grid;place-items:center;flex:0 0 auto}.ui-page .app-page-filters-toggle__icon svg{width:16px;height:16px}.ui-page .app-page-filters-toggle__label{display:inline}.ui-page .app-page-filters-toggle__badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:#fff;background:var(--primary, #2d6cdf)}.ui-page .app-page-filters-toggle.is-open{background:color-mix(in oklab,var(--primary, #2d6cdf) 14%,#fff);border-color:color-mix(in oklab,var(--primary, #2d6cdf) 34%,transparent);color:color-mix(in oklab,var(--primary, #2d6cdf) 80%,#0f172a)}.ui-page .app-viewmode{display:inline-flex;align-items:center;gap:4px;padding:2px;border-radius:999px;border:1px solid color-mix(in oklab,var(--line, rgba(148,163,184,.28)) 74%,white);background:linear-gradient(180deg,#ffffffeb,#f8fafcd6);box-shadow:inset 0 1px #ffffffc7}.ui-page .app-viewmode__btn{appearance:none;border:0;background:transparent;color:#475569;min-height:30px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;line-height:1;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.ui-page .app-viewmode__btn:hover{color:#0f172a}.ui-page .app-viewmode__btn.is-active{background:color-mix(in oklab,var(--primary, #2d6cdf) 15%,#fff);color:color-mix(in oklab,var(--primary, #2d6cdf) 76%,#0f172a);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--primary, #2d6cdf) 24%,transparent)}.ui-page .app-viewmode__icon{width:15px;height:15px;display:inline-grid;place-items:center;flex:0 0 auto}.ui-page .app-viewmode__icon svg{width:15px;height:15px}@media (max-width: 820px){.ui-page .app-viewmode__label{display:none}.ui-page .app-viewmode__btn{min-width:30px;padding:0 8px;justify-content:center}}.ui-page .app-page-toolbar--secondary{padding:9px 12px}.ui-page .app-page-toolbar--secondary :is(.students-toolbar__secondary-row,.grp-toolbar__secondary-row,.schedule-actions__secondary-row,.bk-bookings-toolbar__secondary-row){display:flex;align-items:center;gap:10px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}.ui-page .app-page-toolbar--secondary :is(.students-toolbar__secondary-row,.grp-toolbar__secondary-row,.schedule-actions__secondary-row,.bk-bookings-toolbar__secondary-row)>*{flex:0 0 auto}.ui-page .app-page-toolbar--hero.ui-actionbar{grid-template-columns:minmax(0,1fr) auto;gap:10px}.ui-page .app-page-toolbar--hero .ui-actionbar__spacer{display:none}.ui-page .app-page-toolbar--hero .ui-actionbar__left,.ui-page .app-page-toolbar--hero .ui-actionbar__right{gap:10px;min-width:0}.ui-page .app-page-toolbar--hero .ui-actionbar__right{justify-content:flex-end}.ui-page .app-page-toolbar.app-page-toolbar--hero .btn:not(.primary):not(.danger):not(.success){background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,white),color-mix(in oklab,var(--primary, #2d6cdf) 4%,var(--card)));border-color:color-mix(in oklab,var(--line, rgba(148, 163, 184, .3)) 86%,white);color:#0f172a;box-shadow:inset 0 1px #ffffffb3,0 4px 12px #0f172a12}.ui-page .app-page-toolbar.app-page-toolbar--primary .btn:not(.primary):not(.danger):not(.success){background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,white),color-mix(in oklab,var(--primary, #2d6cdf) 4%,var(--card)));border-color:color-mix(in oklab,var(--line, rgba(148, 163, 184, .3)) 86%,white);color:#0f172a;box-shadow:inset 0 1px #ffffffb3,0 4px 12px #0f172a12}.ui-page .app-page-toolbar.app-page-toolbar--primary .btn:not(.primary):not(.danger):not(.success):hover{filter:brightness(1.03);border-color:color-mix(in oklab,var(--primary, #2d6cdf) 20%,white)}.ui-page .app-page-toolbar .app-toolbar-btn--new{min-width:122px;padding-inline:14px;font-weight:800;letter-spacing:.01em}.ui-page .app-page-toolbar.app-page-toolbar--primary .app-page-search{border:1px solid color-mix(in oklab,var(--line, rgba(148, 163, 184, .3)) 86%,white);border-radius:12px;background:color-mix(in oklab,var(--card) 94%,white);box-shadow:inset 0 1px #ffffffbd;padding:6px 10px}.ui-page .app-page-toolbar.app-page-toolbar--primary .app-page-search:focus-within{border-color:color-mix(in oklab,var(--primary, #2d6cdf) 28%,white);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary, #2d6cdf) 18%,transparent);background:#fff}.ui-page .scope-tabs{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:12px;border:1px solid color-mix(in oklab,var(--line, rgba(148, 163, 184, .3)) 74%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 90%,white),color-mix(in oklab,var(--primary, #2d6cdf) 6%,var(--card)));box-shadow:inset 0 1px #ffffffc2}.ui-page .scope-tabs__btn{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:#334155;font-size:12.5px;font-weight:800;cursor:pointer;transition:transform var(--ui-transition),background var(--ui-transition),color var(--ui-transition),box-shadow var(--ui-transition)}.ui-page .scope-tabs__btn:hover{background:#fff9}.ui-page .scope-tabs__btn.is-active{background:#fff;border-color:color-mix(in oklab,var(--primary, #2d6cdf) 18%,white);color:color-mix(in oklab,var(--primary, #2d6cdf) 76%,#0f172a);box-shadow:0 4px 10px #0f172a14}.ui-page .scope-tabs__count{min-width:16px;height:16px;padding:0 4px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;line-height:1;font-weight:900;background:color-mix(in oklab,var(--line, rgba(148, 163, 184, .3)) 44%,white);color:#334155}.ui-actionbar--dense{padding-block:8px!important}.ui-actionbar--sticky{position:sticky;top:0;z-index:500}.ui-page :is(.app-hero,.fic-hero) :is(.hstack,.head-actions,.toolbar-actions){display:flex;align-items:center;flex-wrap:wrap;gap:10px}.ui-page .ui-hero__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ui-page .ui-hero__actions :is(.ui-toolbar,.ui-actionbar){width:min(920px,100%)}.ui-page :is(.ui-toolbar,.fic-toolbar,.grp-toolbar,.ui-actionbar,.app-hero,.fic-hero) :is(.btn):not(.seg):not(.chip){min-height:36px;padding:0 14px;font-size:14px;font-weight:800;letter-spacing:.01em}@media (max-width: 720px){.ui-page .app-page-toolbar--primary.ui-actionbar{grid-template-columns:1fr;gap:8px}.ui-page .app-page-toolbar--primary .ui-actionbar__center{order:1;justify-content:flex-start}.ui-page .app-page-toolbar--primary .ui-actionbar__left{order:2}.ui-page .app-page-toolbar--primary .ui-actionbar__right{order:3;justify-content:flex-start}.ui-page .app-page-search{width:100%;min-width:0}.ui-page .app-page-toolbar--hero.ui-actionbar{grid-template-columns:1fr;gap:8px}.ui-page .app-page-toolbar--hero .ui-actionbar__left{order:1}.ui-page .app-page-toolbar--hero .ui-actionbar__right{order:2;justify-content:flex-start}.ui-page .app-page-toolbar--secondary{padding:8px 10px}.ui-page .app-page-toolbar--secondary :is(.students-toolbar__secondary-row,.grp-toolbar__secondary-row,.schedule-actions__secondary-row,.bk-bookings-toolbar__secondary-row){align-items:stretch;row-gap:8px;flex-wrap:wrap;overflow-x:visible}.ui-page .app-page-toolbar--secondary :is(.students-toolbar__secondary-row,.grp-toolbar__secondary-row,.schedule-actions__secondary-row,.bk-bookings-toolbar__secondary-row)>*{min-width:0;flex:1 1 220px}.ui-page .scope-tabs{width:100%;justify-content:stretch}.ui-page .scope-tabs__btn{flex:1 1 0;justify-content:center;min-width:0;padding:0 8px}.ui-page .app-filter-field{width:100%;flex-wrap:wrap}.ui-page .app-filter-field__label{display:none}.ui-page .app-filter-field__select{width:100%;min-width:0}.ui-page .kpi-ico{width:38px;height:38px;font-size:18px}.ui-page .kpi-v{font-size:17px}.ui-page :is(.app-hero,.fic-hero) :is(.hstack,.head-actions,.toolbar-actions){gap:8px}.ui-page .ui-hero__actions{width:100%;gap:8px}.ui-page .ui-hero__actions :is(.ui-toolbar,.ui-actionbar){width:100%}.ui-page :is(.ui-toolbar,.fic-toolbar,.grp-toolbar,.ui-actionbar,.app-hero,.fic-hero) :is(.btn):not(.seg):not(.chip){min-height:36px;padding:0 12px;font-size:13.5px}.ui-actionbar{grid-template-columns:1fr;gap:8px}.ui-actionbar__left,.ui-actionbar__center,.ui-actionbar__right{justify-content:flex-start}}.ui-page :is(.btn,.input,textarea,select){border-radius:var(--ui-radius-sm)}.ui-page :is(.input,textarea,select){width:100%;min-width:0;padding:11px 14px;font-size:15px;color:var(--text, #0f172a);border:1px solid var(--ui-border-soft);background:color-mix(in oklab,var(--card) 92%,white);box-shadow:inset 0 1px #fff9;transition:border-color var(--ui-transition),box-shadow var(--ui-transition),background var(--ui-transition)}.ui-page :is(.input,textarea,select):focus{outline:none;border-color:color-mix(in oklab,var(--primary) 45%,white);box-shadow:0 0 0 3px var(--ui-focus);background:#fff}.ui-page :is(.btn):not(.seg):not(.chip){display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;min-height:38px;color:var(--text, #0f172a);border:1px solid var(--ui-border-soft);background:color-mix(in oklab,var(--card) 94%,white);box-shadow:var(--ui-shadow-sm);cursor:pointer;letter-spacing:-.01em;font-weight:800;transition:transform var(--ui-transition),box-shadow var(--ui-transition),filter var(--ui-transition)}.ui-page :is(.btn):not(.seg):not(.chip):disabled{opacity:.5;cursor:not-allowed;transform:none}.ui-page .btn.sm:not(.seg):not(.chip){min-height:34px;padding-inline:12px;font-size:13px}.ui-page :is(.btn):not(.seg):not(.chip):hover{transform:translateY(-1px);box-shadow:var(--ui-shadow-md)}.ui-page :is(.btn.primary):not(.seg):not(.chip){background:linear-gradient(135deg,var(--primary) 0%,color-mix(in oklab,var(--primary) 84%,black) 100%);border-color:transparent;color:#fff;box-shadow:0 8px 18px color-mix(in oklab,var(--primary) 32%,transparent)}.ui-page :is(.btn.primary):not(.seg):not(.chip):hover{filter:brightness(1.04)}.app .ui-page :is(.btn.primary,.btn.send):not(.seg):not(.chip):not(.btn--tone-primary){background:linear-gradient(135deg,var(--primary) 0%,color-mix(in oklab,var(--primary) 84%,black) 100%)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 8px 18px color-mix(in oklab,var(--primary) 32%,transparent)!important}.app .ui-page :is(.btn.primary,.btn.send):not(.seg):not(.chip):not(.btn--tone-primary):hover{filter:brightness(1.04)}.ui-page :is(.btn.danger):not(.seg):not(.chip){background:linear-gradient(135deg,#dc2626,#b91c1c);border-color:transparent}.ui-page :is(.btn.ghost):not(.seg):not(.chip){background:color-mix(in oklab,var(--card) 90%,white)}.ui-page :is(.table-wrap){border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-md);background:linear-gradient(180deg,#ffffffe0,#fffffff0);box-shadow:var(--ui-shadow-sm);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.ui-page :is(.tablex){border-color:var(--ui-border-soft)}.ui-page :is(.tablex thead th){background:linear-gradient(180deg,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 11%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 5%,white));border-bottom:1px solid color-mix(in oklab,var(--ui-page-accent, var(--primary)) 24%,white);backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%)}.ui-page :is(.tablex tbody tr:nth-child(2n)){background:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 2.5%,white)}.ui-page :is(.empty,.sd-empty){border:1px dashed color-mix(in oklab,var(--line, #cbd5e1) 78%,white);border-radius:var(--ui-radius-sm);background:color-mix(in oklab,var(--card) 92%,white);color:var(--muted, #64748b);padding:12px}:root{--ui-chevron-size: 36px}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron,.chev,.day-chev,.lg-head__chev){--_ui-chevron-size: var(--ui-chevron-size);appearance:none;width:var(--_ui-chevron-size);min-width:var(--_ui-chevron-size);height:var(--_ui-chevron-size);border-radius:999px;border:1px solid color-mix(in oklab,var(--primary) 26%,#fff);background:color-mix(in oklab,var(--primary) 12%,#fff);color:color-mix(in oklab,var(--primary) 84%,#0f172a);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;box-shadow:0 4px 12px #0206170f;transition:transform var(--ui-transition),box-shadow var(--ui-transition),filter var(--ui-transition),background var(--ui-transition),border-color var(--ui-transition)}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron,.chev,.day-chev,.lg-head__chev):hover{background:color-mix(in oklab,var(--primary) 22%,#fff);border-color:color-mix(in oklab,var(--primary) 40%,#fff);box-shadow:0 8px 18px color-mix(in oklab,var(--primary) 24%,transparent);transform:translateY(-1px)}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron,.chev,.day-chev,.lg-head__chev):active{transform:translateY(0)}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron,.chev,.day-chev,.lg-head__chev) svg{width:18px;height:18px;stroke:currentColor;transition:transform var(--ui-transition)}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron,.chev,.day-chev,.lg-head__chev).open{background:var(--primary);border-color:transparent;color:#fff;box-shadow:0 8px 18px color-mix(in oklab,var(--primary) 32%,transparent)}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron,.chev,.day-chev,.lg-head__chev).open svg{transform:rotate(180deg)}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) :is(.ui-chevron--sm,.chev.mini,.day-chev.mini){--_ui-chevron-size: 28px}:is(.app .ui-page,.ui-modalOverlay .ui-modal.ui-modal,.ui-modalOverlay .fic-modal.fic-modal,.ui-modalOverlay .exam-modal.exam-modal) .ui-chevron--lg{--_ui-chevron-size: 40px}:where(.ui-switch,.ios-switch){display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none}:where(.ui-switch,.ios-switch) input[type=checkbox]{appearance:none;width:40px;height:22px;border-radius:999px;background:#d1d5db;position:relative;transition:background var(--ui-transition);flex-shrink:0}:where(.ui-switch,.ios-switch) input[type=checkbox]:checked{background:var(--primary, #2d6cdf)}:where(.ui-switch,.ios-switch) input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform var(--ui-transition)}:where(.ui-switch,.ios-switch) input[type=checkbox]:checked:after{transform:translate(18px)}:where(.ui-switch,.ios-switch) .label{font-size:13px;font-weight:700;color:#475569;white-space:nowrap}:where(.ui-switch--compact,.ios-switch--compact){gap:6px}:where(.ui-switch--compact,.ios-switch--compact) .label{font-size:12px}.ui-modalOverlay{background:radial-gradient(1000px 60% at 100% 0%,rgba(255,255,255,.18),transparent 58%),radial-gradient(1000px 60% at 0% 100%,rgba(255,255,255,.14),transparent 58%),linear-gradient(180deg,#0f172a75,#0f172a66)}.ui-modal{border-radius:var(--ui-radius-lg);border:1px solid rgba(255,255,255,.6);box-shadow:0 26px 64px #02061747}.ui-modal__header{border-bottom-color:#fff9}.ui-modal__footer{border-top-color:#fff9}.ui-surface{border-radius:var(--ui-radius-md);border:1px solid var(--ui-border-soft);background:var(--ui-surface);box-shadow:var(--ui-shadow-sm)}.ui-toolbar{border-radius:var(--ui-radius-md);border:1px solid var(--ui-border-soft);background:linear-gradient(180deg,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 9%,white),color-mix(in oklab,var(--card) 90%,white));box-shadow:var(--ui-shadow-sm);padding:10px 12px}.ui-page :is(.kpi){position:relative;overflow:hidden;border-radius:var(--ui-radius-md);border:1px solid color-mix(in oklab,var(--ui-page-accent, var(--primary)) 18%,white);background:linear-gradient(145deg,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 10%,white),color-mix(in oklab,var(--card) 88%,white));box-shadow:var(--ui-shadow-sm)}.ui-page :is(.kpi):after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(220px 90px at 12% -10%,rgba(255,255,255,.58),transparent 70%),radial-gradient(220px 90px at 95% 110%,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 12%,transparent),transparent 74%)}.ui-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.ui-summary-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))}:is(.ui-summary-card,.ui-page .fic-stat,.ui-modal .ga-pro-stat){--summary-tone: var(--ui-page-accent, var(--primary));display:grid;gap:3px;align-content:center;min-height:68px;padding:11px 12px;border-radius:14px;border:1px solid color-mix(in oklab,var(--summary-tone) 24%,white);background:linear-gradient(145deg,color-mix(in oklab,var(--summary-tone) 12%,white),color-mix(in oklab,var(--card) 90%,white));box-shadow:var(--ui-shadow-sm);position:relative;overflow:hidden}:is(.ui-summary-card,.ui-page .fic-stat,.ui-modal .ga-pro-stat):after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(180px 88px at 12% -8%,rgba(255,255,255,.52),transparent 70%),radial-gradient(180px 88px at 95% 110%,color-mix(in oklab,var(--summary-tone) 12%,transparent),transparent 74%)}.ui-summary-card--blue,.ui-page .fic-stat.stat--students{--summary-tone: #3b76cf}.ui-summary-card--rose,.ui-page .fic-stat.stat--groups{--summary-tone: #f74e3b}.ui-summary-card--amber,.ui-page .fic-stat.stat--assigned{--summary-tone: #fdca30}.ui-summary-card--teal,.ui-page .fic-stat.stat--free{--summary-tone: #3fb19c}.ui-summary-card__label{color:color-mix(in oklab,var(--summary-tone) 18%,#475467);font-size:12.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.ui-summary-card__value{color:color-mix(in oklab,var(--summary-tone) 20%,#0f172a);font-size:24px;line-height:1;font-weight:900;font-variant-numeric:tabular-nums}.ui-summary-card__meta{color:color-mix(in oklab,var(--summary-tone) 14%,#64748b);font-size:12px;font-weight:700;line-height:1.25}:is(.ui-page,.ui-modal) .ui-summary-card .ui-summary-card__label{color:color-mix(in oklab,var(--summary-tone) 18%,#475467);font-size:12.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}:is(.ui-page,.ui-modal) .ui-summary-card .ui-summary-card__value{color:color-mix(in oklab,var(--summary-tone) 20%,#0f172a);font-size:24px;line-height:1;font-weight:900;font-variant-numeric:tabular-nums}:is(.ui-page,.ui-modal) .ui-summary-card .ui-summary-card__meta{color:color-mix(in oklab,var(--summary-tone) 14%,#64748b);font-size:12px;font-weight:700;line-height:1.25}.ui-seg-tabs{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.ui-seg-tab{appearance:none;border:1px solid color-mix(in oklab,var(--ui-page-accent, var(--primary)) 26%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 94%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 8%,white));color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 45%,#1f2937);border-radius:11px;min-height:34px;padding:0 10px;transition:transform var(--ui-transition),box-shadow var(--ui-transition),border-color var(--ui-transition),filter var(--ui-transition)}.ui-seg-tab:hover{transform:translateY(-1px);border-color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 42%,white);box-shadow:0 6px 14px color-mix(in oklab,var(--ui-page-accent, var(--primary)) 20%,transparent)}.ui-row-item{border:1px solid color-mix(in oklab,var(--line, #cbd5e1) 72%,white);border-radius:12px;background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 4%,white));box-shadow:0 4px 14px #0f172a0f}:is(.ui-person-name,.ui-page .student-card .name,.ui-page .grp-name,.ui-modal .ga-pro-name,.ui-page .fc-name,.ui-page .mc-name){color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 14%,#0f172a);letter-spacing:.01em}.ui-modal.ga-pro-modal .ga-pro-header{border-bottom:1px solid color-mix(in oklab,var(--line, #cbd5e1) 68%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 92%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 8%,white))}.ui-modal.ga-pro-modal .ga-pro-content{background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 5%,white))}.ui-modal.ga-pro-modal :is(.ga-pro-input,.ga-pro-select,.ga-pro-toggle){border-color:color-mix(in oklab,var(--line, #cbd5e1) 74%,white);background:color-mix(in oklab,var(--card) 94%,white);color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 22%,#0f172a)}.ui-modal.ga-pro-modal .ga-pro-day{border:1px solid color-mix(in oklab,var(--line, #cbd5e1) 72%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 4%,white));box-shadow:var(--ui-shadow-sm)}.ui-modal.ga-pro-modal .ga-pro-day-head{border-bottom:1px solid color-mix(in oklab,var(--line, #cbd5e1) 72%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 9%,white),color-mix(in oklab,var(--card) 94%,white))}.ui-modal.ga-pro-modal .ga-pro-footer{border-top:1px solid color-mix(in oklab,var(--line, #cbd5e1) 68%,white);background:linear-gradient(0deg,color-mix(in oklab,var(--card) 94%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 5%,white))}.ui-modal.ga-pro-modal .ga-pro-day-chip{border:1px solid color-mix(in oklab,var(--ui-page-accent, var(--primary)) 26%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 94%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 8%,white));color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 45%,#1f2937);box-shadow:0 4px 10px #0f172a0f;min-width:62px}.ui-modal.ga-pro-modal .ga-pro-day-chip:hover{border-color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 42%,white);box-shadow:0 8px 16px color-mix(in oklab,var(--ui-page-accent, var(--primary)) 20%,transparent)}.ui-modal.ga-pro-modal .ga-pro-student{border:1px solid color-mix(in oklab,var(--line, #cbd5e1) 72%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 96%,white),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 4%,white));box-shadow:0 4px 14px #0f172a0f}@media (max-width: 820px){.ui-summary-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.ui-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ui-summary-grid--compact{grid-template-columns:1fr}}:root{--modal-radius: 18px;--modal-border: 1px solid rgba(255, 255, 255, .62);--modal-shadow: 0 26px 70px rgba(2, 6, 23, .28);--modal-pad-y: 15px;--modal-pad-x: 20px;--modal-content-pad-y: 18px;--modal-content-pad-x: 20px;--modal-footer-gap: 12px;--modal-footer-btn-min: 104px;--modal-bg: linear-gradient( 180deg, rgba(255, 255, 255, .94) 0%, rgba(255, 255, 255, .9) 100% )}.popover,.ui-modalOverlay{background:radial-gradient(950px 58% at 100% 0%,rgba(255,255,255,.2),transparent 60%),radial-gradient(950px 58% at 0% 100%,rgba(255,255,255,.14),transparent 60%),linear-gradient(180deg,#0f172a75,#0f172a66);backdrop-filter:blur(12px) saturate(155%);-webkit-backdrop-filter:blur(12px) saturate(155%)}.mdp-backdrop,.exam-modal-overlay,.mode-overlay{background:radial-gradient(900px 56% at 100% 0%,rgba(255,255,255,.2),transparent 62%),linear-gradient(180deg,#0f172a75,#0f172a66);backdrop-filter:blur(11px) saturate(150%);-webkit-backdrop-filter:blur(11px) saturate(150%)}.fic-modal,.ui-modal,.exam-modal,.mdp,.mode-panel{background:var(--modal-bg);border:var(--modal-border);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow)}.fic-modal__header,.ui-modal__header,.app-modal__header{padding:var(--modal-pad-y) var(--modal-pad-x);border-bottom:1px solid rgba(255,255,255,.62);background:linear-gradient(180deg,#ffffffeb,#ffffffc7);backdrop-filter:saturate(175%) blur(10px);-webkit-backdrop-filter:saturate(175%) blur(10px)}.fic-modal__title,.ui-modal__title,.app-modal__title{font-weight:800;letter-spacing:.2px}.fic-modal__title .fic-avatar{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#f1f5f9;margin-right:10px}.fic-modal__content,.ui-modal__content,.ui-modal__body,.app-modal__content{padding:var(--modal-content-pad-y) var(--modal-content-pad-x)}.fic-modal__footer,.ui-modal__footer,.app-modal__footer{padding:var(--modal-pad-y) var(--modal-pad-x);border-top:1px solid rgba(255,255,255,.62);background:linear-gradient(0deg,#ffffffeb,#ffffffc7);backdrop-filter:saturate(175%) blur(10px);-webkit-backdrop-filter:saturate(175%) blur(10px)}.fic-modal :is(.btn,.btn.primary,.btn.danger),.ui-modal :is(.btn,.btn.primary,.btn.danger),.exam-modal :is(.btn,.btn.primary,.btn.danger){min-height:38px;border-radius:12px;font-weight:800}.fic-modal :is(.btn.primary,.btn--tone-primary),.ui-modal :is(.btn.primary,.btn--tone-primary),.exam-modal :is(.btn.primary,.btn--tone-primary){background:linear-gradient(135deg,var(--primary) 0%,color-mix(in oklab,var(--primary) 84%,black) 100%)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 8px 18px color-mix(in oklab,var(--primary) 32%,transparent)}.fic-modal :is(.btn.primary,.btn--tone-primary):hover,.ui-modal :is(.btn.primary,.btn--tone-primary):hover,.exam-modal :is(.btn.primary,.btn--tone-primary):hover{filter:brightness(1.04)}.ui-modalOverlay{position:fixed;inset:0;z-index:var(--z-modal, 25000);display:grid;place-items:center;padding:20px;overscroll-behavior:contain}.ui-modal{width:min(720px,96vw);max-height:min(86vh,900px);min-width:0;display:flex;flex-direction:column;overflow:hidden}.ui-modal--xl{width:min(1200px,96vw);max-height:min(88vh,1100px)}.ui-modal--print{max-width:560px}.ui-modal__header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.ui-modal__title{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.ui-modal__icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#f8fafc;border:1px solid rgba(226,232,240,.8);font-size:16px;flex-shrink:0;box-shadow:0 2px 6px #0206170f}.ui-modal__titleText{font-weight:900;font-size:15px;color:#0f172a;letter-spacing:.01em;line-height:1.3}.ui-modal__subtitle{margin-top:2px;font-size:12.5px;font-weight:700;line-height:1.3;color:#64748b}.ui-modal__close{appearance:none;border:1px solid #e5e7eb;background:#fff;border-radius:10px;width:34px;height:34px;display:grid;place-items:center;cursor:pointer;font-weight:900;color:#475569;flex-shrink:0;box-shadow:0 2px 6px #0206170f;transition:background var(--ui-transition),box-shadow var(--ui-transition)}.app-modal__close{appearance:none}.ui-modal__close:hover{background:#f8fafc;box-shadow:0 6px 14px #0206171c}.ui-modal__content,.ui-modal__body{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.ui-modal__footer{position:sticky;bottom:0;z-index:2;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--modal-footer-gap);align-items:center;flex-shrink:0}.app-modal__footer[data-layout=slots]{justify-content:space-between}.app-modal__footer[data-layout=slots] .app-modal__footer-slot{display:flex;align-items:center;gap:var(--modal-footer-gap);min-width:0;flex-wrap:wrap}.app-modal__footer[data-layout=slots] .app-modal__footer-slot--left{justify-content:flex-start}.app-modal__footer[data-layout=slots] .app-modal__footer-slot--right{justify-content:flex-end;margin-left:auto}.ui-modal>:is(.ui-modal__header,.fic-modal__header,.app-modal__header){padding:var(--modal-pad-y) var(--modal-pad-x)!important}.ui-modal>:is(.ui-modal__content,.ui-modal__body,.fic-modal__content,.app-modal__content){padding:var(--modal-content-pad-y) var(--modal-content-pad-x)!important}.ui-modal>:is(.ui-modal__footer,.fic-modal__footer,.app-modal__footer){padding:var(--modal-pad-y) var(--modal-pad-x)!important;gap:var(--modal-footer-gap)!important}.ui-modal__footer>:is(.btn,.btn--sm){min-width:var(--modal-footer-btn-min)}.app-modal__footer[data-layout=slots] .app-modal__footer-slot>:is(.btn,.btn--sm){min-width:var(--modal-footer-btn-min)}.ui-modal__spacer{flex:1 1 auto;min-width:0;width:auto;height:1px}.ui-modal .input,.ui-modal select,.ui-modal input:not([type=checkbox]):not([type=radio]),.ui-modal textarea,.ui-modal .btn{min-height:44px;font-size:16px}.app-modal-shell{background:var(--modal-bg)!important;border:var(--modal-border)!important;border-radius:var(--modal-radius)!important;box-shadow:var(--modal-shadow)!important}.app-modal-shell>:is(.ui-modal__header,.fic-modal__header,.app-modal__header){border-bottom:1px solid rgba(255,255,255,.62)!important;background:linear-gradient(180deg,#ffffffeb,#ffffffc7)!important;backdrop-filter:saturate(175%) blur(10px)!important;-webkit-backdrop-filter:saturate(175%) blur(10px)!important}.app-modal-shell>:is(.ui-modal__content,.ui-modal__body,.fic-modal__content,.app-modal__content){background:transparent!important}.app-modal-shell>:is(.ui-modal__footer,.fic-modal__footer,.app-modal__footer){border-top:1px solid rgba(255,255,255,.62)!important;background:linear-gradient(0deg,#ffffffeb,#ffffffc7)!important;backdrop-filter:saturate(175%) blur(10px)!important;-webkit-backdrop-filter:saturate(175%) blur(10px)!important}@media (max-width: 640px){.ui-modalOverlay{padding:0;align-items:flex-end}.ui-modal,.ui-modal--xl{width:100vw;height:100dvh;max-height:none;max-width:100vw;border-radius:0}.ui-modal__header{padding:12px 16px calc(12px + env(safe-area-inset-top))}.ui-modal__content,.ui-modal__body{padding:12px 16px 16px}.ui-modal__footer{display:grid;padding:12px 16px calc(12px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr;gap:var(--modal-footer-gap)}.app-modal__footer[data-layout=slots] .app-modal__footer-slot{width:100%;min-width:0}.app-modal__footer[data-layout=slots] .app-modal__footer-slot--left{grid-column:1}.app-modal__footer[data-layout=slots] .app-modal__footer-slot--right{grid-column:2;margin-left:0}.ui-modal>:is(.ui-modal__header,.fic-modal__header,.app-modal__header){padding:12px 16px calc(12px + env(safe-area-inset-top))!important}.ui-modal>:is(.ui-modal__content,.ui-modal__body,.fic-modal__content,.app-modal__content){padding:12px 16px 16px!important}.ui-modal>:is(.ui-modal__footer,.fic-modal__footer,.app-modal__footer){padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important}.ui-modal__spacer{display:none!important}.ui-modal__footer .btn{width:100%;min-width:0;padding:0;font-size:14px;font-weight:800}.ui-modal__footer .btn.btn--tone-danger,.ui-modal__footer .btn.danger{grid-column:1 / -1;order:-1;margin-bottom:6px}}:root{--ui-brand-font: "Manrope", "Plus Jakarta Sans", "Avenir Next", "Segoe UI", sans-serif}body{font-family:var(--ui-brand-font);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;background:radial-gradient(1200px 520px at -12% -14%,color-mix(in oklab,var(--primary) 14%,transparent),transparent 66%),radial-gradient(1100px 500px at 118% -8%,color-mix(in oklab,var(--primary) 11%,transparent),transparent 68%),radial-gradient(900px 420px at 50% 112%,color-mix(in oklab,var(--primary) 8%,transparent),transparent 72%),linear-gradient(160deg,#f8fbff,#eef5fd 46%,#f9fcff)}::selection{background:color-mix(in oklab,var(--primary) 28%,white);color:#0f172a}*{scrollbar-width:thin;scrollbar-color:color-mix(in oklab,var(--primary) 40%,#cbd5e1) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{border-radius:999px;border:2px solid transparent;background-clip:content-box;background:color-mix(in oklab,var(--primary) 38%,#cbd5e1)}*::-webkit-scrollbar-track{background:transparent}.app{position:relative}.ui-page{position:relative;isolation:isolate;animation:uiFadeUp .24s cubic-bezier(.2,.7,.2,1)}.ui-page[class*=ui-page--]{--ui-page-accent: var(--primary)}.ui-page[class*=ui-page--]:before,.ui-page[class*=ui-page--]:after{content:"";position:absolute;z-index:-1;pointer-events:none;border-radius:999px;filter:blur(42px);opacity:.38;transform:translateZ(0);animation:uiAuroraFloat 14s ease-in-out infinite}.ui-page[class*=ui-page--]:before{width:280px;height:280px;top:-34px;right:-72px;background:color-mix(in oklab,var(--ui-page-accent) 22%,white)}.ui-page[class*=ui-page--]:after{width:220px;height:220px;left:-50px;bottom:-36px;background:color-mix(in oklab,var(--ui-page-accent) 16%,white);animation-delay:-7s}.ui-page--dashboard{--ui-page-accent: #5994DD}.ui-page--students{--ui-page-accent: #FE6649}.ui-page--groups{--ui-page-accent: #54BDA5}.ui-page--schedule{--ui-page-accent: #FFD03C}.ui-page--bookings{--ui-page-accent: #5994DD}.ui-page--recitals{--ui-page-accent: #FE6649}.ui-page--teacher{--ui-page-accent: #54BDA5}.ui-page--settings{--ui-page-accent: #5994DD}.ui-page[class*=ui-page--] :is(.app-hero,.fic-hero):after{content:"";position:absolute;width:380px;height:380px;right:-100px;top:-120px;border-radius:50%;pointer-events:none;z-index:0;background:radial-gradient(circle,color-mix(in oklab,var(--ui-page-accent) 12%,transparent) 0%,transparent 65%);animation:heroAccentBreath 7s ease-in-out infinite}.ui-page[class*=ui-page--] :is(.app-hero,.fic-hero) :is(.ui-hero__left,.ui-hero__actions){position:relative;z-index:2}.ui-page[class*=ui-page--] :is(.app-hero,.fic-hero) .ui-hero__badge{position:absolute;top:10px;right:12px;z-index:3}.ui-hero__orbital{position:absolute;right:28px;top:50%;transform:translateY(-50%);width:72px;height:72px;pointer-events:none;opacity:.18;z-index:1}.ui-hero__orb{position:absolute;border-radius:999px;border:1.5px solid var(--ui-page-accent)}.ui-hero__orb--a{inset:0;animation:uiOrbitalFloat 9s ease-in-out infinite}.ui-hero__orb--b{inset:12px;opacity:.55;animation:uiOrbitalFloatB 11s ease-in-out infinite reverse}.ui-hero__beam{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-30deg);width:200%;height:1px;background:linear-gradient(90deg,transparent,var(--ui-page-accent) 50%,transparent);opacity:.2;animation:heroBeamSweep 6s ease-in-out infinite}.ui-hero__constellation{position:absolute;right:120px;top:50%;transform:translateY(-50%);width:80px;height:44px;pointer-events:none;opacity:.22;z-index:1;animation:uiConstellationFloat 8s ease-in-out infinite}.ui-hero__constellation:before,.ui-hero__constellation:after{content:"";position:absolute;height:1px;transform-origin:left center;background:var(--ui-page-accent)}.ui-hero__constellation:before{left:10px;top:10px;width:44px;transform:rotate(20deg)}.ui-hero__constellation:after{left:34px;top:22px;width:36px;transform:rotate(-16deg)}.ui-hero__constellation span{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--ui-page-accent);animation:uiConstellationPulse 3s ease-in-out infinite}.ui-hero__constellation span:nth-child(1){left:6px;top:7px}.ui-hero__constellation span:nth-child(2){left:50px;top:20px;animation-delay:-1s}.ui-hero__constellation span:nth-child(3){left:68px;top:4px;animation-delay:-1.9s}.ui-page :is(.tablex tbody tr){transition:background var(--ui-transition),transform var(--ui-transition)}.ui-page :is(.tablex tbody tr:hover){background:color-mix(in oklab,var(--ui-page-accent) 5%,white);transform:translate(1px)}.ui-page :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass){transition:transform .22s cubic-bezier(.2,.65,.2,1),box-shadow var(--ui-transition),border-color var(--ui-transition)}.ui-page[class*=ui-page--] :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass,.ui-surface,.ui-toolbar,.table-wrap,.fic-toolbar,.grp-toolbar,.ui-actionbar){position:relative;isolation:isolate}.ui-page[class*=ui-page--] :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass,.ui-surface,.ui-toolbar,.table-wrap,.fic-toolbar,.grp-toolbar,.ui-actionbar):before{content:"";position:absolute;left:10px;top:1px;width:min(42%,220px);max-width:calc(100% - 20px);height:2px;border-radius:999px;pointer-events:none;background:linear-gradient(90deg,color-mix(in oklab,var(--ui-page-accent) 44%,white) 0%,color-mix(in oklab,var(--ui-page-accent) 20%,transparent) 72%,transparent 100%);opacity:.95}.ui-page :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass):hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--ui-page-accent) 24%,white)}.ui-page .btn:not(.seg):not(.chip){position:relative;overflow:hidden}.ui-page .btn:not(.seg):not(.chip):after{content:"";position:absolute;inset:-24% auto auto -38%;width:56%;height:180%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);opacity:0;transition:transform .36s ease,opacity .28s ease}.ui-page .btn:not(.seg):not(.chip):hover:after{opacity:1;transform:translate(190%) rotate(18deg)}.ui-modalOverlay{animation:uiOverlayIn .18s ease-out}.ui-modal{position:relative;isolation:isolate;animation:uiModalIn .22s cubic-bezier(.2,.75,.2,1)}.ui-modal:before{content:"";position:absolute;left:12px;top:1px;width:min(48%,280px);max-width:calc(100% - 24px);height:2px;border-radius:999px;pointer-events:none;background:linear-gradient(90deg,color-mix(in oklab,var(--primary) 48%,white),color-mix(in oklab,var(--primary) 18%,transparent),transparent);z-index:4}.ui-modal:after{content:"";position:absolute;right:20px;top:12px;width:64px;height:30px;pointer-events:none;border-radius:999px;background-image:radial-gradient(circle at center,color-mix(in oklab,var(--primary) 36%,white) 0 1.2px,transparent 1.8px);background-size:16px 16px;opacity:.2;z-index:1}.ui-modal :is(.ui-modal__header,.ui-modal__content,.ui-modal__body,.ui-modal__footer){position:relative;z-index:2}@keyframes uiFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes uiAuroraFloat{0%,to{transform:translateZ(0)}50%{transform:translate3d(10px,-8px,0) scale(1.03)}}@keyframes uiOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes uiModalIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes uiConstellationFloat{0%,to{transform:translateZ(0)}50%{transform:translate3d(-4px,2px,0)}}@keyframes uiConstellationPulse{0%,to{transform:scale(.95);opacity:.75}45%{transform:scale(1.12);opacity:1}}@keyframes uiOrbitalFloat{0%,to{transform:translateZ(0) rotate(-9deg)}50%{transform:translate3d(-4px,-3px,0) rotate(-6deg)}}@keyframes uiOrbitalFloatB{0%,to{transform:translateZ(0) rotate(10deg)}50%{transform:translate3d(-4px,-3px,0) rotate(13deg)}}@keyframes uiOrbitalBeam{0%,to{opacity:.38;transform:translate(0) rotate(-18deg)}50%{opacity:.78;transform:translate(18px) rotate(-18deg)}}@keyframes heroAccentBreath{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes heroBeamSweep{0%,to{opacity:.12;transform:translate(-50%,-50%) rotate(-30deg) translate(0)}50%{opacity:.28;transform:translate(-50%,-50%) rotate(-30deg) translate(24px)}}@keyframes heroGreetIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ui-page .plan-alert__actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.ui-page .plan-alert__dismiss{width:32px;height:32px;border-radius:10px;border:1px solid color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 40%,white 45%);background:#ffffffb8;color:color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 35%,#0f172a);font-size:24px;line-height:1;padding:0;display:grid;place-items:center;cursor:pointer}.ui-page .plan-alert__dismiss:hover{background:#fffffff2}.ui-page .plan-alert__dismiss:focus-visible{outline:2px solid color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 55%,#2563eb 45%);outline-offset:1px}.ui-page .ui-session-note{margin-top:8px;margin-bottom:10px;padding:8px 12px;border-radius:11px;border:1px solid color-mix(in oklab,var(--primary, #2d6cdf) 26%,white);background:color-mix(in oklab,var(--primary, #2d6cdf) 10%,white 90%);color:color-mix(in oklab,var(--primary, #2d6cdf) 45%,#1e293b);font-size:12px;font-weight:800;letter-spacing:.01em;animation:uiFadeUp .17s ease-out}.ui-page .plan-alerts-grid{display:grid;gap:12px;grid-template-columns:1fr}@media (min-width: 880px){.ui-page .plan-alerts-grid{grid-template-columns:1fr 1fr}}.ui-page .plan-alert-row{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap}.ui-page .plan-alert-row>.plan-alert{flex:1 1 0;min-width:0}.ui-page .plan-alert-row>.plan-alert:only-child{flex-basis:100%}.ui-page .plan-alert{--p: var(--primary, #2d6cdf);display:flex;align-items:center;gap:12px;border:1px solid color-mix(in oklab,var(--p) 55%,white 20%);border-radius:14px;background:color-mix(in oklab,var(--p) 14%,white 86%);padding:12px;box-shadow:inset 0 1px #ffffff73,0 8px 20px #0206171a;font-weight:800;color:color-mix(in oklab,var(--p) 25%,#0b2255);margin:8px 0 12px;animation:appPlanPulse 1.8s ease-out 3}.ui-page .plan-ico{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in oklab,var(--p) 22%,white 78%);border:1px solid color-mix(in oklab,var(--p) 46%,white 40%);font-size:16px;flex-shrink:0}.ui-page .plan-text{flex:1;min-width:0}.ui-page .plan-title{font-weight:900;line-height:1.3}.ui-page .plan-sub{font-size:.82rem;color:#475569;font-weight:600;margin-top:2px}.ui-page .plan-alert .btn.ghost{border:1px dashed color-mix(in oklab,var(--p) 45%,white 35%);background:#ffffff8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);height:32px;border-radius:10px;font-weight:800}@keyframes appPlanPulse{0%{box-shadow:inset 0 1px #ffffff73,0 0 color-mix(in oklab,var(--p) 40%,transparent),0 8px 20px #0206171a}70%{box-shadow:inset 0 1px #ffffff73,0 0 0 10px transparent,0 12px 28px #02061724}to{box-shadow:inset 0 1px #ffffff73,0 0 0 0 transparent,0 8px 20px #0206171a}}@media (max-width: 560px){.ui-page .plan-alert-row{flex-direction:column}.ui-page .plan-alert{flex-wrap:wrap}.ui-page .plan-alert .btn.ghost{width:100%;margin-top:0}.ui-page .plan-alert__actions{width:100%;margin-top:6px;display:grid;grid-template-columns:1fr auto}}.ui-page .app-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid color-mix(in oklab,var(--line, rgba(148,163,184,.3)) 70%,white);background:color-mix(in oklab,var(--surface, #ffffff) 90%,var(--primary, #2d6cdf) 10%);color:color-mix(in oklab,var(--text, #0f172a) 85%,var(--primary, #2d6cdf) 15%);font-weight:800;font-size:.78rem;letter-spacing:.01em;font-variant-numeric:tabular-nums}.ui-page .badge:not(.app-badge){display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700;border:1px solid color-mix(in oklab,var(--line, rgba(148,163,184,.3)) 68%,white);background:color-mix(in oklab,var(--primary, #2d6cdf) 12%,white 88%);color:color-mix(in oklab,var(--primary, #2d6cdf) 45%,#0f172a);box-shadow:var(--ui-shadow-sm)}.ui-page .badge.primary:not(.app-badge){background:color-mix(in oklab,var(--primary, #2d6cdf) 14%,white);border-color:color-mix(in oklab,var(--primary, #2d6cdf) 28%,white);color:color-mix(in oklab,var(--primary, #2d6cdf) 60%,#0f172a)}.ui-page .badge.success:not(.app-badge){background:#dcfce7;border-color:#bbf7d0;color:#15803d}.ui-page .badge.warning:not(.app-badge){background:#fef3c7;border-color:#fde68a;color:#b45309}.ui-page .badge.danger:not(.app-badge){background:#fee2e2;border-color:#fecaca;color:#b91c1c}.ui-page .app-badge--warn{background:color-mix(in oklab,#fff1f2 84%,var(--surface, #fff) 16%);border-color:color-mix(in oklab,#fecdd3 78%,white);color:#be123c}@media (max-width: 640px){.ui-hero__orbital{width:120px;height:68px;right:6px;bottom:4px;opacity:.48}.ui-hero__constellation{right:8px;top:6px;opacity:.3;transform:scale(.86)}}@media (max-width: 720px){.ui-page{--ui-page-flow-gap: 16px;--ui-page-top-gap: var(--ui-space-4);--ui-page-toolbar-gap: var(--ui-space-3);--ui-page-section-gap: 12px;--ui-page-gap-top-next: 14px;--ui-page-gap-top-toolbar: 12px;--ui-page-gap-toolbar-next: 14px;--ui-page-gap-kpi-content: 14px;--ui-page-gap-alerts-next: 12px;--ui-top-shell-pad: 8px;--ui-top-shell-radius: 16px;padding:0}.ui-page .page-top-section{gap:var(--ui-page-top-gap);margin-bottom:0}.ui-page .page-top-section:before{left:8px;right:8px;top:5px}.ui-page .app-page-top__body{gap:var(--ui-page-toolbar-gap)}.ui-page .app-page-section--toolbar,.ui-page .app-page-section--alerts,.ui-page .app-page-section--content{margin-top:0}.ui-page :is(.app-hero,.fic-hero){padding:18px 16px 16px;border-left-width:3px;border-radius:12px;margin-bottom:0}.ui-page :is(.app-hero,.fic-hero) .greet{font-size:clamp(18px,5.5vw,22px);line-height:1.14;letter-spacing:-.018em}.ui-page :is(.app-hero,.fic-hero) .sub{font-size:13px;line-height:1.3}.ui-page .page-toolbar-stack{gap:var(--ui-page-toolbar-gap);margin-top:0;margin-bottom:0}.ui-page :is(.app-page-toolbar--primary.ui-actionbar,.app-page-toolbar--secondary,.app-page-toolbar--hero.ui-actionbar){padding:10px;border-radius:14px}.ui-page :is(.students-toolbar__main-actions,.toolbar-actions,.schedule-actions__main-actions,.bk-bookings-toolbar__main-actions){width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ui-page :is(.students-toolbar__main-actions,.toolbar-actions,.schedule-actions__main-actions,.bk-bookings-toolbar__main-actions) .btn{width:100%;min-width:0}.ui-page .schedule-actions__main-actions .btn:nth-child(3){grid-column:1 / -1}.ui-page .kpi-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-page-section-gap);margin-top:0}.ui-page :is(.kpi){min-height:58px;padding:10px;border-radius:14px}.ui-page .kpi-ico{width:36px;height:36px;border-radius:10px;font-size:17px}.ui-page .kpi-t{font-size:12px}.ui-page .kpi-v{font-size:16px;line-height:1.1}.ui-page[class*=ui-page--] :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass,.ui-surface,.ui-toolbar,.table-wrap,.fic-toolbar,.grp-toolbar,.ui-actionbar):before{left:8px;width:min(58%,180px);max-width:calc(100% - 16px);opacity:.82}}@media (max-width: 520px){.ui-page :is(.students-toolbar__main-actions,.toolbar-actions,.schedule-actions__main-actions,.bk-bookings-toolbar__main-actions){grid-template-columns:1fr}.ui-page .schedule-actions__main-actions .btn:nth-child(3){grid-column:auto}}@media (prefers-reduced-motion: reduce){.ui-page,.ui-modal,.ui-modalOverlay{animation:none!important}.ui-page[class*=ui-page--]:before,.ui-page[class*=ui-page--]:after{animation:none!important}.ui-page :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass),.ui-page .btn:not(.seg):not(.chip){transition:none!important;transform:none!important}.ui-hero__constellation,.ui-hero__constellation span,.ui-hero__orb,.ui-hero__beam{animation:none!important}}:root[data-ui-theme=dark],body[data-ui-theme=dark]{color-scheme:dark;--ui-border-soft: rgba(148, 163, 184, .28);--ui-shadow-sm: 0 8px 22px rgba(2, 6, 23, .36);--ui-shadow-md: 0 18px 40px rgba(2, 6, 23, .44);--ui-shadow-xl: 0 30px 64px rgba(2, 6, 23, .52);--ui-surface: linear-gradient(170deg, rgba(15, 23, 42, .96), rgba(15, 23, 42, .88));--ui-focus: color-mix(in oklab, var(--primary) 62%, #93c5fd);--modal-border: 1px solid rgba(148, 163, 184, .34);--modal-shadow: 0 34px 84px rgba(2, 6, 23, .64);--modal-bg: linear-gradient(180deg, rgba(15, 23, 42, .96), rgba(15, 23, 42, .92))}:root[data-ui-theme=dark] body,body[data-ui-theme=dark]{background:radial-gradient(1200px 540px at -8% -12%,color-mix(in oklab,var(--primary) 22%,transparent),transparent 66%),radial-gradient(1100px 520px at 116% -6%,color-mix(in oklab,var(--primary) 16%,transparent),transparent 68%),radial-gradient(900px 440px at 50% 110%,color-mix(in oklab,var(--primary) 12%,transparent),transparent 72%),linear-gradient(160deg,#0a1017,#0b121c 48%,#0a1119)}:root[data-ui-theme=dark] ::selection,body[data-ui-theme=dark] ::selection{background:color-mix(in oklab,var(--primary) 40%,#0b1220);color:#ecf3ff}:root[data-ui-theme=dark] *{scrollbar-color:color-mix(in oklab,var(--primary) 42%,#334155) transparent}:root[data-ui-theme=dark] *::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--primary) 36%,#334155)}:root[data-ui-theme=dark] .ui-page :is(.card,.fic-card,.glass-card,.grp-card,.student-card.glass){border-color:#94a3b83d;background:linear-gradient(165deg,color-mix(in oklab,var(--card) 94%,#0a1119),color-mix(in oklab,var(--primary) 14%,#0c1420));box-shadow:var(--ui-shadow-sm)}:root[data-ui-theme=dark] .ui-page :is(.app-hero,.fic-hero){border-color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 30%,rgba(148,163,184,.18));border-left-color:var(--ui-page-accent, var(--primary));background:radial-gradient(ellipse 80% 140% at 98% 50%,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 14%,transparent) 0%,transparent 62%),linear-gradient(148deg,color-mix(in oklab,var(--card) 88%,#07101e),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 10%,#0b1426));box-shadow:0 1px 2px #0206171f,0 4px 16px #0206173d}:root[data-ui-theme=dark] .ui-page :is(.app-hero,.fic-hero) .greet{filter:brightness(1.35) saturate(1.05)}:root[data-ui-theme=dark] .ui-hero__orb{border-color:color-mix(in oklab,var(--ui-page-accent) 40%,rgba(148,163,184,.2));background:none}:root[data-ui-theme=dark] .ui-page .page-top-section:after{opacity:.58}:root[data-ui-theme=dark] .ui-page :is(.fic-toolbar,.grp-toolbar,.ui-actionbar,.ui-toolbar){border-color:#94a3b83d;background:linear-gradient(180deg,color-mix(in oklab,var(--card) 92%,#0a1119),color-mix(in oklab,var(--primary) 10%,#0b1320));box-shadow:var(--ui-shadow-sm)}:root[data-ui-theme=dark] .ui-page :is(.input,textarea,select){color:var(--text);border-color:#94a3b84d;background:color-mix(in oklab,var(--card) 86%,#0a1119)}:root[data-ui-theme=dark] .ui-page :is(.input,textarea,select):focus{border-color:color-mix(in oklab,var(--primary) 50%,#94a3b8);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 28%,transparent);background:color-mix(in oklab,var(--card) 90%,#0b1220)}:root[data-ui-theme=dark] .ui-page :is(.btn):not(.seg):not(.chip):not(.primary):not(.danger){color:var(--text);border-color:#94a3b84d;background:linear-gradient(180deg,#1e293bdb,#0f172adb)}:root[data-ui-theme=dark] .ui-page :is(.btn.ghost):not(.seg):not(.chip){background:color-mix(in oklab,var(--card) 84%,#0a1119)}:root[data-ui-theme=dark] .ui-page .icon-btn{color:color-mix(in oklab,var(--text) 74%,#94a3b8);border-color:#94a3b84d;background:color-mix(in oklab,var(--card) 84%,#0a1119)}:root[data-ui-theme=dark] .ui-page .icon-btn:hover{color:color-mix(in oklab,var(--primary) 72%,#e2e8f0);border-color:color-mix(in oklab,var(--primary) 42%,#334155);background:color-mix(in oklab,var(--primary) 20%,#0f172a)}:root[data-ui-theme=dark] .ui-page .icon-btn.danger{color:#fca5a5;border-color:color-mix(in oklab,#ef4444 40%,#334155)}:root[data-ui-theme=dark] .ui-page .icon-btn.danger:hover{color:#fecaca;background:color-mix(in oklab,#991b1b 30%,#0f172a)}:root[data-ui-theme=dark] .ui-page .plan-alert{background:color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 22%,rgba(15,23,42,.94));border-color:color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 40%,rgba(148,163,184,.28));color:#dbeafe;box-shadow:inset 0 1px #ffffff0f,0 8px 20px #02061757}:root[data-ui-theme=dark] .ui-page .plan-ico{background:color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 28%,rgba(15,23,42,.94));border-color:color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 44%,rgba(148,163,184,.28))}:root[data-ui-theme=dark] .ui-page .plan-title{color:#e2eeff}:root[data-ui-theme=dark] .ui-page .plan-sub{color:#94a3b8}:root[data-ui-theme=dark] .ui-page .plan-alert .btn.ghost{background:#1e293bb8;border-color:color-mix(in oklab,var(--p, var(--primary, #2d6cdf)) 40%,rgba(148,163,184,.28));color:#bfdbfe;-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-ui-theme=dark] .ui-page .plan-alert__dismiss{color:#94a3b8}:root[data-ui-theme=dark] .ui-page .plan-alert__dismiss:hover{color:#e2e8f0}:root[data-ui-theme=dark] .ui-page .save-pill{background:#0f172ac2;border-color:#94a3b84d;color:var(--text)}:root[data-ui-theme=dark] .ui-page .save-pill.saving{background:color-mix(in oklab,#c2410c 24%,#0f172a);border-color:color-mix(in oklab,#fb923c 34%,#334155);color:#fdba74}:root[data-ui-theme=dark] .ui-page .save-pill.saved{background:color-mix(in oklab,#065f46 26%,#0f172a);border-color:color-mix(in oklab,#34d399 34%,#334155);color:#86efac}:root[data-ui-theme=dark] .ui-page .save-pill.error{background:color-mix(in oklab,#991b1b 28%,#0f172a);border-color:color-mix(in oklab,#f87171 34%,#334155);color:#fecaca}:root[data-ui-theme=dark] .ui-page .badge.success:not(.app-badge){background:color-mix(in oklab,#166534 34%,#0f172a);border-color:color-mix(in oklab,#22c55e 35%,#334155);color:#bbf7d0}:root[data-ui-theme=dark] .ui-page .badge.warning:not(.app-badge){background:color-mix(in oklab,#92400e 34%,#0f172a);border-color:color-mix(in oklab,#f59e0b 34%,#334155);color:#fcd34d}:root[data-ui-theme=dark] .ui-page .badge.danger:not(.app-badge){background:color-mix(in oklab,#991b1b 35%,#0f172a);border-color:color-mix(in oklab,#ef4444 34%,#334155);color:#fecaca}:root[data-ui-theme=dark] .ui-page .app-viewmode{border-color:#94a3b857;background:linear-gradient(180deg,#1e293bdb,#0f172ad6);box-shadow:inset 0 1px #ffffff0f}:root[data-ui-theme=dark] .ui-page .app-viewmode__btn{color:#a9bacf}:root[data-ui-theme=dark] .ui-page .app-viewmode__btn:hover{color:#e5eefc}:root[data-ui-theme=dark] .ui-page .app-viewmode__btn.is-active{color:#eaf2ff;background:color-mix(in oklab,var(--primary, #2d6cdf) 64%,#0f172a);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--primary, #2d6cdf) 42%,rgba(148,163,184,.26))}:root[data-ui-theme=dark] .ui-page :is(.table-wrap){border-color:#94a3b842;background:linear-gradient(180deg,#0f172ae6,#0f172ad6)}:root[data-ui-theme=dark] .ui-page :is(.tablex thead th){background:linear-gradient(180deg,color-mix(in oklab,var(--ui-page-accent, var(--primary)) 20%,#1f2937),color-mix(in oklab,var(--ui-page-accent, var(--primary)) 12%,#111827));color:#d5e0ef;border-bottom-color:#94a3b84d}:root[data-ui-theme=dark] .ui-page :is(.tablex tbody tr:nth-child(2n)){background:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 8%,#0f172a)}:root[data-ui-theme=dark] .ui-page :is(.tablex tbody tr:hover){background:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 14%,#0f172a)}:root[data-ui-theme=dark] .ui-page :is(.empty,.sd-empty){border-color:#94a3b857;background:color-mix(in oklab,var(--card) 90%,#0a1119);color:color-mix(in oklab,var(--text) 72%,#94a3b8)}:root[data-ui-theme=dark] .ui-page .kpi-t{color:#9fb0c7}:root[data-ui-theme=dark] .ui-page .kpi-v{color:#f0f5ff}:root[data-ui-theme=dark] .ui-page[class*=ui-page--]:before,:root[data-ui-theme=dark] .ui-page[class*=ui-page--]:after{opacity:.54}:root[data-ui-theme=dark] .ui-modalOverlay,:root[data-ui-theme=dark] .popover{background:radial-gradient(950px 58% at 100% 0%,rgba(255,255,255,.08),transparent 60%),radial-gradient(950px 58% at 0% 100%,rgba(255,255,255,.06),transparent 60%),linear-gradient(180deg,#020617b8,#020617a8)}:root[data-ui-theme=dark] .ui-modal,:root[data-ui-theme=dark] .fic-modal,:root[data-ui-theme=dark] .exam-modal,:root[data-ui-theme=dark] .mode-panel{border-color:#94a3b857;box-shadow:var(--modal-shadow)}:root[data-ui-theme=dark] :is(.ui-modal__header,.fic-modal__header,.app-modal__header){border-bottom-color:#94a3b84d!important;background:linear-gradient(180deg,#1e293bdb,#0f172acc)!important}:root[data-ui-theme=dark] :is(.ui-modal__footer,.fic-modal__footer,.app-modal__footer){border-top-color:#94a3b84d!important;background:linear-gradient(0deg,#1e293bdb,#0f172acc)!important}:root[data-ui-theme=dark] .ui-modal__titleText{color:#f1f5ff}:root[data-ui-theme=dark] .ui-modal__subtitle{color:#9fb0c7}:root[data-ui-theme=dark] .ui-modal__icon{background:#0f172ad6;border-color:#94a3b857;color:#dbe7f8}:root[data-ui-theme=dark] .ui-modal__close{background:#0f172ad6;border-color:#94a3b857;color:#cbd8ea}:root[data-ui-theme=dark] .ui-modal__close:hover{background:#1e293be6}:root[data-ui-theme=dark] :where(.ui-switch,.ios-switch) .label{color:#a8b8cc}:root[data-ui-theme=dark] .ui-page :is(.app-filter-field__label,.app-toolbar-group-label,.app-meta-label){color:#9fb0c7}:root[data-ui-theme=dark] :is(.ui-page,.ui-modal.bk-modal) .app-meta-value{color:#f0f5ff}:root[data-ui-theme=dark] .ui-page .app-toolbar-switch{background:color-mix(in oklab,var(--card) 76%,#0f172a);border-color:color-mix(in oklab,var(--line, rgba(148, 163, 184, .28)) 78%,#0f172a)}:root[data-ui-theme=dark] :where(.ui-switch,.ios-switch) input[type=checkbox]{background:#475569eb;box-shadow:inset 0 0 0 1px #94a3b866}:root[data-ui-theme=dark] :where(.ui-switch,.ios-switch) input[type=checkbox]:checked{background:color-mix(in oklab,var(--primary, #2d6cdf) 72%,#0f172a);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--primary, #2d6cdf) 44%,rgba(148,163,184,.28))}:root[data-ui-theme=dark] :where(.ui-switch,.ios-switch) input[type=checkbox]:after{background:#e2e8f0}:root[data-ui-theme=dark] :is(.ui-summary-card,.ui-page .fic-stat,.ui-modal .ga-pro-stat){border-color:color-mix(in oklab,var(--summary-tone, var(--primary)) 32%,#334155);background:linear-gradient(150deg,color-mix(in oklab,var(--summary-tone, var(--primary)) 18%,#0f172a),color-mix(in oklab,var(--card) 84%,#0a1119));box-shadow:0 14px 30px #02061766}:root[data-ui-theme=dark] .ui-summary-card__label{color:color-mix(in oklab,var(--summary-tone, var(--primary)) 22%,#9fb0c7)}:root[data-ui-theme=dark] .ui-summary-card__value{color:color-mix(in oklab,var(--summary-tone, var(--primary)) 20%,#e6eefb)}:root[data-ui-theme=dark] .ui-summary-card__meta{color:color-mix(in oklab,var(--summary-tone, var(--primary)) 20%,#94a3b8)}:root[data-ui-theme=dark] :is(.ui-page,.ui-modal) .ui-summary-card .ui-summary-card__label{color:color-mix(in oklab,var(--summary-tone, var(--primary)) 22%,#9fb0c7)}:root[data-ui-theme=dark] :is(.ui-page,.ui-modal) .ui-summary-card .ui-summary-card__value{color:color-mix(in oklab,var(--summary-tone, var(--primary)) 20%,#e6eefb)}:root[data-ui-theme=dark] :is(.ui-page,.ui-modal) .ui-summary-card .ui-summary-card__meta{color:color-mix(in oklab,var(--summary-tone, var(--primary)) 20%,#94a3b8)}:root[data-ui-theme=dark] .ui-seg-tab{border-color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 30%,#334155);background:linear-gradient(180deg,#1e293bd1,#0f172ad6);color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 22%,#dbe7f8)}:root[data-ui-theme=dark] .ui-row-item{border-color:#94a3b84d;background:linear-gradient(180deg,#0f172ae0,#0f172ad1);box-shadow:0 10px 22px #02061752}:root[data-ui-theme=dark] :is(.ui-person-name,.ui-page .student-card .name,.ui-page .grp-name,.ui-modal .ga-pro-name,.ui-page .fc-name,.ui-page .mc-name){color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 16%,#e6eefb)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-header{border-bottom-color:#94a3b847;background:linear-gradient(180deg,#1e293be6,#0f172ad1)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-content{background:linear-gradient(180deg,#0f172ae0,#0f172ad1)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal :is(.ga-pro-input,.ga-pro-select,.ga-pro-toggle){border-color:#94a3b852;background:#0f172ac7;color:#dbe7f8}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day{border-color:#94a3b847;background:linear-gradient(180deg,#0f172adb,#0f172acc)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day-head{border-bottom-color:#94a3b83d;background:linear-gradient(180deg,#1e293bd1,#0f172ac7)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-footer{border-top-color:#94a3b847;background:linear-gradient(0deg,#1e293bdb,#0f172ad1)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day-chip{border-color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 30%,#334155);background:linear-gradient(180deg,#1e293bd1,#0f172ad6);color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 22%,#dbe7f8);box-shadow:0 8px 16px #02061747}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day-chip:hover{border-color:color-mix(in oklab,var(--ui-page-accent, var(--primary)) 42%,#475569);box-shadow:0 10px 20px color-mix(in oklab,var(--ui-page-accent, var(--primary)) 20%,transparent)}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-student{border-color:#94a3b84d;background:linear-gradient(180deg,#0f172ae0,#0f172ad1);box-shadow:0 10px 22px #02061752}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day-head h3{color:#e6eefb}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day-head span{color:#9fb0c7}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-day-empty{border-color:#94a3b852;background:#0f172aa8;color:#9fb0c7}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-avatar{color:#dbe7f8;background:#1e293bd9;border-color:#94a3b857}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-meta span{color:#a9bbd1;background:#1e293bb8;border-color:#94a3b847}:root[data-ui-theme=dark] .ui-modal.ga-pro-modal .ga-pro-slot-dur{color:#cbd8ea;background:#0f172aa3;border-color:#94a3b84d}:root{--bg: #f7f9fc;--card: #ffffff;--text: #0f172a;--muted: #64748b;--line: #e6ebf2;--primary: #2d6cdf;--primary-600: color-mix(in oklab, var(--primary) 88%, black 12%);--primary-weak: color-mix(in oklab, var(--primary) 10%, white);--primary-shadow: color-mix(in oklab, var(--primary) 26%, transparent);--surface: #ffffff;--surface-2: #f6f7f9;--accent: #6aa5ff;--danger-600: #dc2626;--green: #16a34a;--yellow: #f59e0b;--chip: #f1f5fd;--header-max: 1200px;--z-header: 900;--z-overlay: 2000;--z-popover: 2500;--z-modal: 25000;--z-toast: 4000;--glass-bg: rgba(255,255,255,.72);--glass-brd: rgba(255,255,255,.7)}:root[data-ui-theme=dark],body[data-ui-theme=dark]{--bg: #0b1118;--card: #101926;--text: #e6edf7;--muted: #9fb0c7;--line: rgba(148, 163, 184, .28);--surface: #101926;--surface-2: #0f1724;--chip: #162131;--glass-bg: rgba(15, 23, 42, .68);--glass-brd: rgba(148, 163, 184, .28);--focus: color-mix(in oklab, var(--primary) 62%, #93c5fd)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--ui-brand-font, "Manrope", "Plus Jakarta Sans", "Avenir Next", "Segoe UI", system-ui, sans-serif)}body,#root{overflow-x:hidden}:root{--focus: color-mix(in oklab, var(--primary) 55%, white)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.app{width:100%;min-height:100dvh;padding:0}.app-main-content{padding:20px 20px 32px;min-height:100dvh}@media (max-width: 720px){.app-main-content{margin-left:0!important;padding:14px 12px 28px}}.subscription-portal{padding:24px;color:var(--text)}.subscription-portal__title{margin:0;font-size:18px}.subscription-portal__message{margin-top:8px;color:var(--muted)}.subscription-portal__actions{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap}.subscription-portal__btn{padding:8px 12px;border-radius:8px;border:1px solid var(--line);cursor:pointer}.subscription-portal__btn--retry{background:var(--primary-weak, #eef4ff);color:var(--text)}.subscription-portal__btn--back{background:transparent;color:var(--text)}.pricing-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.pricing-topbar__brand{display:flex;align-items:center;gap:12px;font-weight:900}.pricing-topbar__logo{height:50px}.pricing-topbar__headline{margin:0;font-size:clamp(18px,3.4vw,22px);font-weight:900;letter-spacing:.01em}.pricing-topbar__sub{opacity:.42}.pricing-topbar__actions{gap:8px}.pricing-topbar__actions>*+*{margin-left:0}@media (max-width: 640px){.pricing-topbar{flex-direction:column;align-items:flex-start}}.app-beta-badge{position:fixed;right:20px;bottom:20px;z-index:99999;display:flex;align-items:center;gap:12px;padding:10px 16px;border-radius:12px;font-size:14px;font-weight:800;letter-spacing:.02em;background:#ef4444eb;color:#fff;border:2px solid rgba(220,38,38,.9);box-shadow:0 8px 28px #00000040;pointer-events:none}.app-beta-badge__icon{flex-shrink:0}.app-beta-badge__label{font-size:13px;line-height:1.2}.app-timo-fab{position:fixed;right:20px;bottom:20px;z-index:9990;min-height:44px;border-radius:999px;border:1px solid color-mix(in oklab,var(--primary, #2d6cdf) 42%,white);background:linear-gradient(180deg,color-mix(in oklab,var(--primary, #2d6cdf) 18%,white),color-mix(in oklab,var(--primary, #2d6cdf) 10%,white));color:color-mix(in oklab,var(--primary, #2d6cdf) 88%,#0f172a);box-shadow:0 18px 40px color-mix(in oklab,var(--primary, #2d6cdf) 26%,transparent),0 5px 14px #0f172a29,inset 0 1px #ffffffa3;display:inline-flex;align-items:center;gap:10px;padding:0 14px 0 10px;font:inherit;font-weight:800;letter-spacing:.01em;cursor:pointer;backdrop-filter:blur(10px) saturate(150%);-webkit-backdrop-filter:blur(10px) saturate(150%);transition:transform .14s ease,filter .14s ease,box-shadow .14s ease}.app-timo-fab:hover{filter:brightness(1.05);transform:translateY(-1px) scale(1.01)}.app-timo-fab:active{transform:translateY(0)}.app-timo-fab.is-open{box-shadow:0 20px 42px color-mix(in oklab,var(--primary, #2d6cdf) 34%,transparent),0 0 0 3px color-mix(in oklab,var(--primary, #2d6cdf) 28%,transparent)}.app-timo-fab--lifted{bottom:88px}.app-timo-fab__orb{width:30px;height:30px;border-radius:50%;position:relative;display:inline-grid;place-items:center}.app-timo-fab__icon{--timo-size: 30px}.app-timo-fab__text{font-size:13px;line-height:1;font-weight:850;letter-spacing:.02em}@media (max-width: 900px){.app-timo-fab{right:14px;bottom:14px}.app-timo-fab--lifted{bottom:76px}}body[data-ui-theme=dark] .app-timo-fab{border-color:#7dd3fc80;background:linear-gradient(180deg,#1e3a8a80,#2563eb52);color:#eff6ff;box-shadow:0 18px 38px #02061780,0 5px 14px #02061766,inset 0 1px #bfdbfe42}body[data-ui-theme=dark] .app-timo-fab__orb{filter:saturate(1.08)}.app-easter-overlay{position:fixed;inset:0;z-index:100000;display:grid;place-items:end start;background:transparent;cursor:pointer}.app-easter-card{margin:20px;padding:12px 14px;border-radius:14px;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);background:linear-gradient(180deg,color-mix(in oklab,var(--card) 86%,transparent),color-mix(in oklab,var(--card) 74%,transparent));border:1px solid color-mix(in oklab,var(--line) 72%,transparent);box-shadow:0 14px 40px color-mix(in oklab,var(--text) 16%,transparent),inset 0 1px color-mix(in oklab,white 20%,transparent);color:var(--text);max-width:360px}.app-easter-card__eyebrow{margin-bottom:6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.55}.app-easter-card__quote{font-family:Georgia,ui-serif,serif;font-size:16px;line-height:1.35}.app-easter-card__quote-inner{opacity:.9}.app-easter-card__hint{margin-top:8px;font-size:12px;opacity:.5}.app-error-boundary{padding:24px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.app-error-boundary__title{margin:0;font-size:20px}.app-error-boundary__lead{color:var(--muted, #6b7280)}.app-error-boundary__actions{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.app-error-boundary__btn{border:1px solid var(--line, #d1d5db);border-radius:10px;background:var(--card, #fff);color:var(--text, #0f172a);font-weight:700;padding:8px 12px;cursor:pointer}.app-error-boundary__btn--muted{color:var(--muted, #334155)}.app-error-boundary__stack{margin:0;background:color-mix(in oklab,var(--card, #ffffff) 86%,#0b1220);color:var(--text, #f9fafb);padding:12px;border-radius:8px;overflow:auto}.space-y>*+*{margin-top:var(--ui-page-flow-gap, 20px)}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 6px 24px #0f172a0f}.glass,.glass-card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-brd);box-shadow:0 8px 32px #2d6cdf14,inset 0 1px #fff9;border-radius:20px}.section-title{font-weight:700;margin:2px 0 12px;letter-spacing:.2px}.hstack{display:flex;align-items:center}.hstack>*+*{margin-left:10px}.small{font-size:14px}.muted{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}@media (max-width:1024px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat{background:var(--primary-weak);border:1px solid color-mix(in oklab,var(--primary) 20%,white);border-radius:14px;padding:12px}.stat .label{font-size:12px;color:var(--muted)}.stat .value{font-size:22px;font-weight:800;margin-top:4px}.input{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;min-width:0;transition:box-shadow .12s ease,border-color .12s ease;background:#ffffffbf;border-color:#b4bed299;box-shadow:inset 0 1px #fff6}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 22%,transparent)}.btn{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;transition:transform .05s ease,box-shadow .15s ease,background .15s ease;box-shadow:0 1px 2px #0f172a0f}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0f172a14}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.58;cursor:not-allowed;transform:none}.btn.primary{color:#fff;border-color:transparent;background:var(--primary);box-shadow:0 4px 12px var(--primary-shadow)}.btn.secondary{background:var(--primary-weak);border-color:color-mix(in oklab,var(--primary) 22%,white);color:color-mix(in oklab,var(--primary) 48%,black)}.btn.danger{background:#e53935;border-color:transparent;color:#fff;box-shadow:0 4px 12px #e5393540}.btn.success{background:#16a34a;border-color:transparent;color:#fff;box-shadow:0 4px 12px #16a34a40}.btn.sm{padding:8px 10px;border-radius:10px;font-size:13px}.btn.ghost,.btn--ghost{background:transparent;border:1px dashed var(--line);color:var(--text)}.badge{background:var(--primary-weak);border:1px solid color-mix(in oklab,var(--primary) 24%,white);color:color-mix(in oklab,var(--primary) 45%,black);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.badge.success{background:#dcfce7;border-color:#bbf7d0;color:#15803d}.badge.warning{background:#fef3c7;border-color:#fde68a;color:#b45309}.badge.danger{background:#fee2e2;border-color:#fecaca;color:#b91c1c}.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-weight:700;font-size:12px}.pill.ok{background:#3fb19c2e;color:#0b3a33}.pill.danger{background:#f74e3b2e;color:#7a1d15}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff;overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:auto!important}.table-wrap>.tablex{width:auto!important;min-width:760px!important;table-layout:auto;display:inline-block}@media (max-width: 420px){.table-wrap>.tablex{min-width:680px!important}}@media (min-width: 901px){.table-wrap>.tablex{min-width:0!important;width:100%!important;display:table}}.tablex{width:100%;border-collapse:separate;border-spacing:0}.tablex thead th{position:sticky;top:0;z-index:1;background:#f5f8ff;border-bottom:1px solid var(--line);text-align:left;padding:12px 14px;font-weight:800;color:#334155;letter-spacing:.2px}.tablex tbody td{border-top:1px solid var(--line);padding:12px 14px;vertical-align:middle}.tiny-badge{display:inline-block;padding:3px 8px;border-radius:9999px;font-size:.8em;font-weight:700;white-space:nowrap;border:1px solid transparent}.tiny-badge.ok{background:#dcfce7;border-color:#86efac;color:#166534}.tiny-badge.softwarn{background:#fff7ed;border-color:#fdba74;color:#9a3412}.tiny-badge.no{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.tiny-badge.under{background:#fee2e2;border-color:#fecaca;color:#991b1b}.tiny-badge.warn{background:#fef9c3;border-color:#fde047;color:#92400e}.tiny-badge.over{background:linear-gradient(90deg,#fef9c3,#fee2e2);border-color:#fcd34d;color:#b91c1c}.tiny-badge.fire{background:#b91c1c;border-color:#7f1d1d;color:#fff}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:#f8fafc;cursor:pointer;user-select:none}.chip.active{background:linear-gradient(180deg,var(--primary),var(--primary-600));color:#fff;border-color:transparent;box-shadow:0 8px 20px var(--primary-shadow)}@media print{.no-print,.nav,.tabs,.bulk-bar{display:none!important}.app{max-width:none;margin:0;padding:0}.card{border:none;box-shadow:none}}.icon-btn{border:none;background:transparent;cursor:pointer;margin-right:8px;font-size:16px;line-height:1;transform:translateY(2px)}.icon-btn:hover{filter:brightness(.85)}.theme-fic{--fic-primary: #2d6cdf;--fic-primary-hover: #2559b2;--fic-bg: #f7f9fc;--fic-card-bg: #ffffff;--fic-border: #e0e6ed;--fic-text: #222;--fic-muted: #6c757d;--fic-radius: 12px;--fic-shadow: 0 8px 20px rgba(15, 23, 42, .06);--fic-shadow-lg: 0 14px 34px rgba(15, 23, 42, .12)}body.theme-fic{color:var(--text, var(--fic-text));font-family:var(--ui-brand-font, "Manrope", "Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif)}.theme-fic .card{background-color:var(--fic-card-bg);border:1px solid var(--fic-border);border-radius:var(--fic-radius);box-shadow:var(--fic-shadow)}.theme-fic .input{border-radius:var(--fic-radius);border:1px solid var(--fic-border);padding:6px 10px}.theme-fic .input:focus{border-color:var(--fic-primary);box-shadow:0 0 0 2px #2d6cdf26;outline:none}.theme-fic table.tablex th{background-color:#f1f5fa;border-bottom:1px solid var(--fic-border)}.theme-fic table.tablex td{border-bottom:1px solid var(--fic-border)}.theme-fic .table-wrap{background-color:var(--fic-card-bg);border-radius:var(--fic-radius);overflow:hidden;box-shadow:var(--fic-shadow)}.theme-fic .badge{background-color:var(--fic-primary);color:#fff;border-radius:var(--fic-radius);padding:2px 8px;font-size:12px;font-weight:500}.theme-fic .tag.green{background-color:#4caf50;color:#fff}.theme-fic .tag.yellow{background-color:#ffb300;color:#fff}.theme-fic .tag.red{background-color:#e53935;color:#fff}.fic-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(180deg,var(--primary),var(--primary-600));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;box-shadow:0 6px 18px var(--primary-shadow)}.fic-formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fic-formgrid .input-row{display:flex;flex-direction:column;gap:6px}.fic-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 28px #0f172a0f}.fic-hero .greet{font-size:22px;font-weight:800;letter-spacing:.2px}.fic-hero .sub{color:var(--muted)}.fic-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media (max-width:1024px){.fic-stats{grid-template-columns:1fr 1fr}}.fic-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 8px 20px #0f172a0d}.fic-stat .label{font-size:12px;color:var(--muted)}.fic-stat .value{font-size:28px;font-weight:800;margin-top:4px}.fic-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:0 10px 28px #0f172a0f}.fic-card .section-title{margin-bottom:10px}.fic-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.fic-chip{background:#f1f5fd;border:1px solid #dae6ff;color:#274690;border-radius:999px;padding:6px 10px;font-size:12px;cursor:pointer}.fic-chip.active{background:linear-gradient(180deg,var(--primary),var(--primary-600));color:#fff;border-color:transparent}.setting-row{display:grid;grid-template-columns:200px 1fr;gap:12px;align-items:center;padding:8px 0;border-top:1px dashed var(--line)}.setting-row:first-of-type{border-top:none}.fic-seg{display:inline-flex;gap:4px;padding:4px;background:color-mix(in oklab,var(--primary) 5%,white);border-radius:12px;border:1px solid color-mix(in oklab,var(--primary) 12%,white);box-shadow:0 2px 8px #0f172a0a,inset 0 1px 2px #0000000a}.seg{padding:9px 18px;border-radius:10px;border:none;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;transition:all .28s cubic-bezier(.34,1.56,.64,1)}.seg:hover{background:#fff6;color:var(--text)}.seg:is(.active,.is-active){background:#fff;color:var(--primary);box-shadow:0 2px 8px #00000014,0 1px 2px #0000000f;transform:translateY(-1px)}.seg.sm{padding:7px 14px;font-size:13px}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatch{width:28px;height:28px;border-radius:8px;border:1px solid var(--line);box-shadow:0 2px 6px #0206171a;cursor:pointer}.toggle{display:flex;align-items:center;gap:8px}:root[data-ui-theme=dark] .card,body[data-ui-theme=dark] .card{background:linear-gradient(180deg,#0f172aeb,#0f172ad6);border-color:#94a3b83d;box-shadow:0 12px 32px #02061770}:root[data-ui-theme=dark] .fic-seg,body[data-ui-theme=dark] .fic-seg{background:color-mix(in oklab,var(--primary) 8%,rgba(15,23,42,.84));border-color:color-mix(in oklab,var(--primary) 26%,rgba(148,163,184,.3))}:root[data-ui-theme=dark] .seg:hover,body[data-ui-theme=dark] .seg:hover{background:#94a3b81f}:root[data-ui-theme=dark] .seg:is(.active,.is-active),body[data-ui-theme=dark] .seg:is(.active,.is-active){background:#0f172af2;color:color-mix(in oklab,var(--primary) 72%,#e2e8f0);box-shadow:0 2px 12px #02061759,inset 0 0 0 1px #94a3b842}:root[data-ui-theme=dark] .input,:root[data-ui-theme=dark] select.input,:root[data-ui-theme=dark] textarea.input,body[data-ui-theme=dark] .input,body[data-ui-theme=dark] select.input,body[data-ui-theme=dark] textarea.input{color:var(--text);background:#0f172aa8;border-color:#94a3b847;box-shadow:inset 0 1px #ffffff0a}:root[data-ui-theme=dark] .input::placeholder,body[data-ui-theme=dark] .input::placeholder{color:#9aa9bd}:root[data-ui-theme=dark] .btn:not(.primary):not(.danger),body[data-ui-theme=dark] .btn:not(.primary):not(.danger){color:var(--text);background:linear-gradient(180deg,#1e293be6,#0f172ae6);border-color:#94a3b84d;box-shadow:0 8px 24px #02061757}:root[data-ui-theme=dark] .btn.ghost,:root[data-ui-theme=dark] .btn--ghost,body[data-ui-theme=dark] .btn.ghost,body[data-ui-theme=dark] .btn--ghost{background:#0f172aa3}:root[data-ui-theme=dark] .table-wrap,body[data-ui-theme=dark] .table-wrap{background:#0f172adb;border-color:#94a3b847}:root[data-ui-theme=dark] .tablex thead th,body[data-ui-theme=dark] .tablex thead th{background:linear-gradient(180deg,#1e293bf5,#0f172af5);border-bottom-color:#94a3b84d;color:#d3deed}:root[data-ui-theme=dark] .tablex tbody td,body[data-ui-theme=dark] .tablex tbody td{border-top-color:#94a3b833}:root[data-ui-theme=dark] .chip,body[data-ui-theme=dark] .chip{background:#0f172aa8;border-color:#94a3b84d;color:#d7e0ef}.truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fic-toolbar{position:relative;z-index:1200;overflow:visible!important}.page-teacher__hero,.page-teacher .app-hero{overflow:hidden}.page-teacher .app-hero .greet,.page-teacher .app-hero .sub{position:relative;display:flex;align-items:center;gap:6px;width:100%;max-width:100%;min-width:0;-webkit-text-fill-color:initial;background:none}.page-teacher .hero-title{min-width:0;width:100%}.app-hero.--compact{padding:16px 20px;border-radius:12px}.page-teacher .app-hero .edit-inline{width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding-right:28px}.page-teacher .app-hero .edit-inline--sub{width:100%;max-width:100%}@media (max-width: 420px){.page-teacher .app-hero .edit-inline{padding-right:26px}}@media print{.app-hero{background:#fff!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app-hero:before,.app-hero:after{display:none!important}}.page-glass .fic-hero,.page-glass .card{background:#ffffff8c;border:1px solid rgba(255,255,255,.75);border-radius:16px;-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%);box-shadow:0 16px 40px #0206171a}.page-glass .fic-modal{background:#ffffffe0!important;border:1px solid rgba(255,255,255,.85)!important;-webkit-backdrop-filter:blur(14px) saturate(180%)!important;backdrop-filter:blur(14px) saturate(180%)!important;animation:ficPop .18s ease-out}@keyframes ficPop{0%{transform:translateY(8px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.page-glass .fic-modal__header{position:sticky;top:0;z-index:2;background:#ffffffb8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.06)}.page-glass .tablex input[type=checkbox]{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:6px;border:1.5px solid rgba(0,0,0,.12);background:#ffffffa6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:inline-grid;place-content:center;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .06s ease,box-shadow .12s ease;box-shadow:inset 0 1px #ffffff59,0 2px 6px #0000000f}.page-glass .tablex input[type=checkbox]:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff73,0 6px 14px #0000001a}.page-glass .tablex input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 25%,transparent);border-color:var(--primary)}.page-glass .tablex input[type=checkbox]:before{content:"";width:11px;height:6px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s ease}.page-glass .tablex input[type=checkbox]:checked{background:linear-gradient(180deg,var(--primary),var(--primary-600));border-color:color-mix(in oklab,var(--primary) 60%,#ffffff)}.page-glass .tablex input[type=checkbox]:checked:before{transform:rotate(-45deg) scale(1)}.page-glass thead input[type=checkbox]{width:20px;height:20px;border-radius:7px}.page-groups{--fic-primary: var(--primary);--fic-primary-hover: color-mix(in oklab, var(--primary) 88%, black 12%)}.btn--sm{padding:6px 10px;border-radius:10px;font-size:13px}:root[data-ui-theme=dark] .page-glass .fic-hero,:root[data-ui-theme=dark] .page-glass .card,body[data-ui-theme=dark] .page-glass .fic-hero,body[data-ui-theme=dark] .page-glass .card{background:#0f172a9e;border-color:#94a3b84d;box-shadow:0 16px 40px #02061757}
