:root{--bg:#f7f7f8;--surface:#fff;--ink:#19243a;--muted:#68758b;--line:#e5eaf2;--primary:#cf252b;--primary-light:#fff0f0;--green:#168a70;--navy:#242426;--amber:#a06814;--radius:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button,a,select,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #eb7d80;outline-offset:3px}button{color:inherit}svg{display:block}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip{position:fixed;top:-70px;left:20px;z-index:99;background:#fff;padding:16px}.skip:focus{top:10px}.shell{display:flex;min-height:100vh}.sidebar{width:234px;position:fixed;inset:0 auto 0 0;background:var(--navy);color:#fff;display:flex;flex-direction:column;padding:32px 18px 20px}.brand{display:flex;align-items:center;gap:11px;padding:0 11px;font-size:16px;font-weight:740;letter-spacing:1.4px}.brandmark{display:grid;place-items:center;background:var(--primary);height:38px;width:38px;border-radius:11px;letter-spacing:-2px;font-size:29px;font-weight:800}.brand small{display:block;margin-top:6px;font-size:12px;font-weight:450;letter-spacing:0;color:#a0aec4}.nav-caption{font-size:11px;letter-spacing:1.8px;color:#7d8ca7;margin:47px 14px 14px;font-weight:600}nav{display:grid;gap:7px}.nav-item{border:0;background:none;color:#aab6cb;display:flex;align-items:center;text-align:left;gap:13px;padding:14px;border-radius:8px;font-size:14px;font-weight:550;width:100%}.nav-item:hover{background:#1c2b44;color:#fff}.nav-item.active{color:#fff;background:#cf252b}.nav-item.active .icon{stroke:#fff}.sidebar-bottom{margin-top:auto;padding:22px 10px 0;border-top:1px solid #2c374b;display:flex;gap:11px;align-items:center;font-size:13px;color:#e7ecf5}.sidebar-bottom small{display:block;color:#8291ab;font-size:12px;margin-top:5px}.workspace-symbol{border:1px solid #536079;border-radius:8px;padding:10px;font-weight:700}.workspace{width:calc(100% - 234px);margin-left:234px;min-width:0}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.crumb{font-size:14px;color:var(--muted);display:flex;gap:13px;align-items:center}.crumb span{color:#c6cedb}.crumb strong{font-weight:500;color:var(--ink)}.topbar-right{display:flex;gap:20px;align-items:center}.review-tag{font-size:12px;background:var(--primary-light);color:#6055d8;padding:6px 10px;border-radius:5px;font-weight:600}.avatar{font-size:12px;font-weight:700;border:1px solid #dfe4ed;background:#f7f8fc;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}main{padding:34px 38px 24px;max-width:1640px;margin:auto}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:27px}.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:700;color:var(--primary);margin-bottom:9px}h1{margin:0;font-size:29px;letter-spacing:-.9px;line-height:1.3;font-weight:680}.subtitle{color:var(--muted);font-size:14px;line-height:1.6;margin:8px 0 0}.head-actions{display:flex;align-items:center;gap:10px}.btn{border:1px solid #dce2ed;background:#fff;border-radius:8px;padding:10px 14px;display:inline-flex;gap:8px;align-items:center;font-weight:550;font-size:14px;white-space:nowrap}.btn:hover{background:#f3f4fd;border-color:#c7c3ff}.btn.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn.primary:hover{background:#5148e8}.btn .icon{height:17px;width:17px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px}.toolbar-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}select,input{border:1px solid #dce2ed;background:#fff;color:var(--ink);border-radius:8px;padding:10px 12px;min-height:42px;font-size:14px}select{max-width:100%;padding-right:32px}label{font-size:14px;color:var(--muted)}.source-label{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:7px}.source-label .icon{width:15px;height:15px}.notice{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.65;background:#fff8eb;border:1px solid #f2e7cd;color:#906720;padding:11px 15px;border-radius:8px;margin-bottom:22px}.notice .icon{margin-top:2px;width:17px;height:17px}.notice strong{font-weight:650}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);padding:21px 22px;border-radius:var(--radius);box-shadow:0 2px 3px #18213a02;position:relative}.stat-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:14px;font-weight:500}.stat-icon{padding:8px;background:#f1efff;border-radius:9px;color:#7064e5}.stat-icon.green{background:#eaf7f2;color:var(--green)}.stat-icon.gray{background:#eef2f7;color:#7d8fa5}.stat-value{font-size:34px;line-height:1.2;font-weight:690;letter-spacing:-1px;margin:12px 0 9px;font-variant-numeric:tabular-nums}.stat-foot{font-size:12px;color:var(--muted);line-height:1.6}.stat-foot strong{font-weight:550;color:#52617b}.stat.accent{background:var(--primary);color:white;border-color:var(--primary)}.stat.accent .stat-top,.stat.accent .stat-foot{color:#e6e2ff}.stat.accent .stat-icon{color:white;background:#ffffff1e}.stat.accent .stat-foot strong{color:#fff}.grid-two{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,1fr);gap:22px;margin-bottom:24px}.panel{border:1px solid var(--line);background:#fff;border-radius:var(--radius);overflow:hidden}.panel-head{padding:22px 23px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:18px}h2{font-size:16px;font-weight:650;margin:0;letter-spacing:-.15px}h3{font-size:16px;margin:0 0 10px}.panel-sub{font-size:12px;color:var(--muted);margin:7px 0 0;line-height:1.6}.legend{display:flex;gap:13px;font-size:12px;color:var(--muted);align-items:center;white-space:nowrap}.legend span{display:flex;align-items:center;gap:6px}.swatch{height:7px;width:7px;border-radius:2px;background:var(--primary)}.swatch.pale{background:#e4e8f1}.bars{padding:24px}.bar-row{display:grid;grid-template-columns:122px 1fr 38px;gap:13px;align-items:center;margin-bottom:17px}.bar-row:last-child{margin:0}.bar-name{border:0;background:none;text-align:left;padding:0;font-size:12px;font-weight:500;white-space:nowrap;color:#506078}.bar-name:hover{color:var(--primary)}.bar-track{height:10px;border-radius:3px;background:#e9edf5;display:flex;overflow:hidden}.bar-used{height:100%;background:var(--primary);border-radius:3px 0 0 3px}.bar-count{text-align:right;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.mix{display:flex;justify-content:center;align-items:center;padding:14px 18px 3px}.donut{width:198px;height:198px;position:relative}.donut svg{width:100%;height:100%;transform:rotate(-90deg)}.donut circle{fill:none;stroke-width:13}.donut-base{stroke:#eef0f6}.donut-fill{stroke:var(--primary);stroke-linecap:round}.donut-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.donut-center strong{font-size:32px;letter-spacing:-1px}.donut-center span{font-size:12px;color:var(--muted);margin-top:5px}.mix-details{display:grid;grid-template-columns:1fr 1fr;margin:4px 25px 23px;text-align:center}.mix-details>div+div{border-left:1px solid var(--line)}.mix-details small{font-size:12px;color:var(--muted);display:block;margin-bottom:7px}.mix-details strong{font-size:14px;font-variant-numeric:tabular-nums}.table-panel .panel-head{padding-bottom:21px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px;white-space:nowrap}th{background:#f8f9fc;color:#8390a5;font-size:11px;letter-spacing:.65px;font-weight:650;text-transform:uppercase;padding:13px 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:17px 22px;border-bottom:1px solid #eef1f6;font-size:13px;line-height:1.55}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafaff}.numeric{text-align:right;font-variant-numeric:tabular-nums}.company-cell{display:flex;align-items:center;gap:11px}.company-logo{width:33px;height:33px;display:grid;place-items:center;background:#eef0fd;color:#655dbe;border-radius:9px;font-size:11px;font-weight:700}.company-name{font-size:13px;font-weight:600;color:#384760}.sub-cell{font-size:11px;color:#8a96a9;margin-top:3px}.pill{display:inline-block;padding:4px 8px;border-radius:5px;font-size:11px;font-weight:600;line-height:1.3;background:#eef1f6;color:#708199}.pill.used{background:#e8f5ef;color:#188268}.pill.unused{background:#f0edff;color:#7864d4}.pill.warn{background:#fff3d9;color:#9a7027}.pill.danger{background:#fbece9;color:#b45444}.rate{width:98px}.rate-top{font-size:12px;font-weight:600;margin-bottom:5px}.mini-track{width:78px;height:4px;background:#edf0f7;border-radius:3px}.mini-track i{height:100%;display:block;background:var(--primary);border-radius:3px}.link-btn{background:none;border:0;color:var(--primary);font-weight:600;font-size:13px;padding:0}.table-note{padding:15px 22px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:14px}.mono{font-family:"SFMono-Regular",Consolas,monospace;font-size:13px}.empty{text-align:center;padding:55px 20px;color:var(--muted);font-size:14px}.empty h3{color:var(--ink)}.search{min-width:250px}.pagination{display:flex;align-items:center;gap:10px}.tabs-inline{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:22px}.tabs-inline button{border:0;background:none;color:var(--muted);font-size:14px;padding:12px 17px;border-bottom:2px solid transparent}.tabs-inline button.active{color:var(--primary);border-color:var(--primary)}.detail-card{padding:24px}.summary-list{display:grid;gap:16px;margin-top:20px}.summary-line{display:flex;justify-content:space-between;align-items:center;font-size:14px;gap:15px}.summary-line span{color:var(--muted)}.metric-note{font-size:13px;color:var(--muted);line-height:1.8}.quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.quality-card{padding:23px;border:1px solid var(--line);border-radius:var(--radius);background:white}.quality-card .pill{margin-bottom:16px}.quality-card p{font-size:14px;line-height:1.7;color:var(--muted);margin:10px 0}.code-demo{display:flex;gap:9px;justify-content:center;margin:32px 0 24px;flex-wrap:wrap}.code-part{border:1px solid #d9d5ff;border-radius:10px;padding:17px 20px;background:#f1efff;font-family:monospace;font-size:26px;font-weight:600;color:#6758d6;text-align:center}.code-part small{display:block;font-family:inherit;font-size:11px;letter-spacing:0;font-weight:400;color:#746d95;margin-top:9px}.code-part.middle{background:#f5f7fa;border-color:#e3e8f1;color:#768397}.decode-input{display:flex;gap:10px;margin:18px 0}.decode-input input{flex:1;min-width:0;font-family:monospace;text-transform:uppercase}.decode-result{padding:16px;border-radius:9px;background:#f5f6fc;font-size:14px;line-height:1.8}.suffix-table td,.suffix-table th{padding:14px 22px}.small-title{color:var(--muted);font-size:13px;margin-bottom:14px}.checkmark{color:var(--green);font-weight:650}.help-banner{border:1px dashed #d4dbe7;border-radius:10px;padding:17px 21px;font-size:13px;color:var(--muted);line-height:1.8;margin-top:24px}.source-item{padding:19px 22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.source-item small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.source-item strong{font-size:14px}.view-label{color:var(--muted);font-size:13px;line-height:1.7}footer{max-width:1640px;margin:auto;padding:15px 38px 28px;display:flex;justify-content:space-between;color:#98a3b5;font-size:11px}dialog{width:min(600px,calc(100vw - 32px));border:1px solid var(--line);border-radius:16px;padding:30px;color:var(--ink);box-shadow:0 20px 90px #0c162833}dialog::backdrop{background:#0e1b3560;backdrop-filter:blur(3px)}.close{position:absolute;right:17px;top:12px;background:none;border:0;font-size:28px;color:#8c95a6}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:25px}.detail-grid small{display:block;color:var(--muted);font-size:12px;margin-bottom:7px}.detail-grid strong{font-size:14px;overflow-wrap:anywhere}.span-two{grid-column:1/-1}#toast{position:fixed;right:25px;bottom:25px;z-index:30;background:#18243d;color:white;font-size:14px;padding:13px 19px;border-radius:9px;box-shadow:0 8px 30px #17213b22;transform:translateY(120px);transition:transform .2s}#toast.visible{transform:translateY(0)}
@media(min-width:1550px){main{padding-top:40px}.stat{padding:25px}.bars{padding:28px}.bar-row{margin-bottom:20px}}
@media(max-width:1200px){.sidebar{width:205px;padding-left:12px;padding-right:12px}.workspace{margin-left:205px;width:calc(100% - 205px)}main{padding:27px 24px}.topbar{padding:0 24px}.grid-two{grid-template-columns:1.4fr 1fr}.stats{gap:12px}.stat{padding:17px}.stat-value{font-size:30px}.stat-top{font-size:13px}.stat-icon{padding:5px}.head-actions .btn{padding:10px}.bar-row{grid-template-columns:110px 1fr 28px;gap:8px}.bars{padding:20px}.legend{font-size:11px}.panel-head{padding:20px 20px 0}}
@media(max-width:950px){.sidebar{width:76px;align-items:center;padding:22px 9px}.brand{padding:0}.brand>div,.nav-caption,.nav-item span,.sidebar-bottom{display:none}.nav-item{justify-content:center;padding:14px}.sidebar nav{margin-top:35px;width:100%}.workspace{margin-left:76px;width:calc(100% - 76px)}.brandmark{width:38px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start}.head-actions{margin-top:6px}.head-actions .btn{font-size:12px}.bar-row{grid-template-columns:98px 1fr 28px}.panel-head{flex-wrap:wrap}.bar-name{font-size:11px}h1{font-size:27px}}
@media(max-width:680px){.sidebar{position:static;width:100%;padding:16px 16px 0;display:block}.brand{justify-content:flex-start}.brand>div{display:block}.brand small{font-size:11px;margin-top:3px}.brandmark{height:30px;width:30px;font-size:24px}.sidebar nav{margin:16px -8px 0;display:flex;justify-content:space-around;width:auto;gap:2px}.nav-item{width:auto;flex:1;border-radius:8px 8px 0 0;padding:13px 4px}.nav-item .icon{width:18px;height:18px}.shell{display:block}.workspace{width:100%;margin:0}.topbar{height:55px;padding:0 18px}.topbar-right{gap:12px}.avatar{display:none}.crumb{font-size:12px;gap:8px}main{padding:25px 17px 17px}.page-head{display:block;margin-bottom:21px}.head-actions{margin-top:17px}.head-actions .btn{font-size:13px}.eyebrow{font-size:10px}h1{font-size:26px}.subtitle{font-size:13px}.toolbar{align-items:flex-start;flex-direction:column;gap:10px}.toolbar-controls{width:100%}.toolbar-controls select{max-width:100%;flex:1}.source-label{font-size:12px}.stats{gap:10px}.stat{padding:15px}.stat-top{font-size:12px}.stat-icon{padding:4px}.stat-icon .icon{width:15px;height:15px}.stat-value{font-size:28px;margin:11px 0 7px}.stat-foot{font-size:11px}.grid-two{grid-template-columns:1fr;gap:17px}.panel-head{padding:20px}.bars{padding:4px 20px 22px}.bar-row{grid-template-columns:120px 1fr 32px}.bar-name{font-size:12px}.mix{padding-top:0}.mix-details{margin-bottom:22px}.quality-grid{grid-template-columns:1fr}.search{min-width:0;width:100%}.table-note{flex-wrap:wrap}td{padding:14px 17px}th{padding:12px 17px}.notice{font-size:12px}.table-panel .panel-head{gap:12px}.code-part{padding:14px;font-size:22px}.detail-grid{gap:18px}.source-item{flex-direction:column;gap:9px}footer{padding:10px 18px 20px;gap:16px;font-size:10px}.btn{font-size:13px}.view-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.stat-value.money-value{font-size:clamp(20px,2vw,28px);letter-spacing:-.7px;overflow-wrap:anywhere}
td{font-size:14px}.company-name{font-size:14px}.sub-cell{font-size:12px}.pill{font-size:12px}
@media(max-width:680px){.stat-value.money-value{font-size:20px}.summary-line{flex-wrap:wrap}}

.upload-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}.upload-actions article{padding:18px;border:1px solid #e4e7ec;border-radius:12px}.upload-actions p{line-height:1.6;min-height:72px}
