:root{--ink: #172b4d;--sub: #44546f;--muted: #626f86;--line: #dfe1e6;--line-2: #ebecf0;--surface: #f7f8f9;--surface-2: #f1f2f4;--blue: #0c66e4;--blue-hover: #0055cc;--blue-bg: #e9f2ff;--adj-bg: #e9f2ff;--adj-line: #8fb8f6;--adj-t: #0747a6}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#f5f6f8;color:#1a1a1a}.page-loading{padding:2rem}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.5rem;background:#1f2937;color:#fff}.app-header .brand{color:#fff;text-decoration:none;font-weight:600}.app-header nav{display:flex;gap:1rem;flex:1}.app-header nav a{color:#d1d5db;text-decoration:none}.app-header nav a:hover{color:#fff}.user-info{display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:#d1d5db}.user-info button{background:transparent;border:1px solid #6b7280;color:#fff;border-radius:4px;padding:.3rem .7rem;cursor:pointer}.app-main{flex:1;padding:1.5rem;max-width:1200px;width:100%;margin:0 auto}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh}.login-form{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 1px 4px #0000001f;width:320px;display:flex;flex-direction:column;gap:.9rem}.login-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.login-form input{padding:.5rem;border:1px solid #cbd5e1;border-radius:4px}button{cursor:pointer}.login-form button,.upload-form button,.topup-form button{padding:.55rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:4px;font-weight:600}.login-form button:disabled,.upload-form button:disabled,.topup-form button:disabled{background:#93c5fd;cursor:default}.error-text{color:#b91c1c;font-size:.9rem}.hint-text{color:#6b7280;font-size:.85rem}section{background:#fff;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #00000014}.upload-card{margin-bottom:1.5rem}.upload-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:end}.upload-form label,.topup-form label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem}.upload-form select,.upload-form input,.topup-form input{padding:.4rem;border:1px solid #cbd5e1;border-radius:4px}.topup-form{display:flex;gap:1rem;align-items:end;margin:1rem 0;flex-wrap:wrap}table{width:100%;border-collapse:collapse;font-size:.9rem}.reviews-table th,.reviews-table td,.owner-table th,.owner-table td{border-bottom:1px solid #e5e7eb;padding:.5rem .6rem;text-align:left;vertical-align:top}.reviews-table th,.owner-table th{background:#f3f4f6;font-weight:600}.review-detail{color:var(--ink)}.review-detail .mono{font-variant-numeric:tabular-nums}.subline{display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:13px;margin-bottom:16px}.chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2);color:var(--sub);border-radius:4px;padding:3px 9px;font-size:12px;font-weight:600}.lawbanner{display:flex;gap:10px;align-items:flex-start;background:#ffecec;border:1px solid #ffa39b;border-radius:8px;padding:12px 14px;margin-bottom:12px}.lawbanner svg{width:20px;height:20px;color:#c9372c;flex:none;margin-top:1px}.lawbanner span{color:#5a2a24;font-size:13.5px}.verdict-banner{display:flex;gap:12px;background:#fff7d6;border:1px solid #f5cd47;border-radius:8px;padding:14px 16px;margin-bottom:20px}.verdict-banner>svg{width:22px;height:22px;color:#b38600;flex:none;margin-top:1px}.verdict-banner h2{margin:0 0 3px;font-size:15px;font-weight:700}.verdict-banner p{margin:0 0 10px;color:#44403a}.tally{display:flex;gap:8px;flex-wrap:wrap}.cnt{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--sub)}.cnt .d{width:9px;height:9px;border-radius:2px;display:inline-block}.export-buttons{display:flex;gap:.75rem;margin-bottom:1rem}.btn.subtle{display:inline-flex;align-items:center;gap:7px;background:var(--surface-2);color:var(--sub);border:none;border-radius:6px;padding:7px 14px;font-size:13.5px;font-weight:600}.btn.subtle:hover{background:#e2e4e9;color:var(--ink)}.controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:12px}.controls .lbl{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;font-weight:500;color:var(--sub)}.toggle input{position:absolute;opacity:0;width:0;height:0}.toggle .cb{width:16px;height:16px;border-radius:3px;border:2px solid #8590a2;display:grid;place-items:center;transition:.12s;background:#fff;flex:none}.toggle .cb svg{width:11px;height:11px;color:#fff;opacity:0;transition:.12s}.toggle input:checked+.cb{background:var(--blue);border-color:var(--blue)}.toggle input:checked+.cb svg{opacity:1}.toggle input:disabled+.cb{opacity:.6}.card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.card .scroll{overflow-x:auto}.risk-table{width:100%;border-collapse:collapse;min-width:1000px;font-size:.9rem}.risk-table thead th{background:var(--surface);color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.risk-table thead th .sub{display:block;font-weight:500;letter-spacing:0;text-transform:none;color:#8993a4;font-size:10px;margin-top:1px}.risk-table thead th.num,.risk-table tbody td.num{text-align:center}.risk-table tbody td{padding:12px 14px;border-bottom:1px solid var(--line-2);vertical-align:top}.risk-table tbody tr:last-child td{border-bottom:none}.risk-table tbody tr:hover{background:#f8f9fb}.risk-table .summary{font-weight:600;color:var(--ink);max-width:240px}.risk-table td.txt{color:var(--sub);max-width:300px;font-size:13px}.risk-table td.small{font-size:12.5px}.risk-table .score{font-size:14px;font-weight:600;color:var(--ink)}.risk-table .rpn{font-size:14px;font-weight:700}.lz{display:inline-block;padding:2px 6px;border-radius:3px;font-size:11px;font-weight:700;line-height:16px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.lz.grey{background:#dcdfe4;color:#44546f}.lz.blue{background:#deebff;color:#0747a6}.lz.green{background:#dcfff1;color:#164b35}.lz.purple{background:#eee9ff;color:#403294}.lz.red{background:#ffecec;color:#ae2a19}.lz.org{background:#fff3e5;color:#974f0c}.who{display:inline-flex;align-items:center;gap:8px}.who .av{width:24px;height:24px;border-radius:50%;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:700;flex:none}.who span:last-child{font-size:12.5px;color:var(--sub)}.prio{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;line-height:18px;white-space:nowrap;padding:3px 10px 3px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.02em}.prio svg{width:14px;height:14px;flex:none}.prio.red{background:#ffecec;color:#ae2a19}.prio.org{background:#fff3e5;color:#974f0c}.prio.yel{background:#fff7d6;color:#7a6300}.prio.grn{background:#dcfff1;color:#164b35}.o-cell-adjusted{background:var(--adj-bg);box-shadow:inset 0 0 0 1px var(--adj-line);border-radius:4px}.adj-mark{margin-left:6px;color:var(--adj-t);font-size:11px;font-weight:700}.budget-summary{display:flex;gap:2rem;margin-bottom:.5rem}.budget-summary div{display:flex;flex-direction:column;gap:.2rem}.budget-summary span{font-size:.8rem;color:#6b7280}.budget-summary strong{font-size:1.2rem}.value-negative{color:#b91c1c}.total-spend{text-align:right;font-weight:600;margin-top:.5rem}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.page-header h2{margin:0}.page-header button{padding:.5rem 1rem;background:var(--blue, #2563eb);color:#fff;border:none;border-radius:4px;font-weight:600}.registry-form-card{border:1px solid var(--line, #dfe1e6)}.registry-form-card h3{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1.25rem;margin-bottom:1rem}.form-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:#4b5563}.form-grid label.span-2{grid-column:span 2}.form-grid input,.form-grid select,.form-grid textarea{padding:.4rem;border:1px solid #cbd5e1;border-radius:4px;font-family:inherit}.form-actions{display:flex;gap:.75rem}.form-actions button[type=submit]{padding:.5rem 1rem;background:var(--blue, #2563eb);color:#fff;border:none;border-radius:4px;font-weight:600}.form-actions button[type=submit]:disabled{background:#93c5fd}.registry-table td{vertical-align:middle}.row-inactive{opacity:.55}.link-btn{background:none;border:none;color:var(--blue, #2563eb);font-weight:600;padding:0;font-size:.85rem}.link-btn:hover{text-decoration:underline}.settings-page section table input{padding:.35rem;border:1px solid #cbd5e1;border-radius:4px;width:100%}.settings-page section table button{padding:.35rem .7rem;background:var(--blue, #2563eb);color:#fff;border:none;border-radius:4px;font-weight:600;font-size:.8rem}.settings-page section table button:disabled{background:#93c5fd}.saved-notice{color:#15803d}
