/* 英国版计算页（/app/uk/）专用样式；颜色和字体沿用 site.css 的变量，深浅色自动跟随。 */
.uk h1{font-size:clamp(26px,3.6vw,38px)}
.uk .local{background:var(--accent-soft);border-radius:8px;padding:10px 14px;max-width:none;font-size:15px}
.uk .intro .steps{margin:18px 0 6px}
.uk h3.sub{font-size:16px;margin:20px 0 6px}

.howto{max-width:760px;margin-top:10px}
.howto summary{cursor:pointer;font-weight:600;color:var(--accent)}
.howto ol{margin:8px 0 0;padding-left:1.3em;color:var(--muted);font-size:15px}
.howto li{margin-bottom:4px}

/* 拖放区 */
.drop{display:grid;place-items:center;gap:2px;text-align:center;min-height:150px;padding:24px;border:2px dashed var(--line);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .15s,background .15s}
.drop:hover,.drop.over{border-color:var(--accent);background:var(--accent-soft)}
.drop:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.drop b{font-size:18px}
.drop span{color:var(--muted)}
.drop u{color:var(--accent)}

.files{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px;max-width:760px}
.files li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 14px}
.files .name{font-weight:600;overflow-wrap:anywhere}
.files .meta{grid-column:1;font-size:13.5px;color:var(--muted)}
.files .err{grid-column:1;font-size:13.5px;color:var(--stamp)}
.files button{grid-row:1 / span 2;grid-column:2;font:inherit;font-size:13.5px;background:none;border:1px solid var(--line);color:var(--ink);border-radius:6px;padding:4px 10px;cursor:pointer}

.field{margin:0 0 18px;max-width:520px}
.money{display:flex;align-items:center;gap:6px;max-width:220px}
.money span{font-weight:700}
.money input{width:100%;font:inherit;font-family:var(--font-num);font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:9px 12px}
#aim .q{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line)}
#aim .q > span{min-width:12em;font-weight:600}
#aim .q small{font-weight:400;color:var(--muted);margin-left:4px}

/* 结果 */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px;margin:0 0 16px;min-width:0}
.panel > h3{margin:0 0 4px;font-size:18px}
.panel > .sub{margin:0 0 12px;color:var(--muted);font-size:14px;max-width:none}
.panel.block{border-color:var(--stamp);background:var(--warn-soft)}
.panel.block h3{color:var(--stamp)}
.issues{margin:8px 0 0;padding-left:1.2em}
.issues li{margin-bottom:10px}
.issues .refs{display:block;font-family:var(--font-num);font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.notes{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}
.notes li{border-left:3px solid var(--line);padding:4px 12px;font-size:14.5px;color:var(--muted)}
.notes li.warn{border-color:var(--stamp);color:var(--ink)}

table.boxes{width:100%;border-collapse:collapse;font-size:15px}
table.boxes th,table.boxes td{padding:9px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
table.boxes th{font-size:12.5px;font-weight:500;color:var(--muted)}
table.boxes td.box{width:3.6em;font-family:var(--font-num);color:var(--muted)}
table.boxes td.amt,table.boxes th.amt{text-align:right;white-space:nowrap;font-family:var(--font-num);font-variant-numeric:tabular-nums}
table.boxes td.amt b{font-size:17px}
table.boxes tr.group td{padding-top:16px;font-weight:700;border-bottom:0}
.copy{font:inherit;font-size:12px;margin-left:8px;background:none;border:1px solid var(--line);color:var(--muted);border-radius:5px;padding:1px 7px;cursor:pointer;vertical-align:middle}
.copy.done{color:var(--accent);border-color:var(--accent)}
.verdict{margin:12px 0 0;font-size:15px;max-width:none}
.verdict.must{font-weight:600}
.est{margin:8px 0 0;font-size:14px;color:var(--muted);max-width:none}

.tbl{overflow-x:auto;margin:6px 0 0}
table.grid{width:100%;border-collapse:collapse;font-size:13.5px;min-width:560px}
table.grid th,table.grid td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
table.grid th{font-weight:500;color:var(--muted);font-size:12px}
table.grid th:first-child,table.grid td:first-child,table.grid td.txt,table.grid th.txt{text-align:left;white-space:normal}
table.grid td{font-family:var(--font-num);font-variant-numeric:tabular-nums}
table.grid td.txt{font-family:var(--font-body)}
table.grid tr.sum td{font-weight:700;border-bottom:0}

details.disp{border-bottom:1px solid var(--line)}
details.disp > summary{display:grid;grid-template-columns:7.5em minmax(0,1fr) auto;gap:4px 12px;padding:10px 0;cursor:pointer;list-style:none}
details.disp > summary::-webkit-details-marker{display:none}
details.disp > summary::before{content:"▸";position:absolute;margin-left:-1em;color:var(--muted)}
details.disp[open] > summary::before{content:"▾"}
details.disp > summary{position:relative;padding-left:1em}
details.disp .d{font-family:var(--font-num);color:var(--muted);font-size:14px}
details.disp .s{font-weight:600;min-width:0;overflow-wrap:anywhere}
details.disp .g{font-family:var(--font-num);text-align:right}
details.disp .g.loss{color:var(--stamp)}
details.disp .body{padding:0 0 14px 1em}
details.disp .body p{font-size:14px;color:var(--muted);max-width:none;margin:8px 0 4px}
.refs-inline{font-family:var(--font-num);font-size:12px;color:var(--muted);overflow-wrap:anywhere}

.downloads{margin-top:8px}
.btn.ghost{background:none;color:var(--accent);border:1px solid var(--accent)}
.rules{max-width:820px;margin:0;padding-left:1.2em;font-size:15px}
.rules li{margin-bottom:10px}
.rules a{font-size:13px}
.disclaimer p{max-width:none;font-size:14px;color:var(--muted)}

@media (max-width:600px){
  details.disp > summary{grid-template-columns:minmax(0,1fr) auto}
  details.disp .d{grid-column:1 / -1}
  table.boxes{font-size:14px}
  .panel{padding:14px}
}
@media print{
  .top,.add,.opts,.intro .steps,.howto,.downloads,.copy,footer{display:none !important}
  body{background:#fff;color:#000}
  .panel{break-inside:avoid;border-color:#999}
  details.disp .body{display:block}
}

/* 免费预览（2026-11-03） */
.preview ul.found{margin:6px 0 14px;padding-left:1.2em;font-size:15px}
.preview ul.found li{margin-bottom:2px}
.preview .row{margin-top:12px}
