:root{--ui-bg-app:#f6f7fb;--ui-bg-sidebar:#f4f5fa;--ui-bg-surface:#fff;--ui-bg-subtle:#f6f7fb;--ui-bg-hover:#f3f0ff;--ui-bg-selected:#ede8ff;--ui-text-primary:#182239;--ui-text-secondary:#52617b;--ui-text-muted:#626f86;--ui-text-disabled:#929aab;--ui-border-subtle:#e2e6ef;--ui-border-control:#d6dce8;--ui-border-control-hover:#9279fa;--ui-action-primary:#603bfa;--ui-action-primary-hover:#5130db;--ui-action-primary-pressed:#4323bf;--ui-focus:#603bfa;--ui-success:#18794e;--ui-warning:#9a6700;--ui-danger:#b42318;--ui-radius-panel:14px;--ui-radius-card:12px;--ui-radius-control:8px}::selection{background:#e2d9ff;color:#30205e}input,textarea{caret-color:var(--ui-action-primary)}.login-page,.login-wrap{grid-template-columns:minmax(0,1fr)}.login-layout{min-width:0;box-sizing:border-box}.console-shell,.workspace{font-synthesis:none}.console-shell :is(button,a,input,textarea,select):focus-visible,.workspace :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}.console-shell :is(table,dl),.workspace :is(table,dl){font-variant-numeric:tabular-nums}.console-shell :is(.n-tag,.n-button),.workspace :is(.n-tag,.n-button){flex-shrink:0}.console-shell .n-tag,.workspace .n-tag{font-weight:500}.console-shell .n-tabs-tab,.workspace .n-tabs-tab{padding-top:12px;padding-bottom:12px}.console-shell .n-tabs-tab--active,.workspace .n-tabs-tab--active{font-weight:600}.console-shell .n-empty,.workspace .n-empty{padding:28px 16px}.n-modal.n-card>.n-card__footer{border-top:1px solid var(--ui-border-subtle);padding-top:16px}.n-modal.n-card>.n-card-header{font-weight:600}.mobile-nav-backdrop{display:none}@media (max-width:760px){.mobile-nav-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:49;border:0;padding:0;background:#18223966;cursor:pointer}.console-shell .n-button,.workspace .n-button{min-height:36px}.n-modal.n-card{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--ui-bg-app);color:var(--ui-text-primary);font-size:14px;line-height:22px}.workspace{background:var(--ui-bg-app);min-height:0}.workspace-content{padding:24px}.context-bar{height:48px;display:flex;align-items:center;padding:0 24px}.console-shell>.n-layout-sider{position:sticky;top:0;height:100vh}.context-title{display:flex;align-items:center;gap:8px;min-width:0}.context-title h1{margin:0;font-size:16px;line-height:24px;font-weight:600}.page-description{color:var(--ui-text-muted);font-size:13px;line-height:20px;margin:0 0 16px}.workspace-content--review{padding:0}.workspace .n-card{border-radius:var(--ui-radius-card);border-color:var(--ui-border-subtle);box-shadow:none}.workspace .n-card>.n-card-header{padding-left:20px;padding-right:20px}.workspace .n-card>.n-card-content{padding-left:20px;padding-right:20px}.workspace .n-card>.n-card-content:first-child{padding-top:20px}.workspace .n-statistic .n-statistic-value{font-weight:600}.workspace .n-table{display:block;overflow-x:auto}.workspace .n-table small{overflow-wrap:anywhere;color:var(--ui-text-muted);font-size:13px;line-height:20px;font-family:SFMono-Regular,Consolas,monospace}.workspace .n-table td{vertical-align:top}.n-modal{max-width:calc(100vw - 32px)}.n-drawer{max-width:100vw}.login-wrap{background-color:var(--ui-bg-app);background-size:cover;background-position:center;background-attachment:fixed;min-height:100vh;display:grid;grid-template-rows:36px 1fr 36px;gap:24px;padding:32px 5vw;box-sizing:border-box}.login-brand{display:flex;align-items:center;color:var(--ui-text-primary);font-size:20px;font-weight:600}.login-layout{width:420px;max-width:100%;margin:0 auto;display:flex;align-items:center;padding:24px 0}.eyebrow{color:var(--ui-text-muted);font-size:13px}.login-panel{width:100%;box-sizing:border-box;padding:36px;background:#ffffff3d;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(137,143,155,.22);border-radius:14px;box-shadow:0 12px 36px #282d3a06}.login-panel h2{font-size:24px;line-height:34px;font-weight:600;margin:0 0 28px;letter-spacing:-.5px}.login-panel .n-input{--n-height:44px !important;--n-border-radius:8px !important;--n-color:rgba(255,255,255,.42) !important;--n-color-focus:rgba(255,255,255,.58) !important;--n-border:1px solid rgba(137,143,155,.22) !important}.login-panel .n-button{height:44px;border-radius:8px;font-size:15px;font-weight:600}.login-panel .n-form-item-label{font-weight:500}.workflow-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:12px 0 16px;border-bottom:1px solid var(--ui-border-subtle)}.workflow-guide strong{display:block;margin-bottom:4px;color:var(--ui-text-primary);font-size:13px;line-height:20px;font-weight:500}.workflow-guide p{margin:0;color:var(--ui-text-muted);font-size:13px;line-height:20px}.detail-grid{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;margin:0 0 20px;font-size:13px;line-height:20px}.detail-grid dt{color:var(--ui-text-muted)}.detail-grid dd{margin:0;overflow-wrap:anywhere}.field-help{color:var(--ui-text-muted);line-height:20px;font-size:13px}.file-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:20px 0}.file-fields label{min-width:0;padding:12px 0}.file-fields strong,.file-fields input{display:block;margin-bottom:8px;max-width:100%}.file-fields strong{font-weight:500;font-size:14px}.file-fields input::file-selector-button{font:inherit;color:var(--ui-text-primary);background:var(--ui-bg-surface);border:1px solid var(--ui-border-control);border-radius:6px;min-height:32px;margin-right:12px;cursor:pointer}.file-fields input:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}@media (max-width:1200px){.workspace-content{padding:24px}.context-bar{padding:0 24px}}@media (max-width:1000px){.workflow-guide{grid-template-columns:1fr 1fr}}@media (max-width:700px){.workspace-content{padding:20px 16px}.file-fields{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.approval-row{transition:none}}.console-shell .n-button:focus-visible,.login-panel .n-button:focus-visible,.console-shell .n-menu a:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.approval-toolbar{min-height:48px;padding:0 20px;border-bottom:1px solid var(--ui-border-subtle);display:flex;align-items:center;justify-content:space-between;gap:16px}.approval-filters{display:flex;gap:20px;flex-wrap:wrap}.approval-filters button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ui-text-secondary);min-height:48px;padding:0 4px;font:inherit;cursor:pointer}.approval-filters button span{margin-left:6px;font-size:13px;color:var(--ui-text-muted)}.approval-filters button.active{color:var(--ui-text-primary);border-bottom-color:var(--ui-text-primary);font-weight:600}.approval-filters button:hover{background:var(--ui-bg-hover)}.approval-columns{display:grid;grid-template-columns:minmax(280px,36%) minmax(0,1fr);min-height:0}.approval-list{border-right:1px solid var(--ui-border-subtle)}.approval-row{box-sizing:border-box;display:block;width:100%;padding:16px 20px;border:0;border-bottom:1px solid var(--ui-border-subtle);border-left:2px solid transparent;background:transparent;font:inherit;color:var(--ui-text-primary);text-align:left;cursor:pointer}.approval-row:hover{background:var(--ui-bg-hover)}.approval-row.selected{background:var(--ui-bg-subtle);border-left-color:var(--ui-text-secondary)}.approval-row-title{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.approval-row-title strong{font-weight:600;overflow-wrap:anywhere}.approval-row-title span{font-size:13px}.approval-row-meta{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:6px;color:var(--ui-text-muted);font-size:13px}.approval-row-meta>span:first-child{overflow-wrap:anywhere}.approval-row p{margin:6px 0 0;color:var(--ui-text-muted);font-size:12px;line-height:18px;overflow-wrap:anywhere}.approval-detail{min-width:0;padding:24px;background:var(--ui-bg-surface)}.object-heading h2{font-size:20px;line-height:28px;font-weight:600;margin:0 0 12px;overflow-wrap:anywhere}.object-context{display:flex;gap:12px 20px;flex-wrap:wrap;color:var(--ui-text-secondary);font-size:13px;line-height:20px}.object-context span{overflow-wrap:anywhere}.object-section{border-bottom:1px solid var(--ui-border-subtle);padding:20px 0}.object-section:last-child{border-bottom:0}.object-section h3{margin:0 0 16px;font-size:14px;line-height:22px;font-weight:600}.object-section .detail-grid{grid-template-columns:112px minmax(0,1fr);margin:0}.identifier{font-family:SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;font-size:13px}.compact-flow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--ui-text-secondary);margin:0 0 12px}.compact-flow span{color:var(--ui-text-muted)}.review-label{display:block;margin:20px 0 8px;font-size:14px;font-weight:500}.review-actions{margin-top:12px}.approval-empty{padding:24px;color:var(--ui-text-muted);font-size:13px}.approval-error{margin:12px 20px}.status-text[data-status=pending]{color:#9a6700}.status-text[data-status=approved]{color:#18794e}.status-text[data-status=rejected]{color:#b42318}.approval-row:focus-visible,.approval-filters button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}@media (max-width:1100px){.approval-columns{grid-template-columns:minmax(240px,34%) minmax(0,1fr)}.approval-detail{padding:20px}.approval-filters{gap:12px}}@media (max-width:800px){.approval-columns{grid-template-columns:minmax(0,1fr)}.approval-list{border-right:0;border-bottom:1px solid var(--ui-border-subtle)}.approval-toolbar{padding:0 12px}.object-section .detail-grid{grid-template-columns:90px minmax(0,1fr)}}@media (max-width:1200px){.workspace-content--review{padding:0}}.workspace .n-form{max-width:720px}.workspace .n-form-item-label{font-size:14px}.workspace .n-form-item{margin-bottom:4px}.workspace .n-space{--n-gap:8px}.file-fields{column-gap:24px;row-gap:16px}.review-actions{margin-top:16px}body:has(.console-shell){overflow:hidden}.console-shell{height:100dvh;overflow:hidden}.console-shell>.n-layout-sider{position:relative;top:auto;height:100%;flex-shrink:0}.console-main{min-width:0;height:100%}.console-main>.n-layout-scroll-container{height:100%;display:flex;flex-direction:column;overflow:hidden}.console-main .context-bar{flex:0 0 48px}.console-main .workspace{flex:1 1 0;min-height:0;overflow:hidden}.workspace>.n-layout-scroll-container{height:100%;box-sizing:border-box;overflow:auto;overscroll-behavior:contain}.workspace>.workspace-content--review{overflow:hidden}.approval-workspace{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.approval-workspace>:not(.approval-columns){flex-shrink:0}.approval-columns{flex:1 1 0;min-height:0;overflow:hidden}.approval-list,.approval-detail{min-height:0;overflow:auto;overscroll-behavior:contain}.sidebar-menu{overscroll-behavior:contain}.n-modal.n-card{border-radius:10px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);display:flex;flex-direction:column}.n-modal.n-card>.n-card-content{overflow:auto;min-height:0;overscroll-behavior:contain}.n-modal.n-card>.n-card-header,.n-modal.n-card>.n-card__footer{flex-shrink:0}.n-modal .n-form-item-label{font-size:13px;color:#46516a}.n-modal .n-input-number{width:100%}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.page-toolbar p{margin:0;color:var(--ui-text-muted);font-size:13px}.page-back{flex-shrink:0}.n-modal .file-fields{grid-template-columns:1fr;gap:12px}.file-fields input[type=file]{box-sizing:border-box;width:100%;border:1px dashed #c7b9fa;background:#fcfbff;border-radius:7px;padding:16px;color:#7c879b}.file-fields input::file-selector-button{background:#f0ebff;color:#603bfa;border:1px solid #dcd0ff;border-radius:5px;padding:6px 10px;cursor:pointer}.context-bar{background:#fff}.context-title h1{font-size:20px;line-height:28px}.workflow-guide{grid-template-columns:repeat(3,minmax(0,1fr));background:#f0edff;padding:16px;border:0;border-radius:8px}.workflow-guide strong{color:#603bfa}.approval-filters button.active{color:#603bfa;border-bottom-color:#603bfa}.approval-row.selected{background:#f3f0ff;border-left-color:#603bfa}@media (max-width:700px){.workflow-guide{grid-template-columns:1fr}}.section-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 16px;margin-bottom:20px;border-bottom:1px solid var(--ui-border-subtle)}.section-tabs a{padding:7px 14px;border-radius:6px;font-size:13px;color:var(--ui-text-secondary);text-decoration:none}.section-tabs a:hover{background:var(--ui-bg-hover)}.section-tabs a.selected{color:#603bfa;background:#ede8ff;font-weight:600}.section-tabs a:focus-visible{outline:2px solid #603bfa;outline-offset:2px}.console-section-tabs{margin:0;padding:10px 24px;flex-shrink:0;background:#fff}.deployment-guide{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.deployment-guide section{padding:16px 20px;border:1px solid var(--ui-border-subtle);border-radius:8px;background:#fff}.deployment-guide strong{color:#603bfa;font-size:14px}.deployment-guide p{color:var(--ui-text-secondary);font-size:13px;margin:8px 0 0;line-height:1.7}.deployment-guide dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px;font-size:13px;margin:14px 0 0}.deployment-guide dt{color:var(--ui-text-muted)}.deployment-guide dd{margin:0;overflow-wrap:anywhere}@media (max-width:800px){.deployment-guide{grid-template-columns:1fr}.section-tabs{gap:4px}.section-tabs a{padding:6px 10px}}
