*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f8fafb;--surface:#fff;--surface2:#f2f4f5;--border:#e1e3e4;--border2:#c1c8c4;--text:#191c1d;--text2:#414845;--text3:#717975;--fija:#793010;--fija-bg:rgba(255,219,206,.5);--cer:#203527;--cer-bg:rgba(208,233,212,.5);--accent:#4d6453;--warn:#9b4150;--danger:#ba1a1a;--ok:#203527;--r:8px;--sidebar-w:220px}body{background:var(--bg);color:var(--text);font-family:Open Sans,-apple-system,sans-serif;font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.layout-root,.sidebar{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);position:fixed;left:0;top:0;background:#f1f3f4;border-right:1px solid var(--border);flex-direction:column;padding:1.5rem 1rem;gap:.5rem;z-index:50}.sidebar-brand{padding:.5rem .75rem 1.25rem}.sidebar-brand h2{font-family:Inter,sans-serif;font-size:.6rem;letter-spacing:.15em;color:var(--text3);margin-bottom:.2rem}.sidebar-brand h2,.sidebar-brand p{font-weight:700;text-transform:uppercase}.sidebar-brand p{font-size:.58rem;letter-spacing:.18em;color:var(--cer)}.sidebar-nav{display:flex;flex-direction:column;gap:.2rem;flex:1 1}.nav-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;border-radius:8px;font-family:Inter,sans-serif;font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text2);text-decoration:none;transition:background .12s,color .12s;cursor:pointer;border:none;background:transparent;width:100%;text-align:left}.nav-item:hover{background:rgba(0,0,0,.05);color:var(--text)}.nav-item.active{background:var(--surface);color:var(--cer);font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.08)}.nav-icon{font-size:1rem;line-height:1}.main{margin-left:var(--sidebar-w);flex:1 1;display:flex;flex-direction:column;min-height:100vh}.header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:hsla(0,0%,100%,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);padding:.85rem 2rem;justify-content:space-between}.brand,.header{display:flex;align-items:center}.brand{gap:1.5rem}.brand h1{font-family:Inter,sans-serif;font-size:.9rem;font-weight:800;letter-spacing:-.01em;text-transform:uppercase;color:var(--text)}.brand small{font-size:.68rem;color:var(--text3);font-weight:400}.dot{width:7px;height:7px;border-radius:50%;background:var(--cer);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.app{padding:1.75rem 2rem 4rem;max-width:1400px;width:100%}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}.kpi-card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--r);padding:1rem 1.25rem}.kpi-card.kpi-cer{border-left-color:var(--cer)}.kpi-card.kpi-warn{border-left-color:var(--warn)}.kpi-card.kpi-fija{border-left-color:var(--fija)}.kpi-label{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);margin-bottom:.4rem}.kpi-value{font-family:Inter,sans-serif;font-size:1.6rem;font-weight:800;letter-spacing:-.02em;color:var(--text);line-height:1}.kpi-sub{font-size:.68rem;color:var(--text3);margin-top:.25rem}.cer-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:.55rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);margin-bottom:1.25rem;font-size:.75rem;color:var(--text2)}.cer-bar strong{color:var(--text)}.cer-bar .sep{color:var(--border2)}.cer-inputs{gap:.5rem;margin-left:auto}.cer-inputs,.ctrl-bar{display:flex;align-items:center;flex-wrap:wrap}.ctrl-bar{gap:.75rem;margin-bottom:1.25rem}.ctrl-group{display:flex;align-items:center;gap:.4rem}.ctrl-group label{font-size:.7rem;font-weight:600;color:var(--text2);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.ctrl-group input[type=date],.ctrl-group input[type=number]{background:var(--surface);border:1px solid var(--border2);color:var(--text);border-radius:6px;padding:.3rem .6rem;font-size:.78rem;font-family:inherit;outline:none}.ctrl-group input:focus{border-color:var(--accent)}.badge-live{color:var(--cer);font-weight:600}.badge-error,.badge-live{font-size:.72rem;display:flex;align-items:center;gap:.3rem}.badge-error{color:var(--danger)}.badge-wait{font-size:.72rem;color:var(--text3);display:flex;align-items:center;gap:.3rem}.btn{background:var(--surface);border:1px solid var(--border2);color:var(--text2);border-radius:6px;padding:.3rem .7rem;font-size:.72rem;font-family:Inter,sans-serif;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.btn:hover{border-color:var(--accent);color:var(--text);background:var(--surface2)}.btn:disabled{opacity:.4;cursor:default}.btn-warn{color:var(--warn)!important;border-color:var(--warn)!important}.main-layout{display:grid;grid-template-columns:1fr 320px;grid-gap:1.25rem;gap:1.25rem;align-items:start}@media (max-width:1100px){.main-layout{grid-template-columns:1fr}}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:.78rem}thead th{background:var(--surface2);color:var(--text3);font-family:Inter,sans-serif;font-weight:700;font-size:.62rem;text-transform:uppercase;letter-spacing:.06em;padding:.55rem .75rem;text-align:right;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:1}thead th:first-child,thead th:nth-child(2){text-align:left}thead .th-check{text-align:center}tbody tr{transition:background .08s}tbody tr:hover{background:var(--surface2)}.row-fija td{border-bottom:1px dashed var(--border)}.row-cer td{border-bottom:1px solid var(--border)}td{padding:.5rem .75rem;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text)}td:first-child,td:nth-child(2){text-align:left}.ticker{font-family:Inter,sans-serif;font-size:.8rem;font-weight:700}.badge-f{background:var(--fija-bg);color:var(--fija)}.badge-c,.badge-f{display:inline-block;padding:.14rem .5rem;border-radius:20px;font-size:.62rem;font-weight:700;letter-spacing:.04em}.badge-c{background:var(--cer-bg);color:var(--cer)}.price-inp{background:transparent;border:1px solid transparent;color:var(--text);font-size:.78rem;font-family:inherit;text-align:right;width:80px;border-radius:4px;padding:.12rem .3rem;outline:none;transition:border-color .12s,background .12s;-webkit-appearance:none;-moz-appearance:textfield;appearance:none}.price-inp::-webkit-inner-spin-button,.price-inp::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.price-inp:hover{border-color:var(--border2);background:var(--surface2)}.price-inp:focus{border-color:var(--accent);background:var(--surface2)}.price-inp.mod{border-color:var(--warn)!important;color:var(--warn)}.check-ok{color:var(--ok)}.check-err,.check-ok{text-align:center;font-weight:700}.check-err{color:var(--danger)}.no-data{color:var(--text3)}.right-panel{display:flex;flex-direction:column;gap:1rem}.panel-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:1rem 1.1rem}.panel-card h2{font-family:Inter,sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);margin-bottom:.85rem;display:flex;align-items:center;gap:.5rem}.panel-card h2:after{content:"";flex:1 1;height:1px;background:var(--border)}.chart-wrap{height:200px;position:relative}.ipc-table{width:100%;border-collapse:collapse;font-size:.78rem}.ipc-table th{color:var(--text3);font-family:Inter,sans-serif;font-weight:700;font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;padding:.3rem .4rem;border-bottom:1px solid var(--border);text-align:right}.ipc-table th:first-child{text-align:left}.ipc-table td{padding:.38rem .4rem;text-align:right;border-bottom:1px solid var(--border);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ipc-table td:first-child{text-align:left;color:var(--text2);font-weight:600}.footer,.ipc-extrap{color:var(--text3)}.footer{margin-top:2rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.65rem;display:flex;flex-wrap:wrap;gap:1rem}