.mlf-label[data-v-71ce186b]{color:#52524f;margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.mlf-input[data-v-71ce186b]{color:#111110;box-sizing:border-box;background:#fff;border:1px solid #e5e5e3;border-radius:6px;outline:none;width:100%;height:40px;margin-bottom:10px;padding:0 12px;font-family:Inter,system-ui,sans-serif;font-size:14px;transition:border-color .12s,box-shadow .12s,background .15s;display:block}.mlf-input[data-v-71ce186b]::placeholder{color:#a8a29d}.mlf-input--focused[data-v-71ce186b]{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24}.mlf-input--disabled[data-v-71ce186b]{background:#f5f5f4}.mlf-error[data-v-71ce186b]{color:#dc2626;margin:-4px 0 8px;font-size:12.5px}.mlf-btn[data-v-71ce186b]{color:#a8a29d;cursor:default;background:#e5e5e3;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;height:40px;font-family:Inter,system-ui,sans-serif;font-size:13.5px;font-weight:600;transition:background .15s,color .15s,opacity .12s,transform .12s;display:flex}.mlf-btn--active[data-v-71ce186b]{color:#fff;cursor:pointer;background:#2563eb}.mlf-btn--active[data-v-71ce186b]:hover{opacity:.88;transform:translateY(-1px)}.mlf-btn--loading[data-v-71ce186b]{color:#fff;opacity:.9;cursor:default;background:#2563eb}.mlf-spinner[data-v-71ce186b]{flex-shrink:0;animation:.65s linear infinite mlf-spin-71ce186b}.mlf-arrow[data-v-71ce186b]{opacity:0;transition:opacity .15s}.mlf-arrow--visible[data-v-71ce186b]{opacity:1}@keyframes mlf-spin-71ce186b{to{transform:rotate(360deg)}}.mls[data-v-743f45ea]{text-align:center;flex-direction:column;align-items:center;animation:.2s mls-fade-743f45ea;display:flex}.mls-check-circle[data-v-743f45ea]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:16px;display:flex}.mls-check-mark[data-v-743f45ea]{stroke-dasharray:24;animation:.32s 80ms both mls-draw-743f45ea}.mls-title[data-v-743f45ea]{letter-spacing:-.01em;color:#111110;margin-bottom:5px;font-size:17px;font-weight:600}.mls-sub[data-v-743f45ea]{color:#a8a29d;max-width:280px;margin:0 0 12px;font-size:13.5px;line-height:1.55}.mls-email[data-v-743f45ea]{color:#52524f;background:#f5f5f4;border:1px solid #e5e5e3;border-radius:4px;margin-bottom:22px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:12px;display:inline-block}.mls-actions[data-v-743f45ea]{flex-direction:column;gap:8px;width:100%;display:flex}.mls-primary[data-v-743f45ea]{color:#52524f;cursor:pointer;background:#fff;border:1px solid #e5e5e3;border-radius:6px;width:100%;height:38px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:500;transition:border-color .12s,color .12s;display:block}.mls-primary[data-v-743f45ea]:hover{color:#111110;border-color:#d0d0ce}.mls-resend[data-v-743f45ea]{cursor:pointer;color:#a8a29d;text-underline-offset:2px;background:0 0;border:none;padding:2px 4px;font-family:Inter,system-ui,sans-serif;font-size:12.5px;-webkit-text-decoration:underline dotted #d0d0ce;text-decoration:underline dotted #d0d0ce;transition:color .12s}.mls-resend[data-v-743f45ea]:hover{color:#52524f}@keyframes mls-fade-743f45ea{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes mls-draw-743f45ea{0%{stroke-dashoffset:24px}to{stroke-dashoffset:0}}.lm-backdrop[data-v-4f10b4d3]{--lm-surface:#fff;--lm-surface2:#fafaf9;--lm-bg:#f5f5f4;--lm-border:#e5e5e3;--lm-ink:#111110;--lm-ink-3:#a8a29d;--lm-font:"Inter", system-ui, sans-serif}[data-theme=dark]{--lm-surface:#151311;--lm-surface2:#1d1a17;--lm-bg:#0e0d0c;--lm-border:#2c2926;--lm-ink:#ede9e3;--lm-ink-3:#56524f}.lm-backdrop[data-v-4f10b4d3]{z-index:200;-webkit-backdrop-filter:blur(4px)saturate(.8);backdrop-filter:blur(4px)saturate(.8);background:#1111104d;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.lm-panel[data-v-4f10b4d3]{background:var(--lm-surface);border:1px solid var(--lm-border);width:calc(100% - 2rem);max-width:400px;font-family:var(--lm-font);color:var(--lm-ink);-webkit-font-smoothing:antialiased;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px #0000000a,0 12px 40px #0000001f}.lm-header[data-v-4f10b4d3]{border-bottom:1px solid var(--lm-border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.lm-logo[data-v-4f10b4d3]{letter-spacing:.07em;color:var(--lm-ink);font-size:13px;font-weight:700}.lm-close[data-v-4f10b4d3]{cursor:pointer;width:26px;height:26px;color:var(--lm-ink-3);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background .1s,color .1s;display:flex}.lm-close[data-v-4f10b4d3]:hover{background:var(--lm-bg);color:var(--lm-ink)}.lm-body[data-v-4f10b4d3]{flex-direction:column;gap:0;padding:24px 20px 20px;animation:.18s lm-content-fade-4f10b4d3;display:flex}.lm-intro[data-v-4f10b4d3]{margin-bottom:22px}.lm-heading[data-v-4f10b4d3]{letter-spacing:-.02em;color:var(--lm-ink);margin:0 0 5px;font-size:17px;font-weight:600;line-height:1.3}.lm-sub[data-v-4f10b4d3]{color:var(--lm-ink-3);margin:0;font-size:13px;line-height:1.55}.lm-footer[data-v-4f10b4d3]{border-top:1px solid var(--lm-border);background:var(--lm-surface2);color:var(--lm-ink-3);align-items:center;gap:6px;padding:10px 20px;font-size:11.5px;display:flex}.lm-sent[data-v-4f10b4d3]{padding:32px 20px 24px;animation:.2s lm-content-fade-4f10b4d3}.lm-enter-active[data-v-4f10b4d3],.lm-leave-active[data-v-4f10b4d3]{transition:opacity .22s}.lm-enter-from[data-v-4f10b4d3],.lm-leave-to[data-v-4f10b4d3]{opacity:0}.lm-enter-from .lm-panel[data-v-4f10b4d3],.lm-leave-to .lm-panel[data-v-4f10b4d3]{transform:translateY(10px)scale(.98)}.lm-enter-active .lm-panel[data-v-4f10b4d3]{transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .22s}@keyframes lm-content-fade-4f10b4d3{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--text:#334155;--text-h:#0f172a;--bg:#eef5fc;--border:#cddbea;--accent:#1f73d1;--accent-dark:#1a5fb0;--accent-soft:#1f73d114;--shadow:0 18px 44px -28px #11182747;--sans:"Avenir Next", "Avenir", "Helvetica Neue", "Segoe UI", sans-serif;--mono:"SFMono-Regular", "Cascadia Mono", "Liberation Mono", monospace;font:18px/1.5 var(--sans);color:var(--text);background:var(--bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#app{min-height:100%}body{background:radial-gradient(circle at 0 0,#fffffff2,#0000 42%),radial-gradient(circle at 100% 0,#7abcff33,#0000 32%),linear-gradient(#d9eaff 0%,#edf4fb 14%,#eef5fc 100%);margin:0}body:before{content:"";pointer-events:none;opacity:.08;background-image:linear-gradient(#ffffffb3 1px,#0000 1px),linear-gradient(90deg,#ffffffb3 1px,#0000 1px);background-size:80px 80px;position:fixed;inset:0}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text-h);letter-spacing:-.04em;font-weight:650}h1{font-size:clamp(2.2rem,4.5vw,4rem);line-height:.98}h2{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.15}button,input{font:inherit}button{cursor:pointer;border:none}input[type=email],input[type=password],input[type=text]{box-sizing:border-box;border:1px solid var(--border);width:100%;color:var(--text-h);background:#fff;border-radius:14px;padding:.95rem 1rem;box-shadow:inset 0 1px #fff9}input[type=email]:focus,input[type=password]:focus,input[type=text]:focus{border-color:#1f73d18c;outline:none;box-shadow:0 0 0 4px #1f73d11f}#app{box-sizing:border-box;text-align:left;width:100%}.glass-card,.dashboard,.error-page,.state-card{box-shadow:var(--shadow);background:#fffffff0;border:1px solid #cddbeaf2;border-radius:24px}.primary-btn,.secondary-btn,.topbar-action,.logout-btn,.upload-btn,.file-btn{border-radius:14px;justify-content:center;align-items:center;min-height:2.8rem;padding:.72rem 1.1rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.primary-btn,.topbar-action,.upload-btn,.file-btn{color:#fff;background:linear-gradient(#2a7de1 0%,#216fd0 100%);box-shadow:0 14px 24px #216fd02e}.secondary-btn,.logout-btn{color:#16528f;background:#fff;border:1px solid #c4d7ea;box-shadow:0 8px 16px #0f172a0f}.primary-btn:hover,.secondary-btn:hover,.topbar-action:hover,.logout-btn:hover,.upload-btn:hover,.file-btn:hover{transform:translateY(-1px)}.dashboard,.error-page{width:min(720px,100% - 2rem);margin:1.5rem auto;padding:1.25rem}.error-page{gap:1rem;display:grid}.dashboard{width:min(980px,100% - 2rem)}.dash-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.project-list{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.project-card{cursor:pointer;background:linear-gradient(#fbfdfff5 0%,#f0f6fcfa 100%);border:1px solid #d4e1ef;border-radius:18px;padding:1rem 1.05rem;box-shadow:0 10px 22px -18px #0f172a38}.project-title{color:var(--text-h);font-weight:700}.project-status,.project-meta{color:#60708b}.project-meta{flex-wrap:wrap;gap:.4rem;margin-top:.3rem;font-size:.92rem;display:flex}.loading,.error,.empty{color:#475569}.error{color:#b42318}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body.page-clean{background:0 0}body.page-clean:before{display:none}[data-theme=dark] body{background:#0e0d0c}[data-theme=dark] body:before{opacity:.04;background-image:linear-gradient(#ffffff0f 1px,#0000 1px),linear-gradient(90deg,#ffffff0f 1px,#0000 1px)}[data-theme=dark] .glass-card,[data-theme=dark] .dashboard,[data-theme=dark] .error-page,[data-theme=dark] .state-card{background:#151311f0;border-color:#2c2926f2}[data-theme=dark] .project-card{background:linear-gradient(#151311f5 0%,#1d1a17fa 100%);border-color:#2c2926}html.theme-fade,html.theme-fade *,html.theme-fade :before,html.theme-fade :after{transition:background-color .55s,color .55s,border-color .55s,fill .55s,box-shadow .55s!important}@media (prefers-reduced-motion:reduce){html.theme-fade,html.theme-fade *,html.theme-fade :before,html.theme-fade :after{transition:none!important}}.site-page{--bg:#fff;--bg-soft:#f8f8f7;--bg-subtle:#f2f1ef;--border:#e5e4e2;--border-md:#d4d2cf;--ink:#111110;--ink-2:#4a4845;--ink-3:#9b9895;--blue:#2563eb;--blue-dark:#1d4ed8;--blue-soft:#eff6ff;--blue-line:#bfdbfe;--t-neutral-bg:#f2f1ef;--t-neutral-fg:#6b6863;--t-neutral-dot:#a8a29d;--t-info-bg:#eff6ff;--t-info-fg:#2563eb;--t-info-dot:#2563eb;--t-ok-bg:#ecfdf3;--t-ok-fg:#157f49;--t-ok-dot:#1f9d57;--t-warn-bg:#fef7ec;--t-warn-fg:#a96a14;--t-warn-dot:#d6900f;--t-bad-bg:#fef1f1;--t-bad-fg:#c0362c;--t-bad-dot:#d6453a;--r:6px;--r-lg:10px;--r-card:12px;--shadow-card:0 1px 2px #0000000a;--shadow-pop:0 8px 30px #0000001a, 0 2px 8px #0000000d;--font:"Inter", system-ui, sans-serif;--mono:"JetBrains Mono", monospace;background:var(--bg);font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:15px;line-height:1.6}.site-page a{color:inherit;text-decoration:none}[data-theme=dark] .site-page{--bg:#0e0d0c;--bg-soft:#151311;--bg-subtle:#1d1a17;--border:#2c2926;--border-md:#3a3633;--ink:#ede9e3;--ink-2:#96908a;--ink-3:#56524f;--blue:#5b9ef8;--blue-dark:#4a8cf5;--blue-soft:#0c1d3a;--blue-line:#1a3560;--t-neutral-bg:#211e1b;--t-neutral-fg:#8d8781;--t-neutral-dot:#56524f;--t-info-bg:#0f2138;--t-info-fg:#6fb0fb;--t-info-dot:#5b9ef8;--t-ok-bg:#102a1d;--t-ok-fg:#57c98a;--t-ok-dot:#34b46e;--t-warn-bg:#2a2110;--t-warn-fg:#d6a24a;--t-warn-dot:#d6900f;--t-bad-bg:#2c1614;--t-bad-fg:#ef8079;--t-bad-dot:#e0574c;--shadow-card:0 1px 2px #0006;--shadow-pop:0 8px 30px #00000080}[data-theme=dark] .site-page .nav{background:#0e0d0ceb}[data-theme=dark] .site-page .hero-badge{border-color:#1a3560}[data-theme=dark] .site-page .cta-banner{background:var(--bg-subtle);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}[data-theme=dark] .site-page .cta-inner h2{color:var(--ink)}[data-theme=dark] .site-page .cta-inner p{color:var(--ink-2)}[data-theme=dark] .site-page .btn-white{background:var(--blue);color:#fff}[data-theme=dark] .site-page .form-input,[data-theme=dark] .site-page .form-select,[data-theme=dark] .site-page .form-textarea{background:var(--bg-subtle);color:var(--ink);border-color:var(--border)}[data-theme=dark] .site-page .form-input::placeholder,[data-theme=dark] .site-page .form-textarea::placeholder{color:var(--ink-3)}[data-theme=dark] .site-page .form-input:focus,[data-theme=dark] .site-page .form-select:focus,[data-theme=dark] .site-page .form-textarea:focus{box-shadow:0 0 0 3px #5b9ef833}.site-page .nav{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#ffffffeb;justify-content:space-between;align-items:center;height:56px;padding:0 40px;display:flex;position:sticky;top:0}.site-page .nav-logo{letter-spacing:.08em;color:var(--ink);font-size:15px;font-weight:700}.site-page .nav-links{align-items:center;gap:32px;display:flex}.site-page .nav-links a{color:var(--ink-2);font-size:14px;font-weight:400;transition:color .15s}.site-page .nav-links a:hover,.site-page .nav-links a.router-link-active{color:var(--ink)}.site-page .nav-cta{align-items:center;gap:10px;display:flex}.site-page .hero{grid-template-columns:1fr 420px;align-items:center;gap:60px;max-width:1040px;margin:0 auto;padding:80px 40px;display:grid}.site-page .hero-badge{background:var(--blue-soft);color:var(--blue);border:1px solid #dbeafe;border-radius:20px;align-items:center;gap:7px;margin-bottom:20px;padding:4px 12px;font-size:12.5px;font-weight:500;display:inline-flex}.site-page .hero-badge-dot{background:var(--blue);border-radius:50%;width:6px;height:6px;display:inline-block}.site-page .hero-text h1{letter-spacing:-.03em;color:var(--ink);margin-bottom:18px;font-size:46px;font-weight:700;line-height:1.1}.site-page .hero-text h1 em{color:var(--blue);font-style:normal}.site-page .hero-text p{color:var(--ink-2);max-width:420px;margin-bottom:32px;font-size:17px;font-weight:400;line-height:1.65}.site-page .hero-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.site-page .note{color:var(--ink-3);font-size:13px}.site-page .section{max-width:1040px;margin:0 auto;padding:72px 40px}.site-page .section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:10px;font-size:12px;font-weight:600}.site-page .section h2{letter-spacing:-.025em;color:var(--ink);margin-bottom:14px;font-size:32px;font-weight:700;line-height:1.2}.site-page .section .lead{color:var(--ink-2);max-width:520px;font-size:16px;line-height:1.65}.site-page .strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg-soft);justify-content:center;padding:28px 40px;display:flex}.site-page .page-hero{max-width:1040px;margin:0 auto;padding:64px 40px 48px}.site-page .page-hero--compact{padding-bottom:32px}.site-page .page-hero h1{letter-spacing:-.03em;color:var(--ink);margin-bottom:14px;font-size:40px;font-weight:700;line-height:1.15}.site-page .page-hero h1 em{color:var(--blue);font-style:normal}.site-page .page-hero p{color:var(--ink-2);max-width:520px;font-size:17px;line-height:1.65}.site-page .footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:28px 40px;display:flex}.site-page .footer-logo{letter-spacing:.06em;color:var(--ink);font-size:14px;font-weight:700}.site-page .footer-links{gap:24px;display:flex}.site-page .footer-links a{color:var(--ink-3);font-size:13px;transition:color .12s}.site-page .footer-links a:hover{color:var(--ink-2)}.site-page .footer-copy{color:var(--ink-3);font-size:12.5px}.site-page .full-divider{border:none;border-top:1px solid var(--border)}.site-page .docs-layout{grid-template-columns:220px 1fr;align-items:start;gap:56px;max-width:1040px;margin:0 auto;padding:48px 40px;display:grid}.site-page .docs-sidebar{position:sticky;top:72px}.site-page .docs-sidebar-title{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);margin-bottom:12px;font-size:11px;font-weight:600}.site-page .docs-nav{margin:0;padding:0;list-style:none}.site-page .docs-nav li{margin-bottom:2px}.site-page .docs-nav a{color:var(--ink-2);border-radius:6px;padding:6px 10px;font-size:13.5px;transition:background .12s,color .12s;display:block}.site-page .docs-nav a:hover{background:var(--bg-soft);color:var(--ink)}.site-page .docs-nav a.active{background:var(--blue-soft);color:var(--blue);font-weight:500}.site-page .docs-content{min-width:0}.site-page .contact-grid{grid-template-columns:1fr 340px;align-items:start;gap:56px;margin-top:48px;display:grid}.site-page .legal-content{max-width:720px;margin-top:40px}.site-page .legal-content h2{letter-spacing:-.02em;color:var(--ink);border-top:1px solid var(--border);margin:40px 0 10px;padding-top:40px;font-size:20px;font-weight:700}.site-page .legal-content h2:first-child{border-top:none;margin-top:0;padding-top:0}.site-page .legal-content h3{color:var(--ink);letter-spacing:-.01em;margin:24px 0 6px;font-size:15px;font-weight:600}.site-page .legal-content p{color:var(--ink-2);margin-bottom:12px;font-size:14.5px;line-height:1.75}.site-page .legal-content ul,.site-page .legal-content ol{margin:0 0 16px;padding-left:22px}.site-page .legal-content li{color:var(--ink-2);margin-bottom:4px;font-size:14.5px;line-height:1.75}.site-page .legal-content strong{color:var(--ink);font-weight:600}.site-page .legal-content a{color:var(--blue);text-underline-offset:2px;text-decoration:underline}.site-page .legal-meta{background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;gap:24px;margin-top:32px;padding:16px 20px;display:flex}.site-page .legal-meta dt{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:3px;font-size:11px;font-weight:600}.site-page .legal-meta dd{color:var(--ink);margin:0;font-size:13.5px}.site-page .btn-dim{border:1px solid var(--border);cursor:pointer;width:36px;height:36px;color:var(--ink-2);background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:border-color .15s,color .15s;display:flex}.site-page .btn-dim:hover{border-color:var(--ink-3);color:var(--ink)}.site-page .btn-primary{background:var(--blue);color:#fff;height:36px;font-family:var(--font);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:0 18px;font-size:14px;font-weight:600;transition:background .15s,transform .12s}.site-page .btn-primary-lg{height:44px;padding:0 24px;font-size:15px}.site-page .btn-ghost{height:36px;color:var(--ink-2);border:1px solid var(--border);font-family:var(--font);cursor:pointer;background:0 0;border-radius:6px;padding:0 16px;font-size:14px;font-weight:400;transition:border-color .15s,color .15s}.site-page .btn-ghost:hover{color:var(--ink);border-color:#ccc}.site-page .btn-white{height:44px;color:var(--ink);font-family:var(--font);cursor:pointer;white-space:nowrap;background:#fff;border:none;border-radius:6px;flex-shrink:0;padding:0 24px;font-size:15px;font-weight:600;transition:opacity .15s,transform .12s}.site-page .btn-white:hover{opacity:.9;transform:translateY(-1px)}.site-page .hero-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 8px 40px #00000012,0 2px 8px #0000000a}.site-page .hero-card-bar{border-bottom:1px solid var(--border);background:#fff;align-items:center;gap:8px;padding:12px 16px;display:flex}.site-page .dot{border-radius:50%;width:10px;height:10px}.site-page .card-bar-label{color:var(--ink-3);margin-left:8px;font-size:12px}.site-page .hero-card-body{padding:18px 16px}.site-page .mock-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:10px;font-size:11px;font-weight:600}.site-page .mock-row{border-radius:6px;align-items:center;gap:10px;margin-bottom:6px;padding:9px 12px;font-size:13px;font-weight:500;display:flex}.site-page .mock-active{background:var(--blue-soft);color:var(--blue);border:1px solid #bfdbfe}.site-page .mock-inactive{border:1px solid var(--border);color:var(--ink-2);background:#fff}.site-page .mock-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:flex}.site-page .mock-dot-filled{background:var(--blue)}.site-page .mock-dot-empty{border:1.5px solid #cbd5e1}.site-page .mock-price{font-family:var(--mono);margin-left:auto;font-size:11.5px}.site-page .mock-price-active{color:var(--blue)}.site-page .mock-total{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:12px;padding:12px 12px 0;display:flex}.site-page .mock-total-label{color:var(--ink-2);font-size:12.5px;font-weight:500}.site-page .mock-total-value{font-family:var(--mono);color:var(--ink);font-size:18px;font-weight:500}.site-page .mock-cta{background:var(--blue);color:#fff;width:100%;height:38px;font-family:var(--font);cursor:default;border:none;border-radius:6px;margin:14px 0 0;font-size:13.5px;font-weight:600}.site-page .stat{text-align:center;border-right:1px solid var(--border);padding:0 52px}.site-page .stat:last-child{border-right:none}.site-page .stat-value{font-family:var(--mono);color:var(--ink);letter-spacing:-.02em;margin-bottom:2px;font-size:26px;font-weight:500;display:block}.site-page .stat-label{color:var(--ink-3);font-size:13px;font-weight:400}.site-page .steps{grid-template-columns:repeat(3,1fr);gap:32px;margin-top:52px;display:grid}.site-page .step-num{background:var(--blue-soft);width:34px;height:34px;font-family:var(--mono);color:var(--blue);border:1px solid #bfdbfe;border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:13px;font-weight:500;display:flex}.site-page .step h3{color:var(--ink);letter-spacing:-.01em;margin-bottom:7px;font-size:16px;font-weight:600}.site-page .step p{color:var(--ink-2);font-size:14px;line-height:1.65}.site-page .services-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:48px;display:grid}.site-page .service-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:22px;transition:border-color .15s,box-shadow .15s}.site-page .service-card:hover{border-color:#ccc;box-shadow:0 4px 16px #0000000f}.site-page .service-icon{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:14px;display:flex}.site-page .service-card h3{color:var(--ink);letter-spacing:-.01em;margin-bottom:6px;font-size:15px;font-weight:600}.site-page .service-card p{color:var(--ink-2);font-size:13.5px;line-height:1.6}.site-page .service-note{color:var(--ink-3);margin-top:8px;font-size:12.5px}.site-page .service-from{border-top:1px solid var(--border);color:var(--ink-3);margin-top:14px;padding-top:14px;font-size:12px}.site-page .service-from strong{font-family:var(--mono);color:var(--ink);font-size:14px;font-weight:500}.site-page .cta-banner{background:var(--ink);padding:64px 40px}.site-page .cta-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;max-width:1040px;margin:0 auto;display:flex}.site-page .cta-inner h2{color:#fff;letter-spacing:-.02em;max-width:480px;font-size:28px;font-weight:700;line-height:1.3}.site-page .cta-inner p{color:#a8a29d;margin-top:6px;font-size:15px}.site-page .faq{margin-top:32px}.site-page .faq-item{border-bottom:1px solid var(--border)}.site-page .faq-q{text-align:left;width:100%;font-family:var(--font);color:var(--ink);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;font-size:15px;font-weight:600;display:flex}.site-page .faq-q:hover{color:var(--blue)}.site-page .faq-icon{color:var(--ink-3);flex-shrink:0;font-size:18px;transition:transform .2s}.site-page .faq-icon.open{transform:rotate(45deg)}.site-page .faq-a{color:var(--ink-2);padding:0 0 16px;font-size:14px;line-height:1.7}.site-page .docs-section{margin-bottom:64px;scroll-margin-top:80px}.site-page .docs-section h2{letter-spacing:-.02em;color:var(--ink);margin-bottom:12px;font-size:24px;font-weight:700}.site-page .docs-section h3{color:var(--ink);letter-spacing:-.01em;margin:24px 0 8px;font-size:16px;font-weight:600}.site-page .docs-section p{color:var(--ink-2);margin-bottom:12px;font-size:14.5px;line-height:1.7}.site-page .docs-section ul{margin:0 0 16px;padding-left:20px}.site-page .docs-section li{color:var(--ink-2);margin-bottom:4px;font-size:14.5px;line-height:1.7}.site-page .docs-section code{font-family:var(--mono);background:var(--bg-subtle);border:1px solid var(--border);color:var(--ink);border-radius:4px;padding:1px 6px;font-size:12.5px}.site-page .docs-callout{background:var(--blue-soft);color:var(--blue-dark);border:1px solid #bfdbfe;border-radius:8px;margin:16px 0;padding:14px 16px;font-size:13.5px;line-height:1.6}.site-page .docs-callout strong{color:var(--blue)}.site-page .pricing-table{border-collapse:collapse;width:100%;margin-top:36px}.site-page .pricing-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);border-bottom:1px solid var(--border);padding:0 0 12px;font-size:11px;font-weight:600}.site-page .pricing-table th:last-child{text-align:right}.site-page .pricing-table td{color:var(--ink-2);border-bottom:1px solid var(--border);vertical-align:middle;padding:14px 0;font-size:14px}.site-page .pricing-table td:last-child{text-align:right;font-family:var(--mono);color:var(--ink);font-size:14px;font-weight:500}.site-page .pricing-table td strong{color:var(--ink);font-weight:600}.site-page .pricing-table tr:last-child td{border-bottom:none}.site-page .pricing-table .price-note{color:var(--ink-3);font-size:12px;font-family:var(--font);font-weight:400}.site-page .form-input,.site-page .form-select,.site-page .form-textarea{box-sizing:border-box;border:1px solid var(--border);width:100%;font-family:var(--font);color:var(--ink);background:#fff;border-radius:6px;outline:none;padding:9px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.site-page .form-textarea{resize:vertical;min-height:120px}.site-page .form-input:focus,.site-page .form-select:focus,.site-page .form-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1a}.site-page .form-label{color:var(--ink-2);font-size:13px;font-weight:500}.site-page .contact-form{gap:14px;display:grid}.site-page .form-group{gap:6px;display:grid}.site-page .contact-info{gap:20px;display:grid}.site-page .contact-info-item{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:18px 20px}.site-page .contact-info-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:6px;font-size:11px;font-weight:600}.site-page .contact-info-value{color:var(--ink);font-size:14.5px;font-weight:500}.site-page .contact-info-sub{color:var(--ink-3);margin-top:3px;font-size:12.5px}.site-page .form-success{text-align:center;background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;padding:48px 24px}.site-page .form-success h3{color:var(--ink);margin-bottom:8px;font-size:20px;font-weight:700}.site-page .form-success p{color:var(--ink-2);font-size:14px}.check-btn{text-align:left;border-radius:var(--r,6px);cursor:pointer;width:100%;font-family:var(--font,"Inter", system-ui, sans-serif);border:1px solid var(--border,#e5e5e3);background:var(--surface,#fff);align-items:flex-start;gap:10px;padding:10px 12px;transition:border-color .12s,background .12s;display:flex}.check-btn.checked{background:var(--blue-light,#eff6ff);border-color:var(--blue,#2563eb)}.check-btn:not(.checked):hover{border-color:var(--border-md,#d0d0ce)}.check-box{border:1.5px solid var(--border-md,#d0d0ce);background:0 0;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:15px;height:15px;margin-top:2px;transition:all .12s;display:flex}.check-box.checked{border-color:var(--blue,#2563eb);background:var(--blue,#2563eb)}.check-content{flex:1}.check-label{color:var(--ink,#111110);font-size:13.5px;font-weight:500}.check-sub{color:var(--ink-3,#a8a29d);margin-top:1px;font-size:12px;display:block}.check-price{font-family:var(--mono,"JetBrains Mono", monospace);color:var(--ink-3,#a8a29d);flex-shrink:0;margin-top:2px;font-size:11.5px}.check-price.checked{color:var(--blue,#2563eb)}.radio-btn{text-align:left;border-radius:var(--r,6px);cursor:pointer;width:100%;font-family:var(--font,"Inter", system-ui, sans-serif);border:1px solid var(--border,#e5e5e3);background:var(--surface,#fff);align-items:center;gap:10px;padding:10px 12px;transition:border-color .12s,background .12s;display:flex}.radio-btn.checked{background:var(--blue-light,#eff6ff);border-color:var(--blue,#2563eb)}.radio-btn:not(.checked):hover{border-color:var(--border-md,#d0d0ce)}.radio-dot{border:1.5px solid var(--border-md,#d0d0ce);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:15px;height:15px;transition:all .12s;display:flex}.radio-dot.checked{border-color:var(--blue,#2563eb);background:var(--blue,#2563eb)}.radio-dot-inner{background:#fff;border-radius:50%;width:5px;height:5px}.radio-content{flex:1;min-width:0}.radio-top{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.radio-label{color:var(--ink,#111110);font-size:13.5px;font-weight:500}.radio-sub{color:var(--ink-3,#a8a29d);margin-top:1px;font-size:12px;display:block}.badge{letter-spacing:.04em;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:600}.badge-rapide{color:#854d0e;background:#fef9c3}.badge-promo{color:#166534;background:#dcfce7}.radio-price{font-family:var(--mono,"JetBrains Mono", monospace);color:var(--ink-3,#a8a29d);flex-shrink:0;font-size:11.5px}.radio-price.checked{color:var(--blue,#2563eb)}.stepper{border:1px solid var(--border,#e5e5e3);border-radius:var(--r,6px);background:var(--surface,#fff);align-items:center;display:flex;overflow:hidden}.step-btn{cursor:pointer;width:32px;height:32px;color:var(--ink,#111110);font-size:17px;font-family:var(--font,"Inter", system-ui, sans-serif);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:background .1s;display:flex}.step-btn:disabled{color:var(--ink-3,#a8a29d);cursor:default}.step-btn:not(:disabled):hover{background:var(--bg,#f5f5f4)}.step-val{border-left:1px solid var(--border,#e5e5e3);border-right:1px solid var(--border,#e5e5e3);min-width:38px;height:32px;font-family:var(--mono,"JetBrains Mono", monospace);color:var(--ink,#111110);justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.file-list{gap:6px;margin:0 0 10px;padding:0;list-style:none;display:grid}.file-entry{border:1px solid var(--border,#e5e5e3);border-radius:var(--r,6px);background:var(--surface,#fff);grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.file-entry.is-error{background:#fff7f7;border-color:#ef44444d}.file-main{align-items:center;gap:10px;min-width:0;display:flex}.file-badge{background:var(--bg,#f5f5f4);border:1px solid var(--border,#e5e5e3);width:32px;height:32px;font-family:var(--mono,"JetBrains Mono", monospace);color:var(--ink-2,#52524f);letter-spacing:.04em;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:9px;font-weight:600;display:flex}.file-copy{min-width:0}.filename{text-overflow:ellipsis;white-space:nowrap;color:var(--ink,#111110);font-size:13px;font-weight:500;display:block;overflow:hidden}.filesize{color:var(--ink-3,#a8a29d);font-size:11.5px;font-family:var(--mono,"JetBrains Mono", monospace)}.file-error-msg{color:#dc2626;margin:2px 0 0;font-size:11.5px}.file-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.chip{white-space:nowrap;border-radius:99px;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.chip-blue{background:var(--blue-light,#eff6ff);color:var(--blue,#2563eb)}.chip-green{color:#166534;background:#dcfce7}.chip-red{color:#dc2626;background:#fee2e2}.chip-muted{background:var(--surface2,#fafaf9);color:var(--ink-3,#a8a29d);border:1px solid var(--border,#e5e5e3)}.remove-btn{border:1px solid var(--border,#e5e5e3);background:var(--surface2,#fafaf9);width:24px;height:24px;color:var(--ink-3,#a8a29d);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:14px;line-height:1;transition:border-color .12s,color .12s;display:flex}.remove-btn:hover{color:#dc2626;border-color:#f87171}.progress-track{background:var(--border,#e5e5e3);border-radius:99px;grid-column:1/-1;height:3px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--blue,#2563eb);height:100%;transition:width .1s linear;display:block}.pw-gate{border:1px solid var(--border,#e5e5e3);border-radius:var(--r,6px);background:var(--surface2,#fafaf9);gap:12px;padding:16px;display:grid}.pw-head{color:var(--ink-3,#a8a29d);align-items:flex-start;gap:10px;display:flex}.pw-title{color:var(--ink,#111110);font-size:13.5px;font-weight:600}.pw-sub{color:var(--ink-3,#a8a29d);margin-top:2px;font-size:12px;line-height:1.5}.pw-form{grid-template-columns:1fr auto;align-items:start;gap:8px;display:grid}.pw-input{background:var(--surface,#fff);height:38px;color:var(--ink,#111110);border:1px solid var(--border,#e5e5e3);border-radius:var(--r,6px);font-size:14px;font-family:var(--font,"Inter", system-ui, sans-serif);box-sizing:border-box;width:100%;padding:0 10px;transition:border-color .12s,box-shadow .12s}.pw-input:focus{border-color:var(--blue,#2563eb);box-shadow:0 0 0 3px var(--blue-ring,#2563eb24);outline:none}.pw-input::placeholder{color:var(--ink-3,#a8a29d)}.pw-btn{background:var(--blue,#2563eb);color:#fff;border-radius:var(--r,6px);height:38px;font-family:var(--font,"Inter", system-ui, sans-serif);cursor:pointer;white-space:nowrap;border:none;padding:0 16px;font-size:13.5px;font-weight:600;transition:opacity .12s}.pw-btn:disabled{opacity:.6;cursor:default}.pw-btn:not(:disabled):hover{opacity:.88}.config-page{--bg:#f5f5f4;--surface:#fff;--surface2:#fafaf9;--border:#e5e5e3;--border-md:#d0d0ce;--blue:#2563eb;--blue-light:#eff6ff;--blue-ring:#2563eb24;--ink:#111110;--ink-2:#52524f;--ink-3:#a8a29d;--font:"Inter", system-ui, sans-serif;--mono:"JetBrains Mono", monospace;--r:6px;background:var(--bg);min-height:100vh;font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}[data-theme=dark] .config-page{--bg:#0e0d0c;--surface:#151311;--surface2:#1d1a17;--border:#2c2926;--border-md:#3d3935;--blue:#5b9ef8;--blue-light:#0c1d3a;--blue-ring:#5b9ef82e;--ink:#ede9e3;--ink-2:#96908a;--ink-3:#56524f}.page-header{max-width:1040px;margin:0 auto;padding:28px 32px 18px}.breadcrumb{align-items:center;gap:6px;margin-bottom:8px;display:flex}.bc-link{color:var(--ink-3);align-items:center;gap:4px;font-size:12.5px;text-decoration:none;display:flex}.bc-link:hover{color:var(--ink-2)}.bc-sep{color:var(--border-md);font-size:12px}.bc-current{color:var(--ink-3);font-size:12.5px}.page-title{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700}.page-sub{color:var(--ink-3);margin-top:4px;font-size:13.5px}.layout{grid-template-columns:1fr 284px;align-items:start;gap:16px;max-width:1040px;margin:0 auto;padding:0 32px 80px;display:grid}.form-col{min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:10px;padding:22px;animation:.28s both fadeUp;box-shadow:0 1px 2px #0000000a}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sec-header{margin-bottom:16px}.sec-head{align-items:center;gap:9px;display:flex}.sec-header:has(.sec-desc) .sec-head{margin-bottom:4px}.sec-num{background:var(--bg);border:1px solid var(--border);width:22px;height:22px;font-family:var(--mono);color:var(--ink-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;display:flex}.sec-title{color:var(--ink);letter-spacing:-.01em;font-size:14.5px;font-weight:600}.sec-desc{color:var(--ink-3);margin:0;padding-left:31px;font-size:12.5px;line-height:1.5}.field-label{color:var(--ink-2);margin-bottom:7px;font-size:12.5px;font-weight:500;display:block}.text-input{background:var(--surface);width:100%;height:38px;color:var(--ink);border:1px solid var(--border);border-radius:var(--r);font-size:14px;font-family:var(--font);box-sizing:border-box;padding:0 10px;transition:border-color .12s,box-shadow .12s}.text-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-ring);outline:none}.text-input::placeholder{color:var(--ink-3)}.grid-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.stack-6{flex-direction:column;gap:6px;display:flex}.stack-7{flex-direction:column;gap:7px;display:flex}.mb-16{margin-bottom:16px}.mb-10{margin-bottom:10px}.row-box{border:1px solid var(--border);border-radius:var(--r);background:var(--surface2);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.row-title{color:var(--ink);font-size:13.5px;font-weight:500}.row-sub{color:var(--ink-3);margin-top:1px;font-size:12px}.enc-expand{margin-top:8px;animation:.18s slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #0000000f}.total-block{border-bottom:1px solid var(--border);padding:18px 18px 14px}.total-label-sm{color:var(--ink-3);margin-bottom:8px;font-size:12px;font-weight:500}.total-price{align-items:baseline;gap:4px;margin-bottom:3px;display:flex}.total-num{font-family:var(--mono);color:var(--ink);letter-spacing:-.03em;font-size:34px;font-weight:500;line-height:1}.total-cur{font-family:var(--mono);color:var(--ink-2);font-size:18px;font-weight:400}.total-sub{color:var(--ink-3);font-size:12px}.sidebar-lines{padding:12px 18px}.sidebar-line{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:4px 0;display:flex}.line-label{color:var(--ink-2);flex:1;padding-right:8px;font-size:12px}.line-val{font-family:var(--mono);color:var(--ink);flex-shrink:0;font-size:11.5px}.sidebar-totals{margin-top:10px}.s-total-row{justify-content:space-between;align-items:baseline;padding:3px 0;display:flex}.s-total-row.bold{border-top:1px solid var(--border);margin-top:4px;padding:8px 0 0}.s-total-l{color:var(--ink-2);font-size:12px}.s-total-row.muted .s-total-l{color:var(--ink-3)}.s-total-row.bold .s-total-l{font-size:13px;font-weight:600}.s-total-v{font-family:var(--mono);color:var(--ink-2);font-size:11.5px}.s-total-row.muted .s-total-v{color:var(--ink-3)}.s-total-row.bold .s-total-v{color:var(--ink);font-size:13px;font-weight:600}.sidebar-actions{flex-direction:column;gap:7px;padding:0 14px 14px;display:flex}.btn-add{background:var(--blue);color:#fff;border-radius:var(--r);cursor:pointer;width:100%;height:40px;font-family:var(--font);border:none;font-size:13.5px;font-weight:600;transition:opacity .12s,transform .12s}.btn-add:hover{opacity:.88;transform:translateY(-1px)}.btn-add:disabled{opacity:.5;cursor:default;transform:none}.btn-save{width:100%;height:34px;color:var(--ink-2);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;font-family:var(--font);background:0 0;font-size:13px;font-weight:400;transition:border-color .12s,color .12s}.btn-save:hover{border-color:var(--border-md);color:var(--ink)}.btn-save:disabled{opacity:.55;cursor:default}.sidebar-trust{border-top:1px solid var(--border);background:var(--surface2);color:var(--ink-3);align-items:center;gap:7px;padding:10px 14px;display:flex}.sidebar-trust span{font-size:11.5px;line-height:1.4}.sidebar-note{border:1px solid var(--border);background:var(--surface);color:var(--ink-3);border-radius:8px;align-items:flex-start;gap:7px;padding:12px 14px;display:flex}.sidebar-note p{margin:0;font-size:12px;line-height:1.55}.upload-state-box{border:1px solid var(--border);border-radius:var(--r);background:var(--surface2);text-align:center;padding:16px}.upload-state-error{background:#fff7f7;border-color:#ef44444d}.upload-state-label{color:var(--ink-2);font-size:13.5px;font-weight:500}.upload-state-sub{color:var(--ink-3);margin-top:4px;font-size:12px}.upload-locked{border:1.5px dashed var(--border);border-radius:var(--r);background:var(--surface2);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;display:flex}.upload-locked-title{color:var(--ink-2);font-size:13.5px;font-weight:600}.upload-locked-sub{color:var(--ink-3);max-width:34ch;font-size:12.5px;line-height:1.55}.upload-auth-links{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px;display:flex}.link-btn{border:1px solid var(--border);border-radius:var(--r);height:32px;color:var(--ink-2);align-items:center;padding:0 14px;font-size:13px;text-decoration:none;transition:border-color .12s,color .12s;display:inline-flex}.link-btn:hover{border-color:var(--border-md);color:var(--ink)}.link-btn-primary{background:var(--blue);color:#fff;border-color:var(--blue)}.link-btn-primary:hover{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.msg-banner{border-radius:var(--r);background:var(--blue-light);color:#1e3a5f;border:1px solid #bfdbfe;margin-bottom:10px;padding:10px 12px;font-size:13.5px}.drop-zone{border:1.5px dashed var(--border-md);border-radius:var(--r);background:var(--surface2);text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:10px;padding:24px;transition:border-color .15s;display:flex}.drop-zone:not(.drop-disabled):hover{border-color:var(--blue)}.drop-zone.drop-disabled{opacity:.7}.drop-title{color:var(--ink-2);font-size:13.5px;font-weight:500}.btn-select{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);height:32px;color:var(--ink-2);cursor:pointer;align-items:center;padding:0 14px;font-size:13px;transition:border-color .12s,color .12s;display:inline-flex}.btn-select:hover:not(.disabled){border-color:var(--border-md);color:var(--ink)}.btn-select.disabled{pointer-events:none;opacity:.5}.btn-upload{background:var(--blue);color:#fff;border-radius:var(--r);cursor:pointer;width:100%;height:40px;font-family:var(--font);border:none;margin-top:10px;font-size:13.5px;font-weight:600;transition:opacity .12s,transform .12s}.btn-upload:hover{opacity:.88;transform:translateY(-1px)}.upload-error{color:#dc2626;margin-top:4px;font-size:12.5px}.sidebar{flex-direction:column;gap:10px;display:flex;position:sticky;top:68px}.complete-page{--bg:#f5f5f4;--surface:#fff;--surface2:#fafaf9;--border:#e5e5e3;--blue:#2563eb;--ink:#111110;--ink-2:#52524f;--ink-3:#a8a29d;--font:"Inter", system-ui, sans-serif;--mono:"JetBrains Mono", monospace;--r:6px;background:var(--bg);min-height:100vh;font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.55}.complete-nav{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#ffffffeb;align-items:center;height:52px;padding:0 36px;display:flex;position:sticky;top:0}.complete-shell{max-width:600px;margin:48px auto;padding:0 24px}.complete-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:20px;padding:32px;display:grid;box-shadow:0 2px 8px #0000000f}.success-icon{color:#166534;background:#dcfce7;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.complete-kicker{letter-spacing:.1em;text-transform:uppercase;color:#166534;margin-bottom:4px;font-size:11px;font-weight:600}.complete-title{color:var(--ink);letter-spacing:-.02em;margin:0 0 6px;font-size:22px;font-weight:700}.complete-sub{color:var(--ink-2);margin:0;font-size:13.5px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-box{border:1px solid var(--border);border-radius:var(--r);background:var(--surface2);padding:14px 16px}.stat-num{font-family:var(--mono);color:var(--ink);letter-spacing:-.02em;font-size:28px;font-weight:500;line-height:1;display:block}.stat-num.num-red{color:#dc2626}.stat-label{color:var(--ink-3);margin-top:4px;font-size:12px;display:block}.warning-msg{color:#dc2626;border-radius:var(--r);background:#fff7f7;border:1px solid #ef44444d;margin:0;padding:10px 12px;font-size:12.5px}.file-results{gap:6px;margin:0;padding:0;list-style:none;display:grid}.result-item{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);justify-content:space-between;align-items:center;padding:9px 12px;font-size:13px;display:flex}.result-item.is-done{border-color:#16653433}.result-item.is-error{background:#fff7f7;border-color:#ef44444d}.result-name{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.result-status{color:var(--ink-3);flex-shrink:0;margin-left:12px;font-size:11px;font-weight:600}.is-done .result-status{color:#166534}.is-error .result-status{color:#dc2626}.complete-actions{flex-wrap:wrap;gap:8px;display:flex}.btn-primary-link{background:var(--blue);color:#fff;border-radius:var(--r);align-items:center;height:36px;padding:0 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:opacity .12s;display:inline-flex}.btn-primary-link:hover{opacity:.88}.btn-ghost-link{height:36px;color:var(--ink-2);border:1px solid var(--border);border-radius:var(--r);background:0 0;align-items:center;padding:0 16px;font-size:13.5px;text-decoration:none;transition:border-color .12s,color .12s;display:inline-flex}.btn-ghost-link:hover{color:var(--ink);border-color:#ccc}@media (width<=920px){.layout,.grid-2,.grid-3{grid-template-columns:1fr}.page-header,.layout{padding-left:16px;padding-right:16px}.sidebar{position:static}.complete-shell{margin:32px auto;padding:0 16px}.complete-card{padding:24px}.stats-grid{grid-template-columns:1fr}}.site-page .staff-body{background:var(--bg)}.site-page .staff-sidebar{background:var(--bg-soft);border-color:var(--border)}.site-page .staff-sidebar-brand{color:var(--ink-3);opacity:1;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px}.site-page .staff-sidebar-nav a{color:var(--ink-2);transition:background .12s,color .12s}.site-page .staff-sidebar-nav a:hover{background:var(--bg-subtle);color:var(--ink)}.site-page .staff-sidebar-nav a.router-link-active{background:var(--blue-soft);color:var(--blue);font-weight:500}.site-page .staff-main{color:var(--ink)}.site-page .user-main{max-width:920px;margin:0 auto;padding:44px 32px 80px}.site-page .page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.site-page .page-head h1{letter-spacing:-.025em;color:var(--ink);margin:0;font-size:26px;font-weight:700;line-height:1.15}.site-page .page-head .sub{color:var(--ink-2);margin-top:5px;margin-bottom:0;font-size:14px}.site-page .head-actions{align-items:center;gap:10px;display:flex}.site-page .back-link{color:var(--ink-3);cursor:pointer;font-size:13px;font-family:var(--font);background:0 0;border:none;align-items:center;gap:6px;margin-bottom:18px;padding:0;text-decoration:none;display:inline-flex}.site-page .back-link:hover{color:var(--ink-2)}.site-page .block{margin-top:36px}.site-page .block-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;font-size:12px;font-weight:600}.site-page .badge{white-space:nowrap;background:var(--t-neutral-bg);color:var(--t-neutral-fg);border-radius:5px;align-self:flex-start;align-items:center;gap:6px;padding:3px 9px 3px 8px;font-size:12px;font-weight:500;display:inline-flex}.site-page .badge .badge-dot{background:var(--t-neutral-dot);border-radius:50%;flex-shrink:0;width:6px;height:6px}.site-page .badge[data-tone=info]{background:var(--t-info-bg);color:var(--t-info-fg)}.site-page .badge[data-tone=info] .badge-dot{background:var(--t-info-dot)}.site-page .badge[data-tone=ok]{background:var(--t-ok-bg);color:var(--t-ok-fg)}.site-page .badge[data-tone=ok] .badge-dot{background:var(--t-ok-dot)}.site-page .badge[data-tone=warn]{background:var(--t-warn-bg);color:var(--t-warn-fg)}.site-page .badge[data-tone=warn] .badge-dot{background:var(--t-warn-dot)}.site-page .badge[data-tone=bad]{background:var(--t-bad-bg);color:var(--t-bad-fg)}.site-page .badge[data-tone=bad] .badge-dot{background:var(--t-bad-dot)}.site-page .badge[data-live] .badge-dot{position:relative}.site-page .badge[data-live] .badge-dot:after{content:"";background:inherit;opacity:.45;border-radius:50%;animation:1.8s ease-out infinite badge-pulse;position:absolute;inset:-3px}@keyframes badge-pulse{0%{opacity:.5;transform:scale(.6)}to{opacity:0;transform:scale(1.9)}}@media (prefers-reduced-motion:reduce){.site-page .badge[data-live] .badge-dot:after{animation:none}}.site-page .widgets{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.site-page .widget{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-card);padding:18px 20px}.site-page .widget.alert,.site-page .widget.widget-alert{border-color:color-mix(in srgb, var(--t-warn-dot) 45%, var(--border))}.site-page .widget-value{font-family:var(--mono);letter-spacing:-.02em;color:var(--ink);font-size:30px;font-weight:500;line-height:1}.site-page .widget-label{color:var(--ink-2);margin-top:8px;font-size:13px}.site-page .widget-sub{color:var(--t-warn-fg);align-items:center;gap:6px;margin-top:10px;font-size:12px;display:flex}.site-page .table-wrap{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg);overflow:hidden}.site-page table.data,.site-page .data-table{border-collapse:collapse;width:100%}.site-page table.data th,.site-page .data-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:var(--bg-soft);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:600}.site-page table.data td,.site-page .data-table td{color:var(--ink-2);border-bottom:1px solid var(--border);vertical-align:middle;padding:13px 16px;font-size:13.5px}.site-page table.data tbody tr:last-child td,.site-page .data-table tbody tr:last-child td{border-bottom:none}.site-page table.data td.strong,.site-page .data-table td.strong{color:var(--ink);font-weight:500}.site-page table.data td.num,.site-page .data-table td.num{font-family:var(--mono);color:var(--ink);font-size:12.5px}.site-page tr.row-link,.site-page .clickable-row{cursor:pointer;transition:background .12s}.site-page tr.row-link:hover td,.site-page .clickable-row:hover td{background:var(--bg-soft)}.site-page tr.row-alert td{background:var(--t-warn-bg)}.site-page .chev{color:var(--ink-3)}.site-page .toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.site-page .select,.site-page .toolbar select,.site-page .filters select{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);height:34px;color:var(--ink);font-family:var(--font);cursor:pointer;appearance:none;padding:0 30px 0 11px;font-size:13px}.site-page .select:focus,.site-page .toolbar select:focus,.site-page .filters select:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 16%, transparent);outline:none}.site-page .card-grid{grid-template-columns:repeat(auto-fill,minmax(264px,1fr));gap:14px;display:grid}.site-page .project-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-card);cursor:pointer;flex-direction:column;gap:11px;padding:18px;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex}.site-page .project-card:hover{border-color:var(--border-md);box-shadow:var(--shadow-card);transform:translateY(-2px)}.site-page .project-card .pc-title{color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:600;line-height:1.3}.site-page .project-card .pc-meta{color:var(--ink-3);font-size:12.5px}.site-page .project-card .pc-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:3px;display:flex}.site-page .project-card .pc-deadline{font-family:var(--mono);color:var(--ink-3);font-size:11.5px}.site-page .meta-grid{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-card);grid-template-columns:150px 1fr;gap:12px 20px;padding:20px 22px;display:grid}.site-page .meta-grid dt{color:var(--ink-3);align-self:start;padding-top:1px;font-size:13px}.site-page .meta-grid dd{color:var(--ink);margin:0;font-size:13.5px}.site-page .meta-grid dd.mono{font-family:var(--mono);font-size:12.5px}.site-page .status-row{align-items:center;gap:12px;display:flex}.site-page .panel{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-card);padding:20px 22px}.site-page .panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.site-page .panel-title{color:var(--ink);font-size:14px;font-weight:600}.site-page .note-card{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-card);padding:16px 18px}.site-page .note-card+.note-card{margin-top:10px}.site-page .note-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;font-size:11px;font-weight:600}.site-page .note-text{color:var(--ink-2);margin:0;font-size:13.5px;line-height:1.6}.site-page .alert-banner{background:var(--t-warn-bg);border:1px solid color-mix(in srgb, var(--t-warn-dot) 35%, var(--border));border-radius:var(--r-lg);color:var(--t-warn-fg);align-items:center;gap:9px;padding:11px 15px;font-size:13px;font-weight:500;display:flex}.site-page .cred-row{border-bottom:1px solid var(--border);align-items:baseline;gap:16px;padding:9px 0;display:flex}.site-page .cred-row:last-child{border-bottom:none}.site-page .cred-key{min-width:120px;color:var(--ink-3);font-size:12.5px}.site-page .cred-val{font-family:var(--mono);color:var(--ink);word-break:break-all;font-size:12.5px}.site-page .ws-state{color:var(--ink);align-items:center;gap:7px;font-size:13.5px;display:inline-flex}.site-page .ws-state .badge-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.site-page .btn-primary{background:var(--blue);color:#fff;border-radius:var(--r);height:36px;font-family:var(--font);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:0 16px;font-size:13.5px;font-weight:600;text-decoration:none;transition:background .15s,transform .12s;display:inline-flex}.site-page .btn-primary:hover{background:var(--blue-dark);transform:translateY(-1px)}.site-page .btn-ghost,.site-page .staff-main .btn-secondary,.site-page .staff-main .secondary-btn,.site-page .staff-main .btn-copy,.site-page .staff-main .btn-toggle{height:36px;color:var(--ink-2);border:1px solid var(--border);border-radius:var(--r);font-family:var(--font);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:500;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.site-page .btn-ghost:hover,.site-page .staff-main .btn-secondary:hover,.site-page .staff-main .secondary-btn:hover,.site-page .staff-main .btn-copy:hover,.site-page .staff-main .btn-toggle:hover{border-color:var(--border-md);color:var(--ink);background:var(--bg-subtle)}.site-page .btn-danger,.site-page .staff-main .btn-danger{height:36px;color:var(--t-bad-fg);border:1px solid color-mix(in srgb, var(--t-bad-fg) 35%, var(--border));border-radius:var(--r);font-family:var(--font);cursor:pointer;background:0 0;align-items:center;padding:0 16px;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.site-page .btn-danger:hover,.site-page .staff-main .btn-danger:hover{background:var(--t-bad-bg)}.site-page .btn-sm,.site-page .staff-main .btn-sm,.site-page .staff-main .btn-primary.btn-sm,.site-page .staff-main .btn-secondary.btn-sm{height:30px;padding:0 11px;font-size:12.5px}.site-page .btn-link{color:var(--blue);font-family:var(--font);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:500}.site-page .btn-link:hover{text-decoration:underline}.site-page .staff-main .btn-back,.site-page .staff-main .btn-edit{color:var(--ink-3);font-family:var(--font);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.site-page .staff-main .btn-back:hover,.site-page .staff-main .btn-edit:hover{color:var(--ink-2)}.site-page button:disabled,.site-page .btn-primary:disabled,.site-page .staff-main .btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.site-page .staff-main input,.site-page .staff-main select,.site-page .staff-main textarea{box-sizing:border-box;border:1px solid var(--border);border-radius:var(--r);background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px}.site-page .staff-main .form-field input,.site-page .staff-main .filters select,.site-page .staff-main form input,.site-page .staff-main form select{border-radius:var(--r);background:var(--bg);min-height:36px;color:var(--ink);padding:8px 11px}.site-page .staff-main input:focus,.site-page .staff-main select:focus,.site-page .staff-main textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 16%, transparent);outline:none}.site-page .staff-main .form-field{color:var(--ink-2);flex-direction:column;gap:6px;font-size:12.5px;font-weight:500;display:flex}.site-page .staff-main .form-error,.site-page .staff-main .action-error{color:var(--t-bad-fg);margin:0;font-size:13px}.site-page .staff-main code,.site-page .staff-main pre{color:var(--ink);font-family:var(--mono)}.site-page .code-pill{font-family:var(--mono);color:var(--ink);background:var(--bg-subtle);border:1px solid var(--border);border-radius:4px;padding:1px 7px;font-size:12px}.site-page .staff-main .link-url{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--r);color:var(--ink-2);font-family:var(--mono);word-break:break-all;flex:1;padding:9px 12px;font-size:12px}.site-page .loading,.site-page .empty,.site-page .staff-main .empty{color:var(--ink-3);opacity:1;padding:2rem 0;font-size:13.5px}.site-page .error,.site-page .staff-main .error{color:var(--t-bad-fg);opacity:1;font-size:13.5px}.site-page .state-msg{color:var(--ink-3);padding:2rem 0;font-size:13.5px}.site-page .state-error{color:var(--t-bad-fg);font-size:13.5px}[data-theme=dark] .site-page .staff-main input,[data-theme=dark] .site-page .staff-main select,[data-theme=dark] .site-page .staff-main textarea,[data-theme=dark] .site-page .staff-main form input,[data-theme=dark] .site-page .staff-main form select{background:var(--bg-subtle)}[data-theme=dark] .site-page tr.row-link:hover td,[data-theme=dark] .site-page .clickable-row:hover td{background:#ffffff08}[data-theme=dark] .site-page .project-card:hover{border-color:var(--border-md);background:#ffffff05}@media (width<=900px){.site-page .staff-main .page-header{flex-direction:column;align-items:flex-start}.site-page .data-table{min-width:720px}.site-page .user-main{padding:32px 20px 60px}}
