:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#eef2f6;--border:#d7dde5;--border-strong:#b9c2cf;--text:#17202a;--muted:#647181;--accent:#155e75;--accent-2:#1d4ed8;--success:#15803d;--warning:#b45309;--danger:#b91c1c;--review:#7c3aed;--pending:#475569;--shadow:0 1px 2px #0f172a14}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);color:#f8fafc;background:#101820;height:100vh;padding:18px 14px;position:sticky;top:0}.brand{border-bottom:1px solid #ffffff1f;align-items:center;gap:10px;padding:8px 8px 18px;display:flex}.brand-mark{background:#0e7490;border-radius:6px;place-items:center;width:34px;height:34px;display:grid}.brand strong,.brand small{display:block}.brand strong{font-size:13px}.brand small{color:#b8c6d3;margin-top:2px;font-size:12px}.nav-list{gap:4px;margin-top:18px;display:grid}.nav-link{color:#dce6ef;border-radius:6px;align-items:center;gap:10px;min-height:38px;padding:9px 10px;display:flex}.nav-link:hover{background:#ffffff14}.nav-link-active{color:#fff;background:#ffffff24;font-weight:600}.main-panel{min-width:0;padding:22px}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page-title{margin:0;font-size:22px;line-height:1.2}.page-kicker{color:var(--muted);margin:4px 0 0;font-size:13px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.toolbar-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.input,.select,.textarea{border:1px solid var(--border-strong);min-height:36px;color:var(--text);background:#fff;border-radius:6px;outline:none;padding:8px 10px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent-2);box-shadow:0 0 0 3px #1d4ed81f}.search-input{width:min(360px,100%)}.textarea{resize:vertical;width:100%;min-height:180px;line-height:1.45}.btn{border:1px solid var(--border-strong);min-height:36px;color:var(--text);box-shadow:var(--shadow);background:#fff;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{cursor:not-allowed;opacity:.58}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn-danger{border-color:var(--danger);background:var(--danger);color:#fff}.btn-ghost{box-shadow:none}.segmented{border:1px solid var(--border-strong);background:#fff;border-radius:6px;display:inline-flex;overflow:hidden}.segment{border:0;border-right:1px solid var(--border);background:0 0;min-height:36px;padding:8px 12px}.segment:last-child{border-right:0}.segment-active{background:var(--accent);color:#fff}.kpi-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin-bottom:14px;display:grid}.kpi-card{border:1px solid var(--border);background:var(--surface);min-height:82px;box-shadow:var(--shadow);border-radius:8px;padding:12px}.kpi-label{color:var(--muted);font-size:12px}.kpi-value{margin-top:8px;font-size:24px;font-weight:700}.panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:12px 14px;display:flex}.panel-title{margin:0;font-size:15px}.table-wrap{overflow-x:auto}.pagination-bar{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 14px;display:flex}.pagination-info,.pagination-pages{font-size:13px}.pagination-btn{align-items:center;gap:4px;min-height:32px;padding:6px 10px;font-size:13px;display:inline-flex}.data-table{border-collapse:collapse;table-layout:fixed;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 12px}.data-table th{background:var(--surface-2);color:#334155;font-size:12px;font-weight:700}.data-table tr.clickable-row{cursor:pointer}.data-table tr.clickable-row:hover{background:#f0f9ff}.remarks-cell{color:#334155;line-height:1.35}.muted{color:var(--muted)}.mono{font-family:Consolas,Courier New,monospace}.badge{white-space:nowrap;border-radius:999px;align-items:center;min-height:24px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex}.badge-filed{color:var(--success);background:#dcfce7}.badge-not-filed{color:var(--danger);background:#fee2e2}.badge-review{color:var(--review);background:#ede9fe}.badge-error{color:var(--danger);background:#fee2e2}.badge-pending,.badge-muted{color:var(--pending);background:#e2e8f0}.grid-two{grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:14px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px;display:grid}.form-field{gap:6px;display:grid}.form-field-wide{grid-column:1/-1}.field-label{color:#334155;font-size:12px;font-weight:700}.checkbox-row{align-items:center;gap:8px;min-height:36px;display:flex}.pre{border:1px solid var(--border);white-space:pre-wrap;background:#f8fafc;border-radius:6px;max-height:420px;margin:0;padding:12px;line-height:1.45;overflow:auto}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.detail-item{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;padding:12px}.detail-label{color:var(--muted);font-size:12px}.detail-value{overflow-wrap:anywhere;margin-top:6px;font-weight:700}.alert{color:#78350f;background:#fffbeb;border:1px solid #f59e0b;border-radius:8px;padding:10px 12px}.error-text{color:var(--danger)}@media (max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.nav-list{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.grid-two{grid-template-columns:1fr}}@media (max-width:720px){.main-panel{padding:14px}.page-header{display:grid}.nav-list,.kpi-grid,.detail-grid,.form-grid{grid-template-columns:1fr}}
