*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;background:#0b1220;overflow:hidden}#root{height:100%}input,select,textarea,button{font-family:Segoe UI,Tahoma,Arial,sans-serif}::-webkit-scrollbar{display:none}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}html[data-theme=light] input[type=date]::-webkit-calendar-picker-indicator{filter:none}html[data-theme=light] ::selection{background:#0b7a8855}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}:root{--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--fs-xs:11px;--fs-sm:12.5px;--fs-md:14px;--fs-lg:17px;--fs-xl:22px;--sh-1:0 1px 2px rgba(0,0,0,.18);--sh-2:0 4px 14px rgba(0,0,0,.22);--tap:44px;--c-bg:#0B1220;--c-surface:#111B2E;--c-card:#142038;--c-border:#243550;--c-accent:#2BA8B8;--c-teal:#22B8A8;--c-gold:#E8A33D;--c-text:#EAF1FA;--c-muted:#8196B3;--c-danger:#E5575F;--c-success:#2FB67C}html[data-theme=light]{--sh-1:0 1px 2px rgba(15,27,45,.08);--sh-2:0 4px 14px rgba(15,27,45,.1);--c-bg:#F4F7FB;--c-surface:#FFFFFF;--c-card:#FFFFFF;--c-border:#D5DFEB;--c-accent:#0B7A88;--c-teal:#0E8F82;--c-gold:#A8650A;--c-text:#0E1A2B;--c-muted:#51657F;--c-danger:#C93A44;--c-success:#13845A}:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px;border-radius:4px}button,[role=tab],[role=button],a,select,input,textarea{touch-action:manipulation}.ds-card{background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);box-shadow:var(--sh-1)}.ds-card--flat{box-shadow:none}.ds-h{font-size:var(--fs-md);font-weight:700;color:var(--c-text);margin:0 0 var(--sp-2)}.ds-sub{font-size:var(--fs-xs);color:var(--c-muted)}.ds-btn{min-height:var(--tap);padding:0 var(--sp-4);border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font-size:var(--fs-sm);font-weight:600;cursor:pointer}.ds-btn--primary{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.ds-btn--danger{background:transparent;border-color:var(--c-danger);color:var(--c-danger)}.ds-btn[disabled]{opacity:.55;cursor:not-allowed}.ds-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:700;border:1px solid currentColor}.ds-badge--ok{color:var(--c-success)}.ds-badge--warn{color:var(--c-gold)}.ds-badge--bad{color:var(--c-danger)}.ds-badge--info{color:var(--c-accent)}.ds-badge--mute{color:var(--c-muted)}.ds-alert{display:flex;gap:var(--sp-2);align-items:flex-start;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-sm);border:1px solid currentColor;background:transparent}.ds-alert--danger{color:var(--c-danger)}.ds-alert--warn{color:var(--c-gold)}.ds-alert--info{color:var(--c-accent)}.ds-alert--ok{color:var(--c-success)}.ds-field{width:100%;min-height:var(--tap);padding:0 var(--sp-3);border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font-size:var(--fs-md)}.ds-field[aria-invalid=true]{border-color:var(--c-danger)}.ds-error{color:var(--c-danger);font-size:var(--fs-xs);margin-top:2px}.ds-skel{background:linear-gradient(90deg,var(--c-surface),var(--c-border),var(--c-surface));background-size:200% 100%;border-radius:var(--r-sm);min-height:14px;animation:ds-skel 1.4s linear infinite}@keyframes ds-skel{to{background-position:-200% 0}}.ds-empty{text-align:center;color:var(--c-muted);padding:var(--sp-6) var(--sp-4);font-size:var(--fs-sm)}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.ds-tabs{display:flex;gap:2px;overflow-x:auto;background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--r-md);padding:4px;position:sticky;top:0;z-index:5}.ds-tab{flex:0 0 auto;min-height:var(--tap);min-width:var(--tap);padding:0 var(--sp-3);border:none;background:transparent;color:var(--c-muted);font:inherit;font-size:var(--fs-sm);font-weight:600;border-radius:var(--r-sm);cursor:pointer;white-space:nowrap}.ds-tab[aria-selected=true]{background:var(--c-accent);color:#fff}.pf-shell{max-width:1280px;margin:0 auto;padding:0 var(--sp-4) 96px}.pf-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}.pf-nav{display:block}.pf-side{display:none}@media(min-width:768px){.pf-grid{grid-template-columns:minmax(0,1fr) 280px}.pf-side{display:block}.pf-grid--wide-first .pf-main{grid-column:1}}@media(min-width:1100px){.pf-grid{grid-template-columns:200px minmax(0,1fr) 300px}.pf-nav .ds-tabs{flex-direction:column;overflow:visible;position:sticky;top:var(--sp-4)}.pf-nav .ds-tab{text-align:start;width:100%}}.cs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}@media(min-width:600px){.cs-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.cs-cell{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);min-width:0}.cs-label{font-size:var(--fs-xs);color:var(--c-muted)}.cs-val{font-size:var(--fs-md);font-weight:700;color:var(--c-text);overflow-wrap:anywhere}.cs-missing{color:var(--c-muted);font-weight:500;font-size:var(--fs-sm)}.cs-eyes{display:flex;gap:var(--sp-3);flex-wrap:wrap}.ds-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050a1499;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.ds-modal{background:var(--c-card);color:var(--c-text);border:1px solid var(--c-border);width:100%;max-width:560px;max-height:92vh;overflow:auto;border-radius:var(--r-lg) var(--r-lg) 0 0;padding:var(--sp-4)}@media(min-width:768px){.ds-modal-backdrop{align-items:center}.ds-modal{border-radius:var(--r-lg)}}.cmp-charts{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-3)}@media(min-width:900px){.cmp-charts{grid-template-columns:repeat(2,minmax(0,1fr))}}.cmp-table{width:100%;border-collapse:collapse;font-size:var(--fs-xs)}.cmp-table th,.cmp-table td{padding:6px 8px;border-bottom:1px solid var(--c-border);white-space:nowrap;text-align:start}.cmp-scroll{overflow-x:auto}
