:root{--color-bg:#f3f2f1;--color-surface:#fff;--color-border:#e1dfdd;--color-border-strong:#c8c6c4;--color-text:#201f1e;--color-text-muted:#605e5c;--color-primary:#0078d4;--color-primary-dark:#005a9e;--color-good:#107c10;--color-good-bg:#dff6dd;--color-warn:#8a6d00;--color-warn-bg:#fff4ce;--color-danger:#a4262c;--color-danger-bg:#fde7e9;--color-info:#004e8c;--color-info-bg:#deecf9;--radius:6px;--shadow:0 1px 2px #00000014;--nav-height:56px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-bg);color:var(--color-text);margin:0;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:var(--color-primary)}button{cursor:pointer;font-family:inherit;font-size:14px}table{border-collapse:collapse;width:100%}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.btn{border-radius:var(--radius);border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;padding:8px 16px;font-weight:600;transition:background .1s}.btn:hover{background:var(--color-primary-dark)}.btn:disabled{background:var(--color-border-strong);border-color:var(--color-border-strong);color:var(--color-text-muted);cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-border-strong)}.btn-secondary:hover{background:var(--color-bg)}.badge{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-good{background:var(--color-good-bg);color:var(--color-good)}.badge-warn{background:var(--color-warn-bg);color:var(--color-warn)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.badge-neutral{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border-strong)}.text-muted{color:var(--color-text-muted)}.privacy-note{background:var(--color-info-bg);color:var(--color-info);border-radius:var(--radius);padding:10px 14px;font-size:13px}.print-only{display:none}@media print{.no-print,.screen-only{display:none!important}.print-only{display:block!important}body{background:#fff}.card{box-shadow:none;break-inside:avoid;border:1px solid #ccc}table{font-size:11px}h1,h2,h3{break-after:avoid}}
