/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:root{--ink:#172033;--navy:#101a2b;--navy-2:#162238;--muted:#718096;--line:#e6e9ef;--paper:#fff;--canvas:#f4f6f8;--teal:#128274;--teal-soft:#e8f5f2;--amber:#c98320;--amber-soft:#fff5de;--red:#bb4b4b;--red-soft:#fff0ef}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink)}body{background:var(--canvas);color:var(--ink);margin:0;font-family:Arial,Microsoft YaHei,微软雅黑,PingFang SC,Noto Sans CJK SC,Noto Sans SC,Heiti SC,SimHei,SimSun,sans-serif}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline-offset:2px;outline:3px solid #12827438}.app-shell{min-height:100vh}.sidebar{z-index:30;background:var(--navy);color:#dce4ee;flex-direction:column;width:244px;display:flex;position:fixed;inset:0 auto 0 0}.brand-block{border-bottom:1px solid #ffffff14;align-items:center;gap:13px;height:88px;padding:0 22px;display:flex}.brand-mark{color:#fff;background:#18a08e;border-radius:9px 9px 9px 3px;place-items:center;width:38px;height:38px;font-weight:800;display:grid;box-shadow:inset 0 0 0 1px #ffffff2e}.brand-block strong{color:#fff;letter-spacing:.08em;font-size:18px;display:block}.brand-block small{color:#73829a;letter-spacing:.15em;margin-top:4px;font-size:9px;display:block}.sidebar nav{flex:1;padding:20px 14px;overflow-y:auto}.nav-group+.nav-group{margin-top:25px}.nav-label{color:#65738a;letter-spacing:.16em;padding:0 10px 9px;font-size:10px;font-weight:700;display:block}.nav-group button{color:#99a8bc;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:30px 1fr auto;align-items:center;gap:7px;width:100%;height:44px;padding:0 10px;transition:all .16s;display:grid}.nav-group button:hover{color:#fff;background:#ffffff0d}.nav-group button.active{color:#fff;background:#1c2b43;box-shadow:inset 3px 0 #26b6a3}.nav-icon{border:1px solid #ffffff24;border-radius:6px;place-items:center;width:25px;height:25px;font-size:11px;font-weight:800;display:grid}.nav-group button.active .nav-icon{color:#4dd0bd;border-color:#4dd0bd66}.nav-group button em{color:#bfc9d6;background:#2b3c56;border-radius:10px;place-items:center;min-width:22px;height:19px;padding:0 6px;font-size:10px;font-style:normal;display:grid}.sidebar-foot{border-top:1px solid #ffffff14;padding:16px 14px 18px}.storage-meter{padding:0 9px 16px}.storage-meter>span{color:#7f8ea4;justify-content:space-between;align-items:center;display:flex}.storage-meter b{color:#aab7c8;font-size:11px}.storage-meter small{font-size:9px}.storage-meter i{background:#27364e;border-radius:4px;height:3px;margin-top:8px;display:block;overflow:hidden}.storage-meter i b{background:#2db5a3;height:100%;display:block}.sidebar-user{background:#ffffff0a;border-radius:9px;grid-template-columns:35px 1fr auto;align-items:center;gap:9px;padding:10px 9px;display:grid}.avatar,.mini-avatar{color:#286449;background:#d8ecde;border-radius:50%;place-items:center;font-weight:800;display:inline-grid}.avatar{width:35px;height:35px}.sidebar-user strong,.sidebar-user small{display:block}.sidebar-user strong{color:#e7edf5;font-size:12px}.sidebar-user small{color:#73829a;margin-top:3px;font-size:10px}.sidebar-user button{color:#6f7d91;cursor:pointer;background:0 0;border:0}.content-shell{min-width:0;margin-left:244px}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;align-items:center;height:88px;padding:0 34px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.02em;margin:4px 0 0;font-size:21px}.eyebrow{color:#8b97a8;letter-spacing:.18em;font-size:9px;font-weight:800;line-height:1}.topbar-actions{align-items:center;gap:12px;display:flex}.sync-state{color:#98a2b1;align-items:center;gap:7px;font-size:11px;display:flex}.sync-state i{background:#b1bac6;border-radius:50%;width:7px;height:7px}.sync-state.online{color:#358273}.sync-state.online i{background:#2cad96;box-shadow:0 0 0 4px #2cad961c}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;place-items:center;width:36px;height:36px;font-size:19px;display:grid;position:relative}.notification-dot{background:#df665a;border-radius:50%;width:5px;height:5px;position:absolute;top:8px;right:9px}.primary-button,.light-button,.outline-button,.ghost-button,.toolbar-button{cursor:pointer;border-radius:7px;font-weight:700;transition:all .16s}.primary-button{color:#fff;background:#18263a;border:1px solid #18263a;min-height:40px;padding:0 17px;box-shadow:0 2px 5px #101a2b24}.primary-button:hover{background:#0f1928;transform:translateY(-1px)}.primary-button:disabled{opacity:.65;cursor:wait;transform:none}.primary-button.compact{min-height:36px;padding:0 14px;font-size:12px}.primary-button.full,.outline-button.full{width:100%}.outline-button{color:#42506a;background:#fff;border:1px solid #d6dce4;min-height:38px;padding:0 15px}.outline-button:hover{background:#fafbfc;border-color:#aeb9c7}.mobile-menu{display:none}main{padding:30px 34px 60px}.page-stack{gap:22px;max-width:1510px;margin:0 auto;display:grid}.command-hero{background:var(--navy);color:#fff;border-radius:14px;grid-template-columns:minmax(0,1.2fr) minmax(430px,.8fr);min-height:354px;display:grid;overflow:hidden;box-shadow:0 10px 35px #131f3221}.hero-copy{background-image:radial-gradient(circle at 12% 110%,#23b9a32b,#0000 39%);padding:48px 52px;position:relative}.hero-copy:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:130px;height:130px;position:absolute;top:-54px;right:7%}.hero-kicker{color:#8ce0d2;letter-spacing:.06em;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.hero-kicker i{background:#48cdb7;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #48cdb71f}.hero-copy h2{letter-spacing:-.045em;max-width:760px;margin:22px 0 16px;font-size:clamp(29px,3vw,44px);line-height:1.27}.hero-copy p{color:#aebacc;max-width:650px;margin:0;font-size:14px;line-height:1.85}.hero-actions{gap:10px;margin-top:29px;display:flex}.light-button{color:#132038;background:#fff;border:1px solid #fff;min-height:42px;padding:0 18px}.light-button span{margin-left:15px}.ghost-button{color:#cad4e1;background:0 0;border:1px solid #ffffff2e;min-height:42px;padding:0 18px}.ghost-button:hover{color:#fff;border-color:#ffffff59}.hero-proof{color:var(--ink);background:#f8fbfb;border-radius:10px;align-self:stretch;margin:28px 28px 28px 0;padding:28px;box-shadow:0 12px 40px #0003}.proof-head{border-bottom:1px solid #e3e9ea;justify-content:space-between;align-items:baseline;padding-bottom:20px;display:flex}.proof-head span{color:#7d8a98;font-size:11px}.proof-head strong{letter-spacing:.04em;font-size:12px}.proof-flow{align-items:center;margin:25px 0 22px;display:flex}.proof-step{text-align:center;flex-direction:column;align-items:center;min-width:90px;display:flex}.proof-step i{color:#718090;border:1px solid #cbd5dc;border-radius:50%;place-items:center;width:27px;height:27px;margin-bottom:8px;font-size:10px;font-style:normal;display:grid}.proof-step.done i{background:var(--teal-soft);color:var(--teal);border-color:#2eab97}.proof-step b{font-size:12px}.proof-step small{color:#8995a4;margin-top:3px;font-size:9px}.proof-line{background:#cbd8d6;flex:1;height:1px}.proof-total{background:#fff;border:1px solid #e4e9ed;border-radius:7px;grid-template-columns:1fr auto;gap:9px;padding:15px 17px;font-size:12px;display:grid}.proof-total span{color:#748091}.proof-total b{text-align:right}.proof-pass{background:var(--teal-soft);border-radius:7px;align-items:center;gap:11px;margin-top:16px;padding:13px 15px;display:flex}.proof-pass>span{background:var(--teal);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-weight:800;display:grid}.proof-pass strong,.proof-pass small{display:block}.proof-pass strong{color:#176d61;font-size:12px}.proof-pass small{color:#54877f;margin-top:3px;font-size:9px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-grid article{border:1px solid var(--line);background:#fff;border-radius:10px;padding:20px 22px;box-shadow:0 2px 9px #111e3108}.metric-top{justify-content:space-between;align-items:center;display:flex}.metric-grid article>span,.metric-top span{color:#6f7c8e;font-size:11px}.metric-top em{background:var(--teal-soft);color:var(--teal);border-radius:4px;padding:4px 6px;font-size:9px;font-style:normal;font-weight:700}.metric-top em.neutral{background:var(--amber-soft);color:#a56b1a}.metric-grid article>strong{color:#142034;letter-spacing:-.04em;margin:15px 0 6px;font-size:27px;display:block}.metric-grid article>strong i{font-size:13px;font-style:normal;font-weight:500}.metric-grid article>small{color:#9aa4b0;font-size:10px}.two-column-grid{grid-template-columns:minmax(0,1.42fr) minmax(370px,.58fr);gap:16px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:10px;box-shadow:0 2px 10px #0e1c2f09}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:72px;padding:0 22px;display:flex}.panel-head>div{align-items:center;gap:13px;display:flex}.panel-head h3{margin:5px 0 0;font-size:16px}.panel-head p{color:#8994a3;margin:4px 0 0;font-size:11px}.text-button{color:#397f75;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.job-list{padding:2px 13px 10px}.job-row{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #eef0f3;grid-template-columns:38px minmax(170px,1fr) minmax(110px,.45fr) 72px 16px;align-items:center;gap:12px;width:100%;padding:14px 9px;display:grid}.job-row:last-child{border-bottom:0}.job-row:hover{background:#fafbfc}.file-mark{color:#277a5d;background:#edf7f2;border-radius:5px;place-items:center;width:34px;height:38px;font-size:9px;font-weight:900;display:grid}.job-main strong,.job-main small,.job-amount strong,.job-amount small{display:block}.job-main strong{font-size:12px}.job-main small,.job-amount small{color:#929dab;margin-top:5px;font-size:9px}.job-amount{text-align:right}.job-amount strong{font-size:12px}.row-arrow{color:#a4acb7;font-size:20px}.status-badge{color:#667283;white-space:nowrap;background:#eef1f4;border-radius:12px;justify-content:center;align-items:center;min-width:61px;height:24px;padding:0 8px;font-size:9px;font-weight:700;display:inline-flex}.status-ready,.status-active,.status-paid{background:var(--teal-soft);color:#21786b}.status-exported,.status-issued{color:#4965a6;background:#edf2ff}.status-review,.status-invited,.status-overdue{background:var(--amber-soft);color:#9b681d}.status-failed,.status-disabled,.status-void{background:var(--red-soft);color:var(--red)}.month-chip,.page-chip,.verified-chip,.tag{color:#6f7a89;background:#f1f4f6;border-radius:5px;padding:5px 8px;font-size:9px;font-weight:700}.verified-chip{background:var(--teal-soft);color:#27796e}.progress-chart{justify-content:center;align-items:center;gap:38px;padding:23px 18px 16px;display:flex}.ring{--progress:75%;background:conic-gradient(#1b9a87 var(--progress), #e9edef 0);border-radius:50%;place-items:center;width:112px;height:112px;display:grid;position:relative}.ring:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:10px}.ring>span{z-index:1;text-align:center;position:relative}.ring strong,.ring small{display:block}.ring strong{font-size:24px}.ring small{color:#8a95a4;margin-top:2px;font-size:9px}.progress-legend{min-width:150px}.progress-legend div{color:#717d8d;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:5px 0;font-size:10px;display:grid}.progress-legend b{color:#26344b}.progress-legend hr{border:0;border-top:1px solid #edf0f2;margin:8px 0}.dot{border-radius:50%;width:6px;height:6px}.dot.teal{background:var(--teal)}.dot.amber{background:var(--amber)}.dot.gray{background:#d9dee4}.deadline{background:#f6f8fa;border-radius:6px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin:0 16px 16px;padding:12px 13px;font-size:10px;display:grid}.deadline span{color:#8b96a4}.deadline strong{font-size:10px}.deadline button{color:#278173;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:700}.section-intro{justify-content:space-between;align-items:end;padding:5px 1px 2px;display:flex}.section-intro h2{letter-spacing:-.025em;margin:0;font-size:22px}.section-intro p{color:#7c8998;margin:7px 0 0;font-size:12px}.table-panel{overflow:hidden}.table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:12px 17px;display:flex}.search-box{background:#fafbfc;border:1px solid #dfe3e8;border-radius:7px;align-items:center;gap:9px;width:min(420px,45vw);height:38px;padding:0 12px;display:flex}.search-box span{color:#8a96a5}.search-box input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:11px}.toolbar-filters{gap:7px;display:flex}.toolbar-filters button,.toolbar-button{color:#687586;cursor:pointer;background:#fff;border:1px solid #dfe3e8;border-radius:6px;min-height:36px;padding:0 12px;font-size:10px}.data-table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:11px}.data-table th{color:#808c9b;text-align:left;letter-spacing:.04em;white-space:nowrap;background:#f8f9fb;height:42px;padding:0 15px;font-size:9px}.data-table td{color:#536174;vertical-align:middle;white-space:nowrap;border-top:1px solid #edf0f2;height:64px;padding:9px 15px}.data-table tbody tr:hover{background:#fbfcfd}.data-table td>strong,.data-table td>small{display:block}.data-table td>strong{color:#26344b;font-size:11px}.data-table td>small{color:#929daa;margin-top:5px;font-size:9px}.money-cell{text-align:right;font-weight:700;color:#1d2a3e!important}.mini-avatar{width:25px;height:25px;margin-right:7px;font-size:9px}.more-button{color:#9aa3af;cursor:pointer;background:0 0;border:0}.table-footer{border-top:1px solid var(--line);color:#8995a4;justify-content:space-between;align-items:center;height:54px;padding:0 17px;font-size:10px;display:flex}.table-footer div{gap:4px;display:flex}.table-footer button{color:#7a8694;background:#fff;border:1px solid #e1e4e8;border-radius:5px;width:27px;height:27px}.table-footer button.current{color:#fff;background:#17263b;border-color:#17263b}.workflow-strip{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;min-height:82px;padding:13px 28px;display:grid}.workflow-step{color:#9aa3ae;align-items:center;gap:11px;display:flex}.workflow-step>span{border:1px solid #d7dde4;border-radius:50%;place-items:center;width:30px;height:30px;font-size:10px;font-weight:700;display:grid}.workflow-step strong,.workflow-step small{display:block}.workflow-step strong{font-size:11px}.workflow-step small{margin-top:4px;font-size:9px}.workflow-step.active{color:#23463f}.workflow-step.active>span{background:var(--teal);border-color:var(--teal);color:#fff}.workflow-strip>i{background:#e0e5e9;height:1px;margin:0 25px}.upload-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:17px;display:grid}.upload-main{gap:15px;display:grid}.upload-card{overflow:hidden}.step-number{color:#277e70;background:#edf4f4;border-radius:7px;place-items:center;width:31px;height:31px;font-size:9px;font-weight:800;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.compact-grid{grid-template-columns:1.5fr .6fr .55fr;padding:18px 22px 22px}.form-grid label>span{color:#667386;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.form-grid input,.form-grid select{color:#26344b;background:#fff;border:1px solid #dce1e7;border-radius:6px;width:100%;height:40px;padding:0 11px;font-size:11px}.form-grid input[readonly]{color:#6f7c8c;background:#f8fafb}.input-suffix{position:relative}.input-suffix input{padding-right:32px}.input-suffix b{color:#778494;font-size:11px;position:absolute;top:12px;right:11px}.drop-zone{text-align:center;cursor:pointer;background:#fafcfc;border:1px dashed #bfc9d4;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;min-height:185px;margin:18px 22px 13px;padding:25px;transition:all .17s;display:flex}.drop-zone:hover{background:#f6fbfa;border-color:#5ea79b}.drop-zone.has-file{background:#f5fbfa;border-style:solid;border-color:#a8d7cf}.upload-icon{color:#267553;background:#e2f2e9;border-radius:6px 6px 6px 2px;place-items:center;width:43px;height:49px;margin-bottom:12px;font-size:10px;font-weight:900;display:grid}.drop-zone strong{text-overflow:ellipsis;white-space:nowrap;max-width:500px;font-size:12px;overflow:hidden}.drop-zone p{color:#8c97a4;margin:7px 0 13px;font-size:10px}.drop-zone .outline-button{min-height:32px;font-size:10px}.processing-line{color:#357a70;align-items:center;gap:8px;margin:0 22px 12px;font-size:10px;display:flex}.processing-line i{border:2px solid #b9dfd9;border-top-color:var(--teal);border-radius:50%;width:13px;height:13px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sheet-chips{flex-wrap:wrap;gap:7px;margin:0 22px 15px;display:flex}.sheet-chips span{color:#7d8998;background:#f3f6f8;border-radius:5px;padding:7px 9px;font-size:9px}.sheet-chips b{color:#36455b;margin-right:7px}.template-row{background:#f7f8fa;border-radius:7px;justify-content:space-between;align-items:center;min-height:62px;margin:0 22px 20px;padding:10px 13px;display:flex}.template-row>div{align-items:center;gap:10px;display:flex}.template-icon{color:#52627a;background:#fff;border:1px solid #dfe4e8;border-radius:6px;place-items:center;width:31px;height:31px;font-size:10px;font-weight:800;display:grid}.template-row strong,.template-row small{display:block}.template-row strong{font-size:10px}.template-row small{color:#8a96a4;margin-top:4px;font-size:9px}.validation-card{overflow:hidden}.calculation-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:8px;padding:20px 22px;display:grid}.calculation-flow>div{background:#f8fafb;border:1px solid #edf0f2;border-radius:7px;min-width:0;padding:14px 12px}.calculation-flow>b{color:#a1aab5;align-self:center}.calculation-flow span,.calculation-flow strong,.calculation-flow small{display:block}.calculation-flow span{color:#778494;font-size:9px}.calculation-flow strong{white-space:nowrap;margin:8px 0 5px;font-size:14px}.calculation-flow small{color:#99a3af;font-size:8px}.calculation-flow div.highlight{background:#fff9ea;border-color:#f0dfad}.calculation-flow div.result{background:#eaf7f4;border-color:#bfe0d9}.calculation-flow div.result strong{color:#146f62}.reconcile-bar{color:#567169;background:#f7faf9;border-top:1px solid #e6efec;flex-wrap:wrap;gap:20px;padding:12px 22px;font-size:9px;display:flex}.reconcile-bar i{color:#1c8c78;background:#dff2ec;border-radius:50%;place-items:center;width:16px;height:16px;margin-right:6px;font-style:normal;display:inline-grid}.job-summary{padding:23px;position:sticky;top:107px}.job-summary h3{margin:7px 0 19px;font-size:16px}.job-summary dl{margin:0}.job-summary dl div{border-bottom:1px solid #edf0f2;grid-template-columns:85px 1fr;gap:8px;padding:10px 0;font-size:10px;display:grid}.job-summary dt{color:#8994a2}.job-summary dd{text-align:right;color:#35445b;margin:0;font-weight:700;line-height:1.5}.summary-money{background:#f2f8f7;border-radius:8px;margin:18px 0;padding:16px}.summary-money span,.summary-money strong,.summary-money small{display:block}.summary-money span{color:#6c837e;font-size:9px}.summary-money strong{color:#146f62;margin:7px 0 4px;font-size:23px}.summary-money small{color:#82958f;font-size:8px}.job-summary .full+.full{margin-top:8px}.summary-note{color:#929ca9;text-align:center;margin:12px 3px 0;font-size:8px;line-height:1.6}.preview-section{padding-top:7px}.preview-section>header{justify-content:space-between;align-items:end;margin-bottom:13px;display:flex}.preview-section h2{margin:6px 0 0;font-size:19px}.preview-section>header>div:last-child{align-items:center;gap:9px;display:flex}.statement-stage{background:#dfe4e7;border-radius:10px;padding:25px;overflow-x:auto;box-shadow:inset 0 2px 12px #23313e14}.statement-sheet{color:#050505;background:#fff;width:1122px;min-height:794px;margin:0 auto;padding:45px 42px 38px;font-family:Arial,Microsoft YaHei,微软雅黑,PingFang SC,Noto Sans CJK SC,Noto Sans SC,Heiti SC,SimHei,SimSun,sans-serif;font-size:11px;box-shadow:0 8px 30px #1c2a3729}.statement-company{justify-content:space-between;align-items:start;display:flex}.statement-company>strong{letter-spacing:.01em;font-size:21px}.statement-company>div{flex-direction:column;align-items:end;gap:5px;font-size:10px;display:flex}.statement-merchant{grid-template-columns:185px 1fr 250px;gap:30px;min-height:104px;margin-top:50px;display:grid}.statement-labels,.statement-values{grid-template-rows:22px 27px 1fr;display:grid}.statement-labels strong,.statement-values strong,.statement-values span{font-size:11px}.statement-meta{grid-template-columns:1fr auto;align-content:end;gap:10px 22px;font-size:10px;display:grid}.statement-meta strong{text-align:right}.statement-sheet>h1{color:#7c7c7c;text-align:right;letter-spacing:-.02em;margin:10px 0 6px;font-size:26px}.statement-lines{border-collapse:collapse;table-layout:fixed;width:100%}.statement-lines thead{border-top:1px solid #777}.statement-lines th{text-align:center;height:40px;padding:4px 6px;font-size:9px;font-weight:500;line-height:1.25}.statement-lines th:first-child{width:105px}.statement-lines th:nth-child(2){width:135px}.statement-lines th:nth-child(3){width:45px}.statement-lines th:nth-child(4){width:55px}.statement-lines th:nth-child(5){width:145px}.statement-lines th:nth-child(6){width:100px}.statement-lines th:nth-child(7),.statement-lines th:nth-child(8){width:104px}.statement-lines th:nth-child(9){width:170px}.statement-lines th:nth-child(10){width:110px}.statement-lines td{text-align:center;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";background:#f7f7f7;border:1px solid #000;height:28px;padding:5px 8px;font-size:10px}.statement-lines tbody tr:first-child td{border-top-width:2px}.statement-lines td:nth-child(2){text-align:left;background:#fff}.statement-lines td:nth-child(5),.statement-lines td:nth-child(6),.statement-lines td:nth-child(7),.statement-lines td:nth-child(8),.statement-lines td:nth-child(9),.statement-lines td:nth-child(10){text-align:right;white-space:nowrap}.statement-bottom{grid-template-columns:793px 280px;gap:0;display:grid}.bank-details{padding-top:0}.bank-details>div{grid-template-columns:230px 1fr;align-items:center;min-height:36px;display:grid}.bank-details span{font-size:11px}.bank-details strong{font-size:11px;font-weight:500}.statement-summary{border-collapse:collapse;table-layout:fixed;width:100%}.statement-summary th,.statement-summary td{background:#fff2c9;border:1px solid #000;height:34px;padding:7px 17px;font-size:10px}.statement-summary th{text-align:left;width:170px}.statement-summary td{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";white-space:nowrap}.statement-footer{margin-top:25px}.statement-footer p{color:#333;line-height:1.5}.statement-footer>strong{margin-top:18px;font-style:italic;display:block}.client-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.client-cell{align-items:center;gap:10px;display:flex}.client-cell>span{color:#247565;background:#eaf4f1;border-radius:8px;flex:none;place-items:center;width:33px;height:33px;font-weight:800;display:grid}.client-cell strong,.client-cell small{display:block}.client-cell small{color:#929daa;margin-top:4px;font-size:9px}.invoice-summary{grid-template-columns:.7fr .7fr 1.3fr;gap:14px;display:grid}.invoice-summary article{border:1px solid var(--line);background:#fff;border-radius:9px;min-height:112px;padding:19px 21px}.invoice-summary article>span,.invoice-summary article>strong,.invoice-summary article>small{display:block}.invoice-summary article>span{color:#7a8797;font-size:10px}.invoice-summary article>strong{margin:12px 0 5px;font-size:23px}.invoice-summary article>small{color:#97a0ac;font-size:9px}.invoice-summary article.invoice-action{color:#fff;background:#152238;border-color:#152238;grid-template-columns:45px 1fr auto;align-items:center;gap:12px;display:grid}.invoice-symbol{background:#ffffff1a;border-radius:7px;place-items:center;width:42px;height:42px;font-weight:800;color:#6ed2c1!important;display:grid!important}.invoice-action strong{font-size:12px}.invoice-action p{color:#96a5ba;margin:6px 0 0;font-size:9px}.invoice-action button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff38;border-radius:6px;min-height:32px;padding:0 11px;font-size:9px}.tab-buttons{gap:4px;display:flex}.tab-buttons button{color:#7b8795;cursor:pointer;background:0 0;border:0;border-radius:5px;min-height:31px;padding:0 11px;font-size:10px}.tab-buttons button.active{color:#27786c;background:#edf3f2;font-weight:700}.permission-callout{background:#edf6f5;border:1px solid #d3eae6;border-radius:9px;justify-content:space-between;align-items:center;padding:17px 20px;display:flex}.permission-callout>div{align-items:center;gap:13px;display:flex}.permission-callout>div>span{color:#277a6e;background:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:10px;font-weight:800;display:grid}.permission-callout strong{font-size:11px}.permission-callout p{color:#66847e;margin:4px 0 0;font-size:9px}.permission-callout button{color:#25776a;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:700}.member-count{color:#8894a3;font-size:10px}.avatar-role.role-admin{color:#4f64a2;background:#e8edf9}.avatar-role.role-reviewer{color:#9a691c;background:#fff2dc}.permission-tags{gap:4px;display:flex}.permission-tags span,.permission-tags em{color:#6d7886;background:#f0f3f6;border-radius:4px;padding:4px 6px;font-size:8px;font-style:normal}.rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.rule-card{padding:21px}.rule-card.featured{border-top:3px solid var(--teal)}.rule-card header,.rule-card footer{justify-content:space-between;align-items:center;display:flex}.rule-icon{color:#227a6b;background:#edf5f3;border-radius:7px;place-items:center;width:37px;height:37px;font-size:10px;font-weight:900;display:grid}.rule-card h3{margin:19px 0 8px;font-size:15px}.rule-card>p{color:#7d8998;min-height:42px;margin:0;font-size:10px;line-height:1.7}.formula-box{background:#f7f9fa;border-radius:7px;grid-template-columns:80px 1fr;gap:9px;margin:15px 0;padding:13px;font-size:9px;display:grid}.formula-box span{color:#7e8a98}.formula-box strong{font-family:var(--font-geist-mono), monospace;font-size:8px}.rule-card ul{min-height:92px;margin:13px 0;padding:0;list-style:none}.rule-card li{border-bottom:1px solid #edf0f2;justify-content:space-between;gap:10px;padding:7px 0;font-size:9px;display:flex}.rule-card li span{color:#84909e}.rule-card footer{color:#8c97a4;border-top:1px solid #edf0f2;padding-top:13px;font-size:8px}.rule-card footer button{color:#277a6e;cursor:pointer;background:0 0;border:0;font-weight:700}.template-mini{background:#f7f8fa;grid-template-rows:18px 32px;grid-template-columns:1fr 2fr;gap:5px;margin:15px 0 22px;padding:12px;display:grid}.template-mini i{background:#d9e0e4;border-radius:2px}.template-mini i:first-child{background:#b9c6cc;grid-column:span 2}.template-mini i:nth-child(4){background:#f4dfab}.dependency-panel{overflow:hidden}.lineage{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:17px;padding:26px 27px;display:grid}.lineage>div{border:1px solid #e4e8ec;border-radius:8px;min-height:92px;padding:14px}.lineage>div>span{color:#2b8a7b;font-size:9px;font-weight:800}.lineage strong,.lineage small{display:block}.lineage strong{margin:9px 0 6px;font-size:12px}.lineage small{color:#8894a2;font-size:8px;line-height:1.5}.lineage>i{color:#aab2bd;font-style:normal}.audit-panel{overflow:hidden}.audit-list{padding:4px 18px 15px}.audit-entry{border-bottom:1px solid #edf0f2;grid-template-columns:38px 1fr auto;align-items:center;gap:13px;min-height:82px;display:grid}.audit-entry:last-child{border-bottom:0}.audit-icon{color:#607082;background:#edf3f5;border-radius:50%;place-items:center;width:35px;height:35px;font-size:8px;font-weight:900;display:grid}.audit-export{color:#4c60a0;background:#edf0fa}.audit-check{background:var(--teal-soft);color:var(--teal)}.audit-upload{color:#2e8052;background:#e9f4ed}.audit-edit{background:var(--amber-soft);color:var(--amber)}.audit-entry strong{font-size:11px}.audit-entry p{color:#536174;margin:0 0 0 5px;font-size:10px;display:inline}.audit-entry small{color:#909ba8;margin-top:6px;font-size:9px;display:block}.audit-entry time{color:#939eaa;font-size:9px}.action-cell{position:relative}.clickable-row{cursor:pointer}.clickable-row:hover td{background:#f6f9f9}.action-menu{z-index:20;border:1px solid var(--line);background:#fff;border-radius:8px;min-width:140px;padding:5px;position:absolute;top:100%;right:12px;box-shadow:0 12px 34px #0b131f2e}.action-menu button{color:#435063;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;width:100%;padding:8px 10px;font-size:10px;display:block}.action-menu button:hover{color:#226b60;background:#f0f5f4}.more-button:disabled{opacity:.4;cursor:default}.role-tags{flex-wrap:wrap;gap:4px;display:flex}.role-tags span{color:#247565;background:#eaf4f1;border-radius:4px;padding:4px 7px;font-size:8px;font-weight:700}.lock-chip{color:#7a8698;background:#f0f3f6;border-radius:6px;padding:5px 10px;font-size:9px;font-weight:700}.status-options{grid-template-columns:repeat(3,minmax(0,1fr))}.status-options button{text-align:center;min-height:40px}.toolbar-filters select,.table-toolbar select{border:1px solid var(--line);color:#566172;cursor:pointer;background:#fff;border-radius:6px;min-height:33px;padding:0 10px;font-size:10px}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0b131f94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border-radius:12px;width:min(650px,96vw);max-height:92vh;overflow:auto;box-shadow:0 24px 80px #0000004d}.modal-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:82px;padding:0 24px;display:flex}.modal-card h2{margin:6px 0 0;font-size:19px}.modal-form{padding:22px 24px 24px}.modal-form .span-2{grid-column:span 2}.modal-form footer{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;margin-top:22px;padding-top:18px;display:flex}.role-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.role-options button{text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe3e8;border-radius:7px;min-height:64px;padding:11px}.role-options button.active{background:#f0f8f6;border-color:#4ba294;box-shadow:inset 0 0 0 1px #4ba294}.role-options strong,.role-options small{display:block}.role-options strong{font-size:10px}.role-options small{color:#8b96a3;margin-top:5px;font-size:8px}.empty-hint{background:#f3f7f7;border-radius:6px;gap:9px;margin-top:16px;padding:11px;display:flex}.empty-hint>span{color:#25766b;background:#dcefeb;border-radius:50%;place-items:center;width:18px;height:18px;font-size:9px;font-weight:800;display:grid}.empty-hint p{color:#637c78;margin:1px 0 0;font-size:9px;line-height:1.6}.toast{z-index:100;color:#266d62;background:#f4fbf9;border:1px solid #bdded7;border-radius:8px;align-items:center;gap:10px;max-width:480px;padding:13px 16px;font-size:11px;font-weight:700;display:flex;position:fixed;bottom:24px;right:26px;box-shadow:0 10px 35px #152f2a29}.toast span{background:var(--teal);color:#fff;border-radius:50%;place-items:center;width:21px;height:21px;font-size:9px;display:grid}@media (width<=1180px){.command-hero{grid-template-columns:1fr}.hero-proof{margin:0 28px 28px}.metric-grid{grid-template-columns:repeat(2,1fr)}.two-column-grid,.upload-layout{grid-template-columns:1fr}.job-summary{position:static}.calculation-flow{grid-template-columns:repeat(5,1fr)}.calculation-flow>b{display:none}.rule-grid{grid-template-columns:1fr 1fr}.rule-card.featured{grid-column:span 2}.lineage{gap:8px}}@media (width<=820px){.sidebar{transition:transform .2s;transform:translate(-100%);box-shadow:20px 0 50px #0003}.sidebar.sidebar-open{transform:translate(0)}.content-shell{margin-left:0}.topbar{height:76px;padding:0 18px}.mobile-menu{border:1px solid var(--line);background:#fff;border-radius:7px;width:35px;height:35px;display:block}.topbar>div:nth-child(2){flex:1;margin-left:12px}.sync-state,.topbar-actions .icon-button{display:none}main{padding:20px 16px 45px}.hero-copy{padding:34px 26px}.hero-copy h2{font-size:29px}.hero-proof{margin:0 16px 16px;padding:20px}.metric-grid,.client-metrics{grid-template-columns:1fr 1fr}.workflow-strip{padding:12px 15px;overflow-x:auto}.workflow-step{min-width:150px}.workflow-strip>i{min-width:30px;margin:0 10px}.compact-grid{grid-template-columns:1fr}.calculation-flow{grid-template-columns:1fr 1fr}.calculation-flow>div.result{grid-column:span 2}.section-intro{align-items:start;gap:14px}.section-intro p{max-width:410px}.invoice-summary{grid-template-columns:1fr 1fr}.invoice-action{grid-column:span 2}.rule-grid{grid-template-columns:1fr}.rule-card.featured{grid-column:auto}.lineage{grid-template-columns:repeat(7,minmax(150px,1fr));overflow-x:auto}.search-box{width:100%}.toolbar-filters{display:none}}@media (width<=560px){.topbar-actions .primary-button{width:36px;padding:0;font-size:0}.topbar-actions .primary-button span{font-size:18px}.metric-grid,.client-metrics{grid-template-columns:1fr}.hero-actions{flex-direction:column}.proof-flow{overflow-x:auto}.proof-step{min-width:85px}.progress-chart{gap:20px}.job-row{grid-template-columns:38px 1fr auto}.job-amount,.job-row .status-badge{display:none}.section-intro{flex-direction:column;align-items:stretch}.invoice-summary{grid-template-columns:1fr}.invoice-action{grid-column:auto}.modal-form .form-grid{grid-template-columns:1fr}.modal-form .span-2{grid-column:auto}.role-options{grid-template-columns:1fr}.permission-callout{align-items:start;gap:12px}.permission-callout button{display:none}.preview-section>header{align-items:start;gap:10px}.preview-section>header>div:last-child{flex-direction:column;align-items:end}}.export-portal{z-index:-1;opacity:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.auth-loading{color:#66757f;justify-content:center;align-items:center;gap:12px;min-height:100vh;font-size:13px;display:flex}.auth-spinner{border:2px solid #d3e0dd;border-top-color:var(--teal);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.login-shell{background:radial-gradient(1200px 600px at 50% -10%,#e8f3f1 0%,#f4f6f7 55%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:14px;width:min(420px,94vw);padding:34px 32px 30px;display:flex;box-shadow:0 24px 70px #0f201d24}.login-brand{align-items:center;gap:11px;margin-bottom:4px;display:flex}.login-brand .brand-mark{background:var(--teal);color:#fff;border-radius:10px;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.login-brand strong{font-size:15px;display:block}.login-brand small{color:#8a97a2;letter-spacing:.12em;font-size:9px}.login-card h1{margin:6px 0 0;font-size:21px}.login-hint{color:#7c8791;margin:0;font-size:11px}.login-card label{flex-direction:column;gap:6px;display:flex}.login-card label span{color:#55636d;font-size:11px}.login-card input{border:1px solid #d8dee2;border-radius:8px;min-height:42px;padding:0 13px;font-size:13px}.login-card input:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #2b8a7b1f}.login-error{color:#b4453f;background:#fdecec;border:1px solid #f4c9c9;border-radius:7px;padding:9px 12px;font-size:11px}.primary-button.full{justify-content:center;width:100%}.user-menu{z-index:30;border:1px solid var(--line);background:#fff;border-radius:9px;min-width:130px;padding:5px;position:absolute;bottom:54px;right:12px;box-shadow:0 12px 34px #0b131f33}.user-menu button{color:#3f4b58;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;width:100%;padding:9px 11px;font-size:11px;display:block}.user-menu button:hover{color:#226b60;background:#f0f5f4}.sidebar-user{position:relative}@page{size:297mm 210mm;margin:0}@media print{@page{size:297mm 210mm;margin:0}html,body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;width:297mm!important}.sidebar,.topbar,.new-job-page>:not(.preview-section),.preview-section>header,.toast,.modal-backdrop{display:none!important}.content-shell,main,.page-stack,.preview-section,.statement-stage{width:auto!important;box-shadow:none!important;background:#fff!important;border:0!important;margin:0!important;padding:0!important}.statement-sheet{width:297mm!important;height:210mm!important;min-height:210mm!important;box-shadow:none!important;margin:0!important;padding:12mm 10mm 9mm!important;overflow:hidden!important}.app-shell.exporting>:not(.export-portal){display:none!important}.app-shell.exporting .export-portal{z-index:auto!important;opacity:1!important;position:static!important;inset:auto!important;overflow:visible!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
