:root{--page:#f5f7fa;--surface:#fff;--surface-muted:#f8fafc;--surface-hover:#f3f6fb;--text-primary:#1f2937;--text-secondary:#475569;--text-muted:#64748b;--border:#dfe4ec;--border-soft:#e7ecf2;--border-strong:#cbd5e1;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-pressed:#1e40af;--primary-soft:#eff6ff;--primary-soft-strong:#dbeafe;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--tone-primary:#2563eb;--tone-success:#16a34a;--tone-warning:#d97706;--tone-danger:#dc2626;--tone-info:#0891b2;--shadow-soft:0 1px 2px #0f172a0a, 0 8px 24px #0f172a08;--shadow-panel:0 1px 2px #0f172a0a, 0 12px 32px #0f172a0a;--shadow-dropdown:0 16px 40px #0f172a24, 0 2px 8px #0f172a0f;--motion-fast:.16s;--motion-base:.2s;--motion-tree:.22s;--ease-out:cubic-bezier(.16, 1, .3, 1);color:var(--text-primary);background:var(--page);font-synthesis:none;text-rendering:optimizelegibility;font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif}*,:before,:after{box-sizing:border-box;letter-spacing:0}html,body,#app{width:100%;min-width:1280px;min-height:100%;margin:0}body{background:var(--page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #2563eb3d}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace}.login-page{background:#fff;grid-template-columns:minmax(720px,58%) minmax(520px,42%);min-width:1280px;min-height:100vh;display:grid}.login-visual{color:#fff;background:#202a33;align-content:center;min-height:100vh;padding:112px clamp(58px,5.2vw,88px) 90px;display:grid;position:relative;overflow:hidden}.login-visual:after{background:var(--primary);content:"";width:5px;position:absolute;top:0;bottom:0;left:0}.login-visual__grid{opacity:.22;pointer-events:none;grid-template-columns:repeat(6,1fr);display:grid;position:absolute;inset:0}.login-visual__grid-line{border-right:1px solid #ffffff21}.login-visual__grid-line:last-child{border-right:0}.login-visual__brand{z-index:1;position:absolute;top:34px;left:clamp(58px,5.2vw,88px)}.login-visual__content{z-index:1;width:min(100%,690px);position:relative}.login-visual__heading{max-width:620px;margin-bottom:34px}.login-visual__heading>span,.login-heading__eyebrow{color:#8eb6f7;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:700;line-height:1.4;display:block}.login-visual__heading h2{max-width:590px;margin:13px 0 0;font-size:32px;font-weight:700;line-height:1.42}.login-visual__heading p{color:#b8c3cc;margin:10px 0 0;font-size:14px}.asset-flow{background:#26323c;border:1px solid #ffffff24;border-radius:6px;position:relative;overflow:hidden;box-shadow:0 18px 44px #060c1238}.asset-flow__header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:0 20px;display:flex}.asset-flow__header span,.asset-flow__header strong{display:block}.asset-flow__header span{color:#dce4ea;margin-bottom:3px;font-size:13px;font-weight:700}.asset-flow__header strong{color:#a8b5bf;font-size:11px;font-weight:400}.asset-flow__records{padding:8px 20px 5px}.asset-flow__record{border-bottom:1px solid #ffffff14;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:67px;padding:0 4px 0 14px;display:grid;position:relative}.asset-flow__record:last-child{border-bottom:0}.asset-flow__record>.n-icon{color:#a9b6c0;font-size:22px}.asset-flow__rail{background:currentColor;border-radius:2px;width:3px;position:absolute;top:18px;bottom:18px;left:0}.asset-flow__record--success{color:#4ade80}.asset-flow__record--warning{color:#fbbf24}.asset-flow__record--primary{color:#60a5fa}.asset-flow__identity{min-width:0}.asset-flow__identity strong,.asset-flow__identity span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.asset-flow__identity strong{color:#fff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:700}.asset-flow__identity span{color:#93a1ac;margin-top:4px;font-size:11px}.asset-flow__track{border-top:1px solid #ffffff1a;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;min-height:74px;padding:0 20px;display:grid;position:relative;overflow:hidden}.asset-flow__track:before{content:"";background:#53616c;height:1px;position:absolute;top:27px;left:16.66%;right:16.66%}.asset-flow__track>div{z-index:1;color:#9caab5;justify-items:center;gap:5px;font-size:11px;display:grid;position:relative}.asset-flow__track>div .n-icon{color:#93c5fd;background:#26323c;border-radius:50%;padding:3px;font-size:18px}.asset-flow__signal{z-index:2;background:#60a5fa;width:16%;height:1px;animation:7s ease-in-out infinite asset-track;position:absolute;top:27px;left:16.66%}.login-visual__footer{z-index:1;color:#8d9ba6;gap:26px;font-size:11px;display:flex;position:absolute;bottom:34px;left:clamp(58px,5.2vw,88px);right:clamp(58px,5.2vw,88px)}.login-visual__footer span{position:relative}.login-visual__footer span+span:before{content:"";background:#65737e;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;left:-14px;transform:translateY(-50%)}@keyframes asset-track{0%,22%{opacity:0;transform:translate(0)}35%{opacity:1}72%{opacity:1}85%,to{opacity:0;transform:translate(315%)}}.login-panel{background:#fff;place-items:center;min-height:100vh;padding:48px clamp(52px,5vw,82px);display:grid}.login-panel__inner{width:100%;max-width:440px}.login-panel__brand{margin-bottom:54px}.login-heading{margin-bottom:26px}.login-heading__eyebrow{color:var(--primary);margin-bottom:9px}.login-heading h1,.page-heading h1{color:var(--text-primary);margin:0;font-weight:700}.login-heading h1{font-size:32px;line-height:1.3}.login-heading p,.page-heading p{color:var(--text-secondary);margin:7px 0 0}.login-alert{margin-bottom:18px}.captcha-field{grid-template-columns:minmax(0,1fr) 162px;gap:10px;width:100%;display:grid}.captcha-image{border:1px solid var(--border);width:162px;height:42px;color:var(--text-muted);background:var(--surface-muted);cursor:pointer;border-radius:6px;place-items:center;padding:0;display:grid;overflow:hidden}.captcha-image__content{place-items:center;width:160px;height:40px;display:grid}.captcha-image img{object-fit:contain;width:160px;height:40px;display:block}.login-options{align-items:center;min-height:34px;margin:-2px 0 18px;display:flex}.login-panel__notice{color:var(--text-muted);text-align:center;margin:24px 0 0;font-size:11px}.app-shell{background:var(--page);min-height:100vh;transition:grid-template-columns var(--motion-base) var(--ease-out);grid-template-columns:224px minmax(0,1fr);display:grid}.app-shell--collapsed{grid-template-columns:72px minmax(0,1fr)}.app-sidebar{z-index:20;border-right:1px solid var(--border);background:var(--surface);height:100vh;position:sticky;top:0;overflow:hidden}.app-sidebar__brand{border-bottom:1px solid var(--border);height:64px;transition:padding var(--motion-base) var(--ease-out);align-items:center;padding:0 18px;display:flex}.app-nav{height:calc(100vh - 64px);padding:18px 12px;overflow-y:auto}.app-nav .n-menu-item-content{transition:background-color var(--motion-fast) ease, color var(--motion-fast) ease;border-radius:6px;position:relative}.app-nav .n-menu-item-content:hover{background:var(--surface-hover)}.app-nav .n-menu-item-content-header{font-size:13px}.app-nav .n-menu-item-content-header__extra{color:var(--text-muted);align-items:center;font-size:15px;display:inline-flex}.app-nav .n-menu-item-content--selected{color:var(--primary-hover);background:var(--primary-soft);font-weight:600}.app-nav .n-menu-item-content--selected:after{background:var(--primary);content:"";border-radius:0 2px 2px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.app-shell--collapsed .app-sidebar__brand{justify-content:center;padding:0}.app-shell--collapsed .app-nav{padding-inline:10px}.app-main{min-width:0}.app-topbar{z-index:15;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px)saturate(140%);backdrop-filter:blur(12px)saturate(140%);background:#ffffffe0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0;box-shadow:0 1px #0f172a08}.app-topbar__left,.app-topbar__right{align-items:center;gap:12px;min-width:0;display:flex}.app-breadcrumb{border-left:1px solid var(--border);padding-left:12px;font-size:14px;font-weight:600}.account-trigger{min-width:0;color:inherit;cursor:pointer;transition:background-color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out);background:0 0;border:0;border-radius:6px;align-items:center;gap:9px;padding:3px 6px;display:flex}.account-trigger:hover{background:var(--surface-hover)}.account-trigger:active{transform:scale(.98)}.account-trigger__text{text-align:left;max-width:150px;display:grid}.account-trigger__text strong,.account-trigger__text small{white-space:nowrap;text-overflow:ellipsis;line-height:1.35;overflow:hidden}.account-trigger__text strong{font-size:13px}.account-trigger__text small{color:var(--text-muted);font-size:12px}.app-content{min-height:calc(100vh - 64px);padding:26px 28px 36px}.page-heading{justify-content:space-between;align-items:flex-start;gap:24px;min-height:54px;margin-bottom:22px;display:flex}.page-heading h1{font-size:26px;line-height:1.3}.page-heading p,.dashboard-heading time{font-size:13px}.dashboard-heading time{color:var(--text-muted);white-space:nowrap}.metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.metric-grid--6{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{border:1px solid var(--border);min-width:0;min-height:108px;color:inherit;background:var(--surface);text-align:left;box-shadow:var(--shadow-soft);cursor:default;border-radius:6px;align-content:center;padding:16px 16px 14px 20px;display:grid;position:relative;overflow:hidden}.metric-card__rail{background:currentColor;border-radius:0 3px 3px 0;width:4px;position:absolute;top:16px;bottom:16px;left:0}.tone-primary{color:var(--tone-primary)}.tone-success{color:var(--tone-success)}.tone-warning{color:var(--tone-warning)}.tone-danger{color:var(--tone-danger)}.tone-info{color:var(--tone-info)}.metric-card__label,.metric-card strong,.metric-card__hint{color:var(--text-primary)}.metric-card__footer{color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;margin-top:7px;font-size:12px;display:flex}.metric-card__footer .n-icon{color:var(--text-muted);cursor:help;flex:none;font-size:14px}.metric-card strong.metric-card__amount{font-size:22px}.metric-card__label{margin-bottom:4px;font-size:13px}.metric-card strong{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:29px;font-weight:700;line-height:1.2}.metric-card__hint{color:var(--text-muted);margin-top:7px;font-size:11px}.dashboard-grid{grid-template-columns:minmax(0,2.4fr) minmax(280px,1fr);align-items:start;gap:18px;display:grid}.work-panel,.side-panel,.password-panel{border:1px solid var(--border);background:#fff;border-radius:6px}.work-panel{min-width:0;overflow:hidden}.section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:0 16px;display:flex}.section-heading h2{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.section-heading span{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.dashboard-aside{gap:18px;display:grid}.status-list{gap:18px;padding:18px 16px 20px;display:grid}.status-item__label{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:8px;font-size:12px;display:flex}.status-item__label strong{color:var(--text-primary);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.status-item__label small{color:var(--text-muted);font-weight:400}.activity-list{padding:10px 16px 14px;display:grid}.activity-item{min-height:42px;color:var(--text-secondary);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:9px;font-size:11px;display:grid}.activity-item__dot{background:currentColor;border-radius:50%;width:7px;height:7px}.activity-item time{color:var(--text-muted)}.overview-list{margin:0;padding:4px 16px 12px}.overview-list>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;min-height:46px;display:flex}.overview-list>div:last-child{border-bottom:0}.overview-list dt{color:var(--text-secondary)}.overview-list dd{margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:700}.application-identity{min-height:38px;color:var(--text-primary);align-items:center;gap:10px;display:flex}.management-page{min-width:0}.operation-log-filter{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(300px,1.5fr) auto}.application-filter-panel{grid-template-columns:minmax(180px,1fr) minmax(150px,.8fr) minmax(150px,.8fr) minmax(280px,1.4fr) auto}.application-filter-panel .n-date-picker{width:100%}.application-list-identity{grid-template-columns:4px minmax(0,1fr);align-items:center;gap:10px;min-height:42px;display:grid}.application-list-identity__rail{background:var(--warning);border-radius:0 2px 2px 0;width:4px;height:34px}.application-list-identity strong,.application-list-identity small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.application-list-identity strong{color:var(--text-primary);font-size:13px;font-weight:600}.application-list-identity small{color:var(--text-muted);margin-top:3px;font-size:11px}.application-asset-summary,.approval-summary{margin-bottom:18px}.approval-warning{margin-bottom:14px}.operation-log-filter .n-date-picker{width:100%}.operation-log-identity{grid-template-columns:3px minmax(0,1fr);align-items:center;gap:10px;min-height:36px;display:grid}.operation-log-identity__rail{background:var(--success);border-radius:2px;width:3px;height:28px}.operation-log-identity--0 .operation-log-identity__rail{background:var(--danger)}.operation-log-identity strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.operation-log-detail-uri,.operation-log-params{overflow-wrap:anywhere}.operation-log-params{max-height:320px;color:var(--text-secondary);white-space:pre-wrap;margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.65;overflow:auto}.operation-log-error{color:var(--danger)}.filter-panel{border:1px solid var(--border-soft);background:var(--surface-muted);border-radius:6px;grid-template-columns:repeat(5,minmax(120px,1fr)) auto;gap:12px;margin-bottom:16px;padding:14px 16px 16px;box-shadow:inset 0 1px #fffc;display:grid!important}.n-form.filter-panel.n-form--inline>.n-form-item{width:auto;min-width:0;margin-right:0}.filter-actions{align-items:center;gap:8px;min-height:34px;display:flex}.filter-actions .n-button{height:34px}.table-panel{border:1px solid var(--border);background:var(--surface);min-width:0;box-shadow:var(--shadow-panel);border-radius:6px;overflow:hidden}.management-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:54px;padding:0 14px 0 16px;display:flex}.management-toolbar strong,.management-toolbar span{display:block}.hierarchy-table .n-data-table-expand-trigger{transition:color var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out);border-radius:4px}.hierarchy-table .n-data-table-expand-trigger:hover{color:var(--primary);background:var(--primary-soft)}.hierarchy-table .n-data-table-expand-trigger:active{transform:scale(.92)}.hierarchy-table .hierarchy-row{--hierarchy-level-color:var(--primary);--hierarchy-level-tint:#2563eb0f}.hierarchy-table .hierarchy-row--level-1{--hierarchy-level-color:#3b82f6;--hierarchy-level-tint:#3b82f60d}.hierarchy-table .hierarchy-row--level-2{--hierarchy-level-color:#557a9d;--hierarchy-level-tint:#557a9d0d}.hierarchy-table .hierarchy-row--level-3{--hierarchy-level-color:#718096;--hierarchy-level-tint:#7180960d}.hierarchy-table .hierarchy-row--level-4{--hierarchy-level-color:#94a3b8;--hierarchy-level-tint:#94a3b80f}.hierarchy-table .hierarchy-row>td:first-child{background-image:linear-gradient(90deg, var(--hierarchy-level-tint), transparent 72%);box-shadow:inset 3px 0 var(--hierarchy-level-color)}.hierarchy-table .hierarchy-row .n-data-table-expand-trigger{color:var(--hierarchy-level-color)}.hierarchy-table .hierarchy-row .n-data-table-expand-trigger:hover{color:var(--primary-hover)}.hierarchy-table .hierarchy-row>td{animation:hierarchy-row-reveal var(--motion-tree) var(--ease-out) both}@keyframes hierarchy-row-reveal{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.management-toolbar strong{color:var(--text-primary);font-size:14px}.management-toolbar span{color:var(--text-muted);margin-top:2px;font-size:12px}.table-pagination{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;min-height:58px;padding:0 16px;display:flex}.table-pagination>span,.table-secondary{color:var(--text-muted);font-size:12px}.menu-identity{grid-template-columns:3px minmax(0,1fr);align-items:center;gap:10px;min-height:40px;display:grid}.menu-identity__rail{background:var(--primary);border-radius:2px;width:3px;height:30px}.menu-identity--type-0 .menu-identity__rail{background:var(--tone-info)}.menu-identity--type-2 .menu-identity__rail{background:var(--warning)}.menu-identity strong,.menu-identity small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.menu-identity strong{color:var(--text-primary);font-size:13px;font-weight:600}.menu-identity small{color:var(--text-muted);margin-top:3px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.menu-form-grid,.management-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;display:grid}.switch-field{min-height:34px;color:var(--text-secondary);align-items:center;gap:10px;font-size:12px;display:flex}.department-identity,.user-identity{grid-template-columns:3px minmax(0,1fr);align-items:center;gap:10px;min-height:40px;display:grid}.department-identity__rail,.user-identity__rail{background:var(--success);border-radius:2px;width:3px;height:30px}.department-identity--0 .department-identity__rail,.user-identity--0 .user-identity__rail{background:var(--text-muted)}.department-identity strong,.department-identity small,.user-identity strong,.user-identity small,.contact-cell span,.contact-cell small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.department-identity strong,.user-identity strong{color:var(--text-primary);font-size:13px;font-weight:600}.department-identity small,.user-identity small{color:var(--text-muted);margin-top:3px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}.contact-cell{min-width:0}.contact-cell span{color:var(--text-primary);font-size:12px}.contact-cell small{color:var(--text-muted);margin-top:3px;font-size:11px}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.identity-rail{background:currentColor;border-radius:2px;flex:none;width:3px;height:30px}.asset-cell{gap:3px;min-width:0;display:grid}.asset-cell strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.asset-cell span{color:var(--text-muted);font-size:11px}.dashboard-primary-action{margin-top:18px}.dashboard-page{min-width:0}.dashboard-heading__actions{align-items:center;gap:14px;display:flex}.dashboard-loading{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dashboard-loading>:nth-child(7),.dashboard-loading>:nth-child(8){grid-column:span 3}.dashboard-result{border:1px solid var(--border);background:var(--surface);border-radius:6px;min-height:420px;padding-top:70px}.dashboard-inline-alert{margin-bottom:16px}.dashboard-analytics-grid,.dashboard-operations-grid{align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.dashboard-analytics-grid{grid-template-columns:minmax(560px,1.72fr) minmax(330px,1fr)}.dashboard-operations-grid{grid-template-columns:minmax(350px,.92fr) minmax(540px,1.5fr)}.dashboard-panel{border:1px solid var(--border);background:var(--surface);min-width:0;box-shadow:var(--shadow-soft);border-radius:6px;overflow:hidden}.dashboard-panel--value{border-top:3px solid var(--primary)}.dashboard-panel--value .section-heading{min-height:52px}.trend-switch{align-items:center;gap:4px;display:flex}.trend-switch .n-button{min-width:54px}.chart-body{min-width:0;height:286px;transition:opacity var(--motion-fast) ease;place-items:center;padding:14px 12px 10px;display:grid}.chart-body--trend{height:306px}.chart-body--category{height:auto;min-height:306px;padding:12px 14px}.category-distribution{grid-template-columns:minmax(132px,.9fr) minmax(174px,1.1fr);gap:8px;width:100%;min-width:0;min-height:282px;display:grid}.category-distribution__chart{min-width:0;min-height:0}.category-distribution__legend{align-content:center;gap:2px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.category-distribution__legend li{border-bottom:1px solid var(--border-soft);grid-template-columns:8px minmax(0,1fr) auto auto;align-items:center;gap:7px;min-width:0;min-height:28px;padding:4px 2px;display:grid}.category-distribution__legend li:last-child{border-bottom:0}.category-distribution__swatch{border-radius:2px;width:8px;height:8px}.category-distribution__name{min-width:0;color:var(--text-secondary);overflow-wrap:anywhere;font-size:12px;line-height:1.35}.category-distribution__legend strong,.category-distribution__percentage{white-space:nowrap;font-size:11px}.category-distribution__legend strong{color:var(--text-primary)}.category-distribution__percentage{min-width:42px;color:var(--text-muted);text-align:right}.chart-body--value{height:302px;padding-top:20px}.chart-body--loading{opacity:.52;pointer-events:none}.chart-alert{margin:10px 14px 0}.panel-total{color:var(--text-primary);font-size:15px;font-weight:700}.panel-lock{color:var(--text-muted);cursor:help;font-size:17px}.dashboard-panel--todos .n-data-table{min-height:302px}.application-identity .mono{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.table-date{color:var(--text-secondary);font-size:11px}.locked-action{cursor:not-allowed;display:inline-block}.dashboard-notifications{margin-bottom:6px}.dashboard-notification-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-notification-item{border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);min-width:0;min-height:96px;transition:background-color var(--motion-fast) ease;grid-template-columns:7px minmax(0,1fr) auto;align-items:start;gap:11px;padding:15px 16px;display:grid}.dashboard-notification-item:nth-child(2n){border-right:0}.dashboard-notification-item:nth-last-child(-n+2){border-bottom:0}.dashboard-notification-item:last-child:nth-child(odd){border-right:0}.dashboard-notification-item--unread{background:var(--primary-soft)}.dashboard-notification-item:hover{background:var(--surface-hover)}.dashboard-notification-item--unread:hover{background:var(--primary-soft-strong)}.notification-status{background:var(--text-muted);border-radius:50%;width:7px;height:7px;margin-top:7px}.dashboard-notification-item--unread .notification-status{background:var(--primary)}.dashboard-notification-item__title{justify-content:flex-start;align-items:center;gap:9px;min-width:0;display:flex}.dashboard-notification-item__title strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.dashboard-notification-item p{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:7px 0 0;font-size:12px;line-height:1.55;display:-webkit-box;overflow:hidden}.dashboard-notification-item>time{color:var(--text-muted);white-space:nowrap;font-size:11px}.dashboard-empty{padding:42px 16px}.password-page{max-width:900px}.password-panel{width:min(100%,560px);padding:24px}.password-alert{margin-bottom:18px}.password-panel__title{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:20px;display:grid}.password-panel__title>.n-icon{color:var(--primary);font-size:28px}.password-panel__title strong,.password-panel__title span{display:block}.password-panel__title strong{margin-bottom:3px}.password-panel__title span{color:var(--text-muted);font-size:12px}.password-panel__actions{justify-content:flex-end;gap:10px;display:flex}.route-loading{min-height:100vh;color:var(--text-muted);background:var(--page);place-items:center;display:grid}.page-shift-enter-active{transition:opacity var(--motion-base) ease, transform var(--motion-base) var(--ease-out)}.page-shift-enter-from{opacity:0;transform:translateY(6px)}.global-feedback{display:none}@media (width>=1720px){.metric-grid--6{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.page-shift-enter-from{opacity:1;transform:none}}.metric-card--interactive{font:inherit;cursor:pointer;transition:border-color var(--motion-fast) ease, box-shadow var(--motion-base) var(--ease-out), transform var(--motion-base) var(--ease-out)}.metric-card--interactive:hover{border-color:var(--primary-soft-strong);transform:translateY(-2px);box-shadow:0 2px 4px #0f172a0d,0 14px 30px #2563eb14}.metric-card--interactive:active{transform:translateY(0)scale(.99)}.metric-card--interactive:focus-visible{outline-offset:2px;outline:3px solid #2563eb3d}.asset-filter-panel{grid-template-columns:repeat(4,minmax(150px,1fr))}.asset-filter-actions{grid-column:span 2}.category-filter-panel{grid-template-columns:repeat(3,minmax(180px,1fr)) auto}.asset-toolbar{min-height:58px}.asset-identity,.category-identity{grid-template-columns:4px minmax(0,1fr);align-items:center;gap:10px;min-height:42px;display:grid}.asset-identity__rail,.category-identity__rail{background:var(--primary);border-radius:0 2px 2px 0;width:4px;height:34px}.asset-identity--success .asset-identity__rail,.category-identity--1 .category-identity__rail{background:var(--success)}.asset-identity--warning .asset-identity__rail{background:var(--warning)}.asset-identity--danger .asset-identity__rail{background:var(--danger)}.category-identity--0 .category-identity__rail{background:var(--text-muted)}.asset-identity strong,.asset-identity small,.category-identity strong,.category-identity small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.asset-identity strong,.category-identity strong{color:var(--text-primary);font-size:13px;font-weight:600}.asset-identity small,.category-identity small{color:var(--text-muted);margin-top:3px;font-size:11px}.asset-price{color:var(--text-primary);font-size:12px;font-weight:600}.asset-image-placeholder{border:1px dashed var(--border);width:42px;height:42px;color:var(--text-muted);background:var(--surface-muted);border-radius:5px;place-items:center;font-size:20px;display:grid}.asset-image-placeholder--large{width:56px;height:56px;font-size:24px}.asset-form-alert{margin-bottom:16px}.asset-form-image{min-height:58px;color:var(--text-muted);align-items:center;gap:12px;font-size:12px;display:flex}.asset-form-image .n-image,.asset-management-page .n-data-table .n-image{border:1px solid var(--border);background:var(--surface-muted);border-radius:5px;overflow:hidden}.import-workflow{gap:14px;display:grid}.import-preview-panel{border:1px solid var(--border);border-radius:6px;overflow:hidden}.import-preview-summary{border-bottom:1px solid var(--border);background:var(--surface-muted);grid-template-columns:repeat(3,1fr);display:grid}.import-preview-summary>div{border-right:1px solid var(--border);justify-content:center;align-items:center;gap:9px;min-height:60px;display:flex}.import-preview-summary>div:last-child{border-right:0}.import-preview-summary span{color:var(--text-muted);font-size:12px}.import-preview-summary strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:20px}.import-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.import-preview-grid>section{min-width:0;min-height:220px;padding:14px}.import-preview-grid>section+section{border-left:1px solid var(--border)}.import-preview-grid header{justify-content:space-between;align-items:center;gap:12px;min-height:30px;font-size:13px;display:flex}.import-preview-list{max-height:210px;color:var(--text-secondary);margin:8px 0 0;padding-left:24px;font-size:11px;line-height:1.8;overflow-y:auto}.import-preview-list--errors{color:var(--danger)}.modal-actions--split{justify-content:space-between}.import-log-pagination{padding-inline:0}.import-log-toolbar{min-height:44px;color:var(--text-muted);justify-content:space-between;align-items:center;margin-top:-10px;font-size:12px;display:flex}
