@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Space+Grotesk:wght@500;600;700&display=swap');
/* IB Creative Manager shell adaptation for the complete Made in Japan ERP. */
:root{
  --ib-canvas:#f2f3f5;--ib-surface:#fff;--ib-primary:#1b2030;--ib-accent:#5550e6;
  --ib-border:#d8dce2;--ib-muted:#767d88;--ib-rail:#121620;--ib-rail-border:rgba(255,255,255,.09);
  --ib-radius:7px;--ib-shadow:0 1px 2px rgba(18,22,32,.035)
}
*{box-sizing:border-box}body{background:var(--ib-canvas);color:#171a21;font-family:"IBM Plex Sans","Noto Sans JP",Inter,ui-sans-serif,system-ui,sans-serif}
.sidebar{position:fixed;inset:0 auto 0 0;width:232px;padding:0 10px;background:var(--ib-rail);border-right:1px solid var(--ib-rail-border);z-index:20;overflow:hidden}
.brand{height:56px;min-height:56px;padding:0 3px;gap:10px;border-bottom:1px solid var(--ib-rail-border);border-radius:0;background:transparent}
.brand img{width:32px;height:32px;object-fit:contain;border-radius:0;background:transparent}.brand strong{font:600 13px/1.2 "IBM Plex Sans",sans-serif;letter-spacing:-.03em}.brand span{display:block;color:rgba(255,255,255,.5);font:9px/1.2 "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase}
.side-nav{min-height:0;padding:12px 0 10px;overflow-y:auto}.nav-group{margin:0 0 16px;border:0;border-radius:0;background:transparent}.nav-group.open .group-items{display:block}.group-head{min-height:24px;padding:0 10px 6px;color:rgba(255,255,255,.5);font:600 9px/1.2 "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase}.group-head i:first-child{display:none}.group-head .chev{display:none}.group-items{display:block;padding:0}.nav-item,.sub-head{min-height:40px;margin:2px 0;padding:8px 10px;border-radius:0;color:rgba(255,255,255,.84);font-size:13px;font-weight:500;transition:background .18s,color .18s,transform .18s}.nav-item i,.sub-head i{width:20px;color:rgba(255,255,255,.46);text-align:center}.nav-item:hover,.sub-head:hover{background:rgba(255,255,255,.07);color:#fff;transform:none}.nav-item.active{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 3px 0 var(--ib-accent);transform:none}.sub-section{margin:8px 0 0}.sub-head{min-height:30px;padding:5px 10px;color:rgba(255,255,255,.58);font:600 10px/1.2 "IBM Plex Mono",monospace;letter-spacing:.04em;text-transform:uppercase;background:transparent}.sub-items{display:block;margin:0 0 5px 20px;padding:0 0 0 8px;border-left:1px solid rgba(255,255,255,.1)}.side-footer{margin-top:auto;padding:10px 5px;border-top:1px solid var(--ib-rail-border);color:rgba(255,255,255,.5)}.system-status{font:9px "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.09em}.system-status span{width:7px;height:7px;box-shadow:none}
.app-shell{min-height:100vh;margin-left:232px;padding:0 0 120px}.topbar{height:56px;min-height:56px;padding:0 28px;background:#fff;border-bottom:1px solid var(--ib-border);gap:16px}.eyebrow{margin:0;color:var(--ib-muted);font:10px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.topbar h1{margin:1px 0 0;color:#171a21;font-size:18px;line-height:1.2}.top-actions{gap:0}.ghost-btn,.icon-btn,.user-btn{height:56px;border:0;border-left:1px solid var(--ib-border);border-radius:0;background:#fff;color:#555c68;box-shadow:none;font-size:12px;font-weight:500}.ghost-btn{height:34px;margin-right:8px;padding:0 10px;border:1px solid var(--ib-border);border-radius:5px;background:#f7f8fa;font:11px "IBM Plex Mono",monospace}.ghost-btn:hover,.icon-btn:hover,.user-btn:hover{transform:none;background:#f7f8fa;box-shadow:none}.icon-btn{width:48px;padding:0;justify-content:center}.user-btn{padding:0 10px;gap:7px}.user-btn .avatar{width:26px;height:26px;border-radius:0;background:var(--ib-primary);font:11px "IBM Plex Mono",monospace}.dropdown-panel{top:56px;border-radius:var(--ib-radius);border:1px solid var(--ib-border);box-shadow:0 12px 32px rgba(18,22,32,.12)}
.page-content{max-width:1660px;margin:0 auto;padding:24px 28px;animation:fadeUp .25s ease}.card{border:1px solid var(--ib-border);border-radius:var(--ib-radius);box-shadow:var(--ib-shadow);padding:18px;background:#fff}.kpi{border-radius:var(--ib-radius);box-shadow:var(--ib-shadow)}.kpi:after{display:none}.kpi-value{font-size:28px}.data-table td{background:#fbfcfd;border-color:var(--ib-border);border-radius:0!important}.data-table td:first-child{border-left:1px solid var(--ib-border)}.data-table td:last-child{border-right:1px solid var(--ib-border)}.primary-btn{border-radius:5px;background:var(--ib-accent);box-shadow:none}.secondary-btn,.danger-btn,.mini-btn{border-radius:5px}.flow-node,.job-card,.day-col,.step-card{border-radius:var(--ib-radius);box-shadow:var(--ib-shadow)}.flow-node.active{background:var(--ib-primary);transform:none}.ai-dock{left:260px;right:28px;bottom:18px;border-radius:var(--ib-radius);border:1px solid var(--ib-border);background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(18,22,32,.12);padding:12px;grid-template-columns:300px 1fr}.ai-avatar{border-radius:5px;background:var(--ib-accent)}.ai-input input{border-radius:5px}.ai-input button{border-radius:5px;background:var(--ib-primary)}.ai-response{border-radius:5px;background:#f7f8fa}
#ibCommandButton{display:inline-flex;align-items:center;gap:7px;height:34px;margin-right:8px;padding:0 10px;border:1px solid var(--ib-border);border-radius:5px;background:#f7f8fa;color:#555c68;font:11px "IBM Plex Mono",monospace;cursor:pointer}#ibCommandButton:hover{background:#eeedff;color:var(--ib-accent)}
.ib-command-center{display:none;position:fixed;inset:0;z-index:90}.ib-command-center.open{display:block}.ib-command-backdrop{position:absolute;inset:0;background:rgba(18,22,32,.42);backdrop-filter:blur(2px)}.ib-command-panel{position:relative;width:min(560px,calc(100vw - 28px));margin:12vh auto 0;background:#fff;border:1px solid var(--ib-border);border-radius:9px;box-shadow:0 24px 70px rgba(18,22,32,.24);overflow:hidden}.ib-command-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--ib-border);font:12px "IBM Plex Mono",monospace}.ib-command-close{border:1px solid var(--ib-border);border-radius:4px;background:#f7f8fa;color:var(--ib-muted);padding:3px 7px;font:10px "IBM Plex Mono",monospace}.ib-command-input{width:100%;border:0;border-bottom:1px solid var(--ib-border);padding:15px 16px;outline:none;font-size:14px}.ib-command-list{display:grid;max-height:390px;padding:7px;overflow:auto}.ib-command-item{display:flex;align-items:center;gap:10px;border:0;border-radius:5px;background:#fff;color:#171a21;text-align:left;padding:10px;cursor:pointer}.ib-command-item:hover{background:#f0efff}.ib-command-item .ib-command-icon{width:22px;color:var(--ib-accent);text-align:center}.ib-command-item small{margin-left:auto;color:var(--ib-muted);font:10px "IBM Plex Mono",monospace}.ib-command-item[hidden]{display:none}
.mij-mobile-menu-btn{display:none}.mij-mobile-menu-overlay{display:none}
@media(max-width:1180px){.sidebar{transform:translateX(-108%);width:min(86vw,320px);padding:82px 18px 24px;box-shadow:none;transition:transform .28s ease}body.mij-mobile-menu-open .sidebar{transform:translateX(0);box-shadow:28px 0 70px rgba(15,19,56,.34)}.app-shell{margin-left:0}.mij-mobile-menu-btn{display:flex;position:fixed;top:12px;left:12px;width:40px;height:40px;z-index:1001;border:0;border-radius:5px;background:var(--ib-primary);align-items:center;justify-content:center;flex-direction:column;gap:4px}.mij-mobile-menu-btn span{width:18px;height:2px;background:#fff}.mij-mobile-menu-overlay{display:block;position:fixed;inset:0;z-index:998;background:rgba(18,22,32,.42);opacity:0;pointer-events:none;transition:opacity .28s}.mij-mobile-menu-overlay.open{opacity:1;pointer-events:auto}body.mij-mobile-menu-open .mij-mobile-menu-overlay{opacity:1;pointer-events:auto}.topbar{padding:0 16px 0 64px}.ai-dock{left:18px;right:18px;grid-template-columns:1fr}.page-content{padding:20px 18px}.ai-response{grid-column:auto}}
@media(max-width:760px){.topbar{height:auto;min-height:56px;padding:10px 12px 10px 60px;align-items:flex-start;flex-direction:row}.topbar h1{font-size:16px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.ghost-btn,#ibCommandButton{display:none}.user-btn span:not(.avatar),.user-btn>i{display:none}.page-content{padding:16px 12px}.kpi-grid{grid-template-columns:1fr 1fr}.ai-dock{left:12px;right:12px;bottom:12px;padding:10px}.ai-context{gap:8px}.ai-context span{font-size:11px}.ai-input{min-width:0}.ai-input input{min-width:0}.form-grid{grid-template-columns:1fr}.chat-page{grid-template-columns:1fr}}
#ibSidebarToggle{display:flex;width:100%;align-items:center;gap:8px;margin-top:10px;padding:8px 7px;border:1px solid var(--ib-rail-border);border-radius:5px;background:rgba(255,255,255,.04);color:rgba(255,255,255,.68);font:10px "IBM Plex Mono",monospace;cursor:pointer}#ibSidebarToggle:hover{background:rgba(255,255,255,.09);color:#fff}#ibSidebarToggle span{width:16px;text-align:center;font-size:14px}#ibSidebarToggle b{font-weight:500}
@media(min-width:1181px){body.ib-sidebar-collapsed .sidebar{width:68px;padding-left:8px;padding-right:8px}body.ib-sidebar-collapsed .app-shell{margin-left:68px}body.ib-sidebar-collapsed .brand{justify-content:center;padding-left:0;padding-right:0}body.ib-sidebar-collapsed .brand strong,body.ib-sidebar-collapsed .brand span,body.ib-sidebar-collapsed .group-head,body.ib-sidebar-collapsed .sub-head{font-size:0}body.ib-sidebar-collapsed .group-head,body.ib-sidebar-collapsed .sub-head{justify-content:center;padding-left:0;padding-right:0}body.ib-sidebar-collapsed .group-head i:first-child,body.ib-sidebar-collapsed .sub-head i{display:block;width:20px;margin:0;text-align:center}body.ib-sidebar-collapsed .nav-item{justify-content:center;padding-left:0;padding-right:0}body.ib-sidebar-collapsed .nav-item span{display:block;width:20px;overflow:hidden;text-align:center;font-size:0}body.ib-sidebar-collapsed .nav-item span:before{content:attr(data-short);display:block;color:rgba(255,255,255,.8);font:600 11px/20px "IBM Plex Mono",monospace}body.ib-sidebar-collapsed .nav-item i{margin:0}body.ib-sidebar-collapsed .sub-items{margin-left:0;padding-left:0;border-left:0}body.ib-sidebar-collapsed .side-footer .system-status{justify-content:center;font-size:0}body.ib-sidebar-collapsed .side-footer .system-status span{margin:0}body.ib-sidebar-collapsed #ibSidebarToggle{justify-content:center;padding-left:0;padding-right:0}body.ib-sidebar-collapsed #ibSidebarToggle b{display:none}body.ib-sidebar-collapsed .ai-dock{left:96px}}

/* IB Creative Manager visual contract applied to legacy ERP screens. */
html{background:var(--ib-canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{background:var(--ib-canvas);font-family:"IBM Plex Sans","Noto Sans JP",system-ui,sans-serif}.app-shell{background:linear-gradient(180deg,rgba(255,255,255,.42) 0,rgba(255,255,255,0) 220px),var(--ib-canvas)}
.ib-topbar-title-block{display:flex;align-items:center;min-width:0;gap:10px}.ib-topbar-mark{width:3px;height:28px;flex:none;background:var(--ib-accent)}.ib-topbar-title-content{min-width:0}.topbar h1{font-family:"Space Grotesk","Noto Sans JP",system-ui,sans-serif;font-weight:600;letter-spacing:-.04em}.ib-topbar-title-block>div{min-width:0}
#ibTopbarCommand{display:flex;align-items:center;gap:10px;flex:1;min-width:180px;max-width:520px;height:56px;margin:0 8px;padding:0 16px;border:0;border-left:1px solid var(--ib-border);border-right:1px solid var(--ib-border);background:transparent;color:var(--ib-muted);text-align:left;font-size:13px;cursor:pointer}#ibTopbarCommand:hover{background:#f7f8fa;color:var(--ib-accent)}#ibTopbarCommand .ib-topbar-search-mark{font-size:18px;color:var(--ib-muted)}#ibTopbarCommand kbd{margin-left:auto;border:1px solid var(--ib-border);background:#f7f8fa;padding:3px 6px;color:var(--ib-muted);font:600 9px "IBM Plex Mono",monospace}
.top-actions #ibCommandButton{display:none!important}
.topbar{justify-content:flex-start!important}.topbar>div:first-child{flex:0 1 420px;max-width:420px;min-width:0}.top-actions{margin-left:auto;flex:none}
.card,.kpi,.status-panel,.hero-card,.stage-card,.flow-stage,.step,.route-point,.machine,.sidebar-card,.orders-filter-card,.orders-insights{border-radius:2px!important;box-shadow:var(--ib-shadow)!important}.card:hover,.status-panel:hover{transform:none;box-shadow:var(--ib-shadow)!important}.card{padding:16px}.kpi{min-height:112px}.kpi-grid,.orders-kpi-grid{gap:16px;margin:16px 0}.orders-filter-card{gap:8px;padding:8px;margin-bottom:16px}.filter-group{gap:5px}.filter-group label,.field label{font:600 10px "IBM Plex Mono",monospace;letter-spacing:.09em;color:var(--ib-muted)}.filter-group input,.filter-group select,.orders-filter-card input,.orders-filter-card select,.field input,.field select,.field textarea,input,select,textarea{border-radius:2px!important;box-shadow:none!important;min-height:36px}.filter-group input,.filter-group select,.orders-filter-card input,.orders-filter-card select{background:#fff;border:1px solid var(--ib-border);padding:8px 10px}.page-head-row{margin-bottom:16px}.page-actions{gap:8px;padding-top:4px}.data-table{border-spacing:0}.data-table th{padding:8px 10px;font:600 10px "IBM Plex Mono",monospace;color:var(--ib-muted)}.data-table td{padding:11px 10px;background:#fff;border-top:0;border-bottom:1px solid var(--ib-border);border-left:0!important;border-right:0!important;border-radius:0!important}.data-table tr:last-child td{border-bottom:0}.flow-node,.job-card,.day-col,.step-card,.route-point,.machine{border-radius:2px!important;box-shadow:var(--ib-shadow)!important}.flow-node:hover,.job-card:hover,.day-col:hover,.step-card:hover{transform:none;box-shadow:var(--ib-shadow)!important}.flow-node.active{transform:none}.primary-btn,.secondary-btn,.danger-btn,.mini-btn,.btn,.ghost-btn,.icon-btn,.user-btn{border-radius:2px!important;box-shadow:none!important}.primary-btn{background:var(--ib-accent)}.ai-dock{border-radius:2px!important;box-shadow:0 8px 22px rgba(18,22,32,.07)!important}.ai-input input,.ai-input button{border-radius:2px!important}.ai-response{border-radius:2px!important}
/* Shared workspace rhythm: the AI assistant stays in document flow on every screen. */
.app-shell{padding-bottom:0!important}
.app-shell>.ai-dock{position:static;inset:auto;width:min(1604px,calc(100% - 56px));margin:0 auto 24px;grid-template-columns:260px minmax(0,1fr);border-radius:var(--ib-radius)!important;background:#fff;backdrop-filter:none;z-index:auto}
.page-content{min-height:calc(100vh - 56px);padding-top:24px;padding-bottom:24px}
.card{border-radius:4px!important;background:#fff}.card h3{font:600 16px/1.25 "Space Grotesk","Noto Sans JP",sans-serif;letter-spacing:-.02em;color:var(--ib-primary)}.card-sub{font-size:12px;line-height:1.5;color:var(--ib-muted)}
.nav-item .ib-nav-icon,.sub-head .ib-nav-icon,.group-head .ib-nav-icon{display:inline-flex;width:20px;flex:none;align-items:center;justify-content:center;color:rgba(255,255,255,.52);font-size:12px}.nav-item.active .ib-nav-icon{color:#b9b6ff}.sub-head .ib-nav-icon,.group-head .ib-nav-icon{color:rgba(255,255,255,.48)}
.card h3{display:flex;align-items:center;gap:9px}.ib-section-icon{display:inline-flex;width:17px;flex:none;align-items:center;justify-content:center;color:var(--ib-accent);font-size:13px}
.timeline{gap:8px}.step-card{border-radius:4px!important;padding:11px 12px}.step-icon{border-radius:4px;background:#f0efff;color:var(--ib-accent)}.flow-strip{gap:8px;padding:8px 0}.flow-node{min-width:112px;padding:11px;border-radius:4px!important}
.data-table{min-width:720px}.data-table th{white-space:nowrap}.form-grid{gap:12px}.section-actions{margin-top:14px}
.status-panel,.hero-card,.stage-card,.flow-stage,.step,.route-point,.machine,.sidebar-card,.orders-insights{border-radius:4px!important;box-shadow:var(--ib-shadow)!important}
/* Dashboard follows the IB hierarchy: editorial intro, indicators, focus, health, analysis. */
.ib-dashboard-layout{display:grid;gap:14px;min-width:0}.ib-dashboard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:2px 0 8px}.ib-dashboard-intro-copy{min-width:0}
.ib-dashboard-overline{margin:0 0 10px;color:var(--ib-muted);font:600 9px/1.3 "IBM Plex Mono",monospace;letter-spacing:.12em}.ib-dashboard-overline span{padding:0 5px;color:var(--ib-accent)}
.ib-dashboard-intro h2{margin:0;color:var(--ib-primary);font:600 clamp(25px,3vw,34px)/1.08 "Space Grotesk","Noto Sans JP",sans-serif;letter-spacing:-.045em}.ib-dashboard-intro-copy>p:last-child{margin:7px 0 0;color:var(--ib-muted);font-size:12px}
.ib-dashboard-board-link{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:0 11px;border:1px solid var(--ib-border);border-radius:4px;background:#fff;color:var(--ib-primary);font:600 9px "IBM Plex Mono",monospace;letter-spacing:.03em;white-space:nowrap;cursor:pointer}.ib-dashboard-board-link span{color:var(--ib-accent);font-size:14px}.ib-dashboard-board-link:hover{border-color:var(--ib-accent);color:var(--ib-accent)}
.ib-dashboard-filters{margin:0!important;padding:10px 12px!important;border-radius:4px!important;box-shadow:none!important}.ib-dashboard-filters .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ib-dashboard-filters .field{gap:4px}.ib-dashboard-filters .field label{font-size:8px;letter-spacing:.1em}.ib-dashboard-filters select{min-height:32px;padding:5px 8px;font-size:11px}
.ib-dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;margin:0!important;overflow:hidden;border:1px solid var(--ib-border);border-radius:4px;background:#fff}
.ib-dashboard-kpis>.kpi{position:relative;min-width:0;min-height:96px;padding:13px 16px!important;border:0;border-right:1px solid var(--ib-border);border-top:2px solid var(--ib-accent);border-radius:0!important;box-shadow:none!important}.ib-dashboard-kpis>.kpi:nth-child(2){border-top-color:#4d9b7b}.ib-dashboard-kpis>.kpi:nth-child(3){border-top-color:#d69a35}.ib-dashboard-kpis>.kpi:nth-child(4){border-top-color:#8175bd}.ib-dashboard-kpis>.kpi:last-child{border-right:0}
.ib-dashboard-kpis .kpi-label{font:600 9px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.ib-dashboard-kpis .kpi-value{margin:8px 0 3px;font:600 27px/1 "Space Grotesk",sans-serif;letter-spacing:-.04em}.ib-dashboard-kpis .trend{font-size:10px}
.ib-dashboard-focus-grid,.ib-dashboard-insights-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:14px;align-items:stretch}.ib-dashboard-focus-grid>.card,.ib-dashboard-insights-grid>.card,.ib-dashboard-flow{min-width:0;margin:0!important}.ib-dashboard-orders{min-height:100%}.ib-dashboard-orders .table-wrap{max-width:100%;overflow:auto}
.ib-dashboard-modules .timeline{gap:7px}.ib-dashboard-modules .step-card{grid-template-columns:34px minmax(0,1fr) auto;gap:10px;padding:9px}.ib-dashboard-modules .step-icon{width:34px;height:34px}.ib-dashboard-modules .progress{height:5px}.ib-dashboard-flow .flow-strip{max-width:100%;overflow-x:auto}.ib-dashboard-flow .flow-node{flex:1;min-width:105px}.ib-dashboard-chart canvas{display:block;max-height:230px!important;margin-top:8px}.ib-dashboard-market .market-row{gap:10px}.ib-dashboard-market .market-row small{line-height:1.4}.ib-dashboard-ai .ai-response{line-height:1.6}
@media(max-width:1180px){.app-shell>.ai-dock{width:calc(100% - 36px);grid-template-columns:1fr}.ib-dashboard-focus-grid,.ib-dashboard-insights-grid{grid-template-columns:minmax(0,1.3fr) minmax(250px,.9fr)}}
@media(max-width:760px){#ibTopbarCommand{display:none}.ib-topbar-mark{height:24px}.card{padding:14px}.orders-filter-card{padding:8px}.app-shell>.ai-dock{width:calc(100% - 24px);margin-bottom:12px;padding:10px}.page-content{min-height:0}.ib-dashboard-intro{align-items:flex-start;flex-direction:column;gap:12px}.ib-dashboard-filters .form-grid{grid-template-columns:1fr 1fr}.ib-dashboard-kpis{grid-template-columns:1fr 1fr}.ib-dashboard-kpis>.kpi:nth-child(2){border-right:0}.ib-dashboard-kpis>.kpi:nth-child(-n+2){border-bottom:1px solid var(--ib-border)}.ib-dashboard-focus-grid,.ib-dashboard-insights-grid{grid-template-columns:1fr}.ib-dashboard-flow .flow-node{flex:0 0 112px}}
/* Executive dashboard panels based only on values already present in the ERP. */
.page-content .kpi-grid,.page-content .orders-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;margin:0 0 14px!important;overflow:hidden;border:1px solid var(--ib-border);border-radius:4px;background:#fff}
.page-content .kpi-grid>.kpi,.page-content .orders-kpi-grid>.kpi{position:relative;min-width:0;min-height:94px;padding:13px 15px!important;border:0;border-right:1px solid var(--ib-border);border-top:2px solid var(--ib-accent);border-radius:0!important;box-shadow:none!important}
.page-content .kpi-grid>.kpi:nth-child(2),.page-content .orders-kpi-grid>.kpi:nth-child(2){border-top-color:#4d9b7b}.page-content .kpi-grid>.kpi:nth-child(3),.page-content .orders-kpi-grid>.kpi:nth-child(3){border-top-color:#d69a35}.page-content .kpi-grid>.kpi:nth-child(4),.page-content .orders-kpi-grid>.kpi:nth-child(4){border-top-color:#8175bd}.page-content .kpi-grid>.kpi:last-child,.page-content .orders-kpi-grid>.kpi:last-child{border-right:0}
.page-content .kpi-grid .kpi-label,.page-content .orders-kpi-grid .kpi-label{font:600 9px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}.page-content .kpi-grid .kpi-value,.page-content .orders-kpi-grid .kpi-value{margin:8px 0 3px;font:600 26px/1 "Space Grotesk",sans-serif;letter-spacing:-.04em}.page-content .kpi-grid .trend,.page-content .orders-kpi-grid .trend{font-size:10px}
.page-content .dashboard-filters,.page-content .orders-filter-card{border:1px solid var(--ib-border);border-radius:4px!important;background:#fff;box-shadow:none!important}
.ib-dashboard-executive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}.ib-executive-card{min-width:0;min-height:300px;margin:0!important;padding:17px!important}.ib-executive-card h3{margin-bottom:5px}.ib-executive-card>.card-sub{min-height:30px;margin:0 0 14px;line-height:1.45}
.ib-executive-unit-list{display:grid;gap:11px}.ib-executive-unit{display:grid;grid-template-columns:minmax(120px,.6fr) minmax(90px,1.4fr) 34px;gap:10px;align-items:center}.ib-executive-unit-label{display:grid;gap:2px;min-width:0}.ib-executive-unit-label strong{overflow:hidden;color:var(--ib-primary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ib-executive-unit-label span{overflow:hidden;color:var(--ib-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.ib-executive-bar{height:9px;overflow:hidden;border-radius:999px;background:#edf1f5}.ib-executive-bar i{display:block;height:100%;border-radius:inherit}.ib-executive-unit>b{color:var(--ib-primary);font:600 11px "Space Grotesk",sans-serif;text-align:right}
.ib-executive-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.ib-executive-stat{display:grid;gap:5px;min-width:0;padding:10px;border:1px solid #e8edf5;border-radius:5px;background:#f8faff}.ib-executive-stat span{overflow:hidden;color:var(--ib-muted);font:600 8px "IBM Plex Mono",monospace;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.ib-executive-stat strong{overflow:hidden;color:var(--ib-primary);font:600 16px "Space Grotesk",sans-serif;text-overflow:ellipsis;white-space:nowrap}
.ib-mix-content{display:grid;grid-template-columns:160px minmax(0,1fr);gap:18px;align-items:center;min-height:190px}.ib-mix-donut{display:grid;width:152px;aspect-ratio:1;border-radius:50%;place-items:center}.ib-mix-donut>div{display:grid;width:88px;aspect-ratio:1;border-radius:50%;background:#fff;place-content:center;text-align:center}.ib-mix-donut strong{color:var(--ib-primary);font:700 20px "Space Grotesk",sans-serif}.ib-mix-donut span{color:var(--ib-muted);font-size:10px}.ib-mix-legend{display:grid;gap:13px}.ib-mix-legend-row{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:9px;align-items:center;color:var(--ib-primary);font-size:11px}.ib-mix-legend-row i{width:9px;height:9px;border-radius:50%}.ib-mix-legend-row b{font:600 11px "Space Grotesk",sans-serif}
.ib-operational-list{display:grid;gap:8px}.ib-operational-row{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:55px;padding:9px 11px;border:1px solid #e8edf5;border-radius:5px;background:#f8faff}.ib-operational-row>div{display:grid;gap:3px;min-width:0}.ib-operational-row strong{color:var(--ib-primary);font-size:11px}.ib-operational-row span{color:var(--ib-muted);font-size:9px}.ib-operational-row>b{flex:none;color:#169b73;font:600 14px "Space Grotesk",sans-serif}.ib-operational-row.warning>b{color:#d88916}
@media(max-width:760px){.page-content .kpi-grid,.page-content .orders-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-content .kpi-grid>.kpi:nth-child(2n),.page-content .orders-kpi-grid>.kpi:nth-child(2n){border-right:0}.page-content .kpi-grid>.kpi:nth-child(-n+2),.page-content .orders-kpi-grid>.kpi:nth-child(-n+2){border-bottom:1px solid var(--ib-border)}.ib-dashboard-executive-grid{grid-template-columns:1fr}.ib-mix-content{grid-template-columns:120px minmax(0,1fr);gap:12px}.ib-mix-donut{width:116px}.ib-mix-donut>div{width:68px}}
/* Live production board: compact IB cards, clear state colors, no oversized gradients. */
.live-wall-page{gap:14px!important;min-height:0!important}
.live-wall-hero{align-items:center!important;gap:18px!important;padding:18px!important;border-radius:4px!important;background:#fff!important;border-color:var(--ib-border)!important;box-shadow:var(--ib-shadow)!important}
.live-wall-hero h2{font-size:clamp(25px,3vw,34px)!important;line-height:1.08!important;letter-spacing:-.045em!important}
.live-wall-hero p{max-width:780px!important;font-size:12px!important;font-weight:400!important;line-height:1.5!important}
.live-wall-clock{min-width:142px!important;padding:11px 13px!important;border-radius:4px!important;background:var(--ib-primary)!important}
.live-wall-clock span{font:600 8px "IBM Plex Mono",monospace!important;letter-spacing:.1em!important}.live-wall-clock strong{font:600 31px/1 "Space Grotesk",sans-serif!important}.live-wall-clock small{font:10px "IBM Plex Mono",monospace!important}
.live-wall-board{gap:12px!important}.live-product-row{padding:14px!important;border-radius:4px!important;border-color:var(--ib-border)!important;box-shadow:var(--ib-shadow)!important}
.live-wall-page .live-product-row.is-running:before{background:#4d9b7b!important}.live-wall-page .live-product-row.is-done:before{background:#4d9b7b!important}.live-wall-page .live-product-row.is-stopped:before{background:#bf4d58!important}.live-wall-page .live-product-row.is-start:before{background:#6c65dc!important}
.live-product-head{gap:12px!important;margin-bottom:11px!important}.live-product-head strong{font:600 17px/1.2 "Space Grotesk","Noto Sans JP",sans-serif!important;letter-spacing:-.02em!important}.live-product-head span{margin-top:3px!important;font:9px "IBM Plex Mono",monospace!important}.live-product-meta{gap:8px!important}.live-product-meta>b{padding:7px 9px!important;border:1px solid var(--ib-border)!important;border-radius:3px!important;background:#f6f7f9!important;color:var(--ib-primary)!important;font:600 11px "IBM Plex Mono",monospace!important;letter-spacing:.02em!important}
.live-stage-line{grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:7px!important}.live-stage-box{min-width:0!important;min-height:88px!important;padding:9px!important;gap:5px!important;border-radius:4px!important;border-color:var(--ib-border)!important;background:#fff!important;box-shadow:none!important;transform:none!important;transition:border-color .18s,background .18s!important}
.live-stage-box span{width:23px!important;height:23px!important;border-radius:3px!important;background:#f0efff!important;color:var(--ib-accent)!important;font:600 9px "IBM Plex Mono",monospace!important}.live-stage-box strong{font:600 11px/1.2 "IBM Plex Sans",sans-serif!important;color:var(--ib-primary)!important}.live-stage-box small{font:9px "IBM Plex Sans",sans-serif!important;color:var(--ib-muted)!important}.live-stage-box>b{margin-top:2px!important;padding:4px 6px!important;border-radius:3px!important;background:#f1f3f6!important;color:var(--ib-primary)!important;font:600 9px "IBM Plex Mono",monospace!important}
.live-stage-box.done{border-color:#dcebe2!important;border-left:2px solid #4d9b7b!important;background:#f8fbf9!important}.live-stage-box.done span{background:#e8f4ec!important;color:#397957!important}.live-stage-box.next{border-color:#dce0fa!important;background:#fafaff!important}
.live-stage-box.active{position:relative!important;border-color:#cbc8f7!important;border-left:3px solid var(--ib-accent)!important;background:#f8f7ff!important;box-shadow:none!important;transform:none!important}.live-stage-box.active .live-stage-glow{display:none!important}.live-stage-box.active:after{top:10px!important;right:10px!important;width:7px!important;height:7px!important;background:#4d9b7b!important;box-shadow:none!important;animation:none!important}
.live-stage-box.stopped{border-color:#efd4d6!important;border-left:3px solid #bf4d58!important;background:#fff8f8!important;box-shadow:none!important}.live-stage-box.stopped span{background:#f8e9ea!important;color:#a83c48!important}
.live-wall-footer{gap:9px!important;padding:10px 13px!important;border:1px solid var(--ib-border)!important;border-radius:4px!important;background:#fff!important;color:var(--ib-primary)!important}.live-wall-footer strong{font:600 11px "IBM Plex Sans",sans-serif!important}.live-wall-footer span{color:var(--ib-muted)!important;font:10px "IBM Plex Sans",sans-serif!important}.live-pulse-dot{width:8px!important;height:8px!important;flex:none;box-shadow:none!important;animation:none!important}
@media(max-width:1300px){.live-stage-line{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:760px){.live-wall-hero{align-items:flex-start!important;flex-direction:column!important}.live-wall-clock{min-width:120px!important}.live-stage-line{grid-template-columns:repeat(2,minmax(0,1fr))!important}.live-product-head{align-items:flex-start!important;flex-direction:column!important}.live-product-meta{flex-wrap:wrap!important}}
/* Neutralize page-specific legacy art direction so ERP workspaces share the IB surface system. */
.live-wall-hero{padding:20px!important;border:1px solid var(--ib-border)!important;border-radius:var(--ib-radius)!important;background:#fff!important;box-shadow:var(--ib-shadow)!important}.live-wall-hero h2{font:600 clamp(24px,3vw,34px)/1.1 "Space Grotesk","Noto Sans JP",sans-serif!important;letter-spacing:-.04em!important;color:var(--ib-primary)!important}.live-wall-hero p{font:500 13px/1.5 "IBM Plex Sans","Noto Sans JP",sans-serif!important;color:var(--ib-muted)!important}.live-wall-clock{min-width:160px!important;padding:12px 14px!important;border:1px solid var(--ib-border)!important;border-radius:var(--ib-radius)!important;background:var(--ib-primary)!important;box-shadow:none!important}.live-wall-clock strong{font-size:34px!important}.live-wall-kpis{gap:0!important;border:1px solid var(--ib-border)!important;background:#fff!important}.live-wall-kpi,.live-wall-kpi.blue,.live-wall-kpi.green,.live-wall-kpi.gold,.live-wall-kpi.red{min-height:100px;padding:12px 16px!important;border-radius:0!important;border-right:1px solid var(--ib-border)!important;background:#fff!important;color:var(--ib-primary)!important;box-shadow:none!important}.live-wall-kpi:last-child{border-right:0!important}.live-wall-kpi:after{display:none!important}.live-wall-kpi span{font:600 9px "IBM Plex Mono",monospace!important;letter-spacing:.09em!important;color:var(--ib-muted)!important}.live-wall-kpi strong{margin:8px 0 3px!important;font:600 28px/1 "Space Grotesk",sans-serif!important;color:var(--ib-primary)!important}.live-wall-kpi small{font:11px "IBM Plex Sans",sans-serif!important;color:var(--ib-muted)!important}.live-product-row{padding:16px!important;border:1px solid var(--ib-border)!important;border-radius:var(--ib-radius)!important;background:#fff!important;box-shadow:var(--ib-shadow)!important}.live-product-row:before{width:3px!important;background:var(--ib-accent)!important}.live-product-head strong{font:600 20px "Space Grotesk",sans-serif!important;color:var(--ib-primary)!important}.live-product-head span{font:11px "IBM Plex Mono",monospace!important;color:var(--ib-muted)!important}.live-product-meta>b{padding:8px 10px!important;border-radius:3px!important;background:var(--ib-primary)!important;font:600 12px "IBM Plex Mono",monospace!important}
