:root{--navy:#102f50;--blue:#1967a9;--blue2:#e9f3fb;--ink:#182534;--muted:#66788a;--line:#dce4eb;--bg:#f4f7f9;--surface:#fff;--red:#c94444;--amber:#b77313;--green:#278060;--shadow:0 8px 26px rgba(25,48,72,.08);font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:var(--navy);color:#d6e2ee;padding:25px 16px 18px;z-index:20;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;padding:0 9px 28px}.brandmark{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#3f91d1;font-size:21px;font-weight:800}.brand b{display:block;font-size:20px;letter-spacing:.2px}.brand small,.sidebar-foot small{display:block;color:#94acc1;font-size:11px;margin-top:2px}nav{display:flex;flex-direction:column;gap:4px}nav p{font-size:10px;letter-spacing:1.2px;color:#718da6;margin:22px 11px 7px}nav button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#b9cbda;border-radius:7px;padding:11px 12px;text-align:left;font:inherit;cursor:pointer}nav button:hover,nav button.active{background:#1e466b;color:#fff}nav i{font-style:normal;width:18px;text-align:center;font-size:18px}nav em{margin-left:auto;background:#e27242;color:#fff;font-style:normal;font-size:11px;min-width:20px;padding:2px 5px;border-radius:20px;text-align:center}.sidebar-foot{margin-top:auto;border-top:1px solid #2d4b67;padding:17px 8px 0;display:flex;align-items:center;gap:10px;font-size:12px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#dfeaf3;color:#234967;font-weight:700}.topbar{position:fixed;left:248px;right:0;top:0;height:68px;background:#fff;border-bottom:1px solid var(--line);z-index:15;display:flex;align-items:center;padding:0 28px}.crumb{font-size:13px;color:var(--muted)}.crumb span{margin:0 8px;color:#a9b4bd}.crumb b{color:var(--ink)}.top-actions{margin-left:auto;display:flex;gap:14px;align-items:center}.icon-btn{border:0;background:transparent;font-size:20px;position:relative;cursor:pointer}.dot{position:absolute;width:6px;height:6px;border-radius:50%;background:#e15c52;right:4px;top:1px}.date{font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:14px}.primary{background:var(--blue);color:#fff;border:0;border-radius:7px;padding:11px 16px;font-weight:650;cursor:pointer}.primary:hover{background:#12568f}.compact{padding:9px 13px}.secondary{background:#fff;border:1px solid #cbd6df;border-radius:7px;padding:9px 13px;color:#34495d;font-weight:600;cursor:pointer}main{margin-left:248px;padding:94px 28px 40px;min-height:100vh}.page-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.page-head h1{font-size:24px;margin:0 0 6px}.page-head p{color:var(--muted);font-size:13px;margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px 18px;display:flex;align-items:center;gap:14px}.stat-icon{width:40px;height:40px;border-radius:8px;background:var(--blue2);color:var(--blue);display:grid;place-items:center;font-size:20px}.stat.red .stat-icon{background:#fdeeee;color:var(--red)}.stat.amber .stat-icon{background:#fff3df;color:var(--amber)}.stat.green .stat-icon{background:#e7f6f0;color:var(--green)}.stat small{color:var(--muted);display:block;font-size:11px;margin-bottom:4px}.stat strong{font-size:23px}.stat .trend{font-size:10px;color:var(--green);margin-left:5px}.grid2{display:grid;grid-template-columns:1.35fr .9fr;gap:18px;margin-bottom:18px}.card{background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 1px 2px rgba(20,45,65,.02)}.card-head{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-bottom:1px solid var(--line)}.card-head h2{font-size:14px;margin:0}.link-btn{border:0;background:none;color:var(--blue);font-weight:650;font-size:12px;cursor:pointer}.chart{height:218px;padding:18px;display:flex;flex-direction:column}.bars{display:flex;align-items:flex-end;gap:12px;flex:1;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,#fff 0,#fff 40px,#eef2f5 41px)}.bar-wrap{flex:1;text-align:center;font-size:10px;color:var(--muted)}.bar{width:60%;max-width:28px;margin:auto;background:#4e93ca;border-radius:4px 4px 0 0;transition:.3s}.bar.corrective{background:#e78b62}.legend{display:flex;gap:18px;margin-top:14px;font-size:10px;color:var(--muted)}.legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4e93ca;margin-right:5px}.legend i.orange{background:#e78b62}.health{padding:18px}.health-row{display:grid;grid-template-columns:82px 1fr 38px;align-items:center;gap:10px;margin:13px 0;font-size:11px}.track{height:7px;background:#edf1f4;border-radius:5px;overflow:hidden}.fill{height:100%;background:#409371;border-radius:5px}.fill.amber{background:#d99335}.fill.red{background:#ce5757}.table-card{overflow:hidden}.toolbar{display:flex;gap:10px;padding:13px 16px;border-bottom:1px solid var(--line)}.search{position:relative;flex:1;max-width:340px}.search input,.filter,select,input,textarea{width:100%;border:1px solid #ccd7df;border-radius:7px;padding:10px 11px;background:#fff;color:var(--ink);font:inherit;font-size:13px}.search input{padding-left:34px}.search:before{content:'⌕';position:absolute;left:12px;top:7px;color:#788a99;font-size:19px}.filter{width:auto;min-width:140px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#708192;font-size:10px;letter-spacing:.3px;font-weight:700;background:#fafcfd}th,td{padding:12px 16px;border-bottom:1px solid #e7edf1}tbody tr:hover{background:#f8fbfd}.asset-cell{display:flex;align-items:center;gap:10px}.machine{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d7e2e9;border-radius:6px;background:#f3f7fa;color:var(--blue)}.sub{display:block;color:var(--muted);font-size:10px;margin-top:3px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:650;background:#eef2f5;color:#5a6c7b}.badge:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.badge.green{color:var(--green);background:#e8f6f1}.badge.red{color:var(--red);background:#fbecec}.badge.amber{color:var(--amber);background:#fff3df}.badge.blue{color:var(--blue);background:#e8f2fa}.priority{font-weight:650}.priority.Crítica{color:var(--red)}.priority.Alta{color:#d16f30}.progress{display:flex;align-items:center;gap:8px}.progress .track{width:72px}.empty{text-align:center;padding:50px;color:var(--muted)}.form-page{max-width:760px}.form-card{padding:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field.full{grid-column:1/-1}.field label{display:block;font-size:11px;font-weight:700;margin-bottom:7px}.field label span{color:var(--red)}textarea{min-height:104px;resize:vertical}.help{font-size:10px;color:var(--muted);margin-top:5px}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.modal-backdrop{position:fixed;inset:0;background:rgba(13,34,53,.48);z-index:50;display:grid;place-items:center;padding:18px}.modal{background:#fff;border-radius:10px;width:min(560px,100%);box-shadow:var(--shadow)}.modal-head{padding:18px 21px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.modal-head h2{margin:0;font-size:17px}.modal-body{padding:21px}.modal-foot{padding:15px 21px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}.close{border:0;background:none;font-size:22px;cursor:pointer}.request-detail{background:#f5f8fa;border-radius:7px;padding:13px;margin-bottom:17px;font-size:12px}.request-detail b{display:block;margin-bottom:5px}#toast{position:fixed;right:22px;bottom:22px;z-index:80;background:#173d5d;color:#fff;border-radius:8px;padding:13px 17px;box-shadow:var(--shadow);font-size:12px;transform:translateY(100px);opacity:0;transition:.25s}#toast.show{transform:none;opacity:1}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line)}.kpi{background:#fff;padding:16px 18px}.kpi span{color:var(--muted);font-size:10px;display:block}.kpi b{display:block;font-size:18px;margin-top:5px}.mobile-only,#menuBtn{display:none}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none}.topbar{left:0;padding:0 16px}.top-actions .date,.top-actions>.icon-btn{display:none}#menuBtn{display:block;margin-right:9px}.crumb{display:none}main{margin-left:0;padding:86px 16px 30px}.stats{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.sidebar.open:after{content:'';position:fixed;left:248px;right:-100vw;top:0;bottom:0;background:rgba(0,0,0,.3)}.page-head h1{font-size:21px}}
@media(max-width:620px){.topbar{height:61px}.top-actions{margin-left:auto}.compact{font-size:11px}.page-head{align-items:center}.page-head .secondary{display:none}.stats{gap:9px}.stat{padding:13px;gap:10px}.stat-icon{width:35px;height:35px}.stat strong{font-size:19px}.grid2{gap:12px}.toolbar{flex-wrap:wrap}.search{max-width:none;width:100%;flex-basis:100%}.filter{flex:1;min-width:0}.table-wrap{overflow-x:auto}table{min-width:700px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.kpi-strip{grid-template-columns:repeat(2,1fr)}.date{display:none}.page-head p{max-width:240px}.mobile-hide{display:none}}

/* Professional theme system and expanded modules */
:root{color-scheme:light;--navy:#0c2d4d;--blue:#1671b9;--blue2:#e9f4fc;--ink:#162536;--muted:#687b8d;--line:#dbe5ec;--bg:#f3f7fa;--surface:#fff;--surface2:#f8fafc;--red:#c83f48;--amber:#b87312;--green:#18785a;--shadow:0 10px 30px rgba(23,48,72,.08)}
[data-theme="dark"]{color-scheme:dark;--navy:#071b2d;--blue:#4da3e3;--blue2:#102f47;--ink:#e7eef5;--muted:#9cafc0;--line:#263c4f;--bg:#0c1823;--surface:#122331;--surface2:#162a39;--red:#ff7a81;--amber:#f1b45d;--green:#5bc29d;--shadow:0 12px 32px rgba(0,0,0,.24)}
body{background:var(--bg);color:var(--ink)}.sidebar{background:linear-gradient(175deg,var(--navy),#143e62);padding:22px 14px 16px;box-shadow:7px 0 24px rgba(7,30,50,.1)}nav{overflow-y:auto;scrollbar-width:thin;padding-right:2px}.topbar{background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px)}.plant-icon{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:6px;background:var(--blue2);color:var(--blue);margin-right:7px}.system-state{display:flex;align-items:center;gap:6px;color:var(--green);font-size:10px;font-weight:700;padding:6px 9px;background:color-mix(in srgb,var(--green) 10%,var(--surface));border-radius:20px}.system-state i,.pulse{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 15%,transparent)}.theme-btn{width:34px;height:34px;border-radius:8px;background:var(--surface2);color:var(--ink);border:1px solid var(--line)}.notification{color:var(--ink)}main{padding:96px 30px 44px}.eyebrow{display:block;color:var(--blue);font-size:9px;font-weight:800;letter-spacing:1.25px;margin-bottom:6px}.card,.stat{background:var(--surface);border-color:var(--line);border-radius:12px;box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 5%,transparent)}.stat{transition:transform .2s,box-shadow .2s}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.toolbar,th{background:var(--surface2)}tbody tr:hover{background:var(--surface2)}.search input,.filter,select,input,textarea{background:var(--surface);color:var(--ink);border-color:var(--line);outline:none}.search input:focus,.filter:focus,select:focus,input:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 14%,transparent)}.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.modal{background:var(--surface)}.request-detail,.machine{background:var(--surface2);border-color:var(--line)}.bars{background:repeating-linear-gradient(to bottom,var(--surface) 0,var(--surface) 40px,var(--line) 41px)}.kpi{background:var(--surface)}th,td{border-color:var(--line)}.badge.green{background:color-mix(in srgb,var(--green) 12%,var(--surface))}.badge.red{background:color-mix(in srgb,var(--red) 12%,var(--surface))}.badge.amber{background:color-mix(in srgb,var(--amber) 13%,var(--surface))}.badge.blue{background:var(--blue2)}
.alert-panel{display:flex;align-items:center;gap:14px;padding:15px 17px;margin-bottom:18px;border-radius:12px;background:color-mix(in srgb,var(--amber) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--amber) 28%,var(--line))}.alert-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--amber);color:#fff;font-weight:800}.alert-panel p{margin:3px 0 0;color:var(--muted);font-size:11px}.alert-panel button{margin-left:auto}.condition-card{overflow:hidden}.sensor-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.sensor-kpis div{background:var(--surface);padding:14px}.sensor-kpis span,.sensor-kpis small{display:block;color:var(--muted);font-size:9px}.sensor-kpis b{display:block;font-size:17px;margin:4px 0}.spark-chart{height:125px;display:flex;align-items:flex-end;gap:7px;padding:20px 20px 0}.spark-chart span{flex:1;min-height:5px;border-radius:4px 4px 0 0;background:linear-gradient(to top,var(--blue),#72bce9)}.chart-labels{display:flex;justify-content:space-between;padding:7px 20px 14px;color:var(--muted);font-size:9px}.calendar-card{overflow:hidden}.calendar-head{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--line)}.calendar-head h2{font-size:14px;margin:0}.calendar-legend{display:flex;gap:13px;margin-left:auto;font-size:9px;color:var(--muted)}.calendar-legend i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px}.blue-dot{background:var(--blue)}.green-dot{background:var(--green)}.amber-dot{background:var(--amber)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-grid>b{text-align:center;padding:9px;color:var(--muted);font-size:9px;background:var(--surface2)}.cal-day{min-height:95px;border-top:1px solid var(--line);border-right:1px solid var(--line);padding:8px;font-size:10px}.cal-day>span{font-weight:700}.today-cell>span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--blue);color:#fff}.cal-event{display:block;padding:4px 5px;margin-top:5px;border-left:2px solid var(--blue);background:var(--blue2);color:var(--blue);border-radius:3px}.cal-event.green{border-color:var(--green);color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface))}.cal-event.amber{border-color:var(--amber);color:var(--amber);background:color-mix(in srgb,var(--amber) 10%,var(--surface))}.document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.doc-card{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:13px;padding:15px}.doc-icon{display:grid;place-items:center;width:38px;height:42px;border-radius:7px;background:var(--blue2);color:var(--blue);font-size:20px}.doc-meta{font-size:10px;color:var(--muted);text-align:right}.doc-meta small{display:block;margin-top:3px}.scope-note{margin-top:18px;border:1px dashed var(--line);border-radius:10px;padding:14px 16px;color:var(--muted);font-size:11px}.scope-note b{color:var(--ink)}.scope-note p{margin:4px 0 0}
@media(max-width:900px){.system-state{display:none}.document-grid{grid-template-columns:1fr}.calendar-grid{min-width:700px}.calendar-card{overflow-x:auto}.top-actions>.theme-btn{display:block}}
@media(max-width:620px){main{padding-left:14px;padding-right:14px}.sensor-kpis{grid-template-columns:1fr}.alert-panel{align-items:flex-start;flex-wrap:wrap}.alert-panel button{margin-left:48px}.document-grid{grid-template-columns:1fr}.doc-card{grid-template-columns:auto 1fr auto}.doc-meta{display:none}}
.brand{padding:0 7px 22px;gap:11px}.brand-logo{width:56px;height:56px;object-fit:cover;border-radius:13px;filter:drop-shadow(0 4px 10px rgba(0,167,225,.2));flex:none}.brand b{font-size:16px;white-space:nowrap;letter-spacing:-.2px}.brand b em{font-style:normal;color:#26b8ef}.brand small{font-size:8px;letter-spacing:.1px;white-space:nowrap;color:#b4c6d5;margin-top:4px}
.splash{position:fixed;inset:0;z-index:200;display:grid;place-content:center;justify-items:center;background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--blue) 10%,var(--surface)),var(--bg) 48%);color:var(--ink);opacity:1;visibility:visible;transition:opacity .28s ease,visibility .28s ease}.splash.done{opacity:0;visibility:hidden;pointer-events:none}.splash-brand{display:flex;align-items:center;gap:22px}.splash-brand img{width:128px;height:128px;border-radius:27px;object-fit:cover;box-shadow:0 18px 42px rgba(4,27,47,.22)}.splash-brand strong{display:block;font-size:34px;letter-spacing:-1.1px;line-height:1}.splash-brand strong em{font-style:normal;color:var(--blue)}.splash-brand small{display:block;margin-top:9px;color:var(--muted);font-size:11px;letter-spacing:.85px}.splash-loader{width:100%;height:3px;background:var(--line);margin-top:31px;border-radius:4px;overflow:hidden}.splash-loader i{display:block;width:42%;height:100%;background:linear-gradient(90deg,var(--blue),#28c3ed);border-radius:4px;animation:splash-load .75s ease-in-out infinite alternate}.splash>span{margin-top:12px;color:var(--muted);font-size:10px;letter-spacing:.3px}@keyframes splash-load{from{transform:translateX(-30%)}to{transform:translateX(140%)}}
.splash-art{width:min(1120px,92vw);max-height:72vh;object-fit:contain;border-radius:24px;box-shadow:0 28px 80px rgba(0,0,0,.42)}.splash .splash-loader{width:min(720px,66vw);margin-top:24px}.bar-values{height:15px;color:var(--muted);font-size:9px;font-weight:700}.dashboard-filters input[type="date"]{width:auto;min-width:138px;padding:8px;font-size:11px}
@media(max-width:620px){.splash-brand{gap:14px}.splash-brand img{width:84px;height:84px;border-radius:19px}.splash-brand strong{font-size:23px}.splash-brand small{font-size:8px;letter-spacing:.45px}.splash-loader{margin-top:22px}}
@media(max-width:620px){.splash-art{width:96vw;max-height:66vh;border-radius:14px}.splash .splash-loader{width:78vw}.dashboard-filters input[type="date"]{flex:1;min-width:150px}}
.auth-pending>.sidebar,.auth-pending>.topbar,.auth-pending>#app,.auth-screen>.sidebar,.auth-screen>.topbar,.auth-screen>#app{display:none}.app-ready>#authRoot{display:none}.auth-page{margin:0;min-height:100vh;padding:28px;display:grid;place-items:center;background:radial-gradient(circle at 52% 22%,color-mix(in srgb,var(--blue) 12%,var(--bg)),var(--bg) 48%)}.auth-card{width:min(430px,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:13px;padding-bottom:22px;border-bottom:1px solid var(--line)}.auth-brand img{width:58px;height:58px;border-radius:13px}.auth-brand b{font-size:20px}.auth-brand b em{font-style:normal;color:var(--blue)}.auth-brand small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.auth-copy{margin:24px 0 20px}.auth-copy h1{font-size:24px;margin:0 0 7px}.auth-copy p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.auth-card .field{margin-bottom:15px}.auth-submit{width:100%;margin-top:7px}.password-rules{font-size:9px;color:var(--muted);margin:-9px 0 14px}.auth-error{color:var(--red);background:color-mix(in srgb,var(--red) 10%,var(--surface));border-radius:7px;padding:9px;margin-bottom:10px;font-size:11px}.auth-note{display:block;text-align:center;color:var(--muted);margin-top:18px;font-size:9px}.logout-btn{margin-left:auto;border:0;background:transparent;color:#a9bfd1;font-size:18px;cursor:pointer}.permissions-card{margin-top:18px;overflow:hidden}.permission-grid{display:grid;grid-template-columns:150px repeat(8,minmax(56px,1fr));min-width:720px}.permission-grid>*{padding:9px 7px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:9px;text-align:center}.permission-grid>b{background:var(--surface2);color:var(--muted);text-transform:uppercase}.permission-grid>span{text-align:left;font-weight:700;text-transform:capitalize}.permission-grid label{display:grid;place-items:center}.permission-grid input{width:15px;height:15px;accent-color:var(--blue)}.permissions-card .form-actions{padding:14px 18px;margin:0}.permissions-card form{overflow-x:auto}
@media(max-width:620px){.auth-page{padding:14px}.auth-card{padding:22px;border-radius:14px}.auth-copy h1{font-size:21px}.permissions-card .card-head{align-items:flex-start;gap:10px;flex-direction:column}.permissions-card .filter{width:100%}}
.dashboard-filters{display:flex;align-items:center;gap:9px;margin:-6px 0 17px;padding:11px 13px;background:var(--surface);border:1px solid var(--line);border-radius:11px;box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 4%,transparent)}.dashboard-filters>span{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.dashboard-filters select{width:auto;min-width:145px;padding:8px;font-size:11px}.target-chip{margin-left:auto;padding:6px 10px;border-radius:8px;background:color-mix(in srgb,var(--green) 10%,var(--surface));color:var(--green)}.target-chip b,.target-chip span{display:block}.target-chip b{font-size:9px;text-transform:uppercase}.target-chip span{font-size:10px;margin-top:2px}@media(max-width:900px){.dashboard-filters{flex-wrap:wrap}.target-chip{margin-left:0}}@media(max-width:620px){.dashboard-filters>span{width:100%}.dashboard-filters select{min-width:0;flex:1}.target-chip{width:100%}}
.target-chip[role="button"]{cursor:pointer;outline:none}.target-chip[role="button"]:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 18%,transparent)}.target-chip.target-warning{color:var(--amber);background:color-mix(in srgb,var(--amber) 13%,var(--surface));border:1px solid color-mix(in srgb,var(--amber) 35%,var(--line))}.target-chip.target-ok{color:var(--green);border:1px solid color-mix(in srgb,var(--green) 28%,var(--line))}
.predictive-guide{display:flex;align-items:center;gap:18px;margin:-6px 0 16px;padding:13px 16px;border:1px solid color-mix(in srgb,var(--blue) 28%,var(--line));border-radius:11px;background:var(--blue2);color:var(--ink);font-size:11px}.predictive-guide b{color:var(--blue)}.predictive-guide span{color:var(--muted)}.normal-alert{background:color-mix(in srgb,var(--green) 11%,var(--surface));border-color:color-mix(in srgb,var(--green) 30%,var(--line))}.normal-alert .alert-icon{background:var(--green)}.planned-control{opacity:.58;border-style:dashed}.planned-control:hover{opacity:.8}@media(max-width:620px){.predictive-guide{align-items:flex-start;flex-direction:column;gap:5px}.page-head #newReadingBtn{display:block;padding:9px 10px;font-size:10px}}
.splash{overflow:hidden;background:radial-gradient(circle at 72% 42%,rgba(20,132,204,.22),transparent 34%),linear-gradient(145deg,#02070d 0%,#071624 52%,#02080f 100%)}.splash:before{content:'01001 10110 00101 11001 01010';position:absolute;left:5vw;bottom:7vh;color:rgba(33,159,225,.09);font:500 clamp(16px,2vw,30px)/1.8 monospace;letter-spacing:12px;max-width:55vw;animation:binary-drift 4s ease-out both}.splash-stage{position:relative;width:min(1240px,94vw);height:min(650px,72vh);display:grid;grid-template-columns:46% 54%;align-items:center;border:1px solid rgba(100,190,235,.13);border-radius:30px;overflow:hidden;background:linear-gradient(110deg,rgba(4,15,25,.9),rgba(7,29,46,.6));box-shadow:0 36px 100px rgba(0,0,0,.55);animation:stage-enter 1s cubic-bezier(.2,.8,.2,1) both}.splash-brain{align-self:stretch;background:url('/assets/autoplant-splash-v3.png') right center/auto 100% no-repeat;filter:saturate(.95) contrast(1.06);animation:brain-enter 1.35s .25s cubic-bezier(.2,.8,.2,1) both}.splash-identity{position:relative;z-index:2;display:flex;align-items:center;gap:20px;padding-left:clamp(28px,5vw,72px);animation:identity-enter 1s .55s ease both}.splash-identity img{width:clamp(72px,8vw,112px);height:clamp(72px,8vw,112px);object-fit:cover;border-radius:23px;filter:drop-shadow(0 12px 26px rgba(0,174,235,.28))}.splash-identity strong{display:block;color:#f5f9fc;font-size:clamp(28px,4vw,55px);line-height:.98;letter-spacing:-2px;white-space:nowrap}.splash-identity strong em{font-style:normal;color:#16b9ed}.splash-identity small{display:block;margin-top:14px;color:#b8cad8;font-size:clamp(10px,1.1vw,14px);letter-spacing:1.4px;opacity:0;animation:signature-reveal .85s 2.1s ease forwards}.splash .splash-loader{position:relative;width:min(560px,54vw);margin-top:22px;background:rgba(255,255,255,.12)}.splash>span{color:#8eabba;letter-spacing:1px}@keyframes stage-enter{from{opacity:0;transform:scale(.96) translateY(18px)}to{opacity:1;transform:none}}@keyframes brain-enter{from{opacity:0;transform:translateX(70px);filter:blur(8px)}to{opacity:1;transform:none}}@keyframes identity-enter{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:none}}@keyframes signature-reveal{from{opacity:0;transform:translateY(9px);letter-spacing:4px}to{opacity:1;transform:none;letter-spacing:1.4px}}@keyframes binary-drift{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}
.request-detail-btn{display:block;margin-top:7px}.request-modal{width:min(720px,100%);max-height:90vh;overflow:auto}.request-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.request-summary>div{padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:9px}.request-summary span,.request-description>span,.request-photo>span,.request-history>span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.55px;margin-bottom:7px}.request-summary b,.request-summary small{display:block}.request-description{padding:16px;border-left:3px solid var(--blue);background:var(--surface2);border-radius:0 9px 9px 0}.request-description p{margin:0;line-height:1.65;font-size:13px}.request-photo,.request-history{margin-top:20px}.photo-preview{width:100%;height:230px;border:1px solid var(--line);border-radius:12px;overflow:hidden;padding:0;position:relative;background:#07131e;cursor:zoom-in}.photo-preview img{width:100%;height:100%;object-fit:contain}.photo-preview i{position:absolute;right:10px;bottom:10px;padding:7px 10px;background:rgba(3,17,28,.82);color:#fff;border-radius:7px;font-size:10px;font-style:normal}.no-photo{margin-top:18px;padding:14px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font-size:11px}.request-history>div{position:relative;padding:2px 0 14px 18px;border-left:1px solid var(--line)}.request-history>div i{position:absolute;left:-4px;top:3px;width:7px;height:7px;border-radius:50%;background:var(--blue)}.request-history>div b,.request-history>div small{display:block}.request-history>div small{color:var(--muted);font-size:10px;margin-top:3px}.photo-backdrop{background:rgba(0,8,14,.88)}.photo-modal{width:min(1100px,96vw);max-height:94vh;display:flex;flex-direction:column;color:#fff}.photo-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 4px}.photo-toolbar .close{color:#fff}.photo-modal>img{max-width:100%;max-height:78vh;object-fit:contain;border-radius:12px;background:#000}.photo-modal>small{padding-top:10px;color:#c7d5df}
@media(max-width:700px){.splash-stage{width:94vw;height:74vh;grid-template-columns:1fr;grid-template-rows:44% 56%}.splash-brain{grid-row:1;background-size:auto 120%;background-position:78% center}.splash-identity{grid-row:2;padding:0 20px;justify-content:center;align-items:flex-start}.splash-identity img{width:68px;height:68px}.splash-identity strong{font-size:28px;letter-spacing:-1px}.splash .splash-loader{width:72vw;margin-top:15px}.request-summary{grid-template-columns:1fr 1fr}.photo-preview{height:190px}}
.splash{background:radial-gradient(circle at 70% 40%,rgba(18,118,182,.18),transparent 38%),linear-gradient(145deg,#02070c,#071521 56%,#02070c)}.splash:before{display:none}.splash-art-wrap{position:relative;width:min(1120px,94vw);aspect-ratio:16/9;overflow:hidden;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.5);animation:splash-single-enter 1.1s cubic-bezier(.2,.8,.2,1) both}.splash-art-wrap .splash-art{display:block;width:100%;height:100%;max-height:none;object-fit:cover;border-radius:22px;box-shadow:none}.signature-curtain{position:absolute;left:15.2%;top:55.4%;width:31%;height:8.3%;background:#030b13;box-shadow:0 0 18px 10px #030b13;opacity:1;animation:uncover-signature .75s 2.15s ease forwards}.splash .splash-loader{width:min(620px,60vw);margin-top:22px;background:rgba(255,255,255,.12)}@keyframes splash-single-enter{from{opacity:0;transform:scale(.97) translateY(12px)}to{opacity:1;transform:none}}@keyframes uncover-signature{from{opacity:1}to{opacity:0}}@media(max-width:620px){.splash-art-wrap{width:96vw;border-radius:12px}.splash-art-wrap .splash-art{border-radius:12px}.signature-curtain{box-shadow:0 0 10px 6px #030b13}.splash .splash-loader{width:74vw}}
.cal-event{width:100%;border:0;border-left:2px solid var(--blue);text-align:left;font:inherit;cursor:pointer}.cal-event:hover{filter:brightness(.96);transform:translateY(-1px)}.cal-day.other{background:var(--surface2);opacity:.55}.cal-more{display:block;margin-top:5px;color:var(--muted)}
.recurrence-tag{display:inline-block;margin-top:5px;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--amber) 13%,var(--surface));color:var(--amber);font-size:9px;font-weight:800}.recurrence-panel{margin-bottom:16px;padding:18px}.recurrence-panel .section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.recurrence-panel h2{margin:3px 0 0;font-size:16px}.recurrence-count{padding:5px 9px;border-radius:999px;background:var(--blue2);color:var(--blue);font-size:9px;font-weight:800}.recurrence-list{display:grid;gap:7px}.recurrence-list button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;width:100%;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--ink);text-align:left;cursor:pointer}.recurrence-list button:hover{border-color:var(--blue)}.recurrence-list b,.recurrence-list small,.recurrence-list em{display:block}.recurrence-list small,.recurrence-list em,.recurrence-list button>span:last-child{color:var(--muted);font-size:9px}.recurrence-list em{margin-top:3px;font-style:normal}.recurrence-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,var(--amber) 13%,var(--surface));color:var(--amber);font-size:17px}.empty-recurrence{padding:18px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);text-align:center;font-size:11px}@media(max-width:620px){.recurrence-list button{grid-template-columns:auto 1fr}.recurrence-list button>span:last-child{grid-column:2}.recurrence-panel .section-title{align-items:flex-start;gap:8px}}
.page-head>.import-btn{margin-left:auto}.page-head>.import-btn+button{margin-left:8px}.import-guide{padding:13px 15px;margin-bottom:15px;border:1px solid color-mix(in srgb,var(--blue) 28%,var(--line));border-radius:9px;background:var(--blue2)}.import-guide p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.import-result{margin-top:14px;min-height:18px;color:var(--muted);font-size:10px}.import-result b{color:var(--green)}.import-result p{color:var(--red)}@media(max-width:620px){.page-head>.import-btn{margin-left:0}.page-head>.import-btn+button{margin-left:5px}.import-btn{font-size:9px;padding:8px}}
.specialty-tag{display:block;width:max-content;margin-top:4px;padding:3px 7px;border-radius:999px;background:var(--blue2);color:var(--blue);font-size:9px;font-weight:800}.classification-help{margin-top:14px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--blue) 25%,var(--line));border-radius:8px;background:var(--blue2);color:var(--muted);font-size:10px;line-height:1.5}.recurrence-record{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;width:100%;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--ink)}.recurrence-record b,.recurrence-record small,.recurrence-record em{display:block}.recurrence-record small,.recurrence-record em,.recurrence-record>span:last-child{color:var(--muted);font-size:9px}.recurrence-record em{margin-top:3px;font-style:normal}@media(max-width:620px){.recurrence-record{grid-template-columns:auto 1fr}.recurrence-record>span:last-child{grid-column:2}}
.notification{width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);display:grid;place-items:center}.notification-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:10px;background:var(--red);color:#fff;font-size:9px;font-weight:800;line-height:18px;border:2px solid var(--surface)}.notification-panel{position:fixed;z-index:45;right:18px;top:62px;width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 78px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 55px rgba(8,26,42,.24);overflow:hidden}.notification-panel[hidden]{display:none}.notification-head{display:flex;align-items:center;justify-content:space-between;padding:17px 18px 12px;border-bottom:1px solid var(--line)}.notification-head h2{font-size:16px;margin:2px 0 0}.notification-actions{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--surface2);font-size:10px}.notification-list{overflow:auto;padding:8px}.notification-item{display:grid;grid-template-columns:34px 1fr;gap:10px;width:100%;padding:11px 10px;border:0;border-bottom:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.notification-item:hover{background:var(--surface2)}.notification-item.read{opacity:.58}.notification-item>i{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--amber) 14%,var(--surface));color:var(--amber);font-style:normal;font-weight:800}.notification-item>i.red{background:color-mix(in srgb,var(--red) 14%,var(--surface));color:var(--red)}.notification-item>i.blue{background:var(--blue2);color:var(--blue)}.notification-item small,.notification-item b,.notification-item em,.notification-item time{display:block}.notification-item small{color:var(--blue);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.7px}.notification-item b{font-size:11px;margin:3px 0}.notification-item em,.notification-item time{color:var(--muted);font-size:9px;font-style:normal}.notification-item time{margin-top:4px}.notification-empty{display:flex;flex-direction:column;align-items:center;gap:5px;padding:42px 16px;color:var(--green);font-size:22px}.notification-empty b{font-size:13px;color:var(--ink)}.notification-empty span{font-size:10px;color:var(--muted)}@media(max-width:620px){.notification-panel{top:58px;right:8px;width:calc(100vw - 16px);max-height:calc(100vh - 70px)}.top-actions #notificationBtn{display:grid}.system-state{display:none}}
.notification-device{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--blue) 6%,var(--surface))}.notification-device b,.notification-device small{display:block}.notification-device b{font-size:10px}.notification-device small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.4}.notification-device button{flex:0 0 auto;padding:7px 9px;font-size:9px}.notification-device button:disabled{opacity:.45;cursor:not-allowed}
.language-switcher{display:flex;flex:0 0 auto;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface2)}.language-switcher button{min-width:34px;height:28px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:9px;font-weight:900;cursor:pointer}.language-switcher button.active{background:var(--blue);color:#fff}.language-switcher button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media(max-width:620px){.language-switcher button{min-width:30px;height:26px}.top-actions .language-switcher{order:-1}}
