@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_9ed8b840-module__zs3D9q__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_9ed8b840-module__zs3D9q__variable{--font-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:Albert Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/957a47e543b4e755-s.08_rwcuzr_1y~.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Albert Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9799cb2377b04428-s.p.013vjscrwh1r0.woff2?dpl=dpl_J26jQTTsA6zSiHR1gHfk4N3y8CnN)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Albert Sans Fallback;src:local(Arial);ascent-override:91.47%;descent-override:24.07%;line-gap-override:0.0%;size-adjust:103.86%}.albert_sans_1009b471-module__Nv2Z6q__className{font-family:Albert Sans,Albert Sans Fallback;font-style:normal;font-weight:700}.albert_sans_1009b471-module__Nv2Z6q__variable{--font-logo:"Albert Sans", "Albert Sans Fallback"}
html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--text);background:var(--bg);font-family:var(--font);font-size:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;line-height:1.5;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}
:root{--bg:#f9f7f2;--surface:#fff;--surface-hover:#f2efe8;--surface-glass:#ffffffd9;--border:#e0dbcf;--text:#1e1b2e;--text-muted:#5a5670;--accent:#7c3aed;--accent-dim:#7c3aed14;--accent-border:#7c3aed33;--accent-light:#a78bfa;--accent-hover:#6d28d9;--accent2:#a78bfa;--accent2-dim:#a78bfa1a;--overlay:#0009;--overlay-solid:#000;--shadow-dropdown:0 4px 16px #00000014;--shadow-card:0 1px 3px #0000000a, 0 4px 12px #00000008;--shadow-card-hover:0 2px 6px #0000000f, 0 8px 24px #0000000f;--shadow-cta:0 2px 12px #7c3aed4d;--shadow-cta-hover:0 4px 20px #7c3aed66;--danger:#dc2626;--danger-dim:#dc262614;--danger-border:#dc262633;--warning:#b45309;--warning-dim:#b4530914;--warning-border:#b4530933;--info:#2563eb;--info-dim:#2563eb14;--color-left:#3b82a0;--color-right:#d4782f;--color-good:#22c55e;--color-limited:#f59e0b;--font:var(--font-sans,"IBM Plex Sans"), "SF Pro Text", -apple-system, sans-serif;--radius-card:6px;--radius-container:6px;--radius-button:6px;--radius-small:4px;--radius-pill:20px;--radius-progress-bar:4px;--font-hero:44px;--font-h2:28px;--font-h3:20px;--font-h4:17px;--font-body:15px;--font-small:13px;--font-button:15px;--font-label:14px;--joint-dot:5px;--joint-dot-sm:4px;--joint-line:1.5px}
:focus-visible{outline-offset:2px;outline:2px solid var(--accent)!important}input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:0 0 0 3px var(--accent-dim);border-color:var(--accent)!important;outline:none!important}.skip-to-content{z-index:1000;background:var(--accent);color:#fff;width:1px;height:1px;font-family:var(--font);border-radius:var(--radius-button);padding:12px 24px;font-size:14px;font-weight:600;text-decoration:none;position:absolute;top:auto;left:-9999px;overflow:hidden}.skip-to-content:focus{z-index:10000;width:auto;height:auto;position:fixed;top:8px;left:8px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
.page-container{max-width:1080px;margin:0 auto;padding:0 24px}.page-narrow{box-sizing:border-box;width:100%;max-width:480px;margin:0 auto;padding:20px 20px 100px}.page-medium{box-sizing:border-box;width:100%;max-width:640px;margin:0 auto;padding:40px 24px 80px}.text-hero{font-size:var(--font-hero);font-weight:700;line-height:1.15}.text-h2{font-size:var(--font-h2);font-weight:700;line-height:1.2}.text-h3{font-size:var(--font-h3);font-weight:600}.text-h4{font-size:var(--font-h4);font-weight:600}.text-body{font-size:var(--font-body);font-weight:400;line-height:1.5}.text-small{font-size:var(--font-small)}.text-label{font-size:var(--font-label);font-weight:600}.text-muted{color:var(--text-muted)}.text-accent{color:var(--accent)}.text-danger{color:var(--danger)}.text-center{text-align:center}.section-label{font-size:var(--font-small);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-weight:600}.card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:20px}.card-padded{padding:24px}.card-hoverable{cursor:pointer;transition:box-shadow .2s,transform .2s}.card-hoverable:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.card-elevated{background-color:var(--accent-dim);border:2px solid var(--accent);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.card-form{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:32px}.btn-primary{background-color:var(--accent);color:#fff;border-radius:var(--radius-button);cursor:pointer;font-size:16px;font-weight:600;font-family:var(--font);box-shadow:var(--shadow-cta);text-align:center;box-sizing:border-box;border:none;padding:14px 32px;text-decoration:none;transition:transform .2s,box-shadow .2s,background-color .2s;display:inline-block}.btn-primary:hover{background-color:var(--accent-hover);box-shadow:var(--shadow-cta-hover);transform:translateY(-1px)}.btn-primary:disabled{background-color:var(--surface-hover);color:var(--text-muted);opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary-sm{background-color:var(--accent);color:#fff;border-radius:var(--radius-button);font-size:var(--font-label);cursor:pointer;font-weight:600;font-family:var(--font);box-shadow:var(--shadow-cta);border:none;padding:10px 22px;text-decoration:none;transition:transform .2s,box-shadow .2s,background-color .2s;display:inline-block}.btn-primary-sm:hover{background-color:var(--accent-hover);box-shadow:var(--shadow-cta-hover);transform:translateY(-1px)}.btn-secondary{color:var(--accent);border:1px solid var(--accent-border);border-radius:var(--radius-button);cursor:pointer;font-size:16px;font-weight:600;font-family:var(--font);text-align:center;background-color:#0000;padding:14px 32px;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-block}.btn-secondary:hover{background-color:var(--accent-dim);border-color:var(--accent)}.btn-text{color:var(--text-muted);cursor:pointer;font-family:var(--font);font-size:var(--font-label);background:0 0;border:none;padding:0;font-weight:600;text-decoration:none;transition:color .15s}.btn-text:hover{color:var(--accent)}.btn-danger{background-color:var(--danger);color:#fff;border-radius:var(--radius-button);cursor:pointer;font-size:16px;font-weight:600;font-family:var(--font);border:none;padding:14px 32px;transition:background-color .15s}.btn-danger:hover{background-color:#b91c1c}.btn-full{width:100%}.input{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-button);width:100%;color:var(--text);font-size:16px;font-family:var(--font);box-sizing:border-box;outline:none;margin-bottom:12px;padding:12px 16px}.textarea{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-button);width:100%;color:var(--text);font-size:16px;font-family:var(--font);box-sizing:border-box;resize:vertical;outline:none;min-height:100px;margin-bottom:12px;padding:12px 16px}.alert-success{background-color:var(--accent-dim);color:var(--accent);border:1px solid var(--accent-border);border-radius:var(--radius-small);font-size:var(--font-label);margin-bottom:12px;padding:10px 14px}.alert-error{background-color:var(--danger-dim);color:var(--danger);border:1px solid var(--danger-border);border-radius:var(--radius-small);font-size:var(--font-label);margin-bottom:12px;padding:10px 14px}.alert-warning{background-color:var(--warning-dim);color:var(--warning);border:1px solid var(--warning-border);border-radius:var(--radius-small);font-size:var(--font-label);margin-bottom:12px;padding:10px 14px}.alert-info{background-color:var(--info-dim);color:var(--info);border-radius:var(--radius-small);font-size:var(--font-label);margin-bottom:12px;padding:10px 14px}.nav{z-index:100;background:var(--surface-glass);-webkit-backdrop-filter:blur(16px);border-bottom:1.5px solid var(--border);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;max-width:1080px;height:64px;margin:0 auto;padding:0 24px;display:flex}.nav-right{align-items:center;gap:24px;display:flex}.nav-link{color:var(--text-muted);font-size:var(--font-label);font-weight:600;text-decoration:none;transition:color .15s}.nav-link:hover{color:var(--accent)}.nav-user-btn{color:var(--text-muted);font-size:var(--font-label);cursor:pointer;font-weight:600;font-family:var(--font);background-color:#0000;border:none;align-items:center;gap:6px;padding:0;text-decoration:none;display:flex}.nav-user-menu{background-color:var(--surface);border:1px solid var(--border);z-index:100;min-width:180px;box-shadow:var(--shadow-dropdown);border-radius:0;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.nav-menu-item{width:100%;color:var(--text);font-size:var(--font-label);cursor:pointer;font-weight:400;font-family:var(--font);text-align:left;box-sizing:border-box;background-color:#0000;border:none;border-radius:0;padding:10px 14px;text-decoration:none;transition:background-color .1s;display:block}.nav-menu-item:hover{background-color:var(--surface-hover)}.nav-hamburger{cursor:pointer;color:var(--text);background:0 0;border:none;padding:6px;display:none}.nav-mobile-menu{background-color:var(--surface);border-bottom:1px solid var(--border);z-index:99;box-shadow:var(--shadow-dropdown);padding:8px 24px 16px;position:absolute;top:64px;left:0;right:0}.nav-mobile-item{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text);font-size:var(--font-body);cursor:pointer;font-weight:600;font-family:var(--font);text-align:left;box-sizing:border-box;background-color:#0000;padding:12px 0;text-decoration:none;display:block}.nav-mobile-item:last-child{border-bottom:none}@media (max-width:640px){.nav-desktop{display:none!important}.nav-hamburger{display:block!important}}@media (min-width:641px){.nav-mobile-menu{display:none!important}}.footer{border-top:1.5px solid var(--border);text-align:center;padding:32px 0}.footer-inner{max-width:1080px;margin:0 auto;padding:0 24px}.footer-links{flex-wrap:wrap;justify-content:center;gap:24px;margin:16px 0;display:flex}.footer-link{color:var(--text-muted);font-size:13px;text-decoration:none;transition:color .15s}.footer-link:hover{color:var(--accent)}.footer-copyright{color:var(--text-muted);font-size:13px}.footer-disclaimer{color:var(--text-muted);border-top:1px solid var(--border);max-width:640px;margin:20px auto 0;padding-top:20px;font-size:13px;line-height:1.6}.backbar{align-items:center;width:100%;max-width:480px;height:44px;margin:0 auto;padding:0 20px;display:flex}.backbar-link{color:var(--text-muted);font-size:14px;font-weight:600;font-family:var(--font);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.auth-page{background-color:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);width:100%;max-width:400px;box-shadow:var(--shadow-card);padding:32px}.auth-title{color:var(--text);text-align:center;margin-bottom:8px;font-size:24px;font-weight:600}.auth-subtitle{color:var(--text-muted);font-size:var(--font-label);text-align:center;margin-bottom:24px}.auth-footer{color:var(--text-muted);font-size:var(--font-label);justify-content:center;gap:4px;margin-top:20px;display:flex}.legal-title{font-size:var(--font-h2);margin-bottom:8px;font-weight:700}.legal-updated{font-size:var(--font-small);color:var(--text-muted);margin-bottom:32px}.legal-h2{font-size:var(--font-h4);margin-top:32px;margin-bottom:12px;font-weight:600}.legal-p{font-size:var(--font-body);color:var(--text);margin-bottom:16px;line-height:1.7}.legal-p-caps{font-size:var(--font-body);color:var(--text);text-transform:uppercase;margin-bottom:16px;line-height:1.7}.legal-muted{font-size:var(--font-body);color:var(--text-muted);margin-bottom:16px;line-height:1.7}.legal-link{color:var(--accent)}.legal-ul{font-size:var(--font-body);color:var(--text);margin-bottom:16px;padding-left:24px;line-height:1.7}.legal-li{margin-bottom:8px}.overlay{z-index:9999;background-color:var(--overlay);flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.loading-screen{background-color:var(--bg);min-height:100vh;color:var(--text-muted);font-family:var(--font);justify-content:center;align-items:center;display:flex}.table-container{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-container);overflow:hidden}.table-header{border-bottom:1px solid var(--border);background-color:var(--surface);align-items:center;padding:10px 16px;display:flex}.table-header-label{font-size:var(--font-small);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.table-row{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;padding:12px 16px;transition:background-color .1s;display:flex}.table-row:last-child{border-bottom:none}.table-row:hover{background-color:var(--surface-hover)}.table-empty{text-align:center;color:var(--text-muted);font-size:var(--font-body);padding:40px 20px;line-height:1.6}@keyframes dl-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}.skeleton-bar{background:linear-gradient(90deg, var(--surface-hover) 25%, var(--border) 50%, var(--surface-hover) 75%);background-size:400px 100%;border-radius:2px;height:14px;animation:1.2s ease-in-out infinite dl-shimmer}.badge{border-radius:var(--radius-pill);font-size:var(--font-small);padding:3px 10px;font-weight:600;display:inline-block}.progress-track{background-color:var(--accent-dim);border-radius:var(--radius-progress-bar);overflow:hidden}.progress-fill{background-color:var(--accent);border-radius:var(--radius-progress-bar);height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.link{color:var(--accent);text-decoration:none;transition:color .15s}.link:hover{color:var(--accent-hover)}