:root {
  --ink: #17211e;
  --muted: #68736f;
  --paper: #f5f3ed;
  --panel: #fffefa;
  --forest: #173f35;
  --forest-2: #245a4b;
  --lime: #c8ef74;
  --lime-dark: #84a83d;
  --amber: #e89a3d;
  --red: #c9503f;
  --line: #dcded7;
  --shadow: 0 18px 50px rgba(29, 47, 41, 0.09);
  --radius: 18px;
}

* { box-sizing: border-box; }
body { margin: 0; font-family: "DM Sans", sans-serif; color: var(--ink); background: var(--paper); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }
.eyebrow { color: var(--forest-2); font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.muted { color: var(--muted); }

.landing { min-height: 100vh; background: radial-gradient(circle at 82% 8%, #dcedb8 0, transparent 30%), var(--paper); }
.join-card { width:min(560px,calc(100% - 32px)); margin:70px auto; padding:38px; text-align:center; }
.join-card .template-icon { margin:0 auto 18px; }
.join-card h1 { font:800 31px Manrope; margin:10px 0; }
.join-card p { line-height:1.6; margin-bottom:24px; }
.dsj-mark { width:42px; font-size:10px; letter-spacing:.02em; }
.back-to-site { display:block; margin-top:18px; color:var(--muted); font-size:12px; font-weight:700; }
.product-name { display:block; color:#9eb0aa; font:600 10px "DM Sans",sans-serif; letter-spacing:.08em; text-transform:uppercase; margin-top:2px; }
.landing-nav { max-width: 1180px; margin: auto; padding: 24px; display: flex; align-items: center; justify-content: space-between; }
.brand { display: flex; gap: 11px; align-items: center; font-family: Manrope, sans-serif; font-weight: 800; font-size: 20px; }
.brand-mark { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: var(--forest); color: var(--lime); }
.nav-actions { display: flex; gap: 10px; }
.btn { border: 0; padding: 11px 16px; border-radius: 10px; font-weight: 700; transition: transform .15s, background .15s; }
.btn:hover { transform: translateY(-1px); }
.btn-primary { color: white; background: var(--forest); }
.btn-primary:hover { background: var(--forest-2); }
.btn-secondary { color: var(--forest); background: white; border: 1px solid var(--line); }
.btn-danger { color:#9e3f32; background:#fff; border:1px solid #e8bbb4; }
.btn:disabled { opacity:.45; cursor:not-allowed; transform:none; }
.btn-lime { color: #18332b; background: var(--lime); }
.btn-small { padding: 8px 11px; font-size: 13px; }
.hero { max-width: 1180px; margin: 0 auto; padding: 88px 24px 52px; display: grid; grid-template-columns: 1.05fr .95fr; gap: 70px; align-items: center; }
.hero h1 { font: 800 clamp(46px, 6vw, 76px)/.98 Manrope, sans-serif; letter-spacing: -.055em; margin: 18px 0 24px; }
.hero h1 span { color: var(--forest-2); }
.hero-copy { font-size: 20px; line-height: 1.55; max-width: 590px; color: #53605b; }
.hero-actions { display: flex; gap: 12px; margin-top: 30px; }
.hero-note { margin-top: 18px; font-size: 13px; color: var(--muted); }
.preview { background: var(--forest); padding: 18px; border-radius: 26px; box-shadow: 0 36px 80px rgba(18, 52, 43, .22); transform: rotate(1.5deg); }
.preview-inner { background: #f9faf5; border-radius: 15px; padding: 22px; }
.preview-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 22px; }
.live-pill { background: #e7f6c9; color: #42641e; padding: 7px 10px; border-radius: 999px; font-size: 11px; font-weight: 800; }
.ring-row { display: grid; grid-template-columns: 118px 1fr; gap: 20px; align-items: center; }
.ring { width: 118px; height: 118px; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--lime-dark) 0 82%, #e1e6dc 82%); position: relative; }
.ring::before { content: ""; position: absolute; inset: 12px; background: #f9faf5; border-radius: 50%; }
.ring strong { z-index: 1; font: 800 28px Manrope; }
.mini-task { display: flex; align-items: center; gap: 10px; padding: 11px 0; border-bottom: 1px solid #e3e5de; font-size: 13px; }
.mini-check { width: 19px; height: 19px; border-radius: 6px; display: grid; place-items: center; background: var(--forest); color: white; }
.mini-check.open { background: white; border: 1px solid #cfd4cc; color: transparent; }
.logo-strip { max-width: 1180px; margin: 35px auto 0; padding: 25px 24px 70px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; color: #7c8582; font-weight: 700; }

.app-shell { display: grid; grid-template-columns: 248px minmax(0,1fr); min-height: 100vh; }
.sidebar { background: #11251f; color: white; padding: 24px 18px; display: flex; flex-direction: column; position: sticky; top: 0; height: 100vh; }
.sidebar .brand { padding: 0 8px 28px; }
.sidebar .brand-mark { background: var(--lime); color: var(--forest); }
.workspace-select { border: 1px solid #345048; background: #1b332c; border-radius: 12px; padding: 12px; margin-bottom: 25px; }
.workspace-select small { display:block; color:#9eb0aa; margin-bottom:4px; }
.workspace-select strong { font-size: 14px; }
.nav-link { display: flex; gap: 12px; align-items: center; width: 100%; padding: 11px 12px; margin: 2px 0; border: 0; border-radius: 9px; background: transparent; color: #aebdb8; text-align: left; font-weight: 600; }
.nav-link.active, .nav-link:hover { background: #243e36; color: white; }
.nav-icon { width: 20px; text-align:center; }
.sidebar-bottom { margin-top: auto; }
.plan-card { padding: 14px; background: #203a32; border-radius: 12px; margin-bottom: 15px; }
.plan-card .bar { height: 5px; background: #3d574f; border-radius: 5px; margin: 11px 0 8px; overflow: hidden; }
.plan-card .bar span { display:block; width:52%; height:100%; background:var(--lime); }
.plan-card small { color:#b6c4bf; }
.user-row { display:flex; gap:10px; align-items:center; padding:10px 8px; }
.avatar { width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:#d9edaa; color:var(--forest); font-weight:800; font-size:12px; }
.user-row small { display:block; color:#aebdb8; }
.main { min-width: 0; }
.topbar { height: 72px; padding: 0 34px; display:flex; align-items:center; justify-content:space-between; background:rgba(245,243,237,.86); backdrop-filter: blur(12px); position:sticky; top:0; z-index:10; border-bottom:1px solid rgba(210,213,204,.7); }
.topbar h2 { font: 800 21px Manrope; margin:0; }
.top-actions { display:flex; gap:10px; align-items:center; }
.sync { font-size:12px; color:#5f6c67; display:flex; align-items:center; gap:7px; }
.sync-dot { width:8px; height:8px; border-radius:50%; background:#70a234; box-shadow:0 0 0 3px #deebca; }
.content { padding: 30px 34px 60px; max-width: 1500px; margin:auto; }
.welcome { display:flex; justify-content:space-between; align-items:end; margin-bottom:26px; }
.welcome h1 { font:800 32px Manrope; letter-spacing:-.03em; margin:4px 0; }
.welcome p { margin:0; color:var(--muted); }
.stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:24px; }
.card { background:var(--panel); border:1px solid #e0e1dc; border-radius:var(--radius); box-shadow:0 3px 8px rgba(24,35,31,.025); }
.stat { padding:18px; }
.stat-top { display:flex; justify-content:space-between; color:var(--muted); font-size:13px; }
.stat-value { font:800 29px Manrope; margin-top:10px; }
.trend { color:#628528; font-size:12px; }
.dashboard-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.7fr); gap:18px; }
.card-head { padding:19px 20px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #e9e9e4; }
.card-head h3 { margin:0; font:800 16px Manrope; }
.production-list { padding:5px 20px 12px; }
.production { display:grid; grid-template-columns:minmax(190px,1fr) 130px 115px 90px; gap:15px; align-items:center; padding:18px 0; border-bottom:1px solid #e8e8e3; cursor:pointer; }
.production:last-child { border-bottom:0; }
.production:hover .prod-title { color:var(--forest-2); }
.prod-title { font-weight:800; }
.prod-meta { font-size:12px; color:var(--muted); margin-top:4px; }
.progress { height:7px; background:#e4e7e0; border-radius:10px; overflow:hidden; }
.progress span { display:block; height:100%; background:var(--forest-2); border-radius:10px; }
.status { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:6px 9px; font-size:11px; font-weight:800; width:max-content; }
.status.ready { background:#e8f3d5; color:#507326; }
.status.risk { background:#fff0d9; color:#9b641e; }
.status.blocked { background:#f9e0dc; color:#9e3f32; }
.activity-list { padding:8px 19px; }
.activity { display:grid; grid-template-columns:32px 1fr; gap:10px; padding:12px 0; border-bottom:1px solid #e8e8e3; }
.activity:last-child { border:0; }
.activity p { margin:0; font-size:13px; line-height:1.45; }
.activity time { display:block; font-size:11px; color:var(--muted); margin-top:3px; }
.notice { margin-top:18px; padding:16px; border-radius:13px; background:#fff2df; border:1px solid #f2d4a9; }
.notice strong { display:block; font-size:13px; }
.notice p { margin:5px 0 0; font-size:12px; color:#75644e; }

.production-header { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:20px; }
.header-actions,.pilot-actions { display:flex; gap:9px; flex-wrap:wrap; }
.pilot-actions { justify-content:flex-end; margin-top:16px; }
.production-header h1 { font:800 31px Manrope; margin:6px 0; }
.back { border:0; background:none; padding:0; color:var(--forest-2); font-weight:700; }
.readiness-card { display:grid; grid-template-columns:160px 1fr; padding:24px; gap:28px; align-items:center; margin-bottom:18px; }
.big-ring { width:140px; height:140px; }
.readiness-card h2 { font:800 22px Manrope; margin:0 0 8px; }
.readiness-meta { display:flex; gap:26px; margin-top:20px; }
.readiness-meta strong { font:800 20px Manrope; display:block; }
.readiness-meta small { color:var(--muted); }
.filter-row { display:flex; gap:8px; flex-wrap:wrap; padding:14px 18px; border-bottom:1px solid #e6e7e1; }
.filter { border:1px solid var(--line); border-radius:999px; padding:7px 11px; background:white; color:#606b67; font-size:12px; font-weight:700; }
.filter.active { background:var(--forest); color:white; border-color:var(--forest); }
.department { padding:0 20px; }
.dept-head { display:flex; align-items:center; justify-content:space-between; padding:19px 0 10px; }
.dept-head h3 { font:800 15px Manrope; margin:0; }
.task { display:grid; grid-template-columns:34px minmax(180px,1fr) 135px 110px 90px 76px; gap:10px; align-items:center; padding:13px 0; border-top:1px solid #ebebe7; }
.check { width:25px; height:25px; border:1px solid #cbd0c8; border-radius:7px; background:white; color:white; display:grid; place-items:center; padding:0; }
.check.done { background:var(--forest); border-color:var(--forest); }
.task-name { font-weight:700; font-size:14px; }
.critical { color:var(--red); margin-left:5px; }
.task-note { font-size:11px; color:var(--muted); margin-top:3px; }
.assignee { display:flex; gap:7px; align-items:center; font-size:12px; }
.assignee .avatar { width:25px; height:25px; font-size:9px; }
.stage { color:var(--muted); font-size:12px; }
.task-select { border:1px solid var(--line); background:white; border-radius:8px; padding:6px; font-size:11px; max-width:100%; }
.evidence-button { border:0; background:transparent; color:var(--forest-2); padding:5px 0; font-size:11px; font-weight:800; }
.gate-button { margin-top:18px; }
.approval-line { margin-top:12px; font-size:12px; color:#56772e; font-weight:700; }
.sync-pending .sync-dot { background:var(--amber); box-shadow:0 0 0 3px #f6e6ca; }
.department-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-bottom:18px; }
.department-card { display:flex; justify-content:space-between; gap:10px; padding:14px; border:1px solid #dfe4da; border-radius:12px; background:#f9fbf5; }
.department-card div { display:flex; flex-direction:column; gap:3px; }
.department-card small,.department-card span { color:var(--muted); font-size:11px; }
.department-card span { font-weight:800; }
.department-card.needs-attention { border-color:#eac48e; background:#fff8ea; }
.status-missing { background:#fffaf4; }
.assignee-button { border:0; background:transparent; padding:0; text-align:left; color:var(--ink); }
.permission-pill { text-transform:capitalize; font-weight:800; color:var(--forest-2); }
.access-guide { margin-top:14px; padding:14px; border:1px solid var(--line); border-radius:12px; color:var(--muted); font-size:12px; }
.report-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.report-row { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; padding:15px 20px; border-top:1px solid var(--line); }
.report-row small { display:block; color:var(--muted); margin-top:3px; }
.feedback-row { padding:16px 20px; border-top:1px solid var(--line); }
.feedback-row strong { color:#8a6c1d; letter-spacing:.08em; }
.feedback-row p { margin:7px 0; font-size:13px; }
.feedback-row small { color:var(--muted); }

.empty-page { padding:60px; text-align:center; }
.empty-icon { width:60px; height:60px; background:#e7eedf; border-radius:18px; display:grid; place-items:center; font-size:27px; margin:0 auto 18px; }
.modal-backdrop { position:fixed; inset:0; background:rgba(12,26,22,.58); display:grid; place-items:center; padding:20px; z-index:30; }
.modal { width:min(560px,100%); background:var(--panel); border-radius:20px; box-shadow:var(--shadow); overflow:hidden; }
.modal-head { padding:20px 22px; display:flex; justify-content:space-between; border-bottom:1px solid var(--line); }
.modal-head h3 { margin:0; font:800 18px Manrope; }
.close { border:0; background:none; font-size:22px; }
.form { padding:22px; }
.field { margin-bottom:16px; }
.field label { display:block; font-size:12px; font-weight:800; margin-bottom:7px; }
.field input, .field select, .field textarea { width:100%; border:1px solid #cfd3cc; border-radius:9px; padding:11px; background:white; }
.form-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:20px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 14px; }
.checkbox-field { display:flex; gap:8px; align-items:center; font-size:13px; font-weight:700; }
.assignment-edit { display:grid; grid-template-columns:1fr 1.2fr auto; gap:10px; align-items:center; padding:11px 0; border-top:1px solid var(--line); }
.assignment-edit select { width:100%; border:1px solid #cfd3cc; border-radius:9px; padding:9px; background:white; }
.assignment-edit label { font-size:11px; color:var(--muted); }
.toast { position:fixed; right:24px; bottom:24px; background:#173f35; color:white; padding:13px 17px; border-radius:10px; box-shadow:var(--shadow); opacity:0; transform:translateY(10px); pointer-events:none; transition:.2s; z-index:50; }
.toast.show { opacity:1; transform:none; }
.mobile-menu { display:none; }
.top-title { display:flex; gap:12px; align-items:center; }
.page-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:24px; }
.page-heading h1 { font:800 32px Manrope; letter-spacing:-.03em; margin:5px 0; }
.page-heading p { margin:0; }
.tile-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.feature-tile { padding:22px; }
.feature-tile h3 { font:800 18px Manrope; margin:16px 0 7px; }
.feature-tile p { color:var(--muted); font-size:13px; }
.feature-tile footer { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); margin-top:20px; padding-top:16px; color:var(--muted); }
.card-actions { display:flex; gap:6px; }
.template-icon { width:44px; height:44px; border-radius:12px; display:grid; place-items:center; color:var(--forest); background:#e7eedf; font-size:21px; }
.gate-list { display:flex; flex-wrap:wrap; gap:6px; margin-top:16px; }
.gate-list span { padding:6px 8px; border-radius:7px; background:#eff2eb; color:#55635e; font-size:11px; font-weight:700; }
.table-card { overflow:hidden; }
.table-row { display:grid; grid-template-columns:1.6fr 1fr 1fr .65fr; gap:18px; align-items:center; padding:16px 20px; border-top:1px solid #e8e8e3; font-size:13px; }
.table-row:first-child { border-top:0; }
.table-head { background:#f1f2ed; color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.person { display:flex; gap:10px; align-items:center; }
.person strong,.person small { display:block; }
.person small { color:var(--muted); margin-top:2px; }
.insight-card { padding:24px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.insight-card h2 { font:800 21px Manrope; margin:7px 0; }
.settings-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.settings-card { padding:24px; }
.settings-card h3 { margin:0 0 8px; font:800 18px Manrope; }
.settings-card .btn { margin-top:12px; }
.library-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.library-list { padding:5px 18px 12px; }
.library-row,.checklist-library-row { width:100%; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 2px; text-align:left; }
.library-row > button:first-child,.checklist-library-row > button:first-child { flex:1; border:0; background:transparent; color:inherit; text-align:left; padding:4px 0; }
.library-row:last-child,.checklist-library-row:last-child { border-bottom:0; }
.library-row:hover,.checklist-library-row:hover { color:var(--forest-2); }
.library-row strong,.library-row small,.checklist-library-row strong,.checklist-library-row small { display:block; }
.library-row small,.checklist-library-row small { color:var(--muted); margin-top:3px; }
.library-row.archived,.checklist-library-row.archived { opacity:.55; }
.row-action { border:0; background:#eef1eb; color:var(--forest); border-radius:7px; padding:6px 9px; }
.count { color:var(--muted); font-size:11px; margin-left:4px; }
.empty-mini { padding:18px; text-align:center; color:var(--muted); font-size:12px; }
.library-toolbar { display:grid; grid-template-columns:1fr 220px auto; gap:12px; align-items:center; padding:14px; margin-bottom:16px; }
.library-toolbar input,.library-toolbar select { width:100%; border:1px solid var(--line); border-radius:9px; background:white; padding:10px; }
.library-toolbar label { display:flex; gap:7px; align-items:center; font-size:12px; white-space:nowrap; }
.checklist-library { overflow:hidden; }
.library-department { padding:8px 20px 16px; border-top:1px solid var(--line); }
.library-department h4 { margin:12px 0 2px; font:800 14px Manrope; }
.library-department h4 span { margin-left:6px; padding:3px 7px; border-radius:99px; background:#e8ede5; color:var(--muted); font-size:10px; }
.template-order,.template-available { max-height:245px; overflow:auto; border:1px solid var(--line); border-radius:10px; }
.template-order-row,.template-available > button { display:grid; grid-template-columns:auto 1fr auto; gap:9px; align-items:center; width:100%; padding:10px; border:0; border-bottom:1px solid var(--line); background:white; text-align:left; }
.template-order-row:last-child,.template-available > button:last-child { border-bottom:0; }
.template-order-row.dragging { opacity:.4; background:#eef5df; }
.template-order-row strong,.template-order-row small,.template-available strong,.template-available small { display:block; }
.template-order-row small,.template-available small { color:var(--muted); margin-top:2px; }
.template-order-row button { border:0; background:#eef1eb; border-radius:6px; margin-left:3px; }
.drag-handle { color:var(--muted); cursor:grab; }
.catalog-controls { display:flex; align-items:center; justify-content:flex-end; gap:8px; margin-top:18px; padding-top:14px; border-top:1px solid var(--line); }
.catalog-controls span { margin-right:auto; color:var(--muted); font-size:11px; }
.import-example { display:block; padding:9px; background:#eef1eb; border-radius:7px; margin-bottom:14px; font-size:11px; overflow:auto; }
.field-help { color:var(--muted); font-size:11px; line-height:1.5; }
.equipment-library { margin-top:16px; }
.template-equipment { max-height:220px; overflow:auto; border:1px solid var(--line); border-radius:10px; padding:8px 12px; }
.template-equipment label { display:grid; grid-template-columns:auto 1fr; gap:5px 8px; padding:8px 0; border-bottom:1px solid var(--line); font-size:12px; }
.template-equipment label:last-child { border-bottom:0; }
.template-equipment small { grid-column:2; color:var(--muted); }
.production-equipment { margin-top:18px; overflow:hidden; }
.equipment-summary { font-size:12px; color:var(--muted); font-weight:800; }
.equipment-table { padding:0 20px 12px; }
.equipment-row { display:grid; grid-template-columns:minmax(220px,1fr) 90px 90px 90px; gap:12px; align-items:center; min-height:58px; border-bottom:1px solid var(--line); }
.equipment-row:last-child { border-bottom:0; }
.equipment-row strong,.equipment-row small { display:block; }
.equipment-row small { color:var(--muted); margin-top:3px; }
.equipment-head { min-height:42px; color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; }
.phase-check { width:30px; height:30px; justify-self:center; border:1px solid #cbd0c8; border-radius:8px; background:white; color:transparent; }
.phase-check.done { background:var(--forest); border-color:var(--forest); color:white; }

@media (max-width: 1000px) {
  .hero { grid-template-columns:1fr; padding-top:55px; }
  .preview { max-width:600px; }
  .stat-grid { grid-template-columns:repeat(2,1fr); }
  .dashboard-grid { grid-template-columns:1fr; }
  .tile-grid { grid-template-columns:1fr 1fr; }
  .department-grid { grid-template-columns:1fr 1fr; }
  .production { grid-template-columns:minmax(180px,1fr) 120px 90px; }
  .production .hide-tablet { display:none; }
  .task { grid-template-columns:34px minmax(160px,1fr) 120px 90px 70px; }
  .task .stage { display:none; }
}
@media (max-width: 720px) {
  .app-shell { grid-template-columns:1fr; }
  .sidebar { position:fixed; inset:0 20% 0 0; z-index:25; transform:translateX(-105%); transition:.2s; }
  .sidebar.open { transform:none; }
  .mobile-menu { display:block; border:0; background:none; font-size:21px; }
  .topbar { padding:0 18px; }
  .content { padding:22px 16px 50px; }
  .stat-grid { grid-template-columns:1fr 1fr; }
  .welcome { align-items:flex-start; gap:18px; }
  .welcome h1 { font-size:26px; }
  .production { grid-template-columns:1fr 75px; }
  .production .progress-cell, .production .hide-mobile { display:none; }
  .readiness-card { grid-template-columns:1fr; }
  .task { grid-template-columns:32px minmax(140px,1fr) 82px 62px; }
  .task .assignee { display:none; }
  .task .stage { display:none; }
  .hero { padding:45px 20px; }
  .hero h1 { font-size:47px; }
  .hero-actions { flex-direction:column; }
  .logo-strip { gap:20px; overflow:auto; }
  .landing-nav .btn-secondary { display:none; }
  .page-heading { align-items:flex-start; flex-direction:column; }
  .tile-grid,.settings-grid { grid-template-columns:1fr; }
  .library-grid { grid-template-columns:1fr; }
  .library-toolbar { grid-template-columns:1fr; }
  .equipment-row { grid-template-columns:minmax(150px,1fr) 54px 54px 54px; gap:5px; }
  .equipment-head { font-size:9px; }
  .table-row { grid-template-columns:1.5fr 1fr; }
  .table-row > :nth-child(3),.table-row > :nth-child(4) { display:none; }
  .insight-card { align-items:flex-start; flex-direction:column; }
  .production-header { flex-direction:column; gap:14px; }
  .department-grid,.report-grid,.form-grid { grid-template-columns:1fr; }
  .assignment-edit { grid-template-columns:1fr; }
}
