.error-page{min-height:calc(100vh - 4rem);display:flex;align-items:center;justify-content:center;padding:2rem;background-color:var(--background)}.error-container{max-width:32rem;text-align:center}.error-code{font-size:8rem;font-weight:900;letter-spacing:-.05em;line-height:1;margin-bottom:1.5rem;background:linear-gradient(135deg,var(--primary),var(--primary-hover));background-clip:text;-webkit-background-clip:text;color:transparent}@media(min-width:768px){.error-code{font-size:12rem}}.error-title{font-size:1.75rem;font-weight:700;color:var(--foreground);margin-bottom:1rem;letter-spacing:-.02em}@media(min-width:768px){.error-title{font-size:2rem}}.error-subtitle{font-size:1rem;color:var(--muted-foreground);line-height:1.6;margin-bottom:2.5rem}.error-actions{display:flex;flex-direction:column;gap:1rem;justify-content:center}@media(min-width:640px){.error-actions{flex-direction:row}}.error-support{margin-top:3rem;padding-top:2rem;border-top:1px solid oklch(from var(--border) l c h / .5)}.error-support-text{font-size:.875rem;color:var(--muted-foreground)}.error-support-link{color:var(--primary);transition:color var(--transition-fast) var(--ease-out)}.error-support-link:hover{color:var(--primary-hover)}.error-dev-details{margin-top:2rem;padding:1rem;background-color:oklch(from var(--destructive) l c h / .1);border:1px solid oklch(from var(--destructive) l c h / .2);border-radius:var(--radius-lg);text-align:left}.error-dev-label{font-size:.75rem;font-weight:600;color:var(--destructive-text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.error-dev-message{font-size:.875rem;color:var(--destructive-text);font-family:JetBrains Mono,monospace;white-space:pre-wrap;word-break:break-word}.error-dev-stack{margin-top:.5rem;font-size:.75rem;color:var(--muted-foreground);font-family:JetBrains Mono,monospace;white-space:pre-wrap;word-break:break-word;max-height:12rem;overflow:auto}.error-links-section{margin-top:3rem;padding-top:2rem;border-top:1px solid oklch(from var(--border) l c h / .5)}.error-links-text{font-size:.875rem;color:var(--muted-foreground);margin-bottom:1rem}.error-links-list{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;font-size:.875rem}.error-links-list a{color:var(--primary);transition:color var(--transition-fast) var(--ease-out)}.error-links-list a:hover{color:var(--primary-hover)}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.cookie-consent{position:fixed;bottom:0;left:0;right:0;z-index:1000;padding:1rem;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-consent-content{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.cookie-consent-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius);background:var(--secondary);color:var(--primary)}.cookie-consent-text{flex:1}.cookie-consent-text p{margin:0;font-size:.9rem;color:var(--muted-foreground);line-height:1.5}.cookie-consent-text strong{color:var(--foreground);font-weight:600}.cookie-consent-link{color:var(--primary);text-decoration:none;font-weight:500}.cookie-consent-link:hover{text-decoration:underline}.cookie-consent-button{flex-shrink:0;padding:.625rem 1.25rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.cookie-consent-button:hover{background:var(--primary-hover)}.cookie-consent-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:.5rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--muted-foreground);cursor:pointer;transition:color .2s ease,background-color .2s ease}.cookie-consent-close:hover{color:var(--foreground);background:var(--secondary)}@media(max-width:640px){.cookie-consent{padding:.5rem}.cookie-consent-content{flex-direction:column;gap:.75rem;padding:1rem;text-align:center}.cookie-consent-icon{display:none}.cookie-consent-text{width:100%}.cookie-consent-text p{font-size:.85rem}.cookie-consent-button{width:100%;padding:.75rem 1rem}.cookie-consent-close{position:absolute;top:.5rem;right:.5rem}.cookie-consent-content{position:relative;padding-top:2rem}}.header{position:sticky;top:0;z-index:50;width:100%;background-color:var(--background);border-bottom:1px solid var(--border)}.header-container{margin-left:auto;margin-right:auto;display:flex;height:3.5rem;max-width:72rem;align-items:center;padding-left:1rem;padding-right:1rem}@media(min-width:768px){.header-container{padding-left:1.5rem;padding-right:1.5rem}}.header-logo{display:flex;align-items:center;gap:.625rem;font-weight:600;font-size:1rem}.header-logo-text{letter-spacing:-.025em}.header-nav{display:none;align-items:center;gap:.25rem;margin-left:2rem}@media(min-width:768px){.header-nav{display:flex}}.header-nav-link{padding:.375rem .75rem;border-radius:var(--radius-lg);font-size:.875rem;color:var(--muted-foreground);transition:all var(--transition-fast) var(--ease-out)}.header-nav-link:hover{color:var(--foreground);background-color:oklch(from var(--accent) l c h / .5)}.header-nav-link.active{color:var(--primary);background-color:oklch(from var(--primary) l c h / .1)}.dark .header-nav-link.active{color:var(--primary);background-color:oklch(from var(--primary) l c h / .15)}.header-actions{margin-left:auto;display:flex;align-items:center;gap:.375rem}.header-icon-btn{height:2rem;width:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);color:var(--muted-foreground);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast) var(--ease-out)}.header-icon-btn:hover{color:var(--foreground);background-color:oklch(from var(--accent) l c h / .5)}.header-user-wrapper{position:relative;margin-left:.25rem}.header-user-btn{display:flex;align-items:center;gap:.5rem;height:2rem;padding:0 .5rem;border-radius:var(--radius-lg);background:transparent;border:none;cursor:pointer;transition:background-color var(--transition-fast) var(--ease-out)}.header-user-btn:hover{background-color:oklch(from var(--accent) l c h / .5)}.header-user-avatar{height:1.5rem;width:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background-color:oklch(from var(--foreground) l c h / .1);color:var(--foreground);font-size:.75rem;font-weight:500}.header-user-name{display:none;font-size:.875rem;color:var(--foreground)}@media(min-width:640px){.header-user-name{display:inline}}.header-dropdown-backdrop{position:fixed;inset:0;z-index:40;height:100%;width:100%;cursor:default;background:transparent;border:none}.header-dropdown{position:absolute;right:0;top:100%;margin-top:.375rem;width:12rem;border-radius:var(--radius-xl);border:1px solid oklch(from var(--border) l c h / .5);background-color:oklch(from var(--card) l c h / .95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:.25rem;box-shadow:var(--shadow-lg);z-index:50}.header-dropdown-label{padding:.375rem .625rem;font-size:.75rem;font-weight:500;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}.header-dropdown-item{display:flex;width:100%;align-items:center;gap:.5rem;border-radius:var(--radius-lg);padding:.5rem .625rem;font-size:.875rem;background:transparent;border:none;cursor:pointer;text-decoration:none;color:inherit;transition:background-color var(--transition-fast) var(--ease-out)}.header-dropdown-item:hover{background-color:oklch(from var(--accent) l c h / .5)}.header-dropdown-item-icon{color:var(--muted-foreground)}.header-dropdown-item-danger{color:var(--destructive-text)}.header-dropdown-item-danger:hover{background-color:oklch(from var(--destructive) l c h / .1)}.header-dropdown-divider{margin:.25rem 0;height:1px;background-color:oklch(from var(--border) l c h / .5)}.header-auth-buttons{display:none;align-items:center;gap:.375rem}@media(min-width:768px){.header-auth-buttons{display:flex}}.header-login-btn{padding:.375rem .875rem;border-radius:var(--radius-lg);font-size:.875rem;background-color:var(--primary);color:#fff;font-weight:500;transition:background-color var(--transition-fast) var(--ease-out)}.header-login-btn:hover{background-color:var(--primary-hover);color:var(--primary-foreground)}.header-mobile-toggle{display:flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:var(--radius-lg);color:var(--muted-foreground);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast) var(--ease-out)}.header-mobile-toggle:hover{color:var(--foreground);background-color:oklch(from var(--accent) l c h / .5)}@media(min-width:768px){.header-mobile-toggle{display:none}}.mobile-sidebar-container{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end}@media(min-width:768px){.mobile-sidebar-container{display:none}}.mobile-sidebar-backdrop{position:fixed;inset:0;background-color:oklch(from var(--background) l c h / .8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mobile-sidebar{position:relative;display:flex;width:100%;max-width:20rem;flex-direction:column;border-left:1px solid var(--border);background-color:var(--background);padding:1.5rem;box-shadow:var(--shadow-xl);animation:slide-in-from-right .2s ease-out}@keyframes slide-in-from-right{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.mobile-sidebar-logo{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.125rem}.mobile-sidebar-nav{display:flex;flex-direction:column;gap:1rem}.mobile-sidebar-link{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--muted-foreground);padding:.5rem .75rem;border-radius:var(--radius-lg);transition:all var(--transition-fast) var(--ease-out)}.mobile-sidebar-link:hover,.mobile-sidebar-link.active{color:var(--primary);background-color:oklch(from var(--primary) l c h / .1)}.mobile-sidebar-section{margin-top:auto}.mobile-sidebar-section-label{display:flex;font-size:.75rem;text-transform:uppercase;color:var(--muted-foreground);font-weight:700;margin-bottom:1rem;letter-spacing:.05em}.mobile-sidebar-buttons{display:flex;flex-direction:column;gap:.5rem}.mobile-sidebar-legal{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid oklch(from var(--border) l c h / .5)}.mobile-sidebar-legal-link{font-size:.75rem;color:var(--muted-foreground);text-decoration:none;transition:color var(--transition-fast) var(--ease-out)}.mobile-sidebar-legal-link:hover{color:var(--foreground)}.mobile-sidebar-legal-separator{color:var(--border);font-size:.75rem}@media(max-width:479px){.header-primary-action-label{display:none}}:root{--radius: .5rem;--radius-sm: .25rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--background: oklch(.97 .005 0);--foreground: oklch(.2 .01 0);--card: oklch(1 0 0);--card-foreground: oklch(.2 .01 0);--popover: oklch(1 0 0);--popover-foreground: oklch(.2 .01 0);--primary: oklch(.5 .08 60);--primary-foreground: oklch(.98 .005 0);--primary-hover: oklch(.45 .09 60);--primary-active: oklch(.4 .1 60);--secondary: oklch(.96 .005 0);--secondary-foreground: oklch(.3 .01 0);--secondary-hover: oklch(.94 .01 0);--muted: oklch(.96 .005 0);--muted-foreground: oklch(.5 .015 0);--accent: oklch(.96 .005 0);--accent-foreground: oklch(.2 .01 0);--destructive: oklch(.65 .2 25);--destructive-foreground: oklch(.98 .005 0);--destructive-text: oklch(.5 .2 25);--success: oklch(.6 .15 145);--success-foreground: oklch(.98 .005 0);--success-text: oklch(.5 .15 145);--warning: oklch(.75 .15 85);--warning-foreground: oklch(.2 .01 0);--warning-text: oklch(.45 .13 85);--info: oklch(.6 .12 250);--info-foreground: oklch(.98 .005 0);--info-text: oklch(.48 .12 250);--important: oklch(.6 .2 295);--important-text: oklch(.5 .2 295);--border: oklch(.9 .005 0);--input: oklch(.9 .005 0);--ring: oklch(.5 .08 60);--chart-1: oklch(.6 .12 60);--chart-2: oklch(.55 .1 150);--chart-3: oklch(.6 .12 250);--chart-4: oklch(.7 .15 330);--chart-5: oklch(.65 .15 20);--sidebar: oklch(.98 .005 0);--sidebar-foreground: oklch(.2 .01 0);--sidebar-primary: oklch(.5 .08 60);--sidebar-primary-foreground: oklch(.98 .005 0);--sidebar-accent: oklch(.96 .005 0);--sidebar-accent-foreground: oklch(.2 .01 0);--sidebar-border: oklch(.9 .005 0);--sidebar-ring: oklch(.5 .08 60);--progress: oklch(.55 .12 150);--progress-track: oklch(.92 .005 0);--highlight: oklch(.85 .08 85);--code-bg: oklch(.98 .002 0);--shadow-sm: none;--shadow: 0 1px 3px 0 rgb(0 0 0 / .02), 0 1px 2px -1px rgb(0 0 0 / .02);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .02), 0 2px 4px -2px rgb(0 0 0 / .02);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .02), 0 4px 6px -4px rgb(0 0 0 / .02);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .02), 0 8px 10px -6px rgb(0 0 0 / .02);--transition-fast: 0ms;--transition-base: 0ms;--transition-slow: 0ms;--ease-out: linear;--ease-in-out: linear;--ease-spring: linear}.dark{--background: oklch(.18 .01 260);--foreground: oklch(.92 .005 260);--card: oklch(.21 .01 260);--card-foreground: oklch(.92 .005 260);--popover: oklch(.21 .01 260);--popover-foreground: oklch(.92 .005 260);--primary: oklch(.7 .14 60);--primary-foreground: oklch(.15 .01 260);--primary-hover: oklch(.75 .14 60);--primary-active: oklch(.65 .12 60);--secondary: oklch(.25 .01 260);--secondary-foreground: oklch(.9 .005 260);--secondary-hover: oklch(.28 .01 260);--muted: oklch(.25 .01 260);--muted-foreground: oklch(.7 .01 260);--accent: oklch(.25 .01 260);--accent-foreground: oklch(.95 .005 260);--destructive: oklch(.6 .18 25);--destructive-foreground: oklch(.95 0 0);--success-text: oklch(.8 .14 145);--info-text: oklch(.75 .11 250);--warning-text: oklch(.82 .14 85);--destructive-text: oklch(.74 .16 25);--important-text: oklch(.72 .17 295);--border: oklch(.28 .01 260);--input: oklch(.28 .01 260);--ring: oklch(.7 .14 60);--sidebar: oklch(.16 .01 260);--sidebar-foreground: oklch(.92 .005 260);--sidebar-border: oklch(.25 .01 260);--sidebar-accent: oklch(.22 .01 260);--sidebar-accent-foreground: oklch(.95 .005 260);--sidebar-primary: oklch(.7 .14 60);--sidebar-primary-foreground: oklch(.15 .01 260);--sidebar-ring: oklch(.7 .14 60);--code-bg: oklch(.15 .01 260);--progress-track: oklch(.25 .01 260);--highlight: oklch(.35 .05 260);--chart-1: oklch(.7 .15 60);--chart-2: oklch(.65 .12 150);--chart-3: oklch(.7 .15 250);--chart-4: oklch(.8 .18 330);--chart-5: oklch(.75 .18 20);--shadow-sm: none;--shadow: 0 1px 3px 0 rgb(0 0 0 / .4), 0 1px 2px -1px rgb(0 0 0 / .4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .4), 0 8px 10px -6px rgb(0 0 0 / .4)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:4rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--background);color:var(--foreground);line-height:1.5;min-height:100dvh;overflow-x:hidden;transition:background-color var(--transition-base) var(--ease-out),color var(--transition-base) var(--ease-out)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--foreground);margin:0;letter-spacing:-.02em}h1{font-size:2.25rem;font-weight:700}h2{font-size:1.875rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}@media(min-width:768px){h1{font-size:3rem}h2{font-size:2.25rem}h3{font-size:1.75rem}}p{margin:0 0 1rem;color:var(--muted-foreground);line-height:1.6}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast) var(--ease-out)}a:hover{color:var(--primary-hover)}code,kbd,pre,samp{font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:.875em}code{background-color:var(--code-bg);padding:.2em .4em;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--foreground)}pre code{background:none;padding:0;color:inherit;border:none}::-moz-selection{background-color:var(--primary);color:var(--primary-foreground)}::selection{background-color:var(--primary);color:var(--primary-foreground)}@media print{body{background:#fff;color:#000}}.page-container{max-width:72rem;margin-left:auto;margin-right:auto;padding:4rem 1rem 6rem}@media(min-width:768px){.page-container{padding:6rem 1.5rem 8rem}}.page-section{margin-bottom:6rem}@media(min-width:768px){.page-section{margin-bottom:10rem}}.nav-header{display:flex;align-items:center;gap:.5rem;min-height:3.5rem;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:oklch(from var(--background) l c h / .95)}@media(min-width:640px){.nav-header{padding:.75rem 1.5rem}}.nav-logo{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.25rem;color:var(--foreground)}.nav-logo-icon{width:2rem;height:2rem;background:linear-gradient(135deg,var(--primary),var(--primary-hover));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--primary-foreground)}.main-content{min-height:100vh;background-color:var(--background)}.page-wrapper{min-height:calc(100vh - 4rem);background-color:var(--background)}.content-header{padding:2rem 2.5rem 1.5rem;border-bottom:1px solid var(--border);background-color:var(--background)}.content-body{padding:2rem 2.5rem}.grid-bento{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.grid-bento{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.grid-bento{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,minmax(200px,auto))}.bento-wide{grid-column:span 2}.bento-tall{grid-row:span 2}.bento-hero{grid-column:span 2;grid-row:span 2}}.data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.section-box{border-radius:2rem;background-color:oklch(from var(--secondary) l c h / .3);border:1px solid oklch(from var(--border) l c h / .5);padding:1.5rem}@media(min-width:640px){.section-box{border-radius:3rem;padding:3rem}}@media(min-width:768px){.section-box{padding:5rem}}@media print{.nav-header,.sidebar,.btn{display:none!important}}.course-layout{display:flex;flex-direction:column;min-height:100vh;background-color:var(--background);position:relative}@media(min-width:1024px){.course-layout{flex-direction:row}}.course-main{flex:1;min-width:0;position:relative;overflow-x:hidden}@media(min-width:1024px){.course-main{margin-left:20rem}}.course-main-inner{max-width:64rem;margin-left:auto;margin-right:auto;padding:1rem 1rem 2rem}@media(max-width:1023px){.course-main-inner{padding-top:4rem}}@media(min-width:1024px){.course-main-inner{padding:3rem 2.5rem}}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-balance{text-wrap:balance}.text-gradient{background:linear-gradient(135deg,var(--primary),oklch(from var(--primary) l c h / .7));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.animate-fade-in{animation:fade-in var(--transition-base) var(--ease-out)}.animate-slide-up{animation:slide-up var(--transition-base) var(--ease-out)}.animate-pulse-soft{animation:pulse-soft 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.7}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes float-delayed{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse-glow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes shine{0%{background-position:200% center}to{background-position:-200% center}}@keyframes grid-move{0%{transform:translateY(0)}to{transform:translateY(24px)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-slow{animation:float-slow 8s ease-in-out infinite}.animate-float-delayed{animation:float-delayed 7s ease-in-out infinite;animation-delay:2s}.animate-pulse-glow{animation:pulse-glow 4s ease-in-out infinite}.bg-grid-animate{animation:grid-move 3s linear infinite}.shine-text{background:linear-gradient(to right,var(--primary-foreground) 20%,var(--primary) 40%,var(--primary) 60%,var(--primary-foreground) 80%);background-size:200% auto;color:transparent;-webkit-background-clip:text;background-clip:text;animation:shine 5s linear infinite}.glass-panel{background:oklch(from var(--card) l c h / .7);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid oklch(from var(--border) l c h / .5);box-shadow:0 8px 32px oklch(from var(--background) l c h / .1)}.callout{display:flex;gap:1rem;padding:1rem 1.25rem;background-color:var(--accent);border-left:4px solid var(--primary);border-radius:0 var(--radius) var(--radius) 0}.callout-info{border-left-color:var(--info-text);background-color:oklch(from var(--info) l c h / .1)}.callout-success{border-left-color:var(--success-text);background-color:oklch(from var(--success) l c h / .1)}.callout-warning{border-left-color:var(--warning-text);background-color:oklch(from var(--warning) l c h / .1)}.callout-danger{border-left-color:var(--destructive-text);background-color:oklch(from var(--destructive) l c h / .1)}.callout-icon{flex-shrink:0;width:1.25rem;height:1.25rem}.callout-content{flex:1}.callout-title{font-weight:600;font-size:.9375rem;margin-bottom:.25rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--muted);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.prose{color:var(--foreground);max-width:65ch;font-size:1rem;line-height:1.75}.prose-content{max-width:none}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:var(--foreground);font-weight:700;line-height:1.3;scroll-margin-top:7rem}.prose h1{font-size:2.25rem;margin-top:0;margin-bottom:2rem}.prose h2{font-size:1.5rem;margin-top:3rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}.prose h3{font-size:1.25rem;margin-top:2rem;margin-bottom:.75rem}.prose h4{font-size:1.125rem;margin-top:1.5rem;margin-bottom:.5rem}.prose p{margin-top:1.25rem;margin-bottom:1.25rem;color:var(--muted-foreground);line-height:1.75}.prose p:first-child{margin-top:0}.prose a{color:var(--primary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:oklch(from var(--primary) l c h / .4);font-weight:500;transition:text-decoration-color var(--transition-fast) var(--ease-out)}.prose a:hover{text-decoration-color:var(--primary)}.prose strong{color:var(--foreground);font-weight:600}.prose em{font-style:italic}.prose ul,.prose ol{margin-top:1.25rem;margin-bottom:1.25rem;padding-left:1.625rem}.prose li{margin-top:.5rem;margin-bottom:.5rem;color:var(--muted-foreground);line-height:1.625}.prose ul>li{position:relative;padding-left:.375rem}.prose ul>li::marker{color:var(--muted-foreground)}.prose ol>li::marker{color:var(--muted-foreground);font-weight:500}.prose li>ul,.prose li>ol{margin-top:.5rem;margin-bottom:.5rem}.prose blockquote{margin-top:1.5rem;margin-bottom:1.5rem;padding-left:1rem;border-left:3px solid var(--primary);font-style:italic;color:var(--muted-foreground)}.prose blockquote p{margin-top:0;margin-bottom:0}.prose code{color:var(--foreground);background-color:var(--muted);padding:.2em .4em;border-radius:var(--radius);font-size:.875em;font-family:var( --font-mono, ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace )}.prose pre code{background-color:transparent;padding:0;font-size:inherit;color:inherit}.prose pre{margin-top:1.5rem;margin-bottom:1.5rem;padding:1rem 1.25rem;background-color:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto;font-size:.875rem;line-height:1.7}.prose hr{margin-top:3rem;margin-bottom:3rem;border:none;border-top:1px solid var(--border)}.prose img{margin-top:2rem;margin-bottom:2rem;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:100%;height:auto}.prose figure{margin-top:2rem;margin-bottom:2rem}.prose figcaption{margin-top:.75rem;font-size:.875rem;color:var(--muted-foreground);text-align:center}.prose table{margin-top:2rem;margin-bottom:2rem}.prose dl{margin-top:1.25rem;margin-bottom:1.25rem}.prose dt{font-weight:600;color:var(--foreground);margin-top:1rem}.prose dd{margin-left:1.5rem;margin-top:.25rem;color:var(--muted-foreground)}.prose video{margin-top:2rem;margin-bottom:2rem;border-radius:var(--radius-xl);max-width:100%}.prose-lead{font-size:1.25rem;color:var(--muted-foreground);line-height:1.6}.prose h2+p,.prose h3+p,.prose h4+p{margin-top:0}.prose .callout{margin-top:1.5rem;margin-bottom:1.5rem}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}@media print{.prose{max-width:none;font-size:12pt}.prose a{text-decoration:none;color:inherit}.prose pre{white-space:pre-wrap;word-wrap:break-word}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast) var(--ease-out);text-decoration:none;white-space:nowrap}.btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:var(--primary-foreground);border-color:transparent}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);color:var(--primary-foreground)}.btn-secondary{background-color:var(--secondary);color:var(--secondary-foreground);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background-color:var(--secondary-hover);border-color:var(--primary)}.btn-outline{background-color:transparent;border:1px solid var(--border);color:var(--foreground)}.btn-outline:hover:not(:disabled){border-color:var(--foreground);background-color:transparent}.btn-ghost{background-color:transparent;color:var(--foreground);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--accent)}.btn-destructive{background-color:var(--destructive-text);color:var(--destructive-foreground)}.btn-destructive:hover:not(:disabled){opacity:.9}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-icon{padding:.5rem;aspect-ratio:1}.cta-button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;border-radius:1rem;font-weight:700;transition:all var(--transition-fast) var(--ease-out);text-decoration:none}.cta-button-primary{background-color:var(--primary);color:var(--primary-foreground)}.cta-button-primary:hover{background-color:var(--primary-hover);color:var(--primary-foreground)}.cta-button-secondary{background-color:var(--secondary);color:var(--secondary-foreground);border:1px solid oklch(from var(--border) l c h / .5)}.cta-button-secondary:hover{background-color:oklch(from var(--secondary) l c h / .8);color:var(--secondary-foreground)}.back-link{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--muted-foreground);padding:.5rem 1rem;border-radius:9999px;background-color:oklch(from var(--secondary) l c h / .5);border:1px solid oklch(from var(--border) l c h / .5);transition:color var(--transition-fast) var(--ease-out);text-decoration:none;margin-bottom:2rem}.back-link:hover{color:var(--foreground)}@media(max-width:639px){.btn-lg{width:100%;justify-content:center}}.btn-block{width:100%}.btn-start{justify-content:flex-start}.btn-danger{color:var(--destructive-text)}.btn-danger.btn-outline:hover:not(:disabled){background-color:oklch(from var(--destructive) l c h / .1);border-color:oklch(from var(--destructive) l c h / .2)}:not(pre)>code{background-color:var(--muted);padding:.125rem .375rem;border-radius:.25rem;font-family:var(--font-mono);font-size:.9em;border:1px solid var(--border);color:var(--foreground)}.code-block{position:relative;margin:1.5rem 0;border-radius:.5rem;overflow:hidden;border:1px solid var(--border);background-color:var(--code-bg)}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;background-color:var(--secondary);border-bottom:1px solid var(--border)}.code-block-lang{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);font-family:var(--font-mono)}.code-copy-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:.25rem;font-size:.75rem;color:var(--muted-foreground);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.code-copy-btn:hover{color:var(--foreground);background-color:var(--accent);border-color:var(--border)}.code-copy-btn.copied{color:var(--success-text)}.code-copy-btn.copied svg{stroke:var(--success)}.code-block .code-block-content pre{margin:0;padding:1rem;background:transparent;border:none;overflow-x:auto}.code-block-content code{font-family:var(--font-mono);font-size:.875rem;line-height:1.6;background:transparent;color:var(--foreground)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--muted-foreground);font-style:italic}.token.punctuation{color:var(--muted-foreground)}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol{color:var(--info-text)}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin{color:var(--success-text)}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:var(--muted-foreground)}.token.atrule,.token.attr-value,.token.keyword{color:var(--primary);font-weight:500}.token.function,.token.class-name{color:var(--warning-text);font-weight:500}.token.regex,.token.important,.token.variable{color:var(--destructive-text)}.code-block-content .line{display:block}.alert{margin:2rem 0;padding:1rem 1.5rem;border-radius:.75rem;border-left:4px solid}.alert-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.alert-title{font-weight:700;font-size:.9375rem}.alert-content{font-size:.875rem;line-height:1.6;opacity:.9}.alert-content p{margin:0}.alert-note,.alert-info{border-color:var(--info-text);background-color:oklch(from var(--info) l c h / .08)}.alert-note .alert-title,.alert-info .alert-title{color:var(--info-text)}.alert-tip{border-color:var(--success-text);background-color:oklch(from var(--success) l c h / .08)}.alert-tip .alert-title{color:var(--success-text)}.alert-important{border-color:var(--important-text);background-color:oklch(from var(--important) l c h / .08)}.alert-important .alert-title{color:var(--important-text)}.alert-warning{border-color:var(--warning-text);background-color:oklch(from var(--warning) l c h / .08)}.alert-warning .alert-title{color:var(--warning-text)}.alert-caution{border-color:var(--destructive-text);background-color:oklch(from var(--destructive) l c h / .08)}.alert-caution .alert-title{color:var(--destructive-text)}table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}thead{background-color:var(--secondary)}thead th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}thead th:first-child{border-left:1px solid var(--border);border-top-left-radius:var(--radius-lg)}thead th:last-child{border-right:1px solid var(--border);border-top-right-radius:var(--radius-lg)}tbody tr{background-color:var(--card);transition:background-color var(--transition-fast) var(--ease-out)}td{padding:.75rem 1rem;color:var(--foreground);font-family:JetBrains Mono,monospace;font-size:.8125rem;border-bottom:1px solid var(--border)}td:first-child{border-left:1px solid var(--border)}td:last-child{border-right:1px solid var(--border)}tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius-lg)}tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius-lg)}th[align=center],td[align=center]{text-align:center}th[align=right],td[align=right]{text-align:right}.table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.5rem 0;border-radius:var(--radius-lg);border:1px solid var(--border);background-color:var(--card)}.table-wrapper table{margin:0;border-radius:0;background-color:transparent}.table-wrapper thead th:first-child{border-left:none;border-top-left-radius:0}.table-wrapper thead th:last-child{border-right:none;border-top-right-radius:0}.table-wrapper td:first-child{border-left:none}.table-wrapper td:last-child{border-right:none}.table-wrapper tbody tr:last-child td:first-child{border-bottom-left-radius:0}.table-wrapper tbody tr:last-child td:last-child{border-bottom-right-radius:0}@media(max-width:639px){table{font-size:.75rem}thead th{padding:.5rem .75rem;font-size:.75rem;white-space:nowrap}td{padding:.5rem .75rem;white-space:nowrap}}@media print{table{border-color:#ccc}thead{background-color:#f0f0f0}}.alert{position:relative;display:flex;gap:0;padding:0;margin:1.5rem 0;border-radius:var(--radius);border:1px solid transparent;overflow:hidden;transition:all .2s ease-out}.alert:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.1;background-color:currentColor}.alert-icon-wrapper{display:flex;align-items:flex-start;justify-content:center;padding:1rem 0 1rem 1rem;flex-shrink:0;width:auto}.alert-icon{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;margin-top:.125rem}.alert-body{flex:1;padding:1rem 1.25rem 1rem .75rem;min-width:0}.alert-title{font-weight:600;font-size:1rem;line-height:1.5;color:var(--foreground);margin-bottom:.25rem}.alert-content{font-size:.95rem;line-height:1.6;color:var(--muted-foreground)}.alert-content>:first-child{margin-top:0}.alert-content>:last-child{margin-bottom:0}.alert-note{color:var(--primary);border-color:oklch(from var(--primary) l c h / .2)}.alert-note .alert-icon{opacity:1}.alert-info{color:var(--info-text);border-color:oklch(from var(--info) l c h / .2)}.alert-tip{color:var(--success-text);border-color:oklch(from var(--success) l c h / .2)}.alert-important{color:var(--important-text);border-color:oklch(from var(--important) l c h / .2)}.alert-warning{color:var(--warning-text);border-color:oklch(from var(--warning) l c h / .2)}.alert-caution{color:var(--destructive-text);border-color:oklch(from var(--destructive) l c h / .2)}.alert-title{color:var(--foreground)}.alert-note .alert-title,.alert-info .alert-title,.alert-tip .alert-title,.alert-important .alert-title,.alert-warning .alert-title,.alert-caution .alert-title{color:currentColor}.alert-icon svg{width:100%;height:100%;stroke-width:2.5px}.footer{margin-top:5rem;border-top:1px solid oklch(from var(--border) l c h / .5);padding:2rem 1rem;background-color:var(--background);width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}@media(min-width:768px){.footer{margin-top:6rem;padding:2.5rem 1.5rem}}.footer-inner{max-width:72rem;margin-left:auto;margin-right:auto;text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1.25rem;margin-bottom:1rem}@media(min-width:768px){.footer-links{gap:1.5rem}}.footer-link{font-size:.875rem;color:var(--muted-foreground);text-decoration:none;transition:color var(--transition-fast) var(--ease-out)}.footer-link:hover{color:var(--foreground)}.footer-copyright{font-size:.875rem;color:var(--muted-foreground);margin:0}.footer-separator{color:var(--muted-foreground)}.footer--compact{margin-top:3rem;padding:1.5rem 1rem;border-top:1px solid oklch(from var(--border) l c h / .3)}.footer-compact-inner{display:flex;flex-direction:column;align-items:center;gap:.5rem}@media(min-width:640px){.footer-compact-inner{flex-direction:row;justify-content:center;gap:1rem}}.footer-compact-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem}.footer--compact .footer-link,.footer--compact .footer-copyright,.footer--compact .footer-separator{font-size:.75rem}.footer-build-hash{display:block;text-align:center;margin-top:1.5rem;font-size:.65rem;font-family:var(--font-mono);color:var(--muted-foreground);letter-spacing:.05em}.footer--compact .footer-build-hash{margin-top:1rem;font-size:.6rem}.feedback-flag{display:inline-flex}.feedback-flag--floating{position:fixed;right:1.25rem;bottom:1.25rem;z-index:50;flex-direction:column;align-items:flex-end;gap:.75rem}.feedback-trigger{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:9999px;border:1px solid var(--border);background-color:var(--primary);color:var(--primary-foreground);cursor:pointer;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast) var(--ease-out),background-color var(--transition-fast) var(--ease-out)}.feedback-trigger:hover{background-color:var(--primary-hover);transform:translateY(-2px)}.feedback-trigger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.feedback-flag--inline{position:relative;vertical-align:middle}.feedback-trigger-inline{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.78rem;font-weight:500;line-height:1;color:var(--muted-foreground);background-color:transparent;border:1px solid var(--border);border-radius:9999px;cursor:pointer;transition:all var(--transition-fast) var(--ease-out)}.feedback-trigger-inline:hover{color:var(--primary);border-color:var(--primary);background-color:oklch(from var(--primary) l c h / .08)}.feedback-trigger-inline:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.feedback-panel{width:20rem;max-width:calc(100vw - 2.5rem);background-color:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:1rem;display:flex;flex-direction:column;gap:.75rem;animation:feedback-pop .15s var(--ease-out)}.feedback-flag--inline .feedback-panel{position:absolute;top:calc(100% + .5rem);left:0;z-index:50}@keyframes feedback-pop{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.feedback-panel-header{display:flex;align-items:center;justify-content:space-between}.feedback-panel-title{font-size:.95rem;font-weight:600;color:var(--foreground)}.feedback-close{display:inline-flex;padding:.25rem;border:none;background:transparent;color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius);transition:all var(--transition-fast) var(--ease-out)}.feedback-close:hover{color:var(--foreground);background-color:var(--muted)}.feedback-panel-hint{font-size:.8rem;color:var(--muted-foreground);margin:0}.feedback-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.feedback-cat{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem .25rem;font-size:.78rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--background);color:var(--muted-foreground);cursor:pointer;transition:all var(--transition-fast) var(--ease-out)}.feedback-cat:hover{color:var(--foreground);border-color:var(--ring)}.feedback-cat--active{border-color:var(--primary);color:var(--primary);background-color:oklch(from var(--primary) l c h / .08)}.feedback-textarea{width:100%;resize:vertical;min-height:4.5rem;padding:.5rem .625rem;font-size:.85rem;font-family:inherit;color:var(--foreground);background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius)}.feedback-textarea:focus-visible{outline:none;border-color:var(--ring);box-shadow:0 0 0 2px oklch(from var(--ring) l c h / .3)}.feedback-submit{width:100%}.feedback-panel-note{font-size:.72rem;color:var(--muted-foreground);margin:0;text-align:center}.feedback-backdrop{display:none}@media(max-width:640px){.feedback-backdrop{display:block;position:fixed;inset:0;z-index:60;padding:0;border:none;cursor:pointer;background-color:oklch(from var(--background) l c h / .6);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:feedback-fade .15s var(--ease-out)}.feedback-panel,.feedback-flag--inline .feedback-panel{position:fixed;inset:auto 0 0;width:auto;max-width:none;z-index:70;border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:calc(1rem + env(safe-area-inset-bottom));animation:feedback-sheet-up .2s var(--ease-out)}}@keyframes feedback-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes feedback-fade{0%{opacity:0}to{opacity:1}}.login-page{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:1.5rem;background-color:var(--background)}.login-container{width:100%;max-width:28rem;margin-left:auto;margin-right:auto}.login-box{padding:2rem}@media(min-width:768px){.login-box{padding:2.5rem}}.login-header{text-align:center;margin-bottom:2rem}.login-logo{display:inline-flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.login-logo-text{font-weight:600;letter-spacing:-.025em}.login-subtitle{color:var(--muted-foreground)}.login-notice{font-size:.8125rem;color:var(--muted-foreground);margin-top:1rem;padding:.625rem .875rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--secondary)}.login-buttons{display:flex;flex-direction:column;gap:.75rem}.login-oauth-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-lg);border:1px solid var(--border);background-color:var(--card);color:var(--foreground);cursor:pointer;transition:background-color var(--transition-fast) var(--ease-out)}.login-oauth-btn:hover:not(:disabled){background-color:oklch(from var(--accent) l c h / .5)}.login-oauth-btn:disabled{opacity:.5;cursor:not-allowed}.login-oauth-icon{width:1.25rem;height:1.25rem}.login-oauth-text{font-weight:500}.login-terms{text-align:center;font-size:.75rem;color:var(--muted-foreground);margin-top:1.5rem}.login-terms-link{text-decoration:underline}.login-terms-link:hover{color:var(--foreground)}.login-back{margin-top:1.5rem;text-align:center}.login-back-link{font-size:.875rem;color:var(--muted-foreground);transition:color var(--transition-fast) var(--ease-out)}.login-back-link:hover{color:var(--foreground)}.login-status{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;color:var(--muted-foreground);font-size:.875rem}.login-status-text{animation:login-pulse 2s ease-in-out infinite}@keyframes login-pulse{0%,to{opacity:1}50%{opacity:.5}}.login-status-cancel{display:flex;align-items:center;justify-content:center;padding:.25rem;border:none;background:transparent;color:var(--muted-foreground);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast) var(--ease-out)}.login-status-cancel:hover{color:var(--foreground);background-color:var(--accent)}.login-error-actions{display:flex;align-items:center;gap:.75rem}.login-retry-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.8125rem;font-weight:500;border:none;border-radius:var(--radius-md);background-color:var(--primary);color:var(--primary-foreground);cursor:pointer;transition:all var(--transition-fast) var(--ease-out)}.login-retry-btn:hover{background-color:var(--primary-hover)}.login-cancel-link{font-size:.8125rem;color:var(--muted-foreground);background:transparent;border:none;cursor:pointer;text-decoration:underline;transition:color var(--transition-fast) var(--ease-out)}.login-cancel-link:hover{color:var(--foreground)}.login-retry-warning{text-align:center;font-size:.75rem;color:var(--muted-foreground);padding:.5rem;margin-top:.25rem;background-color:oklch(from var(--warning) l c h / .1);border-radius:var(--radius-md)}.login-oauth-btn--active{border-color:var(--primary);background-color:oklch(from var(--primary) l c h / .1)}.login-email-input-wrapper{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--card);overflow:hidden;transition:border-color var(--transition-fast) var(--ease-out)}.login-email-input-wrapper:focus-within{border-color:var(--primary)}.login-email-input-icon{margin-left:.875rem;color:var(--muted-foreground);flex-shrink:0}.login-email-input{flex:1;padding:.75rem;border:none;background:transparent;color:var(--foreground);font-size:.875rem;font-family:inherit;outline:none;min-width:0}.login-email-input::-moz-placeholder{color:var(--muted-foreground)}.login-email-input::placeholder{color:var(--muted-foreground)}.login-email-submit{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;margin-right:.375rem;border:none;border-radius:50%;background:transparent;color:var(--muted-foreground);cursor:pointer;flex-shrink:0;transition:all var(--transition-fast) var(--ease-out)}.login-email-submit:hover:not(:disabled){color:var(--primary);background-color:oklch(from var(--primary) l c h / .1)}.login-email-submit:disabled{opacity:.5;cursor:not-allowed}.login-email-back{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;background:transparent;border:none;color:var(--muted-foreground);font-size:.8125rem;cursor:pointer;padding:.25rem 0;width:100%;transition:color var(--transition-fast) var(--ease-out)}.login-email-back:hover:not(:disabled){color:var(--foreground)}.login-email-back:disabled{opacity:.5;cursor:not-allowed}.auth-callback{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background-color:var(--background)}.auth-callback-content{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.auth-callback-spinner{color:var(--primary);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-callback-icon-success{color:var(--success-text)}.auth-callback-icon-error{color:var(--destructive-text)}.auth-callback-text{font-size:1.125rem;font-weight:500;color:var(--foreground)}.auth-callback-subtext{font-size:.875rem;color:var(--muted-foreground)}.auth-callback-link{margin-top:1rem;padding:.5rem 1.5rem;font-size:.875rem;font-weight:500;color:var(--primary);background-color:transparent;border:1px solid var(--primary);border-radius:var(--radius-md);text-decoration:none;transition:all .15s ease}.auth-callback-link:hover{background-color:var(--primary);color:var(--primary-foreground)}.hero{max-width:48rem;margin-left:auto;margin-right:auto;text-align:center;margin-bottom:5rem}@media(min-width:768px){.hero{margin-bottom:8rem}}.hero-title{font-size:2.25rem;font-weight:700;letter-spacing:-.025em;margin-bottom:2.5rem;color:var(--foreground)}@media(min-width:768px){.hero-title{font-size:3.75rem}}.hero-subtitle{font-size:1.25rem;color:var(--muted-foreground);line-height:1.75}.hero-actions{display:flex;flex-direction:column;justify-content:center;gap:1rem;margin-top:3rem}@media(min-width:640px){.hero-actions{flex-direction:row}}.hero-feedback{display:flex;justify-content:center;margin-top:1.5rem}.hero-compact{text-align:center;margin-bottom:2rem}.page-container:has(.hero-compact){padding-top:2rem}@media(min-width:768px){.page-container:has(.hero-compact){padding-top:3rem}}.hero-compact-title{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;color:var(--foreground);margin:0 0 .25rem}.hero-compact-actions{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.hero-visual{transform:perspective(1000px) rotateY(-10deg) rotateX(5deg);transition:transform .7s cubic-bezier(.34,1.56,.64,1);will-change:transform}.hero-visual:hover{transform:perspective(1000px) rotateY(0) rotateX(0)}.animate-bounce-slow{animation:bounce-slow 4s infinite ease-in-out}@keyframes bounce-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.about-container{max-width:56rem;margin:0 auto 5rem;padding:0 1.5rem}.about-section{margin-bottom:4rem}.about-section-title{font-size:1.35rem;font-weight:700;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.about-section-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .15),oklch(from var(--primary) l c h / .05));color:var(--primary);flex-shrink:0}.about-section p{color:var(--muted-foreground);line-height:1.8;margin-bottom:1rem}.about-section p:last-child{margin-bottom:0}.about-contact{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2.5rem;background:oklch(from var(--card) l c h / .5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid oklch(from var(--primary) l c h / .2);border-radius:2rem;text-align:center;position:relative;overflow:hidden}.about-contact:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,oklch(from var(--primary) l c h / .05),transparent 70%);pointer-events:none}.about-contact h2{font-size:1.25rem;font-weight:700;position:relative}.about-contact p{color:var(--muted-foreground);line-height:1.6;max-width:32rem;position:relative}.about-contact-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;position:relative}.about-contact-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary);border-radius:.75rem;font-weight:600;font-size:.9375rem;text-decoration:none;transition:all var(--transition-fast) var(--ease-out);border:1px solid transparent}.about-contact-link:hover{background:oklch(from var(--primary) l c h / .15);border-color:oklch(from var(--primary) l c h / .3);transform:translateY(-2px)}.stats-page{min-height:100vh;background-color:var(--background)}.stats-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--muted-foreground)}.stats-header{border-bottom:1px solid var(--border)}.stats-header-inner{max-width:56rem;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.stats-back-link{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--muted-foreground);text-decoration:none;transition:color .15s}.stats-back-link:hover{color:var(--foreground)}.stats-title{font-size:1.25rem;font-weight:700;color:var(--foreground);margin:0}.stats-exam-countdown{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:var(--radius-full);background-color:oklch(from var(--primary) l c h / .08);color:var(--primary);font-size:.8125rem;width:-moz-fit-content;width:fit-content}.stats-content{max-width:56rem;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.stats-overview{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}@media(min-width:640px){.stats-overview{grid-template-columns:repeat(4,1fr)}}.stats-stat-card{display:flex;flex-direction:column;align-items:center;gap:.125rem;padding:1rem .5rem;border-radius:1.25rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5)}.stats-stat-icon{color:var(--muted-foreground);margin-bottom:.25rem}.stats-stat-value{font-size:1.25rem;font-weight:700;color:var(--foreground);line-height:1.2}.stats-stat-secondary{font-size:.875rem;font-weight:400;color:var(--muted-foreground)}.stats-stat-label{font-size:.6875rem;color:var(--muted-foreground);text-align:center}.stats-card{background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;overflow:hidden}.stats-card-header{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .4);color:var(--muted-foreground)}.stats-card-title{font-size:.9375rem;font-weight:600;color:var(--foreground);margin:0}.stats-card-body{padding:1.25rem}.stats-deck-list{display:flex;flex-direction:column;gap:1rem}.stats-deck-item{display:flex;flex-direction:column;gap:.375rem}.stats-deck-header{display:flex;justify-content:space-between;align-items:center}.stats-deck-name{font-size:.875rem;font-weight:500;color:var(--foreground)}.stats-deck-count{font-size:.75rem;color:var(--muted-foreground)}.stats-progress-track{height:.5rem;border-radius:var(--radius-full);background-color:var(--secondary);overflow:hidden}.stats-progress-fill{height:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--primary),oklch(from var(--primary) calc(l + .08) c h));transition:width .6s ease;min-width:2px}.stats-deck-details{display:flex;align-items:center;gap:.375rem;flex-wrap:wrap}.stats-deck-detail{font-size:.6875rem;color:var(--muted-foreground)}.stats-deck-detail--due{color:var(--warning-text);font-weight:600}.stats-deck-detail-sep{width:3px;height:3px;border-radius:50%;background-color:var(--muted-foreground);opacity:.4;flex-shrink:0}.stats-trend{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;font-weight:600;padding:.125rem .5rem;border-radius:var(--radius-full);margin-left:auto}.stats-trend--up{color:var(--success-text);background-color:oklch(from var(--success) l c h / .1)}.stats-trend--down{color:var(--destructive-text);background-color:oklch(from var(--destructive) l c h / .1)}.stats-trend--stable{color:var(--muted-foreground);background-color:var(--secondary)}.stats-exam-summary{display:flex;gap:1.5rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid oklch(from var(--border) l c h / .3)}.stats-exam-summary-item{display:flex;flex-direction:column;gap:.125rem}.stats-exam-summary-label{font-size:.6875rem;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.03em}.stats-exam-summary-value{font-size:1.125rem;font-weight:700;color:var(--foreground)}.stats-exam-chart{display:flex;gap:.375rem;margin-bottom:1.25rem}.stats-exam-chart-y{display:flex;flex-direction:column;justify-content:space-between;font-size:.5625rem;color:var(--muted-foreground);padding-bottom:1.125rem;min-width:1.5rem;text-align:right}.stats-exam-bars{flex:1;display:flex;align-items:flex-end;gap:.25rem;height:7rem;border-left:1px solid oklch(from var(--border) l c h / .3);border-bottom:1px solid oklch(from var(--border) l c h / .3);padding:0 .25rem}.stats-exam-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0}.stats-exam-bar-track{width:100%;max-width:2.5rem;height:5.75rem;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background-color:oklch(from var(--secondary) l c h / .5);display:flex;align-items:flex-end;overflow:hidden}.stats-exam-bar-fill{width:100%;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:height .5s ease;min-height:2px}.stats-exam-bar-date{font-size:.5rem;color:var(--muted-foreground);line-height:1;white-space:nowrap}.stats-exam-list{display:flex;flex-direction:column;gap:.375rem}.stats-exam-row{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:var(--radius);background-color:var(--secondary)}.stats-exam-badge{font-size:.75rem;font-weight:700;padding:.1875rem .5rem;border-radius:var(--radius-sm);flex-shrink:0;line-height:1.2;min-width:2.75rem;text-align:center}.stats-exam-info{display:flex;flex-direction:column;gap:.0625rem;min-width:0;flex:1}.stats-exam-category{font-size:.8125rem;font-weight:500;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-exam-meta{display:inline-flex;align-items:center;gap:.25rem;font-size:.6875rem;color:var(--muted-foreground)}.stats-exam-date{font-size:.6875rem;color:var(--muted-foreground);white-space:nowrap;flex-shrink:0}.stats-card-empty{color:var(--muted-foreground);font-size:.8125rem;margin:0}.stats-exam-bars-empty{display:flex;align-items:center;justify-content:center;width:100%;height:5.75rem;color:var(--muted-foreground);font-size:.75rem}.business-page{padding-bottom:4rem}.business-pricing-section{max-width:32rem;margin:0 auto 4rem;padding:0 1.5rem}.business-pricing-card{background:var(--card);border:2px solid var(--primary);border-radius:1.5rem;padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.business-pricing-header{display:flex;align-items:center;gap:1rem;color:var(--primary)}.business-pricing-title{font-size:1.25rem;font-weight:700;margin:0}.business-pricing-subtitle{font-size:.85rem;color:var(--muted-foreground);margin:0}.business-pricing-amount{display:flex;align-items:baseline;gap:.5rem}.business-pricing-number{font-size:2.5rem;font-weight:800;letter-spacing:-.02em}.business-pricing-period{font-size:.9rem;color:var(--muted-foreground)}.business-pricing-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.business-pricing-features li{display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:var(--foreground)}.business-pricing-features li svg{color:var(--primary);flex-shrink:0}.business-pricing-cta{width:100%;justify-content:center;font-size:1rem;padding:.875rem 1.5rem}.benefits-section{max-width:64rem;margin-left:auto;margin-right:auto;margin-bottom:6rem;padding:0 1.5rem}.benefits-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.benefits-grid{grid-template-columns:repeat(2,1fr)}}.contact-section{max-width:48rem;margin-left:auto;margin-right:auto;padding:0 1.5rem;text-align:center}.contact-card{background:var(--accent);border:1px solid var(--border);border-radius:2rem;padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.contact-title{font-size:1.75rem;font-weight:700}.contact-text{color:var(--muted-foreground);margin-bottom:1rem;max-width:30rem;line-height:1.6}.company-register-page{min-height:100vh;background-color:var(--background);padding-bottom:4rem}.company-register-content{max-width:32rem;margin:0 auto;padding:2rem 1.5rem}.company-register-card{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:2rem}.company-register-title{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.company-register-subtitle{color:var(--muted-foreground);font-size:.9rem;margin-bottom:2rem}.company-form{display:flex;flex-direction:column;gap:1.25rem}.company-form-group{display:flex;flex-direction:column;gap:.5rem}.company-form-label{font-size:.85rem;font-weight:600}.company-form-input{padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.9rem;transition:border-color .15s}.company-form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px oklch(from var(--primary) l c h / .1)}.company-form-hint{font-size:.8rem;color:var(--muted-foreground)}.company-form-error{color:var(--destructive-text);font-size:.85rem;display:flex;align-items:center;gap:.5rem}.company-form-submit{width:100%;justify-content:center;font-size:1rem;padding:.875rem 1.5rem;margin-top:.5rem}.company-seats-input{display:flex;align-items:center;gap:1rem}.company-seats-input input{width:6rem;text-align:center}.company-seats-price{font-size:.9rem;color:var(--muted-foreground)}.company-seats-price strong{color:var(--foreground)}.company-dashboard{min-height:100vh;background-color:var(--background);padding-bottom:4rem}.company-dashboard-content{max-width:56rem;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.company-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem;margin-bottom:2rem}.company-stat{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem}.company-stat-label{font-size:.8rem;color:var(--muted-foreground);margin-bottom:.25rem}.company-stat-value{font-size:1.5rem;font-weight:700}.company-stat-value--active{color:var(--primary)}.company-stat-value--warning{color:var(--warning-text)}.company-stat-value--danger{color:var(--destructive-text)}.company-members-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:2rem}.company-members-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.company-members-title{font-size:1rem;font-weight:600}.company-members-list{list-style:none;padding:0;margin:0}.company-member-row{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border);gap:1rem}.company-member-row:last-child{border-bottom:none}.company-member-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.company-member-name{font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-member-email{font-size:.8rem;color:var(--muted-foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-member-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.company-member-badge{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:var(--radius-full);white-space:nowrap}.company-member-badge--active{background:oklch(from var(--primary) l c h / .1);color:var(--primary)}.company-member-badge--pending{background:oklch(from var(--warning, #f59e0b) .95 .05 85);color:var(--warning-text)}.company-member-badge--owner{background:oklch(from var(--primary) l c h / .1);color:var(--primary);font-style:italic}.company-member-actions{display:flex;gap:.5rem}.company-invite-form{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border)}.company-invite-form input{flex:1;padding:.625rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.9rem}.company-invite-form input:focus{outline:none;border-color:var(--primary)}.company-billing-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.company-billing-info{display:flex;flex-direction:column;gap:.25rem}.company-billing-label{font-size:.85rem;font-weight:600}.company-billing-text{font-size:.8rem;color:var(--muted-foreground)}.company-success-banner{background:oklch(from var(--primary) l c h / .1);border:1px solid var(--primary);border-radius:var(--radius-lg);padding:1rem 1.5rem;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem;color:var(--primary);font-weight:500}.company-invite-page{min-height:100vh;background-color:var(--background);display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem}.company-invite-card{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:2.5rem;max-width:28rem;width:100%;text-align:center}.company-invite-icon{width:3.5rem;height:3.5rem;border-radius:var(--radius-lg);background:oklch(from var(--primary) l c h / .1);color:var(--primary);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.company-invite-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.company-invite-text{color:var(--muted-foreground);font-size:.9rem;line-height:1.5;margin-bottom:1.5rem}.company-invite-company{font-weight:600;color:var(--primary)}.company-invite-actions{display:flex;flex-direction:column;gap:.75rem}.company-invite-error{color:var(--destructive-text);font-size:.9rem}.company-empty{text-align:center;padding:3rem 1.5rem;color:var(--muted-foreground)}.company-empty p{margin-bottom:1rem}.company-loading{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--muted-foreground)}@media(max-width:640px){.company-member-row{flex-direction:column;align-items:flex-start}.company-member-meta{width:100%;justify-content:space-between}.company-billing-card{flex-direction:column;align-items:flex-start}.company-stats{grid-template-columns:1fr 1fr}}.company-dashboard-nav{border-bottom:1px solid var(--border);background-color:var(--background)}.company-dashboard-nav-inner{max-width:56rem;margin:0 auto;padding:0 1.5rem}.dashboard-tabs{display:flex;gap:.25rem;overflow-x:auto}.dashboard-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem .875rem;border:none;background-color:transparent;color:var(--muted-foreground);font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;position:relative;transition:color .15s}.dashboard-tab:after{content:"";position:absolute;left:.5rem;right:.5rem;bottom:-1px;height:2px;background-color:transparent;transition:background-color .15s}.dashboard-tab:hover{color:var(--foreground)}.dashboard-tab--active{color:var(--foreground);font-weight:600}.dashboard-tab--active:after{background-color:var(--primary)}.dashboard-tab-count{font-size:.6875rem;font-weight:600;padding:.1rem .4rem;border-radius:var(--radius-full);background-color:var(--secondary);color:var(--muted-foreground);font-variant-numeric:tabular-nums;line-height:1}.dashboard-tab--active .dashboard-tab-count{background-color:oklch(from var(--primary) l c h / .12);color:var(--primary)}.dashboard-tab-label{display:none}@media(min-width:520px){.dashboard-tab-label{display:inline}}.dashboard-tab-panel{display:flex;flex-direction:column;gap:1rem}.tab-panel{display:flex;flex-direction:column;gap:.75rem}.tab-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.tab-panel-title{font-size:.9375rem;font-weight:600;margin:0 0 .25rem;color:var(--foreground)}.tab-panel-sub{font-size:.8125rem;color:var(--muted-foreground);margin:0;max-width:36rem}.tab-panel-hint{font-size:.8125rem;color:var(--muted-foreground);margin:0;padding:.75rem 1rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:calc(var(--radius) + 2px)}.tab-panel-hint--warn{background-color:oklch(from var(--warning) l c h / .1);border-color:oklch(from var(--warning) l c h / .3);color:oklch(from var(--warning) calc(l - .2) c h)}.company-dashboard-header{border-bottom:1px solid var(--border);background-color:var(--background)}.company-dashboard-header-inner{max-width:56rem;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.company-dashboard-header-main{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.company-dashboard-header-titles{display:flex;flex-direction:column;gap:.5rem;min-width:0;flex:1}.company-dashboard-title{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0;color:var(--foreground)}.company-dashboard-title svg{color:var(--muted-foreground);flex-shrink:0}.company-dashboard-header-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.company-seats-inline{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--muted-foreground);font-variant-numeric:tabular-nums}.company-seats-inline svg{opacity:.7}.company-dashboard-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.company-seats-bar{height:.25rem;background-color:var(--secondary);border-radius:var(--radius-full);overflow:hidden}.company-seats-fill{height:100%;background-color:var(--primary);border-radius:inherit;transition:width .3s}.company-seats-fill--full{background-color:var(--warning-text)}@media(max-width:640px){.company-dashboard-header-inner{padding:1.5rem 1.25rem}.company-dashboard-header-actions{width:100%}.company-dashboard-header-actions .btn{flex:1;justify-content:center}}.company-status-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.6875rem;font-weight:600;padding:.25rem .625rem;border-radius:var(--radius-full);letter-spacing:.01em;text-transform:uppercase}.company-status-pill:before{content:"";display:inline-block;width:.4rem;height:.4rem;border-radius:50%;background-color:currentColor}.company-status-pill--active{background-color:oklch(from var(--success) l c h / .12);color:var(--success-text)}.company-status-pill--inactive{background-color:var(--secondary);color:var(--muted-foreground)}.company-status-pill--warning{background-color:oklch(from var(--warning) l c h / .16);color:oklch(from var(--warning) calc(l - .2) c h)}.company-status-pill--danger{background-color:oklch(from var(--destructive) l c h / .12);color:var(--destructive-text)}.company-role-badge{display:inline-flex;align-items:center;gap:.375rem;background-color:oklch(from var(--primary) l c h / .1);color:var(--primary);font-size:.6875rem;font-weight:600;padding:.25rem .625rem;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.01em}.company-section{background:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;margin-bottom:1rem;overflow:hidden}.company-section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .4);flex-wrap:wrap}.company-section-title{font-size:.95rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.company-section-body{padding:1.25rem}.company-section-body--flush{padding:0}.company-team-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem}.company-team-stat{display:flex;flex-direction:column;gap:.25rem;padding:1rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1rem}.company-team-stat-label{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--muted-foreground);font-weight:500}.company-team-stat-value{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.company-team-stat-hint{font-size:.7rem;color:var(--muted-foreground);margin-top:.125rem}.company-section-sub{font-size:.75rem;color:var(--muted-foreground);margin:.2rem 0 0}.company-section-sub--warn{color:#b45309;font-weight:600}.azubi-table-wrapper{overflow-x:auto}.azubi-table{width:100%;border-collapse:collapse;font-size:.85rem}.azubi-table thead th{text-align:left;padding:.65rem 1rem;font-size:.68rem;font-weight:600;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em;background:oklch(from var(--background) l c h / .4);border-bottom:1px solid oklch(from var(--border) l c h / .4);white-space:nowrap}.azubi-table thead th:first-child{padding-left:1.25rem}.azubi-table thead th:last-child{padding-right:1.25rem}.azubi-table tbody td{padding:.75rem 1rem;border-bottom:1px solid oklch(from var(--border) l c h / .3);vertical-align:middle}.azubi-table tbody td:first-child{padding-left:1.25rem}.azubi-table tbody td:last-child{padding-right:1.25rem}.azubi-row:last-child td{border-bottom:none}.azubi-row{transition:background .12s ease}.azubi-row:hover{background:oklch(from var(--background) l c h / .5)}.azubi-link{text-decoration:none;color:inherit;display:block}.azubi-link--button{background:transparent;border:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-align:left;width:100%}.azubi-cell{display:flex;align-items:center;gap:.7rem;min-width:0}.azubi-avatar{width:2.15rem;height:2.15rem;border-radius:50%;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .15),oklch(from var(--primary) l c h / .05));color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;letter-spacing:-.01em}.azubi-name-block{display:flex;flex-direction:column;min-width:0;line-height:1.3}.azubi-name-block strong{font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:14rem}.azubi-name-block span{font-size:.72rem;color:var(--muted-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:14rem}.azubi-status{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;padding:.3rem .6rem;border-radius:var(--radius-full);white-space:nowrap}.azubi-status--active{background:oklch(from #22c55e .95 .07 145);color:#15803d}.azubi-status--pending{background:oklch(from #f59e0b .96 .05 85);color:#b45309}.azubi-cell-muted{color:var(--muted-foreground);font-size:.78rem;font-variant-numeric:tabular-nums}.activity-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;flex-shrink:0}.activity-dot--fresh{background:#22c55e;box-shadow:0 0 0 3px oklch(from #22c55e l c h / .15)}.activity-dot--stale{background:#f59e0b}.activity-dot--inactive{background:#ef4444}.activity-dot--none{background:var(--muted-foreground);opacity:.4}.azubi-cell-num{font-variant-numeric:tabular-nums;font-weight:600;font-size:.9rem;text-align:right}.azubi-table thead th.th-right{text-align:right}.th-sort{display:inline-flex;align-items:center;gap:.3rem;background:transparent;border:none;padding:0;font:inherit;color:inherit;cursor:pointer;letter-spacing:inherit;text-transform:inherit}.th-right .th-sort{flex-direction:row-reverse}.th-sort svg{opacity:.4;transition:opacity .12s}.th-sort:hover{color:var(--foreground)}.th-sort:hover svg{opacity:.7}.th-sort--active{color:var(--primary)}.th-sort--active svg{opacity:1}.score-gauge{display:inline-flex;align-items:center;gap:.5rem}.score-gauge svg{flex-shrink:0}.score-gauge-label{font-variant-numeric:tabular-nums;font-weight:700;font-size:.85rem}.azubi-actions{display:flex;gap:.35rem;justify-content:flex-end}.company-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border-radius:.5rem;background:transparent;border:1px solid oklch(from var(--border) l c h / .5);color:var(--muted-foreground);cursor:pointer;transition:all .15s ease}.company-icon-btn:hover{background:var(--background);color:var(--foreground);border-color:var(--border)}.company-icon-btn--danger:hover{color:var(--destructive-text);border-color:oklch(from var(--destructive) l c h / .4)}.azubi-cards{display:none}@media(max-width:780px){.azubi-table-wrapper{display:none}.azubi-cards{display:flex;flex-direction:column}.azubi-card-m{padding:1rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .3)}.azubi-card-m:last-child{border-bottom:none}.azubi-card-m-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.azubi-card-m-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.75rem;background:var(--background);border-radius:.75rem;margin-bottom:.75rem}.azubi-card-m-stats>div{font-size:.7rem;display:flex;flex-direction:column;gap:.15rem}.azubi-card-m-stats strong{font-size:1rem;font-weight:700}.azubi-card-m-stat-label{color:var(--muted-foreground);font-weight:500}.azubi-card-m-footer{display:flex;justify-content:flex-end}}.company-invite-bar{display:flex;gap:.5rem;flex-wrap:wrap}.company-invite-bar input{flex:1;min-width:14rem;padding:.5rem .875rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.85rem}.company-invite-bar input:focus{outline:none;border-color:var(--primary)}.company-settings-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.25rem;background:transparent;border:none;color:var(--foreground);font-size:.95rem;font-weight:600;cursor:pointer;text-align:left}.company-settings-toggle:hover{background:oklch(from var(--background) l c h / .5)}.company-settings-body{padding:0 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.company-setting-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid oklch(from var(--border) l c h / .3);flex-wrap:wrap}.company-setting-row:last-child{border-bottom:none}.company-setting-label{display:flex;flex-direction:column;gap:.15rem}.company-setting-label strong{font-size:.875rem;font-weight:600}.company-setting-label span{font-size:.75rem;color:var(--muted-foreground)}.company-empty-state{padding:3rem 1.5rem;text-align:center;color:var(--muted-foreground)}.company-empty-state svg{color:var(--muted-foreground);opacity:.5;margin-bottom:1rem}.company-empty-state p{margin:0 0 .5rem}.company-consent-box{background:oklch(from var(--primary) l c h / .04);border:1px solid oklch(from var(--primary) l c h / .25);border-radius:var(--radius-lg);padding:1rem;margin-top:.25rem}.company-consent-label{display:flex;gap:.75rem;font-size:.8rem;line-height:1.5;cursor:pointer}.company-consent-label input[type=checkbox]{margin-top:.2rem;flex-shrink:0}.company-consent-label a{color:var(--primary);text-decoration:underline}.company-transparency-notice{background:oklch(from var(--primary) l c h / .06);border:1px solid oklch(from var(--primary) l c h / .25);border-radius:var(--radius-lg);padding:1rem 1.1rem;margin:1.25rem 0;text-align:left;font-size:.85rem;line-height:1.5}.company-transparency-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:var(--primary)}.company-transparency-notice p{margin:.25rem 0;color:var(--foreground)}.company-transparency-notice ul{margin:.5rem 0;padding-left:1.25rem;color:var(--foreground)}.company-transparency-notice li{margin:.15rem 0}.company-transparency-notice p.company-transparency-footnote{color:var(--muted-foreground);font-size:.75rem;margin-top:.75rem}.company-transparency-notice p.company-transparency-footnote a{color:var(--primary);text-decoration:underline}.assignment-filter-bar{display:flex;gap:.4rem;padding:.75rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .4);flex-wrap:wrap}.assignment-list{list-style:none;margin:0;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.assignment-row{position:relative;display:flex;align-items:stretch;gap:.5rem;padding:0;border:1px solid transparent;border-radius:calc(var(--radius) + 2px);transition:background-color .15s,border-color .15s}.assignment-row:hover{background-color:var(--secondary);border-color:oklch(from var(--border) l c h / .5)}.assignment-row-main{flex:1;display:flex;flex-direction:column;gap:.625rem;min-width:0;background-color:transparent;border:none;padding:.85rem 1rem;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:inherit}.assignment-row-main:focus-visible{outline:none;box-shadow:inset 0 0 0 2px oklch(from var(--primary) l c h / .5)}.assignment-row-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.assignment-row-head .assignment-status-pill{margin-left:auto}.assignment-row-progress{display:flex;align-items:center;gap:.625rem}.assignment-row-progress .assignment-progress-bar{flex:1;height:.3125rem}.assignment-row-pct{font-size:.75rem;font-weight:600;color:var(--muted-foreground);font-variant-numeric:tabular-nums;min-width:2.25rem;text-align:right}.assignment-row-meta{display:flex;flex-wrap:wrap;gap:.875rem;font-size:.75rem;color:var(--muted-foreground)}.assignment-row-meta-item{display:inline-flex;align-items:center;gap:.3rem}.assignment-row-meta-item svg{opacity:.7;flex-shrink:0}.assignment-row-meta-item strong{color:var(--foreground);font-weight:600;font-variant-numeric:tabular-nums}.assignment-row-meta-item--danger{color:var(--destructive-text)}.assignment-row-meta-item--danger svg{color:var(--destructive-text);opacity:1}.assignment-row-delete{align-self:center;margin-right:.65rem;opacity:0;transition:opacity .15s}.assignment-row:hover .assignment-row-delete,.assignment-row-delete:focus-visible{opacity:1}.assignment-status-pill{display:inline-flex;align-items:center;font-size:.6875rem;font-weight:600;padding:.2rem .55rem;border-radius:var(--radius-full);white-space:nowrap;letter-spacing:.01em}.assignment-status-pill--done{background-color:oklch(from var(--success) l c h / .12);color:var(--success-text)}.assignment-status-pill--overdue{background-color:oklch(from var(--destructive) l c h / .12);color:var(--destructive-text)}.assignment-status-pill--pending{background-color:var(--secondary);color:var(--muted-foreground);font-variant-numeric:tabular-nums}.assignment-progress-bar--lg{height:.5rem}.assignment-category{display:inline-flex;align-items:center;font-size:.65rem;font-weight:700;letter-spacing:.08em;padding:.25rem .55rem;border-radius:var(--radius);font-family:var(--font-mono, ui-monospace, monospace)}.assignment-category--fiae{background-color:oklch(from var(--chart-4) l c h / .12);color:oklch(from var(--chart-4) calc(l - .15) c h)}.assignment-category--fisi{background-color:oklch(from var(--chart-3) l c h / .12);color:oklch(from var(--chart-3) calc(l - .1) c h)}.assignment-title{font-size:.9375rem;font-weight:600;letter-spacing:-.01em;color:var(--foreground)}.assignment-schwerpunkt{font-size:.75rem;color:var(--muted-foreground);background-color:var(--secondary);padding:.15rem .5rem;border-radius:var(--radius);display:inline-block;width:-moz-max-content;width:max-content}.assignment-stat{display:flex;flex-direction:column;gap:.3rem;min-width:0}.assignment-stat-label{font-size:.68rem;color:var(--muted-foreground);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.assignment-stat-value{font-size:.85rem;font-weight:600;font-variant-numeric:tabular-nums}.assignment-stat-value--danger{color:var(--destructive-text)}.assignment-progress-bar{height:.4rem;background:oklch(from var(--border) l c h / .5);border-radius:var(--radius-full);overflow:hidden}.assignment-progress-fill{height:100%;background:linear-gradient(90deg,oklch(from var(--primary) l c h / .6),var(--primary));border-radius:inherit;transition:width .3s}@media(max-width:520px){.assignment-grid{padding:.85rem;grid-template-columns:1fr;gap:.75rem}}.assignment-modal-backdrop{position:fixed;inset:0;background:oklch(from var(--background) .1 c h / .6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:assignment-fade-in .15s ease}@keyframes assignment-fade-in{0%{opacity:0}to{opacity:1}}.assignment-modal{background:var(--card);border:1px solid oklch(from var(--border) l c h / .6);border-radius:1.25rem;max-width:36rem;width:100%;max-height:calc(100vh - 3rem);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px -20px #0000004d}.assignment-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid oklch(from var(--border) l c h / .4)}.assignment-modal-title{font-size:1rem;font-weight:700;margin:0;letter-spacing:-.01em}.assignment-modal-body{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.assignment-field{display:flex;flex-direction:column;gap:.4rem}.assignment-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.assignment-field-label{font-size:.8rem;font-weight:600}.assignment-select-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.15rem}.assignment-select-all{background:transparent;border:none;color:var(--primary);font-size:.75rem;font-weight:600;cursor:pointer;padding:.2rem .4rem;border-radius:var(--radius)}.assignment-select-all:hover{background:oklch(from var(--primary) l c h / .1)}.assignment-member-picker{display:flex;flex-direction:column;gap:.3rem;max-height:15rem;overflow-y:auto;padding:.4rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.75rem}.assignment-member-option{display:flex;align-items:center;gap:.7rem;padding:.5rem .65rem;border-radius:.5rem;cursor:pointer;transition:background .1s}.assignment-member-option:hover{background:oklch(from var(--card) l c h / .6)}.assignment-member-option--checked{background:oklch(from var(--primary) l c h / .1)}.assignment-member-option input[type=checkbox]{margin:0;accent-color:var(--primary);flex-shrink:0}.assignment-modal-actions{display:flex;justify-content:space-between;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid oklch(from var(--border) l c h / .4);background:oklch(from var(--background) l c h / .4)}.assignment-field-hint{font-size:.72rem;color:var(--muted-foreground);margin:.3rem 0 0;line-height:1.4}.assignment-modal--wizard{max-width:38rem;min-height:32rem;max-height:calc(100vh - 3rem);display:flex;flex-direction:column}.assignment-modal--wizard .assignment-modal-body{flex:1;padding:1.5rem}.wizard-step-label{font-size:.72rem;color:var(--muted-foreground);margin:.2rem 0 0;font-weight:500;letter-spacing:.02em}.wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;padding:0 1.5rem .75rem;background:transparent}.wizard-progress-step{height:.25rem;background:oklch(from var(--border) l c h / .5);border-radius:var(--radius-full);transition:background .25s ease}.wizard-progress-step--active{background:var(--primary)}.wizard-step{display:flex;flex-direction:column;gap:1rem}.wizard-search-row{display:flex}.wizard-search-wrapper{position:relative;flex:1}.wizard-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--muted-foreground);pointer-events:none}.wizard-search-input{width:100%;padding:.6rem .9rem .6rem 2.2rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.85rem}.wizard-search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px oklch(from var(--primary) l c h / .1)}.wizard-filter-chips{display:flex;gap:.4rem;flex-wrap:wrap}.wizard-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;padding:.4rem .8rem;border-radius:var(--radius-full);border:1px solid oklch(from var(--border) l c h / .6);background:transparent;color:var(--foreground);cursor:pointer;transition:all .12s}.wizard-chip span{color:var(--muted-foreground);font-weight:500;font-size:.72rem}.wizard-chip:hover{border-color:var(--border);background:oklch(from var(--card) l c h / .6)}.wizard-chip--active{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground, #fff)}.wizard-chip--active span{color:oklch(from var(--primary-foreground, #fff) l c h / .7)}.wizard-picker-header{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:var(--muted-foreground)}.wizard-select-all{background:transparent;border:none;color:var(--primary);font-weight:600;cursor:pointer;padding:.2rem .4rem;border-radius:var(--radius);font-size:.75rem}.wizard-select-all:hover{background:oklch(from var(--primary) l c h / .1)}.wizard-picker-list{display:flex;flex-direction:column;gap:.3rem;max-height:20rem;overflow-y:auto;padding:.25rem;margin:-.25rem}.wizard-picker-row{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:.65rem;border:1px solid oklch(from var(--border) l c h / .4);background:var(--background);cursor:pointer;text-align:left;width:100%;transition:all .12s}.wizard-picker-row:hover{border-color:oklch(from var(--primary) l c h / .4)}.wizard-picker-row--checked{background:oklch(from var(--primary) l c h / .08);border-color:var(--primary)}.wizard-picker-check{width:1.25rem;height:1.25rem;border:1px solid oklch(from var(--border) l c h / .7);border-radius:.35rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--card)}.wizard-picker-row--checked .wizard-picker-check{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground, #fff)}.wizard-picker-empty{padding:2rem 1rem;text-align:center;color:var(--muted-foreground);display:flex;flex-direction:column;align-items:center;gap:.5rem}.wizard-picker-empty svg{opacity:.5}.wizard-toggle-group{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.wizard-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.85rem 1rem;border-radius:.75rem;border:1px solid oklch(from var(--border) l c h / .6);background:var(--background);cursor:pointer;transition:all .12s;font-size:.95rem;font-weight:600;color:var(--foreground)}.wizard-toggle span{font-size:.72rem;font-weight:500;color:var(--muted-foreground)}.wizard-toggle:hover{border-color:oklch(from var(--primary) l c h / .4)}.wizard-toggle--active{background:oklch(from var(--primary) l c h / .08);border-color:var(--primary);color:var(--primary)}.wizard-toggle--active span{color:oklch(from var(--primary) l c h / .7)}.wizard-chip-scroll{display:flex;gap:.35rem;flex-wrap:wrap}.wizard-stepper{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .5);border-radius:.75rem;width:-moz-max-content;width:max-content}.wizard-stepper-btn{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:.5rem;border:none;background:var(--card);color:var(--foreground);cursor:pointer;transition:all .12s}.wizard-stepper-btn:hover:not(:disabled){background:oklch(from var(--primary) l c h / .1);color:var(--primary)}.wizard-stepper-btn:disabled{opacity:.4;cursor:not-allowed}.wizard-stepper-value{display:flex;flex-direction:column;align-items:center;min-width:4rem;line-height:1.1}.wizard-stepper-value strong{font-size:1.2rem;font-weight:700;font-variant-numeric:tabular-nums}.wizard-stepper-value span{font-size:.7rem;color:var(--muted-foreground)}.wizard-review-card{background:var(--background);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1rem;padding:1.1rem;display:flex;flex-direction:column;gap:1rem}.wizard-review-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.wizard-review-title{font-size:1.05rem;font-weight:700;margin:0;letter-spacing:-.01em}.wizard-review-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.wizard-review-fact{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.65rem;color:var(--muted-foreground)}.wizard-review-fact>div{display:flex;flex-direction:column;gap:.05rem;line-height:1.2}.wizard-review-fact strong{font-size:.8rem;font-weight:600;color:var(--foreground)}.wizard-review-fact span{font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground)}.wizard-review-avatars{display:flex;flex-wrap:wrap;gap:.25rem}.wizard-review-avatar{width:1.75rem;height:1.75rem;font-size:.62rem;border:2px solid var(--card);box-shadow:0 0 0 1px oklch(from var(--border) l c h / .6)}.wizard-review-avatar--more{background:var(--muted-foreground);color:var(--background);font-weight:600}.wizard-review-email-hint{display:flex;align-items:center;gap:.5rem;padding:.65rem .85rem;background:oklch(from var(--primary) l c h / .08);border-radius:.65rem;color:var(--primary);font-size:.78rem;font-weight:500}.wizard-review-email-hint svg{flex-shrink:0}@media(max-width:520px){.wizard-toggle-group,.wizard-review-facts{grid-template-columns:1fr}}.assignment-done-card{background:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;padding:2.5rem 2rem;max-width:32rem;margin:2rem auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.assignment-done-icon{width:4rem;height:4rem;border-radius:50%;background:oklch(from #22c55e .94 .08 145);color:#15803d;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.assignment-done-title{font-size:1.25rem;font-weight:700;margin:0;letter-spacing:-.01em}.assignment-done-text{font-size:.9rem;color:var(--muted-foreground);line-height:1.5;margin:0;max-width:24rem}.assignment-done-text strong{color:var(--foreground);font-weight:700}.assignment-done-actions{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap;justify-content:center}.my-assignments-wrap{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.my-assignments-alert{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.1rem;background:oklch(from var(--primary) l c h / .08);border:1px solid oklch(from var(--primary) l c h / .25);border-radius:.9rem}.my-assignments-alert--overdue{background:oklch(from var(--destructive) l c h / .08);border-color:oklch(from var(--destructive) l c h / .3)}.my-assignments-alert-icon{width:2.2rem;height:2.2rem;flex-shrink:0;border-radius:.5rem;display:flex;align-items:center;justify-content:center;background:var(--card);color:var(--primary)}.my-assignments-alert--overdue .my-assignments-alert-icon{color:var(--destructive-text)}.my-assignments-alert-title{font-size:.95rem;font-weight:700;letter-spacing:-.01em;color:var(--foreground)}.my-assignments-alert-sub{font-size:.78rem;color:var(--muted-foreground);margin-top:.15rem;line-height:1.4}.my-assignments-pending-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.my-pending-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .5);border-radius:.85rem;text-decoration:none;color:inherit;transition:all .15s}.my-pending-item:hover{border-color:var(--primary);background:oklch(from var(--primary) l c h / .04);transform:translateY(-1px)}.my-pending-item--overdue{border-color:oklch(from var(--destructive) l c h / .4);background:oklch(from var(--destructive) l c h / .04)}.my-pending-item--overdue:hover{border-color:var(--destructive-text);background:oklch(from var(--destructive) l c h / .08)}.my-pending-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.my-pending-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.my-pending-title{font-size:.95rem;font-weight:600;letter-spacing:-.01em}.my-pending-meta{font-size:.72rem;color:var(--muted-foreground);display:flex;gap:.35rem;flex-wrap:wrap;align-items:center}.my-pending-urgency--soon{color:#b45309;font-weight:600}.my-pending-urgency--overdue{color:var(--destructive-text);font-weight:600}.my-pending-cta{flex-shrink:0;display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .95rem;background:var(--primary);color:var(--primary-foreground, #fff);border-radius:var(--radius-full);font-size:.8rem;font-weight:600;transition:all .12s}.my-pending-item:hover .my-pending-cta{transform:scale(1.03)}.my-pending-item--overdue .my-pending-cta{background:var(--destructive)}.my-assignments-done{background:var(--card);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.85rem;overflow:hidden}.my-assignments-done-toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;cursor:pointer;color:var(--muted-foreground);font-size:.82rem;font-weight:600}.my-assignments-done-toggle:hover{background:oklch(from var(--background) l c h / .4);color:var(--foreground)}.my-assignments-done-toggle>span{display:inline-flex;align-items:center;gap:.4rem}.my-assignments-done-list{list-style:none;margin:0;padding:0;border-top:1px solid oklch(from var(--border) l c h / .3)}.my-done-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;text-decoration:none;color:inherit;border-bottom:1px solid oklch(from var(--border) l c h / .25);transition:background .12s}.my-done-item:last-child{border-bottom:none}.my-done-item:hover{background:oklch(from var(--background) l c h / .4)}.my-done-info{display:flex;flex-direction:column;min-width:0;line-height:1.2}.my-done-info strong{font-size:.85rem;font-weight:600}.my-done-info span{font-size:.7rem;color:var(--muted-foreground)}.my-done-meta{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.my-done-score{font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;padding:.2rem .55rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary);border-radius:var(--radius)}.my-done-action{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;color:var(--muted-foreground)}.assignment-detail-page{min-height:100vh;background:var(--background);padding-bottom:4rem}.assignment-detail-content{max-width:56rem;margin:0 auto;padding:2rem 1.5rem}.assignment-detail-hero{margin-bottom:1.5rem}.assignment-detail-hero h1{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.02em}.assignment-detail-meta{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.assignment-detail-meta-item{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--muted-foreground);padding:.3rem .65rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .4);border-radius:var(--radius-full)}.assignment-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;margin-bottom:1rem}.participant-list{list-style:none;margin:0;padding:0}.participant-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .3)}.participant-row:last-child{border-bottom:none}.company-section--muted{background:oklch(from var(--card) l c h / .6);border-color:oklch(from var(--border) l c h / .3)}.participant-list--pending .participant-row{opacity:.7}.participant-pending-label{font-size:.75rem;color:var(--muted-foreground);font-weight:500}.participant-date{font-size:.75rem;color:var(--muted-foreground);font-variant-numeric:tabular-nums}@media(max-width:640px){.participant-row{grid-template-columns:1fr auto;gap:.5rem}.participant-date,.participant-pending-label{display:none}}.invite-page{min-height:100vh;background-color:var(--background);display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem}.invite-card{background:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.5rem;padding:2rem;max-width:32rem;width:100%;display:flex;flex-direction:column;gap:1.5rem;box-shadow:0 20px 60px -30px oklch(from var(--primary) l c h / .25)}.invite-hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.35rem}.invite-hero-avatar{width:4.5rem;height:4.5rem;border-radius:1.25rem;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .15),oklch(from var(--primary) l c h / .05));color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.75rem;border:1px solid oklch(from var(--primary) l c h / .2)}.invite-hero-kicker{font-size:.7rem;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.1em;margin:0}.invite-hero-title{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0;line-height:1.3}.invite-hero-title strong{color:var(--primary);font-weight:700}.invite-hero-sub{font-size:.85rem;color:var(--muted-foreground);margin:0}.invite-hero-email{font-family:var(--font-mono, ui-monospace, monospace);font-size:.8rem}.invite-features{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.invite-feature{display:flex;align-items:flex-start;gap:.6rem;padding:.75rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.75rem;transition:border-color .15s,background .15s}.invite-feature:hover{border-color:oklch(from var(--primary) l c h / .4)}.invite-feature-icon{width:2rem;height:2rem;flex-shrink:0;border-radius:.5rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary);display:flex;align-items:center;justify-content:center}.invite-feature-title{font-size:.8rem;font-weight:600;line-height:1.2}.invite-feature-desc{font-size:.7rem;color:var(--muted-foreground);margin-top:.15rem;line-height:1.35}.invite-divider{height:1px;background:oklch(from var(--border) l c h / .5)}.invite-data-notice{background:oklch(from var(--primary) l c h / .04);border:1px solid oklch(from var(--primary) l c h / .2);border-radius:.9rem;padding:1rem 1.1rem}.invite-data-header{display:flex;align-items:center;gap:.4rem;color:var(--primary);font-size:.8rem;font-weight:600;margin-bottom:.75rem}.invite-data-list{list-style:none;padding:0;margin:0 0 .85rem;display:flex;flex-direction:column;gap:.5rem}.invite-data-list li{display:flex;align-items:flex-start;gap:.6rem}.invite-data-item-icon{width:1.5rem;height:1.5rem;flex-shrink:0;border-radius:.35rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary);display:flex;align-items:center;justify-content:center;margin-top:.05rem}.invite-data-list li div{display:flex;flex-direction:column;gap:.05rem}.invite-data-list li strong{font-size:.8rem;font-weight:600}.invite-data-list li span{font-size:.7rem;color:var(--muted-foreground)}.invite-data-footer{display:flex;gap:.4rem;padding-top:.75rem;border-top:1px dashed oklch(from var(--primary) l c h / .2);font-size:.7rem;color:var(--muted-foreground);line-height:1.5}.invite-data-footer svg{flex-shrink:0;margin-top:.15rem;color:var(--primary)}.invite-data-footer a{color:var(--primary);text-decoration:underline}.invite-consent{display:flex;gap:.6rem;font-size:.8rem;line-height:1.45;color:var(--foreground);cursor:pointer;padding:.75rem;border:1px solid oklch(from var(--border) l c h / .5);border-radius:.75rem;background:var(--background);transition:border-color .15s}.invite-consent:hover{border-color:oklch(from var(--primary) l c h / .4)}.invite-consent input[type=checkbox]{margin-top:.15rem;flex-shrink:0;width:1rem;height:1rem;accent-color:var(--primary)}.invite-actions{display:flex;flex-direction:column;gap:.5rem}.invite-cta{width:100%;justify-content:center;font-size:.95rem;padding:.85rem 1.5rem}.invite-card--success{text-align:center;align-items:center;padding:2.5rem 2rem}.invite-success-icon{width:4.5rem;height:4.5rem;border-radius:50%;background:oklch(from #22c55e .94 .08 145);color:#15803d;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.invite-success-title{font-size:1.5rem;font-weight:700;margin:0;letter-spacing:-.02em}.invite-success-text{font-size:.9rem;color:var(--muted-foreground);line-height:1.5;margin:0;max-width:24rem}.invite-success-text strong{color:var(--foreground)}.invite-success-cta{align-self:stretch;justify-content:center;padding:.85rem 1.5rem}.invite-card--error{text-align:center;align-items:center;padding:2.5rem 2rem}.invite-error-icon{width:4rem;height:4rem;border-radius:50%;background:oklch(from var(--destructive) l c h / .12);color:var(--destructive-text);display:flex;align-items:center;justify-content:center}.invite-card-title{font-size:1.35rem;font-weight:700;margin:0}.invite-card-text{font-size:.9rem;color:var(--muted-foreground);line-height:1.5;margin:0}@media(max-width:520px){.invite-features{grid-template-columns:1fr}.invite-card{padding:1.5rem 1.25rem;border-radius:1.25rem}.invite-hero-title{font-size:1.25rem}}.ob-page{min-height:calc(100vh - 4rem);background-color:var(--background);padding:3rem 1.5rem 5rem}.ob-page--center{display:flex;align-items:flex-start;justify-content:center}.ob-shell{max-width:58rem;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:860px){.ob-shell{grid-template-columns:1.15fr .85fr;gap:3rem;align-items:start}}.ob-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);margin:0 0 .75rem}.ob-title{font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .75rem}.ob-lead{font-size:1rem;color:var(--muted-foreground);line-height:1.6;max-width:34rem;margin:0 0 2rem}.ob-checklist{list-style:none;margin:0 0 2rem;padding:0;display:flex;flex-direction:column;gap:.85rem}.ob-checklist li{display:flex;align-items:flex-start;gap:.65rem;font-size:.925rem;color:var(--foreground);line-height:1.45}.ob-checklist svg{flex-shrink:0;margin-top:.15rem;color:var(--primary)}.ob-privacy{display:flex;gap:.65rem;padding:.9rem 1rem;border-left:2px solid oklch(from var(--border) l c h / .8);font-size:.8rem;color:var(--muted-foreground);line-height:1.55}.ob-privacy svg{flex-shrink:0;margin-top:.1rem;color:var(--muted-foreground)}.ob-order{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);overflow:hidden;position:sticky;top:5rem}.ob-order-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1.25rem 1.5rem 0;font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground)}.ob-stepbadge{letter-spacing:.04em;color:var(--primary)}.ob-rows{display:flex;flex-direction:column;gap:.7rem;padding:1rem 1.5rem 1.25rem}.ob-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.9rem}.ob-row-label{color:var(--muted-foreground)}.ob-row-value{font-weight:500;text-align:right}.ob-mono{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-variant-numeric:tabular-nums}.ob-total{margin:0 1.5rem;padding-top:1.1rem;border-top:1px solid var(--border);display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.ob-total-label{font-size:.95rem;font-weight:600;color:var(--foreground)}.ob-total-amount{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--foreground)}.ob-total-note{margin:.6rem 1.5rem 0;font-size:.78rem;line-height:1.55;color:var(--muted-foreground)}.ob-action{margin-top:.85rem;padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1rem}.ob-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.8rem;color:var(--muted-foreground);line-height:1.45;cursor:pointer}.ob-consent input[type=checkbox]{flex-shrink:0;margin-top:.1rem;width:1rem;height:1rem;accent-color:var(--primary);cursor:pointer}.ob-pay{width:100%}.ob-secure{display:flex;align-items:center;justify-content:center;gap:.4rem;margin:0;font-size:.72rem;color:var(--muted-foreground)}.ob-error{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.8rem;color:var(--destructive-text)}.ob-form-intro{margin:0;font-size:.82rem;line-height:1.5;color:var(--muted-foreground)}.ob-field{display:flex;flex-direction:column;gap:.35rem}.ob-field-label{font-size:.78rem;font-weight:600;color:var(--foreground)}.ob-field-row{display:flex;gap:.75rem}.ob-field--plz{flex:0 0 6rem}.ob-field--ort{flex:1 1 auto}.ob-back--inline{align-self:flex-start}.ob-back{display:inline-flex;align-items:center;gap:.25rem;background:none;border:none;padding:0;font-size:.8rem;color:var(--muted-foreground);cursor:pointer}.ob-back:hover{color:var(--foreground)}.ob-avv{display:flex;flex-direction:column;gap:.65rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--muted, oklch(from var(--foreground) l c h / .03))}.ob-avv-head{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--foreground)}.ob-avv-desc{margin:0;font-size:.78rem;line-height:1.5;color:var(--muted-foreground)}.ob-avv-actions{display:flex;flex-wrap:wrap;gap:.5rem}.ob-avv-actions .btn{flex:1 1 auto}.ob-wizard{width:100%;max-width:44rem;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.ob-wizard-head{text-align:center}.ob-wizard-title{font-size:1.7rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:.25rem 0 0}.ob-stepper{list-style:none;margin:0;padding:0 .5rem;display:flex}.ob-stepper-item{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative;text-align:center}.ob-stepper-item:not(:first-child):before{content:"";position:absolute;top:1rem;left:-50%;width:100%;height:2px;background:var(--border);z-index:0}.ob-stepper-item--done:before,.ob-stepper-item--current:before{background:var(--primary)}.ob-stepper-marker{position:relative;z-index:1;flex-shrink:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:2px solid var(--border);background:var(--background);color:var(--muted-foreground);font-size:.8rem;font-weight:700;transition:border-color .15s ease,background .15s ease,color .15s ease}.ob-stepper-item--current .ob-stepper-marker{border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 4px oklch(from var(--primary) l c h / .12)}.ob-stepper-item--done .ob-stepper-marker{border-color:var(--primary);background:var(--primary);color:var(--primary-foreground)}.ob-stepper-label{font-size:.78rem;font-weight:500;color:var(--muted-foreground);line-height:1.2}.ob-stepper-item--current .ob-stepper-label,.ob-stepper-item--done .ob-stepper-label{color:var(--foreground)}.ob-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card)}.ob-summary-meta{display:flex;flex-direction:column;gap:.2rem;min-width:0}.ob-summary-title{font-size:.9rem;font-weight:600;color:var(--foreground)}.ob-summary-sub{font-size:.8rem;color:var(--muted-foreground)}.ob-summary-price{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700;letter-spacing:-.02em;white-space:nowrap}.ob-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.75rem;display:flex;flex-direction:column;gap:1.25rem}.ob-card-head{display:flex;flex-direction:column;gap:.3rem}.ob-card-title{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;margin:0}.ob-card-desc{font-size:.85rem;color:var(--muted-foreground);line-height:1.55;margin:0}.ob-form{display:flex;flex-direction:column;gap:1rem}.ob-form-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:560px){.ob-form-grid{grid-template-columns:1fr 1fr}}.ob-card-foot{display:flex;gap:.75rem;align-items:stretch}.ob-card-foot .ob-pay{flex:1 1 auto;width:auto}.ob-card-foot--single .ob-pay{width:100%}.ob-confirm{max-width:30rem;width:100%;margin:2rem auto 0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:2.25rem}.ob-confirm-badge{width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:oklch(from var(--success) l c h / .12);color:var(--success-text);margin-bottom:1.25rem}.ob-confirm-title{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .5rem}.ob-confirm-text{font-size:.925rem;color:var(--muted-foreground);line-height:1.55;margin:0 0 1.75rem}.ob-steps{list-style:none;counter-reset:ob-step;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column}.ob-step{display:flex;gap:.85rem;padding:0 0 1.25rem;position:relative}.ob-step:not(:last-child) .ob-step-marker:after{content:"";position:absolute;top:1.6rem;left:50%;transform:translate(-50%);width:1px;height:calc(100% - 1.6rem);background:var(--border)}.ob-step-marker{position:relative;flex-shrink:0;width:1.6rem;height:1.6rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--background);color:var(--muted-foreground);font-size:.75rem;font-weight:700}.ob-step--done .ob-step-marker{background:var(--success);border-color:var(--success-text);color:var(--success-foreground)}.ob-step-body{padding-top:.1rem}.ob-step-title{font-size:.9rem;font-weight:600;margin:0}.ob-step-desc{font-size:.8rem;color:var(--muted-foreground);line-height:1.45;margin:.15rem 0 0}.ob-processing{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--muted-foreground)}@media(max-width:520px){.ob-title{font-size:1.6rem}.ob-confirm{padding:1.75rem 1.25rem}.ob-wizard-title{font-size:1.4rem}.ob-stepper{padding:0}.ob-stepper-label{font-size:.68rem}.ob-card{padding:1.5rem 1.25rem}.ob-summary{flex-direction:column;align-items:flex-start;gap:.5rem}.ob-card-foot{flex-direction:column-reverse}.ob-card-foot .btn{width:100%}}.company-detail-page{min-height:100vh;background-color:var(--background);padding-bottom:4rem}.company-detail-content{max-width:64rem;margin:0 auto;padding:2rem 1.5rem}.company-detail-backlink{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted-foreground);font-size:.85rem;text-decoration:none;margin-bottom:1.5rem}.company-detail-backlink:hover{color:var(--foreground)}.company-detail-hero{display:flex;align-items:center;gap:1.25rem;margin-bottom:2rem;flex-wrap:wrap}.company-detail-avatar{width:4rem;height:4rem;border-radius:50%;background:oklch(from var(--primary) l c h / .12);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:700;flex-shrink:0}.company-detail-title{font-size:1.5rem;font-weight:700;margin:0 0 .15rem;letter-spacing:-.02em}.company-detail-subtitle{font-size:.85rem;color:var(--muted-foreground);margin:0}.company-detail-meta{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.company-exam-list{list-style:none;padding:0;margin:0}.company-exam-row{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:.75rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .3)}.company-exam-row:last-child{border-bottom:none}.company-exam-row-title{font-size:.9rem;font-weight:500}.company-exam-row-sub{font-size:.75rem;color:var(--muted-foreground);margin-top:.1rem}.company-score-chip{font-variant-numeric:tabular-nums;font-weight:700;font-size:.85rem;padding:.3rem .6rem;border-radius:var(--radius);white-space:nowrap}.company-score-chip--good{background:oklch(from #22c55e .95 .06 145);color:#15803d}.company-score-chip--mid{background:oklch(from #f59e0b .95 .06 85);color:#b45309}.company-score-chip--low{background:oklch(from #ef4444 .95 .06 25);color:#b91c1c}.company-exam-date{font-size:.75rem;color:var(--muted-foreground);white-space:nowrap}.company-deck-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.company-deck-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .3)}.company-deck-row:last-child{border-bottom:none}.company-deck-info{flex:1;min-width:0}.company-deck-name{font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-deck-sub{font-size:.75rem;color:var(--muted-foreground);margin-top:.1rem}.company-deck-bar{width:8rem;height:.4rem;background:oklch(from var(--border) l c h / .5);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0}.company-deck-bar-fill{height:100%;background:var(--primary);border-radius:inherit;transition:width .3s ease}.slideover-backdrop{position:fixed;inset:0;background:oklch(from var(--background) .1 c h / .5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;display:flex;justify-content:flex-end;animation:slideover-fade .18s ease}@keyframes slideover-fade{0%{opacity:0}to{opacity:1}}.slideover-panel{width:100%;max-width:32rem;background:var(--card);border-left:1px solid oklch(from var(--border) l c h / .5);display:flex;flex-direction:column;overflow:hidden;animation:slideover-slide .22s ease;box-shadow:-20px 0 40px -10px #00000026}@keyframes slideover-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.slideover-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .4)}.slideover-title{font-size:.95rem;font-weight:600;margin:0}.slideover-body{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.slideover-hero{display:flex;gap:1rem;align-items:flex-start}.slideover-avatar{width:3rem;height:3rem;font-size:.95rem}.slideover-hero-title{font-size:1.15rem;font-weight:700;margin:0;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slideover-hero-sub{font-size:.8rem;color:var(--muted-foreground);margin:.1rem 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slideover-hero-meta{display:flex;gap:.4rem;flex-wrap:wrap}.slideover-chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;padding:.25rem .55rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .5);border-radius:var(--radius-full);color:var(--muted-foreground);font-weight:500}.slideover-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.slideover-stat{display:flex;align-items:center;gap:.55rem;padding:.75rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.65rem;color:var(--muted-foreground)}.slideover-stat>div{display:flex;flex-direction:column;line-height:1.1}.slideover-stat strong{font-size:1rem;font-weight:700;color:var(--foreground);font-variant-numeric:tabular-nums}.slideover-stat span{font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.slideover-section{display:flex;flex-direction:column;gap:.5rem}.slideover-section-title{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--foreground);margin:0;text-transform:none}.slideover-empty{font-size:.78rem;color:var(--muted-foreground);padding:.75rem;background:var(--background);border:1px dashed oklch(from var(--border) l c h / .6);border-radius:.6rem;margin:0}.slideover-assignment-list,.slideover-exam-list,.slideover-deck-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.slideover-assignment-row{background:var(--background);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.65rem;overflow:hidden}.slideover-assignment-link{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .85rem;text-decoration:none;color:inherit;transition:background .12s}.slideover-assignment-link--button{width:100%;background:transparent;border:none;font:inherit;text-align:left;cursor:pointer}.slideover-assignment-link:hover{background:oklch(from var(--primary) l c h / .05)}.slideover-pruefung-head{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.slideover-participant-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.slideover-participant-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .75rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.55rem}.slideover-participant-list--pending .slideover-participant-row{opacity:.7}.slideover-assignment-main{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1}.slideover-assignment-head{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.slideover-assignment-head strong{font-size:.82rem;font-weight:600}.slideover-assignment-meta{font-size:.68rem;color:var(--muted-foreground)}.slideover-assignment-status{font-size:.7rem;font-weight:600;color:var(--muted-foreground);padding:.2rem .5rem;background:oklch(from var(--muted-foreground) l c h / .12);border-radius:var(--radius-full);white-space:nowrap}.slideover-assignment-status--overdue{background:oklch(from var(--destructive) l c h / .12);color:var(--destructive-text)}.slideover-exam-row,.slideover-deck-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .75rem;background:var(--background);border:1px solid oklch(from var(--border) l c h / .4);border-radius:.55rem}.slideover-exam-row>div,.slideover-deck-row>div{display:flex;flex-direction:column;min-width:0;flex:1}.slideover-exam-row strong,.slideover-deck-row strong{font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slideover-exam-row span,.slideover-deck-row span{font-size:.7rem;color:var(--muted-foreground)}.slideover-actions{display:flex;flex-direction:column;gap:.4rem;padding-top:.5rem;border-top:1px solid oklch(from var(--border) l c h / .3)}.btn-danger{color:var(--destructive-text);border-color:oklch(from var(--destructive) l c h / .3)}.btn-danger:hover{background:oklch(from var(--destructive) l c h / .08);border-color:var(--destructive-text)}@media(max-width:520px){.slideover-panel{max-width:100%}.slideover-stats{grid-template-columns:1fr}}.invite-modal{max-width:28rem}.overview-onboarding{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1.5rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;text-align:center}.overview-onboarding-icon{width:2.5rem;height:2.5rem;border-radius:var(--radius);background-color:var(--secondary);color:var(--muted-foreground);display:flex;align-items:center;justify-content:center}.overview-onboarding-title{font-size:1.125rem;font-weight:700;margin:0;letter-spacing:-.01em}.overview-onboarding-text{font-size:.875rem;color:var(--muted-foreground);max-width:28rem;line-height:1.5;margin:0 0 .5rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem}.kpi-card{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;text-align:left;font:inherit;color:inherit}.kpi-card--button{cursor:pointer;transition:border-color .15s,background-color .15s}.kpi-card--button:hover{border-color:oklch(from var(--primary) l c h / .3);background-color:oklch(from var(--primary) l c h / .02)}.kpi-card--button:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px oklch(from var(--primary) l c h / .1)}.kpi-label{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;color:var(--muted-foreground)}.kpi-label svg{color:var(--muted-foreground);flex-shrink:0}.kpi-value{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1;color:var(--foreground)}.kpi-value--warn{color:var(--destructive-text)}.kpi-hint{font-size:.75rem;color:var(--muted-foreground)}.overview-attention-head{display:flex;align-items:center;gap:.5rem}.overview-attention-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius);background-color:oklch(from var(--destructive) l c h / .1);color:var(--destructive-text);flex-shrink:0}.overview-attention-title{font-size:.9375rem;font-weight:600;color:var(--foreground);margin:0;flex:1}.overview-attention-count{font-size:.6875rem;font-weight:600;padding:.2rem .55rem;border-radius:var(--radius-full);background-color:oklch(from var(--destructive) l c h / .1);color:var(--destructive-text);font-variant-numeric:tabular-nums}.overview-attention-list{list-style:none;margin:0;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.attention-row{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;background-color:transparent;border:1px solid transparent;border-radius:calc(var(--radius) + 2px);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .15s,border-color .15s}.attention-row:hover{background-color:var(--secondary);border-color:oklch(from var(--border) l c h / .5)}.attention-row:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px oklch(from var(--primary) l c h / .1)}.attention-row-icon{width:1.75rem;height:1.75rem;border-radius:var(--radius);background-color:var(--secondary);color:var(--muted-foreground);display:flex;align-items:center;justify-content:center;flex-shrink:0}.attention-row--danger .attention-row-icon{background-color:oklch(from var(--destructive) l c h / .1);color:var(--destructive-text)}.attention-row-body{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0;line-height:1.3}.attention-row-body strong{font-size:.875rem;font-weight:600;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attention-row-body span{font-size:.75rem;color:var(--muted-foreground)}.attention-row-chev{color:var(--muted-foreground);flex-shrink:0;opacity:.5}.overview-allgood{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem}.overview-allgood-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius);background-color:oklch(from var(--success) l c h / .12);color:var(--success-text);flex-shrink:0}.overview-allgood-text{display:flex;flex-direction:column;gap:.1rem;line-height:1.35}.overview-allgood-text strong{font-size:.875rem;font-weight:600;color:var(--foreground)}.overview-allgood-text span{font-size:.8rem;color:var(--muted-foreground)}.overview-cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;flex-wrap:wrap}.overview-cta>div{display:flex;flex-direction:column;gap:.125rem;min-width:0}.overview-cta strong{font-size:.875rem;font-weight:600;color:var(--foreground)}.overview-cta span{font-size:.8rem;color:var(--muted-foreground);max-width:32rem;line-height:1.4}.profil-page{min-height:100vh;background-color:var(--background)}.profil-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--muted-foreground)}.profil-header{border-bottom:1px solid var(--border)}.profil-header-inner{max-width:56rem;margin:0 auto;padding:2rem 1.5rem;display:flex;align-items:center;gap:1.5rem}.profil-identity{display:flex;align-items:center;gap:1rem;min-width:0}.profil-avatar-wrap{position:relative;flex-shrink:0}.profil-avatar{width:3.5rem;height:3.5rem;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--primary),oklch(from var(--primary) calc(l + .08) c h));color:var(--primary-foreground);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}.profil-avatar-badge{position:absolute;bottom:-3px;right:-3px;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);background-color:var(--primary);color:var(--primary-foreground);display:flex;align-items:center;justify-content:center;border:2px solid var(--background)}.profil-identity-text{min-width:0}.profil-name{font-size:1.125rem;font-weight:700;color:var(--foreground);margin:0 0 .125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profil-sub-row{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--muted-foreground);flex-wrap:wrap}.profil-email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profil-sub-divider{width:3px;height:3px;border-radius:50%;background-color:var(--muted-foreground);opacity:.5;flex-shrink:0}.profil-provider-tag{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.profil-member-since{font-size:.75rem;color:var(--muted-foreground);opacity:.7;margin:.25rem 0 0}@media(max-width:639px){.profil-header-inner{flex-direction:column;align-items:flex-start}}.profil-content{max-width:56rem;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.profil-card{background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);border-radius:1.25rem;overflow:hidden}.profil-card-header{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;border-bottom:1px solid oklch(from var(--border) l c h / .4)}.profil-card-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius);background-color:var(--secondary);color:var(--muted-foreground);flex-shrink:0}.profil-card-icon--premium{background-color:oklch(from var(--primary) l c h / .12);color:var(--primary)}.profil-card-icon--danger{background-color:oklch(from var(--destructive) l c h / .1);color:var(--destructive-text)}.profil-card-title{font-size:.9375rem;font-weight:600;color:var(--foreground);margin:0}.profil-card-title--danger{color:var(--destructive-text)}.profil-card-body{padding:1.25rem}.profil-card-text{color:var(--muted-foreground);font-size:.875rem;margin:0 0 .75rem;line-height:1.5}.profil-card-text:last-child{margin-bottom:0}.profil-card--premium{border-color:oklch(from var(--primary) l c h / .25)}.profil-card--premium .profil-card-header{border-bottom-color:oklch(from var(--primary) l c h / .15)}.profil-premium-status{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--success-text);margin-bottom:.5rem}.profil-status-indicator{width:.5rem;height:.5rem;border-radius:50%;background-color:var(--success-text)}.profil-upgrade-btn,.profil-portal-btn{margin-top:.25rem}.profil-card-icon--progress{background-color:oklch(from var(--success) l c h / .12);color:var(--success-text)}.profil-card--link{text-decoration:none;display:block;transition:border-color .15s}.profil-card--link:hover{border-color:oklch(from var(--primary) l c h / .4)}.profil-card--link .profil-card-text{margin-bottom:0}.profil-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.profil-grid{grid-template-columns:1fr 1fr}}.profil-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer}.profil-toggle-row[data-loading]{cursor:wait}.profil-toggle-label{font-weight:500;margin:0 0 .125rem;font-size:.875rem}.profil-toggle-description{color:var(--muted-foreground);font-size:.8125rem;margin:0;line-height:1.4}.profil-switch{position:relative;display:inline-flex;width:2.75rem;height:1.5rem;flex-shrink:0;border-radius:var(--radius-full);background-color:var(--border);transition:background-color .2s ease;cursor:pointer}.profil-switch[data-checked]{background-color:var(--primary)}.profil-switch[data-loading]{opacity:.5;cursor:wait}.profil-switch-thumb{position:absolute;top:2px;left:2px;width:1.25rem;height:1.25rem;border-radius:50%;background-color:#fff;box-shadow:0 1px 3px #00000026;transition:transform .2s ease}.profil-switch[data-checked] .profil-switch-thumb{transform:translate(1.25rem)}.profil-sr-only{position:absolute;opacity:0;pointer-events:none}.profil-card--danger{border-color:oklch(from var(--destructive) l c h / .25)}.profil-card--danger .profil-card-header{border-bottom-color:oklch(from var(--destructive) l c h / .15)}.profil-danger-items{display:flex;flex-direction:column;gap:1.25rem}.profil-danger-items>.profil-danger-row+.profil-danger-row{padding-top:1.25rem;border-top:1px solid oklch(from var(--destructive) l c h / .12)}.profil-danger-row{display:flex;flex-direction:column;gap:.75rem}@media(min-width:640px){.profil-danger-row{flex-direction:row;align-items:center;justify-content:space-between}}.profil-danger-label{font-weight:500;color:var(--foreground);margin:0 0 .125rem;font-size:.875rem}.profil-danger-description{font-size:.8125rem;color:var(--muted-foreground);margin:0}.profil-modal{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}.profil-modal-backdrop{position:fixed;inset:0;background-color:oklch(from var(--background) l c h / .8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;cursor:default}.profil-modal-content{position:relative;background-color:var(--card);border:1px solid var(--border);border-radius:1.25rem;padding:1.5rem;max-width:28rem;width:100%;box-shadow:0 25px 50px -12px #00000040}.profil-modal-close{position:absolute;top:1rem;right:1rem;color:var(--muted-foreground);background:transparent;border:none;cursor:pointer;padding:.25rem;border-radius:var(--radius)}.profil-modal-close:hover{color:var(--foreground)}.profil-modal-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.profil-modal-centered{text-align:center}.profil-modal-centered .profil-modal-icon{margin:0 auto 1rem}.profil-modal-centered .profil-modal-title{margin-bottom:.5rem}.profil-modal-icon{width:3rem;height:3rem;border-radius:50%;background-color:oklch(from var(--destructive) l c h / .1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.profil-modal-icon-warning{background-color:oklch(from var(--warning) l c h / .1)}.profil-modal-title{font-size:1.125rem;font-weight:700;color:var(--foreground);margin:0}.profil-modal-subtitle{font-size:.875rem;color:var(--muted-foreground);margin:0}.profil-modal-description{color:var(--muted-foreground);margin:0 0 1.5rem}.profil-modal-actions{display:flex;gap:.75rem}.profil-modal-actions .btn{flex:1}.profil-btn-delete{background-color:var(--destructive-text);color:#fff}.profil-btn-delete:hover{background-color:oklch(from var(--destructive) l c h / .9)}.profil-btn-delete:disabled{opacity:.5;cursor:not-allowed}.profil-btn-warning{background-color:var(--warning-text);color:var(--warning-foreground)}.profil-btn-warning:hover{background-color:oklch(from var(--warning) l c h / .85)}.profil-btn-warning:disabled{opacity:.5;cursor:not-allowed}.btn-warning{color:var(--warning-text)}.btn-warning.btn-outline:hover:not(:disabled){background-color:oklch(from var(--warning) l c h / .1);border-color:oklch(from var(--warning) l c h / .2)}.profil-edit-btn{margin-left:auto;display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;color:var(--primary);background:transparent;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius);transition:background-color .15s}.profil-edit-btn:hover{background-color:oklch(from var(--primary) l c h / .08)}.profil-settings-grid{display:flex;flex-direction:column;gap:1rem}.profil-setting-item{display:flex;align-items:flex-start;gap:.75rem}.profil-setting-icon{color:var(--muted-foreground);flex-shrink:0;margin-top:.125rem}.profil-setting-label{font-size:.75rem;color:var(--muted-foreground);margin:0 0 .125rem}.profil-setting-value{font-size:.875rem;font-weight:500;color:var(--foreground);margin:0}.profil-modal-wide{max-width:32rem}.profil-modal-icon-edit{background-color:oklch(from var(--primary) l c h / .1)}.profil-edit-error{color:var(--destructive-text);font-size:.875rem;margin:0 0 1rem;padding:.5rem .75rem;background-color:oklch(from var(--destructive) l c h / .08);border-radius:var(--radius)}.profil-edit-form{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem}.profil-edit-field{display:flex;flex-direction:column;gap:.375rem}.profil-edit-label{font-size:.8125rem;font-weight:500;color:var(--foreground)}.profil-edit-input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--background);color:var(--foreground);font-size:.875rem;outline:none;transition:border-color .15s}.profil-edit-input:focus{border-color:var(--primary)}.profil-edit-goals{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.profil-edit-goal{position:relative;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--background);color:var(--muted-foreground);cursor:pointer;transition:border-color .15s,background-color .15s}.profil-edit-goal:hover{border-color:oklch(from var(--primary) l c h / .4)}.profil-edit-goal--active{border-color:var(--primary);background-color:oklch(from var(--primary) l c h / .06);color:var(--primary)}.profil-edit-goal-label{font-size:.8125rem;font-weight:600}.profil-edit-goal-desc{font-size:.6875rem;opacity:.7}.profil-edit-goal-check{position:absolute;top:.375rem;right:.375rem;color:var(--primary)}.profil-edit-date-row{display:flex;align-items:center;gap:.5rem}.profil-edit-date-row .profil-edit-input{flex:1}.profil-edit-date-clear{flex-shrink:0;font-size:.75rem;padding:.375rem .5rem}@media(max-width:479px){.profil-edit-goals{grid-template-columns:1fr}}.pricing-card{position:relative;padding:2rem;border-radius:2.5rem;background-color:var(--card);border:1px solid oklch(from var(--border) l c h / .5);display:flex;flex-direction:column;height:100%;transition:all var(--transition-fast) var(--ease-out)}@media(min-width:768px){.pricing-card{padding:2.5rem}}.pricing-card:hover{box-shadow:var(--shadow-lg)}.pricing-card-featured{border-color:oklch(from var(--primary) l c h / .2);box-shadow:0 25px 50px -12px oklch(from var(--primary) l c h / .05)}.pricing-card-badge{position:absolute;top:-1rem;left:50%;transform:translate(-50%);padding:.375rem 1rem;border-radius:9999px;background-color:var(--primary);color:var(--primary-foreground);font-size:.875rem;font-weight:700;letter-spacing:.025em}.pricing-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.pricing-price{display:flex;align-items:baseline;gap:.25rem;margin-bottom:2rem}.pricing-price-value{font-size:3rem;font-weight:700;color:var(--foreground)}.pricing-price-period{color:var(--muted-foreground);font-weight:500}.pricing-features{list-style:none;padding:0;margin:0 0 2.5rem;display:flex;flex-direction:column;gap:1rem}.pricing-feature-icon{margin-top:.25rem;width:1.25rem;height:1.25rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pricing-feature-icon-check{background-color:oklch(from var(--primary) l c h / .2);color:var(--primary)}.pricing-feature-icon-x{background-color:var(--secondary);color:var(--muted-foreground)}.pricing-footer{margin-top:auto}.premium-page{min-height:calc(100vh - 4rem);background-color:var(--background)}.premium-container{max-width:72rem;margin-left:auto;margin-right:auto;padding:3rem 1rem}@media(min-width:768px){.premium-container{padding:5rem 1.5rem}}.premium-active-container{min-height:100vh;background-color:var(--background);display:flex;align-items:center;justify-content:center;padding:1.5rem}.premium-active-card{text-align:center;max-width:32rem;padding:3rem}.premium-active-icon{margin:0 auto 1.5rem}.premium-active-title{font-size:1.875rem;font-weight:700;margin-bottom:1rem}.premium-active-description{color:var(--muted-foreground);font-size:1.125rem;margin-bottom:2rem}.premium-content-notice{display:flex;align-items:flex-start;gap:.75rem;max-width:48rem;margin:0 auto 3rem;padding:1.25rem 1.5rem;background:oklch(from var(--card) l c h / .5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid oklch(from var(--border) l c h / .5);border-radius:var(--radius-xl);font-size:.875rem;color:var(--muted-foreground);line-height:1.6}.premium-content-notice-icon{flex-shrink:0;color:var(--primary);margin-top:.125rem}.pricing-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:64rem;margin-left:auto;margin-right:auto}@media(min-width:768px){.pricing-grid{grid-template-columns:repeat(2,1fr);gap:3rem}}.pricing-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.pricing-card-title{font-size:1.5rem;font-weight:700;color:var(--foreground);margin-bottom:.25rem}.pricing-card-subtitle{color:var(--muted-foreground)}.pricing-card-subtitle--primary{color:var(--primary);font-weight:500}.pricing-amount{margin-bottom:2rem}.pricing-value{display:flex;align-items:baseline;gap:.25rem}.pricing-number{font-size:3rem;font-weight:700;color:var(--foreground)}.pricing-period{color:var(--muted-foreground);font-weight:500}.pricing-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-full);background-color:oklch(from var(--primary) l c h / .1);color:var(--primary);font-size:.875rem;font-weight:700;margin-top:1rem}.pricing-note{font-size:.75rem;color:var(--muted-foreground);margin-top:.5rem}.pricing-features{display:flex;flex-direction:column;gap:1rem;margin-bottom:2.5rem}.pricing-feature{display:flex;align-items:flex-start;gap:.75rem}.pricing-feature--disabled{opacity:.5}.pricing-feature-icon{margin-top:.25rem;width:1.25rem;height:1.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pricing-feature-icon--success{background-color:var(--secondary);color:var(--primary)}.pricing-feature-icon--muted{background-color:var(--secondary);color:var(--muted-foreground)}.pricing-feature-icon--primary{background-color:oklch(from var(--primary) l c h / .2);color:var(--primary)}.pricing-feature-text{color:oklch(from var(--foreground) l c h / .8)}.pricing-feature-text--muted{color:var(--muted-foreground)}.pricing-actions{margin-top:auto}.pricing-current-plan{width:100%;padding:1rem;text-align:center;border-radius:1rem;background-color:var(--secondary);color:var(--muted-foreground);font-weight:500;border:1px solid oklch(from var(--border) l c h / .5);cursor:default}.pricing-discover-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:1rem;border-radius:1rem;border:1px solid var(--border);color:var(--foreground);font-weight:700;transition:background-color var(--transition-fast) var(--ease-out)}.pricing-discover-btn:hover{background-color:oklch(from var(--secondary) l c h / .5)}.pricing-upgrade-btn{width:100%;padding:1rem;border-radius:1rem;background-color:var(--primary);color:var(--primary-foreground);font-weight:700;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all var(--transition-fast) var(--ease-out)}.pricing-upgrade-btn:hover{box-shadow:0 10px 25px -5px oklch(from var(--primary) l c h / .2)}.pricing-upgrade-btn:active{transform:scale(.98)}.pricing-upgrade-btn:disabled{opacity:.7;cursor:not-allowed}.pricing-stripe-note{text-align:center;font-size:.75rem;color:var(--muted-foreground);margin-top:1rem}.pricing-error{margin-bottom:1.5rem;padding:1rem;border-radius:var(--radius-xl);background-color:oklch(from var(--destructive) l c h / .1);border:1px solid oklch(from var(--destructive) l c h / .2);color:var(--destructive-text);font-size:.875rem;display:flex;align-items:flex-start;gap:.75rem}.pricing-error-icon{flex-shrink:0;margin-top:.125rem}.guarantee-section{display:flex;flex-direction:column;align-items:flex-start;gap:2rem}@media(min-width:768px){.guarantee-section{flex-direction:row}}.guarantee-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.guarantee-description{color:var(--muted-foreground);line-height:1.625;margin-bottom:1.5rem}.guarantee-badges{display:flex;flex-wrap:wrap;gap:1rem}.guarantee-badge{padding:.5rem 1rem;border-radius:var(--radius-xl);background-color:var(--background);border:1px solid oklch(from var(--border) l c h / .5);font-size:.875rem;font-weight:500;color:var(--foreground)}.pricing-placeholder{visibility:hidden}.welcome-page{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:1.5rem;background-color:var(--background)}.welcome-container{width:100%;max-width:32rem;margin-left:auto;margin-right:auto}.welcome-box{padding:2rem}@media(min-width:768px){.welcome-box{padding:2.5rem}}.welcome-progress{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2rem}.welcome-progress-dot{width:.5rem;height:.5rem;border-radius:9999px;background-color:var(--border);transition:all var(--transition-fast) var(--ease-out)}.welcome-progress-dot--active{width:1.5rem;background-color:var(--primary)}.welcome-progress-dot--done{background-color:var(--primary)}.welcome-step{animation:welcome-fadeIn .3s ease-out}@keyframes welcome-fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.welcome-header{text-align:center;margin-bottom:2rem}.welcome-title{font-size:1.25rem;font-weight:600;color:var(--foreground);margin-bottom:.5rem}.welcome-subtitle{color:var(--muted-foreground);font-size:.875rem}.welcome-input{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--card);color:var(--foreground);font-size:.875rem;font-family:inherit;outline:none;transition:border-color var(--transition-fast) var(--ease-out)}.welcome-input:focus{border-color:var(--primary)}.welcome-input::-moz-placeholder{color:var(--muted-foreground)}.welcome-input::placeholder{color:var(--muted-foreground)}.welcome-goals{display:flex;flex-direction:column;gap:.75rem}.welcome-goal{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--card);cursor:pointer;transition:all var(--transition-fast) var(--ease-out);text-align:left;width:100%}.welcome-goal:hover{border-color:oklch(from var(--primary) l c h / .4);background-color:oklch(from var(--primary) l c h / .03)}.welcome-goal--selected{border-color:var(--primary);background-color:oklch(from var(--primary) l c h / .06)}.welcome-goal-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background-color:oklch(from var(--primary) l c h / .1);color:var(--primary);flex-shrink:0}.welcome-goal-text{flex:1}.welcome-goal-title{font-weight:600;font-size:.9375rem;color:var(--foreground);margin-bottom:.125rem}.welcome-goal-desc{font-size:.8125rem;color:var(--muted-foreground)}.welcome-goal-check{color:var(--primary);flex-shrink:0;opacity:0;transition:opacity var(--transition-fast) var(--ease-out)}.welcome-goal--selected .welcome-goal-check{opacity:1}.welcome-date-input{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--card);color:var(--foreground);font-size:.875rem;font-family:inherit;outline:none;transition:border-color var(--transition-fast) var(--ease-out)}.welcome-date-input:focus{border-color:var(--primary)}.welcome-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.welcome-error{color:var(--destructive-text);font-size:.8125rem;text-align:center}.welcome-skip{background:transparent;border:none;color:var(--muted-foreground);font-size:.8125rem;cursor:pointer;padding:.5rem;transition:color var(--transition-fast) var(--ease-out)}.welcome-skip:hover{color:var(--foreground)}.welcome-back{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;background:transparent;border:none;color:var(--muted-foreground);font-size:.8125rem;cursor:pointer;padding:.25rem;margin-bottom:.5rem;transition:color var(--transition-fast) var(--ease-out)}.welcome-back:hover{color:var(--foreground)}.input{width:100%;padding:.5rem .75rem;font-size:.875rem;line-height:1.5;background-color:var(--background);border:1px solid var(--input);border-radius:var(--radius);color:var(--foreground);transition:all var(--transition-fast) var(--ease-out)}.input::-moz-placeholder{color:var(--muted-foreground)}.input::placeholder{color:var(--muted-foreground)}.input:focus{outline:none;border-color:var(--ring);background-color:var(--card)}.input:disabled{opacity:.5;cursor:not-allowed}.form-input{display:flex;height:2.5rem;width:100%;border-radius:var(--radius);border:1px solid var(--input);background-color:var(--background);padding:.5rem .75rem;font-size:.875rem;color:var(--foreground);transition:all var(--transition-fast) var(--ease-out)}.form-input::-moz-placeholder{color:var(--muted-foreground)}.form-input::placeholder{color:var(--muted-foreground)}.form-input:focus-visible{outline:none;border-color:var(--ring)}.form-input:disabled{cursor:not-allowed;opacity:.5}.label{display:block;font-size:.875rem;font-weight:500;color:var(--foreground);margin-bottom:.375rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.focus-ring:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.legal-content-container{max-width:48rem;margin:0 auto 5rem}.legal-content{max-width:none}.legal-content h3{font-size:1.125rem;font-weight:600;margin-top:2rem;margin-bottom:1rem}.legal-content p{color:var(--muted-foreground);margin-bottom:1rem;line-height:1.7}.legal-content strong{color:var(--foreground)}.legal-content p.legal-meta{font-size:.875rem;opacity:.75;margin-top:-.5rem;margin-bottom:2rem}.changelog-container{max-width:48rem;margin:0 auto;padding:0 1.5rem 4rem}.changelog-version{margin-bottom:3rem}.changelog-version-header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.changelog-version-title{font-size:1.25rem;font-weight:600;color:var(--foreground)}.changelog-entries{display:flex;flex-direction:column;gap:.625rem;padding-left:1rem;border-left:2px solid var(--border)}.changelog-entry{display:flex;align-items:flex-start;gap:.75rem;position:relative;padding-left:1rem}.changelog-entry:before{content:"";position:absolute;left:-1.3rem;top:.5rem;width:.5rem;height:.5rem;border-radius:var(--radius-full);background:var(--border)}.changelog-entry[data-type=inhalt]:before{background:var(--success)}.changelog-entry[data-type=tool]:before{background:var(--info)}.changelog-entry[data-type=uebung]:before{background:var(--warning)}.changelog-badge{flex-shrink:0;min-width:4rem;text-align:center;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:.125rem .5rem;border-radius:var(--radius-sm);font-family:JetBrains Mono Variable,monospace}.changelog-badge[data-type=inhalt]{background:#3a97421f;color:var(--success-text)}.changelog-badge[data-type=tool]{background:#4284c51f;color:var(--info-text)}.changelog-badge[data-type=uebung]{background:#d9a5141f;color:#906b00;color:oklch(.55 .12 85)}.changelog-entry-text{font-size:.9375rem;color:var(--foreground);line-height:1.5}@media(max-width:640px){.changelog-container{padding:0 1rem 3rem}.changelog-version-header{flex-direction:column;gap:.25rem}.changelog-entry{gap:.5rem}}.text-primary{color:var(--primary)}.br-desktop{display:none}@media(min-width:768px){.br-desktop{display:block}}.home-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:.625rem;margin:-3rem auto 6rem;max-width:56rem;padding:0 1rem}@media(min-width:768px){.home-stats{margin:-5rem auto 8rem}}.home-stat-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;border-radius:9999px;background:oklch(from var(--card) l c h / .6);border:1px solid oklch(from var(--border) l c h / .6);color:var(--foreground);font-size:.8125rem;font-weight:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-stat-icon{display:inline-flex;color:var(--primary)}.home-section{max-width:72rem;margin:0 auto 6rem;padding:0 .25rem}@media(min-width:768px){.home-section{margin-bottom:8rem}}.home-section-head{max-width:44rem;margin:0 auto 2.5rem;text-align:center}.home-section-eyebrow{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;border-radius:9999px;background:oklch(from var(--primary) l c h / .1);color:var(--primary);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:1rem}.home-section-title{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin:0 0 .75rem;color:var(--foreground)}@media(min-width:768px){.home-section-title{font-size:2.25rem}}.home-section-subtitle{font-size:1rem;color:var(--muted-foreground);line-height:1.6;margin:0}.home-section-foot{margin-top:1.5rem;text-align:center}.home-section-link{display:inline-flex;align-items:center;gap:.375rem;color:var(--foreground);font-weight:600;font-size:.9375rem}.home-section-link:hover{color:var(--primary)}.home-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}.home-badge--free{background:oklch(from var(--success) l c h / .15);color:var(--success-text)}.home-badge--premium{background:oklch(from var(--primary) l c h / .12);color:var(--primary)}.home-badge--beta{background:oklch(from var(--info, .6 .12 250) l c h / .15);color:var(--info-text)}.path-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media(min-width:720px){.path-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.path-card{display:flex;flex-direction:column;gap:.875rem;padding:1.75rem;border-radius:1.75rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .6);color:var(--foreground);text-decoration:none;position:relative;overflow:hidden}.path-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .05),transparent 60%);opacity:0;pointer-events:none}.path-card:hover{border-color:oklch(from var(--primary) l c h / .45)}.path-card:hover:after{opacity:1}.path-card--ap1{border-color:oklch(from var(--success) l c h / .35);background:linear-gradient(160deg,oklch(from var(--success) l c h / .08),var(--card) 65%)}.path-card--ap1:hover{border-color:oklch(from var(--success) l c h / .6)}.path-card-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.875rem;background:oklch(from var(--primary) l c h / .12);color:var(--primary);position:relative;z-index:1}.path-card--ap1 .path-card-icon{background:oklch(from var(--success) l c h / .15);color:var(--success-text)}.path-card-meta{position:relative;z-index:1}.path-card-badge{display:inline-flex;align-items:center;padding:.2rem .625rem;border-radius:9999px;background:var(--muted);color:var(--muted-foreground);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.path-card-badge--free{background:oklch(from var(--success) l c h / .15);color:var(--success-text)}.path-card-title{font-size:1.25rem;font-weight:700;margin:0;color:var(--foreground);position:relative;z-index:1}.path-card-text{margin:0;color:var(--muted-foreground);font-size:.9375rem;line-height:1.55;flex-grow:1;position:relative;z-index:1}.path-card-cta{display:inline-flex;align-items:center;gap:.375rem;color:var(--primary);font-weight:600;font-size:.9375rem;margin-top:.5rem;position:relative;z-index:1}.path-card--ap1 .path-card-cta{color:var(--success-text)}.bento-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.bento-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media(min-width:1024px){.bento-grid{grid-template-columns:repeat(3,1fr)}.bento-card--wide{grid-column:span 2}}.bento-card{display:flex;flex-direction:column;gap:.75rem;padding:1.75rem;border-radius:1.5rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .6);color:var(--foreground);text-decoration:none;min-height:200px;position:relative;overflow:hidden}.bento-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .05),transparent 60%);opacity:0;pointer-events:none}.bento-card:hover{border-color:oklch(from var(--primary) l c h / .4)}.bento-card:hover:after{opacity:1}.bento-card-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;position:relative;z-index:1}.bento-card-icon{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:.875rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary)}.bento-card-title{font-size:1.1875rem;font-weight:700;margin:0;color:var(--foreground);position:relative;z-index:1}.bento-card--wide .bento-card-title{font-size:1.375rem}.bento-card-text{margin:0;color:var(--muted-foreground);font-size:.9375rem;line-height:1.55;flex-grow:1;position:relative;z-index:1}.bento-card-cta{display:inline-flex;align-items:center;gap:.375rem;color:var(--primary);font-weight:600;font-size:.875rem;margin-top:.5rem;position:relative;z-index:1}.tool-strip{display:grid;grid-template-columns:1fr;gap:.75rem}@media(min-width:720px){.tool-strip{grid-template-columns:repeat(2,1fr);gap:1rem}}.tool-strip-card{display:flex;align-items:center;gap:1rem;padding:1.125rem 1.25rem;border-radius:1.125rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .6);color:var(--foreground);text-decoration:none}.tool-strip-card:hover{border-color:oklch(from var(--primary) l c h / .4);background:oklch(from var(--card) l c h / .7)}.tool-strip-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary);flex-shrink:0}.tool-strip-body{flex:1;min-width:0}.tool-strip-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.125rem}.tool-strip-title{font-size:1rem;font-weight:700;margin:0;color:var(--foreground)}.tool-strip-text{margin:0;color:var(--muted-foreground);font-size:.875rem;line-height:1.45}.tool-strip-arrow{color:var(--muted-foreground);flex-shrink:0}.tool-strip-card:hover .tool-strip-arrow{color:var(--primary)}.generator-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media(min-width:768px){.generator-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.generator-card{display:flex;flex-direction:column;gap:.875rem;padding:2rem;border-radius:1.75rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .6);color:var(--foreground);text-decoration:none;position:relative;overflow:hidden}.generator-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,oklch(from var(--primary) l c h / .08),transparent 60%);pointer-events:none}.generator-card:hover{border-color:oklch(from var(--primary) l c h / .45)}.generator-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;position:relative;z-index:1}.generator-card-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.875rem;background:oklch(from var(--primary) l c h / .12);color:var(--primary)}.generator-card-title{font-size:1.25rem;font-weight:700;margin:0;color:var(--foreground);position:relative;z-index:1}.generator-card-text{margin:0;color:var(--muted-foreground);font-size:.9375rem;line-height:1.55;flex-grow:1;position:relative;z-index:1}.generator-card-cta{display:inline-flex;align-items:center;gap:.375rem;color:var(--primary);font-weight:600;font-size:.9375rem;margin-top:.5rem;position:relative;z-index:1}.company-card{display:grid;grid-template-columns:1fr;gap:0;border-radius:1.75rem;background:var(--card);border:1px solid oklch(from var(--border) l c h / .6);overflow:hidden;position:relative}.company-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,oklch(from var(--primary) l c h / .08),transparent 55%);pointer-events:none}@media(min-width:860px){.company-card{grid-template-columns:1.4fr 1fr}}.company-card-body{position:relative;z-index:1;padding:2rem;display:flex;flex-direction:column;gap:1rem}@media(min-width:768px){.company-card-body{padding:2.5rem}}.company-card-head{display:flex;align-items:center;gap:.875rem}.company-card-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:.875rem;background:oklch(from var(--primary) l c h / .12);color:var(--primary);flex-shrink:0}.company-card-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.company-card-title{font-size:1.5rem;font-weight:700;letter-spacing:-.015em;margin:0;color:var(--foreground)}@media(min-width:768px){.company-card-title{font-size:1.75rem}}.company-card-text{margin:0;color:var(--muted-foreground);font-size:1rem;line-height:1.6}.company-card-list{list-style:none;padding:0;margin:.25rem 0 .5rem;display:flex;flex-direction:column;gap:.625rem}.company-card-list li{display:flex;align-items:center;gap:.625rem;color:var(--foreground);font-size:.9375rem}.company-card-check{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:9999px;background:oklch(from var(--success) l c h / .18);color:var(--success-text);flex-shrink:0}.company-card-cta{align-self:flex-start;margin-top:.5rem}.company-card-visual{display:none;position:relative;z-index:1;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .08),oklch(from var(--primary) l c h / .02) 70%);border-left:1px solid oklch(from var(--border) l c h / .5)}@media(min-width:860px){.company-card-visual{display:flex;align-items:center;justify-content:center;padding:2rem}}.company-card-visual-inner{display:flex;align-items:center;justify-content:center;width:12rem;height:12rem;border-radius:2.5rem;background:oklch(from var(--card) l c h / .6);border:1px solid oklch(from var(--border) l c h / .6);color:oklch(from var(--primary) l c h / .85);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.home-final-cta{max-width:40rem;margin:0 auto 4rem;text-align:center}.home-final-title{font-size:1.75rem;font-weight:700;margin:0 0 .75rem;color:var(--foreground)}.home-final-text{color:var(--muted-foreground);margin:0 0 1.75rem;line-height:1.6}.home-final-actions{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}.home-disclaimer{max-width:56rem;margin:0 auto 2rem;display:flex;gap:.75rem;padding:1rem 1.25rem;border-radius:1rem;background:oklch(from var(--muted) l c h / .5);border:1px solid oklch(from var(--border) l c h / .5)}.home-disclaimer p{margin:0;font-size:.8125rem;color:var(--muted-foreground);line-height:1.55}.home-disclaimer-icon{color:var(--muted-foreground);flex-shrink:0;margin-top:.125rem}.resources-container{max-width:80rem;margin:0 auto;padding:2rem 0 4rem;display:flex;flex-direction:column;gap:3rem}.generator-hero-card{border:1px solid var(--border);transition:all var(--transition-fast) var(--ease-out)}.generator-hero-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px oklch(from var(--foreground) l c h / .08)}.generator-hero-card--doku,.generator-hero-card--pptx{border-left:3px solid var(--primary)}.generator-hero-card--doku:hover,.generator-hero-card--pptx:hover{border-color:oklch(from var(--primary) l c h / .4);border-left-color:var(--primary)}.generator-hero-layout{display:flex;flex-direction:column;gap:2rem}.generator-hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .875rem .25rem .625rem;border-radius:9999px;background:oklch(from var(--primary) l c h / .1);color:var(--primary);font-size:.8125rem;font-weight:600;width:-moz-fit-content;width:fit-content}.generator-hero-badge--doku,.generator-hero-badge--pptx{background:oklch(from var(--primary) l c h / .1);color:var(--primary)}.generator-hero-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem}.generator-hero-tag{padding:.2rem .625rem;border-radius:var(--radius);background:var(--muted);color:var(--muted-foreground);font-size:.75rem;font-weight:500}.generator-hero-title{font-size:1.5rem;font-weight:800;color:var(--foreground);margin:.75rem 0 .5rem;transition:color var(--transition-fast) var(--ease-out)}.generator-hero-description{color:var(--muted-foreground);line-height:1.7;margin:0 0 1.25rem;max-width:40rem}.generator-hero-features{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-direction:column;gap:.625rem}.generator-hero-features li{display:flex;align-items:center;gap:.625rem;color:var(--foreground);font-size:.9375rem}.generator-hero-features li svg{color:var(--primary);flex-shrink:0}.generator-hero-cta{display:inline-flex;align-items:center;gap:.5rem;color:var(--primary);font-weight:600;font-size:1rem}.generator-hero-visual{display:none}.generator-hero-icon-wrapper{display:flex;align-items:center;justify-content:center;width:6rem;height:6rem;border-radius:1.5rem;background:oklch(from var(--primary) l c h / .08);color:var(--primary)}.generator-hero-icon-wrapper--doku,.generator-hero-icon-wrapper--pptx{background:oklch(from var(--primary) l c h / .08);color:var(--primary)}@media(min-width:768px){.generator-hero-title{font-size:1.75rem}.generator-hero-layout{flex-direction:row;align-items:center;justify-content:space-between}.generator-hero-body{flex:1;min-width:0}.generator-hero-visual{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding-left:2rem}.generator-hero-icon-wrapper{width:8rem;height:8rem;border-radius:2rem}.generator-hero-icon-wrapper svg{width:3.5rem;height:3.5rem}.generator-hero-features{flex-direction:row;flex-wrap:wrap;gap:.5rem 1.5rem}}.resources-section-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.resources-section-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.75rem;background:oklch(from var(--primary) l c h / .1);color:var(--primary);flex-shrink:0}.resources-section-title{font-size:1.25rem;font-weight:700;color:var(--foreground);margin:0 0 .25rem}.resources-section-description{color:var(--muted-foreground);margin:0;font-size:.9375rem}.resources-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:768px){.resources-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.training-hero-card{grid-column:1 / -1}.training-hero-card .ui-card-content{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:0 2rem;align-items:center}.training-hero-card .ui-card-header{grid-column:1;grid-row:1 / -1;margin-bottom:0}.training-hero-card .ui-card-title{grid-column:2;grid-row:1;margin-bottom:.25rem}.training-hero-card .ui-card-description{grid-column:2;grid-row:2}.training-hero-card .ui-card-footer{grid-column:3;grid-row:1 / -1;margin-top:0}}.resources-grid--single{max-width:32rem;margin:0 auto}@media(min-width:768px){.resources-grid--single{grid-template-columns:1fr}}.tools-container{max-width:80rem;margin:-2rem auto 0;padding:0 1.5rem 5rem;position:relative;z-index:10}@media(min-width:768px){.tools-container{padding:0 2rem 5rem}}.tools-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:768px){.tools-grid{grid-template-columns:repeat(2,1fr);gap:2rem}}.tool-card{display:flex;flex-direction:column;height:100%}.tool-card-content{padding:1.5rem;display:flex;flex-direction:column;height:100%}@media(min-width:768px){.tool-card-content{padding:2rem}}.tool-card--coming-soon{opacity:.6;cursor:not-allowed}@media(min-width:768px){.tool-card--featured{grid-column:1 / -1;padding:1.25rem 1.75rem}.tool-card--featured .ui-card-content{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"icon title cta" "icon desc  cta";align-items:center;-moz-column-gap:1.25rem;column-gap:1.25rem;row-gap:.125rem}.tool-card--featured .ui-card-header{grid-area:icon;margin-bottom:0}.tool-card--featured .ui-card-header .ui-card-badge{display:none}.tool-card--featured .ui-card-title{grid-area:title;font-size:1.125rem;margin-bottom:0}.tool-card--featured .ui-card-description{grid-area:desc;margin-bottom:0;flex-grow:0;font-size:.9375rem}.tool-card--featured .ui-card-footer{grid-area:cta;margin-top:0;white-space:nowrap}}.tool-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.tool-card-body{margin-top:auto}.tool-card-title{font-size:1.5rem;font-weight:700;margin-bottom:.5rem;color:var(--foreground);transition:color var(--transition-fast) var(--ease-out)}@media(min-width:768px){.tool-card-title{font-size:1.75rem}}.group:hover .tool-card-title{color:var(--primary)}.tool-card-description{color:var(--muted-foreground);font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.tool-card-cta{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--foreground);transition:gap var(--transition-fast) var(--ease-out)}.group:hover .tool-card-cta{gap:.75rem}.tool-card-cta--locked{color:var(--muted-foreground)}.tool-coming-soon-badge{font-size:.75rem;font-weight:600;color:var(--muted-foreground);background:var(--muted);padding:.375rem .875rem;border-radius:var(--radius-full)}.onboarding-container{max-width:56rem;margin:0 auto;padding:2rem 0 4rem}.onboarding-step{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.onboarding-step__title{font-size:1.875rem;font-weight:600;text-align:center;margin-bottom:.5rem;color:var(--foreground)}.onboarding-step__subtitle{font-size:1.125rem;color:var(--muted-foreground);text-align:center;margin-bottom:2rem}.onboarding-back{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;margin-bottom:1.5rem;font-size:.875rem;font-weight:500;color:var(--muted-foreground);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast) var(--ease-out)}.onboarding-back:hover{color:var(--foreground);background:var(--secondary)}.onboarding-cards{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:640px){.onboarding-cards{grid-template-columns:repeat(2,1fr)}}.oral-exams-container{display:flex;flex-direction:column;max-width:900px;margin:0 auto;padding:.75rem 1rem 4rem;min-height:calc(100vh - 200px)}.oral-exams-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--muted-foreground)}.oral-exams-filter{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2rem}.category-btn{white-space:nowrap;border-radius:var(--radius-full);padding:.625rem 1.5rem;font-size:.9375rem;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.category-btn.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.category-btn.inactive{background:var(--muted);color:var(--muted-foreground);border-color:var(--border)}.category-btn.inactive:hover{background:var(--secondary-hover);color:var(--foreground);border-color:var(--primary)}.oral-exams-list{flex:1;display:flex;flex-direction:column}.oral-exams-list .accordion{gap:.75rem}.oral-exams-list .accordion-item{border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--border);transition:all .15s ease}.oral-exams-list .accordion-item:hover{border-color:oklch(from var(--primary) l c h / .4)}.oral-exams-list .accordion-item.open{border-color:var(--primary);box-shadow:0 0 0 3px oklch(from var(--primary) l c h / .1)}.oral-exams-list .accordion-trigger{padding:1.25rem}.oral-exams-list .accordion-content{padding:0 1.25rem 1.25rem}.question-text{font-weight:600;font-size:1rem;color:var(--foreground);line-height:1.5;text-align:left}.answer-content{font-size:1rem;line-height:1.7;color:var(--muted-foreground);margin:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;border-radius:var(--radius-lg);background:var(--card);border:1px dashed var(--border);padding:2rem;text-align:center}.empty-state-title{font-size:1rem;font-weight:500;color:var(--muted-foreground);margin:0}.docx-container{max-width:72rem;margin:0 auto;padding:0 2rem 5rem}.docx-hero-highlight{color:var(--primary)}.docx-disclaimer{display:flex;gap:.6rem;align-items:flex-start;padding:.75rem .9rem;margin-top:.25rem;border-radius:.75rem;border:1px solid var(--warning, #d97706);background:color-mix(in srgb,var(--warning, #d97706) 6%,transparent);color:var(--text-secondary);font-size:.78rem;line-height:1.5}.docx-disclaimer-icon{flex-shrink:0;color:var(--warning-text);margin-top:.1rem}.docx-disclaimer strong{color:var(--text-primary)}.docx-workspace{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:start}@media(min-width:1024px){.docx-workspace{grid-template-columns:1fr 20rem}}.docx-editor-pane{display:flex;flex-direction:column;padding:0!important;overflow:hidden;border-radius:var(--radius-xl)}.docx-pane-header{display:flex;align-items:center;padding:1rem 1.5rem 0;border-bottom:1px solid var(--border);background-color:var(--muted);height:3.5rem}.docx-internal-tabs{display:flex;gap:1.5rem;height:100%}.docx-internal-tab{padding:0 .25rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted-foreground);font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:flex;align-items:center;height:100%;margin-bottom:-1px}.docx-internal-tab:hover{color:var(--foreground);border-bottom-color:var(--border)}.docx-internal-tab.active{color:var(--foreground);font-weight:600;border-bottom-color:var(--primary)}.docx-settings-form{flex:1;overflow-y:auto;padding:1.5rem}.docx-form-grid{display:flex;flex-direction:column;gap:1rem}.docx-form-group{display:flex;flex-direction:column;gap:.375rem}.docx-form-group label{font-size:.8125rem;font-weight:600;color:var(--muted-foreground)}.docx-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.docx-logo-upload{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem .875rem;border:1px dashed var(--border);border-radius:var(--radius);background-color:var(--card);color:var(--muted-foreground);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.docx-logo-upload:hover{border-color:var(--primary);color:var(--primary);background-color:oklch(from var(--primary) l c h / .05)}.docx-logo-input{display:none}.docx-logo-status{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--card);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);width:100%}.docx-logo-status--active{border-color:var(--primary);color:var(--primary)}.docx-logo-remove{margin-left:auto;opacity:.5;transition:opacity var(--transition-fast)}.docx-logo-status:hover .docx-logo-remove{opacity:1;color:var(--destructive-text)}.docx-input{width:100%;padding:.625rem .875rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--card);color:var(--foreground);font-size:.875rem;font-family:inherit;transition:border-color var(--transition-fast)}.docx-input:focus{outline:none;border-color:var(--primary)}.docx-input::-moz-placeholder{color:var(--muted-foreground)}.docx-input::placeholder{color:var(--muted-foreground)}select.docx-input{cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.docx-sections-list{display:flex;flex-direction:column;gap:.375rem}.docx-sections-hint{font-size:.875rem;font-weight:700;color:var(--foreground);margin:.75rem 0 .5rem;padding-bottom:.375rem;border-bottom:1px solid var(--border)}.docx-section-toggle{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--card);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left}.docx-section-toggle:hover{border-color:var(--muted-foreground)}.docx-section-toggle.active{border-color:var(--primary);background-color:oklch(from var(--primary) l c h / .05)}.docx-section-checkbox{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:.25rem;border:2px solid var(--border);flex-shrink:0;transition:all var(--transition-fast);color:var(--primary-foreground)}.docx-section-checkbox.checked{background-color:var(--primary);border-color:var(--primary)}.docx-section-label{font-size:.875rem;font-weight:500;color:var(--foreground)}.docx-margins-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.docx-actions-pane{display:flex;flex-direction:column;gap:.75rem;position:sticky;top:5.5rem}.docx-format-selector{display:flex;flex-direction:column;gap:.5rem}.docx-format-btn{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;border:2px solid var(--border);border-radius:var(--radius-lg);background-color:var(--card);cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.docx-format-btn div{display:flex;flex-direction:column;gap:.125rem;min-width:0}.docx-format-btn strong{font-size:.875rem;color:var(--foreground)}.docx-format-btn span{font-size:.75rem;color:var(--muted-foreground)}.docx-format-btn:hover{border-color:var(--muted-foreground)}.docx-format-btn.active{border-color:var(--primary);background-color:oklch(from var(--primary) l c h / .05)}.docx-format-btn.active strong{color:var(--primary)}.docx-format-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:var(--muted-foreground)}.docx-format-btn.active .docx-format-icon{color:var(--primary)}.docx-format-latex-icon{font-size:.6875rem;font-weight:700;letter-spacing:-.5px;line-height:1}.docx-btn-generate{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;border-radius:var(--radius-lg);border:none;background-color:var(--primary);color:var(--primary-foreground);font-weight:700;font-size:.9375rem;cursor:pointer;transition:all var(--transition-fast) var(--ease-out);width:100%}.docx-btn-generate:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.docx-btn-generate:active:not(:disabled){transform:translateY(0)}.docx-btn-generate:disabled{opacity:.7;cursor:not-allowed}.docx-btn-reset{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;border-radius:var(--radius);border:1px solid var(--border);background-color:var(--card);color:var(--muted-foreground);font-weight:500;font-size:.8125rem;cursor:pointer;transition:all var(--transition-fast);width:100%}.docx-btn-reset:hover{border-color:var(--muted-foreground);color:var(--foreground)}.docx-mode-btn,.docx-color-row .docx-input,.docx-color-swatch{height:2.375rem;box-sizing:border-box}.docx-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.docx-mode-btn{padding:0 .875rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--card);color:var(--muted-foreground);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center}.docx-mode-btn:hover{border-color:var(--muted-foreground);color:var(--foreground)}.docx-mode-btn.active{border-color:var(--primary);color:var(--primary);background-color:oklch(from var(--primary) l c h / .08)}.docx-color-row{display:flex;gap:.5rem;align-items:center}.docx-color-swatch{width:2.375rem;flex-shrink:0;padding:0;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background-color:var(--card);overflow:hidden}.docx-color-swatch::-webkit-color-swatch-wrapper{padding:2px}.docx-color-swatch::-webkit-color-swatch{border:none;border-radius:calc(var(--radius) - 4px)}.docx-color-swatch::-moz-color-swatch{border:none;border-radius:calc(var(--radius) - 4px)}.docx-color-row .docx-input{width:7.5rem;flex:0 0 auto;padding-top:0;padding-bottom:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem}.docx-color-preview{display:flex;gap:.25rem;margin-left:auto;padding:.25rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--card)}.docx-color-preview-swatch{width:1.375rem;height:1.375rem;border-radius:calc(var(--radius) - 2px);border:1px solid oklch(0 0 0 / .08)}.flashcard-page{display:flex;flex-direction:column;align-items:center;max-width:900px;margin:0 auto;padding:.75rem 1rem 2rem}.flashcard-page-header{text-align:center;margin-bottom:.5rem;width:100%}.flashcard-back-link{display:inline-flex;align-items:center;gap:.25rem;color:var(--muted-foreground);font-size:.75rem;font-weight:400;margin-bottom:.5rem;transition:color .15s ease;opacity:.7}.flashcard-back-link:hover{color:var(--primary)}.flashcard-page-title{font-size:1.125rem;font-weight:600;margin:0 0 .25rem;color:var(--muted-foreground)}.flashcard-page-description{color:var(--muted-foreground);margin:0;font-size:.8rem;opacity:.7}.flashcard-deck-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto}.flashcard-deck-grid>a{display:grid}.flashcard-deck-card{position:relative}.flashcard-deck-card .ui-card-footer{justify-content:space-between}.flashcard-deck-progress{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--muted-foreground);font-family:JetBrains Mono,monospace}.flashcard-deck-progress-bar{width:60px;height:4px;background:var(--progress-track);border-radius:var(--radius-full);overflow:hidden}.flashcard-deck-progress-fill{height:100%;background:var(--progress);border-radius:var(--radius-full);transition:width .3s ease}.flashcard-deck-action{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--primary);padding:.5rem 1rem;background:oklch(from var(--primary) l c h / .1);border-radius:var(--radius-lg);transition:all .15s ease}.flashcard-deck-card:hover .flashcard-deck-action{background:var(--primary);color:var(--primary-foreground)}.flashcard-player{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:100%;width:100%;margin:0 auto}.flashcard-player-header{display:flex;align-items:center;justify-content:center;width:100%;padding:0 .5rem}.flashcard-player-progress{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--muted-foreground)}.flashcard-player-score{display:flex;align-items:center;gap:1rem;font-size:.875rem}.flashcard-player-correct{color:var(--success-text);font-weight:600}.flashcard-player-wrong{color:var(--destructive-text);font-weight:600}.flashcard-container{perspective:1500px;width:100%;max-width:750px}.flashcard{display:grid;width:100%;height:400px;cursor:pointer;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.flashcard.flipped{transform:rotateY(180deg)}.flashcard-face{position:relative;grid-area:1 / 1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:3.5rem 2.5rem 2.5rem;border-radius:2rem;background:var(--card);border:1px solid var(--border);backface-visibility:hidden;-webkit-backface-visibility:hidden;text-align:center;overflow:hidden}.flashcard-front{background:var(--card)}.flashcard-back{transform:rotateY(180deg);background:var(--card)}.flashcard-label{position:absolute;top:1.25rem;left:1.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground);padding:.25rem .75rem;background:var(--muted);border-radius:var(--radius-full)}.flashcard-text{font-size:1.125rem;line-height:1.5;color:var(--foreground)}.flashcard-front .flashcard-text{font-weight:600}.flashcard-back .flashcard-text{font-weight:400}.flashcard-hint{position:absolute;bottom:1.25rem;font-size:.75rem;color:var(--muted-foreground);display:flex;align-items:center;gap:.5rem}.flashcard-actions{display:flex;gap:1rem;width:100%;max-width:750px}.flashcard-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all .15s ease}.flashcard-btn:disabled{opacity:.5;cursor:not-allowed}.flashcard-btn-flip{flex-direction:column;background:var(--primary);color:var(--primary-foreground)}.flashcard-btn-flip:hover{background:var(--primary-hover)}.flashcard-actions-grid{display:grid;width:100%}.flashcard-actions-flip,.flashcard-actions-answers{grid-area:1 / 1;display:grid}.flashcard-actions-flip{grid-template-columns:1fr}.flashcard-actions-answers{grid-template-columns:repeat(3,1fr);gap:.75rem}.flashcard-actions-hidden{visibility:hidden;pointer-events:none;opacity:0}.flashcard-btn-label{display:block;line-height:1.2}.flashcard-btn-sub{display:block;font-size:.7em;font-weight:400;opacity:.8}.flashcard-btn-again{flex-direction:column;background:oklch(from var(--destructive) l c h / .1);color:var(--destructive-text);border:1px solid oklch(from var(--destructive) l c h / .2)}.flashcard-btn-again:hover{background:var(--destructive);color:var(--destructive-foreground)}.flashcard-btn-hard{flex-direction:column;background:oklch(from var(--warning) l c h / .1);color:var(--warning-text);border:1px solid oklch(from var(--warning) l c h / .2)}.flashcard-btn-hard:hover{background:var(--warning);color:var(--warning-foreground)}.flashcard-btn-good{flex-direction:column;background:oklch(from var(--info) l c h / .1);color:var(--info-text);border:1px solid oklch(from var(--info) l c h / .2)}.flashcard-btn-good:hover{background:var(--info);color:var(--info-foreground)}.flashcard-btn-easy{flex-direction:column;background:oklch(from var(--success) l c h / .1);color:var(--success-text);border:1px solid oklch(from var(--success) l c h / .2)}.flashcard-btn-easy:hover{background:var(--success);color:var(--success-foreground)}.flashcard-complete{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem;text-align:center}.flashcard-complete-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:oklch(from var(--success) l c h / .1);color:var(--success-text);border-radius:50%}.flashcard-complete-title{font-size:1.5rem;font-weight:700;color:var(--foreground);margin:0}.flashcard-complete-stats{display:flex;gap:2rem;font-size:1rem}.flashcard-complete-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.flashcard-complete-stat-value{font-size:1.5rem;font-weight:700;font-family:JetBrains Mono,monospace}.flashcard-complete-stat-label{font-size:.75rem;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.05em}@media(max-width:640px){.page-container:has(>.flashcard-page){padding:0}.flashcard-page~.footer{display:none}.flashcard-page{height:calc(100dvh - 3.5rem);max-width:100%;padding:.75rem 1rem}.flashcard-page-header{margin-bottom:0}.flashcard-player{flex:1;justify-content:space-between;gap:.75rem;min-height:0}.flashcard-container{flex:1;display:flex;align-items:center;min-height:0}.flashcard{min-height:0}.flashcard-face{padding:1.5rem;border-radius:1.25rem;overflow:hidden;justify-content:flex-start}.flashcard-label{position:static;align-self:flex-start;margin-bottom:1rem}.flashcard-text{font-size:1rem;margin-top:auto;margin-bottom:auto}.flashcard-hint{position:static;margin-top:auto}.flashcard-actions{flex-direction:column;flex-shrink:0;padding-bottom:env(safe-area-inset-bottom,.5rem)}.flashcard-actions-answers{gap:.5rem}.flashcard-actions-grid .flashcard-btn{padding:.875rem .5rem}.flashcard-deck-grid{grid-template-columns:1fr}.flashcard-complete{flex:1;justify-content:center;padding:2rem 1rem}}.course-detail{background-color:var(--background);min-height:100%}.reading-progress-bar{position:fixed;top:0;left:0;right:0;z-index:50;height:.25rem;background-color:oklch(from var(--muted) l c h / .3)}.reading-progress-fill{height:100%;background:linear-gradient(to right,var(--primary),oklch(from var(--primary) l c h / .7));transition:all .15s ease-out}.course-content-container{max-width:80rem;margin-left:auto;margin-right:auto;padding:1rem;width:100%}@media(min-width:1024px){.course-content-container{padding:3rem 2rem}}.course-content-grid{display:flex;gap:2rem;flex-direction:column}@media(min-width:1024px){.course-content-grid{flex-direction:row;gap:3rem}}.course-detail-main{flex:1;min-width:0;max-width:56rem}.course-header{margin-bottom:2.5rem}.course-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.course-badge{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .625rem;border-radius:var(--radius-full)}.course-badge--primary{background-color:oklch(from var(--primary) l c h / .1);color:var(--primary)}.course-badge--premium{background-color:#6d50001a;background-color:oklch(45% .15 85 / .1);color:#6d5000;color:oklch(45% .15 85)}.dark .course-badge--premium{color:#d9a514}.course-badge--muted{color:var(--muted-foreground)}.course-title{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:1rem;color:var(--foreground);line-height:1.2}@media(min-width:1024px){.course-title{font-size:2.25rem}}.course-nav{margin-top:4rem;padding-top:2rem;border-top:1px solid oklch(from var(--border) l c h / .4)}.course-nav-inner{display:flex;align-items:center;justify-content:space-between}.course-nav-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--muted-foreground);transition:color var(--transition-fast) var(--ease-out)}.course-nav-link:hover{color:var(--foreground)}.back-to-top{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50;padding:.75rem;border-radius:var(--radius-full);background-color:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-lg);border:none;cursor:pointer;transition:all .3s}.back-to-top:hover{background-color:oklch(from var(--primary) l c h / .9);transform:scale(1.1)}.back-to-top--visible{opacity:1;transform:translateY(0)}.back-to-top--hidden{opacity:0;transform:translateY(1rem);pointer-events:none}.course-skeleton{padding:3rem;max-width:48rem;margin-left:auto;margin-right:auto}.course-skeleton-inner{display:flex;flex-direction:column;gap:2rem}.course-skeleton-header{display:flex;flex-direction:column;gap:1rem}.course-skeleton-content{display:flex;flex-direction:column;gap:1rem;padding-top:2.5rem}.skeleton-line{background-color:var(--muted);border-radius:var(--radius);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.skeleton-line--sm{height:1rem;width:8rem}.skeleton-line--lg{height:2.5rem;width:75%}.skeleton-line--full{height:1.5rem;width:100%}.skeleton-line--80{height:1rem;width:83%}.skeleton-line--60{height:1rem;width:66%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.course-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem;text-align:center}.course-not-found-title{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.course-not-found-description{color:var(--muted-foreground);margin-bottom:1.5rem}.course-not-found-link{color:var(--primary);text-decoration:underline;text-underline-offset:4px}.course-not-found-link:hover{text-decoration:underline}.course-locked{border-radius:1.5rem;border:1px solid var(--border);background-color:oklch(from var(--card) l c h / .5);padding:3rem;text-align:center;max-width:42rem;margin:3rem auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.course-locked-icon{width:4rem;height:4rem;background-color:var(--muted);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.course-locked-title{font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.course-locked-description{color:var(--muted-foreground);margin-bottom:2rem;max-width:28rem;margin-left:auto;margin-right:auto;line-height:1.625}.course-locked-btn{display:inline-flex;align-items:center;justify-content:center;height:2.75rem;padding:0 2rem;border-radius:var(--radius-lg);background-color:var(--primary);color:var(--primary-foreground);font-weight:500;transition:background-color var(--transition-fast) var(--ease-out)}.course-locked-btn:hover{background-color:oklch(from var(--primary) l c h / .9)}.course-locked-actions{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.course-locked-alt{font-size:.875rem;color:var(--muted-foreground)}.course-locked-alt-link{color:var(--primary);text-decoration:underline;text-underline-offset:2px}.course-locked-alt-link:hover{color:oklch(from var(--primary) l c h / .8)}.course-locked-notice{width:100%;text-align:center;font-size:.875rem;color:var(--muted-foreground);padding:.875rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--secondary)}.toc-page{display:flex;flex-direction:column;gap:2rem}.toc-hero{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;background:linear-gradient(135deg,oklch(from var(--primary) l c h / .08),oklch(from var(--primary) l c h / .02));border-radius:1.5rem;border:1px solid oklch(from var(--primary) l c h / .15)}@media(min-width:640px){.toc-hero{flex-direction:row;align-items:center;justify-content:space-between;padding:2rem}}.toc-hero-content{flex:1}.toc-hero-title{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:.5rem}@media(min-width:640px){.toc-hero-title{font-size:1.75rem}}.toc-hero-description{font-size:.9375rem;color:var(--muted-foreground);line-height:1.5;margin-bottom:1rem}.toc-hero-stats{display:flex;gap:1.25rem}.toc-stat{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;color:var(--muted-foreground)}.toc-stat svg{color:var(--primary)}.toc-hero-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--primary);color:var(--primary-foreground);font-weight:600;font-size:.9375rem;border-radius:var(--radius-lg);text-decoration:none;transition:all var(--transition-fast) var(--ease-out);white-space:nowrap;flex-shrink:0}.toc-hero-cta:hover{transform:translateY(-2px);box-shadow:0 4px 12px oklch(from var(--primary) l c h / .3)}.toc-content{display:flex;flex-direction:column;gap:1.5rem}.toc-chapter{border:1px solid var(--border);border-radius:1rem;overflow:hidden;background:var(--card)}.toc-chapter-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:oklch(from var(--muted) l c h / .3);border-bottom:1px solid var(--border)}.toc-chapter-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-lg);background:oklch(from var(--primary) l c h / .1);color:var(--primary);flex-shrink:0}.toc-chapter-title{flex:1;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.375rem}.toc-chapter-number{color:var(--muted-foreground);font-weight:500}.toc-chapter-count{font-size:.75rem;font-weight:500;color:var(--muted-foreground);margin-left:auto}.toc-lessons{list-style:none;padding:0;margin:0}.toc-lesson{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;text-decoration:none;color:var(--foreground);border-bottom:1px solid oklch(from var(--border) l c h / .5);transition:all var(--transition-fast) var(--ease-out)}.toc-lessons li:last-child .toc-lesson{border-bottom:none}.toc-lesson:hover{background:oklch(from var(--primary) l c h / .05)}.toc-lesson-number{font-size:.75rem;font-weight:500;color:var(--muted-foreground);min-width:2rem;flex-shrink:0}.toc-lesson-title{flex:1;font-size:.9375rem;font-weight:500}.toc-lesson-duration{display:none;align-items:center;gap:.25rem;font-size:.75rem;color:var(--muted-foreground)}@media(min-width:480px){.toc-lesson-duration{display:inline-flex}}.toc-lesson-premium{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);background:#d38f0026;background:oklch(.7 .15 75 / .15);color:#ac7300;color:oklch(.6 .15 75);flex-shrink:0}.toc-lesson-arrow{color:var(--muted-foreground);opacity:0;transform:translate(-4px);transition:all var(--transition-fast) var(--ease-out);flex-shrink:0}.toc-lesson:hover .toc-lesson-arrow{opacity:1;transform:translate(0)}.toc-empty{text-align:center;padding:4rem 2rem;color:var(--muted-foreground)}.toc-empty svg{margin:0 auto 1rem;opacity:.3}.toc-empty h3{font-weight:600;color:var(--foreground);margin-bottom:.5rem}.toc-empty p{font-size:.875rem}.chapters-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.chapters-grid{gap:1.25rem}}@media(min-width:768px){.chapters-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}.chapter-card-wrapper{display:flex;flex-direction:column}.chapter-card-wrapper.ui-card{padding:1.25rem}.chapter-card-wrapper--wide{grid-column:1 / -1}@media(min-width:768px){.chapter-card-wrapper--wide{grid-column:span 2}}.chapter-card-title{margin-bottom:.5rem!important}.chapter-list{flex-grow:1;display:flex;flex-direction:column;gap:.25rem}.chapter-list-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:var(--radius-md);margin-left:-.5rem;margin-right:-.5rem;transition:background-color var(--transition-fast)}.chapter-list-item:hover{background-color:oklch(from var(--muted) l c h / .5)}.chapter-list-item-icon{color:oklch(from var(--primary) l c h / .7);flex-shrink:0;display:flex}.chapter-list-item-text{font-size:.875rem;font-weight:500;line-height:1.25;color:oklch(from var(--foreground) l c h / .9)}.chapter-more-count{padding-top:.25rem;padding-left:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground)}.chapter-card{text-decoration:none}.chapter-badges{display:flex;align-items:center;gap:.5rem}.chapter-premium-indicator{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);background-color:#d38f0026;background-color:oklch(.7 .15 75 / .15);color:#ac7300;color:oklch(.6 .15 75)}.chapter-preview-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.375rem}.chapter-preview-item{display:flex;align-items:flex-start;gap:.375rem;font-size:.8125rem;line-height:1.4;color:var(--muted-foreground)}.chapter-preview-icon{flex-shrink:0;margin-top:.125rem;color:oklch(from var(--primary) l c h / .5)}.chapter-preview-more{font-size:.75rem;font-weight:600;color:var(--primary);padding-top:.25rem}.chapter-footer-action{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;padding:.375rem .75rem;border-radius:var(--radius-md);background-color:oklch(from var(--primary) l c h / .1);color:var(--primary);transition:all var(--transition-fast) var(--ease-out);width:-moz-fit-content;width:fit-content}.chapter-card:hover .chapter-footer-action,.chapter-footer-action:hover{background-color:var(--primary);color:var(--primary-foreground)}.chapters-empty{grid-column:1 / -1;padding:3rem;text-align:center;border:1px dashed var(--border);border-radius:1.5rem;background-color:oklch(from var(--muted) l c h / .2)}.chapters-empty-icon{width:3rem;height:3rem;margin:0 auto 1rem;color:oklch(from var(--muted-foreground) l c h / .3)}.chapters-empty-title{font-weight:600;margin-bottom:.25rem}.chapters-empty-description{color:var(--muted-foreground);font-size:.875rem}.auth-callback{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--background);padding:1.5rem}.auth-callback-content{text-align:center}.auth-callback-icon{margin:0 auto 1rem}.auth-callback-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.auth-callback-description{color:var(--muted-foreground)}.auth-callback-description--error{margin-bottom:1rem}
