:root{--surface:#fff;--surface-subtle:#f7f9fb;--canvas:#f4f6f8;--ink:#172033;--ink-muted:#526076;--line:#dbe2ea;--primary:#0f766e;--primary-strong:#0b5f59;--nav:#172033;--radius:6px;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body{background:var(--canvas);min-width:320px;min-height:100%;color:var(--ink);margin:0}body{font-family:SF Pro Text,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.skip-link{z-index:1000;color:#0b5f59;background:#fff;border-radius:4px;padding:8px 12px;position:fixed;top:8px;left:8px;transform:translateY(-160%);box-shadow:0 2px 10px #0f172a2e}.skip-link:focus{transform:translateY(0)}button,a,[role=button]{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100dvh}.app-sider{border-right:1px solid #26344a;height:100dvh;top:0;overflow:hidden auto;position:sticky!important}.brand{color:#fff;white-space:nowrap;align-items:center;gap:12px;height:68px;padding:0 18px;text-decoration:none;display:flex}.brand:hover{color:#fff}.brand-mark{color:#5eead4;background:#243147;border:1px solid #4d607b;border-radius:6px;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:19px;display:grid}.brand-copy{flex-direction:column;min-width:0;line-height:1.25;display:flex}.brand-copy strong{letter-spacing:0;font-size:16px}.brand-copy small{color:#a8b3c5;letter-spacing:0;margin-top:3px;font-size:11px}.sider-toggle{bottom:16px;right:12px;color:#a8b3c5!important;width:44px!important;height:44px!important;position:absolute!important}.sider-toggle:hover{color:#fff!important;background:#273449!important}.app-header{border-bottom:1px solid var(--line);height:52px;color:var(--ink-muted);justify-content:space-between;align-items:center;padding:0 28px;font-size:13px;line-height:52px;display:flex;background:#fffffff5!important}.app-header-actions,.current-user{align-items:center;display:flex}.app-header-actions{gap:4px;height:100%}.current-user{min-width:0;color:var(--ink);gap:7px;margin-left:8px;padding:0 8px;line-height:36px;text-decoration:none}.current-user:hover{color:var(--primary)}.header-icon-link{border-radius:var(--radius);width:32px;height:32px;color:var(--ink);justify-content:center;align-items:center;line-height:1;display:inline-flex}.header-icon-link:hover{color:var(--primary);background:#0000000f}.logout-form{margin:0;display:flex}.environment-label{border-left:1px solid var(--line);color:#64748b;padding-left:12px;font-size:12px}.app-content{min-width:0;padding:24px 28px 40px}.auth-shell,.auth-content,.auth-page{min-height:100dvh}.auth-shell{background:var(--canvas)}.auth-page{place-items:center;padding:32px 20px;display:grid}.auth-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(100%,420px);padding:32px;box-shadow:0 12px 30px #1720331a}.auth-brand{border-radius:var(--radius);background:var(--nav);color:#5eead4;place-items:center;width:48px;height:48px;margin-bottom:24px;font-size:22px;display:grid}.auth-heading{margin-bottom:24px}.auth-kicker{color:var(--primary);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.auth-heading h1{letter-spacing:0;margin:8px 0 0;font-size:24px;line-height:1.3}.auth-heading p{color:var(--ink-muted);margin:6px 0 0;font-size:13px}.auth-form,.account-form{gap:16px;display:grid}.auth-form .ant-alert,.account-form .ant-alert{margin-bottom:2px}.account-surface{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);max-width:720px}.account-identity{border-bottom:1px solid var(--line);background:var(--surface-subtle);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:18px;display:grid}.account-identity div{min-width:0}.account-identity dt{color:var(--ink-muted);margin-bottom:4px;font-size:12px}.account-identity dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:600;overflow:hidden}.account-form{max-width:480px;padding:20px 18px 22px}.field-hint{color:var(--ink-muted);margin-top:5px;font-size:12px;display:block}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.page-header h1{color:var(--ink);letter-spacing:0;margin:0;font-size:24px;font-weight:700;line-height:1.3}.page-header p{max-width:64ch;color:var(--ink-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.back-button{margin:-8px 0 5px -12px;color:var(--ink-muted)!important}.unsaved-label{border-left:1px solid var(--line);color:#b45309;margin-left:10px;padding-left:10px;font-size:12px;display:inline-block}.page-actions,.toolbar,.toolbar-group{align-items:center;gap:8px;display:flex}.toolbar{justify-content:space-between;gap:16px;margin-bottom:14px}.data-surface{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.data-surface .ant-table-wrapper{overflow:hidden}.loading-surface{margin-top:24px;padding:20px}.numeric,.money,.sheet-number{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.money{font-weight:600}.secondary-text{color:var(--ink-muted);font-size:12px}.status-label{align-items:center;gap:6px;display:inline-flex}.status-label:before{content:"";background:#94a3b8;border-radius:50%;width:7px;height:7px}.status-label.is-active:before,.status-label.is-completed:before{background:#15803d}.status-label.is-draft:before{background:#b45309}.empty-action{margin-top:14px}.editor-surface{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px}.editor-meta{grid-template-columns:minmax(280px,2fr) minmax(180px,1fr);gap:16px;margin-bottom:18px;display:grid}.editor-meta .footer-field{grid-column:1/-1}.field-label{color:#344054;margin-bottom:7px;font-size:13px;font-weight:600;display:block}.required-mark{color:#b91c1c;margin-left:3px}.editor-table-header{justify-content:space-between;align-items:center;gap:16px;margin:2px 0 10px;display:flex}.editor-table-header h2{letter-spacing:0;margin:0;font-size:16px}.readonly-cell{color:#344054;min-height:24px;line-height:24px;display:block}.cell-error{color:#b91c1c;margin-top:4px;font-size:11px;line-height:1.3;display:block}.table-summary-label{text-align:right;font-weight:700}.table-summary-value{color:#0b5f59;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.editor-actions{border-top:1px solid var(--line);background:var(--surface-subtle);justify-content:flex-end;gap:8px;margin:18px -18px -18px;padding:12px 18px;display:flex}@media (max-width:991px){.app-sider{z-index:20;position:fixed!important}.app-header{padding-left:92px!important}.app-content{padding:20px 18px 32px 90px}}@media (max-width:767px){.app-header{padding-left:84px!important;padding-right:14px!important}.environment-label,.app-header>span:first-child,.current-user-name{display:none}.app-header{justify-content:flex-end}.app-content{padding:16px 12px 28px 84px}.page-header,.toolbar{flex-direction:column;align-items:stretch}.page-actions,.toolbar-group{flex-wrap:wrap}.page-header h1{font-size:21px}.editor-surface{padding:14px}.editor-meta{grid-template-columns:1fr}.editor-meta .footer-field{grid-column:auto}.editor-actions{margin:16px -14px -14px;padding:12px 14px}.auth-page{padding:20px 14px}.auth-panel{padding:24px 20px}.account-identity{grid-template-columns:1fr;gap:12px}.ant-input,.ant-input-number-input,.ant-select-selection-item,.ant-select-selection-placeholder{font-size:16px!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
