/* SwineSync C47 — bottom tab bar, Operations sheet, calmer one-colour dashboard. */
:root{--c47-green:#0b6b3a;--c47-green-dark:#075229;--c47-soft:#e6f4ec;--c47-ink:#17231c;--c47-muted:#5b6b61}

/* ---- bottom tab bar (phones) ---- */
.ss-tabbar{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:60;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:6px;background:#fff;border:1px solid #dbe3da;border-radius:22px;box-shadow:0 6px 24px rgba(7,40,22,.16)}
.ss-tabbar button{all:unset;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;border-radius:16px;cursor:pointer;color:var(--c47-muted);-webkit-tap-highlight-color:transparent}
.ss-tabbar button:focus-visible{outline:2px solid var(--c47-green);outline-offset:1px}
.ss-tab-ico{font-size:21px;line-height:1}
.ss-tab-lbl{font-size:11px;font-weight:700;letter-spacing:.01em}
.ss-tabbar button.on{background:var(--c47-soft);color:var(--c47-green)}
body.ss-has-tabs .web-page-content,body.ss-has-tabs .web-workspace{padding-bottom:110px}
body.ss-has-tabs .fab,body.ss-has-tabs #fab{bottom:calc(86px + env(safe-area-inset-bottom))!important}
@media (min-width:900px){.ss-tabbar,.ss-ops{display:none!important}}

/* ---- Operations sheet ---- */
.ss-ops{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-end}
.ss-ops-back{position:absolute;inset:0;background:rgba(5,25,15,.5)}
.ss-ops-box{position:relative;width:100%;background:#fff;border-radius:24px 24px 0 0;padding:18px 16px calc(96px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px rgba(0,0,0,.18)}
.ss-ops-box h2{margin:0 0 12px;font-size:20px;color:var(--c47-green-dark)}
.ss-ops-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ss-ops-card{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;min-height:96px;padding:14px;border:1px solid #dbe3da;border-radius:16px;background:#f7faf7;font-weight:700;color:var(--c47-ink);cursor:pointer}
.ss-ops-card:focus-visible{outline:2px solid var(--c47-green)}
.ss-ops-ico{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--c47-soft);font-size:22px}

/* ---- dashboard: one colour, shorter ---- */
body[data-page-key="dashboard"] .v19-stage-card,body[data-page-key="dashboard"] .v19-repro-card,
.v19-stage-card,.v19-repro-card{border-left:4px solid var(--c47-green)!important;border-top-color:#dbe3da!important}
.v19-stage-card .v19-stage-icon,.v19-repro-card .v19-repro-icon{background:var(--c47-soft)!important;color:var(--c47-green)!important}
.v19-stage-card b,.v19-repro-card b,.v19-stage-card .v,.v19-repro-card .v{color:var(--c47-green-dark)!important}
@media (max-width:899px){
  .v19-farm-scene,.v18-pig-badge{display:none!important}
  .v19-dashboard-hero{min-height:0!important;padding:14px 16px!important}
  .ss-chart{display:none!important}
  .v19-stage-card,.v19-repro-card{min-height:58px!important;padding:8px 10px!important}
  .v19-stage-card b,.v19-repro-card b{font-size:18px!important}
  .v19-stage-icon,.v19-repro-icon{width:30px!important;height:30px!important;font-size:16px!important}
}
@media (prefers-reduced-motion:reduce){.ss-tabbar *{transition:none!important}}

/* one colour everywhere on the dashboard and in the menu */
.ss-kpi,.ss-kpi[data-k]{--kc:#0b6b3a!important}
.v19-stage-grid>*:is(b,strong),.v19-stage-grid>* :is(b,strong),.v19-repro-grid>* b{color:var(--c47-green-dark)!important}
.v19-stage-grid>* .v19-stage-icon,.v19-repro-grid>* .v19-repro-icon{background:var(--c47-soft)!important;color:var(--c47-green)!important}
#nav details[data-v18-group]{--gc:#0b6b3a!important}
#nav details[data-v18-group] .nav-items button.current,details[data-v18-group] .nav-items button.current{background:#e4f2ea!important;color:#0b6b3a!important}
.ss-bars .l i,.ss-bars i,.ss-donut{filter:none}

/* ---- B123: solid green tab bar with line icons ---- */
.ss-tabbar{background:#0b6b3a!important;border:0!important;border-radius:24px!important;padding:7px!important;box-shadow:0 8px 26px rgba(5,60,32,.38)!important;gap:3px!important}
.ss-tabbar button{color:rgba(255,255,255,.78)!important;min-height:56px;gap:3px!important;border-radius:18px!important}
.ss-tabbar button.on{background:#fff!important;color:#0b6b3a!important;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.ss-tab-ico{display:grid;place-items:center;width:26px;height:26px}
.ss-tab-ico svg{width:24px;height:24px}
.ss-tab-lbl{font-size:11px!important}
.ss-ops-ico{background:#0b6b3a!important;color:#fff!important;border-radius:14px!important}
.ss-ops-ico svg{width:24px;height:24px}
.ss-ops-card{background:#fff!important;border:1.5px solid #cfe0d5!important;border-left:5px solid #0b6b3a!important}
.ss-ops-box h2{font-size:21px}
.ss-tabbar{left:8px!important;right:8px!important;padding:6px 4px!important;gap:1px!important}
.ss-tab-lbl{font-size:10px!important;letter-spacing:-.1px!important;white-space:nowrap}
.ss-tabbar button{padding:0 2px!important;min-width:0}

/* ---- B125: Operations is a real page (grouped), not a pop-up ---- */
.ss-ops{display:none!important}
.ss-opspage{position:fixed;left:0;right:0;bottom:0;z-index:55;overflow:auto;-webkit-overflow-scrolling:touch;background:#eef5f0;padding:14px 14px calc(120px + env(safe-area-inset-bottom))}
.ss-opspage>h1{margin:2px 0 12px;font-size:22px;color:#0b6b3a}
.ss-opsgroup{margin:0 0 16px}
.ss-opsgroup h2{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:15px;font-weight:800;color:#0b6b3a;letter-spacing:.2px}
.ss-opsgi{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#0b6b3a;color:#fff}
.ss-opsgi svg{width:18px;height:18px}
.ss-opslist{display:flex;flex-direction:column;gap:8px}
.ss-opsrow{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;min-height:56px;padding:9px 12px;background:#fff;border:1px solid #dfe8e2;border-left:5px solid #0b6b3a;border-radius:16px;box-shadow:0 1px 3px rgba(7,40,22,.07);cursor:pointer;-webkit-tap-highlight-color:transparent}
.ss-opsrow:active{background:#e8f4ed}
.ss-opsrow:focus-visible{outline:2px solid #0b6b3a}
.ss-opsico{flex:0 0 40px;height:40px;border-radius:12px;background:#e1f1e8;border:1px solid #c7dfd0;display:grid;place-items:center;color:#0b6b3a}
.ss-opsico svg{width:22px;height:22px}
.ss-opstxt{flex:1;font-weight:700;font-size:16px;color:#17231c}
.ss-opschev{color:#0b6b3a;font-size:22px;font-weight:700}
.v18-hub-icon{color:#0b6b3a}
.v18-hub-icon svg{width:22px;height:22px}
.ss-modicon svg{width:22px;height:22px;color:#0b6b3a;vertical-align:middle}
/* B126 - pig emoji icons everywhere + compact Operations grid */
.ss-e{display:inline-block;line-height:1;font-style:normal}
.ss-e2{position:relative;display:inline-block;line-height:1}
.ss-e2 .m{display:inline-block}
.ss-e2 .b{position:absolute;right:-.42em;bottom:-.3em;font-size:.58em;line-height:1;background:#fff;border-radius:50%;padding:.08em;box-shadow:0 0 0 1px rgba(11,107,58,.25)}
.ss-e2.fat .m{transform:scale(1.28,1.05);transform-origin:50% 60%;margin:0 .1em}
.ss-tab-ico{font-size:24px;line-height:1;width:30px;height:28px}
.ss-opsico{flex:none;display:grid;place-items:center;font-size:28px;line-height:1;height:38px;width:100%;background:none!important;border:0!important}
.ss-opsgi{font-size:17px;background:#e1f1e8!important}
.ss-opsgrid{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:6px}
.ss-opstile{all:unset;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:78px;padding:8px 2px 6px;background:#fff;border:1px solid #cfe0d5;border-bottom:3px solid #0b6b3a;border-radius:14px;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ss-opstile:active{background:#e3f2e9}
.ss-opstile:focus-visible{outline:2px solid #0b6b3a}
.ss-opstile .ss-opstxt{flex:none;width:100%;font-size:10.5px;line-height:1.15;font-weight:700;color:#17231c;overflow-wrap:anywhere}
.ss-opsgroup{margin:0 0 12px}
.ss-opspage>h1{margin:0 0 8px}
.ss-opsgroup h2{margin:0 0 6px}
.ss-modicon{font-size:22px}
.v18-hub-icon.c47-emo{font-size:24px}
.v19-stage-icon.c47-stg,.v19-repro-icon.c47-stg{font-size:24px;line-height:1;display:grid;place-items:center}
.c47-tlogo{width:28px;height:28px;border-radius:8px;object-fit:cover;vertical-align:middle;border:1.5px solid #0b6b3a;background:#fff}
.v19-title-icon .c47-tlogo{display:block}
.ss-opspage{padding-top:10px}
.ss-opstile{min-height:68px;padding:6px 2px 5px}
.ss-opsico{font-size:26px;height:34px}
.ss-opsgroup{margin:0 0 8px}
.c47-tlogo,.v19-title-icon .c47-tlogo{width:32px;height:32px}
.v19-stage-icon.c47-stg,.v19-repro-icon.c47-stg,.ss-kpi .c47-stg{font-size:27px!important;width:46px!important;height:46px!important;flex:0 0 46px!important}
.c47-stg .ss-e,.c47-stg .ss-e2{font-size:27px}
.c47-stg .ss-e2 .b{font-size:.55em}
.ss-e,.ss-e2,.ss-e2 .m{font-size:inherit!important;color:inherit!important;font-weight:400!important}
.ss-e2 .b{font-size:.55em!important;font-weight:400!important}
.ss-e2{display:inline-block!important;width:auto!important;height:auto!important}
/* B127 - Operations as colour cards (PoultryWinner style) */
.ss-opscards{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:6px 0 0}
.ss-opscard{all:unset;box-sizing:border-box;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:4px;min-height:158px;padding:14px 14px 12px;border-radius:22px;border:1.5px solid var(--cb);background:linear-gradient(135deg,var(--c1),#fff 75%);box-shadow:0 4px 14px rgba(20,60,40,.08);cursor:pointer;-webkit-tap-highlight-color:transparent}
.ss-opscard::after{content:"";position:absolute;right:-26px;bottom:-30px;width:96px;height:96px;border-radius:50%;background:var(--c1);opacity:.9}
.ss-opscard:active{transform:scale(.98)}
.ss-opscard:focus-visible{outline:2px solid #0b6b3a}
.ss-opscico{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:var(--c1);box-shadow:0 3px 8px rgba(0,0,0,.08);font-size:30px;line-height:1;margin-bottom:auto}
.ss-opscard b{position:relative;z-index:1;font-size:17px;font-weight:800;color:#17231c;margin-top:10px}
.ss-opscard small{position:relative;z-index:1;font-size:12.5px;line-height:1.3;color:#5b6b61;max-width:92%}
.ss-opscard.g-breeding{--c1:#ffe6ef;--cb:#f6c3d4}
.ss-opscard.g-health{--c1:#e3efff;--cb:#bcd5f5}
.ss-opscard.g-growth{--c1:#ece6ff;--cb:#cfc3f2}
.ss-opscard.g-feeding{--c1:#fff0d9;--cb:#f2d6a6}
.ss-opscard.g-finance{--c1:#dff5e8;--cb:#b3e0c6}
