:root{--color-bg:oklch(16% .012 265);--color-surface:oklch(20% .014 265);--color-surface-2:oklch(24% .016 265);--color-border:oklch(30% .015 265);--color-border-strong:oklch(38% .02 265);--color-text:oklch(95% .005 265);--color-text-dim:oklch(72% .012 265);--color-text-faint:oklch(56% .012 265);--c-cph:oklch(70% .17 290);--c-cases:oklch(68% .16 285);--c-containers:oklch(66% .15 280);--c-volume:oklch(70% .15 275);--c-weight:oklch(70% .13 235);--c-carts:oklch(74% .15 165);--c-people:oklch(76% .16 150);--c-robots:oklch(78% .15 75);--c-plot:oklch(72% .16 285);--c-benchmark:oklch(78% .15 70);--chart-tick:#ffffff6b;--chart-grid:#ffffff12;--chart-tooltip-bg:#14161ef5;--chart-tooltip-border:#ffffff1f;--chart-tooltip-label:#ffffffb3;--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Roboto Mono", Menlo, monospace;--text-brand:clamp(2rem, 1.4rem + 1.9vw, 3rem);--text-kpi:clamp(1.55rem, 1.15rem + 1.1vw, 2.15rem);--text-kpi-row:clamp(1.35rem, 1.05rem + .9vw, 1.85rem);--text-section:1.35rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--radius:8px;--radius-lg:8px;--sidebar-w:232px;--duration-fast:.14s;--duration-normal:.26s;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--color-bg:oklch(97.5% .004 265);--color-surface:oklch(100% 0 0);--color-surface-2:oklch(96% .006 265);--color-border:oklch(89% .008 265);--color-border-strong:oklch(80% .012 265);--color-text:oklch(24% .02 265);--color-text-dim:oklch(42% .018 265);--color-text-faint:oklch(55% .015 265);--c-plot:oklch(50% .19 285);--c-cph:oklch(50% .19 285);--c-benchmark:oklch(60% .16 55);--chart-tick:#1c20348c;--chart-grid:#1c203414;--chart-tooltip-bg:#fffffffa;--chart-tooltip-border:#1c20342e;--chart-tooltip-label:#1c2034b8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;transition:background var(--duration-normal), color var(--duration-normal);margin:0;font-size:clamp(13px,12px + .18vw,15px)}#root{overflow-x:clip}img{max-width:100%}h1,h2,h3{margin:0;font-weight:600}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}.app{min-height:100%}.main{min-width:0;padding:var(--space-4) var(--space-5) var(--space-5);max-width:1720px;margin-inline:auto}.topbar{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.topbar-main{align-items:center;gap:var(--space-4);min-width:0;display:flex}.topbar h1{font-size:var(--text-section);letter-spacing:0}.topbar .sub{color:var(--color-text-faint);margin-top:2px;font-size:.76rem}.brand-lockup{align-items:center;gap:var(--space-3);min-width:max-content;display:inline-flex}.brand-logo{object-fit:contain;display:block}.destro-logo{width:158px;height:auto}.yusen-logo,.customer-logo{width:118px;height:auto}.nfi-logo{object-fit:cover;object-position:center;width:118px;height:48px}.customer-logo-light{display:none}.customer-wordmark{letter-spacing:-.01em;color:var(--color-text);font-size:1.05rem;font-weight:700}.brand-divider{background:var(--color-border-strong);width:1px;height:28px}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-5) var(--space-3);gap:var(--space-5);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--space-2);padding:0 var(--space-2);letter-spacing:0;font-size:1rem;font-weight:700;display:flex}.brand .mark{gap:2px;display:inline-flex}.brand .mark i{background:var(--color-text);border-radius:2px;width:3px;height:18px;display:inline-block}.brand .mark i:nth-child(2){align-self:flex-end;height:13px}.brand .mark i:nth-child(3){height:22px}.nav-label{padding:0 var(--space-2);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint);margin-bottom:var(--space-2);font-size:.68rem}.nav{flex-direction:column;gap:2px;display:flex}.nav button{text-align:left;padding:var(--space-2) var(--space-3);color:var(--color-text-dim);transition:background var(--duration-fast), color var(--duration-fast);background:0 0;border:0;border-radius:6px}.nav button:hover{background:var(--color-surface-2);color:var(--color-text)}.nav button.active{background:color-mix(in oklch, var(--c-cph) 22%, var(--color-surface-2));color:var(--color-text)}.panel-row{gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--color-border);grid-template-columns:210px minmax(0,1fr);align-items:center;display:grid}.panel-row:first-child{border-top:0}.kpi{position:relative}.kpi .value{font-size:var(--text-kpi-row);letter-spacing:0;font-variant-numeric:tabular-nums;font-weight:650;line-height:1}.kpi .label{color:var(--color-text-dim);margin-top:6px;font-size:.76rem}.kpi .unit{color:var(--color-text-faint);margin-left:4px;font-size:.78rem}.chart-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);min-height:158px;padding:var(--space-3) var(--space-3) var(--space-2);position:relative}.chart-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.chart-card .title{color:var(--color-text-dim);font-size:.82rem}.chart-meta{color:var(--color-text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.72rem}.chart-empty{inset:44px var(--space-3) var(--space-3) var(--space-3);color:var(--color-text-faint);pointer-events:none;place-items:center;font-size:.78rem;display:grid;position:absolute}.range{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.range input,.field input,.field select{background:var(--color-surface-2);border:1px solid var(--color-border-strong);color:var(--color-text);font:inherit;border-radius:6px;padding:6px 8px}.btn{background:var(--color-surface-2);border:1px solid var(--color-border-strong);color:var(--color-text);transition:border-color var(--duration-fast), background var(--duration-fast);border-radius:6px;padding:6px 12px}.btn:hover{border-color:var(--c-cph)}.btn.primary{background:color-mix(in oklch, var(--c-cph) 30%, var(--color-surface-2));border-color:var(--c-cph)}.quick{gap:4px;display:inline-flex}.quick button{border:1px solid var(--color-border);color:var(--color-text-dim);transition:border-color var(--duration-fast), color var(--duration-fast), background var(--duration-fast);background:0 0;border-radius:6px;padding:5px 9px;font-size:.8rem}.quick button:hover{color:var(--color-text);border-color:var(--color-border-strong)}.quick button.active{color:var(--color-text);border-color:var(--c-cph);background:color-mix(in oklch, var(--c-plot) 14%, transparent)}.range-dates{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.btn:focus-visible,.quick button:focus-visible,.sso-btn:focus-visible,.range input:focus-visible,.theme-toggle:focus-visible{outline:2px solid var(--c-plot);outline-offset:2px}.ops{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4)}.ops-toolbar{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}table.ops-table{border-collapse:collapse;width:100%;font-size:.82rem}table.ops-table th,table.ops-table td{text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:8px 10px}table.ops-table th{color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:500}table.ops-table td.num{text-align:right;font-variant-numeric:tabular-nums}.field{flex-direction:column;gap:4px;display:flex}.field label{color:var(--color-text-faint);font-size:.72rem}.form-grid{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.note{color:var(--color-text-faint);font-size:.78rem}.banner{background:color-mix(in oklch, var(--c-robots) 14%, var(--color-surface));border:1px solid color-mix(in oklch, var(--c-robots) 40%, var(--color-border));border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);color:var(--color-text-dim);font-size:.82rem}@media (width<=880px){.app{grid-template-columns:1fr}.topbar,.topbar-main{flex-direction:column;align-items:flex-start}.brand-lockup{min-width:0}.destro-logo{width:132px}.yusen-logo,.customer-logo{width:98px}.nfi-logo{height:40px}.sidebar{height:auto;position:static}.panel-row{gap:var(--space-3);grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.hero{margin-bottom:var(--space-6)}.hero-bar{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.wordmark{text-align:center;margin-top:var(--space-4)}.brandmark{font-size:var(--text-brand);letter-spacing:-.02em;background:linear-gradient(92deg, var(--color-text), var(--c-plot));color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:800;line-height:1.05}.brand-tagline{margin:var(--space-2) 0 0;color:var(--color-text-dim);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem}.kpi-summary{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(5,1fr);display:grid}@media (width>=1201px){.kpi-summary--impact{grid-template-columns:repeat(20,minmax(0,1fr))}.kpi-summary--impact .kpi:not(.kpi--secondary){grid-column:span 5}.kpi-summary--impact .kpi--secondary{grid-column:span 4}}@media (width<=1200px){.kpi-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=720px){.kpi-summary{grid-template-columns:repeat(2,1fr)}.kpi-summary .kpi:last-child{grid-column:span 2}.kpi-summary--impact .kpi:last-child{grid-column:auto}}.kpi-summary .kpi{text-align:center;justify-content:center;align-items:center;gap:var(--space-2);background:linear-gradient(180deg, var(--color-surface-2), var(--color-surface));border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:116px;padding:var(--space-4) var(--space-3);transition:transform var(--duration-fast) var(--ease-out-expo), border-color var(--duration-fast);flex-direction:column;display:flex;position:relative}.kpi-summary .kpi:before{content:"";background:var(--c-plot);opacity:.7;border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:2px;position:absolute;inset:0 0 auto}.kpi-summary .kpi:hover{border-color:var(--color-border-strong);transform:translateY(-2px)}.kpi-summary .kpi .value{font-size:var(--text-kpi);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;max-width:100%;font-weight:700;line-height:1.05}.kpi-summary .kpi .value.value--dense{font-size:calc(var(--text-kpi) * .78)}.kpi-summary .kpi .unit{color:var(--color-text-faint);margin-left:4px;font-size:.9rem;font-weight:600}.kpi-summary .kpi .label{color:var(--color-text-dim);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;line-height:1.25}.kpi-summary--impact .kpi--secondary{min-height:92px;padding:var(--space-3);gap:var(--space-1);background:var(--color-surface)}.kpi-summary--impact .kpi--secondary:before{opacity:.35}.kpi-summary--impact .kpi--secondary .value{font-size:calc(var(--text-kpi) * .74)}.kpi-summary--impact .kpi--secondary .value.value--dense{font-size:calc(var(--text-kpi) * .64)}.kpi-summary--impact .kpi--secondary .label{font-size:.68rem}.signin{min-height:100vh;padding:var(--space-5);background:radial-gradient(60% 50% at 50% 0%, color-mix(in oklch, var(--c-plot) 12%, transparent), transparent), var(--color-bg);place-items:center;display:grid}.signin-card{text-align:center;align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:380px;padding:var(--space-6) var(--space-5);flex-direction:column;display:flex}.signin-card .wordmark{margin-top:var(--space-2)}.signin-title{font-size:var(--text-section)}.signin-lead{margin:var(--space-2) 0 var(--space-1);color:var(--color-text-dim)}.sso-btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius);border:1px solid var(--color-border-strong);background:var(--color-surface-2);width:100%;color:var(--color-text);transition:transform var(--duration-fast) var(--ease-out-expo), border-color var(--duration-fast), background var(--duration-fast);padding:11px 14px;font-size:.92rem;font-weight:600;display:inline-flex}.sso-btn:hover{border-color:var(--c-plot);transform:translateY(-1px)}.sso-btn.ghost{border-color:var(--color-border);color:var(--color-text-dim);background:0 0;font-weight:500}.signin-foot{margin-top:var(--space-2);color:var(--color-text-faint);font-size:.74rem}.info-tip{align-items:center;display:inline-flex;position:relative}.kpi>.info-tip{position:absolute;top:8px;right:8px}.info-tip-btn{border:1px solid var(--color-border-strong);width:16px;height:16px;color:var(--color-text-faint);transition:color var(--duration-fast), border-color var(--duration-fast), background var(--duration-fast);background:0 0;border-radius:50%;place-items:center;padding:0;font-family:Georgia,Times New Roman,serif;font-size:.62rem;font-style:italic;font-weight:700;line-height:1;display:inline-grid}.info-tip:hover .info-tip-btn,.info-tip-btn:focus-visible{color:var(--color-text);border-color:var(--c-plot);background:color-mix(in oklch, var(--c-plot) 14%, transparent);outline:none}.info-tip-bubble{z-index:30;border-radius:var(--radius);border:1px solid var(--chart-tooltip-border);background:var(--chart-tooltip-bg);width:max-content;max-width:min(260px,100vw - 2rem);color:var(--color-text-dim);letter-spacing:0;text-transform:none;text-align:left;white-space:normal;opacity:0;pointer-events:none;transition:opacity var(--duration-fast), transform var(--duration-fast) var(--ease-out-expo);padding:8px 10px;font-size:.74rem;font-style:normal;font-weight:400;line-height:1.45;position:absolute;bottom:calc(100% + 8px);right:-6px;transform:translateY(3px);box-shadow:0 8px 24px #00000047}.info-tip.start .info-tip-bubble{left:-6px;right:auto}.info-tip:hover .info-tip-bubble,.info-tip:focus-within .info-tip-bubble,.info-tip.open .info-tip-bubble{opacity:1;transform:translateY(0)}.chart-head .title{align-items:center;gap:6px;display:inline-flex}.theme-toggle{border-radius:50%;place-items:center;width:32px;height:32px;padding:0;display:inline-grid}.theme-toggle svg{display:block}[data-theme=light] .brand-logo{filter:invert()hue-rotate(180deg)}[data-theme=light] .customer-logo-dark{display:none}[data-theme=light] .customer-logo-light{filter:none;display:block}[data-theme=light] .info-tip-bubble{box-shadow:0 8px 24px #1e223c29}.foot{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-text-faint);flex-wrap:wrap;font-size:.74rem;display:flex}@media (width<=520px){.main{padding:var(--space-3) var(--space-3) var(--space-4)}.hero-bar{justify-content:center}.kpi-summary{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.kpi-summary .kpi{min-height:96px}.kpi-summary--impact .kpi--secondary{min-height:84px}.destro-logo{width:112px}.yusen-logo,.customer-logo{width:84px}.nfi-logo{height:34px}}
