/* PlantMaster Pro v4.5 — unified professional interface */
:root{--brand-primary:#0ea5e9;--brand-secondary:#22d3ee;--pm-bg:#050b14;--pm-panel:#0a1625;--pm-panel-2:#0f2137;--pm-panel-3:#132a45;--pm-line:#294766;--pm-text:#edf6ff;--pm-muted:#93a9c2;--pm-header:#061426;--pm-danger:#ef476f;--pm-warn:#f4b942;--pm-ok:#21c58b;--pm-radius:16px;--pm-shadow:0 14px 40px rgba(0,0,0,.28)}
html{background:var(--pm-bg);color-scheme:dark}body{min-height:100dvh;background-color:var(--pm-bg)!important;background-attachment:fixed;color:var(--pm-text);font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.005em}button,input,select,textarea{border-color:var(--pm-line);background:#071321;color:var(--pm-text);border-radius:12px}button{transition:transform .15s,border-color .15s,background .15s,opacity .15s}button:hover{border-color:color-mix(in srgb,var(--brand-primary) 75%,white)}button:active{transform:scale(.975)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-primary) 35%,transparent);outline-offset:1px}
header{height:68px;min-height:68px!important;grid-template-columns:46px minmax(0,1fr) auto auto!important;gap:12px!important;padding:9px 18px!important;background:color-mix(in srgb,var(--pm-header) 94%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--brand-primary) 30%,var(--pm-line));box-shadow:0 7px 24px rgba(0,0,0,.32);backdrop-filter:blur(18px)}#menu{border-color:#315373;background:#0b1c30;font-size:20px}.brand-block{gap:11px}.brand-block img{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--brand-primary) 55%,white);border-radius:12px}.brand-block #brand{display:block;font-size:16px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-block #plantLabel{margin-top:3px;font-size:11px;color:var(--pm-muted);letter-spacing:.06em;text-transform:uppercase}#sync{position:static!important;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;border:1px solid #1f6f59;border-radius:999px;background:#08251e;color:#55e5b3!important;font-size:11px!important;font-weight:750;white-space:nowrap}#logout{grid-column:auto!important;width:auto!important;margin:0!important;padding:7px 12px!important;background:#0b1c30!important;border-color:#315373!important;font-size:12px}
aside{top:68px;width:250px;padding:14px 10px;background:#06111f;border-color:#203954;overflow-y:auto}aside nav{gap:4px}aside nav button{min-height:44px;padding:9px 12px;border-color:transparent;background:transparent;color:#bdd0e5;font-size:13px}aside nav button:hover{background:#0d2137}aside nav button.active{color:white;background:linear-gradient(90deg,color-mix(in srgb,var(--brand-primary) 30%,#0b1b31),#0b1b31);border-color:color-mix(in srgb,var(--brand-primary) 55%,#29405f);box-shadow:inset 3px 0 var(--brand-primary)}main{margin-left:250px;max-width:1600px;padding:22px 24px 120px}
#toolbar{margin-bottom:20px}#toolbar:not(:has(.module-toolbar)){display:flex;gap:9px}#toolbar:not(:has(.module-toolbar)) #search{height:48px;padding:0 15px;background:#081727;border-color:#294969}#toolbar:not(:has(.module-toolbar)) #add{height:48px;padding:0 17px;white-space:nowrap}#toolbar:has(.module-toolbar){top:68px;margin:-22px -24px 22px;padding:10px 24px;background:rgba(5,14,25,.9);border-color:#213b57}.module-toolbar{max-width:1350px}.search-wrap{height:44px;background:#081727}.search-wrap input{height:42px}.toolbar-actions button{height:44px}
h1{margin:0;font-size:clamp(25px,3vw,38px);line-height:1.15;letter-spacing:-.025em;background:linear-gradient(95deg,var(--pm-text),color-mix(in srgb,var(--brand-secondary) 75%,white));-webkit-background-clip:text;background-clip:text;color:transparent}.module-head{align-items:center;margin:4px 0 20px}.module-head p{max-width:760px;margin-top:7px}.dashboard-head{padding:4px 0 2px}.dashboard-head>button{border-radius:999px}.section-title{margin:20px 0 10px}
.kpis{grid-template-columns:repeat(6,minmax(120px,1fr));gap:11px;margin-bottom:18px}.kpi{min-height:126px;padding:15px;border-radius:var(--pm-radius);background:linear-gradient(145deg,var(--pm-panel-3),var(--pm-panel));border:1px solid color-mix(in srgb,var(--brand-primary) 32%,var(--pm-line));box-shadow:0 8px 24px rgba(0,0,0,.2)}.kpi span{color:#d9e8f8;font-size:12px;font-weight:700}.kpi strong{margin:7px 0 2px;font-size:30px;line-height:1}.kpi small{color:var(--pm-muted);font-size:10px}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.dashboard-link{min-height:154px;padding:19px;text-align:left!important;border-radius:var(--pm-radius);background:linear-gradient(145deg,var(--pm-panel-2),var(--pm-panel));box-shadow:var(--pm-shadow)}.dashboard-link h3{font-size:17px}.dashboard-link p{min-height:42px;margin:9px 0}.dashboard-link span{margin-top:15px;font-weight:700}
.card,.record-card{border-radius:var(--pm-radius);background:linear-gradient(145deg,var(--pm-panel-2),var(--pm-panel));border:1px solid color-mix(in srgb,var(--brand-primary) 30%,var(--pm-line));box-shadow:var(--pm-shadow)}.card:hover{transform:none}.record-grid{gap:14px}.record-card{padding:17px}.record-title h3{font-size:16px}.actions{margin-top:13px}.actions button{min-height:39px}.state{font-weight:700;letter-spacing:.03em}.empty-state,.error-state{background:color-mix(in srgb,var(--pm-panel) 88%,transparent);border-color:#45627f;min-height:170px;display:grid;place-content:center}.error-state h2,.empty-state b{color:var(--pm-text)}
.tabs{padding:5px;background:#061321;border-color:#2a4664}.tabs button{min-height:42px}.tabs button.active{box-shadow:0 4px 14px rgba(0,0,0,.2)}dl div{background:#071422}.export-mini button,.export-bar button{background:#091a2c}.profile-shell{background:linear-gradient(145deg,var(--pm-panel-2),var(--pm-panel))}.theme-preview{background:linear-gradient(135deg,color-mix(in srgb,var(--brand-primary) 24%,#07111e),color-mix(in srgb,var(--brand-secondary) 15%,#07111e))}
.solver-modes{gap:9px}.solver-modes button{min-height:62px;background:#09182a}.solver-modes button.active{box-shadow:0 8px 22px color-mix(in srgb,var(--brand-primary) 22%,transparent)}.solver-search{margin-top:12px}.solver-search input,.solver-search>button{min-height:50px}.solver-result>.card{padding:22px}.answer-text{font-size:15px;color:#dce9f7}.source-box{border-color:var(--brand-secondary);background:#071827}.source-list{margin-top:9px}.source-item{border-radius:10px}.conversation{background:#06111e;border:1px solid #203c58;border-radius:13px}.message{box-shadow:0 4px 12px rgba(0,0,0,.18)}
.mobile-bottom{height:70px;padding:5px 8px calc(5px + env(safe-area-inset-bottom));background:rgba(4,13,24,.96);border-top:1px solid #294663;box-shadow:0 -12px 30px rgba(0,0,0,.34);backdrop-filter:blur(18px)}.mobile-bottom button{position:relative;min-height:56px;padding:4px;border-radius:12px;color:#9cb2ca;font-size:18px}.mobile-bottom button small{margin-top:1px;color:inherit;font-size:10px}.mobile-bottom button.active{color:white;background:color-mix(in srgb,var(--brand-primary) 22%,transparent)}.mobile-bottom button.active:before{content:"";position:absolute;top:1px;left:30%;right:30%;height:3px;border-radius:3px;background:var(--brand-secondary)}
#opsDialog,dialog{border-color:color-mix(in srgb,var(--brand-primary) 50%,var(--pm-line));background:var(--pm-panel);box-shadow:0 30px 90px rgba(0,0,0,.72)}.dialog-head{position:sticky;top:-18px;z-index:2;background:var(--pm-panel)}.form-field input,.form-field select,.form-field textarea,#fields input,#fields select,#fields textarea{background:#061321;border-color:#2b4a68}.pending-card{border-color:#9b742c;background:linear-gradient(145deg,#211c12,var(--pm-panel))}.invite-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.invite-actions button{width:100%}.whatsapp-btn{background:#075e54!important;border-color:#25d366!important;color:#fff}.email-btn{background:#123a67!important;border-color:#4194e6!important;color:#fff}
/* Coherent light theme */
body[data-theme="light"]{--pm-bg:#eef3f8;--pm-panel:#fff;--pm-panel-2:#f8fbff;--pm-panel-3:#eaf3fc;--pm-line:#b9cadb;--pm-text:#102235;--pm-muted:#62778e;--pm-header:#07192d;color-scheme:light;color:var(--pm-text)}body[data-theme="light"] header,body[data-theme="light"] aside,body[data-theme="light"] .mobile-bottom{color:#edf6ff}body[data-theme="light"] h1{background:linear-gradient(95deg,#102235,color-mix(in srgb,var(--brand-primary) 80%,#102235));-webkit-background-clip:text;background-clip:text}body[data-theme="light"] button,body[data-theme="light"] input,body[data-theme="light"] select,body[data-theme="light"] textarea{color:var(--pm-text);background:#fff}body[data-theme="light"] .card,body[data-theme="light"] .record-card,body[data-theme="light"] .kpi,body[data-theme="light"] .dashboard-link{background:linear-gradient(145deg,#fff,#f4f8fc);box-shadow:0 10px 28px rgba(20,52,82,.12)}body[data-theme="light"] .kpi span,body[data-theme="light"] .record-card h3{color:#102235}body[data-theme="light"] dl div,body[data-theme="light"] .source-box,body[data-theme="light"] .source-item{background:#eaf2f9}body[data-theme="light"] .solver-modes button{background:#f5f9fd}body[data-theme="light"] .solver-modes button.active,body[data-theme="light"] .primary,body[data-theme="light"] #add{color:#fff}body[data-theme="light"] #toolbar:has(.module-toolbar){background:rgba(238,243,248,.94)}body[data-theme="light"] .empty-state,body[data-theme="light"] .error-state{background:#f8fbff}body[data-theme="light"] .answer-text{color:#203a50}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){header{height:62px;min-height:62px!important;grid-template-columns:44px minmax(0,1fr) auto!important;padding:7px 12px!important}.brand-block img{width:38px;height:38px}.brand-block #brand{font-size:14px}.brand-block #plantLabel{font-size:9px}#logout{display:none!important}#sync{padding:5px 8px;font-size:9px!important}aside{top:62px;width:min(290px,84vw)}main{margin:0;padding:18px 15px 100px}#toolbar:has(.module-toolbar){top:62px;margin:-18px -15px 20px;padding:10px 15px}.module-toolbar{gap:8px}.toolbar-actions{grid-template-columns:1fr auto auto}.dashboard-grid{grid-template-columns:1fr 1fr}.kpis{grid-template-columns:repeat(3,1fr)}.kpi{min-height:108px;padding:13px}.kpi strong{font-size:27px}.dashboard-link{min-height:135px;padding:15px}.solver-result>.card{padding:17px}}
@media(max-width:560px){#sync{font-size:0!important;width:34px;height:34px;justify-content:center;padding:0}#sync::first-letter{font-size:15px}.module-head{align-items:flex-start}.module-head>button{margin-top:8px}.kpis{grid-template-columns:1fr 1fr;gap:9px}.kpi{min-height:116px}.dashboard-grid{grid-template-columns:1fr}.dashboard-link{min-height:128px}.toolbar-actions{grid-template-columns:1fr 1fr}.search-wrap{grid-column:1/-1}.toolbar-actions>button{min-height:42px}.solver-modes{grid-template-columns:1fr 1fr}.solver-modes button{font-size:12px}.invite-actions{grid-template-columns:1fr 1fr}.export-mini{grid-template-columns:1fr 1fr}.mobile-bottom{height:72px}.profile-shell{padding:14px}.record-card{padding:14px}}
/* v4.5.1 report, mobile status and logout corrections */
.format-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.format-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:12px;border:1px solid var(--pm-line);border-radius:14px;background:linear-gradient(145deg,var(--pm-panel-2),var(--pm-panel));box-shadow:0 7px 20px rgba(0,0,0,.16)}.format-card div{display:grid}.format-card b{font-size:15px}.format-card small{color:var(--pm-muted)}.format-card button{min-height:38px;padding:7px 10px}.loading-card{display:flex;align-items:center;gap:13px;min-height:90px}.loading-card h3,.loading-card p{margin:0}.spinner{width:28px;height:28px;border:3px solid #294966;border-top-color:var(--brand-secondary);border-radius:50%;animation:pm-spin .8s linear infinite}@keyframes pm-spin{to{transform:rotate(360deg)}}.csv-view{max-height:65vh;overflow:auto;padding:14px;border:1px solid var(--pm-line);border-radius:12px;background:#061321;color:var(--pm-text);white-space:pre;font:12px/1.5 ui-monospace,monospace}
@media(max-width:800px){header{grid-template-columns:44px minmax(0,1fr) 12px 58px!important;gap:8px!important}#sync{display:block!important;width:10px!important;height:10px!important;min-height:10px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#21c58b!important;font-size:0!important;box-shadow:0 0 0 4px rgba(33,197,139,.12)}#logout{display:inline-flex!important;width:58px!important;min-width:58px!important;height:40px!important;align-items:center;justify-content:center;padding:5px!important;font-size:10px!important}.format-grid{grid-template-columns:1fr 1fr}.format-card{grid-template-columns:1fr 1fr}.format-card div{grid-column:1/-1}.report-controls{grid-template-columns:1fr 1fr}.report-controls label:first-child{grid-column:1/-1}}
@media(max-width:480px){.format-grid{grid-template-columns:1fr 1fr}.format-card{padding:10px;gap:5px}.format-card button{font-size:10px}.report-controls{grid-template-columns:1fr}.report-controls label:first-child{grid-column:auto}}
/* v4.6 commercial foundation UI */
.lifecycle{padding:7px 12px;border:1px solid var(--pm-line);border-radius:999px;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.08em}.lifecycle.active,.lifecycle.trial{color:#72e6bc;border-color:#16885f;background:#08271f}.lifecycle.past_due{color:#ffd477;border-color:#a86d08;background:#302006}.lifecycle.suspended,.lifecycle.cancelled,.lifecycle.deletion_pending{color:#ff9aad;border-color:#9f2640;background:#310b17}.commercial-summary{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:14px;margin-bottom:14px}.plan-card h2{margin:4px 0;font-size:28px}.usage-stack{display:grid;gap:10px}.usage-meter{padding:13px 15px;border:1px solid var(--pm-line);border-radius:14px;background:linear-gradient(145deg,var(--pm-panel-2),var(--pm-panel));box-shadow:0 7px 20px rgba(0,0,0,.16)}.usage-meter>div:first-child{display:flex;justify-content:space-between;gap:12px}.usage-meter span,.usage-meter small{color:var(--pm-muted)}.meter{height:8px;margin:9px 0 6px;border-radius:99px;background:#06111e;overflow:hidden}.meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary))}.commercial-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.commercial-grid .card{display:grid;align-content:start;gap:10px}.commercial-grid label{display:grid;gap:4px;color:var(--pm-muted)}.feature-list{display:flex;flex-wrap:wrap;gap:7px}.feature-list span{padding:6px 9px;border:1px solid var(--pm-line);border-radius:999px;text-transform:capitalize}.feature-list .enabled{color:#65e2b4;border-color:#187452}.feature-list .disabled{opacity:.55}.healthy{padding:14px;border-radius:12px;background:#08271f;color:#65e2b4}.incident{padding:10px;border-left:3px solid var(--pm-warn);background:#251b08}.incident.error,.incident.critical{border-color:var(--pm-danger);background:#290b15}.incident p{margin:4px 0}.legal-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--pm-line)}.legal-row div{display:grid}.legal-row small{color:var(--pm-muted)}
@media(max-width:800px){.commercial-summary,.commercial-grid{grid-template-columns:1fr}.usage-meter>div:first-child{font-size:12px}}
/* v4.7 platform administration and legal acceptance */
#legalGate{width:min(820px,94vw);max-height:92vh;padding:0;border:1px solid var(--brand-primary);background:var(--pm-panel);color:var(--pm-text)}#legalGate::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(7px)}.legal-gate{display:grid;gap:12px;padding:22px}.legal-gate>small{color:var(--brand-secondary);text-transform:uppercase;letter-spacing:.12em}.legal-gate h2,.legal-gate p{margin:0}.legal-content{max-height:52vh;overflow:auto;padding:16px;border:1px solid var(--pm-line);border-radius:13px;background:#061321;line-height:1.65}.legal-gate label{display:flex;align-items:center;gap:9px;padding:10px;background:var(--pm-panel-2);border-radius:11px}.legal-gate label input{width:20px;height:20px;min-height:20px}.legal-gate button{justify-self:end;min-width:180px}.platform-toolbar{display:flex;gap:8px;margin-bottom:14px}.platform-toolbar input{flex:1}.tenant-card{display:grid;align-content:start;gap:10px}.tenant-card label{display:grid;gap:4px;color:var(--pm-muted)}.tenant-card select,.tenant-card input{width:100%}
@media(max-width:560px){.legal-gate{padding:16px}.legal-gate button{width:100%;justify-self:stretch}.platform-toolbar{display:grid}}
/* v4.7.1 mobile status and performance polish */
@media(max-width:800px){#sync::first-letter{font-size:0!important}#sync{overflow:hidden!important;box-shadow:0 0 0 3px rgba(33,197,139,.14)!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* v4.7.2 low-power mobile scrolling */
@media(max-width:800px){html,body{background-attachment:scroll!important;scroll-behavior:auto!important}header,#toolbar:has(.module-toolbar),.mobile-bottom{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.card,.record-card,.kpi,.dashboard-link,.usage-meter,.format-card{box-shadow:none!important}.card,.record-card,.dashboard-link{transition:none!important}.record-card,.dashboard-link,.usage-meter,.format-card{content-visibility:auto;contain-intrinsic-size:1px 150px}body[data-pattern="grid"],body[data-pattern="dots"],body[data-pattern="diagonal"],body[data-pattern="circuit"]{background-size:42px 42px!important}}
