.op-report{--op-ink:#172235;--op-muted:#687386;--op-line:#dfe5ec;--op-soft:#f6f8fb;--op-accent:#1c6b5a;--op-accent-soft:#e9f5f1;--op-warn:#a15c16;--op-warn-soft:#fff6e7;--op-danger:#a13a3a;--op-danger-soft:#fff0f0;color:var(--op-ink);}
.op-report,.op-report>*,.op-report *{box-sizing:border-box;min-width:0;}
.op-legacy-note{margin:0 0 14px;padding:9px 12px;border:1px solid #efd1a2;border-radius:9px;background:#fff8ed;color:#754619;font-size:12px;line-height:1.55}
.op-loading,.op-empty,.op-access{display:grid;place-items:center;min-height:320px;padding:40px;text-align:center;border:1px dashed var(--op-line);border-radius:16px;background:var(--op-soft);color:var(--op-muted);}
.op-loading::before{content:"";width:24px;height:24px;border:3px solid #d7e7e2;border-top-color:var(--op-accent);border-radius:50%;animation:op-spin .8s linear infinite;margin-bottom:12px;}
@keyframes op-spin{to{transform:rotate(360deg)}}
.op-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;padding:20px;border:1px solid var(--op-line);border-radius:16px;background:linear-gradient(135deg,#f8fbfa 0%,#fff 62%);margin-bottom:16px;}
.op-kicker{font-size:12px;letter-spacing:.08em;color:var(--op-accent);font-weight:700;margin-bottom:5px;}
.op-title{font-size:24px;line-height:1.25;margin:0 0 7px;}
.op-meta{display:flex;flex-wrap:wrap;gap:7px 14px;font-size:12px;color:var(--op-muted);}
.op-meta code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;}
.op-head-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:560px;}
.op-control{display:grid;gap:5px;min-width:132px;font-size:11px;color:var(--op-muted);font-weight:600;}
.op-control select,.op-control input{min-height:38px;max-width:220px;}
.op-btn{min-height:38px;border:1px solid var(--op-line);border-radius:9px;padding:8px 12px;background:#fff;color:var(--op-ink);font:inherit;font-weight:650;cursor:pointer;white-space:nowrap;}
.op-btn:hover{border-color:#aab5c3;background:#f9fafb;}.op-btn:focus-visible,.op-subtab:focus-visible,.op-row-action:focus-visible{outline:3px solid rgba(28,107,90,.22);outline-offset:2px;}
.op-btn-primary{background:var(--op-accent);border-color:var(--op-accent);color:#fff;}.op-btn-primary:hover{background:#155647;border-color:#155647;}
.op-btn-danger{color:var(--op-danger);border-color:#e7bcbc}.op-btn[disabled]{opacity:.48;cursor:not-allowed;}
.op-status-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 16px;border-radius:12px;margin-bottom:14px;background:var(--op-soft);border:1px solid var(--op-line);}
.op-status-row[data-status="blocked"]{background:var(--op-warn-soft);border-color:#efd1a2}.op-status-row[data-status="passed"]{background:var(--op-accent-soft);border-color:#b9dfd4;}
.op-status-copy{display:flex;align-items:center;gap:10px;min-width:0;}.op-status-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--op-warn)}
.op-status-row[data-status="passed"] .op-status-dot{background:var(--op-accent)}.op-status-copy strong{font-size:14px}.op-status-copy span{font-size:12px;color:var(--op-muted)}
.op-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--op-line);padding:0 2px;margin:0 0 18px;scrollbar-width:thin;}
.op-subtab{border:0;background:transparent;color:var(--op-muted);padding:11px 14px;font:inherit;font-size:13px;font-weight:650;white-space:nowrap;cursor:pointer;}
.op-subtab.on{color:var(--op-accent);background:var(--op-accent-soft);border-radius:8px 8px 0 0}
.op-panel[hidden]{display:none!important}.op-section{margin:0 0 22px}.op-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 9px}.op-section h2{font-size:16px;margin:0}.op-section-note{font-size:12px;color:var(--op-muted);margin:3px 0 0;}
.op-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.op-metric{min-width:0;border:1px solid var(--op-line);border-radius:13px;background:#fff;padding:14px}.op-metric-label{font-size:12px;color:var(--op-muted);margin-bottom:7px}.op-metric-value{font-size:20px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.op-metric-sub{margin-top:5px;font-size:11px;color:var(--op-muted);min-height:1.2em}.op-metric.is-missing{background:var(--op-warn-soft)}
.op-currency-block{border:1px solid var(--op-line);border-radius:14px;padding:14px;margin-bottom:12px}.op-currency-label{font-size:12px;font-weight:750;color:var(--op-accent);margin-bottom:10px;letter-spacing:.04em}
.op-table-wrap{width:100%;overflow:auto;border:1px solid var(--op-line);border-radius:12px;background:#fff}.op-table{width:100%;min-width:720px;border-collapse:collapse;margin:0!important}.op-table th{position:sticky;top:0;z-index:1;background:#f3f6f8;color:#566174;font-size:11px;font-weight:700;text-align:left;white-space:nowrap}.op-table th,.op-table td{padding:10px 11px;border-bottom:1px solid #edf0f3;vertical-align:top}.op-table tbody tr:last-child td{border-bottom:0}.op-table td{font-size:12px}.op-num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}.op-fixed{white-space:nowrap;word-break:keep-all}.op-cell-note{color:var(--op-muted);max-width:360px}.op-row-action{border:0;background:none;color:var(--op-accent);font:inherit;font-weight:650;padding:0;cursor:pointer;white-space:nowrap}.op-empty-row{text-align:center!important;color:var(--op-muted);padding:28px!important;}
.op-tag{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;white-space:nowrap;background:#eef2f6;color:#566174}.op-tag.blocked,.op-tag.failed{background:var(--op-danger-soft);color:var(--op-danger)}.op-tag.warning{background:var(--op-warn-soft);color:var(--op-warn)}.op-tag.passed,.op-tag.formal,.op-tag.confirmed{background:var(--op-accent-soft);color:var(--op-accent)}
.op-callout{padding:13px 14px;border-radius:11px;background:var(--op-soft);border:1px solid var(--op-line);font-size:12px;color:#4d586a;line-height:1.6}.op-callout.warning{background:var(--op-warn-soft);border-color:#efd1a2;color:#754619}.op-callout strong{color:var(--op-ink)}
.op-blocking-list{margin:8px 0 0;padding-inline-start:20px}.op-blocking-list li+li{margin-top:4px}
.op-drill{border:1px solid var(--op-line);border-radius:12px;margin-bottom:8px;overflow:hidden}.op-drill summary{display:grid;grid-template-columns:minmax(160px,1.2fr) repeat(3,minmax(110px,.7fr));gap:10px;align-items:center;padding:12px 14px;cursor:pointer;background:#fafbfc;list-style:none}.op-drill summary::-webkit-details-marker{display:none}.op-drill summary::before{content:"＋";color:var(--op-accent);font-weight:800;margin-right:7px}.op-drill[open] summary::before{content:"−"}.op-drill-body{padding:12px 14px}
.op-checks{display:grid;gap:8px}.op-check{display:grid;grid-template-columns:auto minmax(120px,.5fr) minmax(0,1.5fr) auto;gap:10px;align-items:start;padding:11px 12px;border:1px solid var(--op-line);border-radius:10px}.op-check-icon{width:20px;text-align:center}.op-check-message{font-size:12px;color:var(--op-muted)}
.op-config{border-top:1px solid var(--op-line);margin-top:22px;padding-top:20px}.op-config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.op-form-card{border:1px solid var(--op-line);border-radius:13px;padding:14px;background:#fff}.op-form-card h3{font-size:14px;margin:0 0 11px}.op-field{display:grid;gap:5px;margin-bottom:10px;font-size:11px;color:var(--op-muted);font-weight:650}.op-field input,.op-field select{width:100%;min-height:38px}.op-inline{display:flex;gap:7px;align-items:end}.op-inline>*{min-width:0;flex:1}.op-list{display:grid;gap:7px;margin:8px 0 12px}.op-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 9px;background:var(--op-soft);border-radius:8px;font-size:12px}.op-list-row small{display:block;color:var(--op-muted);margin-top:2px}.op-config-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.op-declaration-form,.op-declaration-special{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.op-declaration-special{margin-top:8px}.op-declaration-form .op-field,.op-declaration-special .op-field{margin:0}
.op-pdf-modal{width:min(1100px,calc(100vw - 32px));height:min(900px,calc(100dvh - 32px));max-width:none!important;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:0!important;overflow:hidden}.op-pdf-frame{width:100%;height:100%;border:0;background:#fff}.op-pdf-modal .mhd,.op-pdf-modal .mft{padding:13px 16px;margin:0}.op-pdf-modal .mft{display:flex;justify-content:flex-end;align-items:center;gap:8px}
.op-watermark{color:var(--op-danger);font-weight:800;letter-spacing:.04em}.op-export-note{font-size:11px;color:var(--op-muted);max-width:520px}.op-hash{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:bottom}
@media(max-width:1080px){.op-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op-head{grid-template-columns:1fr}.op-head-actions{justify-content:flex-start;max-width:none}.op-config-grid{grid-template-columns:1fr 1fr}.op-check{grid-template-columns:auto minmax(100px,.5fr) minmax(0,1.5fr)}}
@media(max-width:700px){.op-report{width:100%;max-width:100%;overflow:hidden}.op-head{padding:15px}.op-title{font-size:20px;overflow-wrap:anywhere}.op-head-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.op-control{grid-column:span 1}.op-control select,.op-control input{max-width:none;width:100%}.op-btn{width:100%;white-space:normal}.op-status-row{grid-template-columns:1fr}.op-status-copy{align-items:flex-start;flex-wrap:wrap}.op-grid,.op-config-grid,.op-declaration-form,.op-declaration-special{grid-template-columns:1fr}.op-metric-value{font-size:18px}.op-check{grid-template-columns:auto 1fr}.op-check-message{grid-column:2}.op-check .op-tag:last-child{grid-column:2;justify-self:start}.op-drill summary{grid-template-columns:minmax(0,1fr);gap:4px}.op-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.op-table{min-width:680px}.op-inline{display:grid;grid-template-columns:1fr}.op-config-actions{display:grid;grid-template-columns:1fr}.op-hash{max-width:190px}.op-pdf-modal{width:100vw;height:100dvh;max-height:none!important;border-radius:0!important}.op-pdf-modal .mft{display:grid;grid-template-columns:1fr}.op-pdf-modal .mft .op-export-note{display:none}}
@media print{.op-head-actions,.op-tabs,.op-config,.reports-toolbar{display:none!important}.op-report{font-size:10pt}.op-table-wrap{overflow:visible;border:0}.op-table{min-width:0}.op-table th{position:static}.op-section{break-inside:avoid}.op-watermark{position:fixed;inset:45% auto auto 25%;font-size:48pt;opacity:.08;transform:rotate(-24deg);z-index:99}}
