- 引入 dashboard-frontend/dist 静态资源占位(Vite 产物:assets + favicon + index.html + mockServiceWorker.js) - .gitignore 排除 dashboard-frontend/node_modules 及日志,避免误入库(~304MB) - src 暂留占位待后续接入 Co-authored-by: Cursor <cursoragent@cursor.com>
2 lines
16 KiB
CSS
2 lines
16 KiB
CSS
:root{--adm-radius-s:4px;--adm-radius-m:8px;--adm-radius-l:12px;--adm-font-size-1:9px;--adm-font-size-2:10px;--adm-font-size-3:11px;--adm-font-size-4:12px;--adm-font-size-5:13px;--adm-font-size-6:14px;--adm-font-size-7:15px;--adm-font-size-8:16px;--adm-font-size-9:17px;--adm-font-size-10:18px;--adm-color-primary:#1677ff;--adm-color-success:#00b578;--adm-color-warning:#ff8f1f;--adm-color-danger:#ff3141;--adm-color-yellow:#ff9f18;--adm-color-orange:#ff6430;--adm-color-wathet:#e7f1ff;--adm-color-text:#333;--adm-color-text-secondary:#666;--adm-color-weak:#999;--adm-color-light:#ccc;--adm-color-border:#eee;--adm-color-background:#fff;--adm-color-highlight:var(--adm-color-danger);--adm-color-white:#fff;--adm-color-box:#f5f5f5;--adm-color-text-light-solid:var(--adm-color-white);--adm-color-text-dark-solid:#000;--adm-color-fill-content:var(--adm-color-box);--adm-font-size-main:var(--adm-font-size-5);--adm-font-family:-apple-system, blinkmacsystemfont, "Helvetica Neue", helvetica, segoe ui, arial, roboto, "PingFang SC", "miui", "Hiragino Sans GB", "Microsoft Yahei", sans-serif;--adm-border-color:var(--adm-color-border)}html[data-prefers-color-scheme=dark]{--adm-color-primary:#3086ff;--adm-color-success:#34b368;--adm-color-warning:#ffa930;--adm-color-danger:#ff4a58;--adm-color-yellow:#ffa930;--adm-color-orange:#e65a2b;--adm-color-wathet:#0d2543;--adm-color-text:#e6e6e6;--adm-color-text-secondary:#b3b3b3;--adm-color-weak:gray;--adm-color-light:#4d4d4d;--adm-color-border:#2b2b2b;--adm-color-box:#0a0a0a;--adm-color-background:#1a1a1a;--adm-color-background-body:var(--adm-color-background);--adm-border-color:var(--adm-color-border)}:root{-webkit-tap-highlight-color:#0000}html{background-color:var(--adm-color-background-body)}body{color:var(--adm-color-text);font-size:var(--adm-font-size-main);font-family:var(--adm-font-family)}a,button{cursor:pointer}a{color:var(--adm-color-primary);transition:opacity .2s ease-in-out}a:active{opacity:.8}.adm-plain-anchor{color:unset;transition:none}.adm-plain-anchor:active{opacity:unset}body.adm-overflow-hidden{overflow:hidden!important}div.adm-px-tester{--size:1;height:calc(var(--size) / 2 * 2px);-webkit-user-select:none;user-select:none;pointer-events:none;width:0;position:fixed;top:-100vh;left:-100vw}:root{--bg:#fff6f1;--surface:#fff;--surface-soft:#f6f9fb;--text:#132033;--muted:#6b7a90;--border:#13203314;--primary:#ff5b36;--primary-deep:#f04a2a;--primary-soft:#fff0eb;--success:#14a46c;--warning:#ffb000;--danger:#dc2626;--shadow:0 16px 40px #ff5b3624;--radius-xl:28px;--radius-lg:20px;--radius-md:14px;--adm-color-primary:var(--primary);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #ff5b3633, transparent 28rem), var(--bg);min-width:320px;margin:0}button{font:inherit}#root{background:var(--bg);width:min(100%,430px);min-height:100svh;margin:0 auto;box-shadow:0 0 0 1px #1320330a}.mobile-shell{min-height:100svh;position:relative}.mobile-main{min-height:100svh;padding-bottom:calc(74px + env(safe-area-inset-bottom))}.bottom-nav{z-index:20;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;width:min(100%,430px);margin:0 auto;position:fixed;bottom:0;left:0;right:0}.dashboard-page{padding:14px 14px 24px}.dashboard-hero{color:#fff;border-radius:0 0 var(--radius-xl) var(--radius-xl);box-shadow:var(--shadow);background:linear-gradient(145deg,#ff5b36fa,#ff8b52eb),radial-gradient(circle at 90% 10%,#ffb0006b,#0000 18rem);padding:20px;position:relative;overflow:hidden}.hero-topline,.section-title-row,.risk-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.hero-topline span,.eyebrow,.section-kicker{letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.hero-topline button{color:#fff;background:#ffffff29;border:1px solid #ffffff3d;border-radius:999px;min-height:34px;padding:0 14px}.dashboard-hero h1{margin:18px 0 8px;font-size:30px;line-height:1.1}.hero-summary{color:#ffffffc7;margin:0;font-size:14px;line-height:1.6}.hero-metric{border-radius:var(--radius-lg);background:#ffffff24;border:1px solid #ffffff2e;margin-top:20px;padding:16px}.hero-metric span,.hero-metric small{color:#ffffffb8;font-size:12px;display:block}.hero-metric strong{margin:6px 0;font-size:32px;line-height:1;display:block}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.kpi-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-height:112px;padding:14px;box-shadow:0 10px 28px #162f5014}.kpi-card--featured{grid-column:span 2}.kpi-title,.kpi-trend,.section-kicker,.snapshot-time,.rank-content small,.risk-item p{color:var(--muted);margin:0}.kpi-value{color:var(--text);word-break:break-all;margin-top:8px;font-size:22px;line-height:1.08;display:block}.kpi-trend{margin-top:8px;font-size:12px}.kpi-trend span{color:var(--primary);margin-left:6px;font-weight:700}.kpi-card--success .kpi-trend span{color:var(--success)}.kpi-card--warning .kpi-trend span{color:var(--warning)}.kpi-card--danger .kpi-value,.kpi-card--danger .kpi-trend span{color:var(--danger)}.section-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);margin-top:14px;padding:16px;box-shadow:0 10px 28px #162f5014}.section-title-row h2{margin:2px 0 0;font-size:18px}.compact-section .kpi-grid{margin-top:12px}.snapshot-section .adm-capsule-tabs{margin:14px 0}.snapshot-card{background:var(--surface-soft);border-radius:var(--radius-lg);padding:14px}.snapshot-message{margin:0 0 8px;font-weight:700;line-height:1.5}.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.snapshot-grid span{min-height:64px;color:var(--muted);border-radius:var(--radius-md);background:#fff;padding:10px;font-size:12px}.snapshot-grid strong{color:var(--text);margin-top:5px;font-size:15px;display:block}.mini-trend-chart{width:100%;height:240px}.text-button,.rank-item,.risk-item{appearance:none;background:0 0;border:0}.text-button{min-height:36px;color:var(--primary);align-items:center;font-size:13px;font-weight:700;display:inline-flex}.rank-list,.risk-list{gap:10px;margin-top:14px;display:grid}.rank-item,.risk-item{text-align:left;background:var(--surface-soft);border-radius:var(--radius-md);width:100%;min-height:58px;padding:12px}.rank-item{grid-template-columns:28px 1fr auto;align-items:center;gap:10px;display:grid}.rank-index{color:#fff;background:var(--text);border-radius:10px;place-items:center;width:26px;height:26px;font-weight:800;display:inline-grid}.rank-content strong,.rank-content small{display:block}.rank-value{color:var(--primary);font-size:13px;font-weight:800}.risk-count{color:var(--danger);font-weight:800}.risk-header{color:var(--muted);justify-content:flex-start;font-size:12px}.risk-header time{margin-left:auto}.risk-item strong{margin:10px 0 4px;font-size:15px;display:block}.risk-item p{line-height:1.5}.placeholder-page,.loading-page,.error-page{padding:24px 16px}.mobile-page-header h1{margin:4px 0 24px}.loading-page,.error-page{text-align:center;place-content:center;gap:14px;min-height:60svh;display:grid}.adm-safe-area{--multiple:var(--adm-safe-area-multiple,1);width:100%;display:block}.adm-safe-area-position-top{padding-top:calc(env(safe-area-inset-top) * var(--multiple))}.adm-safe-area-position-bottom{padding-bottom:calc(env(safe-area-inset-bottom) * var(--multiple))}.adm-badge-wrapper{display:inline-block;position:relative}.adm-badge{vertical-align:middle;box-sizing:content-box;background-color:var(--color);--right:0;--top:0;--color:var(--adm-badge-color,var(--adm-color-highlight));border-radius:100px;display:inline-flex}.adm-badge-content{color:var(--adm-color-text-light-solid);box-sizing:border-box;min-width:8px;font-size:var(--adm-font-size-1);white-space:nowrap;text-align:center;padding:1px 4px;font-weight:400;line-height:12px}.adm-badge-fixed{right:var(--right);top:var(--top);position:absolute;transform:translate(50%,-50%)}.adm-badge-dot{border-radius:5px;width:10px;min-width:10px;height:10px}.adm-badge-bordered{border:solid 1px var(--adm-color-text-light-solid)}.adm-button{--color:var(--adm-color-text-light-solid);--text-color:var(--adm-button-text-color,var(--adm-color-text));--background-color:var(--adm-button-background-color,var(--adm-color-background));--border-radius:var(--adm-button-border-radius,4px);--border-width:var(--adm-button-border-width,1px);--border-style:var(--adm-button-border-style,solid);--border-color:var(--adm-button-border-color,var(--adm-color-border));color:var(--text-color);background-color:var(--background-color);box-sizing:border-box;height:auto;font-size:var(--adm-font-size-9);text-align:center;border:var(--border-width) var(--border-style) var(--border-color);border-radius:var(--border-radius);cursor:pointer;-webkit-user-select:none;user-select:none;margin:0;padding:7px 12px;line-height:1.4;transition:opacity .15s;display:inline-block;position:relative}.adm-button:focus{outline:none}.adm-button:before{transform:translate(calc(var(--border-width) * -1), calc(var(--border-width) * -1));background-color:var(--adm-color-text-dark-solid);border:var(--border-width) var(--border-style) var(--adm-color-text-dark-solid);border-radius:var(--border-radius);opacity:0;content:" ";box-sizing:content-box;width:100%;height:100%;position:absolute;top:0;left:0}.adm-button:active:before{opacity:.08}.adm-button-default.adm-button-fill-outline{--background-color:transparent;--border-color:var(--adm-color-text)}.adm-button-default.adm-button-fill-none{--background-color:transparent;--border-width:0px}.adm-button:not(.adm-button-default){--text-color:var(--adm-color-text-light-solid);--background-color:var(--color);--border-color:var(--color)}.adm-button:not(.adm-button-default).adm-button-fill-outline{--text-color:var(--color);--background-color:transparent}.adm-button:not(.adm-button-default).adm-button-fill-none{--text-color:var(--color);--background-color:transparent;--border-width:0px}.adm-button-primary{--color:var(--adm-color-primary)}.adm-button-success{--color:var(--adm-color-success)}.adm-button-danger{--color:var(--adm-color-danger)}.adm-button-warning{--color:var(--adm-color-warning)}.adm-button-block{width:100%;display:block}.adm-button-disabled{cursor:not-allowed;opacity:.4}.adm-button-disabled:active:before{display:none}.adm-button.adm-button-mini{font-size:var(--adm-font-size-main);padding-top:3px;padding-bottom:3px}.adm-button.adm-button-mini.adm-button-shape-rounded{padding-left:9px;padding-right:9px}.adm-button.adm-button-small{font-size:var(--adm-font-size-7);padding-top:3px;padding-bottom:3px}.adm-button.adm-button-large{font-size:var(--adm-font-size-10);padding-top:11px;padding-bottom:11px}.adm-button.adm-button-shape-rounded{--border-radius:1000px}.adm-button.adm-button-shape-rectangular{--border-radius:0}.adm-button-loading{vertical-align:bottom}.adm-button-loading-wrapper{justify-content:center;align-items:center;height:1.4em;display:flex}.adm-button-loading-wrapper>.adm-loading{opacity:.6}.adm-dot-loading{display:inline-block}.adm-capsule-tabs{min-width:0;position:relative}.adm-capsule-tabs-header{border-bottom:solid 1px var(--adm-color-border);padding:12px 6px;position:relative}.adm-capsule-tabs-tab-list{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;align-items:center;display:flex;position:relative;overflow-x:scroll}.adm-capsule-tabs-tab-list::-webkit-scrollbar{display:none}.adm-capsule-tabs-tab-wrapper{flex:auto;padding:0 6px}.adm-capsule-tabs-tab{cursor:pointer;font-size:var(--adm-font-size-7);text-align:center;white-space:nowrap;background-color:var(--adm-color-fill-content);border-radius:20px;margin:0 auto;padding:8px 20px;position:relative}.adm-capsule-tabs-tab-active{color:var(--adm-color-text-light-solid);background-color:var(--adm-color-primary)}.adm-capsule-tabs-tab-disabled{opacity:.5;cursor:not-allowed}.adm-capsule-tabs-content{padding:12px}.adm-scroll-mask{z-index:1;pointer-events:none;width:30px;height:100%;position:absolute;top:0;bottom:0}.adm-scroll-mask-left{background:linear-gradient(to right, var(--adm-color-background), #fff0);left:0}.adm-scroll-mask-right{background:linear-gradient(to left, var(--adm-color-background), #fff0);right:0}.adm-skeleton{--width:100%;--height:0;--border-radius:0;border-radius:var(--border-radius);width:var(--width);height:var(--height);background-color:#bebebe33;display:block}.adm-skeleton.adm-skeleton-animated{background:linear-gradient(90deg,#bebebe33 25%,#8181813d 37%,#bebebe33 63%) 0 0/400% 100%;animation:1.4s infinite adm-skeleton-loading}.adm-skeleton.adm-skeleton-title{--width:45%;--height:32px;--border-radius:2px;margin-top:16px;margin-bottom:16px}.adm-skeleton.adm-skeleton-paragraph-line{--height:18px;--border-radius:2px;margin-top:12px;margin-bottom:12px}.adm-skeleton.adm-skeleton-paragraph-line:last-child{--width:65%}@keyframes adm-skeleton-loading{0%{background-position:100%}to{background-position:0}}.adm-empty{flex-direction:column;justify-content:center;align-items:center;padding:24px 0;display:flex}.adm-empty-image-container{justify-content:center;display:flex}.adm-empty-image-container .adm-empty-image{width:64px;height:intrinsic}.adm-empty-description{font-size:var(--adm-font-size-6);color:var(--adm-color-light);margin-top:8px}.adm-error-block{--color:var(--adm-color-text);--image-height:var(--adm-error-block-image-height,100px);--image-height-full-page:var(--adm-error-block-image-height-full-page,200px);--image-width:var(--adm-error-block-image-width,auto);--image-width-full-page:var(--adm-error-block-image-width-full-page,auto);box-sizing:border-box;text-align:center}.adm-error-block-image{height:var(--image-height);width:var(--image-width);max-width:100%}.adm-error-block-image svg,.adm-error-block-image img{height:100%}.adm-error-block-description{font-size:var(--adm-font-size-4);color:var(--adm-color-weak);margin-top:12px;line-height:1.4}.adm-error-block-description-title{font-size:var(--adm-font-size-7)}.adm-error-block-description-subtitle{margin-top:8px}.adm-error-block-content{margin-top:12px}.adm-error-block-full-page{padding-top:calc(50vh - var(--image-height-full-page))}.adm-error-block-full-page .adm-error-block-image{height:var(--image-height-full-page);width:var(--image-width-full-page)}.adm-error-block-full-page .adm-error-block-description{font-size:var(--adm-font-size-main);margin-top:20px}.adm-error-block-full-page .adm-error-block-description-title{color:var(--adm-color-text);font-size:20px}.adm-tab-bar-wrap{flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;min-height:48px;display:flex;overflow:hidden}.adm-tab-bar-item{color:var(--adm-color-text-secondary);white-space:nowrap;cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;width:min-content;padding:4px 8px;display:flex;position:relative}.adm-tab-bar-item-icon{height:24px;font-size:24px;line-height:1}.adm-tab-bar-item-title{font-size:var(--adm-font-size-2);line-height:15px}.adm-tab-bar-item-title-with-icon{margin-top:2px}.adm-tab-bar-item-active{color:var(--adm-color-primary)}.adm-tab-bar-icon-badge{--top:6px}.adm-tab-bar-title-badge{--right:-2px;--top:-2px}.adm-tag{--border-radius:var(--adm-tag-border-radius,2px);font-size:var(--adm-font-size-3);background:var(--background-color);color:var(--text-color);white-space:nowrap;border-radius:var(--border-radius);border:1px solid var(--border-color);box-sizing:border-box;padding:2px 4px;font-weight:400;line-height:1;display:inline-block}.adm-tag-round{border-radius:100px}
|