/* Reset, typography and native controls. ui-refined retains the frozen opt-in scale. */
* { box-sizing:border-box; }
body { margin:0; font:14px/1.55 "Segoe UI",system-ui,-apple-system,sans-serif; background:var(--bg); color:var(--ink); }
a { color:var(--accent); }
h1 { margin:0 0 6px; }
h2 { margin:0 0 12px; }
h3 { margin:0 0 8px; }
table { border-collapse:separate; border-spacing:0; width:100%; background:var(--card); border:1px solid var(--line); border-radius:9px; overflow:hidden; }
th,td { padding:10px 11px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; font-size:13px; }
th { font-size:12px; }
tr:last-child td { border-bottom:0; }
tbody tr:hover td { background:var(--row-hover); }
input,select,textarea { background:var(--card); color:var(--ink); }
input:focus,select:focus,textarea:focus { outline:2px solid var(--focus-ring-blue); border-color:var(--accent); }
textarea { width:100%; min-height:180px; font-family:inherit; line-height:1.55; resize:vertical; }
details > summary { cursor:pointer; }
@media (max-width:720px) { th,td { padding:8px; } }
body { font-family:"Segoe UI","Microsoft YaHei",system-ui,sans-serif; font-size:15px; line-height:1.65; }
h1 { font-size:30px; line-height:1.3; letter-spacing:-.04em; }
h2 { font-size:20px; }
h3 { font-size:16px; }
p { overflow-wrap:anywhere; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid var(--focus-ring); outline-offset:3px; }
input,select,textarea { font:inherit; border-radius:8px; border:1px solid var(--input-border); padding:10px 12px; max-width:100%; }
input[type=checkbox] { width:17px; height:17px; accent-color:var(--accent); vertical-align:middle; }
label { font-size:13px; font-weight:600; color:var(--label-ink); }
label input:not([type=checkbox]),label select { display:block; width:100%; margin-top:7px; }
progress { display:block; appearance:none; width:100%; height:11px; border:0; border-radius:20px; background:var(--progress-track); overflow:hidden; }
progress::-webkit-progress-bar { background:var(--progress-track); border-radius:20px; }
progress::-webkit-progress-value { background:var(--progress-value); border-radius:20px; transition:width .4s ease; }
progress::-moz-progress-bar { background:var(--progress-value); }
summary { cursor:pointer; font-weight:600; color:var(--summary-toggle-ink); }
table { font-size:13px; line-height:1.65; }
th { background:var(--th-bg); color:var(--th-ink); font-weight:600; }
td { vertical-align:top; padding:14px 12px; overflow-wrap:anywhere; max-width:420px; }
@media(prefers-reduced-motion:reduce) { * { transition:none!important; } }
html { scroll-behavior:auto; }
[hidden] { display:none!important; }
[data-action-scope][data-busy] { background:var(--busy-bg); }
tr:target { outline:2px solid var(--accent-alt); outline-offset:-2px; background:var(--busy-bg); }
@keyframes action-spin { to{transform:rotate(360deg);} }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
:where(.ui-refined) h1 { font-size:var(--fs-xl); line-height:1.25; letter-spacing:-.02em; margin:0 0 var(--sp-2); }
:where(.ui-refined) h2 { font-size:var(--fs-lg); line-height:1.3; margin:0 0 var(--sp-3); }
:where(.ui-refined) h3 { font-size:var(--fs-md); line-height:1.4; margin:0 0 var(--sp-2); }
:where(.ui-refined) label { font-size:var(--fs-sm); font-weight:600; color:var(--ink); }
:where(.ui-refined) input, :where(.ui-refined) select, :where(.ui-refined) textarea { font:inherit; font-size:var(--fs-sm); color:var(--ink); padding:var(--sp-2) var(--sp-3); border:1px solid var(--line-strong); border-radius:var(--r-sm); background:var(--card); }
:where(.ui-refined) input:focus, :where(.ui-refined) select:focus, :where(.ui-refined) textarea:focus { outline:2px solid var(--focus); outline-offset:2px; border-color:var(--accent); }
:where(.ui-refined) a:focus-visible, :where(.ui-refined) button:focus-visible, :where(.ui-refined) input:focus-visible, :where(.ui-refined) select:focus-visible, :where(.ui-refined) summary:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
:where(.ui-refined) textarea { width:100%; min-height:180px; line-height:1.55; resize:vertical; }
:where(.ui-refined) input[type=checkbox] { width:17px; height:17px; accent-color:var(--accent); padding:0; }
:where(.ui-refined) summary { cursor:pointer; font-weight:600; color:var(--summary-toggle-ink); }
:where(.ui-refined) [data-draft-editor] label { display:block; margin:var(--sp-2) 0; }
:where(.ui-refined) [data-draft-editor] textarea { margin-top:var(--sp-2); }
:where(.ui-refined) table { border-collapse:separate; border-spacing:0; width:100%; background:var(--card); border:1px solid var(--line); border-radius:var(--r-md); overflow:hidden; font-size:var(--fs-sm); line-height:1.6; }
:where(.ui-refined) th, :where(.ui-refined) td { padding:var(--sp-2) var(--sp-3); border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
:where(.ui-refined) th { background:var(--soft); color:var(--dim); font-weight:600; font-size:var(--fs-xs); }
:where(.ui-refined) tr:last-child td { border-bottom:0; }
:where(.ui-refined) tbody tr:hover td { background:var(--soft); }
@media (max-width:720px) { :where(.ui-refined) th, :where(.ui-refined) td { padding:var(--sp-2); } }
