*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--color-accent:#e8ff00;--color-accent-dim:#b8cc00;--color-accent-fill:#e8ff00;--color-accent-fill-hover:#f0ff44;--color-accent-on-fill:#0c0c0e;--color-accent-glow:#e8ff001f;--color-accent-ghost:#e8ff000f;--color-bg:#0c0c0e;--color-surface:#161619;--color-surface-2:#1e1e22;--color-surface-3:#252529;--color-sidebar-bg:#111114;--color-sidebar-hover:#1c1c20;--color-text:#e8e8ed;--color-text-muted:#9494a0;--color-text-dim:#7a7a86;--color-border:#2a2a30;--color-border-subtle:#1f1f24;--color-danger:#ff4757;--color-danger-dim:#ff475726;--color-warning:#e2a300;--color-warning-dim:#e2a3001a;--color-backdrop:#000000b3;--color-scrollbar:#2a2a30;--radius:6px;--radius-sm:3px;--radius-lg:10px;--shadow:0 2px 12px #0006;--shadow-lg:0 8px 32px #0009;--shadow-accent:0 0 20px #e8ff0014;--sidebar-width:250px;--font-display:"Bebas Neue", "Impact", sans-serif;--font-body:"Barlow", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--color-accent:#4a6200;--color-accent-dim:#5e7a00;--color-accent-fill:#d4e600;--color-accent-fill-hover:#e0f200;--color-accent-on-fill:#1a2000;--color-accent-glow:#4a62001a;--color-accent-ghost:#4a62000d;--color-bg:#f2f1ed;--color-surface:#fff;--color-surface-2:#f7f6f2;--color-surface-3:#eeedea;--color-sidebar-bg:#fafaf8;--color-sidebar-hover:#f0efeb;--color-text:#1a1a1f;--color-text-muted:#6b6b74;--color-text-dim:#9c9ca5;--color-border:#d8d7d3;--color-border-subtle:#e8e7e3;--color-danger:#dc2626;--color-danger-dim:#dc262614;--color-warning:#ca8a04;--color-warning-dim:#ca8a0414;--color-backdrop:#0000004d;--color-scrollbar:#d0d0cc;--shadow:0 2px 8px #0000000f;--shadow-lg:0 8px 24px #0000001a;--shadow-accent:0 0 16px #4a62001a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;transition:background .25s,color .25s}button{cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none}input,textarea{font-family:inherit;font-size:inherit;color:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}.noise-bg:before{content:"";opacity:.025;pointer-events:none;z-index:9999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;position:fixed;inset:0}[data-theme=light] .noise-bg:before{opacity:.012}.stripe-accent{background:repeating-linear-gradient(90deg, var(--color-accent) 0, var(--color-accent) 20px, transparent 20px, transparent 24px);opacity:.7;height:3px}.modal-backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;place-items:center;animation:.15s ease-out fadeIn;display:grid;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:420px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);padding:28px;animation:.2s ease-out modalIn}.modal.modal-wide{width:640px}@keyframes modalIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-title-bar{align-items:center;gap:10px;margin-bottom:24px;display:flex}.modal-stripe{background:var(--color-accent-fill);border-radius:2px;width:4px;height:24px}.modal h2{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-size:26px}.field-label{color:var(--color-text-muted);letter-spacing:.12em;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.field-label-gap{margin-top:16px}.field-input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);width:100%;color:var(--color-text);outline:none;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.field-input::placeholder{color:var(--color-text-dim)}.field-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.field-error{color:var(--color-danger);margin-top:8px;font-size:13px;font-weight:500}.field-ft-group{gap:10px;display:flex}.field-ft-cell{flex:1;position:relative}.field-ft-cell .field-input{padding-right:34px}.field-ft-unit{color:var(--color-text-dim);pointer-events:none;font-size:13px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.modal.modal-sm{width:380px}.modal-stripe-danger{background:var(--color-danger)}.confirm-text{color:var(--color-text-muted);margin-bottom:4px;font-size:14px;line-height:1.5}.btn-danger{background:var(--color-danger);color:#fff;border-radius:var(--radius);letter-spacing:.08em;padding:10px 20px;font-size:13px;font-weight:700;transition:opacity .15s}.btn-danger:hover{opacity:.85}.iub__us-widget,.iub__us-widget__wrapper{display:none!important}.btn-primary{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius);font-family:var(--font-body);letter-spacing:.08em;align-items:center;gap:6px;padding:10px 20px;font-size:13px;font-weight:700;text-decoration:none;transition:background .15s,box-shadow .15s;display:inline-flex}.btn-primary:hover{background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.btn-ghost{color:var(--color-text-muted);border-radius:var(--radius);border:1px solid var(--color-border);letter-spacing:.06em;background:0 0;align-items:center;gap:6px;padding:10px 20px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .15s,color .15s;display:inline-flex}.btn-ghost:hover{border-color:var(--color-text-muted);color:var(--color-text)}.btn-icon{font-size:18px;font-weight:400;line-height:1}.btn-icon-only{justify-content:center;align-items:center;padding:10px;display:flex}.btn-lg{gap:8px;padding:16px 36px;font-size:14px}.cb-custom{appearance:none;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);cursor:pointer;flex-shrink:0;width:16px;height:16px;transition:border-color .15s,background .15s,box-shadow .15s;position:relative}.cb-custom:hover{border-color:var(--color-accent)}.cb-custom:checked{background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.cb-custom:checked:after{content:"";border:solid var(--color-accent-on-fill);border-width:0 2px 2px 0;width:4.5px;height:8.5px;position:absolute;top:1.5px;left:4.5px;transform:rotate(45deg)}.cb-custom:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost);outline:none}.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle-track{background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:999px;width:34px;height:20px;transition:background .2s,border-color .2s;position:relative}.toggle-thumb{background:var(--color-text-dim);border-radius:50%;width:14px;height:14px;transition:left .22s cubic-bezier(.2,.7,.2,1),background .2s;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.toggle.on .toggle-track{background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.toggle.on .toggle-thumb{background:var(--color-accent-on-fill);left:16px}.toggle-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);font-size:11px;font-weight:700;transition:color .2s}.toggle.on .toggle-label{color:var(--color-text)}.toggle input:focus-visible+.toggle-track{box-shadow:0 0 0 2px var(--color-accent-ghost)}.input-no-spin::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-no-spin::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-no-spin{-moz-appearance:textfield}.select-custom{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat}.field-info{color:var(--color-accent);margin-top:8px;font-size:13px;font-weight:500;line-height:1.5}.alert-error,.alert-warning{border-radius:var(--radius);align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;line-height:1.4;display:flex}.alert-error:before,.alert-warning:before{content:"";border-radius:1px;flex-shrink:0;align-self:stretch;width:3px}.alert-error{color:var(--color-danger);background:var(--color-danger-dim);border:1px solid var(--color-danger)}.alert-error:before{background:var(--color-danger)}.alert-warning{color:var(--color-warning);background:var(--color-warning-dim);border:1px solid var(--color-warning)}.alert-warning:before{background:var(--color-warning)}.theme-toggle{border-radius:var(--radius);width:36px;height:36px;color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-surface);place-items:center;transition:color .15s,border-color .15s,background .15s;display:grid}.theme-toggle:hover{color:var(--color-accent);border-color:var(--color-accent)}.theme-toggle.compact{border-color:var(--color-border-subtle);background:0 0;width:30px;height:30px}.theme-toggle.compact:hover{background:var(--color-sidebar-hover)}.lang-switch{border-radius:var(--radius);height:36px;color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-surface);letter-spacing:.08em;cursor:pointer;align-items:center;gap:4px;padding:0 10px;font-size:11px;font-weight:700;transition:color .15s,border-color .15s,background .15s;display:flex}.lang-switch:hover{color:var(--color-accent);border-color:var(--color-accent)}.lang-switch.compact{border-color:var(--color-border-subtle);background:0 0;height:30px;padding:0 8px;font-size:10px}.lang-switch.compact:hover{background:var(--color-sidebar-hover)}.brand-logo{align-items:center;gap:12px;display:flex}.brand-logo-mark{background:var(--color-accent-fill);width:40px;height:40px;color:var(--color-accent-on-fill);border-radius:var(--radius);place-items:center;display:grid}.brand-logo-titles{align-items:baseline;gap:0;display:flex}.brand-logo-title,.brand-logo-title-accent{font-family:var(--font-display);letter-spacing:.04em;font-size:24px;line-height:1}.brand-logo-title{color:var(--color-text)}.brand-logo-title-accent{color:var(--color-accent)}.auth{background:var(--color-bg);justify-content:center;align-items:center;min-height:100%;padding:24px;display:flex}.auth-theme-toggle{z-index:10;gap:8px;display:flex;position:fixed;top:16px;right:16px}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:420px;max-width:100%;box-shadow:var(--shadow-lg);padding:40px 36px}.auth-brand{margin-bottom:20px}.auth-stripe{margin-bottom:28px}.auth-heading{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:6px;font-size:32px;line-height:1}.auth-subheading{color:var(--color-text-muted);margin-bottom:28px;font-size:14px}.auth-card .field-label{margin-top:16px}.auth-card .field-label:first-of-type{margin-top:0}.auth-card .field-input{margin-top:6px}.auth-submit{justify-content:center;width:100%;margin-top:24px;padding:14px 20px;font-size:14px}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{text-align:center;color:var(--color-text-muted);margin-top:20px;font-size:14px}.auth-switch-btn{color:var(--color-accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.auth-switch-btn:hover{text-decoration:underline}.auth-inline-link{text-align:right;margin-top:8px;font-size:13px}.auth-card .field-info{margin-top:16px}.auth-expired-notice{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius);letter-spacing:.05em;text-transform:uppercase;margin:0 0 16px;padding:10px 14px;font-size:12px;font-weight:600}.auth-login-row{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;font-size:13px;display:flex}.auth-remember{cursor:pointer;color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.auth-remember span{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}.auth-terms-checkbox{cursor:pointer;color:var(--color-text-muted);align-items:flex-start;gap:10px;margin:16px 0 0;font-size:12px;line-height:1.5;display:flex}.auth-terms-checkbox input[type=checkbox]{margin-top:2px}.auth-terms-checkbox a{color:var(--color-accent);text-decoration:underline}.legal-footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.legal-footer-link{color:inherit;font-size:inherit;text-decoration:none}.legal-footer-link:hover{color:var(--color-text)}.legal-footer-link-icon{align-items:center;gap:6px;display:inline-flex}.legal-footer-ccpa-icon{width:26px;height:auto;display:block}.legal-footer-sep{opacity:.5}.landing{background:var(--color-bg);min-height:100%;overflow-x:hidden}.landing-nav{z-index:20;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.landing-nav-inner{justify-content:space-between;align-items:center;max-width:1080px;margin:0 auto;padding:14px 28px;display:flex}.landing-brand{color:inherit;text-decoration:none}.landing-nav-actions{align-items:center;gap:10px;display:flex}.landing-nav-link{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);border-radius:var(--radius-sm);padding:8px 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s}.landing-nav-link:hover{color:var(--color-text);background:var(--color-surface-2)}@media (width<=560px){.landing-nav-link{display:none}}.landing-hero{text-align:center;max-width:1080px;margin:0 auto;padding:80px 28px 64px}.landing-free-badge{background:var(--color-accent-glow);border:1px solid var(--color-accent-dim);letter-spacing:.12em;color:var(--color-accent);border-radius:100px;align-items:center;gap:8px;margin-bottom:32px;padding:8px 20px;font-size:12px;font-weight:700;display:inline-flex}.landing-free-dot{background:var(--color-accent-fill);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.landing-hero h1{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);margin-bottom:8px;font-size:clamp(48px,8vw,80px);line-height:1}.landing-hero-accent{color:var(--color-accent)}.landing-hero-sub{color:var(--color-text-muted);max-width:520px;margin:0 auto 40px;font-size:18px;line-height:1.6}.landing-hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.landing-features{max-width:1080px;margin:0 auto;padding:0 28px 80px}.landing-section-label{letter-spacing:.16em;color:var(--color-accent);text-align:center;margin-bottom:12px;font-size:11px;font-weight:700}.landing-section-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);text-align:center;margin-bottom:48px;font-size:36px}.landing-features-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=768px){.landing-features-grid{grid-template-columns:1fr}}@media (width>=769px) and (width<=1024px){.landing-features-grid{grid-template-columns:repeat(2,1fr)}}.landing-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .2s,box-shadow .2s;position:relative}.landing-card:before{content:"";background:var(--color-accent-fill);opacity:0;border-radius:0 2px 2px 0;width:3px;transition:opacity .2s;position:absolute;top:16px;bottom:16px;left:0}.landing-card:hover{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent)}.landing-card:hover:before{opacity:1}.landing-feature-card{padding:28px 24px}.landing-feature-icon{background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius);width:44px;height:44px;color:var(--color-accent);place-items:center;margin-bottom:16px;display:grid}.landing-feature-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:8px;font-size:22px}.landing-feature-desc{color:var(--color-text-muted);font-size:14px;line-height:1.6}.landing-showcase{max-width:1200px;margin:0 auto;padding:40px 28px 24px}.landing-showcase .landing-section-label{margin-bottom:20px}.landing-showcase-carousel{flex-direction:column;gap:18px;display:flex}.landing-showcase-viewport{border:1px solid var(--color-border);border-radius:var(--radius-lg);aspect-ratio:16/9;background:var(--color-surface-2);box-shadow:var(--shadow-accent);position:relative;overflow:hidden}.landing-showcase-track{will-change:transform;width:100%;height:100%;transition:transform .7s cubic-bezier(.65,0,.35,1);display:flex}.landing-showcase-slide{flex:0 0 100%;width:100%;height:100%}.landing-showcase-video{object-fit:cover;width:100%;height:100%;display:block}.landing-showcase-tagline{color:var(--color-text-muted);text-align:center;min-height:1.5em;padding:0 8px;font-size:15px;line-height:1.5}.landing-showcase-tabs{border-top:1px solid var(--color-border);gap:4px;padding-top:0;display:flex}.landing-showcase-tab{color:var(--color-text-dim);cursor:pointer;background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;align-items:flex-start;gap:4px;padding:16px 18px 14px;transition:color .2s,background .2s;display:flex;position:relative}.landing-showcase-tab:hover{color:var(--color-text-muted);background:var(--color-surface-2)}.landing-showcase-tab-num{font-family:var(--font-display);letter-spacing:.14em;color:inherit;opacity:.75;font-size:13px}.landing-showcase-tab-name{font-family:var(--font-display);letter-spacing:.08em;color:inherit;font-size:17px}.landing-showcase-tab-active{color:var(--color-text)}.landing-showcase-tab-active .landing-showcase-tab-num{color:var(--color-accent);opacity:1}.landing-showcase-tab-progress{background:var(--color-accent-fill);transform-origin:0;pointer-events:none;height:2px;position:absolute;top:-1px;left:0;right:0;transform:scaleX(0)}@media (prefers-reduced-motion:reduce){.landing-showcase-track{transition:none}}@media (width<=640px){.landing-showcase{padding-top:24px}.landing-showcase-tab{padding:12px 10px}.landing-showcase-tab-name{font-size:14px}.landing-showcase-tab-num{font-size:11px}}.landing-pricing{max-width:1080px;margin:0 auto;padding:0 28px 80px}.landing-pricing-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:16px;display:grid}@media (width<=768px){.landing-pricing-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}}.landing-pricing-card{flex-direction:column;padding:32px 24px;display:flex}.landing-pricing-recommended{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent)}.landing-pricing-recommended:before{opacity:1}.landing-pricing-recommended:after{content:"";background:repeating-linear-gradient(90deg, var(--color-accent-fill) 0, var(--color-accent-fill) 12px, transparent 12px, transparent 16px);border-radius:0 0 2px 2px;height:3px;position:absolute;top:-1px;left:10%;right:10%}.landing-pricing-badge{letter-spacing:.16em;color:var(--color-accent);background:var(--color-accent-glow);border:1px solid var(--color-accent-dim);border-radius:100px;align-self:flex-start;align-items:center;gap:6px;margin-bottom:16px;padding:5px 14px;font-size:10px;font-weight:700;display:inline-flex}.landing-pricing-badge:before{content:"";background:var(--color-accent-fill);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}.landing-pricing-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:16px;font-size:28px}.landing-pricing-price-block{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.landing-pricing-original{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text-dim);text-decoration:line-through;-webkit-text-decoration-color:var(--color-text-dim);text-decoration-color:var(--color-text-dim);font-size:32px;text-decoration-thickness:2px}.landing-pricing-period{letter-spacing:.08em;color:var(--color-text-dim);font-size:16px}.landing-pricing-free{letter-spacing:.14em;color:var(--color-accent);align-items:center;gap:8px;padding:6px 0;font-size:13px;font-weight:700;display:inline-flex}.landing-pricing-free:before{content:"";background:var(--color-accent-fill);border-radius:2px;flex-shrink:0;width:4px;height:18px}.landing-pricing-current{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-size:40px;line-height:1}.landing-pricing-period-standalone{letter-spacing:.14em;color:var(--color-text-muted);font-size:11px;font-weight:700}.landing-pricing-clients{letter-spacing:.06em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);margin-bottom:20px;padding-bottom:20px;font-size:13px;font-weight:700}.landing-pricing-features{flex-direction:column;flex:1;gap:12px;margin-bottom:28px;list-style:none;display:flex}.landing-pricing-features li{color:var(--color-text-muted);padding-left:20px;font-size:14px;line-height:1.5;position:relative}.landing-pricing-features li:before{content:"";border:2px solid var(--color-accent-fill);opacity:.7;border-radius:50%;width:8px;height:8px;position:absolute;top:6px;left:0}.landing-pricing-recommended .landing-pricing-features li:before{background:var(--color-accent-fill);opacity:.5}.landing-pricing-cta{justify-content:center;width:100%}.landing-pricing-recommended .landing-pricing-cta{box-shadow:var(--shadow-accent)}.landing-feedback{background:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.landing-feedback-inner{text-align:center;max-width:1080px;margin:0 auto;padding:64px 28px}.landing-feedback-icon{background:var(--color-accent-glow);border:1px solid var(--color-accent-dim);width:56px;height:56px;color:var(--color-accent);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.landing-feedback h2{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:10px;font-size:32px}.landing-feedback p{color:var(--color-text-muted);max-width:480px;margin:0 auto 28px;font-size:15px;line-height:1.6}.landing-cta{text-align:center;max-width:1080px;margin:0 auto;padding:80px 28px}.landing-cta h2{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:12px;font-size:42px}.landing-cta p{color:var(--color-text-muted);margin-bottom:32px;font-size:15px}.landing-footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-dim);letter-spacing:.04em;flex-direction:column;align-items:center;gap:10px;padding:24px 28px;font-size:13px;display:flex}.landing-footer .legal-footer-link{color:var(--color-text-dim)}.landing-footer-contact-link{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);border-radius:var(--radius-sm);padding:6px 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s}.landing-footer-contact-link:hover{color:var(--color-accent);background:var(--color-accent-ghost)}.landing-sheets{max-width:1080px;margin:0 auto;padding:0 28px 80px}.landing-sheets-title{margin-bottom:14px}.landing-sheets-sub{color:var(--color-text-muted);text-align:center;max-width:560px;margin:0 auto 48px;font-size:15px;line-height:1.6}.landing-sheets-compare{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:24px;display:grid}@media (width<=860px){.landing-sheets-compare{grid-template-columns:1fr;gap:16px;max-width:480px;margin:0 auto}}.landing-sheets-col{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;padding:24px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.landing-sheets-col>*{z-index:1;position:relative}.landing-sheets-col-old{background:var(--color-surface-2)}.landing-sheets-col-old:after{content:"";pointer-events:none;background-image:linear-gradient(var(--color-border) 1px, transparent 1px), linear-gradient(90deg, var(--color-border) 1px, transparent 1px);opacity:.35;z-index:0;background-position:-1px -1px;background-size:32px 32px;position:absolute;inset:0}.landing-sheets-col-new{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent)}.landing-sheets-col-new:before{content:"";background:repeating-linear-gradient(90deg, var(--color-accent-fill) 0, var(--color-accent-fill) 12px, transparent 12px, transparent 16px);z-index:2;border-radius:0 0 2px 2px;height:3px;position:absolute;top:-1px;left:24px;right:24px}.landing-sheets-col-header{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;margin-bottom:18px;padding-bottom:16px;display:flex}.landing-sheets-col-tag{letter-spacing:.16em;color:var(--color-text-dim);background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:3px 8px;font-size:10px;font-weight:700}.landing-sheets-col-tag-new{color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.landing-sheets-col-name{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text-dim);font-size:24px;line-height:1}.landing-sheets-col-name-new{color:var(--color-text)}.landing-sheets-list{flex-direction:column;flex:1;list-style:none;display:flex}.landing-sheets-list li{align-items:center;gap:14px;padding:14px 0;font-size:14px;line-height:1.5;display:flex}.landing-sheets-list li+li{border-top:1px dashed var(--color-border)}.landing-sheets-cell-ref{letter-spacing:.12em;color:var(--color-text-dim);background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:center;flex-shrink:0;min-width:30px;padding:3px 7px;font-size:10px;font-weight:700}.landing-sheets-old-text{color:var(--color-text-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--color-text-dim);text-decoration-color:var(--color-text-dim);text-underline-offset:2px;text-decoration-thickness:2px}.landing-sheets-list-new li{color:var(--color-text);font-weight:500}.landing-sheets-marker{background:var(--color-accent-fill);border-radius:2px;flex-shrink:0;width:3px;height:20px}.landing-sheets-arrow{color:var(--color-accent);place-items:center;padding:0 4px;display:grid}@media (width<=860px){.landing-sheets-arrow{padding:4px 0;transform:rotate(90deg)}}.landing-faq{max-width:880px;margin:0 auto;padding:80px 28px}.landing-faq-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.landing-faq-item{position:relative}.landing-faq-details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.landing-faq-details[open]{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent)}.landing-faq-details[open]:before{content:"";background:repeating-linear-gradient(90deg, var(--color-accent-fill) 0, var(--color-accent-fill) 12px, transparent 12px, transparent 16px);pointer-events:none;border-radius:0 0 2px 2px;height:3px;position:absolute;top:-1px;left:24px;right:24px}.landing-faq-summary{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px 24px;list-style:none;transition:background .15s;display:grid}.landing-faq-summary::-webkit-details-marker{display:none}.landing-faq-summary:hover{background:var(--color-accent-ghost)}.landing-faq-summary:focus-visible{background:var(--color-accent-ghost);box-shadow:inset 0 0 0 2px var(--color-accent-dim)}.landing-faq-num{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-dim);background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:center;min-width:32px;padding:4px 9px;font-size:13px;transition:color .15s,border-color .15s,background .15s}.landing-faq-details[open] .landing-faq-num{color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.landing-faq-question{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);font-size:15px;font-weight:600;line-height:1.35}.landing-faq-toggle{border:1px solid var(--color-border);width:32px;height:32px;color:var(--color-text-muted);background:var(--color-surface-2);border-radius:50%;place-items:center;transition:color .15s,border-color .15s,background .15s,transform .2s;display:grid}.landing-faq-details[open] .landing-faq-toggle{color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill);transform:rotate(180deg)}.landing-faq-toggle-close,.landing-faq-details[open] .landing-faq-toggle-open{display:none}.landing-faq-details[open] .landing-faq-toggle-close{display:block}.landing-faq-answer{color:var(--color-text-muted);max-width:68ch;padding:0 24px 24px 74px;font-size:15px;line-height:1.65}@media (width<=640px){.landing-faq{padding:64px 28px}.landing-faq-summary{grid-template-columns:auto 1fr auto;gap:12px;padding:18px}.landing-faq-question{letter-spacing:.04em;font-size:14px}.landing-faq-answer{padding:0 18px 20px;font-size:14px}.landing-faq-details[open]:before{left:18px;right:18px}}.landing-sheets-cta-wrap{justify-content:center;margin-top:48px;display:flex}.notification-bell-wrap,.notification-bell-btn{position:relative}.notification-badge{background:var(--color-accent-fill);min-width:16px;height:16px;color:var(--color-accent-on-fill);font-family:var(--font-body);text-align:center;letter-spacing:0;box-shadow:0 0 0 2px var(--color-bg);border-radius:8px;padding:0 4px;font-size:10px;font-weight:800;line-height:16px;position:absolute;top:-2px;right:-2px}.notification-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);z-index:100;width:340px;max-width:calc(100vw - 32px);animation:.12s ease-out notification-fade-in;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 8px 32px #00000073}@keyframes notification-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.notification-header{border-bottom:1px solid var(--color-border);background:var(--color-surface-2);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.notification-header-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text);text-transform:uppercase;font-size:15px}.notification-mark-all{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:10px;font-weight:700;transition:color .12s}.notification-mark-all:hover{color:var(--color-accent)}.notification-list{max-height:420px;overflow-y:auto}.notification-empty{text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-dim);padding:24px 14px;font-size:12px}.notification-item{border:none;border-bottom:1px solid var(--color-border-subtle);cursor:pointer;text-align:left;background:0 0;align-items:flex-start;gap:10px;width:100%;padding:10px 14px;transition:background .12s;display:flex;position:relative}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:var(--color-surface-2)}.notification-item.unread{background:var(--color-accent-ghost)}.notification-item.unread:hover{background:var(--color-accent-glow)}.notification-item-icon{border-radius:var(--radius-sm);background:var(--color-surface-3);width:28px;height:28px;color:var(--color-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.notification-item.unread .notification-item-icon{color:var(--color-accent)}.notification-item-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-item-text{color:var(--color-text);word-break:break-word;font-size:13px;line-height:1.35}.notification-item-time{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-dim);font-size:10px;font-weight:700}.notification-item-dot{background:var(--color-accent);border-radius:50%;flex-shrink:0;align-self:center;width:7px;height:7px}@media (width<=480px){.notification-dropdown{width:calc(100vw - 24px);right:-8px}}.app-sidebar{width:var(--sidebar-width);background:var(--color-sidebar-bg);border-right:1px solid var(--color-border);z-index:20;flex-direction:column;padding:16px 0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.app-sidebar-brand{padding:0 22px 16px}.app-sidebar-nav{flex-direction:column;gap:2px;padding:22px 10px 8px;display:flex}.app-sidebar-nav-divider{background:var(--color-border);height:1px;margin:10px 14px}.app-sidebar-prefs{padding:12px 0 6px}.app-sidebar-section-label{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-dim);align-items:center;gap:10px;margin:0 0 10px;padding:0 22px;font-size:10px;font-weight:700;display:flex}.app-sidebar-section-label span{flex-shrink:0}.app-sidebar-section-label:after{content:"";background:var(--color-border);flex:1;height:1px}.app-sidebar-item{width:100%;color:var(--color-text-muted);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:11px 14px;font-size:12px;font-weight:700;transition:background .15s,color .15s;display:flex;position:relative}.app-sidebar-item:before{content:"";background:var(--color-accent-fill);opacity:0;border-radius:0 2px 2px 0;width:3px;transition:opacity .15s,transform .15s;position:absolute;top:9px;bottom:9px;left:-2px;transform:translate(-4px)}.app-sidebar-item:hover{background:var(--color-sidebar-hover);color:var(--color-text)}.app-sidebar-item:hover:before,.app-sidebar-item.active:before{opacity:1;transform:translate(0)}.app-sidebar-item.active{background:var(--color-sidebar-hover);color:var(--color-text)}.app-sidebar-item-icon{color:var(--color-text-dim);transition:color .15s;display:flex}.app-sidebar-item:hover .app-sidebar-item-icon,.app-sidebar-item.active .app-sidebar-item-icon{color:var(--color-accent)}.app-sidebar-item-label{flex:1;min-width:0}.app-sidebar-row{color:var(--color-text-muted);align-items:center;gap:12px;padding:8px 22px;display:flex}.app-sidebar-row-icon{color:var(--color-text-dim);flex-shrink:0;display:flex}.app-sidebar-row-label{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;flex:1;font-size:11px;font-weight:700}.app-sidebar-unit-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-shrink:0;display:flex;overflow:hidden}.app-sidebar-unit-btn{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-dim);background:var(--color-surface-2);border-right:1px solid var(--color-border);cursor:pointer;padding:3px 8px;font-size:10px;font-weight:700;transition:color .12s,background .12s}.app-sidebar-unit-btn:last-child{border-right:none}.app-sidebar-unit-btn:hover{color:var(--color-text)}.app-sidebar-unit-btn.active{color:var(--color-accent-on-fill);background:var(--color-accent-fill)}.app-sidebar-bottom{flex-direction:column;gap:12px;margin-top:auto;padding:12px 10px 4px;display:flex}.app-sidebar-bottom-stripe{opacity:.4;margin:0 -10px}.app-sidebar-item-danger{color:var(--color-danger)}.app-sidebar-item-danger:before{background:var(--color-danger)}.app-sidebar-item-danger:hover{background:var(--color-danger-dim);color:var(--color-danger)}.app-sidebar-item-danger .app-sidebar-item-icon,.app-sidebar-item-danger:hover .app-sidebar-item-icon{color:var(--color-danger)}@media (width>=1100px){.has-app-sidebar{padding-left:var(--sidebar-width)}.has-app-sidebar header .lang-switch,.has-app-sidebar header .theme-toggle{display:none}}.home{background:var(--color-bg);flex-direction:column;min-height:100%;display:flex}.home-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:10;position:sticky;top:0}.home-header-inner{justify-content:space-between;align-items:center;max-width:820px;min-height:72px;margin:0 auto;padding:16px 28px;display:flex}.home-header-actions{align-items:center;gap:10px;display:flex}.home-menu-wrap{position:relative}.home-menu-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);z-index:100;min-width:220px;padding:6px;animation:.12s ease-out menu-fade-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 32px #00000073}@keyframes menu-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.home-menu-item{width:100%;color:var(--color-text-muted);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;font-size:12px;font-weight:700;transition:background .12s,color .12s;display:flex}.home-menu-item:hover{background:var(--color-surface-2);color:var(--color-text)}.home-menu-item-danger{color:var(--color-danger)}.home-menu-item-danger:hover{color:var(--color-danger);background:var(--color-danger-dim)}.home-menu-divider{background:var(--color-border);height:1px;margin:4px 0}.home-menu-row{color:var(--color-text-muted);align-items:center;gap:10px;padding:8px 12px;display:flex}.home-menu-row-label{letter-spacing:.08em;text-transform:uppercase;flex:1;font-size:12px;font-weight:700}.home-unit-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-shrink:0;display:flex;overflow:hidden}.home-unit-toggle-btn{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-dim);background:var(--color-surface-2);border-right:1px solid var(--color-border);cursor:pointer;padding:3px 8px;font-size:10px;font-weight:700;transition:color .12s,background .12s}.home-unit-toggle-btn:last-child{border-right:none}.home-unit-toggle-btn:hover{color:var(--color-text)}.home-unit-toggle-btn.active{color:var(--color-accent-on-fill);background:var(--color-accent-fill)}.home-menu-lang-badge{background:var(--color-surface-2);color:var(--color-text-muted);font-family:var(--font-body);letter-spacing:.06em;border-radius:var(--radius-sm);border:1px solid var(--color-border);cursor:pointer;padding:3px 10px;font-size:11px;font-weight:700;transition:border-color .12s,color .12s}.home-menu-lang-badge:hover{border-color:var(--color-text-muted);color:var(--color-text)}.home-main{width:100%;max-width:820px;margin:0 auto;padding:36px 28px 48px}.home-hero{justify-content:space-between;align-items:baseline;margin-bottom:24px;display:flex}.home-heading{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-size:42px;line-height:1}.home-count{font-family:var(--font-body);letter-spacing:.1em;color:var(--color-text-muted);background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);padding:5px 12px;font-size:13px;font-weight:600}.home-toolbar{align-items:center;gap:12px;margin-bottom:28px;display:flex}.home-search-wrap{flex:1;position:relative}.search-icon{color:var(--color-text-dim);pointer-events:none;width:18px;height:18px;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.home-search{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);width:100%;color:var(--color-text);outline:none;padding:14px 18px 14px 46px;font-size:15px;transition:border-color .2s,box-shadow .2s}.home-search::placeholder{color:var(--color-text-dim)}.home-search:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.home-empty{text-align:center;color:var(--color-text-muted);flex-direction:column;align-items:center;gap:12px;padding:56px 0;display:flex}.home-empty-icon{color:var(--color-text-dim);margin-bottom:4px}.home-empty-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text-muted);font-size:24px}.home-empty-sub{color:var(--color-text-dim);font-size:14px}.client-list{flex-direction:column;gap:6px;list-style:none;display:flex}.client-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:16px;padding:16px 18px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex;position:relative}.client-card:before{content:"";background:var(--color-accent-fill);opacity:0;border-radius:0 2px 2px 0;width:3px;transition:opacity .2s;position:absolute;top:12px;bottom:12px;left:0}.client-card:hover{border-color:var(--color-accent-dim);background:var(--color-surface-2);box-shadow:var(--shadow-accent)}.client-card:hover:before{opacity:1}.client-avatar{border-radius:var(--radius);background:var(--color-surface-3);width:44px;height:44px;color:var(--color-accent);font-family:var(--font-display);border:1px solid var(--color-border);flex-shrink:0;place-items:center;font-size:22px;display:grid;overflow:hidden}.client-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.client-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.client-name{color:var(--color-text);font-size:16px;font-weight:600}.client-since{letter-spacing:.1em;color:var(--color-text-dim);font-size:11px;font-weight:600}.client-arrow{color:var(--color-text-dim);flex-shrink:0;transition:color .2s,transform .2s}.client-card:hover .client-arrow{color:var(--color-accent);transform:translate(2px)}.client-delete{color:var(--color-text-dim);border-radius:var(--radius-sm);opacity:0;flex-shrink:0;align-items:center;padding:8px;transition:color .15s,background .15s;display:flex}.client-card:hover .client-delete{opacity:1}.client-delete:hover{color:var(--color-danger);background:var(--color-danger-dim)}.home-filter{border:1px solid var(--color-border);border-radius:var(--radius);flex-shrink:0;display:flex;overflow:hidden}.home-filter-btn{letter-spacing:.08em;color:var(--color-text-dim);background:var(--color-surface);border-right:1px solid var(--color-border);padding:10px 14px;font-size:11px;font-weight:700;transition:color .15s,background .15s}.home-filter-btn:last-child{border-right:none}.home-filter-btn:hover{color:var(--color-text-muted);background:var(--color-surface-2)}.home-filter-btn.active{color:var(--color-accent-on-fill);background:var(--color-accent-fill)}.client-card.inactive{opacity:.55}.client-name-row{align-items:center;gap:8px;display:flex}.client-inactive-badge{letter-spacing:.1em;color:var(--color-text-dim);background:var(--color-surface-3);border-radius:var(--radius-sm);flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:700}@media (width>=1100px){.home-header .home-brand,.home-menu-wrap{display:none}.home-header-inner{justify-content:flex-end}}.confirm-dialog{text-align:center;max-width:380px;padding:28px 24px 20px}.confirm-dialog-icon{margin-bottom:12px}.confirm-dialog-icon--warning{color:var(--color-warning)}.confirm-dialog-icon--danger{color:var(--color-danger)}.confirm-dialog-title{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-text);margin-bottom:8px;font-size:18px}.confirm-dialog-text{color:var(--color-text-muted);margin-bottom:20px;font-size:13px;line-height:1.5}.confirm-dialog-btn{letter-spacing:.08em;border-radius:var(--radius);padding:8px 16px;font-size:12px;font-weight:700;transition:opacity .15s}.confirm-dialog-btn:hover{opacity:.85}.confirm-dialog-btn--warning{color:#000;background:var(--color-warning)}.confirm-dialog-btn--danger{color:#fff;background:var(--color-danger)}.body-metrics{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.body-metrics-bar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:10px;padding:10px 16px;display:flex}.body-metrics-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);font-size:10px;font-weight:700}.body-metrics-fields{gap:0;display:flex}.body-metrics-field{flex-direction:column;flex:1;gap:6px;padding:14px 16px;display:flex}.body-metrics-field+.body-metrics-field{border-left:1px solid var(--color-border-subtle)}.body-metrics-field-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-dim);font-size:10px;font-weight:700}.body-metrics-input-wrap{align-items:baseline;gap:4px;display:flex}.body-metrics-input{width:80px;font-size:22px;font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);background:0 0;border:none;outline:none;padding:0}.body-metrics-input::placeholder{color:var(--color-text-dim);opacity:.4}.body-metrics-unit{color:var(--color-text-dim);letter-spacing:.04em;font-size:12px;font-weight:600}.body-metrics-lock{color:var(--color-text-dim);opacity:.75;outline:none;align-self:center;margin-left:4px;display:inline-flex;position:relative}.body-metrics-lock:hover,.body-metrics-lock:focus-visible{opacity:1;color:var(--color-text)}.body-metrics-lock:after{content:attr(data-tooltip);background:var(--color-surface-3);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:10;padding:6px 10px;font-size:11px;font-weight:600;transition:opacity .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000040}.body-metrics-lock:hover:after,.body-metrics-lock:focus-visible:after{opacity:1}.note-editor{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.note-editor-bar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:10px;padding:10px 16px;display:flex}.note-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);font-size:10px;font-weight:700}.note-textarea{resize:none;width:100%;min-height:200px;color:var(--color-text);background:0 0;border:none;outline:none;padding:18px;font-size:15px;line-height:1.7;display:block;overflow:hidden}.note-textarea::placeholder{color:var(--color-text-dim)}.crop-backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:210;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.crop-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(92vw,640px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.crop-header{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:baseline;gap:12px;padding:14px 18px;display:flex}.crop-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text);font-size:11px;font-weight:700}.crop-hint{color:var(--color-text-dim);font-size:11px}.crop-container{background:#000;height:min(60vh,460px);position:relative}.crop-zoom{border-top:1px solid var(--color-border-subtle);color:var(--color-text-dim);align-items:center;gap:10px;padding:12px 18px;display:flex}.crop-zoom-slider{appearance:none;background:var(--color-surface-3);cursor:pointer;border-radius:2px;outline:none;flex:1;height:4px}.crop-zoom-slider::-webkit-slider-thumb{appearance:none;background:var(--color-accent-fill);cursor:grab;border:none;border-radius:50%;width:16px;height:16px;transition:box-shadow .15s}.crop-zoom-slider::-webkit-slider-thumb:hover{box-shadow:var(--shadow-accent)}.crop-zoom-slider::-moz-range-thumb{background:var(--color-accent-fill);cursor:grab;border:none;border-radius:50%;width:16px;height:16px}.crop-actions{border-top:1px solid var(--color-border-subtle);justify-content:flex-end;gap:8px;padding:14px 18px;display:flex}.crop-btn-cancel,.crop-btn-skip,.crop-btn-confirm{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:7px 16px;font-size:11px;font-weight:700;transition:background .15s,opacity .15s}.crop-btn-cancel{color:var(--color-text-muted);background:0 0}.crop-btn-cancel:hover{color:var(--color-text);background:var(--color-surface-3)}.crop-btn-skip{color:var(--color-text-muted);background:var(--color-surface-3)}.crop-btn-skip:hover{color:var(--color-text)}.crop-btn-confirm{color:var(--color-accent-on-fill);background:var(--color-accent-fill)}.crop-btn-confirm:hover{background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.img-gallery{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.img-gallery-header{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:10px;padding:10px 16px;display:flex}.img-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);flex:1;font-size:10px;font-weight:700}.img-upload-btn{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-radius:var(--radius-sm);border:none;padding:5px 12px;font-size:11px;font-weight:700;transition:background .15s,box-shadow .15s}.img-upload-btn:hover{background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.img-drop-zone{min-height:80px;transition:background .15s;position:relative}.img-drop-zone.empty{cursor:pointer}.img-drop-zone.dragging{background:var(--color-accent-ghost)}.img-drop-hint{color:var(--color-text-dim);flex-direction:column;align-items:center;gap:12px;padding:36px 16px;display:flex}.img-drop-hint svg{opacity:.4}.img-drop-hint p{font-size:13px}.img-drop-hint span{color:var(--color-accent);text-underline-offset:3px;cursor:pointer;text-decoration:underline}.img-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;padding:14px;display:grid;position:relative}.img-thumb-wrap{aspect-ratio:1;border-radius:var(--radius);background:var(--color-surface-2);cursor:pointer;border:1px solid var(--color-border-subtle);transition:border-color .2s;position:relative;overflow:hidden}.img-thumb-wrap:hover{border-color:var(--color-accent-dim)}.img-thumb{object-fit:cover;width:100%;height:100%;transition:transform .2s;display:block}.img-thumb-wrap:hover .img-thumb{transform:scale(1.05)}.img-thumb-delete{color:#fff;border-radius:var(--radius-sm);opacity:0;background:#000000b3;place-items:center;width:24px;height:24px;transition:opacity .15s,background .15s;display:grid;position:absolute;top:6px;right:6px}.img-thumb-wrap:hover .img-thumb-delete{opacity:1}.img-thumb-delete:hover{background:var(--color-danger)}.img-thumb-confirm{border-radius:var(--radius);background:#000000d1;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.img-thumb-confirm-text{letter-spacing:.1em;text-transform:uppercase;color:var(--color-danger);font-size:11px;font-weight:700}.img-thumb-confirm-yes{letter-spacing:.1em;color:#fff;background:var(--color-danger);border-radius:var(--radius-sm);padding:4px 16px;font-size:11px;font-weight:700;transition:opacity .15s}.img-thumb-confirm-yes:hover{opacity:.85}.img-thumb-confirm-no{letter-spacing:.1em;color:var(--color-text-muted);border-radius:var(--radius-sm);padding:4px 16px;font-size:11px;font-weight:700;transition:color .15s}.img-thumb-confirm-no:hover{color:#fff}.img-drop-overlay{background:var(--color-accent-ghost);border:2px dashed var(--color-accent);border-radius:var(--radius);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);place-items:center;font-size:12px;font-weight:700;display:grid;position:absolute;inset:0}.img-lightbox{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;cursor:zoom-out;background:#000000eb;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.img-lightbox-close{color:#fff;border-radius:var(--radius);background:#ffffff14;place-items:center;width:40px;height:40px;transition:background .15s;display:grid;position:absolute;top:16px;right:20px}.img-lightbox-close:hover{background:#ffffff26}.img-lightbox-img{object-fit:contain;border-radius:var(--radius);max-width:90vw;max-height:80vh;box-shadow:var(--shadow-lg);cursor:default}.img-lightbox-nav{color:#fff;border-radius:var(--radius);cursor:pointer;background:#ffffff14;place-items:center;width:44px;height:44px;transition:background .15s,opacity .15s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.img-lightbox-nav:hover{background:#ffffff26}.img-lightbox-nav:disabled{opacity:.25;cursor:default}.img-lightbox-prev{left:20px}.img-lightbox-next{right:20px}.img-lightbox-name{color:var(--color-text-dim);letter-spacing:.04em;font-size:12px;font-weight:500}.img-lightbox-counter{opacity:.6;margin-left:10px}.img-lightbox-cat{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-radius:var(--radius-sm);margin-right:10px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.img-template-select{letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;padding:4px 10px;font-size:11px;font-weight:700;transition:border-color .15s}.img-template-select:hover{border-color:var(--color-accent-dim)}.img-cat-section+.img-cat-section{border-top:1px solid var(--color-border-subtle)}.img-cat-bar{background:var(--color-surface);align-items:center;gap:10px;padding:10px 16px;display:flex}.img-cat-bar--alt{background:var(--color-surface-2)}.img-cat-stripe{background:var(--color-accent);border-radius:2px;width:3px;height:14px;display:inline-block}.img-cat-name{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text);flex:1;font-size:11px;font-weight:700}.img-cat-count{font-family:var(--font-display,monospace);letter-spacing:.08em;color:var(--color-text-dim);font-size:11px;font-weight:700}.img-cat-add{border-radius:var(--radius-sm);background:var(--color-accent-fill);width:24px;height:24px;color:var(--color-accent-on-fill);border:none;place-items:center;transition:background .15s,box-shadow .15s;display:grid}.img-cat-add:hover{background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.img-cat-grid{padding-top:4px}.img-thumb-chip{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-radius:var(--radius-sm);pointer-events:none;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 36px);padding:2px 7px;font-size:9px;font-weight:700;position:absolute;top:6px;left:6px;overflow:hidden}.img-thumb-cat-btn{letter-spacing:.08em;text-transform:uppercase;color:#fff;border-radius:var(--radius-sm);opacity:0;background:#000000b3;align-items:center;gap:4px;padding:3px 8px;font-size:9px;font-weight:700;transition:opacity .15s,background .15s;display:inline-flex;position:absolute;bottom:6px;left:6px}.img-thumb-wrap:hover .img-thumb-cat-btn{opacity:1}.img-thumb-cat-btn:hover{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.img-thumb-cat-select{border-radius:var(--radius-sm);border:1px solid var(--color-accent);background:var(--color-surface);color:var(--color-text);padding:4px 6px;font-size:11px;font-weight:600;position:absolute;bottom:6px;left:6px;right:6px}.save-tpl-dialog{text-align:center;max-width:420px;padding:28px 24px 20px}.save-tpl-form{text-align:left;margin-top:16px}.save-tpl-label{display:block}.save-tpl-label-text{letter-spacing:.14em;color:var(--color-text-muted);margin-bottom:6px;font-size:10px;font-weight:700;display:block}.save-tpl-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,background .15s}.save-tpl-input::placeholder{color:var(--color-text-dim)}.save-tpl-input:focus-visible{border-color:var(--color-accent-fill);background:var(--color-surface-2,var(--color-surface));outline:none}.save-tpl-dialog .field-error{margin-top:8px}.rs-section{position:relative}.rs-schedule{flex-direction:column;gap:16px;display:flex}.rs-type-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.rs-type-label{letter-spacing:.12em;color:var(--color-text-dim);font-size:10px;font-weight:700}.rs-type-value{color:var(--color-text-muted);font-size:12px;font-weight:600}.rs-segmented{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);display:flex;overflow:hidden}.rs-seg-btn{letter-spacing:.06em;color:var(--color-text-dim);white-space:nowrap;padding:6px 14px;font-size:11px;font-weight:700;transition:background .15s,color .15s}.rs-seg-btn:hover:not(.active){background:var(--color-surface-2);color:var(--color-text-muted)}.rs-seg-btn.active{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.rs-numbered-config{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.rs-cycle-label{color:var(--color-text-muted);font-size:11px;font-weight:600}.rs-cycle-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:52px;color:var(--color-text);text-align:center;padding:4px 8px;font-size:13px;font-weight:600;transition:border-color .15s}.rs-cycle-input:focus{border-color:var(--color-accent-fill);outline:none}.rs-cycle-value{color:var(--color-text);font-size:13px;font-weight:600}.rs-order-toggle{border-radius:var(--radius);color:var(--color-text-dim);background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:600;transition:border-color .15s,color .15s;display:flex}.rs-order-toggle:hover:not(.readonly){border-color:var(--color-text-dim);color:var(--color-text-muted)}.rs-order-toggle.on{border-color:var(--color-accent);color:var(--color-accent)}.rs-order-toggle.readonly{cursor:default}.rs-order-dot{background:var(--color-border);border-radius:50%;width:8px;height:8px;transition:background .15s}.rs-order-toggle.on .rs-order-dot{background:var(--color-accent)}.rs-labels-section{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rs-labels-title{letter-spacing:.12em;color:var(--color-text-dim);margin-right:4px;font-size:10px;font-weight:700}.rs-label-group{align-items:center;gap:2px;display:flex}.rs-label-delete{border-radius:var(--radius-sm);color:var(--color-text-dim);place-items:center;padding:3px;transition:color .15s,background .15s;display:grid}.rs-label-delete:hover{color:var(--color-danger);background:var(--color-danger-dim)}.rs-label-add{border:1px dashed var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;transition:border-color .15s,color .15s;display:flex}.rs-label-add:hover{border-color:var(--color-accent);color:var(--color-accent)}.rs-label-chip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-muted);cursor:pointer;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;transition:border-color .15s;display:flex}.rs-label-chip:hover:not(.readonly){border-color:var(--color-text-dim)}.rs-label-chip.readonly{cursor:default}.rs-label-input{background:var(--color-surface-2);border:1px solid var(--color-accent-fill);border-radius:var(--radius-sm);width:90px;color:var(--color-text);outline:none;padding:3px 8px;font-size:11px;font-weight:600}.rs-grid-wrapper{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.rs-grid{gap:0;display:grid}.rs-grid-header{display:contents}.rs-grid-col-label{text-align:center;letter-spacing:.1em;color:var(--color-text-dim);border-bottom:1px solid var(--color-border);background:var(--color-surface-2);padding:10px 4px;font-size:10px;font-weight:700}.rs-grid-slot-label{letter-spacing:.1em;color:var(--color-text-dim);border-right:1px solid var(--color-border-subtle);align-items:center;padding:8px 10px;font-size:10px;font-weight:700;display:flex}.rs-grid-cell{border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);cursor:pointer;justify-content:center;align-items:center;min-height:40px;padding:6px 4px;transition:background .12s;display:flex}.rs-grid-cell:hover:not(.readonly){background:var(--color-surface-2)}.rs-grid-cell.readonly{cursor:default}.rs-grid-cell:last-child{border-right:none}.rs-pill{letter-spacing:.06em;border-radius:12px;justify-content:center;align-items:center;width:100%;max-width:48px;height:24px;font-size:9px;font-weight:700;transition:background .15s,color .15s,transform .1s;display:inline-flex}.rs-pill.off{background:var(--color-surface-3);color:var(--color-text-dim)}.rs-grid-cell:not(.readonly) .rs-pill.off:hover{background:var(--color-border)}.rs-pill.on{background:var(--color-accent-fill);color:var(--color-accent-on-fill);box-shadow:0 0 8px var(--color-accent-glow)}.rs-grid-cell:not(.readonly) .rs-pill.on:hover{transform:scale(1.05)}.rs-rest-label{letter-spacing:.1em;color:var(--color-text-dim);opacity:.5;text-align:center;border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);padding:6px 4px;font-size:9px;font-weight:700}.rs-grid-corner{background:var(--color-surface-2);border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border-subtle);padding:10px 4px}.rs-empty{text-align:center;color:var(--color-text-dim);flex-direction:column;align-items:center;gap:8px;padding:20px;font-size:13px;display:flex}.exercise-picker-backdrop{align-items:flex-start;padding:6vh 16px 4vh}.exercise-picker{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);outline:none;flex-direction:column;width:100%;max-width:720px;max-height:88vh;animation:.18s ease-out xpIn;display:flex;overflow:hidden}@keyframes xpIn{0%{opacity:0;transform:scale(.97)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.xp-header{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px 14px;display:flex}.xp-title-wrap{align-items:center;gap:12px;display:flex}.xp-stripe{background:var(--color-accent-fill);border-radius:1.5px;flex-shrink:0;width:3px;height:22px}.xp-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text);font-size:24px;font-weight:400;line-height:1}.xp-count{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-dim);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;margin-left:4px;padding:2px 8px;font-size:13px}.xp-header-actions{align-items:center;gap:10px;display:flex}.xp-lang-toggle{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:2px;padding:2px;display:inline-flex}.xp-lang-btn{font-family:var(--font-body);letter-spacing:.14em;color:var(--color-text-dim);font-variant-numeric:tabular-nums;text-align:center;background:0 0;border-radius:2px;min-width:34px;padding:4px 10px;font-size:10px;font-weight:700;transition:color .12s,background .12s}.xp-lang-btn:hover{color:var(--color-text)}.xp-lang-btn-active{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.xp-lang-btn-active:hover{background:var(--color-accent-fill-hover);color:var(--color-accent-on-fill)}.xp-lang-btn:focus-visible{outline:2px solid var(--color-accent-fill);outline-offset:1px}.xp-close{width:32px;height:32px;color:var(--color-text-dim);border-radius:var(--radius-sm);place-items:center;transition:color .15s,background .15s;display:grid}.xp-close:hover{color:var(--color-text);background:var(--color-surface-2)}.xp-close:focus-visible{outline:2px solid var(--color-accent-fill);outline-offset:1px}.xp-search-wrap{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;padding:14px 22px;display:flex;position:relative}.xp-search-icon{color:var(--color-text-dim);pointer-events:none;position:absolute;left:36px}.xp-search{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:14px;font-family:var(--font-body);flex:1;padding:10px 44px 10px 38px;transition:border-color .15s,box-shadow .15s}.xp-search:focus{border-color:var(--color-accent-fill);box-shadow:0 0 0 3px var(--color-accent-ghost);outline:none}.xp-search::placeholder{color:var(--color-text-dim)}.xp-filters{border-bottom:1px solid var(--color-border-subtle);flex-direction:column;gap:10px;padding:14px 22px 16px;display:flex}.xp-filter-row{align-items:flex-start;gap:14px;display:flex}.xp-filter-label{letter-spacing:.14em;width:72px;color:var(--color-text-dim);text-transform:uppercase;font-size:10px;font-weight:700;font-family:var(--font-body);flex-shrink:0;padding-top:6px}.xp-chip-rail{flex-wrap:wrap;flex:1;gap:6px;display:flex}.xp-chip{border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:var(--radius-sm);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700;font-family:var(--font-body);white-space:nowrap;background:0 0;padding:5px 10px;transition:background .12s,color .12s,border-color .12s}.xp-chip:hover{color:var(--color-text);border-color:var(--color-text-dim)}.xp-chip-active{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill)}.xp-chip-active:hover{background:var(--color-accent-fill-hover);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill-hover)}.xp-chip:focus-visible{outline:2px solid var(--color-accent-fill);outline-offset:1px}.xp-list-wrap{overscroll-behavior:contain;flex:1;min-height:180px;overflow-y:auto}.xp-list-wrap::-webkit-scrollbar{width:6px}.xp-list-wrap::-webkit-scrollbar-track{background:0 0}.xp-list-wrap::-webkit-scrollbar-thumb{background:var(--color-scrollbar);border-radius:3px}.xp-list{margin:0;padding:0;list-style:none}.xp-empty{text-align:center;color:var(--color-text-dim);letter-spacing:.02em;padding:48px 22px;font-size:13px}.xp-group+.xp-group{border-top:1px solid var(--color-border-subtle)}.xp-group-header{background:var(--color-surface-2);letter-spacing:.18em;color:var(--color-text-muted);text-transform:uppercase;font-size:10px;font-weight:700;font-family:var(--font-body);z-index:1;border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:10px;padding:10px 22px;display:flex;position:sticky;top:0}.xp-group-tick{background:var(--color-accent-fill);border-radius:1px;flex-shrink:0;width:6px;height:6px;display:inline-block}.xp-group-count{color:var(--color-text-dim);letter-spacing:.08em;font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.xp-group-list{margin:0;padding:0;list-style:none}.xp-row{text-align:left;cursor:pointer;width:100%;color:var(--color-text);font-family:var(--font-body);background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:12px;padding:11px 22px;transition:background .1s;display:flex}.xp-row+.xp-row{border-top:1px solid var(--color-border-subtle)}.xp-row-marker{background:0 0;border-radius:1.5px;flex-shrink:0;width:3px;height:18px;transition:background .12s}.xp-row-name{letter-spacing:.005em;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.xp-row-equip{letter-spacing:.14em;color:var(--color-text-dim);text-transform:uppercase;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;flex-shrink:0;padding:3px 7px;font-size:9px;font-weight:700}.xp-row:hover,.xp-row-highlighted{background:var(--color-surface-2);border-left-color:var(--color-accent-fill)}.xp-row-highlighted .xp-row-marker{background:var(--color-accent-fill)}.xp-row:focus-visible{background:var(--color-surface-2);border-left-color:var(--color-accent-fill);outline:none}.xp-manual-wrap{border-top:1px solid var(--color-border);background:var(--color-surface-2)}.xp-row-manual{padding:14px 22px}.xp-row-marker-manual{background:var(--color-accent-ghost);width:20px;height:20px;color:var(--color-accent-fill);border-radius:50%;place-items:center;display:grid}.xp-row-name-manual{color:var(--color-text);font-size:13px;font-style:italic}.xp-row-equip-manual{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill);font-style:normal}.xp-row-manual:hover,.xp-row-manual.xp-row-highlighted{background:var(--color-surface-3)}.xp-row-manual.xp-row-highlighted .xp-row-marker-manual{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.xp-trigger{background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius);width:100%;color:var(--color-text-muted);font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;align-items:center;gap:8px;padding:11px 18px;font-size:12px;font-weight:700;transition:color .15s,border-color .15s,background .15s,box-shadow .15s;display:flex}.xp-trigger:hover{color:var(--color-text);border-color:var(--color-accent-fill);background:var(--color-surface);box-shadow:var(--shadow-accent);border-style:solid}.xp-trigger-icon{width:20px;height:20px;color:var(--color-accent-fill);background:var(--color-accent-ghost);border-radius:50%;flex-shrink:0;place-items:center;transition:background .15s,color .15s;display:grid}.xp-trigger:hover .xp-trigger-icon{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.xp-trigger:focus-visible{border-color:var(--color-accent-fill);box-shadow:0 0 0 3px var(--color-accent-ghost);outline:none}@media (width<=560px){.exercise-picker-backdrop{align-items:stretch;padding:0}.exercise-picker{border:none;border-radius:0;max-width:100%;max-height:100vh}.xp-header,.xp-search-wrap,.xp-filters,.xp-group-header,.xp-row{padding-left:16px;padding-right:16px}.xp-search-icon{left:30px}.xp-filter-row{flex-direction:column;gap:6px}.xp-filter-label{width:auto;padding-top:0}}.bldr-container{flex-direction:column;gap:20px;display:flex}.bldr-header{flex-direction:column;gap:4px;display:flex}.bldr-header-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bldr-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.bldr-edit-btn,.bldr-save-btn,.bldr-cancel-btn{border-radius:var(--radius);letter-spacing:.1em;padding:8px 16px;font-size:11px;font-weight:700;transition:background .15s,color .15s,border-color .15s}.bldr-edit-btn{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.bldr-edit-btn:hover{background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.bldr-save-btn{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.bldr-save-btn:hover{background:var(--color-accent-fill-hover)}.bldr-cancel-btn{background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border)}.bldr-cancel-btn:hover{color:var(--color-text);border-color:var(--color-text-dim)}.bldr-tag{letter-spacing:.14em;color:var(--color-accent);margin-bottom:2px;font-size:10px;font-weight:700}.bldr-name{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);cursor:pointer;border-radius:var(--radius-sm);font-size:34px;line-height:1;transition:color .15s}.bldr-name:hover{color:var(--color-accent)}.bldr-name-readonly{cursor:default}.bldr-name-readonly:hover{color:var(--color-text)}.bldr-name-readonly,.bldr-name-readonly:hover{cursor:default;color:var(--color-text)}.bldr-name-input{font-family:var(--font-display);letter-spacing:.03em;background:var(--color-surface);border:1px solid var(--color-accent-fill);border-radius:var(--radius-sm);outline:none;width:100%;padding:2px 6px;font-size:34px;line-height:1}.bldr-field{border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:0 0;border:1px solid #0000;padding:6px 8px;font-size:14px;transition:border-color .15s,background .15s}.bldr-field:focus{border-color:var(--color-accent-fill);background:var(--color-surface-2);outline:none}.bldr-field:hover:not(:focus):not([readonly]){border-color:var(--color-border)}.bldr-field[readonly]{cursor:default}.bldr-field[readonly]:focus{background:0 0;border-color:#0000}.bldr-field-name{font-weight:600}.bldr-field-num{text-align:center;width:48px}.bldr-move-btn,.bldr-delete-btn{border-radius:var(--radius-sm);color:var(--color-text-dim);place-items:center;padding:5px;transition:color .15s,background .15s;display:grid}.bldr-move-btn:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-3)}.bldr-move-btn:disabled{opacity:.25;cursor:default}.bldr-delete-btn:hover{color:var(--color-danger);background:var(--color-danger-dim)}.bldr-add-form{gap:8px;display:flex}.bldr-add-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);flex:1;padding:10px 14px;font-size:14px;transition:border-color .15s}.bldr-add-input:focus{border-color:var(--color-accent-fill);outline:none}.bldr-add-input::placeholder{color:var(--color-text-dim)}.bldr-add-btn{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius);letter-spacing:.1em;align-items:center;gap:6px;padding:10px 18px;font-size:12px;font-weight:700;transition:background .15s,box-shadow .15s,opacity .15s;display:flex}.bldr-add-btn:hover:not(:disabled){background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.bldr-add-btn:disabled{opacity:.4;cursor:default}.rb-count{color:var(--color-text-dim);margin-top:2px;font-size:12px;font-weight:500}.rb-exercise-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto}.rb-list-header{border-bottom:1px solid var(--color-border);letter-spacing:.12em;color:var(--color-text-dim);align-items:center;padding:10px 14px;font-size:10px;font-weight:700;display:grid}.rb-exercise-row{border-bottom:1px solid var(--color-border-subtle);align-items:center;padding:6px 14px;transition:background .12s;display:grid}.rb-exercise-row:last-child{border-bottom:none}.rb-exercise-row:hover{background:var(--color-surface-2)}.rb-row-num{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text-dim);font-size:16px;font-weight:700}.rb-col-sets,.rb-col-reps{text-align:center}.rb-list-header .rb-col-notes{padding-left:8px}.rb-field-reps{text-align:center;width:100%}.rb-field-notes{color:var(--color-text-muted);font-size:13px}.rb-field-notes::placeholder{color:var(--color-text-dim);font-style:italic}.rb-col-actions{justify-content:flex-end;align-items:center;gap:2px;display:flex}.rb-col-custom{justify-content:center;align-items:center;display:flex}.rb-field-custom{text-align:center;width:100%;font-size:13px}.rb-field-custom::placeholder{color:var(--color-text-dim);opacity:.4}.rb-col-custom-header{justify-content:center;align-items:center;display:flex}.rb-col-custom-label{letter-spacing:.12em;color:var(--color-text-dim);cursor:pointer;border-radius:var(--radius-sm);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;max-width:100%;padding:2px 4px;font-size:10px;font-weight:700;transition:color .15s,background .15s;overflow:hidden}.rb-col-custom-label:hover{color:var(--color-accent);background:var(--color-accent-ghost)}.rb-col-custom-label-readonly{cursor:default;display:inline-block}.rb-col-custom-label-readonly:hover{color:var(--color-text-dim);background:0 0}.rb-col-rename-input{letter-spacing:.08em;text-align:center;text-transform:uppercase;width:64px;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-accent-fill);border-radius:var(--radius-sm);outline:none;padding:2px 4px;font-size:10px;font-weight:700}.rb-col-menu{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:140px;padding:4px;animation:.12s ease-out rb-menu-in;position:fixed;transform:translate(-50%)}@keyframes rb-menu-in{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.rb-col-menu-item{width:100%;color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;padding:7px 10px;font-size:12px;font-weight:600;transition:background .12s,color .12s;display:flex}.rb-col-menu-item:hover{background:var(--color-surface-2);color:var(--color-text)}.rb-col-menu-item--danger:hover{color:var(--color-danger);background:var(--color-danger-dim)}.rb-col-add-wrap{justify-content:center;align-items:center;display:flex;position:relative}.rb-add-col-btn{width:22px;height:22px;color:var(--color-text-dim);border:1px dashed var(--color-border);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:color .15s,border-color .15s,background .15s;display:grid}.rb-add-col-btn:hover{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-ghost)}.rb-col-popover{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:180px;padding:10px;animation:.12s ease-out rb-menu-in;position:fixed;transform:translate(-50%)}.rb-col-popover-label{letter-spacing:.12em;color:var(--color-text-dim);text-transform:uppercase;margin-bottom:8px;padding-left:2px;font-size:10px;font-weight:700}.rb-col-presets{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.rb-col-preset{letter-spacing:.06em;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:5px 10px;font-size:11px;font-weight:700;transition:background .12s,border-color .12s,color .12s}.rb-col-preset:hover{background:var(--color-accent-ghost);border-color:var(--color-accent);color:var(--color-accent)}.rb-col-custom-form{display:flex}.rb-col-custom-input{width:100%;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;padding:6px 8px;font-size:12px;transition:border-color .15s}.rb-col-custom-input:focus{border-color:var(--color-accent-fill)}.rb-col-custom-input::placeholder{color:var(--color-text-dim)}.rb-cell-ro{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;padding:5px 6px;font-size:13px;line-height:1.4;display:block;overflow:hidden}.rb-cell-ro-num{text-align:center;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.rb-cell-ro-notes{color:var(--color-text-muted);white-space:normal;font-size:12.5px}.rb-cell-ro-empty{color:var(--color-text-dim);opacity:.55}.rb-col-custom-label-ro{cursor:default}.rb-col-custom-label-ro:hover{color:var(--color-text-dim);background:0 0}.rb-col-resizable{white-space:nowrap;text-overflow:ellipsis;min-width:0;position:relative;overflow:hidden}.rb-col-resize-handle{cursor:col-resize;z-index:2;-webkit-user-select:none;user-select:none;touch-action:none;width:7px;position:absolute;top:0;bottom:0;right:0}.rb-col-resize-handle:after{content:"";background:var(--color-accent-dim);border-radius:1px;width:1px;transition:background .15s,width .15s,left .15s;position:absolute;top:15%;bottom:15%;left:3px}.rb-col-resize-handle:hover:after,.rb-col-resize-handle:active:after{background:var(--color-accent-fill);width:2px;left:2px}.rb-col-sets .bldr-field-num{width:100%}.rb-empty{color:var(--color-text-dim);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;font-size:14px;display:flex}.db-daygroup-bar{align-items:center;gap:6px;display:flex;overflow-x:auto}.db-daygroup-tab{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:4px;transition:border-color .15s;display:flex;overflow:hidden}.db-daygroup-tab.active{border-color:var(--color-accent)}.db-daygroup-tab-btn{letter-spacing:.06em;color:var(--color-text-muted);white-space:nowrap;flex-direction:column;gap:4px;padding:8px 12px;font-size:12px;font-weight:700;display:flex}.db-daygroup-tab.active .db-daygroup-tab-btn{color:var(--color-text)}.db-daygroup-label{cursor:pointer}.db-daygroup-label-input{background:var(--color-surface-2);border:1px solid var(--color-accent-fill);border-radius:var(--radius-sm);color:var(--color-text);outline:none;width:120px;padding:1px 4px;font-size:12px;font-weight:700}.db-daygroup-days{gap:2px;display:flex}.db-day-chip{width:18px;height:18px;color:var(--color-text-dim);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:9px;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.db-day-chip.on{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.db-day-chip:hover:not(.on):not(.taken){background:var(--color-surface-3)}.db-day-chip.taken{opacity:.2;cursor:default}.db-day-chip.readonly{cursor:default}.db-day-chip.readonly:hover:not(.on){background:0 0}.db-daygroup-delete{color:var(--color-text-dim);flex-shrink:0;padding:4px 6px;transition:color .15s}.db-daygroup-delete:hover{color:var(--color-danger)}.db-daygroup-add-btn{border-radius:var(--radius);background:var(--color-surface);border:1px dashed var(--color-border);width:32px;height:32px;color:var(--color-text-dim);flex-shrink:0;place-items:center;transition:border-color .15s,color .15s;display:grid}.db-daygroup-add-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.db-add-variants-btn{border:1px dashed var(--color-border);border-radius:var(--radius);letter-spacing:.1em;color:var(--color-text-dim);background:0 0;align-self:flex-start;align-items:center;gap:6px;padding:8px 14px;font-size:11px;font-weight:700;transition:border-color .15s,color .15s;display:flex}.db-add-variants-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.db-add-daygroup-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:14px;display:flex}.db-add-daygroup-label{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:0 0;padding:8px 12px;font-size:14px;transition:border-color .15s}.db-add-daygroup-label:focus{border-color:var(--color-accent-fill);outline:none}.db-add-daygroup-label::placeholder{color:var(--color-text-dim)}.db-day-picker{gap:4px;display:flex}.db-day-picker-btn{border-radius:var(--radius);letter-spacing:.06em;color:var(--color-text-dim);background:var(--color-surface-2);border:1px solid var(--color-border);padding:6px 10px;font-size:11px;font-weight:700;transition:background .15s,color .15s,border-color .15s}.db-day-picker-btn.selected{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill)}.db-day-picker-btn:hover:not(.selected):not(:disabled){border-color:var(--color-text-dim)}.db-day-picker-btn:disabled{opacity:.25;cursor:default}.db-add-daygroup-actions{gap:8px;display:flex}.db-add-daygroup-cancel{letter-spacing:.1em;color:var(--color-text-dim);padding:10px 18px;font-size:12px;font-weight:700;transition:color .15s}.db-add-daygroup-cancel:hover{color:var(--color-text)}.db-option-tabs{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:4px;padding:6px 14px;display:flex}.db-option-tab{border-radius:var(--radius);align-items:center;gap:2px;transition:background .15s;display:flex;overflow:hidden}.db-option-tab.active{background:var(--color-accent-fill)}.db-option-tab-btn{letter-spacing:.06em;color:var(--color-text-dim);padding:4px 10px;font-size:11px;font-weight:700;transition:color .15s}.db-option-tab.active .db-option-tab-btn{color:var(--color-accent-on-fill)}.db-option-tab-btn:hover{color:var(--color-text)}.db-option-tab-delete{color:var(--color-text-dim);padding:4px;transition:color .15s}.db-option-tab.active .db-option-tab-delete{color:var(--color-accent-on-fill)}.db-option-tab-delete:hover{color:var(--color-danger)}.db-option-add-btn{border-radius:var(--radius);width:24px;height:24px;color:var(--color-text-dim);place-items:center;transition:color .15s,background .15s;display:grid}.db-option-add-btn:hover{color:var(--color-accent);background:var(--color-surface-3)}.db-add-option-link{letter-spacing:.06em;color:var(--color-text-dim);border-top:1px solid var(--color-border-subtle);align-items:center;gap:6px;padding:8px 14px;font-size:11px;font-weight:600;transition:color .15s;display:flex}.db-add-option-link:hover{color:var(--color-accent)}.db-macro-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:20px;padding:14px 18px;display:flex}.db-macro-item{flex-direction:column;gap:2px;display:flex}.db-macro-label{letter-spacing:.14em;color:var(--color-text-dim);text-transform:uppercase;font-size:9px;font-weight:700}.db-macro-value{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);font-size:22px;line-height:1}.db-macro-value.highlight{color:var(--color-accent)}.db-macro-unit{color:var(--color-text-dim);font-size:12px;font-family:var(--font-body);letter-spacing:0}.db-meal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.db-meal-header{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:12px;padding:12px 14px;display:flex}.db-meal-name{color:var(--color-text);cursor:pointer;border-radius:var(--radius-sm);padding:2px 6px;font-size:15px;font-weight:700;transition:color .15s}.db-meal-name:hover{color:var(--color-accent)}.db-meal-name-readonly{cursor:default}.db-meal-name-readonly:hover{color:var(--color-text)}.db-meal-name-input{background:var(--color-surface-2);border:1px solid var(--color-accent-fill);border-radius:var(--radius-sm);color:var(--color-text);outline:none;padding:2px 6px;font-size:15px;font-weight:700}.db-meal-macros{color:var(--color-text-dim);gap:12px;margin-left:auto;font-size:11px;font-weight:600;display:flex}.db-meal-macro-val{color:var(--color-text-muted)}.db-meal-actions{align-items:center;gap:2px;display:flex}.db-item-header{border-bottom:1px solid var(--color-border-subtle);letter-spacing:.12em;color:var(--color-text-dim);grid-template-columns:32px 1fr 80px 64px 64px 64px 64px 44px;align-items:center;padding:8px 14px;font-size:9px;font-weight:700;display:grid}.db-item-row{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:32px 1fr 80px 64px 64px 64px 64px 44px;align-items:center;padding:4px 14px;transition:background .12s;display:grid}.db-item-row:last-child{border-bottom:none}.db-item-row:hover{background:var(--color-surface-2)}.db-row-num{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text-dim);font-size:14px;font-weight:700}.db-item-text{color:var(--color-text);padding:5px 6px;font-size:13px}.db-item-text-dim{color:var(--color-text-muted);font-size:12px}.db-item-text-num{color:var(--color-text-muted);font-size:13px}.db-field{padding:5px 6px;font-size:13px}.db-field-qty{color:var(--color-text-muted);font-size:12px}.db-item-delete-btn{border-radius:var(--radius-sm);color:var(--color-text-dim);justify-self:center;place-items:center;padding:4px;transition:color .15s,background .15s;display:grid}.db-item-delete-btn:hover{color:var(--color-danger);background:var(--color-danger-dim)}.db-add-item-form{border-top:1px solid var(--color-border-subtle);gap:6px;padding:10px 14px;display:flex}.db-add-item-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:0 0;flex:1;padding:6px 10px;font-size:13px;transition:border-color .15s}.db-add-item-input:focus{border-color:var(--color-accent-fill);outline:none}.db-add-item-input::placeholder{color:var(--color-text-dim)}.db-add-item-input-qty{width:80px}.db-add-item-btn{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius-sm);letter-spacing:.08em;align-items:center;gap:4px;padding:6px 12px;font-size:11px;font-weight:700;transition:background .15s,opacity .15s;display:flex}.db-add-item-btn:hover:not(:disabled){background:var(--color-accent-fill-hover)}.db-add-item-btn:disabled{opacity:.4;cursor:default}.db-notes{flex-direction:column;gap:6px;display:flex}.db-notes-header{justify-content:space-between;align-items:center;display:flex}.db-notes-label{letter-spacing:.14em;color:var(--color-text-dim);text-transform:uppercase;font-size:9px;font-weight:700}.db-notes-display{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);white-space:pre-wrap;padding:12px 14px;font-size:13px;line-height:1.5}.db-notes-empty{color:var(--color-text-dim);font-style:italic}.db-notes-textarea{background:var(--color-surface);border:1px solid var(--color-accent-fill);border-radius:var(--radius-lg);font-size:13px;font-family:var(--font-body);color:var(--color-text);resize:vertical;min-height:60px;padding:12px 14px;line-height:1.5;transition:border-color .15s}.db-notes-textarea:focus{border-color:var(--color-accent-fill);outline:none}.db-notes-textarea::placeholder{color:var(--color-text-dim)}.db-notes-timestamp{color:var(--color-text-dim);font-size:11px}.db-empty-items{text-align:center;color:var(--color-text-dim);padding:24px 14px;font-size:13px;font-style:italic}.pc-container{flex-direction:column;gap:24px;display:flex}.pc-header{justify-content:space-between;align-items:flex-start;display:flex}.pc-tag{letter-spacing:.14em;color:var(--color-accent);margin-bottom:6px;font-size:10px;font-weight:700}.pc-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);font-size:34px;line-height:1}.pc-range-bar{background:var(--color-surface-2);border-radius:var(--radius);gap:2px;width:fit-content;padding:3px;display:flex}.pc-range-bar--compact .pc-range-btn{padding:4px 10px;font-size:10px}.pc-range-btn{letter-spacing:.1em;color:var(--color-text-dim);border-radius:var(--radius-sm);padding:7px 14px;font-size:11px;font-weight:700;transition:color .15s,background .15s}.pc-range-btn:hover{color:var(--color-text-muted)}.pc-range-btn.active{background:var(--color-surface-3);color:var(--color-text)}.pc-chart-section{flex-direction:column;gap:8px;display:flex}.pc-chart-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.pc-chart-label{letter-spacing:.14em;color:var(--color-text-dim);font-size:10px;font-weight:700}.pc-chart-stat{align-items:baseline;gap:10px;padding:0 4px;display:flex}.pc-chart-stat-value{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);font-size:18px}.pc-chart-stat-value.loss{color:#4ade80}.pc-chart-stat-value.gain{color:#ff6b6b}.pc-chart-stat-range{color:var(--color-text-dim);font-size:12px;font-weight:500}.pc-chart-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px 8px 8px 0}.pc-tooltip{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 14px}.pc-tooltip-date{color:var(--color-text);margin-bottom:4px;font-size:12px;font-weight:600}.pc-tooltip-row{color:var(--color-text-muted);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.pc-tooltip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.pc-section-divider{padding-top:8px}.pc-empty{color:var(--color-text-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.pc-empty-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text-muted);font-size:22px}.pc-no-data{text-align:center;color:var(--color-text-dim);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:40px 20px;font-size:14px}.measurements{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.measurements-bar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.measurements-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);font-size:10px;font-weight:700}.measurements-template-select select{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;border-radius:4px;padding:4px 24px 4px 8px;font-family:inherit;font-size:12px;font-weight:600}.measurements-template-select select:hover{border-color:var(--color-text-dim)}.measurements-empty{text-align:center;padding:20px 16px}.measurements-empty-text{color:var(--color-text-dim);letter-spacing:.04em;font-size:12px}.measurements-fields{flex-wrap:wrap;gap:0;display:flex}.measurements-field{border-right:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle);flex-direction:column;flex:120px;gap:6px;min-width:100px;padding:14px 16px;display:flex}.measurements-field:last-child{border-right:none}.measurements-field-label{text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-dim);font-size:10px;font-weight:700}.measurements-input-wrap{align-items:baseline;gap:4px;display:flex}.measurements-input{width:70px;font-size:22px;font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);background:0 0;border:none;outline:none;padding:0}.measurements-input::placeholder{color:var(--color-text-dim);opacity:.4}.measurements-unit{color:var(--color-text-dim);letter-spacing:.04em;font-size:12px;font-weight:600}.measurements-lock{color:var(--color-text-dim);opacity:.75;outline:none;align-self:center;margin-left:4px;display:inline-flex;position:relative}.measurements-lock:hover,.measurements-lock:focus-visible{opacity:1;color:var(--color-text)}.measurements-lock:after{content:attr(data-tooltip);background:var(--color-surface-3);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:10;padding:6px 10px;font-size:11px;font-weight:600;transition:opacity .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000040}.measurements-lock:hover:after,.measurements-lock:focus-visible:after{opacity:1}.cip{flex-direction:column;gap:16px;max-width:720px;display:flex}.cip--loading{color:var(--color-text-muted);flex-direction:row;justify-content:center;align-items:center;gap:10px;padding:80px 0;display:flex}.cip-loading-dot{background:var(--color-text-dim);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite cip-bounce}.cip-loading-dot:nth-child(2){animation-delay:.15s}.cip-loading-dot:nth-child(3){animation-delay:.3s}@keyframes cip-bounce{0%,80%,to{opacity:.45;transform:translateY(0)}40%{opacity:1;background:var(--color-accent);transform:translateY(-6px)}}.cip-head{padding:4px 0 8px}.cip-head-eyebrow{letter-spacing:.22em;color:var(--color-text-dim);align-items:center;gap:10px;margin-bottom:10px;font-size:10px;font-weight:700;display:inline-flex}.cip-head-stripe{background:var(--color-accent-fill);width:28px;height:3px;display:inline-block}.cip-head-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);text-transform:uppercase;margin:0 0 6px;font-size:32px;font-weight:400;line-height:1}.cip-head-sub{color:var(--color-text-muted);max-width:540px;margin:0;font-size:13px;line-height:1.55}.cip .alert-warning svg{flex-shrink:0}.cip-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.cip-card-bar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:12px;min-height:42px;padding:10px 16px;display:flex}.cip-card-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);flex:1;font-size:10px;font-weight:700}.cip-card-meta{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-text-dim);font-feature-settings:"tnum" 1;font-size:13px}.cip-card-body{flex-direction:column;gap:16px;padding:18px 18px 20px;transition:opacity .2s;display:flex}.cip-card-body.is-disabled{opacity:.45}.cip-seg{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);gap:2px;padding:3px;display:flex}.cip-seg-btn{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-dim);border-radius:calc(var(--radius) - 2px);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 12px;font-size:11px;font-weight:700;transition:background .18s,color .18s}.cip-seg-btn:hover:not(:disabled):not(.active){color:var(--color-text-muted);background:var(--color-surface-3)}.cip-seg-btn.active{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #0003}.cip-seg-btn:disabled{cursor:not-allowed}.cip-interval{align-items:center;gap:12px;display:flex}.cip-muted{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-dim);font-size:11px;font-weight:700}.cip-stepper{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);align-items:stretch;display:inline-flex;overflow:hidden}.cip-stepper-btn{width:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:18px;font-weight:600;transition:background .15s,color .15s}.cip-stepper-btn:hover:not(:disabled){background:var(--color-accent-ghost);color:var(--color-accent)}.cip-stepper-btn:disabled{opacity:.3;cursor:not-allowed}.cip-stepper-input{text-align:center;width:50px;color:var(--color-text);font-family:var(--font-display);border:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);font-feature-settings:"tnum" 1;background:0 0;outline:none;padding:6px 0;font-size:20px}.cip-weekdays{grid-template-columns:repeat(7,1fr);gap:6px;max-width:360px;display:grid}.cip-wd{aspect-ratio:1;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);font-family:var(--font-display);letter-spacing:.04em;cursor:pointer;place-items:center;font-size:16px;transition:background .18s,color .18s,border-color .18s,transform .12s;display:grid;position:relative}.cip-wd:hover:not(:disabled):not(.active){color:var(--color-text);border-color:var(--color-text-dim)}.cip-wd:active:not(:disabled){transform:scale(.96)}.cip-wd.active{background:var(--color-accent-fill);border-color:var(--color-accent-fill);color:var(--color-accent-on-fill);box-shadow:var(--shadow-accent)}.cip-wd:disabled{cursor:not-allowed;opacity:.4}.cip-wd-letter{z-index:1;position:relative}.cip-wd-dot{background:0 0;border-radius:50%;width:4px;height:4px;transition:background .18s;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.cip-wd.active .cip-wd-dot{background:var(--color-accent-on-fill);opacity:.55}.cip-hour{align-items:center;gap:12px;display:flex}.cip-hour-box{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:8px;padding:8px 12px 8px 14px;transition:border-color .15s,background .15s;display:inline-flex;position:relative}.cip-hour-box:hover{border-color:var(--color-text-dim)}.cip-hour-box:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.cip-hour-select{opacity:0;cursor:pointer;border:none;position:absolute;inset:0}.cip-hour-display{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-feature-settings:"tnum" 1;font-size:22px}.cip-hour-caret{color:var(--color-text-dim)}.cip-tz{letter-spacing:.08em;color:var(--color-text-dim);text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.cip-chips{flex-wrap:wrap;gap:8px;padding:14px 16px 16px;transition:opacity .2s;display:flex}.cip-chips.is-disabled{opacity:.45}.cip-chip{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text-muted);letter-spacing:.04em;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 14px 8px 10px;font-size:12px;font-weight:600;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.cip-chip:hover:not(:disabled):not(.on){color:var(--color-text);border-color:var(--color-text-dim)}.cip-chip:disabled{cursor:not-allowed}.cip-chip.on{background:var(--color-accent-ghost);border-color:var(--color-accent);color:var(--color-accent)}.cip-chip-check{border:1.5px solid var(--color-border);border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;transition:all .18s;display:grid}.cip-chip.on .cip-chip-check{background:var(--color-accent-fill);border-color:var(--color-accent-fill);color:var(--color-accent-on-fill)}.cip-actions{flex-wrap:wrap;gap:10px;display:flex}.cip-btn{font-family:var(--font-body);letter-spacing:.14em;text-transform:uppercase;border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:12px;font-weight:700;transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .12s;display:inline-flex}.cip-btn:active:not(:disabled){transform:translateY(1px)}.cip-btn:disabled{opacity:.4;cursor:not-allowed}.cip-btn--primary{background:var(--color-accent-fill);color:var(--color-accent-on-fill)}.cip-btn--primary:hover:not(:disabled){background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.cip-btn--ghost{color:var(--color-text);border-color:var(--color-border);background:0 0}.cip-btn--ghost:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-ghost)}.cip-btn.is-ok{animation:.5s cubic-bezier(.2,.7,.2,1) cip-pulse}@keyframes cip-pulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.cip-empty{color:var(--color-text-dim);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 16px;font-size:13px;font-style:italic;display:flex}.cip-links{margin:0;padding:0;list-style:none}.cip-link{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px 16px;transition:background .18s;display:grid}.cip-link:last-child{border-bottom:none}.cip-link:hover{background:var(--color-surface-2)}.cip-link-date{color:var(--color-text);font-size:13px;font-weight:500}.cip-pill{letter-spacing:.1em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:4px 12px 4px 8px;font-size:10px;font-weight:700;display:inline-flex}.cip-pill-dot{background:currentColor;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 2px #0000}.cip-pill--pending{color:var(--color-warning);background:#e2a30014;border-color:#e2a30047}.cip-pill--pending .cip-pill-dot{animation:1.8s ease-in-out infinite cip-pulse-dot;box-shadow:0 0 0 3px #e2a30026}.cip-pill--submitted{color:var(--color-accent);background:var(--color-accent-ghost);border-color:#e8ff004d}[data-theme=light] .cip-pill--submitted{background:#4a620014;border-color:#4a620038}.cip-pill--expired{color:var(--color-text-dim);background:var(--color-surface-3);border-color:var(--color-border)}@keyframes cip-pulse-dot{0%,to{opacity:1}50%{opacity:.45}}.cip-link-copy{border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:var(--radius);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:6px;padding:6px 10px;font-size:10px;font-weight:700;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.cip-link-copy:hover:not(:disabled){color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-ghost)}.cip-link-copy:disabled{opacity:.35;cursor:not-allowed}.cip-link-copy.is-ok{color:var(--color-accent);border-color:var(--color-accent)}@media (width<=540px){.cip-link{grid-template-rows:auto auto;grid-template-columns:1fr auto}.cip-link-copy{grid-area:1/2/span 2}.cip-weekdays{gap:4px}.cip-wd{font-size:14px}.cip-actions .cip-btn{flex:1}}@media (prefers-reduced-motion:reduce){.cip-btn.is-ok,.cip-loading-dot,.cip-pill--pending .cip-pill-dot{animation:none}}.waivers{max-width:920px;padding:28px 32px}.waivers-loading{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-muted);padding:48px}.waivers-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;padding-bottom:18px;display:flex}.waivers-eyebrow{font-family:var(--font-display);letter-spacing:.16em;color:var(--color-accent);margin-bottom:4px;font-size:11px}.waivers-title{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);text-transform:uppercase;margin:0 0 6px;font-size:32px}.waivers-sub{color:var(--color-text-muted);max-width:520px;margin:0;font-size:13px}.waivers-send-btn{font-family:var(--font-display);letter-spacing:.12em;background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:12px 18px;font-size:13px;transition:background .12s}.waivers-send-btn:hover:not(:disabled){background:var(--color-accent-fill-hover)}.waivers-send-btn:disabled{opacity:.4;cursor:not-allowed}.waivers-error{background:var(--color-danger-dim);color:var(--color-danger);border-radius:var(--radius-sm);margin-bottom:16px;padding:10px 14px;font-size:13px}.waivers-note{color:var(--color-text-muted);background:var(--color-surface);border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle);margin-bottom:16px;padding:12px 14px;font-size:13px}.waivers-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);align-items:stretch;margin-top:8px;padding:0;display:flex;position:relative;overflow:hidden}.waivers-empty-stripe{background:var(--color-accent);width:3px}.waivers-empty-inner{padding:24px 26px}.waivers-empty-eyebrow{font-family:var(--font-display);letter-spacing:.16em;color:var(--color-accent);margin-bottom:6px;font-size:11px}.waivers-empty-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:6px;font-size:22px}.waivers-empty p{color:var(--color-text-muted);max-width:460px;margin:0;font-size:13px}.waivers-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.waivers-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);align-items:flex-start;gap:18px;padding:16px 18px 16px 22px;display:flex;position:relative;overflow:hidden}.waivers-row:before{content:"";background:var(--color-text-dim);width:3px;position:absolute;top:0;bottom:0;left:0}.waivers-row.signed:before{background:var(--color-accent)}.waivers-row.pending:before{background:var(--color-warning)}.waivers-row-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.waivers-row-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.waivers-row-name{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);font-size:18px}.waivers-badge{font-family:var(--font-display);letter-spacing:.14em;border-radius:2px;padding:3px 7px;font-size:10px}.waivers-badge-pending{background:var(--color-warning-dim);color:var(--color-warning);border:1px solid var(--color-warning)}.waivers-badge-signed{background:var(--color-accent-ghost);color:var(--color-accent);border:1px solid var(--color-accent)}.waivers-row-meta{letter-spacing:.08em;color:var(--color-text-muted);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.waivers-row-dot{color:var(--color-text-dim)}.waivers-row-url{font-size:12px}.waivers-row-url a{color:var(--color-text-muted);word-break:break-all;text-decoration:none}.waivers-row-url a:hover{color:var(--color-accent)}.waivers-row-actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.waivers-action{font-family:var(--font-display);letter-spacing:.1em;background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;text-align:center;min-width:92px;padding:6px 10px;font-size:11px;text-decoration:none;transition:background .12s,border-color .12s;display:inline-block}.waivers-action:hover:not(:disabled){background:var(--color-surface-3);border-color:var(--color-text-muted)}.waivers-action:disabled{opacity:.4;cursor:default}.waivers-action-danger{color:var(--color-danger);border-color:var(--color-danger-dim)}.waivers-action-danger:hover:not(:disabled){background:var(--color-danger-dim);border-color:var(--color-danger)}.waivers-modal-backdrop{background:var(--color-backdrop);z-index:200;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.waivers-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:480px;padding:22px;position:relative}.waivers-modal-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.waivers-modal-header h3{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-text);margin:0;font-size:20px}.waivers-modal-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:26px;line-height:1}.waivers-modal-close:hover{color:var(--color-text)}.waivers-modal-sub{color:var(--color-text-muted);margin:0 0 14px;font-size:13px}.waivers-picker{flex-direction:column;gap:6px;max-height:420px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.waivers-picker-item{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;flex-direction:column;gap:3px;width:100%;padding:12px 14px;transition:background .12s,border-color .12s;display:flex}.waivers-picker-item:hover:not(:disabled){background:var(--color-surface-3);border-color:var(--color-accent)}.waivers-picker-item:disabled{opacity:.5;cursor:default}.waivers-picker-name{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);font-size:16px}.waivers-picker-meta{letter-spacing:.1em;color:var(--color-text-muted);text-transform:uppercase;font-size:11px}.cp-layout{background:var(--color-bg);height:100%;display:flex;overflow:hidden}.cp-sidebar{width:var(--sidebar-width);background:var(--color-sidebar-bg);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.cp-sidebar-header{border-bottom:1px solid var(--color-border-subtle);flex-direction:column;gap:12px;padding:16px 14px 14px;display:flex}.cp-back{color:var(--color-text-muted);border-radius:var(--radius-sm);letter-spacing:.08em;align-self:flex-start;align-items:center;gap:5px;padding:6px 8px;font-size:11px;font-weight:600;transition:color .15s,background .15s;display:inline-flex}.cp-back:hover{color:var(--color-accent);background:var(--color-sidebar-hover)}.cp-client-block{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;width:100%;padding:6px 8px;transition:background .15s;display:flex;position:relative}.cp-client-block:hover{background:var(--color-sidebar-hover)}.cp-client-details{flex:1;min-width:0}.cp-client-sub{color:var(--color-text-dim);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:11px;overflow:hidden}.cp-client-edit-icon{color:var(--color-text-dim);opacity:0;flex-shrink:0;transition:opacity .15s}.cp-client-block:hover .cp-client-edit-icon{opacity:1}.cp-client-avatar{border-radius:var(--radius);background:var(--color-accent-fill);width:36px;height:36px;color:var(--color-accent-on-fill);font-family:var(--font-display);flex-shrink:0;place-items:center;font-size:20px;display:grid;overflow:hidden}.cp-client-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.cp-client-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;overflow:hidden}.cp-nav{border-bottom:1px solid var(--color-border-subtle);flex-direction:column;gap:2px;padding:8px;display:flex}.cp-nav-item{color:var(--color-text-dim);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:600;transition:color .15s,background .15s;display:flex;position:relative}.cp-nav-item:hover{color:var(--color-text-muted);background:var(--color-sidebar-hover)}.cp-nav-item.active{color:var(--color-text);background:var(--color-surface-2)}.cp-nav-item.active:before{content:"";background:var(--color-accent-fill);border-radius:0 2px 2px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.cp-nav-item svg{opacity:.6;flex-shrink:0;transition:opacity .15s}.cp-nav-item.active svg{opacity:1}.cp-share-btn{letter-spacing:.1em;width:calc(100% - 16px);color:var(--color-text-dim);border-radius:var(--radius-sm);align-items:center;gap:8px;margin:8px 8px 0;padding:8px 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s;display:flex}.cp-share-btn:hover{color:var(--color-accent);background:var(--color-sidebar-hover)}.cp-share-btn svg{opacity:.6;flex-shrink:0}.cp-share-btn:hover svg{opacity:1}.cp-share-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cp-share-dialog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;width:100%;max-width:440px;padding:24px;box-shadow:0 8px 32px #0003}.cp-share-dialog-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cp-share-dialog-header h3{letter-spacing:.12em;color:var(--color-text);margin:0;font-size:12px;font-weight:700}.cp-share-close{color:var(--color-text-dim);border-radius:4px;padding:4px;transition:color .15s,background .15s}.cp-share-close:hover{color:var(--color-text);background:var(--color-surface-2)}.cp-share-field{gap:6px;margin-bottom:8px;display:flex}.cp-share-url{min-width:0;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;outline:none;flex:1;padding:8px 10px;font-family:inherit;font-size:12px}.cp-share-url:focus{border-color:var(--color-accent)}.cp-share-copy{letter-spacing:.08em;color:var(--color-accent-on-fill);background:var(--color-accent-fill);white-space:nowrap;border-radius:6px;padding:8px 14px;font-size:11px;font-weight:700;transition:opacity .15s}.cp-share-copy:hover{opacity:.85}.cp-share-hint{color:var(--color-text-dim);margin:0 0 12px;font-size:12px}.cp-share-email-btn{letter-spacing:.04em;width:100%;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.cp-share-email-btn:hover:not(:disabled){background:var(--color-surface-3);border-color:var(--color-accent)}.cp-share-email-btn:disabled{opacity:.7;color:var(--color-text-dim)}.cp-share-loading{color:var(--color-text-muted);padding:12px 0;font-size:13px}.cp-share-history-loading{color:var(--color-text-dim);margin-top:14px;font-size:12px}.cp-share-history{border-top:1px solid var(--color-border);margin-top:16px;padding-top:12px}.cp-share-history-title{letter-spacing:.12em;color:var(--color-text-dim);margin:0 0 8px;font-size:11px;font-weight:700}.cp-share-history-list{max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.cp-share-history-item{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;padding:6px 0;font-size:11px;display:flex}.cp-share-history-item:last-child{border-bottom:none}.cp-share-history-method{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text);flex:1;overflow:hidden}.cp-share-history-type{background:var(--color-surface-2);color:var(--color-text-dim);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:10px}.cp-share-history-date{color:var(--color-text-dim);white-space:nowrap}.cp-routine-badge{color:var(--color-text-dim);background:var(--color-surface-3);text-align:center;border-radius:10px;min-width:18px;padding:1px 6px;font-size:10px;font-weight:700}.cp-routine-day-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-dim);background:var(--color-surface-3);white-space:nowrap;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:700}.cp-day-item.active .cp-routine-day-tag{color:var(--color-accent)}.cp-header-actions{align-items:center;gap:8px;display:flex}.cp-unassign-btn{letter-spacing:.1em;color:var(--color-danger);border-radius:var(--radius);border:1px solid var(--color-danger);background:var(--color-surface);align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:700;transition:color .15s,border-color .15s,background .15s;display:flex}.cp-unassign-btn:hover{color:#fff;border-color:var(--color-danger);background:var(--color-danger)}.cp-save-template-btn{letter-spacing:.1em;color:var(--color-text);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:700;transition:color .15s,border-color .15s,background .15s;display:flex}.cp-save-template-btn:hover{color:var(--color-accent-on-fill);border-color:var(--color-accent-fill);background:var(--color-accent-fill)}.cp-add-day{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius);letter-spacing:.1em;align-items:center;gap:8px;margin:14px 12px 6px;padding:10px 14px;font-size:12px;font-weight:700;transition:background .15s,box-shadow .15s;display:flex}.cp-add-day:hover{background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.cp-sidebar-label{letter-spacing:.14em;color:var(--color-text-dim);padding:14px 16px 6px;font-size:10px;font-weight:700}.cp-day-list{flex:1;padding:4px 8px 12px;overflow-y:auto}.cp-day-empty{color:var(--color-text-dim);text-align:center;padding:16px 8px;font-size:13px;font-style:italic}.cp-day-item{border-radius:var(--radius-sm);text-align:left;width:100%;color:var(--color-text-muted);cursor:pointer;align-items:center;gap:10px;padding:9px 12px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:flex;position:relative}.cp-day-item:hover{background:var(--color-sidebar-hover);color:var(--color-text)}.cp-day-item.active{background:var(--color-surface-2);color:var(--color-text)}.cp-day-item.active:before{content:"";background:var(--color-accent-fill);border-radius:0 2px 2px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.cp-day-indicator{background:var(--color-text-dim);border-radius:50%;flex-shrink:0;width:5px;height:5px;transition:background .15s}.cp-day-item.active .cp-day-indicator{background:var(--color-accent);box-shadow:0 0 6px var(--color-accent-glow)}.cp-day-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cp-group{margin-bottom:2px}.cp-group-label{letter-spacing:.12em;color:var(--color-accent);padding:10px 12px 4px;font-size:10px;font-weight:700}.cp-group-header{border-radius:var(--radius-sm);width:100%;color:var(--color-text-muted);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:600;transition:background .12s,color .12s;display:flex}.cp-group-header:hover{background:var(--color-sidebar-hover);color:var(--color-text)}.cp-group-header--year{letter-spacing:.06em;border-top:1px solid var(--color-border-subtle);color:var(--color-accent);border-left:3px solid var(--color-accent-fill);border-radius:0;margin-top:6px;padding:10px 12px 8px;font-size:13px;font-weight:700}.cp-group-header--year:hover{color:var(--color-accent);background:#e8ff000d}.cp-group-header--year .cp-group-count{color:var(--color-accent);background:#e8ff001f}.cp-group-header--month{color:var(--color-text-muted);padding-left:14px}.cp-group-header--month .cp-group-chevron{opacity:.5}.cp-group-header--month:hover .cp-group-chevron{opacity:1}.cp-group-chevron{flex-shrink:0;transition:transform .2s}.cp-group-chevron.open{transform:rotate(90deg)}.cp-group-title{text-align:left;flex:1}.cp-group-count{color:var(--color-text-dim);background:var(--color-surface-3);text-align:center;border-radius:10px;min-width:18px;padding:1px 6px;font-size:10px;font-weight:700}.cp-group--nested{padding-left:10px}.cp-group--nested .cp-group-header{padding:6px 10px;font-size:11px}.cp-day-img-badge{color:var(--color-text-dim);align-items:center;gap:3px;font-size:10px;font-weight:600;display:flex}.cp-sidebar-footer{border-top:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.cp-log-count{letter-spacing:.14em;color:var(--color-text-dim);font-size:10px;font-weight:700}.cp-main{background:var(--color-bg);flex-direction:column;flex:1;gap:24px;padding:32px 40px;display:flex;overflow-y:auto}.cp-main>.alert-error button{color:var(--color-danger);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);margin-left:auto;padding:4px 8px;font-size:12px;font-weight:600;transition:background .15s}.cp-main>.alert-error button:hover{background:#ff47571a}.cp-main .alert-warning svg{flex-shrink:0}.cp-main-header{justify-content:space-between;align-items:flex-start;display:flex}.cp-day-tag{letter-spacing:.14em;color:var(--color-accent);margin-bottom:6px;font-size:10px;font-weight:700}.cp-day-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);margin-bottom:4px;font-size:34px;line-height:1}.cp-last-saved{color:var(--color-text-dim);font-size:12px;font-weight:500}.cp-delete-log{letter-spacing:.1em;color:var(--color-text-dim);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);align-items:center;gap:6px;padding:7px 12px;font-size:11px;font-weight:700;transition:color .15s,border-color .15s,background .15s;display:flex}.cp-delete-log:hover{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-dim)}.cp-no-log{color:var(--color-text-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.cp-no-log-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text-muted);font-size:22px}.cp-client-submitted{background:var(--color-accent-ghost);border:1px solid var(--color-border);border-radius:var(--radius);border-left:none;align-items:center;gap:14px;padding:12px 16px 12px 0;display:flex;position:relative;overflow:hidden}.cp-client-submitted-stripe{background:var(--color-accent-fill);flex-shrink:0;align-self:stretch;width:4px;margin-right:2px}.cp-client-submitted-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cp-client-submitted-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);font-size:10px;font-weight:700}.cp-client-submitted-text{color:var(--color-text);font-size:13px;font-weight:500}.cp-client-submitted-check{color:var(--color-accent);flex-shrink:0}.cp-client-notes{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);position:relative;overflow:hidden}.cp-client-notes:before{content:"";background:var(--color-accent-fill);opacity:.55;width:3px;position:absolute;top:0;bottom:0;left:0}.cp-client-notes-bar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:10px;padding:10px 16px 10px 20px;display:flex}.cp-client-notes-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);flex:1;font-size:10px;font-weight:700}.cp-client-notes-meta{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-text-dim);font-feature-settings:"tnum" 1;font-size:13px}.cp-client-notes-text{white-space:pre-wrap;color:var(--color-text);margin:0;padding:18px 20px;font-size:15px;line-height:1.65}.cp-client-notes-empty{color:var(--color-text-dim);margin:0;padding:18px 20px;font-size:13px;font-style:italic}.cp-save-btn{letter-spacing:.1em;color:var(--color-text-dim);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:700;transition:color .15s,border-color .15s,background .15s,opacity .15s;display:flex}.cp-save-btn:disabled{opacity:.4;cursor:default}.cp-save-btn.dirty{color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.cp-save-btn.dirty:hover:not(:disabled){background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.cp-delete-confirm{border:1px solid var(--color-danger);border-radius:var(--radius);background:var(--color-danger-dim);align-items:center;gap:8px;padding:4px 8px;display:flex}.cp-delete-confirm-text{color:var(--color-danger);white-space:nowrap;font-size:12px;font-weight:600}.cp-delete-confirm-yes{letter-spacing:.1em;color:#fff;background:var(--color-danger);border-radius:var(--radius-sm);padding:5px 10px;font-size:11px;font-weight:700;transition:opacity .15s}.cp-delete-confirm-yes:hover{opacity:.85}.cp-delete-confirm-no{letter-spacing:.1em;color:var(--color-text-muted);border-radius:var(--radius-sm);padding:5px 10px;font-size:11px;font-weight:700;transition:color .15s,background .15s}.cp-delete-confirm-no:hover{color:var(--color-text);background:var(--color-surface-2)}.cp-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;position:relative;overflow:hidden}.cp-empty-stripe{background:var(--color-accent-fill);flex-shrink:0;align-self:stretch;width:3px}.cp-empty-inner{flex-direction:column;flex:1;gap:4px;padding:28px 32px;display:flex}.cp-empty-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);font-size:10px;font-weight:700}.cp-empty-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);margin-top:4px;font-size:38px;line-height:1}.cp-empty-hint{color:var(--color-text-muted);max-width:58ch;margin-top:8px;font-size:13px;line-height:1.5}.cp-empty-actions{gap:10px;margin-top:22px;display:flex}.cp-empty-action{letter-spacing:.12em;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;align-items:center;gap:8px;padding:10px 16px;font-size:11px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:flex}.cp-empty-action:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-ghost)}.cp-empty-action.active{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill)}.cp-empty-action.active:hover{background:var(--color-accent-fill-hover);border-color:var(--color-accent-fill-hover);color:var(--color-accent-on-fill)}.cp-empty-form{gap:8px;margin-top:16px;animation:.18s ease-out cp-empty-slide;display:flex}.cp-empty-input{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);outline:none;flex:1;padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.cp-empty-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.cp-empty-input::placeholder{color:var(--color-text-dim)}.cp-empty-submit{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius);letter-spacing:.12em;cursor:pointer;border:none;padding:10px 18px;font-size:11px;font-weight:700;transition:background .15s,box-shadow .15s,opacity .15s}.cp-empty-submit:hover:not(:disabled){background:var(--color-accent-fill-hover);box-shadow:var(--shadow-accent)}.cp-empty-submit:disabled{opacity:.4;cursor:default}.cp-empty-templates{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;gap:4px;max-height:220px;margin-top:16px;padding:6px;animation:.18s ease-out cp-empty-slide;display:flex;overflow-y:auto}.cp-empty-templates-empty{text-align:center;color:var(--color-text-dim);padding:20px 14px;font-size:12px;font-style:italic}.cp-empty-template{border-radius:var(--radius-sm);text-align:left;color:var(--color-text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:flex}.cp-empty-template:hover{background:var(--color-accent-ghost);color:var(--color-accent)}.cp-empty-template-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cp-empty-template-badge{color:var(--color-text-dim);background:var(--color-surface-3);text-align:center;border-radius:999px;min-width:22px;padding:2px 8px;font-size:10px;font-weight:700}@keyframes cp-empty-slide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cp-sidebar-label-row{justify-content:space-between;align-items:center;gap:8px;padding:14px 16px 6px;display:flex}.cp-sidebar-label-row .cp-sidebar-label{padding:0}.cp-sidebar-add-btn{border-radius:var(--radius-sm);border:1px dashed var(--color-border);width:22px;height:22px;color:var(--color-text-muted);cursor:pointer;background:0 0;place-items:center;padding:0;transition:color .15s,border-color .15s,background .15s;display:grid}.cp-sidebar-add-btn:hover{color:var(--color-accent-on-fill);border-color:var(--color-accent-fill);background:var(--color-accent-fill)}.cp-avatar-section{flex-direction:column;align-items:center;gap:8px;padding-bottom:8px;display:flex}.cp-avatar-preview{background:var(--color-accent-fill);width:72px;height:72px;color:var(--color-accent-on-fill);cursor:pointer;border-radius:50%;place-items:center;transition:box-shadow .15s;display:grid;position:relative;overflow:hidden}.cp-avatar-preview:hover{box-shadow:var(--shadow-accent)}.cp-avatar-preview-img{object-fit:cover;width:100%;height:100%;display:block}.cp-avatar-preview-initial{font-family:var(--font-display);font-size:36px}.cp-avatar-preview-overlay{color:#fff;opacity:0;background:#00000080;place-items:center;transition:opacity .15s;display:grid;position:absolute;inset:0}.cp-avatar-preview:hover .cp-avatar-preview-overlay{opacity:1}.cp-avatar-change-btn{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:10px;font-weight:700;transition:opacity .15s}.cp-avatar-change-btn:hover{opacity:.8}.cp-avatar-picker{border:1px solid var(--color-border-subtle);border-radius:var(--radius);background:var(--color-surface-2);flex-direction:column;gap:10px;margin-bottom:4px;padding:12px;display:flex}.cp-avatar-upload-btn{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-on-fill);background:var(--color-accent-fill);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:700;transition:background .15s;display:flex}.cp-avatar-upload-btn:hover{background:var(--color-accent-fill-hover)}.cp-avatar-remove-btn{letter-spacing:.1em;text-transform:uppercase;color:var(--color-danger);cursor:pointer;background:0 0;border:none;padding:4px;font-size:10px;font-weight:700;transition:opacity .15s}.cp-avatar-remove-btn:hover{opacity:.8}.cp-avatar-picker-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-dim);text-align:center;font-size:10px;font-weight:700}.cp-avatar-picker-grid{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px;display:grid}.cp-avatar-picker-thumb{aspect-ratio:1;border-radius:var(--radius);cursor:pointer;background:var(--color-surface-3);border:2px solid #0000;padding:0;transition:border-color .15s;overflow:hidden}.cp-avatar-picker-thumb:hover{border-color:var(--color-accent-dim)}.cp-avatar-picker-thumb.selected{border-color:var(--color-accent)}.cp-avatar-picker-thumb img{object-fit:cover;width:100%;height:100%;display:block}.cp-sidebar-history{border-top:1px solid var(--color-border-subtle);margin-top:10px;padding:2px 0 4px}.cp-sidebar-history-head{letter-spacing:.14em;width:100%;color:var(--color-text-dim);border-radius:var(--radius-sm);text-align:left;background:0 0;align-items:center;gap:8px;padding:11px 10px 11px 12px;font-size:10px;font-weight:700;transition:color .15s,background .15s;display:flex}.cp-sidebar-history-head:hover{color:var(--color-text);background:var(--color-sidebar-hover)}.cp-sidebar-history-head.open{color:var(--color-text)}.cp-sidebar-history-chevron{opacity:.55;flex-shrink:0;transition:transform .2s,opacity .15s}.cp-sidebar-history-chevron.open{opacity:1;transform:rotate(90deg)}.cp-sidebar-history-head:hover .cp-sidebar-history-chevron{opacity:1}.cp-sidebar-history-eyebrow{flex:1}.cp-sidebar-history-count{letter-spacing:.06em;color:var(--color-text-dim);background:var(--color-surface-3);text-align:center;font-variant-numeric:tabular-nums;border-radius:10px;min-width:26px;padding:2px 7px;font-size:10px;font-weight:700;transition:color .15s,background .15s}.cp-sidebar-history-head.open .cp-sidebar-history-count{color:var(--color-accent);background:var(--color-accent-ghost)}.cp-sidebar-history-body{padding-top:2px;padding-bottom:6px}.cp-sidebar-history-loading,.cp-sidebar-history-empty{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-dim);text-align:center;padding:14px 12px;font-size:11px;font-weight:700}.cp-sidebar-history-error{color:var(--color-danger);flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;display:flex}.cp-sidebar-history-retry{letter-spacing:.14em;color:var(--color-accent);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:4px 10px;font-size:10px;font-weight:700;transition:border-color .15s}.cp-sidebar-history-retry:hover{border-color:var(--color-accent)}.cp-history-item{border-radius:var(--radius-sm);width:100%;color:var(--color-text-muted);text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:3px 1fr auto;align-items:center;gap:10px;margin:1px 0;padding:8px 10px 8px 0;transition:background .12s,color .12s;display:grid;position:relative}.cp-history-item:hover{background:var(--color-sidebar-hover);color:var(--color-text)}.cp-history-item.active{background:var(--color-surface-2);color:var(--color-text)}.cp-history-item-stripe{background:0 0;border-radius:0 2px 2px 0;width:3px;height:26px;transition:background .15s}.cp-history-item.active .cp-history-item-stripe{background:var(--color-accent-fill);box-shadow:0 0 8px var(--color-accent-glow)}.cp-history-item-date{align-items:baseline;gap:7px;min-width:0;display:flex;overflow:hidden}.cp-history-item-month{letter-spacing:.16em;color:var(--color-text-dim);flex-shrink:0;font-size:9px;font-weight:700}.cp-history-item.active .cp-history-item-month{color:var(--color-accent)}.cp-history-item-day{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);font-variant-numeric:tabular-nums;font-size:18px;line-height:1}.cp-history-item-meta{font-variant-numeric:tabular-nums;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.cp-history-item-weekday{letter-spacing:.16em;color:var(--color-text-dim);font-size:9px;font-weight:700}.cp-history-item-relative{color:var(--color-text-dim);letter-spacing:.02em;font-size:10px;font-style:italic}.history-empty-day{background:var(--color-surface-2);border:1px dashed var(--color-border);border-radius:var(--radius);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-dim);align-items:center;gap:10px;padding:16px 18px;font-size:12px;font-weight:700;display:flex}.history-empty-day-dot{background:var(--color-text-dim);border-radius:50%;flex-shrink:0;width:5px;height:5px}.cp-snapshot-view{flex-direction:column;gap:18px;display:flex}.cp-snapshot-banner{background:var(--color-warning-dim);border:1px solid var(--color-border-subtle);border-radius:var(--radius);align-items:center;gap:16px;padding:16px 20px 16px 22px;display:flex;position:relative;overflow:hidden}.cp-snapshot-banner:after{content:"";opacity:.05;background-image:repeating-linear-gradient(135deg, var(--color-warning) 0 1px, transparent 1px 14px);pointer-events:none;position:absolute;inset:0}.cp-snapshot-banner-stripe{background:var(--color-warning);z-index:1;width:3px;position:absolute;top:0;bottom:0;left:0}.cp-snapshot-banner-main{z-index:1;flex-direction:column;flex:1;gap:4px;min-width:0;display:flex;position:relative}.cp-snapshot-banner-eyebrow{letter-spacing:.22em;color:var(--color-warning);text-transform:uppercase;font-size:10px;font-weight:700}.cp-snapshot-banner-date{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-size:28px;line-height:1}.cp-snapshot-banner-sub{letter-spacing:.16em;color:var(--color-text-dim);text-transform:uppercase;margin-top:2px;font-size:10px;font-weight:700}.cp-snapshot-banner-back{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;z-index:1;flex-shrink:0;align-items:center;gap:7px;padding:9px 14px;font-size:10px;font-weight:700;transition:border-color .15s,color .15s,background .15s;display:inline-flex;position:relative}.cp-snapshot-banner-back:hover{border-color:var(--color-accent);color:var(--color-accent)}.cp-snapshot-stack{flex-direction:column;gap:28px;display:flex}.cp-snapshot-card{position:relative}.cp-snapshot-divider{align-items:center;gap:12px;margin-bottom:12px;display:flex}.cp-snapshot-divider-num{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-dim);font-variant-numeric:tabular-nums;font-size:14px}.cp-snapshot-divider-rule{background:var(--color-border-subtle);flex:1;height:1px}.cp-snapshot-meta{border-top:1px solid var(--color-border-subtle);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-dim);align-items:center;gap:8px;padding-top:12px;font-size:10px;font-weight:700;display:flex}.cp-snapshot-meta-dot{background:var(--color-accent);border-radius:50%;width:4px;height:4px}@media (width<=720px){.cp-snapshot-banner{flex-direction:column;align-items:flex-start;gap:12px}.cp-snapshot-banner-back{align-self:flex-end}.cp-snapshot-banner-date{font-size:24px}}.cp-emails{flex-direction:column;gap:10px;margin-top:16px;display:flex}.cp-emails-header{justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:2px;display:flex}.cp-emails-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-size:11px;font-weight:700}.cp-emails-counter{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text-dim);font-feature-settings:"tnum" 1;align-items:baseline;gap:1px;font-size:15px;line-height:1;display:inline-flex}.cp-emails-counter-num{color:var(--color-text)}.cp-emails-counter-sep{color:var(--color-border);padding:0 2px}.cp-emails-list{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);margin:0;padding:0;list-style:none;overflow:hidden}.cp-emails-empty{letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--color-text-dim);padding:22px 16px;font-size:11px;font-weight:700;line-height:1.7}.cp-emails-row{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:10px;padding:11px 12px 11px 18px;transition:background .15s;display:flex;position:relative}.cp-emails-row:last-child{border-bottom:none}.cp-emails-row:hover{background:var(--color-surface-3)}.cp-emails-stripe{background:0 0;border-radius:0 2px 2px 0;width:3px;transition:background .2s;position:absolute;top:8px;bottom:8px;left:0}.cp-emails-row--primary{background:var(--color-surface-3)}.cp-emails-row--primary .cp-emails-stripe{background:var(--color-accent-fill);box-shadow:0 0 8px var(--color-accent-glow)}.cp-emails-addr{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-muted);letter-spacing:.005em;font-feature-settings:"tnum" 1;flex:1;font-size:13px;overflow:hidden}.cp-emails-row--primary .cp-emails-addr{color:var(--color-text);font-weight:600}.cp-emails-badge{font-family:var(--font-display);letter-spacing:.14em;background:var(--color-accent-fill);color:var(--color-accent-on-fill);text-transform:uppercase;border-radius:2px;flex-shrink:0;padding:4px 8px 3px;font-size:11px;line-height:1}.cp-emails-row-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.cp-emails-action{letter-spacing:.12em;text-transform:uppercase;border-radius:var(--radius-sm);color:var(--color-text-dim);white-space:nowrap;background:0 0;padding:6px 9px;font-size:10px;font-weight:700;transition:color .15s,background .15s}.cp-emails-action:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-2)}.cp-emails-action--promote:hover:not(:disabled){color:var(--color-accent)}.cp-emails-action--delete:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-dim)}.cp-emails-action:disabled{opacity:.3;cursor:not-allowed}.cp-emails-add{align-items:stretch;gap:8px;display:flex}.cp-emails-add-input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);color:var(--color-text);outline:none;flex:1;padding:10px 12px;font-size:13px;transition:border-color .15s,box-shadow .15s}.cp-emails-add-input::placeholder{color:var(--color-text-dim)}.cp-emails-add-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.cp-emails-add-input:disabled{opacity:.5;cursor:not-allowed}.cp-emails-add-btn{font-family:var(--font-display);letter-spacing:.12em;color:var(--color-text);background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius);text-transform:uppercase;padding:0 20px;font-size:16px;transition:background .15s,border-color .15s,color .15s}.cp-emails-add-btn:hover:not(:disabled){background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill)}.cp-emails-add-btn:disabled{opacity:.4;cursor:not-allowed}.cp-emails-add--full .cp-emails-add-input{border-style:dashed}.cp-emails-error{color:var(--color-danger);margin:0;font-size:12px;font-weight:500}.cp-share-recipients{color:var(--color-text-dim);align-items:baseline;gap:8px;margin:8px 2px 0;font-size:11px;line-height:1.5;display:flex}.cp-share-recipients-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);flex-shrink:0;font-weight:700}.cp-share-recipients-list{word-break:break-word;font-feature-settings:"tnum" 1}.cp-share-no-emails{letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--color-text-dim);background:var(--color-surface-2);border:1px dashed var(--color-border);border-radius:var(--radius);margin:0;padding:14px;font-size:11px;font-weight:700}.mt-count{color:var(--color-text-dim);margin-top:2px;font-size:12px;font-weight:500}.mt-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.mt-row{border-bottom:1px solid var(--color-border-subtle);align-items:center;padding:6px 14px;transition:background .12s;display:grid}.mt-row:last-child{border-bottom:none}.mt-row:hover{background:var(--color-surface-2)}.mt-col-num{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text-dim);font-size:16px;font-weight:700}.mt-col-name{min-width:0}.mt-col-unit{justify-content:center;align-items:center;display:flex}.mt-col-actions{justify-content:flex-end;align-items:center;display:flex}.mt-def-unit{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-dim);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:center;min-width:32px;padding:2px 8px;font-size:10px;font-weight:700}.mt-empty{color:var(--color-text-dim);text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-lg);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;font-size:14px;display:flex}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:transparent;--input-disabled-border-color:transparent;--input-hover-border-color:black;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selecteditem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert();backdrop-filter:invert()}}.annotationLayer{pointer-events:none;transform-origin:0 0;z-index:3;position:absolute;top:0;left:0}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg)translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg)translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg)translateY(-100%)}.annotationLayer canvas{width:100%;height:100%;position:absolute}.annotationLayer section{text-align:initial;pointer-events:auto;box-sizing:border-box;transform-origin:0 0;margin:0;position:absolute}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{width:100%;height:100%;font-size:1em;position:absolute;top:0;left:0}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:#0000;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);border-radius:2px}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{content:"";background-color:canvastext;display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{width:1px;height:80%;left:45%}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;width:50%;height:50%;top:20%;left:30%}.annotationLayer .textWidgetAnnotation input.comb{padding-left:2px;padding-right:0;font-family:monospace}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{width:100%;height:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none;position:absolute}.annotationLayer .popup{max-width:calc(180px * var(--total-scale-factor));box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto;background-color:#ff9;position:absolute}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{margin-left:calc(5px * var(--total-scale-factor));display:inline-block}.annotationLayer .popupContent{margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor));border-top:1px solid #333}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{width:100%;height:100%;position:absolute;top:0;left:0}.annotationLayer .annotationTextContent{opacity:0;color:#0000;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg)translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg)translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg)translate(-100%)}.textLayer{text-align:initial;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2;line-height:1;position:absolute;inset:0;overflow:hidden}.textLayer :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;margin:0;position:absolute}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:0 0}.textLayer .endOfContent{z-index:-1;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{width:0;height:0;display:none;position:absolute;top:0;left:0}.docedit{flex-direction:column;gap:16px;height:100%;min-height:0;display:flex}.docedit-toolbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:16px;padding:12px;display:flex;position:relative}.docedit-toolbar:before{content:"";background:var(--color-accent);width:3px;position:absolute;top:12px;bottom:12px;left:-1px}.docedit-tool-group{gap:6px;padding-left:8px;display:flex}.docedit-tool{font-family:var(--font-display);letter-spacing:.08em;border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;padding:8px 12px;font-size:13px;transition:background .12s,border-color .12s,color .12s}.docedit-tool:hover{background:var(--color-surface-3);border-color:var(--color-text-muted)}.docedit-tool.active{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-color:var(--color-accent-fill)}.docedit-hint{color:var(--color-text-muted);letter-spacing:.02em;flex:1;font-size:12px}.docedit-save{font-family:var(--font-display);letter-spacing:.12em;border-radius:var(--radius-sm);white-space:nowrap;border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text-muted);padding:4px 8px;font-size:11px;transition:color .15s,background .15s,border-color .15s}.docedit-save-saving{color:var(--color-warning);border-color:var(--color-warning)}.docedit-save-saved{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-ghost)}.docedit-save-error{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-dim)}.docedit-count{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-muted);white-space:nowrap;font-size:11px}.docedit-count span{color:var(--color-accent);margin-right:6px;font-size:18px}.docedit-pdf-scroll{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;flex:1;align-items:center;gap:24px;padding:24px;display:flex;overflow:auto}.docedit-page-wrap{flex-direction:column;align-items:stretch;gap:6px;display:flex;position:relative}.docedit-page-label{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-muted);padding-left:4px;font-size:11px}.docedit-page-frame{line-height:0;position:relative;box-shadow:0 6px 28px #0000008c}.docedit-page-frame .react-pdf__Page{display:block;position:relative}.docedit-overlay{z-index:2;cursor:default;position:absolute;inset:0}.docedit-overlay.placing{cursor:crosshair;background:var(--color-accent-ghost);outline:2px dashed var(--color-accent);outline-offset:-2px}.docedit-field{border:2px solid var(--color-accent);background:var(--color-accent-ghost);cursor:move;box-sizing:border-box;justify-content:center;align-items:center;transition:background .12s,box-shadow .12s;display:flex;position:absolute}.docedit-field:hover{background:var(--color-accent-glow)}.docedit-field.selected{background:var(--color-accent-glow);box-shadow:0 0 0 2px var(--color-accent-fill), 0 4px 16px #e8ff0040}.docedit-field-initials{border-style:dashed}.docedit-field-label{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-accent);pointer-events:none;-webkit-user-select:none;user-select:none;background:#0c0c0ed1;border-radius:2px;padding:2px 6px;font-size:11px}.docedit-handle{background:var(--color-accent-fill);border:1.5px solid var(--color-bg);z-index:1;border-radius:2px;position:absolute}.docedit-handle-nw,.docedit-handle-ne,.docedit-handle-se,.docedit-handle-sw{width:14px;height:14px}.docedit-handle-nw{cursor:nwse-resize;top:-7px;left:-7px}.docedit-handle-ne{cursor:nesw-resize;top:-7px;right:-7px}.docedit-handle-se{cursor:nwse-resize;bottom:-7px;right:-7px}.docedit-handle-sw{cursor:nesw-resize;bottom:-7px;left:-7px}.docedit-handle-n,.docedit-handle-s{cursor:ns-resize;width:20px;height:8px;margin-left:-10px;left:50%}.docedit-handle-n{top:-5px}.docedit-handle-s{bottom:-5px}.docedit-handle-e,.docedit-handle-w{cursor:ew-resize;width:8px;height:20px;margin-top:-10px;top:50%}.docedit-handle-e{right:-5px}.docedit-handle-w{left:-5px}.docedit-field-delete{background:var(--color-danger);color:#fff;border:1px solid var(--color-bg);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:16px;line-height:1;display:flex;position:absolute;top:-10px;right:-10px}.docedit-field-delete:hover{filter:brightness(1.1)}.docedit-loading{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-muted);padding:48px}.tpl{background:var(--color-bg);flex-direction:column;min-height:100%;display:flex}.tpl-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:10;position:sticky;top:0}.tpl-header-inner{justify-content:space-between;align-items:center;max-width:1100px;min-height:72px;margin:0 auto;padding:16px 28px;display:flex}.tpl-back{letter-spacing:.08em;color:var(--color-text-muted);align-items:center;gap:6px;font-size:13px;font-weight:700;transition:color .15s;display:flex}.tpl-back:hover{color:var(--color-text)}@media (width>=1100px){.tpl-back{display:none}}.tpl-header-actions{align-items:center;gap:10px;display:flex}.tpl-main{width:100%;max-width:1100px;margin:0 auto;padding:36px 28px 48px}.tpl-heading{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);margin-bottom:8px;font-size:42px;line-height:1}.tpl-subtitle{color:var(--color-text-dim);margin-bottom:28px;font-size:14px;line-height:1.5}.tpl-tabs{border-bottom:1px solid var(--color-border);gap:4px;margin-bottom:24px;padding-bottom:0;display:flex}.tpl-tab{letter-spacing:.08em;color:var(--color-text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:12px 20px;font-size:12px;font-weight:700;transition:color .15s,border-color .15s;display:flex}.tpl-tab:hover{color:var(--color-text-muted)}.tpl-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tpl-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:260px 1fr;gap:0;min-height:500px;display:grid;overflow:hidden}.tpl-sidebar{background:var(--color-surface-2);border-right:1px solid var(--color-border);flex-direction:column;padding:16px 0;display:flex}.tpl-add-form{border-bottom:1px solid var(--color-border-subtle);gap:8px;margin-bottom:8px;padding:0 14px 12px;display:flex}.tpl-add-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:0;color:var(--color-text);flex:1;padding:8px 12px;font-family:inherit;font-size:13px}.tpl-add-input::placeholder{color:var(--color-text-dim);opacity:.5}.tpl-add-btn{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0 10px;transition:background .15s;display:flex}.tpl-add-btn:hover:not(:disabled){background:var(--color-accent-fill-hover)}.tpl-add-btn:disabled{opacity:.4;cursor:default}.tpl-sidebar .field-error{margin:-4px 14px 10px;font-size:12px}.tpl-list-label{letter-spacing:.12em;color:var(--color-text-dim);padding:8px 18px 6px;font-size:10px;font-weight:700}.tpl-list{flex-direction:column;flex:1;gap:2px;padding:0 8px;display:flex;overflow-y:auto}.tpl-empty{color:var(--color-text-dim);text-align:center;padding:16px 10px;font-size:12px}.tpl-list-item{border-radius:var(--radius-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:10px 12px;transition:background .15s;display:flex}.tpl-list-item:hover{background:var(--color-surface-3)}.tpl-list-item.active{background:var(--color-accent-ghost)}.tpl-list-indicator{background:0 0;border-radius:2px;flex-shrink:0;width:3px;height:18px;transition:background .15s}.tpl-list-item.active .tpl-list-indicator{background:var(--color-accent-fill)}.tpl-list-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:600;overflow:hidden}.tpl-list-badge{color:var(--color-text-dim);background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;flex-shrink:0;padding:1px 7px;font-size:10px;font-weight:700}.tpl-sidebar-count{letter-spacing:.1em;color:var(--color-text-dim);border-top:1px solid var(--color-border-subtle);margin-top:8px;padding:12px 18px 0;font-size:10px;font-weight:700}.tpl-content{padding:20px 28px;overflow-y:auto}.tpl-content-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.tpl-delete-btn{letter-spacing:.06em;color:var(--color-text-dim);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:6px 14px;font-size:11px;font-weight:700;transition:all .15s;display:flex}.tpl-delete-btn:hover{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-dim)}.tpl-content-empty{height:100%;min-height:300px;color:var(--color-text-dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.tpl-content-empty p{font-size:14px}.tpl-add-form.tpl-add-form-stack{flex-direction:column;gap:8px}.tpl-file-picker{cursor:pointer;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-muted);text-align:center;padding:10px 12px;font-size:12px;transition:border-color .12s,color .12s;display:block;position:relative}.tpl-file-picker:hover{border-color:var(--color-accent);color:var(--color-text)}.tpl-file-picker input[type=file]{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.tpl-file-picker-label{text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;max-width:100%;display:inline-block;overflow:hidden}.tpl-add-btn.tpl-add-btn-wide{font-family:var(--font-display);letter-spacing:.1em;padding:10px 12px;font-size:13px}.tpl-content-title{flex-direction:column;gap:2px;min-width:0;display:flex}.tpl-content-title-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-size:20px}.tpl-content-title-meta{letter-spacing:.1em;color:var(--color-text-muted);text-transform:uppercase;font-size:11px}.feedback{background:var(--color-bg);flex-direction:column;min-height:100%;display:flex}.feedback-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:10;position:sticky;top:0}.feedback-header-inner{justify-content:space-between;align-items:center;max-width:820px;min-height:72px;margin:0 auto;padding:16px 28px;display:flex}.feedback-header-left{align-items:center;gap:16px;display:flex}.feedback-back{color:var(--color-text-muted);border-radius:var(--radius);align-items:center;padding:8px;transition:color .15s,background .15s;display:flex}.feedback-back:hover{color:var(--color-text);background:var(--color-surface-2)}@media (width>=1100px){.feedback-back{display:none}}.feedback-page-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);font-size:24px;line-height:1}.feedback-main{width:100%;max-width:820px;margin:0 auto;padding:36px 28px 48px}.feedback-toolbar{align-items:center;gap:12px;margin-bottom:28px;display:flex}.feedback-toolbar .home-filter{flex-shrink:0}.feedback-list{flex-direction:column;gap:6px;list-style:none;display:flex}.feedback-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);align-items:flex-start;gap:0;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.feedback-card:hover{border-color:var(--color-accent-dim);box-shadow:var(--shadow-accent)}.feedback-vote{flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:64px;padding:16px 14px;display:flex}.feedback-vote-btn{border-radius:var(--radius);width:36px;height:36px;color:var(--color-text-dim);place-items:center;transition:color .15s,background .15s;display:grid}.feedback-vote-btn:hover{background:var(--color-accent-ghost);color:var(--color-accent)}.feedback-vote-btn.voted{color:var(--color-accent)}.feedback-vote-count{color:var(--color-text);font-size:16px;font-weight:700;line-height:1}.feedback-vote-btn.voted+.feedback-vote-count{color:var(--color-accent)}.feedback-body{cursor:pointer;flex:1;min-width:0;padding:16px 18px 16px 0}.feedback-title-row{align-items:center;gap:8px;margin-bottom:4px;display:flex}.feedback-title{color:var(--color-text);font-size:16px;font-weight:600}.feedback-type-badge{letter-spacing:.1em;border-radius:var(--radius-sm);text-transform:uppercase;flex-shrink:0;padding:2px 8px;font-size:9px;font-weight:700}.feedback-type-badge.feature{color:var(--color-accent);background:var(--color-accent-ghost);border:1px solid var(--color-accent-ghost)}.feedback-type-badge.modification{color:var(--color-warning);background:#e2a3001a;border:1px solid #e2a3001a}.feedback-desc{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.feedback-meta{letter-spacing:.08em;color:var(--color-text-dim);align-items:center;gap:14px;font-size:11px;font-weight:600;display:flex}.feedback-meta-item{align-items:center;gap:5px;display:flex}.feedback-delete-btn{color:var(--color-text-dim);border-radius:var(--radius-sm);opacity:0;align-items:center;padding:6px;transition:color .15s,background .15s,opacity .15s;display:flex;position:absolute;top:12px;right:12px}.feedback-card:hover .feedback-delete-btn{opacity:1}.feedback-delete-btn:hover{color:var(--color-danger);background:var(--color-danger-dim)}.feedback-empty{text-align:center;color:var(--color-text-muted);flex-direction:column;align-items:center;gap:12px;padding:56px 0;display:flex}.feedback-empty-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-text-muted);font-size:24px}.feedback-empty-sub{color:var(--color-text-dim);font-size:14px}.feedback-detail-backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;place-items:center;animation:.15s ease-out fadeIn;display:grid;position:fixed;inset:0}.feedback-detail{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:560px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);box-shadow:var(--shadow-lg);flex-direction:column;padding:0;animation:.2s ease-out modalIn;display:flex}.feedback-detail-header{border-bottom:1px solid var(--color-border);padding:24px 28px 16px}.feedback-detail-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);margin-bottom:6px;font-size:28px}.feedback-detail-desc{color:var(--color-text-muted);white-space:pre-wrap;font-size:14px;line-height:1.6}.feedback-detail-meta{letter-spacing:.08em;color:var(--color-text-dim);align-items:center;gap:14px;margin-top:12px;font-size:11px;font-weight:600;display:flex}.feedback-detail-close{color:var(--color-text-dim);border-radius:var(--radius);padding:8px;transition:color .15s,background .15s;display:flex;position:absolute;top:16px;right:16px}.feedback-detail-close:hover{color:var(--color-text);background:var(--color-surface-2)}.feedback-comments{flex-direction:column;flex:1;gap:12px;padding:16px 28px;display:flex;overflow-y:auto}.feedback-comments-label{letter-spacing:.12em;color:var(--color-text-muted);margin-bottom:4px;font-size:11px;font-weight:700}.feedback-comment{background:var(--color-surface-2);border-radius:var(--radius);border:1px solid var(--color-border-subtle);flex-direction:column;gap:4px;padding:12px 14px;display:flex;position:relative}.feedback-comment-header{align-items:center;gap:8px;display:flex}.feedback-comment-author{color:var(--color-text);font-size:13px;font-weight:600}.feedback-comment-time{color:var(--color-text-dim);font-size:11px}.feedback-comment-text{color:var(--color-text-muted);white-space:pre-wrap;font-size:14px;line-height:1.5}.feedback-comment-delete{color:var(--color-text-dim);border-radius:var(--radius-sm);opacity:0;padding:4px;transition:color .15s,background .15s,opacity .15s;display:flex;position:absolute;top:8px;right:8px}.feedback-comment:hover .feedback-comment-delete{opacity:1}.feedback-comment-delete:hover{color:var(--color-danger);background:var(--color-danger-dim)}.feedback-no-comments{color:var(--color-text-dim);text-align:center;padding:16px 0;font-size:13px}.feedback-comment-form{border-top:1px solid var(--color-border);gap:8px;padding:16px 28px;display:flex}.feedback-comment-input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);color:var(--color-text);resize:none;outline:none;flex:1;min-height:40px;max-height:120px;padding:10px 14px;font-size:14px;transition:border-color .15s}.feedback-comment-input::placeholder{color:var(--color-text-dim)}.feedback-comment-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.feedback-comment-submit{background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius);letter-spacing:.08em;flex-shrink:0;align-self:flex-end;padding:8px 16px;font-size:12px;font-weight:700;transition:background .15s}.feedback-comment-submit:hover{background:var(--color-accent-fill-hover)}.feedback-comment-submit:disabled{opacity:.4;cursor:default}.feedback-type-select{gap:8px;display:flex}.feedback-type-option{text-align:center;border:1px solid var(--color-border);border-radius:var(--radius);letter-spacing:.08em;color:var(--color-text-dim);background:var(--color-surface-2);flex:1;padding:10px;font-size:12px;font-weight:700;transition:border-color .15s,color .15s,background .15s}.feedback-type-option:hover{border-color:var(--color-text-dim);color:var(--color-text-muted)}.feedback-type-option.selected{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-ghost)}.feedback-textarea{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);width:100%;color:var(--color-text);resize:vertical;outline:none;min-height:80px;padding:12px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.feedback-textarea::placeholder{color:var(--color-text-dim)}.feedback-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.contact{background:var(--color-bg);flex-direction:column;min-height:100%;display:flex}.contact-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:10;position:sticky;top:0}.contact-header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:820px;min-height:72px;margin:0 auto;padding:16px 28px;display:flex}.contact-header-left{align-items:center;gap:16px;min-width:0;display:flex}.contact-header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.contact-back{color:var(--color-text-muted);border-radius:var(--radius);align-items:center;padding:8px;transition:color .15s,background .15s;display:flex}.contact-back:hover{color:var(--color-text);background:var(--color-surface-2)}@media (width>=1100px){.has-app-sidebar .contact-back{display:none}}.contact-page-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);text-transform:uppercase;font-size:24px;line-height:1}.contact-main{width:100%;max-width:640px;margin:0 auto;padding:56px 28px 64px}.contact-masthead{margin-bottom:36px}.contact-eyebrow-row{align-items:center;gap:14px;margin-bottom:20px;display:flex}.contact-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);font-size:11px;font-weight:700}.contact-eyebrow-rule{background:var(--color-border);flex:1;height:1px;position:relative}.contact-eyebrow-rule:after{content:"";background:var(--color-accent);width:24px;height:3px;position:absolute;top:-1px;left:0}.contact-heading{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);text-transform:uppercase;margin-bottom:16px;font-size:clamp(48px,8vw,72px);font-weight:400;line-height:.95}.contact-subtitle{color:var(--color-text-muted);max-width:520px;margin-bottom:20px;font-size:15px;line-height:1.6}.contact-meta{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-dim);flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:0;font-size:10.5px;font-weight:700;list-style:none;display:flex}.contact-meta li{align-items:center;display:inline-flex}.contact-meta li+li:before{content:"·";color:var(--color-accent);margin-right:10px;font-weight:700}.contact-success{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-accent);align-items:center;gap:14px;margin-bottom:20px;padding:14px 18px 14px 14px;animation:.22s cubic-bezier(.2,.7,.2,1) contactBannerIn;display:flex;position:relative;overflow:hidden}@keyframes contactBannerIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.contact-success-stripe{background:var(--color-accent);width:3px;position:absolute;top:0;bottom:0;left:0}.contact-success-icon{background:var(--color-accent-fill);width:28px;height:28px;color:var(--color-accent-on-fill);border-radius:var(--radius-sm);flex-shrink:0;place-items:center;margin-left:4px;display:grid}.contact-success-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.contact-success-title{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);font-size:11px;font-weight:700}.contact-success-body{color:var(--color-text);font-size:14px;line-height:1.4}.contact-success-close{color:var(--color-text-dim);border-radius:var(--radius-sm);flex-shrink:0;align-items:center;padding:6px;transition:color .15s,background .15s;display:flex}.contact-success-close:hover{color:var(--color-text);background:var(--color-surface-2)}.contact-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:36px 32px 32px;position:relative}.contact-card-stripe{background:var(--color-accent-fill);border-radius:0 2px 2px 0;width:4px;height:28px;position:absolute;top:20px;left:0}.contact-card-corner{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-dim);font-size:10px;font-weight:700;position:absolute;top:16px;right:24px}.contact-field{flex-direction:column;display:flex}.contact-field+.contact-field{margin-top:20px}.contact-field-label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);cursor:pointer;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.contact-field-num{font-family:var(--font-body);letter-spacing:.1em;color:var(--color-accent);background:var(--color-accent-ghost);border-radius:var(--radius-sm);padding:2px 6px;font-size:10px;font-weight:700;line-height:1}.contact-field-sep{color:var(--color-text-dim);margin-left:-2px;font-size:12px;line-height:1}.contact-input{font-size:14px}.contact-textarea{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);width:100%;color:var(--color-text);resize:vertical;outline:none;min-height:160px;padding:14px;font-family:inherit;font-size:14px;line-height:1.55;transition:border-color .15s,box-shadow .15s}.contact-textarea::placeholder{color:var(--color-text-dim)}.contact-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-ghost)}.contact-textarea:disabled,.contact-input:disabled{opacity:.6;cursor:not-allowed}.contact-submit{text-transform:uppercase;justify-content:center;width:100%;margin-top:28px}.contact-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.contact-error{text-align:center;margin-top:14px}@media (width<=560px){.contact-main{padding:36px 20px 48px}.contact-header-inner{padding:14px 20px}.contact-card{padding:28px 20px 24px}.contact-card-corner{right:18px}.contact-heading{font-size:44px}.contact-meta{gap:8px;font-size:10px}.contact-meta li+li:before{margin-right:8px}}.pp-head{z-index:10;position:fixed;top:14px;right:14px}.pp-foot{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:10px;padding:36px 16px 8px;display:flex}.pp-foot-eyebrow{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-dim);font-size:10px;font-weight:700}.pp-foot-brand{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted);font-size:16px;font-weight:400}.pp-foot-brand-accent{color:var(--color-accent-fill)}@media (width<=380px){.pp-foot{gap:8px;padding-top:28px}.pp-foot-brand{font-size:14px}}.sp-loading,.sp-error{height:100vh;color:var(--color-text-muted);letter-spacing:.1em;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.sp-error h1{color:var(--color-text);margin:0;font-size:48px}.sp-error p{margin:0}.sp-layout{max-width:720px;min-height:100vh;margin:0 auto;padding:32px 20px 64px}.sp-header{text-align:center;margin-bottom:40px}.sp-header-label{letter-spacing:.15em;color:var(--color-text-dim);margin-bottom:8px;font-size:11px;font-weight:700}.sp-header-name{color:var(--color-text);margin:0 0 4px;font-size:28px;font-weight:700}.sp-header-coach{color:var(--color-text-muted);font-size:14px}.sp-section{margin-bottom:36px}.sp-section-title{letter-spacing:.15em;color:var(--color-text-dim);margin:0 0 12px;font-size:11px;font-weight:700}.sp-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;margin-bottom:16px;padding:20px}.sp-card-title{color:var(--color-text);margin:0 0 16px;font-size:16px;font-weight:600}.sp-schedule-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;display:grid}.sp-schedule-day{text-align:center;background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:8px;padding:10px 6px}.sp-schedule-day.sp-rest{opacity:.5}.sp-schedule-day-label{letter-spacing:.08em;color:var(--color-text-dim);margin-bottom:6px;font-size:11px;font-weight:700}.sp-schedule-routine{color:var(--color-text);font-size:11px;font-weight:600;line-height:1.4}.sp-schedule-rest{color:var(--color-text-dim);font-size:11px;font-style:italic}.sp-exercise-table,.sp-diet-table{border-collapse:collapse;width:100%;font-size:13px}.sp-exercise-table th,.sp-diet-table th{text-align:left;letter-spacing:.1em;color:var(--color-text-dim);border-bottom:1px solid var(--color-border);padding:6px 8px;font-size:10px;font-weight:700}.sp-exercise-table td,.sp-diet-table td{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text);padding:8px}.sp-exercise-table tbody tr:last-child td,.sp-diet-table tbody tr:last-child td{border-bottom:none}.sp-center{text-align:center}.sp-notes{color:var(--color-text-muted);font-size:12px}.sp-day-group{margin-top:16px}.sp-day-group:first-child{margin-top:0}.sp-day-group-header{border-bottom:1px solid var(--color-border);align-items:baseline;gap:10px;margin-bottom:12px;padding-bottom:8px;display:flex}.sp-day-group-label{color:var(--color-text);font-size:14px;font-weight:600}.sp-day-group-days{color:var(--color-text-muted);font-size:12px}.sp-meal{margin-bottom:16px}.sp-meal:last-child{margin-bottom:0}.sp-meal-name{color:var(--color-text);letter-spacing:.02em;margin-bottom:6px;font-size:13px;font-weight:600}.sp-meal-option{margin-bottom:10px}.sp-option-label{color:var(--color-text-dim);letter-spacing:.08em;margin-bottom:4px;font-size:11px;font-weight:600}.sp-totals-row td{border-bottom:none;border-top:1px solid var(--color-border);color:var(--color-text);font-weight:600}.sp-empty{text-align:center;color:var(--color-text-muted);padding:48px 0;font-size:14px}@media (width<=480px){.sp-layout{padding:20px 12px 48px}.sp-header-name{font-size:22px}.sp-card{padding:14px}.sp-exercise-table,.sp-diet-table{font-size:12px}.sp-exercise-table th,.sp-diet-table th{padding:4px;font-size:9px}.sp-exercise-table td,.sp-diet-table td{padding:6px 4px}}.ci-page{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);padding:32px 16px 120px;position:relative;overflow-x:hidden}.ci-page:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 20% -10%, var(--color-accent-ghost) 0%, transparent 45%), radial-gradient(circle at 110% 120%, var(--color-accent-ghost) 0%, transparent 55%);position:fixed;inset:0}.ci-page:after{content:"";pointer-events:none;z-index:1;opacity:.022;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:256px;position:fixed;inset:0}[data-theme=light] .ci-page:after{opacity:.01}.ci-frame{z-index:2;max-width:560px;margin:0 auto;position:relative}.ci-hero{margin-bottom:32px;padding-right:40px}.ci-hero-bar{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-dim);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;font-size:10px;font-weight:700;display:flex}.ci-hero-bar-stripe{background:var(--color-accent-fill);flex-shrink:0;width:28px;height:3px;display:inline-block}.ci-hero-bar-label{color:var(--color-accent)}.ci-hero-bar-spacer{background:var(--color-border-subtle);flex:1;height:1px}.ci-hero-bar-date{color:var(--color-text-dim)}.ci-hero-title{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);text-transform:uppercase;margin:0;font-size:clamp(44px,12vw,72px);font-weight:400;line-height:.92}.ci-hero-eyebrow{letter-spacing:.24em;color:var(--color-text-muted);text-transform:uppercase;margin:10px 0 0;font-size:12px;font-weight:700}.ci-banner{color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;align-items:center;gap:10px;max-width:100%;margin-top:22px;padding:10px 14px 10px 12px;font-size:12px;line-height:1.4;display:inline-flex}.ci-banner-dot{background:var(--color-warning);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2.4s ease-in-out infinite ci-pulse;box-shadow:0 0 0 3px #e2a3002e}.ci-banner--ok .ci-banner-dot{background:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ghost)}.ci-banner--ok{color:var(--color-text)}@keyframes ci-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.88)}}.ci-form{flex-direction:column;gap:14px;display:flex}.ci-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);position:relative;overflow:hidden}.ci-card:before{content:"";background:var(--color-accent-fill);opacity:0;width:3px;transition:opacity .25s;position:absolute;top:0;bottom:0;left:0}.ci-card:focus-within:before{opacity:1}.ci-card-bar{border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface-2);align-items:center;gap:10px;padding:10px 16px;display:flex}.ci-card-label{text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-dim);flex:1;font-size:10px;font-weight:700}.ci-card-meta{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-text-dim);font-feature-settings:"tnum" 1;font-size:13px}.ci-weight-body{align-items:baseline;gap:14px;padding:22px 22px 24px;display:flex}.ci-weight-input{min-width:0;font-family:var(--font-display);letter-spacing:.01em;color:var(--color-text);caret-color:var(--color-accent);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:clamp(52px,13vw,72px);line-height:1}.ci-weight-input::placeholder{color:var(--color-text-dim);opacity:.35}.ci-weight-unit{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-accent);flex-shrink:0;font-size:22px}.ci-meas-grid{grid-template-columns:repeat(2,1fr);gap:0;display:grid}.ci-meas-cell{border-top:1px solid var(--color-border-subtle);flex-direction:column;gap:6px;padding:14px 16px 16px;transition:background .2s;display:flex;position:relative}.ci-meas-cell:nth-child(-n+2){border-top:none}.ci-meas-cell:nth-child(2n){border-left:1px solid var(--color-border-subtle)}.ci-meas-cell:focus-within{background:var(--color-surface-2)}.ci-meas-cell:focus-within:before{content:"";background:var(--color-accent-fill);width:2px;position:absolute;top:0;bottom:0;left:0}.ci-meas-label{text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-dim);align-items:baseline;gap:6px;font-size:10px;font-weight:700;display:flex}.ci-meas-unit{letter-spacing:.14em;color:var(--color-text-dim);opacity:.65;font-size:9px;font-style:normal;font-weight:600}.ci-meas-input{width:100%;font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);caret-color:var(--color-accent);background:0 0;border:none;outline:none;padding:0;font-size:28px}.ci-meas-input::placeholder{color:var(--color-text-dim);opacity:.4}.ci-notes-input{resize:vertical;width:100%;min-height:160px;font-family:var(--font-body);color:var(--color-text);background:linear-gradient(transparent 27px, var(--color-border-subtle) 27px, var(--color-border-subtle) 28px, transparent 28px) 0 0 / 100% 28px repeat-y;background-position:0 16px;border:none;outline:none;padding:18px 20px 22px;font-size:15px;line-height:28px;display:block}.ci-notes-input::placeholder{color:var(--color-text-dim);font-style:italic}.ci-photos-body{padding:14px}.ci-photo-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.ci-photo{aspect-ratio:1;border-radius:var(--radius);background:var(--color-surface-2);border:1px solid var(--color-border-subtle);position:relative;overflow:hidden}.ci-photo img{object-fit:cover;width:100%;height:100%;transition:transform .35s cubic-bezier(.2,.7,.2,1);display:block}.ci-photo:hover img{transform:scale(1.04)}.ci-photo-del{color:#fff;cursor:pointer;opacity:0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0c0c0ebf;border:none;border-radius:50%;place-items:center;width:24px;height:24px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:6px;right:6px;transform:translateY(-2px)}.ci-photo:hover .ci-photo-del,.ci-photo:focus-within .ci-photo-del{opacity:1;transform:translateY(0)}.ci-photo-add{aspect-ratio:1;border-radius:var(--radius);border:1px dashed var(--color-border);color:var(--color-text-dim);cursor:pointer;background:0 0;place-items:center;transition:border-color .2s,color .2s,background .2s;display:grid}.ci-photo-add:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-ghost);border-style:solid}.ci-photo-cat+.ci-photo-cat{border-top:1px solid var(--color-border-subtle);margin-top:16px;padding-top:16px}.ci-photo-cat-bar{align-items:center;gap:10px;margin-bottom:10px;display:flex}.ci-photo-cat-stripe{background:var(--color-accent);border-radius:2px;width:3px;height:14px;display:inline-block}.ci-photo-cat-name{letter-spacing:.14em;text-transform:uppercase;color:var(--color-text);flex:1;font-size:11px;font-weight:700}.ci-photo-cat-count{font-family:var(--font-display,monospace);letter-spacing:.08em;color:var(--color-text-dim);font-size:11px;font-weight:700}.ci-photo-cat--alt .ci-photo-cat-stripe{background:var(--color-text-dim)}.ci-submit-wrap{margin-top:8px}.ci-submit{border-radius:var(--radius-lg);background:var(--color-accent-fill);width:100%;color:var(--color-accent-on-fill);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-accent);border:none;justify-content:center;align-items:center;padding:18px 24px;font-size:20px;transition:transform .15s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.ci-submit:before{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 30%,#ffffff52 50%,#0000 70%);transition:transform .7s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:translate(-120%)}.ci-submit:hover:not(:disabled):before{transform:translate(120%)}.ci-submit:hover:not(:disabled){background:var(--color-accent-fill-hover);box-shadow:0 0 24px var(--color-accent-glow), var(--shadow-lg)}.ci-submit:active:not(:disabled){transform:translateY(1px)}.ci-submit:disabled{opacity:.55;cursor:not-allowed}.ci-submit-label{z-index:1;align-items:center;gap:10px;display:inline-flex;position:relative}.ci-submit--ok{animation:.5s cubic-bezier(.2,.7,.2,1) ci-submit-pop}@keyframes ci-submit-pop{0%{transform:scale(1)}35%{box-shadow:0 0 32px var(--color-accent);transform:scale(1.03)}to{transform:scale(1)}}.ci-status{text-align:left;z-index:2;max-width:440px;margin:0 auto;padding:140px 16px 60px;position:relative}.ci-status-stripe{background:var(--color-accent-fill);width:48px;height:4px;margin-bottom:20px;display:inline-block}.ci-status-stripe--muted{background:var(--color-border)}.ci-status-eyebrow{letter-spacing:.24em;color:var(--color-text-dim);text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.ci-status-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);text-transform:uppercase;margin:0 0 12px;font-size:56px;line-height:.95}.ci-status-body{color:var(--color-text-muted);margin:0;font-size:14px;line-height:1.6}[data-animate]{opacity:0;animation:.55s cubic-bezier(.2,.7,.2,1) forwards ci-in;animation-delay:var(--ci-delay,0s);transform:translateY(10px)}@keyframes ci-in{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){[data-animate]{opacity:1;animation:none;transform:none}.ci-banner-dot{animation:none}.ci-submit:before{display:none}}@media (width>=600px){.ci-page{padding:56px 24px 80px}.ci-frame{max-width:620px}.ci-weight-body{padding:28px 28px 32px}.ci-meas-cell{padding:16px 20px 18px}.ci-notes-input{padding:22px 24px 26px}.ci-photos-body{padding:18px}}@media (width<=420px){.ci-meas-grid{grid-template-columns:repeat(2,1fr)}.ci-meas-cell{padding:12px 12px 14px}.ci-meas-input{font-size:24px}}@media (width<=599px){.ci-submit-wrap{z-index:5;margin-top:20px;position:sticky;bottom:16px}.ci-submit{box-shadow:0 0 0 1px var(--color-border), var(--shadow-lg), var(--shadow-accent)}}.sign-shell{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);flex-direction:column;display:flex}.sign-header{background:var(--color-sidebar-bg);border-bottom:1px solid var(--color-border);position:relative}.sign-header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:880px;margin:0 auto;padding:16px 24px;display:flex}.sign-brand{font-family:var(--font-display);letter-spacing:.2em;color:var(--color-accent);font-size:18px}.sign-meta{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-muted);font-size:11px}.sign-meta span{color:var(--color-text);margin:0 4px}.sign-meta-dot{color:var(--color-text-dim);margin:0 8px}.sign-header-stripe{background:var(--color-accent);height:3px}.sign-main{box-sizing:border-box;flex:1;width:100%;max-width:880px;margin:0 auto;padding:36px 24px 80px}.sign-eyebrow{font-family:var(--font-display);letter-spacing:.16em;color:var(--color-accent);font-size:11px}.sign-title-block{margin-bottom:28px}.sign-title{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);text-transform:uppercase;margin:8px 0 0;font-size:44px}.sign-signed-badge{background:var(--color-accent-fill);color:var(--color-accent-on-fill);font-family:var(--font-display);letter-spacing:.1em;border-radius:var(--radius-sm);margin-top:14px;padding:8px 14px;font-size:13px;display:inline-block}.sign-error{background:var(--color-danger-dim);color:var(--color-danger);border-radius:var(--radius-sm);margin-bottom:20px;padding:12px 16px;font-size:14px}.sign-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:24px;padding:28px 30px;position:relative}.sign-section-head{border-bottom:1px solid var(--color-border-subtle);align-items:flex-start;gap:18px;margin-bottom:22px;padding-bottom:18px;display:flex}.sign-section-head h2{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;font-size:22px}.sign-section-head p{color:var(--color-text-muted);max-width:560px;margin:0;font-size:13px}.sign-step-num{background:var(--color-accent-fill);width:36px;height:36px;color:var(--color-accent-on-fill);font-family:var(--font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.sign-name-label{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-muted);margin-bottom:24px;font-size:11px;display:block}.sign-name-input{width:100%;font-size:16px;font-family:var(--font-body);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);box-sizing:border-box;margin-top:8px;padding:12px 14px;display:block}.sign-name-input:focus{border-color:var(--color-accent);outline:none}.sign-pads{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (width<=680px){.sign-pads{grid-template-columns:1fr}}.sign-pad-col{flex-direction:column;gap:8px;display:flex}.sigpad-label{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-muted);margin-bottom:2px;font-size:11px}.sigpad-frame{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;position:relative;overflow:hidden}.sigpad-canvas{touch-action:none;cursor:crosshair;width:100%;display:block}.sigpad-placeholder{color:#c4c4c8;pointer-events:none;justify-content:center;align-items:center;font-size:13px;font-style:italic;display:flex;position:absolute;inset:0}.sign-pad-clear{font-family:var(--font-display);letter-spacing:.12em;border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-self:flex-end;padding:6px 10px;font-size:11px}.sign-pad-clear:hover{color:var(--color-text);border-color:var(--color-text-muted)}.sign-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.sign-primary{font-family:var(--font-display);letter-spacing:.12em;background:var(--color-accent-fill);color:var(--color-accent-on-fill);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:14px 22px;font-size:15px;transition:background .12s}.sign-primary:hover:not(:disabled){background:var(--color-accent-fill-hover)}.sign-primary:disabled{opacity:.4;cursor:not-allowed}.sign-secondary{font-family:var(--font-display);letter-spacing:.1em;background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:14px 18px;font-size:13px}.sign-secondary:hover{background:var(--color-surface-3)}.sign-pdf-scroll{background:var(--color-bg);border-radius:var(--radius-sm);border:1px solid var(--color-border);flex-direction:column;align-items:center;gap:24px;max-height:800px;padding:24px;display:flex;overflow:auto}.sign-page-wrap{flex-direction:column;gap:6px;display:flex}.sign-page-label{font-family:var(--font-display);letter-spacing:.14em;color:var(--color-text-muted);font-size:11px}.sign-page-frame{line-height:0;position:relative;box-shadow:0 6px 28px #0000008c}.sign-page-frame .react-pdf__Page{display:block;position:relative}.sign-page-overlay{z-index:2;pointer-events:none;position:absolute;inset:0}.sign-overlay-field{box-sizing:border-box;border:1px dashed #e8ff008c;justify-content:center;align-items:center;display:flex;position:absolute}.sign-overlay-field img{mix-blend-mode:multiply;max-width:100%;max-height:100%}.sign-loading{font-family:var(--font-display);letter-spacing:.1em;color:var(--color-text-muted);padding:36px}.sign-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);max-width:520px;margin:64px auto;padding:32px}.sign-card h1{font-family:var(--font-display);letter-spacing:.02em;margin:8px 0;font-size:28px}.sign-card p{color:var(--color-text-muted);margin:0;font-size:14px}.sign-footer{border-top:1px solid var(--color-border);background:var(--color-sidebar-bg)}.sign-footer-inner{max-width:880px;color:var(--color-text-dim);letter-spacing:.04em;margin:0 auto;padding:16px 24px;font-size:12px}.iubenda-page{background:var(--color-bg);min-height:100vh;color:var(--color-text)}.iubenda-page-header{border-bottom:1px solid var(--color-border);padding:20px 28px}.iubenda-page-back{color:var(--color-text-dim);letter-spacing:.04em;font-size:13px;text-decoration:none}.iubenda-page-back:hover{color:var(--color-text)}.iubenda-page-body{max-width:860px;margin:0 auto;padding:40px 28px 80px}.dpa{color:var(--color-text);font-size:15px;line-height:1.65}.dpa-header{border-bottom:1px solid var(--color-border);margin-bottom:32px;padding-bottom:20px}.dpa-header h1{letter-spacing:.02em;margin:0 0 12px;font-size:28px}.dpa-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:20px;margin:0;font-size:13px;display:flex}.dpa section{margin-bottom:28px}.dpa h2{letter-spacing:.02em;margin:28px 0 12px;font-size:18px}.dpa h3{letter-spacing:.02em;color:var(--color-text);margin:18px 0 8px;font-size:15px}.dpa p{margin:10px 0}.dpa ul,.dpa ol{margin:10px 0;padding-left:24px}.dpa li{margin:6px 0}.dpa a{color:var(--color-accent);text-decoration:underline}.dpa hr{border:none;border-top:1px solid var(--color-border);margin:40px 0}.dpa-table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px}.dpa-table th,.dpa-table td{border:1px solid var(--color-border);text-align:left;vertical-align:top;padding:10px 12px}.dpa-table th{background:var(--color-bg-elevated,#7f7f7f0d);width:220px;font-weight:600}.dpa-subprocessors th{background:var(--color-bg-elevated,#7f7f7f0d);width:auto}.dpa-footnote{color:var(--color-text-muted);margin-top:12px;font-size:13px}.accept-terms{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.accept-terms-card{background:var(--color-surface);border:1px solid var(--color-border);width:100%;max-width:560px;color:var(--color-text);border-radius:12px;padding:32px}.accept-terms-card h1{letter-spacing:.02em;margin:0 0 12px;font-size:22px}.accept-terms-intro{color:var(--color-text-muted);margin:0 0 20px;font-size:14px;line-height:1.6}.accept-terms-list{flex-direction:column;gap:10px;margin:0 0 24px;padding:0;font-size:14px;line-height:1.5;list-style:none;display:flex}.accept-terms-list li{background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:8px;padding:10px 14px}.accept-terms-list a{color:var(--color-accent);font-weight:600;text-decoration:underline}.accept-terms-checkbox{cursor:pointer;color:var(--color-text);align-items:flex-start;gap:10px;margin-bottom:20px;font-size:13px;line-height:1.5;display:flex}.accept-terms-checkbox input{margin-top:2px}.accept-terms-checkbox+.field-error{margin:0 0 16px}.accept-terms-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.accept-terms-signout{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:8px 12px;font-size:13px;text-decoration:underline}.accept-terms-signout:hover{color:var(--color-text)}.verify-email{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.verify-email-card{background:var(--color-surface);border:1px solid var(--color-border);width:100%;max-width:520px;color:var(--color-text);border-radius:12px;padding:32px}.verify-email-card h1{letter-spacing:.02em;margin:0 0 12px;font-size:22px}.verify-email-intro{color:var(--color-text);margin:0 0 12px;font-size:14px;line-height:1.6}.verify-email-hint{color:var(--color-text-muted);margin:0 0 20px;font-size:13px;line-height:1.5}.verify-email-sent{color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border-subtle);border-radius:8px;margin:0 0 16px;padding:10px 14px;font-size:13px}.verify-email-card .field-error{margin:0 0 16px}.verify-email-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.verify-email-signout{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:8px 12px;font-size:13px;text-decoration:underline}.verify-email-signout:hover{color:var(--color-text)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-shell>:first-child{flex:1 0 auto}.app-footer{border-top:1px solid var(--color-border);color:var(--color-text-dim);letter-spacing:.04em;background:var(--color-bg);flex-shrink:0;padding:14px 20px;font-size:11px}.update-banner{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:360px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);z-index:1000;flex-direction:column;gap:14px;padding:16px 20px 16px 23px;display:flex;position:fixed;bottom:16px;right:16px;overflow:hidden}.update-banner:before{content:"";background:var(--color-accent-fill);width:3px;position:absolute;top:0;bottom:0;left:0}.update-banner-dismiss{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-dim);justify-content:center;align-items:center;font-size:20px;font-weight:400;line-height:1;transition:color .15s,background .15s;display:flex;position:absolute;top:6px;right:6px}.update-banner-dismiss:hover{color:var(--color-text);background:var(--color-surface-2)}.update-banner-dismiss:focus-visible{box-shadow:0 0 0 2px var(--color-accent-ghost);color:var(--color-text);outline:none}.update-banner-body{flex-direction:column;gap:6px;padding-right:24px;display:flex}.update-banner-label{text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-dim);font-size:10px;font-weight:700;font-family:var(--font-body)}.update-banner-message{color:var(--color-text-muted);font-size:13px;line-height:1.45;font-family:var(--font-body)}.update-banner-actions{justify-content:flex-end;display:flex}@media (prefers-reduced-motion:no-preference){.update-banner{animation:.2s ease-out updateBannerIn}@keyframes updateBannerIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}@media (width<=600px){.update-banner{width:auto;max-width:none;bottom:12px;left:12px;right:12px}}
