/* 陶瓷材料数智设计平台 · 设计令牌与通用组件（首页与工作台共用） */
:root{
  --bg:#FFFFFF; --bg2:#F6F7F9; --panel:#FFFFFF; --panel2:#F2F4F7; --line:#E4E8EE; --line2:#D2D9E2;
  --ink:#10151C; --ink2:#3A4553; --muted:#5E6B7B; --dim:#7D8999;
  --heat0:#7A1E0E; --heat1:#E2501F; --heat2:#F26B2A; --heat3:#C2410C; --heat4:#7C2D12;
  --cool1:#1B6FD1; --cool2:#2F7FD6; --cool3:#1D5FA8;
  --ok:#15803D; --warn:#B45309; --bad:#B91C1C;
  --radius:14px; --radius-s:9px;
  --font:"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --mono:"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;
  --heat-grad:linear-gradient(90deg,#9A3412 0%,#E2501F 45%,#F26B2A 75%,#F59E0B 100%);
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}
a{color:var(--cool2);text-decoration:none} a:hover{text-decoration:underline}
button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}
.mono{font-family:var(--mono)}
.muted{color:var(--muted)} .dim{color:var(--dim)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1px solid var(--line2);background:var(--panel2);color:var(--ink);cursor:pointer;font-weight:600;transition:transform .15s,border-color .15s,background .15s}
.btn:hover{border-color:var(--heat2);text-decoration:none}
.btn:active{transform:translateY(1px)}
.btn.primary{background:linear-gradient(135deg,var(--heat1),var(--heat2));border-color:transparent;color:#fff}
.btn.primary:hover{filter:brightness(1.08)}
.btn.small{padding:6px 12px;font-size:13px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--line2);font-size:12px;color:var(--ink2);background:var(--panel)}
.chip.on{border-color:var(--heat2);color:var(--heat3);background:rgba(255,138,61,.12)}
.tag{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:600}
.tag.C{background:rgba(29,95,168,.09);color:var(--cool3)}
.tag.P{background:rgba(226,80,31,.09);color:var(--heat3)}
.tag.L,.tag.M{background:rgba(21,128,61,.10);color:#15803D}
.tag.ok{background:rgba(21,128,61,.10);color:#15803D} .tag.bad{background:rgba(185,28,28,.09);color:#B91C1C} .tag.edge{background:rgba(180,83,9,.10);color:#B45309}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.grid{display:grid;gap:16px}
input[type=text],input[type=number],select,textarea{background:var(--bg2);border:1px solid var(--line2);border-radius:var(--radius-s);padding:8px 10px;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--heat2)}
input[type=range]{accent-color:var(--heat2);width:100%}
table{border-collapse:collapse;width:100%}
th,td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;white-space:nowrap}
th{color:var(--muted);font-weight:600;position:sticky;top:0;background:var(--panel)}
tr.click{cursor:pointer} tr.click:hover td{background:rgba(255,138,61,.06)}
.num{font-variant-numeric:tabular-nums;font-family:var(--mono)}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
