.cb-hero{color:hsl(var(--primary-foreground));background:linear-gradient(135deg, hsl(var(--foreground)) 0%, hsl(var(--primary) / .92) 140%);box-shadow:0 24px 60px -34px hsl(var(--foreground) / .7);border-radius:28px;padding:22px;position:relative;overflow:hidden}.dark .cb-hero{background:linear-gradient(135deg, hsl(var(--card)) 0%, hsl(var(--primary) / .55) 160%);color:hsl(var(--foreground));border:1px solid hsl(var(--border))}.cb-hero:after{content:"";pointer-events:none;background:radial-gradient(60% 90% at 100% 0%, hsl(var(--primary) / .45), transparent 70%);position:absolute;inset:0}.cb-hero>*{z-index:1;position:relative}@media (min-width:640px){.cb-hero{padding:28px 32px}}.cb-eyebrow{letter-spacing:.14em;text-transform:uppercase;opacity:.72;font-size:11px;font-weight:800}.cb-switch{text-align:left;letter-spacing:-.02em;border-radius:14px;align-items:center;gap:8px;max-width:100%;min-height:44px;padding:4px 10px 4px 0;font-size:clamp(1.35rem,3.6vw,2rem);font-weight:900;line-height:1.15;transition:opacity .15s,transform .15s;display:inline-flex}.cb-switch:hover{opacity:.88}.cb-switch:active{transform:scale(.98)}.cb-switch:focus-visible{outline-offset:3px;outline:2px solid}.cb-progress{background:hsl(var(--primary-foreground) / .22);border-radius:999px;height:8px;overflow:hidden}.dark .cb-progress{background:hsl(var(--foreground) / .16)}.cb-progress>i{height:100%;width:var(--w,0%);border-radius:inherit;background:hsl(var(--primary-foreground));transform-origin:0;animation:.7s cubic-bezier(.22,1,.36,1) both cb-grow;display:block}.dark .cb-progress>i{background:hsl(var(--primary))}@keyframes cb-grow{0%{transform:scaleX(0)}}.cb-chip{border:1px solid hsl(var(--primary-foreground) / .3);background:hsl(var(--primary-foreground) / .12);border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.dark .cb-chip{border-color:hsl(var(--border));background:hsl(var(--foreground) / .06)}.cb-chip[data-live=true]>i{background:hsl(var(--destructive));border-radius:999px;width:8px;height:8px}.cb-hero-btn{min-height:44px;color:hsl(var(--foreground));background:hsl(var(--background));border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:13px;font-weight:800;transition:transform .15s,box-shadow .15s;display:inline-flex}.cb-hero-btn:hover{box-shadow:0 10px 24px -14px hsl(var(--foreground) / .6)}.cb-hero-btn:active{transform:scale(.98)}.cb-hero-btn:focus-visible{outline:2px solid hsl(var(--primary-foreground));outline-offset:3px}.cb-tabs,.mo-page{--cb-c-classes:var(--color-indigo-600);--cb-c-tests:var(--color-rose-600);--cb-c-doubts:var(--color-teal-700);--cb-c-tracker:var(--color-amber-700)}.cb-tabs{z-index:20;background:hsl(var(--background) / .86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);margin:0 -4px;padding:6px 4px;position:sticky;top:0}.cb-tabs-row{--i:0;--tab:var(--cb-c-classes);border:1px solid hsl(var(--border));background:hsl(var(--card));perspective:700px;border-radius:20px;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;display:grid;position:relative}.cb-tabs-row[data-active=tests]{--i:1;--tab:var(--cb-c-tests)}.cb-tabs-row[data-active=doubts]{--i:2;--tab:var(--cb-c-doubts)}.cb-tabs-row[data-active=tracker]{--i:3;--tab:var(--cb-c-tracker)}.cb-tabs-row:has(>.cb-tab:first-of-type [data-pending=true]){--i:0;--tab:var(--cb-c-classes)}.cb-tabs-row:has(>.cb-tab:nth-of-type(2) [data-pending=true]){--i:1;--tab:var(--cb-c-tests)}.cb-tabs-row:has(>.cb-tab:nth-of-type(3) [data-pending=true]){--i:2;--tab:var(--cb-c-doubts)}.cb-tabs-row:has(>.cb-tab:nth-of-type(4) [data-pending=true]){--i:3;--tab:var(--cb-c-tracker)}.cb-tabs-pill{background-color:var(--tab);width:calc(25% - 2px);box-shadow:0 12px 24px -12px var(--tab), inset 0 1px 0 #ffffff61, inset 0 -3px 0 #0003;transform:translateX(calc(var(--i) * 100%));border-radius:16px;transition:transform .5s cubic-bezier(.34,1.3,.64,1),background-color .45s,box-shadow .45s;position:absolute;top:4px;bottom:4px;left:4px;overflow:hidden}.cb-tabs-pill:before{content:"";background:linear-gradient(#ffffff42,#0000 55%);position:absolute;inset:0}.cb-tabs-pill:after{content:"";opacity:0;background:linear-gradient(100deg,#0000 20%,#ffffff73 50%,#0000 80%) 0 0/220% 100%;position:absolute;inset:0}.cb-tabs-row:has([data-pending=true]) .cb-tabs-pill:after{opacity:1;animation:1.1s linear infinite cb-shimmer}.cb-tabs-row[data-slide=true] .cb-tabs-pill{animation:.55s cubic-bezier(.34,1.3,.64,1) both cb-pill-from}@keyframes cb-pill-from{0%{transform:translateX(calc(var(--from,0) * 100%)) scaleX(.86);background-color:var(--tab-from,var(--tab))}}.cb-tab{--c:var(--cb-c-classes);--c-ico:var(--cb-c-classes);z-index:1;min-width:0;min-height:48px;color:hsl(var(--muted-foreground));-webkit-tap-highlight-color:transparent;border-radius:16px;justify-content:center;align-items:center;padding:0 8px;font-size:13.5px;font-weight:700;transition:color .25s,transform .2s;display:inline-flex;position:relative}.cb-tab[data-tab=tests]{--c:var(--cb-c-tests);--c-ico:var(--cb-c-tests)}.cb-tab[data-tab=doubts]{--c:var(--cb-c-doubts);--c-ico:var(--cb-c-doubts)}.cb-tab[data-tab=tracker]{--c:var(--cb-c-tracker);--c-ico:var(--cb-c-tracker)}.dark .cb-tab[data-tab=classes]{--c-ico:var(--color-indigo-400)}.dark .cb-tab[data-tab=tests]{--c-ico:var(--color-rose-400)}.dark .cb-tab[data-tab=doubts]{--c-ico:var(--color-teal-400)}.dark .cb-tab[data-tab=tracker]{--c-ico:var(--color-amber-400)}.cb-tab:hover{color:hsl(var(--foreground))}.cb-tab:active{transform:perspective(500px)scale(.96)rotateX(10deg)}.cb-tab:focus-visible{outline:2px solid var(--c-ico);outline-offset:2px}.cb-tab-face{align-items:center;gap:8px;min-width:0;display:inline-flex}.cb-tab-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cb-tab-ico{background:color-mix(in oklab, var(--c-ico) 15%, transparent);width:28px;height:28px;color:var(--c-ico);border-radius:10px;flex:none;place-items:center;transition:transform .35s cubic-bezier(.34,1.4,.64,1),background-color .25s,color .25s;display:grid}.cb-tab:hover .cb-tab-ico{transform:perspective(240px)translateY(-2px)rotateX(16deg)rotateY(-22deg)scale(1.08)}.cb-tab[aria-current=page]{color:#fff}.cb-tab:has([data-pending=true]){color:#fff}.cb-tab[aria-current=page] .cb-tab-ico{color:var(--c);background:#fff;box-shadow:0 4px 10px -4px #00000073}.cb-tab:has([data-pending=true]) .cb-tab-ico{color:var(--c);background:#fff;box-shadow:0 4px 10px -4px #00000073}.cb-tabs-row:has([data-pending=true]) .cb-tab[aria-current=page]:not(:has([data-pending=true])){color:hsl(var(--muted-foreground))}.cb-tabs-row:has([data-pending=true]) .cb-tab[aria-current=page]:not(:has([data-pending=true])) .cb-tab-ico{background:color-mix(in oklab, var(--c-ico) 15%, transparent);color:var(--c-ico);box-shadow:none}.cb-tabs-row[data-slide=true] .cb-tab[aria-current=page] .cb-tab-ico{animation:.65s cubic-bezier(.34,1.3,.64,1) both cb-flip}.cb-tab:has([data-pending=true]) .cb-tab-ico{animation:.65s cubic-bezier(.34,1.3,.64,1) both cb-flip}@keyframes cb-flip{0%{transform:perspective(240px)rotateY(-180deg)scale(.6)}60%{transform:perspective(240px)rotateY(18deg)scale(1.14)}}@media (max-width:519px){.cb-tab{min-height:58px;padding:6px 2px;font-size:12px}.cb-tab-face{flex-direction:column;gap:3px}}.cb-tabs~*{animation:.42s cubic-bezier(.22,1,.36,1) both cb-enter}@keyframes cb-enter{0%{opacity:0;transform:translateY(10px)}}.cb-sections{scrollbar-width:none;overflow-x:auto}.cb-sections::-webkit-scrollbar{display:none}.cb-sections-row{grid-auto-flow:column;grid-auto-columns:var(--cb-tab-w,10.5rem);border:1px solid hsl(var(--border));background:hsl(var(--muted) / .5);border-radius:999px;padding:4px;display:inline-grid;position:relative}.cb-sections-pill{width:var(--cb-tab-w,10.5rem);background:hsl(var(--card));border:1px solid hsl(var(--border));box-shadow:0 8px 20px -14px hsl(var(--foreground) / .55);transform:translateX(calc(var(--i,0) * 100%));border-radius:999px;transition:transform .38s cubic-bezier(.34,1.4,.64,1);position:absolute;top:4px;bottom:4px;left:4px}.cb-section{z-index:1;min-height:44px;color:hsl(var(--muted-foreground));border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:13.5px;font-weight:700;transition:color .2s;display:inline-flex;position:relative}.cb-section>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cb-section[aria-selected=true]{color:hsl(var(--foreground))}.cb-section:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.cb-panel{animation:.32s cubic-bezier(.22,1,.36,1) both cb-slide-in}@keyframes cb-slide-in{0%{opacity:0;transform:translate(14px)}}.cb-chapter{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:22px}.cb-chapter>summary{cursor:pointer;border-radius:22px;align-items:center;gap:12px;min-height:60px;padding:12px 16px;list-style:none;display:flex}.cb-chapter>summary::-webkit-details-marker{display:none}.cb-chapter>summary:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.cb-chapter-no{background:hsl(var(--primary) / .12);letter-spacing:.06em;color:hsl(var(--primary));border-radius:10px;flex:none;padding:4px 9px;font-size:11px;font-weight:900}.cb-chevron{flex:none;transition:transform .25s}.cb-chapter[open] .cb-chevron{transform:rotate(180deg)}.cb-lectures{gap:10px;padding:4px 12px 14px;display:grid}.cb-lecture{border:1px solid hsl(var(--border) / .8);background:hsl(var(--background));animation:.34s cubic-bezier(.22,1,.36,1) both cb-rise;animation-delay:calc(var(--n,0) * 50ms);border-radius:18px;gap:12px;padding:14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.cb-lecture:hover{border-color:hsl(var(--primary) / .45);box-shadow:0 14px 30px -24px hsl(var(--foreground) / .6)}@keyframes cb-rise{0%{opacity:0;transform:translateY(8px)}}@media (min-width:768px){.cb-lecture{grid-template-columns:minmax(0,1fr) auto;align-items:center}}.cb-state{border:1px solid hsl(var(--border));background:hsl(var(--muted) / .6);width:40px;height:40px;color:hsl(var(--muted-foreground));border-radius:14px;flex:none;place-items:center;display:grid}.cb-state[data-done=true]{border-color:color-mix(in oklab, var(--color-emerald-500) 40%, transparent);background:color-mix(in oklab, var(--color-emerald-500) 14%, transparent);color:var(--color-emerald-600)}.cb-actions{flex-wrap:wrap;gap:8px;display:flex}.cb-btn{border:1px solid hsl(var(--border));background:hsl(var(--card));min-height:44px;color:hsl(var(--foreground));border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13px;font-weight:700;transition:transform .15s,border-color .15s,background-color .15s;display:inline-flex}.cb-btn:hover{border-color:hsl(var(--primary) / .5);background:hsl(var(--muted) / .5)}.cb-btn:active{transform:scale(.98)}.cb-btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.cb-btn[data-primary=true]{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:#0000}.cb-btn[data-primary=true]:hover{background:hsl(var(--primary) / .9)}.cb-btn[aria-disabled=true]{opacity:.55;pointer-events:none}.cb-btn:hover .cb-bounce{animation:.45s cb-bounce}@keyframes cb-bounce{40%{transform:translateY(3px)}70%{transform:translateY(-2px)}}.cb-tag{white-space:nowrap;border:1px solid hsl(var(--border));border-radius:999px;flex:none;align-items:center;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.cb-tag[data-status=marked],.cb-tag[data-status=submitted]{border-color:color-mix(in oklab, var(--color-emerald-500) 40%, transparent);background:color-mix(in oklab, var(--color-emerald-500) 12%, transparent);color:var(--color-emerald-600)}.dark .cb-state[data-done=true],.dark .cb-tag[data-status=marked],.dark .cb-tag[data-status=submitted]{color:var(--color-emerald-400)}.cb-tag[data-status=due]{border-color:hsl(var(--primary) / .35);background:hsl(var(--primary) / .1);color:hsl(var(--primary))}.cb-tag[data-status=overdue]{border-color:hsl(var(--destructive) / .4);background:hsl(var(--destructive) / .1);color:hsl(var(--destructive))}.cb-row{border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:16px;align-items:center;gap:12px;min-height:56px;padding:10px 14px;transition:border-color .15s,background-color .15s,transform .15s;display:flex}a.cb-row:hover{border-color:hsl(var(--primary) / .5);background:hsl(var(--muted) / .5)}a.cb-row:active{transform:scale(.99)}a.cb-row:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.cb-row[aria-current=true]{border-color:hsl(var(--primary) / .55);background:hsl(var(--primary) / .08)}.cb-radio{border:2px solid hsl(var(--border));border-radius:999px;flex:none;place-items:center;width:22px;height:22px;display:grid}.cb-row[aria-current=true] .cb-radio{border-color:hsl(var(--primary))}.cb-row[aria-current=true] .cb-radio:after{content:"";background:hsl(var(--primary));border-radius:999px;width:10px;height:10px}.cb-skel{background:hsl(var(--muted) / .6);border-radius:18px;position:relative;overflow:hidden}.cb-skel:after{content:"";background:linear-gradient(100deg, transparent 20%, hsl(var(--background) / .6) 50%, transparent 80%);background-size:220% 100%;animation:1.2s linear infinite cb-shimmer;position:absolute;inset:0}@keyframes cb-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.cb-section[aria-current=page]{color:hsl(var(--foreground))}.tl-card{animation:.34s cubic-bezier(.22,1,.36,1) both cb-rise;animation-delay:calc(var(--n,0) * 50ms);transition:border-color .15s,box-shadow .15s,transform .15s}.tl-card:hover{border-color:hsl(var(--primary) / .45);box-shadow:0 16px 34px -26px hsl(var(--foreground) / .6);transform:translateY(-2px)}
.mo-page{--mo:var(--cb-c-classes)}.mo-page[data-page=tests]{--mo:var(--cb-c-tests)}.mo-page[data-page=doubts]{--mo:var(--cb-c-doubts)}.mo-page[data-page=tracker]{--mo:var(--cb-c-tracker)}.dark .mo-page{--mo:var(--color-indigo-400)}.dark .mo-page[data-page=tests]{--mo:var(--color-rose-400)}.dark .mo-page[data-page=doubts]{--mo:var(--color-teal-400)}.dark .mo-page[data-page=tracker]{--mo:var(--color-amber-400)}.mo-title{padding-bottom:8px;display:inline-block;position:relative}.mo-title:after{content:"";background:linear-gradient(90deg, var(--mo), color-mix(in oklab, var(--mo) 35%, transparent));transform-origin:0;border-radius:999px;width:min(100%,4.5rem);height:4px;animation:.7s cubic-bezier(.22,1,.36,1) .15s both mo-draw;position:absolute;bottom:0;left:0}@keyframes mo-draw{0%{opacity:0;transform:scaleX(0)}}.mo-card{position:relative}.mo-card:after{content:"";z-index:2;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%), color-mix(in oklab, var(--mo) 20%, transparent), transparent 70%);transition:opacity .3s;position:absolute;inset:0}.mo-card[data-lit=true]:after{opacity:1}.mo-card[data-lit=true]{border-color:color-mix(in oklab, var(--mo) 45%, hsl(var(--border)))}.mo-tilt{transition:transform .2s ease-out,border-color .2s,box-shadow .2s}.mo-tilt[data-lit=true]{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-2px);box-shadow:0 22px 40px -28px color-mix(in oklab, var(--mo) 70%, transparent)}.mo-pop{transform-origin:50% 80%;animation:.6s cubic-bezier(.34,1.5,.64,1) both mo-pop;animation-delay:calc(var(--n,0) * 70ms + .12s);display:inline-block}@keyframes mo-pop{0%{opacity:0;transform:perspective(500px)rotateX(-70deg)translateY(10px)}}.mo-stripe{overflow:hidden}.mo-stripe:before{content:"";background:var(--mo);transform-origin:top;width:4px;animation:.5s cubic-bezier(.22,1,.36,1) both mo-stripe;animation-delay:calc(var(--n,0) * 50ms + .15s);position:absolute;top:0;bottom:0;left:0}@keyframes mo-stripe{0%{transform:scaleY(0)}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.mo-page .mo-reveal{animation:linear both mo-reveal;animation-timeline:view();animation-range:entry entry 45%}}}@keyframes mo-reveal{0%{opacity:0;transform:translateY(28px)}}
