:root{--navy:#1435a0;--navy-dark:#0d2670;--navy-mid:#1c3faa;--navy-bg:#eef2ff;--bg:#f4f5f7;--text:#1a1a2e;--muted:#6b7280;--border:#e2e4ea;--card:#fff;--focus:#1435a0}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Montserrat,sans-serif;color:var(--text)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c8c4c0;border-radius:99px}input[type=number]::-webkit-inner-spin-button{opacity:.35}input,select,textarea{font-family:inherit;color:var(--text)}button{font-family:inherit}.mono{font-family:Montserrat,sans-serif;font-variant-numeric:tabular-nums;font-feature-settings:"tnum","tnum";letter-spacing:-.01em}.inp{width:100%;padding:9px 12px;font-size:13px;border:1.5px solid var(--border);border-radius:8px;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s;color:var(--text);min-width:0;box-sizing:border-box}.inp:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,53,160,.1);background:#fff}.pfx{display:flex;align-items:center;border:1.5px solid var(--border);border-radius:8px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s;min-width:0;max-width:100%;box-sizing:border-box}.pfx:focus-within{border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,53,160,.1)}.pfx input,.pfx select{flex:1 1;padding:9px 12px;font-size:13px;background:transparent;border:none;outline:none;min-width:0;width:100%;color:var(--text)}.tag{padding:8px 10px;font-size:11px;color:var(--muted);background:#f5f6fa;white-space:nowrap;flex-shrink:0;font-family:Montserrat,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tag-l{border-right:1.5px solid var(--border)}.tag-r{border-left:1.5px solid var(--border)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px!important}.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px}.tab-active{background:#fff;color:var(--text)}.tab-inactive{background:transparent;color:#9ca3af}.tab-inactive:hover{background:hsla(0,0%,100%,.5);color:#6b7280}.badge-navy{background:var(--navy);color:#fff;border-radius:6px;padding:2px 8px;font-size:10px;font-weight:700}@media print{@page{size:A4;margin:12mm}body,html{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.no-print{display:none!important}.print-page{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important}.pdf-block,.pdf-block img{break-inside:avoid;page-break-inside:avoid}.print-page .pdf-block{margin-bottom:12px!important;box-shadow:none!important}}@media (max-width:1024px){.main-grid{grid-template-columns:1fr!important}}@media (max-width:768px){body{font-size:13px}.card{padding:12px!important;border-radius:12px!important}.header-bar{padding:10px 14px!important}.header-stats{display:none!important}.tab-strip{flex-wrap:wrap!important;gap:4px!important}}@media (max-width:640px){body,html{overflow-x:hidden}.header-stats{display:none!important}.actions-row{grid-template-columns:1fr 1fr!important}.metric-grid{grid-template-columns:repeat(2,1fr)!important;gap:6px!important}.city-grid{grid-template-columns:1fr!important}.price-test-grid{grid-template-columns:repeat(2,1fr)!important}.toolbar{flex-direction:column;gap:8px;align-items:stretch!important}.card{padding:10px!important}.stack-mobile{grid-template-columns:1fr!important}.inp{padding:8px 10px!important;font-size:13px!important}.tag{padding:6px 8px!important;font-size:10px!important}h1,h2{font-size:16px!important}button{font-size:12px}}@media (max-width:480px){.actions-row,.metric-grid,.price-test-grid{grid-template-columns:1fr!important}}@media (max-width:640px){.main-grid{padding:16px 12px!important;gap:14px!important}.main-grid>.card{padding:18px 16px!important}}