:root{--sidebar-bg: #1c2333;--sidebar-bg-hover: #273049;--sidebar-fg: #c6cbd9;--sidebar-fg-active: #ffffff;--accent: #8e2f3c;--accent-dark: #74242f;--content-bg: #f4f5f7;--card-bg: #ffffff;--border: #e1e4ea;--text: #23262e;--text-muted: #6b7280;--green: #1e7f43;--green-bg: #e2f4e8;--amber: #92610a;--amber-bg: #fdf0d5;--red: #a32424;--red-bg: #fbe3e3;--gray: #5b616b;--gray-bg: #e8eaee}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;color:var(--text);background:var(--content-bg)}.app{display:flex;min-height:100vh}.sidebar{width:230px;flex-shrink:0;background:var(--sidebar-bg);color:var(--sidebar-fg);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{padding:20px 18px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-title{color:#fff;font-size:17px;font-weight:700;letter-spacing:.2px}.brand-sub{margin-top:4px;font-size:11.5px;color:var(--sidebar-fg);opacity:.85}.nav{display:flex;flex-direction:column;padding:12px 8px;gap:2px}.nav-item{display:block;width:100%;text-align:left;padding:10px 12px;background:none;border:none;border-radius:6px;color:var(--sidebar-fg);font-size:14px;cursor:pointer}.nav-item:hover{background:var(--sidebar-bg-hover);color:var(--sidebar-fg-active)}.nav-item.active{background:var(--accent);color:var(--sidebar-fg-active);font-weight:600}.sidebar-foot{margin-top:auto;padding:14px 18px;font-size:11px;opacity:.5;text-transform:uppercase;letter-spacing:1px}.content{flex:1;min-width:0}.content-header{background:var(--card-bg);border-bottom:1px solid var(--border);padding:14px 24px}.content-header h1{margin:0;font-size:18px;font-weight:650}.content-body{padding:20px 24px 40px;max-width:1200px}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:16px 18px;margin-bottom:16px}.card h2{margin:0 0 10px;font-size:15px;font-weight:650}.stack>*+*{margin-top:4px}.stack-sm>*+*{margin-top:8px}.two-col{display:grid;grid-template-columns:360px 1fr;gap:16px;align-items:start}@media (max-width: 900px){.two-col{grid-template-columns:1fr}}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 12px}.table-scroll{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:2px solid var(--border);padding:8px 10px;white-space:nowrap}.table td{border-bottom:1px solid var(--border);padding:8px 10px;vertical-align:top}.table tbody tr:hover{background:#fafbfc}.chip{display:inline-block;min-width:42px;text-align:center;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}.chip-green{color:var(--green);background:var(--green-bg)}.chip-amber{color:var(--amber);background:var(--amber-bg)}.chip-red{color:var(--red);background:var(--red-bg)}.chip-gray{color:var(--gray);background:var(--gray-bg)}.dir{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.dir-outbound{color:var(--accent)}.dir-inbound{color:#22598c}.dir-unknown{color:var(--text-muted)}.field{display:block;margin-bottom:12px}.field>span{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:4px}.field-inline{display:inline-flex;align-items:center;gap:6px}.field-inline>span{font-size:12px;font-weight:600;color:var(--text-muted)}input[type=text],input[type=number],select{padding:7px 9px;border:1px solid var(--border);border-radius:6px;font-size:14px;font-family:inherit;background:#fff;color:var(--text)}.field input,.field select{width:100%}input:focus,select:focus{outline:2px solid rgba(142,47,60,.25);border-color:var(--accent)}.toggle-row{display:flex;gap:16px}.radio,.checkbox{display:inline-flex;align-items:center;gap:6px;font-size:14px;cursor:pointer}.checkbox{margin:4px 0 14px}.params-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.btn{padding:8px 14px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-size:13.5px;font-weight:600;cursor:pointer}.btn:hover{background:#f2f3f5}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark)}.btn:disabled{opacity:.55;cursor:not-allowed}.alert{padding:9px 12px;border-radius:6px;font-size:13.5px;margin:8px 0}.alert-error{background:var(--red-bg);color:var(--red)}.alert-ok{background:var(--green-bg);color:var(--green)}.banner{background:#eef2fb;border:1px solid #ccd8f0;color:#2c4a7c;border-radius:8px;padding:10px 14px;font-size:13.5px;margin-bottom:16px}.quote-total{display:flex;align-items:baseline;justify-content:space-between;background:var(--accent);color:#fff;border-radius:8px;padding:14px 18px;margin-bottom:14px}.quote-total-label{font-size:13px;text-transform:uppercase;letter-spacing:1px;opacity:.9}.quote-total-value{font-size:26px;font-weight:700}.kv-row{display:flex;justify-content:space-between;gap:16px;padding:7px 2px;border-bottom:1px solid var(--border)}.kv-row:last-child{border-bottom:none}.kv-key{color:var(--text-muted);font-size:13px}.kv-val{font-weight:600;text-align:right;word-break:break-word}.muted{color:var(--text-muted)}.small{font-size:12.5px}.center{text-align:center}.nowrap{white-space:nowrap}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.ok{color:var(--green);font-weight:600}.tip{cursor:help;color:#7a8699;font-size:.85em}.tip:hover{color:#2f6fed}.row-clickable{cursor:pointer}.row-clickable:hover td{background:#f4f7fb}.caret{width:1.2rem;color:#7a8699}.row-detail td{background:#f8fafc;border-top:none}.payload-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:.25rem 0 .5rem}.payload-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#7a8699;margin-bottom:.25rem}.payload-pre{background:#101828;color:#d7e3f4;border-radius:6px;padding:.6rem .75rem;font-size:.75rem;line-height:1.45;max-height:320px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0}.alert-warn{background:#fff7e6;border:1px solid #f0c36d;color:#7a5b12;border-radius:6px;padding:.6rem .9rem}.bullets{margin:.25rem 0 .25rem 1.1rem;padding:0}.bullets li{margin:.3rem 0}.sidebar-user{margin-top:auto;padding:10px 18px 0;font-size:12.5px;color:var(--sidebar-fg);opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user+.sidebar-bottom{margin-top:.5rem}.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;gap:2px;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.08)}form .checkbox{margin:.6rem 0 1.1rem;display:flex;align-items:center;gap:.45rem}.nav-icon{vertical-align:-2px;margin-right:4px}.table-rates th{text-transform:none}.compare-block{border-top:1px solid #e2e4e6;margin-top:.9rem;padding-top:.75rem}.compare-title{font-size:.8rem;font-weight:600;color:#55606e;margin-bottom:.5rem}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.card-head h2{margin:0}.form-section{border:1px solid #e8eaee;border-radius:8px;padding:.75rem .9rem .6rem;margin-bottom:.85rem;background:#fafbfc}.form-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#55606e;margin-bottom:.6rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem .9rem}@media (max-width: 720px){.field-grid{grid-template-columns:1fr}}.help-trigger{width:24px;height:24px;border-radius:50%;border:1px solid #cfd2d4;background:#fff;color:#55606e;font-weight:700;cursor:pointer;line-height:1}.help-trigger:hover{background:#f0f3f7;color:#2f6fed;border-color:#2f6fed}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;display:flex;align-items:center;justify-content:center;z-index:100;padding:2rem}.modal{background:#fff;border-radius:10px;max-width:640px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000040}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.2rem;border-bottom:1px solid #e8eaee}.modal-head h2{margin:0;font-size:1.05rem}.modal-close{border:none;background:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#55606e}.modal-close:hover{color:#101828}.modal-body{padding:1rem 1.2rem 1.4rem;overflow-y:auto}.help-doc h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:#55606e;margin:1.1rem 0 .4rem}.help-doc h3:first-child{margin-top:0}.help-doc p,.help-doc li{font-size:.85rem;line-height:1.55;color:#2b3440}.help-doc ol{margin:.3rem 0 .3rem 1.2rem;padding:0}.help-table{width:100%;border-collapse:collapse}.help-table td{border:1px solid #e8eaee;padding:.45rem .6rem;font-size:.82rem;vertical-align:top}.help-table td:first-child{width:34%;font-weight:600;color:#2b3440;background:#fafbfc}.field-disabled span{color:#a6adb8}.field-disabled input{background:#f4f5f6;color:#a6adb8}.checkbox-disabled{color:#a6adb8;cursor:not-allowed}.zone-badge{display:inline-block;background:#eef4ff;border:1px solid #b6ccf5;color:#2f5fb3;border-radius:6px;padding:.3rem .6rem;font-size:.8rem;font-weight:600;margin-bottom:.7rem}.spinner{width:2rem;height:2rem;margin:.5rem auto;border:3px solid rgba(0,0,0,.12);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.card.center{text-align:center}.btn-link{background:none;border:none;padding:0;font-size:.9rem;color:var(--accent)}.compare-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.compare-cell{border:1px solid var(--border, #ddd);border-radius:6px;padding:.6rem .75rem}.compare-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#666;margin-bottom:.3rem}.compare-method{font-size:.85rem;margin-bottom:.2rem}.compare-price{font-size:1.25rem;font-weight:600}.delta-over{color:#c62828;font-weight:600}.kind-tag{font-size:.7rem;font-weight:600;letter-spacing:.04em;color:#8a6d1a}.route-badge{display:inline-block;padding:.15rem .55rem;border-radius:4px;font-size:.75rem;font-weight:700;letter-spacing:.05em;color:#fff}.route-ws{background:var(--accent)}.route-sh{background:#33691e}.kind-tag.nonquote{color:#c62828}.help-q{display:inline-block;width:1rem;height:1rem;line-height:1rem;text-align:center;border-radius:50%;background:#e0e0e0;color:#555;font-size:.7rem;font-weight:700;cursor:help}
