body.signed-out{overflow:auto}
.session-notice{display:none}
.session-loading #welcomeHome,.session-loading aside,.session-loading #workspace,.session-loading #accountButton,.session-loading #logoutButton{display:none!important}
.session-loading .session-notice{display:block;position:fixed;top:45%;left:50%;transform:translate(-50%,-50%);padding:24px;border-radius:20px;background:var(--glass);text-align:center}
.session-notice button{margin-inline-start:12px;padding:8px 16px;border:1px solid var(--border);border-radius:10px;background:var(--glass)}
.signed-out aside,.signed-out #workspace{display:none!important}
.signed-out #accountButton{display:none!important}
.signed-out .header-title{visibility:hidden;flex:1}
#welcomeHome{display:none;max-width:1280px;margin:120px auto 40px;padding:0 36px;color:var(--ink)}
.signed-out #welcomeHome{display:block}
.home-intro{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}
.home-eyebrow{font-size:11px;font-weight:700;letter-spacing:2.2px;text-transform:uppercase;color:#278c92;margin:0 0 10px}
.home-intro h1{font-size:clamp(30px,4vw,48px);letter-spacing:-1.5px;font-weight:600;margin:0 0 8px;line-height:1.15}
.home-subtitle{color:var(--muted);font-size:15px;margin:0;line-height:1.6}
.home-clock{text-align:end;flex:none}.home-clock time{font-size:36px;font-weight:300;letter-spacing:-1px;font-variant-numeric:tabular-nums}.home-clock p{color:var(--muted);margin:4px 0;font-size:13px}
.home-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.85fr);gap:24px;align-items:stretch}
.home-weather,.home-login{border-radius:30px;padding:32px;position:relative;overflow:hidden}
.home-weather{background:linear-gradient(135deg,#e5fcf2bc,#e7f6ffc9 55%,#f0eaffb0);min-height:450px}
[data-theme=dark] .home-weather{background:linear-gradient(135deg,#134b4b9c,#18354fbc 55%,#3d315877)}
.home-weather:before{content:'';position:absolute;width:280px;height:280px;border-radius:50%;background:#84e8d333;top:-130px;right:-80px;pointer-events:none}
.home-section-label{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;color:var(--muted);margin:0 0 16px}
.weather-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.weather-heading h2{font-size:24px;letter-spacing:-.5px;margin:0;font-weight:600}.weather-source{font-size:11px;color:var(--muted);margin-top:7px}
.weather-visual{height:155px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.weather-visual img{width:130px;height:130px;object-fit:contain}.weather-temperature{font-size:72px;letter-spacing:-4px;font-weight:300;line-height:1}.weather-temperature small{font-size:28px;vertical-align:top;letter-spacing:0}
.weather-description{font-size:15px;color:var(--muted);margin:12px 0 0}.weather-empty{color:var(--muted);max-width:290px;line-height:1.7;font-size:14px}
.weather-details{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.weather-details span{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}.weather-details strong{font-size:18px;font-weight:500}
.weather-forecast{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:22px 0}.forecast-day{text-align:center;font-size:12px}.forecast-day span{display:block;color:var(--muted);margin-bottom:10px}.forecast-day strong{font-size:15px;font-weight:600}.forecast-day small{color:var(--muted);display:block;margin-top:5px}
.location-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}.location-button,.city-submit{border:1px solid #68c7c176;border-radius:12px;background:#ffffff55;padding:10px 13px;font-size:12px;font-weight:600;color:var(--ink)}
.location-button{display:flex;align-items:center;gap:7px}.location-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7}.location-button:disabled{opacity:.6}
.city-search{display:flex;gap:8px;flex:1;min-width:180px}.city-search input{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:#ffffff50;padding:10px 12px;font:inherit;font-size:12px;color:var(--ink)}
.weather-status{font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 0;min-height:19px}.city-results{display:grid;gap:6px;margin-top:10px}.city-results button{text-align:start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--hover);font-size:12px}
.weather-credit{font-size:10px;color:var(--muted);margin:16px 0 0}.weather-credit a{color:inherit;text-underline-offset:3px}
.home-login{background:var(--glass);display:flex;flex-direction:column;justify-content:center}.home-login-icon{width:56px;height:56px;object-fit:contain;margin-bottom:12px}.home-login h2{font-size:28px;letter-spacing:-.7px;margin:0 0 8px;font-weight:600}.home-login #loginHint{color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 24px}.home-login #closeLogin{display:none}.home-login label{display:block;font-size:12px;font-weight:600;margin:17px 0 9px}.home-login input{display:block;width:100%;height:49px;border:1px solid var(--line);border-radius:13px;background:#ffffff69;padding:0 14px;color:var(--ink);font:inherit;font-size:14px;outline-offset:3px}.home-login input:focus{outline:2px solid #22b8aa}.home-login #loginError{color:#bf3b58;font-size:12px;line-height:1.5;min-height:18px;margin:12px 0}.home-login .login-submit{width:100%;height:49px;border:0;border-radius:13px;background:linear-gradient(120deg,#099eaa,#20c59e);color:white;font-size:14px;font-weight:600;box-shadow:0 8px 20px #10ad9d26}.home-login .login-submit:disabled{opacity:.6;cursor:wait}.home-login-note{font-size:11px;color:var(--muted);text-align:center;line-height:1.7;margin-top:20px}
[data-theme=dark] .home-login input,[data-theme=dark] .city-search input,[data-theme=dark] .location-button,[data-theme=dark] .city-submit{background:#ffffff0b}
.home-footer{text-align:center;color:var(--muted);font-size:11px;letter-spacing:.4px;margin-top:26px}.ar #welcomeHome{direction:rtl}.ar .home-clock{text-align:left}.ar .weather-temperature{direction:ltr}
@media(max-width:1100px){.signed-out header{height:76px;flex-wrap:nowrap}.signed-out #welcomeHome{margin-top:118px}.signed-out .header-title{display:none}.signed-out header .brand{flex-basis:auto}.home-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr)}.home-weather,.home-login{padding:25px}}
@media(max-width:760px){.signed-out header{height:auto;min-height:128px;flex-wrap:wrap;padding:12px}.signed-out header .brand{flex-basis:100%}.signed-out .tools{flex-basis:100%;flex-wrap:nowrap}.signed-out .tools #accountButton{flex-basis:auto;max-width:none}#welcomeHome,.signed-out #welcomeHome{margin:165px auto 28px;padding:0 18px}.home-intro{align-items:start;flex-direction:column;gap:20px}.home-clock{text-align:start;display:flex;gap:16px;align-items:center}.home-clock time{font-size:30px}.home-grid{grid-template-columns:1fr}.home-login{order:-1}.home-weather{min-height:0}.home-intro h1{font-size:34px}.home-login,.home-weather{padding:25px;border-radius:24px}.home-login-icon{display:none}}

#homeWeatherArt{width:130px;height:130px;flex:none}#homeWeatherArt svg{display:block;width:100%;height:100%}
/* A single fixed home canvas, with compact layouts on smaller displays. */
body.signed-out{overflow:hidden}
#welcomeHome,.signed-out #welcomeHome{position:fixed;inset:110px 0 20px;margin:0 auto;max-width:1280px;width:100%;padding:0 30px;overflow:hidden}
.home-intro{height:64px;margin-bottom:16px;align-items:center}
.home-intro h1{font-size:36px;margin:0}
.home-clock time{font-size:30px}
.home-grid{height:calc(100% - 80px)}
.home-weather,.home-login{min-height:0;padding:24px}
.weather-visual{height:130px}
.weather-temperature{font-size:64px}
.weather-forecast{margin:16px 0}
.location-actions{margin-top:12px}
.weather-source-link{float:right;font-size:10px;color:var(--muted);margin-inline-start:12px;text-underline-offset:3px}
.home-weather .home-section-label{margin-bottom:12px}
.city-results{position:absolute;z-index:4;bottom:18px;left:24px;right:24px;padding:10px;background:var(--glass);backdrop-filter:blur(30px);border-radius:14px;box-shadow:var(--shadow)}
.city-results:empty{display:none}
.home-login #loginHint{margin-bottom:12px}
.home-login-note{margin-top:12px}
@media(max-height:760px) and (min-width:761px){
 #welcomeHome,.signed-out #welcomeHome{top:100px;bottom:12px}
 .home-intro{height:45px;margin-bottom:12px}.home-intro h1{font-size:29px}.home-clock time{font-size:26px}.home-clock p{font-size:11px}
 .home-grid{height:calc(100% - 57px);gap:18px}.home-weather,.home-login{padding:20px}
 .weather-visual{height:100px}.weather-temperature{font-size:52px}#homeWeatherArt{width:95px;height:95px}
 .weather-details{padding:11px 0}.weather-forecast{margin:12px 0}.weather-status{margin-top:8px}.home-login-icon{width:42px;height:42px;margin-bottom:6px}.home-login label{margin:11px 0 6px}.home-login input{height:42px}.home-login .login-submit{height:42px}.home-login #loginError{margin:8px 0}
}
@media(max-width:760px){
 #welcomeHome,.signed-out #welcomeHome{top:148px;bottom:12px;padding:0 15px}
 .home-intro{height:50px;flex-direction:row;gap:8px;margin-bottom:10px}.home-intro h1{font-size:25px;letter-spacing:-.7px}.home-clock{display:block;text-align:end}.home-clock time{font-size:23px}.home-clock p{font-size:9px;margin:2px 0}.home-clock #homeTimezone{display:none}
 .home-grid{height:calc(100% - 60px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 205px;gap:12px}
 .home-login{order:0;padding:16px}.home-weather{padding:16px}.home-weather .home-section-label{font-size:9px;margin-bottom:7px}.weather-heading h2{font-size:18px}.weather-source-link{font-size:9px}.weather-source{font-size:9px}
 .weather-visual{height:85px}.weather-temperature{font-size:44px}.weather-temperature small{font-size:20px}.weather-description{font-size:12px;margin-top:6px}#homeWeatherArt{width:90px;height:90px}
 .weather-details{padding:9px 0;gap:7px}.weather-details span{font-size:10px;margin-bottom:4px}.weather-details strong{font-size:14px}.weather-forecast{margin:9px 0}.forecast-day span{margin-bottom:5px;font-size:10px}.forecast-day strong{font-size:13px}.forecast-day small{font-size:10px;margin-top:2px}
 .location-actions{gap:6px;margin-top:8px}.location-button,.city-submit{padding:8px;font-size:10px}.city-search{min-width:130px;gap:5px}.city-search input{padding:8px;font-size:11px}.weather-status{font-size:10px;margin-top:6px;min-height:15px}
 .home-login-icon,.home-login #loginHint,.home-login-note{display:none}.home-login h2{font-size:21px}.home-login #loginForm{display:grid;grid-template-columns:1fr 1fr;column-gap:10px;row-gap:4px}.home-login .login-heading{grid-column:1/-1}.home-login label{margin:6px 0 2px;font-size:10px}.home-login #emailLabel{grid-column:1;grid-row:2}.home-login #passwordLabel{grid-column:2;grid-row:2}.home-login #loginEmail{grid-column:1;grid-row:3}.home-login #loginPassword{grid-column:2;grid-row:3}.home-login input{height:39px;font-size:12px;padding:0 9px}.home-login #loginError{grid-column:1/-1;grid-row:5;min-height:12px;font-size:10px;margin:4px 0 0}.home-login .login-submit{grid-column:1/-1;grid-row:4;height:38px;margin-top:7px}
}
@media(max-width:760px) and (max-height:760px){.home-grid{grid-template-rows:minmax(0,1fr) 183px}.weather-forecast{display:none}.weather-visual{height:65px}#homeWeatherArt{width:75px;height:75px}.home-login{padding:12px}.home-login h2{font-size:18px}.home-login input{height:34px}.home-login .login-submit{height:34px}}
.location-actions{position:relative}.city-search{position:relative}.city-results{bottom:55px;max-height:210px;overflow-y:auto;border:1px solid var(--border);background:var(--glass)}.city-results button[aria-selected=true],.city-results button:hover{background:var(--selected)}
.weather-source-link{position:absolute;top:27px;right:24px;float:none}.ar .weather-source-link{right:auto;left:24px}@media(max-width:760px){.weather-source-link{top:17px;right:16px}.ar .weather-source-link{left:16px}}
/* Condition-aware glass weather card. */
.home-weather{transition:background .7s ease,box-shadow .7s ease}
.home-weather[data-period=night]{background:radial-gradient(ellipse at 90% 12%,#a9a2ef24,transparent 55%),linear-gradient(135deg,#e4f5fbdd,#ece9ffcc 65%,#e9f4ffbb)}
.home-weather[data-condition=clear][data-period=day]{background:radial-gradient(ellipse at 90% 10%,#ffe7a860,transparent 55%),linear-gradient(135deg,#e5fcf2db,#e7f6ffdf 60%,#f3efffc9)}
[data-theme=dark] .home-weather[data-period=night]{background:radial-gradient(ellipse at 90% 12%,#a39aef25,transparent 55%),linear-gradient(135deg,#173b4bdd,#292b50e0)}
.home-weather:before{background:radial-gradient(circle,#a4f0e64d,#bbddfb22 65%,transparent 70%);width:350px;height:350px;top:-130px;right:-110px}
#homeWeatherArt{width:160px;height:150px;filter:drop-shadow(0 12px 12px #348bb523)}
.weather-details{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.weather-details>div{position:relative;padding-inline-start:23px}
.weather-detail-icon{position:absolute;inset-inline-start:0;top:1px;width:17px;height:17px;color:#379cac}
.weather-detail-icon svg{display:block;width:100%;height:100%}
.weather-details strong{font-size:16px;white-space:nowrap}.weather-details span{margin-bottom:6px}
.weather-solar{display:flex;justify-content:space-between;gap:12px;margin-top:12px;padding:9px 12px;border:1px solid var(--line);border-radius:13px;background:#ffffff25;font-size:11px;color:var(--muted)}
.weather-solar[hidden]{display:none}.weather-solar>span{display:flex;align-items:center;gap:7px}.weather-solar svg{width:20px;height:20px;color:#cf9f42;flex:none}.weather-solar strong{font-size:12px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.forecast-day{padding:8px 3px;border-radius:15px;background:#ffffff28;border:1px solid #ffffff48;transition:background .2s,transform .2s}.forecast-day:hover{background:#ffffff55;transform:translateY(-2px)}
.forecast-day span{margin-bottom:1px}.forecast-icon{height:37px;margin:0 auto 5px;width:43px}.forecast-icon svg{display:block;width:100%;height:100%}
.wx-cloud{animation:wx-drift 7s ease-in-out infinite;transform-origin:center}.wx-sun{animation:wx-breathe 6s ease-in-out infinite;transform-origin:103px 49px}.wx-moon{animation:wx-drift 8s ease-in-out infinite}.wx-rain{animation:wx-rainfall 1.7s ease-in-out infinite}.wx-snow{animation:wx-drift 4s ease-in-out infinite}.wx-lightning{animation:wx-flash 5s ease-in-out infinite}
.forecast-icon *{animation:none!important}
@keyframes wx-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes wx-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@keyframes wx-rainfall{0%,100%{transform:translateY(-2px);opacity:.65}50%{transform:translateY(3px);opacity:1}}
@keyframes wx-flash{0%,85%,100%{opacity:1}90%{opacity:.35}95%{opacity:1}}
@media(prefers-reduced-motion:reduce){.wx-scene *,.forecast-day{animation:none!important;transition:none!important}}
@media(max-height:760px) and (min-width:761px){#homeWeatherArt{width:115px;height:110px}.weather-details strong{font-size:14px}.weather-solar{margin-top:8px;padding:6px 10px}.forecast-day{padding:5px 2px}.forecast-icon{height:29px;width:35px;margin-bottom:3px}.weather-forecast{margin:10px 0}}
@media(max-width:760px){#homeWeatherArt{width:95px;height:90px}.weather-details>div{padding-inline-start:0}.weather-detail-icon{display:none}.weather-details strong{font-size:12px}.weather-solar{margin-top:6px;padding:5px 7px;font-size:9px}.weather-solar strong{font-size:10px}.weather-solar svg{width:15px;height:15px}.weather-solar>span{gap:4px}.forecast-day{padding:4px 2px}.forecast-icon{width:28px;height:25px;margin-bottom:2px}.weather-forecast{margin:6px 0}}
@media(max-width:760px) and (max-height:760px){.weather-solar{display:none}.weather-forecast{display:none}.weather-visual{height:65px}#homeWeatherArt{width:75px;height:75px}.weather-details{padding:7px 0}}
.wx-scene{stroke:none}
[data-theme=dark] .home-weather[data-condition=clear][data-period=day]{background:radial-gradient(ellipse at 90% 10%,#d4a85724,transparent 55%),linear-gradient(135deg,#164348dd,#23364fe0)}
@media(max-width:760px){.weather-visual{height:77px}.forecast-day{padding:2px 1px}.forecast-icon{height:21px;margin-bottom:2px}.weather-forecast{margin:4px 0}.weather-solar{padding:4px 7px}}
@media(max-width:760px) and (max-height:760px){.weather-visual{height:65px}}
.weather-solar{display:none!important}
.home-prayers{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}
.prayer-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.prayer-heading h3{font-size:12px;font-weight:600;margin:0}.prayer-heading select{max-width:160px;border:1px solid var(--line);border-radius:8px;background:var(--glass);padding:4px 7px;font:inherit;font-size:10px;color:var(--muted)}
.prayer-times{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.prayer-time{display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 2px;border:1px solid #ffffff55;border-radius:12px;background:#ffffff2b}.prayer-time i{display:block;width:22px;height:22px;color:#7898bc}.prayer-time svg{display:block;width:100%;height:100%}.prayer-time[data-prayer=Sunrise] i,.prayer-time[data-prayer=Dhuhr] i,.prayer-time[data-prayer=Asr] i{color:#d3a440}.prayer-time[data-prayer=Sunset] i,.prayer-time[data-prayer=Maghrib] i{color:#c48c91}.prayer-time span{font-size:10px;color:var(--muted)}.prayer-time time{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;direction:ltr}.prayer-time.next-prayer{background:#8fe6d62e;border-color:#38b7ac66;box-shadow:inset 0 0 0 1px #56d5c512}.prayer-time.next-prayer i{color:#159e9d}
.prayer-status,.prayer-meta{font-size:9px;color:var(--muted);line-height:1.4;margin:6px 0 0}.prayer-status:empty,.prayer-meta:empty{display:none}.prayer-status button{border:0;background:transparent;text-decoration:underline;color:inherit;font:inherit;cursor:pointer}
@media(max-height:800px) and (min-width:761px){.weather-visual{height:85px}.weather-forecast{margin:8px 0}.forecast-day{padding:3px 2px}.forecast-icon{height:24px;width:31px;margin-bottom:2px}.forecast-day span{font-size:10px}.forecast-day small{font-size:10px;margin-top:2px}.home-prayers{margin-top:8px;padding-top:8px}.prayer-time{padding:5px 1px;gap:3px}.prayer-time i{width:19px;height:19px}.prayer-time time{font-size:12px}.prayer-heading{margin-bottom:6px}.prayer-meta{font-size:8px;margin-top:4px}}
@media(max-width:760px){.home-weather{padding:12px}.weather-visual{height:60px}.weather-details{padding:7px 0}.forecast-day span{font-size:9px}.forecast-day strong{font-size:11px}.forecast-day small{font-size:9px;margin-top:1px}.forecast-icon{height:17px;width:23px}.forecast-day{padding:2px 1px}.location-actions{margin-top:6px}.home-prayers{margin-top:7px;padding-top:7px}.prayer-heading{margin-bottom:5px}.prayer-heading h3{font-size:10px}.prayer-heading select{font-size:9px;padding:3px 5px;max-width:125px}.prayer-time{padding:4px 1px;gap:3px;border-radius:9px}.prayer-times{gap:3px}.prayer-time i{width:17px;height:17px}.prayer-time span{font-size:8px}.prayer-time time{font-size:10px}.prayer-meta{font-size:7px;margin-top:4px}}
@media(max-width:760px) and (max-height:780px){.prayer-meta{display:none}.home-prayers{margin-top:5px;padding-top:5px}.prayer-time{gap:2px;padding:3px 0}.prayer-time i{width:15px;height:15px}}
.weather-details>div{display:grid;grid-template-columns:17px max-content;justify-content:center;align-content:center;column-gap:6px;row-gap:6px;padding-inline-start:0;text-align:center}.weather-detail-icon{position:static;grid-column:1;grid-row:1;align-self:center}.weather-details>div>span{grid-column:2;grid-row:1;margin:0;text-align:center}.weather-details>div>strong{grid-column:1/-1;grid-row:2;justify-self:center}
@media(max-width:760px){.weather-details>div{grid-template-columns:1fr;row-gap:4px}.weather-details>div>span{grid-column:1}.weather-detail-icon{display:none}}
.home-weather{display:flex;flex-direction:column;justify-content:center}.weather-card-content{width:100%;flex:none}
@media(min-width:761px) and (min-height:801px){.weather-visual{height:110px}.weather-details{padding:14px 0}.weather-forecast{margin:12px 0}.forecast-day{padding:6px 3px}.prayer-time{gap:3px;padding:5px 2px}}
@media(min-width:761px) and (max-height:800px){.weather-visual{height:72px}.weather-details{padding:8px 0}.forecast-icon{height:21px}.forecast-day{padding:2px 1px}.weather-forecast{margin:6px 0}.prayer-time{padding:4px 1px}.prayer-heading select{padding:3px 6px}.home-prayers{margin-top:6px;padding-top:6px}}
@media(max-width:760px){.home-grid{grid-template-rows:minmax(0,1fr) 185px}.home-weather .home-section-label{margin-bottom:5px}.weather-visual{height:50px}.weather-details{padding:6px 0}.forecast-icon{height:15px}.prayer-time{gap:2px;padding:3px 1px}.prayer-heading select{padding:2px 5px}}
@media(max-width:760px) and (max-height:760px){.home-grid{grid-template-rows:minmax(0,1fr) 175px}.weather-visual{height:45px}.home-prayers{margin-top:4px;padding-top:4px}}

.weather-details{grid-template-columns:repeat(5,minmax(0,1fr))}.weather-details>div{min-width:0}.weather-et strong{font-variant-numeric:tabular-nums;direction:ltr}
@media(max-width:760px){.weather-et strong{font-size:10px}.weather-details{gap:5px}.weather-et>span{font-size:9px}}

/* Align each weather reading directly below its text title. */
.weather-details>div>strong{grid-column:2}
@media(max-width:760px){.weather-details>div>strong{grid-column:1}}

/* The shared interactive forecast card inside the signed-in workspace. */
#workspace.global-weather-workspace{overflow:auto;padding:24px;display:block}
.global-weather-workspace>.home-weather{width:100%;max-width:920px;min-height:580px;height:auto;margin:0 auto;padding:30px;border-radius:26px;justify-content:center}
.global-weather-workspace .weather-visual{height:130px}.global-weather-workspace .weather-temperature{font-size:64px}.global-weather-workspace .weather-forecast{display:grid;margin:16px 0}.global-weather-workspace .weather-details{padding:18px 0}.global-weather-workspace .weather-details strong{font-size:17px}.global-weather-workspace .location-actions{margin-top:18px}.global-weather-workspace .home-prayers{margin-top:18px;padding-top:16px}.global-weather-workspace .prayer-time{padding:12px 4px;gap:6px}.global-weather-workspace .prayer-time span{font-size:11px}.global-weather-workspace .prayer-time time{font-size:14px}.global-weather-workspace .prayer-meta{display:block;font-size:10px}.global-weather-workspace .prayer-heading h3{font-size:13px}.global-weather-workspace .prayer-heading select{font-size:11px}.global-weather-workspace .weather-heading h2{font-size:24px}.global-weather-workspace .weather-status{font-size:12px}
@media(max-width:760px){#workspace.global-weather-workspace{padding:14px}.global-weather-workspace>.home-weather{padding:20px;min-height:0}.global-weather-workspace .weather-visual{height:110px}.global-weather-workspace .weather-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 8px}.global-weather-workspace .prayer-times{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.global-weather-workspace .prayer-heading{flex-wrap:wrap}.global-weather-workspace .location-actions{align-items:stretch}.global-weather-workspace .city-search{min-width:160px}}
#workspace.global-weather-workspace{padding:28px}
#workspace.global-weather-workspace>.home-weather{max-width:none;min-height:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
#workspace.global-weather-workspace>.home-weather:before{display:none}
@media(max-width:760px){#workspace.global-weather-workspace{padding:20px}#workspace.global-weather-workspace>.home-weather{min-height:0}}

.seasonal-workspace{overflow:auto!important;padding:26px!important}.seasonal-page{max-width:1500px;margin:auto;color:var(--ink)}.seasonal-heading,.seasonal-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.seasonal-heading h1{font-size:27px;margin:5px 0 7px}.seasonal-heading p:not(.seasonal-eyebrow),.seasonal-panel-heading p{font-size:12px;color:var(--muted);margin:0}.seasonal-eyebrow{font-size:9px;font-weight:600;letter-spacing:1.8px;color:#168b87;margin:0 0 7px}.seasonal-actions{display:flex;align-items:center;gap:12px}.seasonal-page button{font:inherit;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:12px;border:1px solid var(--line);padding:9px 12px;color:var(--ink);background:var(--glass);cursor:pointer}.seasonal-page button:hover:not(:disabled){background:var(--hover)}.seasonal-page button:disabled{opacity:.45;cursor:default}.seasonal-page button.seasonal-primary{background:#238e91;color:white;border-color:transparent}.seasonal-page button.seasonal-primary:hover{background:#197f83}.seasonal-preview-tag,.seasonal-source-badge{border:1px solid #6fbfbf44;background:#88e3d61c;color:#238e87;border-radius:9px;padding:6px 9px;font-size:10px;white-space:nowrap}.seasonal-status{font-size:11px;color:var(--muted);min-height:14px;margin:10px 0}.seasonal-summary{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:22px;align-items:center;padding:18px 22px;border:1px solid #76bfbf40;background:linear-gradient(110deg,#85e6d51c,#9aafe910);border-radius:18px}.seasonal-summary>div{display:flex;flex-direction:column;gap:5px}.seasonal-summary>div>span{font-size:9px;letter-spacing:1px;color:var(--muted)}.seasonal-summary strong{font-size:28px;line-height:1.2}.seasonal-summary small{font-size:10px;color:var(--muted)}.seasonal-summary>p{font-size:11px;line-height:1.8;color:var(--muted);margin:0;max-width:330px}.seasonal-modes{border:0;padding:0;margin:20px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.seasonal-modes legend{font-size:13px;font-weight:600;padding:0;margin-bottom:10px}.seasonal-mode{display:grid;grid-template-columns:25px 1fr 18px;gap:5px 7px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:15px;background:#ffffff35;cursor:pointer;position:relative}.seasonal-mode input{grid-column:3;grid-row:1;accent-color:#1a9e98;width:15px;height:15px;margin:0}.seasonal-mode-icon{grid-row:1;grid-column:1;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#26aab0;font-size:21px;filter:drop-shadow(0 0 4px #32b6b630)}.seasonal-mode strong{grid-column:2;grid-row:1;font-size:11px;font-weight:600;line-height:1.5}.seasonal-mode small{grid-column:1/-1;font-size:10px;color:var(--muted);line-height:1.6}.seasonal-mode.selected{border-color:#24afa582;background:linear-gradient(120deg,#a3f0de30,#b6e7f024);box-shadow:inset 0 0 0 1px #24afa51a}.seasonal-mode.unavailable{opacity:.6;cursor:default}.seasonal-columns{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:16px;align-items:start}.seasonal-panel{padding:20px;border:1px solid #ffffff90;border-radius:18px;background:linear-gradient(125deg,#ffffff65,#ffffff28);box-shadow:0 4px 20px #25556a08}.seasonal-panel h2{font-size:15px;margin:0 0 7px}.seasonal-panel-heading{align-items:flex-start}.seasonal-panel-heading button{font-size:10px;white-space:nowrap}.seasonal-panel-heading p{line-height:1.7}.seasonal-chart{height:160px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;margin:25px 0 10px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 39px,#8cacbf14 39px,#8cacbf14 40px)}.seasonal-bar{display:flex;flex-direction:column;align-items:center;min-width:0;gap:5px}.seasonal-bar strong{font-size:9px;font-weight:500;color:var(--muted);height:12px;white-space:nowrap}.seasonal-bar>div{height:112px;width:65%;display:flex;align-items:end}.seasonal-bar i{display:block;width:100%;min-height:0;background:linear-gradient(to bottom,#7aa7d6,#7aa7d62b);border-top:2px solid #6c99c8;border-radius:5px 5px 0 0;transition:height .15s}.seasonal-bar.current i{background:linear-gradient(to bottom,#21b6a6,#21b6a62b);border-color:#119c91}.seasonal-bar.current span,.seasonal-bar.current strong{color:#198e87;font-weight:700}.seasonal-bar span{font-size:9px;color:var(--muted);margin-bottom:5px}.seasonal-note{font-size:10px;line-height:1.75;color:var(--muted);margin:10px 0}.seasonal-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.seasonal-month{border:1px solid var(--line);background:#ffffff20;border-radius:12px;padding:11px}.seasonal-month.current{border-color:#37b2a96b;background:#84e4d51c}.seasonal-month>div{display:flex;align-items:center;justify-content:space-between;gap:5px}.seasonal-month>div>label:first-child{font-size:11px;font-weight:500}.seasonal-percentage{display:flex;align-items:center;gap:3px;font-size:11px;color:var(--muted)}.seasonal-percentage input{width:42px;text-align:center;font:inherit;font-size:11px;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:3px 0;color:var(--ink);background:transparent;-moz-appearance:textfield}.seasonal-percentage input::-webkit-inner-spin-button{appearance:none}.seasonal-page input[type=range]{width:100%;height:5px;accent-color:#28a89f;cursor:pointer;margin:16px 0 7px;direction:ltr}.seasonal-page input[type=range]:focus-visible{outline:2px solid #239e9e;outline-offset:6px}.seasonal-page .seasonal-reset{margin-top:16px;background:transparent}.seasonal-side{display:grid;gap:16px}.seasonal-recommendation>p:first-of-type{font-size:12px;line-height:1.5;margin:15px 0;color:var(--muted)}.seasonal-weather-data{display:grid;gap:9px;margin:15px 0 20px}.seasonal-weather-data>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.seasonal-weather-data dt{font-size:11px;color:var(--muted)}.seasonal-weather-data dd{font-size:12px;margin:0;font-weight:600;direction:ltr}.seasonal-field{display:flex;flex-direction:column;gap:8px;font-size:11px;line-height:1.7}.seasonal-field input{height:36px;width:100%;padding:6px 10px;color:var(--ink);font:inherit;background:#ffffff30;border:1px solid var(--line);border-radius:10px;direction:ltr}.seasonal-recommendation-value{display:flex;align-items:center;gap:14px;padding:12px 0}.seasonal-recommendation-value strong{font-size:30px;flex:none}.seasonal-recommendation-value span{font-size:10px;color:var(--muted);line-height:1.6}.seasonal-rec-actions{display:flex;gap:8px;flex-wrap:wrap}.seasonal-page .seasonal-text-button{border:0;background:none;padding-inline:0;color:#198d89;margin-top:10px}.seasonal-calculator h2{margin-bottom:16px}.seasonal-runtime-result{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;background:linear-gradient(120deg,#a2ddf01c,#8ae9d71a);border-radius:14px;padding:18px;margin-top:16px}.seasonal-runtime-result>span,.seasonal-runtime-result small{font-size:10px;color:var(--muted)}.seasonal-runtime-result strong{font-size:29px;font-weight:650}.seasonal-guidance{margin:20px 0;color:var(--muted);font-size:11px;line-height:1.8}.seasonal-guidance summary{cursor:pointer;font-weight:600;color:var(--ink)}.seasonal-guidance a{color:#168d88}.seasonal-page input:focus-visible,.seasonal-page button:focus-visible,.seasonal-guidance summary:focus-visible{outline:2px solid #239e9e;outline-offset:3px}
[data-theme=dark] .seasonal-panel,[data-theme=dark] .seasonal-mode{background:linear-gradient(120deg,#72a8c014,#4b699017);border-color:#a9cbdf24}[data-theme=dark] .seasonal-mode.selected{border-color:#45c6b570;background:#2f8b7940}[data-theme=dark] .seasonal-field input{background:#ffffff08}[data-theme=dark] .seasonal-page button.seasonal-primary{background:#278e85}
@media(max-width:1200px){.seasonal-modes{grid-template-columns:repeat(2,minmax(0,1fr))}.seasonal-columns{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}.seasonal-months{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.seasonal-columns{grid-template-columns:1fr}.seasonal-side{grid-template-columns:repeat(2,minmax(0,1fr))}.seasonal-months{grid-template-columns:repeat(3,minmax(0,1fr))}.seasonal-summary{grid-template-columns:1fr 1fr}.seasonal-summary>p{grid-column:1/-1;max-width:none}}
@media(max-width:600px){.seasonal-workspace{padding:16px!important}.seasonal-heading{align-items:flex-start;flex-wrap:wrap}.seasonal-heading h1{font-size:24px}.seasonal-actions{width:100%;justify-content:space-between}.seasonal-modes,.seasonal-side{grid-template-columns:1fr}.seasonal-months{grid-template-columns:repeat(2,minmax(0,1fr))}.seasonal-panel{padding:15px}.seasonal-panel-heading{flex-wrap:wrap}.seasonal-chart{gap:3px}.seasonal-bar strong{font-size:8px}.seasonal-bar span{font-size:8px}.seasonal-bar>div{width:75%}.seasonal-summary{padding:16px;gap:14px}.seasonal-summary strong{font-size:25px}}
@media(prefers-reduced-motion:reduce){.seasonal-bar i{transition:none}}
.seasonal-page input[type=range]{appearance:none;-webkit-appearance:none;border-radius:99px;background:linear-gradient(to right,#28a89f var(--range-fill,50%),#91adba36 var(--range-fill,50%));outline-offset:5px}.seasonal-page input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:15px;height:15px;border-radius:50%;background:#fff;border:3px solid #28a89f;box-shadow:0 1px 4px #286b6b20}.seasonal-page input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#fff;border:3px solid #28a89f}
/* Compact desktop composition: keep the twelve sliders and previews on one screen. */
@media(min-width:1000px){
.seasonal-workspace{padding:14px 20px!important}.seasonal-heading h1{font-size:22px;margin:2px 0}.seasonal-heading>div>p:not(.seasonal-eyebrow){display:none}.seasonal-eyebrow{font-size:8px;margin-bottom:4px}.seasonal-heading .seasonal-actions{gap:8px}.seasonal-page button{padding:6px 10px;font-size:10px;border-radius:10px}.seasonal-status{min-height:12px;font-size:10px;margin:3px 0}.seasonal-summary{padding:9px 14px;gap:15px;border-radius:13px;grid-template-columns:1fr 1fr 1.5fr}.seasonal-summary>div{gap:2px}.seasonal-summary strong{font-size:22px}.seasonal-summary>div>span{font-size:8px}.seasonal-summary small{font-size:9px}.seasonal-summary>p{font-size:10px;line-height:1.6;max-width:none}.seasonal-modes{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:9px 0}.seasonal-modes legend{font-size:11px;margin-bottom:5px}.seasonal-mode{padding:8px 10px;gap:3px 5px;border-radius:12px;grid-template-columns:20px 1fr 15px}.seasonal-mode-icon{width:20px;height:20px;font-size:18px}.seasonal-mode strong{font-size:10px;line-height:1.4}.seasonal-mode small{font-size:9px;line-height:1.4}.seasonal-mode input{width:13px;height:13px}.seasonal-columns{grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr);gap:12px}.seasonal-panel{padding:12px;border-radius:14px}.seasonal-panel h2{font-size:13px;margin-bottom:3px}.seasonal-panel-heading p:not(.seasonal-eyebrow){display:none}.seasonal-panel-heading button{font-size:9px;padding:5px 8px}.seasonal-chart{height:81px;margin:12px 0 7px;gap:5px;background:repeating-linear-gradient(to top,transparent 0,transparent 26px,#8cacbf14 26px,#8cacbf14 27px)}.seasonal-bar{gap:2px}.seasonal-bar>div{height:52px}.seasonal-bar strong{font-size:8px;height:10px}.seasonal-bar span{font-size:9px;margin-bottom:4px}.seasonal-note{font-size:9px;line-height:1.5;margin:6px 0}.seasonal-months{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:9px}.seasonal-month{padding:6px 7px;border-radius:9px}.seasonal-month>div>label:first-child{font-size:10px}.seasonal-percentage input{width:30px;font-size:10px;padding:1px 0}.seasonal-percentage{font-size:10px}.seasonal-page input[type=range]{height:4px;margin:9px 0 4px}.seasonal-page .seasonal-reset{padding:4px 7px;font-size:9px;margin-top:7px}.seasonal-side{gap:9px}.seasonal-recommendation .seasonal-panel-heading{align-items:center}.seasonal-source-badge{font-size:9px;padding:4px 6px}.seasonal-recommendation>p:first-of-type{font-size:10px;margin:6px 0}.seasonal-weather-data{gap:5px;margin:7px 0 9px}.seasonal-weather-data dt{font-size:10px}.seasonal-weather-data dd{font-size:10px}.seasonal-field{font-size:10px;line-height:1.5;gap:4px}.seasonal-field input{height:28px;padding:4px 7px;font-size:11px}.seasonal-recommendation>.seasonal-note,.seasonal-calculator>.seasonal-note{display:none}.seasonal-recommendation-value{padding:8px 0;gap:9px}.seasonal-recommendation-value strong{font-size:24px}.seasonal-recommendation-value span{font-size:9px;line-height:1.4}.seasonal-rec-actions{gap:5px}.seasonal-rec-actions button{font-size:9px;padding:6px 8px}.seasonal-page .seasonal-text-button{margin-top:5px;font-size:10px;padding:3px 0}.seasonal-calculator{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;align-items:center}.seasonal-calculator h2{grid-column:1/-1;margin:0 0 3px}.seasonal-calculator .seasonal-field{grid-column:1;grid-row:2}.seasonal-calculator>input[type=range]{grid-column:1;grid-row:3;margin:4px 0}.seasonal-runtime-result{grid-column:2;grid-row:2/4;padding:9px 5px;margin:0;gap:4px}.seasonal-runtime-result strong{font-size:21px}.seasonal-runtime-result>span,.seasonal-runtime-result small{font-size:9px}.seasonal-guidance{font-size:10px;margin:9px 0 0;line-height:1.6}
}
@media(min-width:1000px) and (max-height:780px){
.seasonal-workspace{padding:10px 16px!important}.seasonal-heading .seasonal-eyebrow{display:none}.seasonal-heading h1{font-size:20px}.seasonal-status{margin:2px 0;min-height:11px;font-size:9px}.seasonal-summary{padding:7px 12px}.seasonal-summary strong{font-size:20px}.seasonal-summary>div{gap:1px}.seasonal-summary small{font-size:8px}.seasonal-modes{margin:7px 0}.seasonal-mode{padding:7px 8px}.seasonal-modes legend{margin-bottom:4px}.seasonal-panel{padding:10px}.seasonal-chart{height:61px;margin:8px 0 5px}.seasonal-bar>div{height:35px}.seasonal-bar strong{font-size:8px}.seasonal-bar span{font-size:8px;margin-bottom:2px}.seasonal-months{gap:5px;margin-top:7px}.seasonal-month{padding:4px 6px}.seasonal-month input[type=range]{margin:7px 0 3px}.seasonal-recommendation .seasonal-panel-heading .seasonal-eyebrow{display:none}.seasonal-recommendation .seasonal-panel-heading h2{margin:0}.seasonal-recommendation>p:first-of-type{margin:4px 0}.seasonal-recommendation .seasonal-field{display:grid;grid-template-columns:minmax(0,1fr) 75px;align-items:center;gap:8px}.seasonal-weather-data{margin:6px 0;gap:4px}.seasonal-recommendation-value{padding:5px 0}.seasonal-recommendation-value strong{font-size:23px;line-height:1.1}.seasonal-page .seasonal-text-button{padding:2px 0;margin-top:3px}.seasonal-side{gap:7px}.seasonal-calculator{gap:3px 9px}.seasonal-calculator .seasonal-field{gap:3px}.seasonal-runtime-result{padding:7px 4px;gap:3px}.seasonal-runtime-result strong{font-size:19px}.seasonal-guidance{margin-top:6px}
}
/* Increase the annual graph height by 200% while keeping its labels readable. */
.seasonal-chart{height:480px}.seasonal-bar>div{height:auto;flex:1;min-height:0}
@media(min-width:1000px){.seasonal-chart{height:243px}}
@media(min-width:1000px) and (max-height:780px){.seasonal-chart{height:183px}}
.seasonal-formula{display:flex;align-items:center;justify-content:center;gap:7px;direction:ltr;font-family:Georgia,serif;font-style:italic;font-size:16px;line-height:1.2;padding:7px 0 10px;color:var(--ink)}.seasonal-formula sub{font-size:10px;font-style:normal}.seasonal-fraction{display:inline-flex;flex-direction:column;text-align:center;font-size:13px;gap:2px}.seasonal-fraction>span:first-child{border-bottom:1px solid currentColor;padding:0 5px 2px}.seasonal-fraction>span:last-child{font-style:normal}
@media(min-width:1000px){.seasonal-calculator .seasonal-formula{grid-column:1/-1;grid-row:2;padding:4px 0 7px;font-size:15px}.seasonal-calculator .seasonal-field{grid-row:3}.seasonal-calculator>input[type=range]{grid-row:4}.seasonal-calculator .seasonal-runtime-result{grid-row:3/5}}
.seasonal-mode-icon{width:30px;height:30px;filter:drop-shadow(0 0 5px #4cb9ce44)}.seasonal-mode-icon svg{display:block;width:100%;height:100%;overflow:visible}.seasonal-mode{grid-template-columns:30px 1fr 18px}
@media(min-width:1000px){.seasonal-mode-icon{width:28px;height:28px}.seasonal-mode{grid-template-columns:28px 1fr 15px}}
.seasonal-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.seasonal-source-control{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:-1px 0 10px;font-size:10px;color:var(--muted)}.seasonal-source-control[hidden]{display:none}.seasonal-source-control select{font:inherit;font-size:11px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--glass);color:var(--ink)}@media(min-width:1000px){.seasonal-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.seasonal-source-control{margin:0 0 7px}.seasonal-source-control select{padding:4px 8px;font-size:10px}}@media(max-width:600px){.seasonal-modes{grid-template-columns:1fr}.seasonal-source-control{justify-content:flex-start;flex-wrap:wrap}}

/* Fit the monthly controls and both previews into the desktop workstation. */
@media(min-width:1000px){
 #workspace.seasonal-workspace{padding:10px 16px!important}
 .seasonal-page .seasonal-heading h1{font-size:20px;margin:2px 0}
 .seasonal-page .seasonal-summary{padding:7px 12px;gap:12px}.seasonal-page .seasonal-summary strong{font-size:20px}
 .seasonal-page .seasonal-modes{margin:7px 0;gap:7px}.seasonal-page .seasonal-mode{padding:6px 8px;grid-template-columns:24px 1fr 15px}.seasonal-page .seasonal-mode-icon{width:24px;height:24px}
 .seasonal-page .seasonal-source-control{margin-bottom:6px}.seasonal-source-control .metrix-select-trigger{height:30px;min-height:30px;padding:0 30px 0 12px;font-size:10px}
 .seasonal-page .seasonal-chart{height:clamp(80px,calc(100dvh - 700px),140px);margin:8px 0 5px}
 .seasonal-page .seasonal-panel{padding:10px}.seasonal-page .seasonal-months{gap:5px;margin-top:7px}.seasonal-page .seasonal-month{padding:5px 6px}.seasonal-page .seasonal-month input[type=range]{margin:7px 0 3px}
 .seasonal-page .seasonal-side{gap:7px}.seasonal-page .seasonal-weather-data{margin:5px 0;gap:4px}.seasonal-page .seasonal-recommendation-value{padding:5px 0}.seasonal-page .seasonal-recommendation>p:first-of-type{margin:4px 0}
 .seasonal-page .seasonal-calculator{gap:3px 9px}.seasonal-page .seasonal-formula{padding:2px 0 4px;font-size:13px}.seasonal-page .seasonal-runtime-result{padding:7px 4px;gap:3px}.seasonal-page .seasonal-runtime-result strong{font-size:19px}.seasonal-page .seasonal-guidance{margin-top:6px}
}

@media(min-width:1000px){.seasonal-page .seasonal-columns{align-items:stretch}.seasonal-page .seasonal-year{display:flex;flex-direction:column}.seasonal-page .seasonal-year .seasonal-chart{flex:1;height:auto;min-height:clamp(80px,calc(100dvh - 700px),140px)}.seasonal-year .seasonal-reset{align-self:flex-start}}

#workspace.program-guide-workspace{padding:24px;overflow:auto}.program-mode-guide{margin:0 0 20px;color:var(--ink)}.program-mode-guide-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 11px}.program-mode-guide-heading h2{font-size:14px;font-weight:600;margin:0}.program-mode-guide-heading p{font-size:10px;color:var(--muted);margin:0}.program-mode-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.program-mode-info{display:grid;grid-template-columns:25px 1fr;gap:6px 8px;align-content:start;padding:14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(125deg,#ffffff65,#ffffff28);box-shadow:0 3px 14px #25556a06}.program-mode-info-icon{grid-row:1;width:24px;height:24px;display:grid;place-items:center;color:#2aa5ad;filter:drop-shadow(0 0 3px #38acb72b)}.program-mode-info-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.program-mode-info h3{grid-column:2;margin:0;align-self:center;font-size:11px;font-weight:600;line-height:1.5}.program-mode-info p{grid-column:1/-1;margin:0;font-size:10px;color:var(--muted);line-height:1.7}[data-theme=dark] .program-mode-info{background:linear-gradient(120deg,#72a8c014,#4b699017);border-color:#a9cbdf24}@media(max-width:1100px){.program-mode-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){#workspace.program-guide-workspace{padding:16px}.program-mode-guide-heading{align-items:start;flex-direction:column;gap:5px}.program-mode-info-grid{grid-template-columns:1fr}}
.program-mode-info{grid-template-columns:32px 1fr}.program-mode-info-icon{width:32px;height:32px;filter:drop-shadow(0 0 5px #4cb9ce44)}.program-mode-info-icon svg{width:32px;height:32px;overflow:visible}
.program-mode-info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1100px){.program-mode-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.program-mode-info-grid{grid-template-columns:1fr}}

.parameter-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--glass);margin-top:20px}.parameter-tools h2{font-size:15px;margin:0 0 7px}.parameter-tools p{font-size:11px;color:var(--muted);line-height:1.7;margin:0}.parameter-tools button{flex:none;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--glass);color:var(--ink);font:inherit;font-size:12px;cursor:pointer}.parameter-dialog{width:min(720px,calc(100vw - 32px))}.parameter-intro,.parameter-hint{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 16px}.parameter-target-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;align-items:end}.parameter-dialog label{display:flex;flex-direction:column;font-size:11px;gap:7px;line-height:1.6}.parameter-dialog input,.parameter-dialog select,.parameter-dialog textarea{width:100%;font:inherit;font-size:12px;color:var(--ink);background:var(--glass);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.parameter-dialog textarea{direction:ltr;resize:vertical;font-family:monospace}.parameter-dialog button{font:inherit;font-size:12px;border:1px solid var(--line);border-radius:12px;padding:9px 14px;background:var(--glass);color:var(--ink);cursor:pointer}.parameter-dialog button:disabled{opacity:.5;cursor:default}.parameter-target-grid>button{grid-column:1/-1;justify-self:end}.parameter-message{font-size:12px;line-height:1.8;color:var(--muted);min-height:18px;margin:15px 0}.parameter-current,.parameter-compare>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:#ffffff24;margin:12px 0}.parameter-current>span,.parameter-compare span{font-size:10px;color:var(--muted)}.parameter-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto;direction:ltr;text-align:left;font-size:12px;line-height:1.6;margin:8px 0 0}.parameter-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.parameter-review-meta{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:12px}.parameter-review-meta dt{color:var(--muted)}.parameter-review-meta dd{margin:0}.parameter-hint{font-size:10px;margin:8px 0}@media(max-width:650px){.parameter-tools{flex-direction:column;align-items:start}.parameter-target-grid,.parameter-compare{grid-template-columns:1fr}.parameter-target-grid>button{justify-self:stretch}}

.native-workspace-host{overflow:auto!important;min-width:0;scrollbar-gutter:stable}.native-workspace{padding:24px;min-width:0;max-width:100%;color:var(--ink,#263e58);box-sizing:border-box}.native-workspace *{box-sizing:border-box}.native-workspace h1,.native-workspace h2,.native-workspace h3,.native-workspace p{margin:0}.nw-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.nw-kicker{font-size:9px;letter-spacing:1.8px;color:#269d9e;line-height:1.6;text-transform:uppercase}.nw-heading h1{font-size:25px;letter-spacing:-.6px;line-height:1.35;margin-top:4px}.nw-intro{font-size:11px;color:#73859e;line-height:1.7;margin-top:5px!important}.nw-toolbar,.nw-list-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.native-workspace button,.nw-detail-dialog button{font:inherit;cursor:pointer}.native-workspace button:not(.nw-resource):not(.nw-row-link):not(.nw-open-row):not([data-api]),.nw-detail-dialog button,.nw-toolbar select,.nw-list-actions select{min-height:36px;padding:8px 13px;border-radius:12px;border:1px solid #dbe7ef;background:rgba(255,255,255,.6);color:inherit;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;line-height:1.3}.native-workspace button:disabled,.nw-detail-dialog button:disabled{opacity:.48;cursor:not-allowed}.native-workspace button:hover:not(:disabled),.nw-detail-dialog button:hover:not(:disabled){border-color:#76cdd0;background:rgba(225,248,247,.6)}.native-workspace button:focus-visible,.native-workspace input:focus-visible,.native-workspace select:focus-visible,.nw-detail-dialog input:focus-visible{outline:2px solid #36b9bd;outline-offset:3px}.nw-toolbar svg{width:19px;height:19px}.nw-toolbar .metrix-select{width:235px;max-width:100%}.nw-toolbar .metrix-select-trigger{width:100%;justify-content:space-between!important}.nw-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(235px,100%),1fr));gap:12px;margin-bottom:18px}.nw-resource{position:relative;text-align:start;display:flex;align-items:center;gap:12px;min-height:100px;border:1px solid rgba(207,222,235,.65);border-radius:19px;background:linear-gradient(130deg,rgba(255,255,255,.78),rgba(255,255,255,.35));padding:17px;color:inherit;box-shadow:0 5px 18px #577e9510;transition:border-color .18s,background .18s,transform .18s}.nw-resource:hover{transform:translateY(-2px)}.nw-resource.selected{border-color:#71d1ce;background:linear-gradient(130deg,#dcf7f175,#f3eeff70);box-shadow:inset 0 0 0 1px #bce9e650,0 7px 20px #26a7a510}.nw-resource strong{display:block;font-size:13px;line-height:1.5}.nw-resource small{display:block;font-size:10px;line-height:1.7;color:#788aa1;margin-top:5px;max-width:34em}.nw-resource-icon{display:inline-flex;width:39px;height:39px;flex:0 0 39px;filter:drop-shadow(0 3px 5px #89c8d735)}.nw-resource-icon svg{width:100%;height:100%}.nw-resource-arrow{margin-inline-start:auto;color:#91a7b7;align-self:flex-start;font-size:14px}.nw-guidance{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:12px;margin:0 0 18px}.nw-guidance article{display:flex;gap:12px;padding:16px;border:1px solid rgba(218,228,236,.7);border-radius:16px;background:rgba(255,255,255,.36);min-width:0}.nw-guidance h3{font-size:11px;font-weight:650;margin:0 0 6px}.nw-guidance p{color:#788aa1;font-size:10px;line-height:1.85;margin:0}.nw-guidance button,.nw-guidance .nw-pill{margin-top:12px}.nw-dot{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;background:linear-gradient(130deg,#dff6f4,#efebff);border-radius:9px;color:#41a8b3;font-size:10px}.nw-list-panel{background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.8);border-radius:21px;box-shadow:0 10px 32px #426c8710;overflow:hidden;margin-bottom:18px}.nw-list-heading{padding:19px 20px 10px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.nw-list-heading h2{font-size:15px;display:flex;align-items:center;gap:10px;line-height:1.6}.nw-count{display:inline-flex;min-width:26px;height:24px;align-items:center;justify-content:center;padding:0 7px;border:1px solid #cee9e9;border-radius:8px;color:#279eaa;background:#eaf7f6;font-size:11px;font-weight:500}.nw-search{display:flex;align-items:center;gap:6px;min-height:36px;background:rgba(248,251,254,.7);border:1px solid #dfe8ef;border-radius:11px;padding:0 10px;max-width:100%}.nw-search svg{width:17px;height:17px;flex:0 0 17px}.nw-search input{background:transparent;border:0;min-width:0;width:175px;color:inherit;font:inherit;font-size:11px;height:34px;outline:none}.nw-status{padding:5px 20px 13px!important;color:#7d8da3;font-size:10px;line-height:1.8;overflow-wrap:anywhere}.nw-status.error{color:#b65c73}.nw-table-scroll{overflow:auto;max-height:440px;scrollbar-width:thin;overscroll-behavior:contain}.nw-table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap;text-align:start}.nw-table th{text-align:start;font-weight:500;font-size:10px;color:#8292a5;background:rgba(236,244,248,.65);padding:11px 20px;position:sticky;top:0;z-index:1}.nw-table td{padding:13px 20px;border-bottom:1px solid #e6edf275;max-width:250px;overflow:hidden;text-overflow:ellipsis}.nw-table tr:last-child td{border-bottom:0}.nw-table tr:hover td{background:#dff6f23d}.nw-row-link{border:0;background:transparent;color:#2a8099;font-weight:600;text-align:start;padding:0;font-size:inherit}.nw-open-row{background:rgba(236,246,248,.6);color:#5f9db2;border:1px solid #d9e7ef;border-radius:9px;width:27px;height:27px;font-size:14px}.nw-value-tag{background:rgba(226,241,243,.6);color:#4e8393;border-radius:6px;padding:4px 7px;font-size:10px}.nw-list-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:13px 20px;color:#91a0b2;font-size:9px;border-top:1px solid #e2ebf0}.nw-empty{text-align:center;padding:38px 18px 42px}.nw-empty>span{display:inline-flex;width:44px;height:44px;margin-bottom:12px}.nw-empty svg{width:44px;height:44px}.nw-empty h3{font-size:13px}.nw-empty p{font-size:11px;color:#8392a8;line-height:1.8;margin-top:7px}.nw-danger{color:#bf607e!important;border-color:#ebcfdc!important}.nw-pill{display:inline-flex;padding:7px 11px;background:#e7f3f780;border:1px solid #d8e9ee;border-radius:9px;font-size:10px;color:#56899c}.nw-detail-dialog{width:650px;max-width:calc(100vw - 28px);color:var(--ink,#263e58)}.nw-detail-dialog .controller-dialog-heading{padding-bottom:15px;border-bottom:1px solid #e2eaf0}.nw-detail-hero{display:flex;gap:14px;padding:23px 0;align-items:center}.nw-detail-hero>span{display:flex;width:52px;height:52px;border-radius:16px;padding:9px;background:linear-gradient(130deg,#dff6f4,#efebff)}.nw-detail-hero h3{font-size:20px;margin:4px 0}.nw-detail-hero p:last-child{font-size:11px;color:#8092a6}.nw-detail-fields{margin:0 0 22px;font-size:11px;line-height:1.7}.nw-detail-fields>div{display:grid;grid-template-columns:minmax(100px,38%) minmax(0,1fr);gap:15px;padding:11px 0;border-bottom:1px solid #e7edf2}.nw-detail-fields dt{color:#8392a6}.nw-detail-fields dd{margin:0;overflow-wrap:anywhere}.nw-detail-fields pre,.nw-api-detail code{white-space:pre-wrap;word-break:break-word;font-size:11px;background:rgba(230,240,246,.6);border-radius:9px;padding:12px;max-height:260px;overflow:auto}.nw-detail-fields details summary{cursor:pointer;color:#3999a8}.nw-command-target{display:flex;align-items:center;gap:12px;background:linear-gradient(120deg,#e7f7f380,#efeaff80);padding:18px;border:1px solid #d9e9ec;border-radius:16px;margin:20px 0}.nw-command-target>span{width:38px;height:38px;display:flex}.nw-command-target small{color:#8193a5;display:block;margin-bottom:5px}.nw-command-target strong{font-size:14px}.nw-detail-dialog #controllerDialogBody>p{font-size:12px;line-height:1.9}.nw-confirm-label{display:grid;gap:8px;font-size:11px;margin-top:18px}.nw-confirm-label input{border:1px solid #d7e6ec;border-radius:10px;background:transparent;padding:11px;color:inherit}.nw-simulation-hero{text-align:center;padding:34px 24px 38px;border:1px solid #ffffffbf;background:radial-gradient(ellipse at 50% 0,#d6f5ef70,transparent 65%),linear-gradient(120deg,#ffffff80,#f2efff50);border-radius:23px;margin-bottom:18px}.nw-orbit{display:flex;align-items:center;justify-content:center;width:75px;height:75px;margin:0 auto 17px;border:1px solid #d6e9ee;border-radius:24px;background:linear-gradient(130deg,#e0f6f2,#f0eaff);box-shadow:0 10px 24px #90aabb20}.nw-orbit svg{width:43px;height:43px}.nw-simulation-hero h2{font-size:26px;letter-spacing:-.7px;margin:7px 0 12px}.nw-simulation-hero>p:not(.nw-kicker){font-size:12px;line-height:1.9;max-width:550px;margin:0 auto 20px;color:#7c8ca2}.nw-simulation-hero .nw-status{margin-top:15px!important;margin-bottom:0!important}.native-workspace .controller-primary{background:#259ca1!important;border-color:#259ca1!important;color:#fff!important}.nw-library-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #ffffffb0;border-radius:23px;padding:27px;background:radial-gradient(ellipse at 0 0,#d3f7ef80,transparent 80%),linear-gradient(120deg,#fff7,#ece9fd50);margin-bottom:20px}.nw-library-hero h2{font-size:27px;letter-spacing:-.7px;margin:6px 0 10px}.nw-library-hero p:not(.nw-kicker){font-size:11px;line-height:1.9;color:#7e8da4;max-width:500px}.nw-library-count{text-align:center;min-width:115px;padding:14px;border-inline-start:1px solid #d6e7eb}.nw-library-count strong{display:block;font-size:43px;line-height:1.3;color:#399da8;font-weight:500;letter-spacing:-2px}.nw-library-count span{font-size:9px;color:#8a99ac}.nw-api-list{max-height:520px;overflow:auto}.nw-api-list>button{width:100%;border:0;border-bottom:1px solid #e3ebef80;background:transparent;display:flex;text-align:start;align-items:center;gap:16px;padding:14px 20px;color:inherit}.nw-api-operation{min-width:0;flex:1}.nw-api-operation strong{font-size:11px;font-weight:500;font-family:monospace;word-break:break-word;display:block;direction:ltr;text-align:start}.nw-api-operation small{font-size:10px;color:#8595a9;display:block;margin-top:5px}.nw-api-purpose{font-size:10px;color:#7a8ca3;max-width:160px}.nw-method{display:inline-flex;align-items:center;justify-content:center;background:#e5f6f3;color:#259c96;border:1px solid #cfece5;border-radius:7px;padding:5px 6px;min-width:48px;font-size:9px;line-height:1.4;direction:ltr}.nw-method.post,.nw-method.patch{background:#eeeafb;color:#9980c6;border-color:#e2d8f1}.nw-method.delete{background:#fcebf2;color:#c47190;border-color:#f2d4e0}.nw-method.obj,.nw-method.rpc,.nw-method.put{background:#e7effb;color:#678ec6;border-color:#d6e4f7}.nw-api-detail{padding-top:20px}.nw-api-detail code{display:block;margin:15px 0 20px;direction:ltr}.nw-api-detail h3{font-size:16px}.nw-api-detail p{font-size:12px;line-height:1.9;color:#6c829b}.nw-api-detail .nw-detail-fields{margin-top:18px}
/* Reuse the established shell and keep every section inside its workstation. */
.native-workspace-host.program-guide-workspace{display:block!important}.native-workspace-host #parameterTools{display:none}.native-workspace-host #programModeGuide{margin:0 24px 22px;padding:18px}.native-workspace-host .valve-management{padding-bottom:0}.native-workspace-host .valve-panel{margin-bottom:0}.native-workspace-host #valveManagement+.native-workspace{padding-top:18px}.native-workspace-host .controllers-shell{min-height:0}.native-workspace-host .nw-heading .metrix-select-menu{z-index:50}
[data-theme="dark"] .nw-list-panel,[data-theme="dark"] .nw-resource,[data-theme="dark"] .nw-guidance article,[data-theme="dark"] .nw-simulation-hero,[data-theme="dark"] .nw-library-hero{background:rgba(23,45,62,.65);border-color:#46647866}[data-theme="dark"] .nw-resource.selected{background:linear-gradient(120deg,#28585c70,#3b365970);border-color:#4c9da3}[data-theme="dark"] .native-workspace{color:#dbe7f4}[data-theme="dark"] .nw-table th{background:#203c50}[data-theme="dark"] .nw-search,[data-theme="dark"] .native-workspace button:not(.nw-resource):not(.nw-row-link):not(.nw-open-row):not([data-api]),[data-theme="dark"] .nw-list-actions select{background:#263e53;color:#dbe7f4;border-color:#58758c66}[data-theme="dark"] .nw-detail-fields>div,[data-theme="dark"] .nw-table td{border-color:#4e6c8238}[data-theme="dark"] .nw-count,[data-theme="dark"] .nw-value-tag{background:#2f5d6455;border-color:#4f7d8377;color:#83cfcc}
@media(min-width:1500px){.native-workspace{padding:28px 30px}.nw-resource{min-height:114px}.nw-list-heading{padding-top:23px}.nw-table td{padding-top:16px;padding-bottom:16px}}
@media(max-width:1000px){.native-workspace{padding:20px}.nw-heading{align-items:flex-start}.nw-toolbar{justify-content:flex-end}.nw-toolbar .metrix-select{width:205px}.nw-api-purpose{display:none}.nw-list-heading{align-items:flex-start}.nw-guidance{gap:9px}}
@media(max-width:650px){.native-workspace{padding:15px 12px}.nw-heading{flex-direction:column;gap:12px}.nw-heading h1{font-size:22px}.nw-toolbar{width:100%;justify-content:space-between;flex-wrap:nowrap}.nw-toolbar .metrix-select{flex:1;min-width:0;width:auto}.nw-resource-grid,.nw-guidance{grid-template-columns:1fr;gap:8px}.nw-resource{min-height:84px;padding:13px;border-radius:15px}.nw-resource small{font-size:10px}.nw-list-heading{padding:15px 12px 9px}.nw-list-actions{width:100%}.nw-search{flex:1}.nw-search input{width:100%}.nw-status{padding-inline:12px!important}.nw-table th,.nw-table td{padding-inline:12px}.nw-list-footer{padding:12px;font-size:8px}.nw-library-hero{padding:19px;gap:10px;align-items:flex-start}.nw-library-hero h2{font-size:22px}.nw-library-count{min-width:75px;padding:8px}.nw-library-count strong{font-size:33px}.nw-api-list>button{padding:13px 12px;gap:9px}.nw-method{min-width:42px;font-size:8px}.nw-api-operation strong{font-size:10px}.nw-api-operation small{font-size:9px}.nw-simulation-hero{padding:28px 16px}.nw-simulation-hero h2{font-size:23px}.nw-detail-fields>div{grid-template-columns:38% minmax(0,1fr);gap:9px}.native-workspace-host #programModeGuide{margin:0 12px 15px}.native-workspace-host #valveManagement+.native-workspace{padding-top:16px}.nw-list-actions select{max-width:100%}}
.nw-header-icon{display:inline-flex;width:24px;height:24px;flex:0 0 24px}.nw-header-icon svg{width:100%;height:100%}.header-sub-tabs{scrollbar-width:thin;scrollbar-color:#9ebbc0 transparent}
.nw-step-builder{display:block!important;width:100%}.nw-step-list{display:grid;gap:12px;margin:9px 0 12px}.nw-step{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid #dce8ed;border-radius:13px;padding:12px;min-width:0;background:rgba(238,247,249,.4)}.nw-step legend{font-size:10px;color:#4d9ca6;padding:0 7px}.nw-step label{min-width:0;font-size:10px;display:grid;gap:5px}.nw-step input:not([type=checkbox]),.nw-step select{width:100%;min-width:0;font-size:11px;height:36px;border:1px solid #d6e4eb;border-radius:9px;padding:7px;background:#ffffff70;color:inherit}.nw-step .nw-step-wait{display:flex;align-items:center;gap:7px}.nw-step-actions{display:flex;justify-content:flex-end;gap:6px}.nw-step-actions button{min-width:30px;min-height:30px!important;padding:4px!important}.nw-detail-dialog{margin-inline-end:18px;margin-inline-start:auto}
@media(max-width:600px){body:has(#workspace.native-workspace-host) aside{width:74px;padding:8px}body:has(#workspace.native-workspace-host) main{left:100px}body:has(#workspace.native-workspace-host) .nav-item{justify-content:center;padding:0}body:has(#workspace.native-workspace-host) .nav-item .label,body:has(#workspace.native-workspace-host) .nav-caption{display:none}body:has(#workspace.native-workspace-host) .nav-item .icon{width:32px;height:32px}.ar:has(#workspace.native-workspace-host) main{left:12px;right:100px}.nw-detail-dialog{margin-inline:14px;width:calc(100% - 28px)}.nw-step{grid-template-columns:1fr}}
.native-workspace-host{padding:0!important}

.nw-events{border:1px solid #dce8ed;border-radius:24px;background:rgba(255,255,255,.36);overflow:hidden}.nw-events>summary{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;color:inherit;font-size:16px;font-weight:700;cursor:pointer;list-style:none}.nw-events>summary::-webkit-details-marker{display:none}.nw-events>summary:after{content:'+';color:#1ba6b2;font-size:22px;font-weight:400}.nw-events[open]>summary:after{content:'−'}.nw-events>.nw-list-panel{border:0;border-radius:0;margin:0}.nw-events>summary:focus-visible{outline:2px solid #20bcc4;outline-offset:-5px}
/* One responsive work area for every page, including combined legacy/native views. */
#workspace{--work-gap:clamp(14px,1.6vw,26px);box-sizing:border-box;min-width:0;min-height:0;padding:var(--work-gap)!important;overflow:auto;scrollbar-gutter:stable;container-type:inline-size}
#workspace>*,#workspace :is(.controllers-shell,.diagnostics-shell,.seasonal-page,.valve-management,.native-workspace,.nw-list-panel,.nw-resource-grid,.nw-guidance){box-sizing:border-box;min-width:0;max-width:100%}
#workspace.native-workspace-host{display:block!important}
#workspace>.native-workspace{padding:0}
#workspace>.controllers-shell+.native-workspace,#workspace>#valveManagement+.native-workspace{margin-top:24px;padding:0}
#workspace.native-workspace-host #programModeGuide{margin:18px 0 0}
#workspace :is(.nw-heading,.controller-toolbar,.controller-toolbar-actions,.valve-heading,.valve-toolbar,.seasonal-heading,.seasonal-panel-heading,.diagnostics-top){min-width:0;flex-wrap:wrap}
#workspace :is(.nw-toolbar,.nw-list-actions,.controller-search,.metrix-select,.seasonal-actions){min-width:0;max-width:100%}
#workspace :is(.nw-resource,.nw-guidance article)>:not(svg){min-width:0}
#workspace :is(.nw-resource strong,.nw-resource small,.nw-heading h1,.nw-guidance p,.controller-table-footer,.nw-list-footer){overflow-wrap:anywhere}
#workspace :is(.controller-table-scroll,.nw-table-scroll){max-width:100%;overflow:auto;overscroll-behavior:contain}
#workspace .nw-table-scroll{max-height:min(440px,55dvh)}
#workspace :is(input,select,textarea){box-sizing:border-box;max-width:100%}
.controller-dialog{box-sizing:border-box;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px)}
.controller-dialog :is(.controller-form-grid,.controller-dialog-actions,.controller-dialog-heading){min-width:0;flex-wrap:wrap}
@container(max-width:650px){
 .nw-heading,.controllers-heading,.valve-heading,.diagnostics-top{align-items:flex-start;gap:12px;flex-wrap:wrap}
 .nw-toolbar{width:100%;flex-wrap:wrap!important;justify-content:flex-start}
 .nw-toolbar .metrix-select{flex:1 1 180px;width:auto}
 .nw-resource-grid,.nw-guidance{grid-template-columns:1fr}
 .controller-search{flex:1 1 180px;max-width:none}
 .controller-toolbar-actions{margin-inline-start:0;gap:6px}
 .nw-list-actions{width:100%;flex-wrap:wrap}.nw-search{flex:1 1 140px}.nw-search input{width:100%}
 .nw-heading h1,.controllers-heading h1{font-size:22px}
}
@media(max-width:600px){
 body aside,body:has(#workspace) aside{width:64px;padding:8px;box-sizing:border-box}
 body main,body:has(#workspace) main{left:90px;right:12px}
 body.ar main,body.ar:has(#workspace) main{left:12px;right:90px}
 body .nav-item{justify-content:center;padding:0}
 body .nav-item .label,body .nav-caption{display:none}
 body .nav-item .icon{width:32px;height:32px}
 .controller-dialog-actions{gap:6px}.controller-dialog-actions button{max-width:100%}
}
#workspace :is(.controller-table-scroll,.nw-table-scroll){contain:inline-size paint}

#workspace.ai-workspace{padding:18px!important}.ai-analytics{height:100%;display:flex;flex-direction:column;gap:18px;color:var(--ink,#233d58)}.ai-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-top h1{font-size:25px;margin:5px 0}.ai-top p:not(.nw-kicker){font-size:12px;color:#7890aa;margin:5px 0}.ai-status,.ai-answer-tag{font-size:10px;border:1px solid #cce6e9;background:#edf9f8;border-radius:20px;padding:7px 12px;color:#348b95}.ai-shell{flex:1;min-height:430px;display:grid;grid-template-columns:240px minmax(0,1fr);background:#ffffff9e;border:1px solid #ffffff;border-radius:24px;overflow:hidden;box-shadow:0 12px 40px #7b9eb30b}.ai-context{padding:24px 20px;background:linear-gradient(145deg,#ddf6f375,#ece8ff60);border-inline-end:1px solid #dfebf0;display:flex;flex-direction:column;gap:15px}.ai-brand{width:44px;height:44px;display:grid;place-items:center;border:1px solid #c6e5ee;border-radius:15px;font-size:28px;color:#28acb4;background:#ffffff90}.ai-context h2{font-size:16px;margin:0}.ai-context p,.ai-source-card{font-size:11px;line-height:1.65;color:#718aa5;margin:0}.ai-context label{font-size:10px;display:grid;gap:7px}.ai-context select{width:100%;height:36px;font-size:11px}.ai-source-card{display:grid;gap:8px;border-top:1px solid #dce8ec;padding-top:16px}.ai-source-card b{color:#355575}.ai-context button{margin-top:auto;align-self:start;font-size:11px}.ai-conversation{min-width:0;display:flex;flex-direction:column;padding:22px;max-height:calc(100dvh - 205px);min-height:460px}.ai-welcome{text-align:center;padding:12px 0 18px}.ai-welcome>span{font-size:32px;background:linear-gradient(120deg,#20beb6,#a692e2);background-clip:text;color:transparent}.ai-welcome h2{font-size:21px;margin:8px 0}.ai-welcome p{font-size:11px;color:#7c90a9}.ai-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:17px}.ai-suggestions button{font-size:10px;padding:9px 12px}.ai-messages{flex:1;min-height:80px;overflow-y:auto;overscroll-behavior:contain;padding:0 8px 10px}.ai-message{font-size:12px;line-height:1.7;padding:15px 0;border-top:1px solid #e2ebf1}.ai-message.user{display:flex;align-items:baseline;gap:12px;justify-content:flex-end;border:0}.ai-message.user p{background:#def3f0;border:1px solid #c8e9e5;border-radius:15px 15px 3px 15px;padding:9px 15px;max-width:85%;white-space:pre-wrap}.ai-avatar{font-size:10px;color:#40999e}.ai-answer-heading{display:flex;align-items:center;gap:9px}.ai-answer-heading .ai-avatar{font-size:23px}.ai-answer-tag{padding:3px 8px;margin-inline-start:auto;font-size:9px}.ai-answer-text{white-space:pre-wrap}.ai-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.ai-stat-grid>div{border:1px solid #d8e8ee;border-radius:12px;padding:10px 12px;background:linear-gradient(130deg,#e8f8f680,#f4f0ff60)}.ai-stat-grid small{display:block;font-size:9px;color:#718da5}.ai-stat-grid strong{font-size:22px}.ai-chart{margin:12px 0;padding:13px;border:1px solid #d3e8ee;border-radius:15px;background:#f7fcfd8c}.ai-chart figcaption{font-size:11px;font-weight:700;display:flex;justify-content:space-between;gap:8px}.ai-chart figcaption span{font-size:9px;font-weight:400;color:#7b91aa}.ai-chart svg{width:100%;display:block}.ai-chart svg line{stroke:#dce9ef;stroke-width:1}.ai-chart svg text{font-size:9px;fill:#66829d}.ai-chart svg circle{fill:#20b0ac;stroke:white;stroke-width:1}.ai-chart-stats{display:flex;justify-content:space-around;font-size:10px;color:#7890a7}.ai-chart-stats b{color:#2b506c;margin-inline-start:5px}.ai-evidence{font-size:10px;margin-top:13px;color:#7188a2}.ai-evidence summary{cursor:pointer;color:#298e9e}.ai-reading-table{max-height:160px;overflow:auto}.ai-reading-table>div{display:grid;grid-template-columns:1fr 1fr 1fr;padding:6px;border-bottom:1px solid #e3edf2}.ai-history-empty,.ai-note{font-size:10px;color:#8190a7;padding:10px;border-radius:9px;background:#eef5f8}.ai-composer{display:flex;align-items:center;gap:10px;border:1px solid #cce3e9;background:#ffffffc9;border-radius:17px;padding:8px 10px;box-shadow:0 4px 16px #577a9a09}.ai-composer textarea{width:100%;resize:none;min-height:36px;max-height:90px;border:0;background:transparent;padding:6px;box-shadow:none;font:inherit;font-size:12px;color:inherit}.ai-composer button{border:0;border-radius:12px;background:#20a4a5;color:white;font-size:24px;width:38px;height:38px;flex-shrink:0}.ai-disclaimer{font-size:9px;color:#8395ac;text-align:center;margin:9px 0 0}.ai-thinking{font-size:11px;color:#26999e}.ai-error{font-size:12px;color:#bc657b}.ai-conversation:has(.ai-message) .ai-welcome{padding:0 0 10px}.ai-conversation:has(.ai-message) .ai-welcome>span,.ai-conversation:has(.ai-message) .ai-welcome h2,.ai-conversation:has(.ai-message) .ai-welcome p{display:none}.ai-conversation:has(.ai-message) .ai-suggestions{margin-top:0}[data-theme=dark] .ai-shell{background:#142d42;border-color:#304b60}[data-theme=dark] .ai-context{background:#18374b;border-color:#304b60}[data-theme=dark] .ai-analytics{color:#d9e8f5}[data-theme=dark] .ai-composer,[data-theme=dark] .ai-chart,[data-theme=dark] .ai-stat-grid>div{background:#203e53;border-color:#34576e}[data-theme=dark] .ai-message.user p,[data-theme=dark] .ai-status{background:#204c53;border-color:#36616a}[data-theme=dark] .ai-chart-stats b{color:#d5e8f4}@media(max-width:850px){.ai-shell{grid-template-columns:185px minmax(0,1fr)}.ai-context{padding:18px 12px}.ai-conversation{padding:15px}.ai-stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){#workspace.ai-workspace{padding:12px!important}.ai-shell{display:flex;flex-direction:column}.ai-context{display:grid;grid-template-columns:1fr 1fr;padding:12px;border-inline-end:0}.ai-brand,.ai-context h2,.ai-context>p,.ai-source-card{display:none}.ai-context>button{grid-column:1/-1;margin:0}.ai-conversation{max-height:none;min-height:530px}.ai-messages{max-height:480px}.ai-top{align-items:flex-start}.ai-status{max-width:145px;text-align:center}.ai-welcome h2{font-size:18px}}

.ai-analytics button:not(#aiSend){border:1px solid #d6e5ee;border-radius:12px;background:#ffffffa6;padding:8px 12px}.ai-analytics select{border:1px solid #d5e5ed;border-radius:11px;padding:8px 12px;background:#ffffffa6;color:inherit}.ai-question-label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ai-context{position:static;min-width:0}.ai-shell{min-height:0}.ai-conversation{min-height:0;max-height:100%;overflow:hidden}.ai-top{flex-shrink:0}[data-theme=dark] .ai-analytics button:not(#aiSend),[data-theme=dark] .ai-analytics select{background:#203e53;border-color:#34576e}.ai-analytics button:disabled{opacity:.5;cursor:default}@media(max-width:620px){.ai-shell{min-height:650px}.ai-conversation{min-height:450px;max-height:none;overflow:visible}}

.schedule-summary{display:flex;align-items:center;gap:28px;margin:2px 0 10px;padding:12px 15px;border:1px solid #d8e7ed;border-radius:15px;background:linear-gradient(110deg,#ffffffb8,#ffffff80)}.schedule-summary>span{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.schedule-summary b{font-size:23px;font-weight:650;color:var(--ink)}.schedule-tools{display:flex;align-items:center;gap:8px;margin-inline-start:auto}.schedule-tools button,.schedule-controls button,.schedule-program-heading button{border:1px solid #d3e7ec;border-radius:10px;background:#ffffff9e;padding:7px 10px;font:inherit;font-size:11px;color:var(--ink)}.schedule-scroll{overflow:auto;max-width:100%;padding:1px}.schedule-table{min-width:990px}.schedule-grid{display:grid;grid-template-columns:1.35fr .65fr .6fr 1.35fr 1.05fr 1.05fr .9fr .65fr;align-items:center;gap:14px;padding:12px 16px;min-height:60px}.schedule-head{font-size:9px;letter-spacing:.6px;text-transform:uppercase;font-weight:700;color:#4d8b9a;background:#eaf5f7b8;border:1px solid #d2e6ed;border-radius:13px;margin-bottom:8px;min-height:42px;padding-top:9px;padding-bottom:9px}.schedule-record{margin-bottom:8px;border:1px solid #b8e0e5;border-radius:13px;background:linear-gradient(110deg,#ffffffde,#ffffff85);overflow:hidden}.schedule-grid>[role=cell]{font-size:11px;min-width:0;overflow-wrap:anywhere}.schedule-grid small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.schedule-name{border:0;background:none;font:inherit;text-align:start;color:var(--ink);padding:0}.schedule-name b{font-weight:600}.schedule-pill{display:inline-block;background:#eef5f7;border:1px solid #d2e5ec;border-radius:12px;padding:4px 9px;font-size:10px;color:#548895}.schedule-pill.enabled{background:#dff5eb;border-color:#95d9c1;color:#148b70}.schedule-controls{display:flex;gap:5px;justify-content:flex-end}.schedule-controls button{color:#3891a5;min-width:29px;min-height:29px;padding:4px}.schedule-time{font-variant-numeric:tabular-nums;white-space:nowrap}.schedule-expanded{border-top:1px solid #cee6e9;padding:16px;background:linear-gradient(120deg,#f4fbfc9e,#fbf9ff80)}.schedule-detail-columns{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(350px,1.2fr);gap:16px}.schedule-detail-columns>section{padding:14px;border:1px solid #d5e5ed;border-radius:13px;background:#ffffff80;min-width:0}.schedule-detail-columns h3{font-size:13px;margin:0 0 12px}.schedule-nested-table,.schedule-step-table{width:100%;border-collapse:collapse;font-size:11px}.schedule-nested-table th,.schedule-nested-table td,.schedule-step-table th,.schedule-step-table td{border-bottom:1px solid #dbe8ee;padding:8px;text-align:start;vertical-align:top;overflow-wrap:anywhere}.schedule-nested-table th{font-weight:500;color:var(--muted);width:42%}.schedule-nested-table td{font-variant-numeric:tabular-nums}.schedule-nested-table details summary,.schedule-program details>summary{cursor:pointer;color:#3697a3;font-size:11px;padding:3px 0}.schedule-nested-table table{font-size:10px}.schedule-program-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:12px}.schedule-step-scroll{overflow:auto}.schedule-step-table th{font-size:9px;font-weight:700;color:#548895;background:#edf6f8;white-space:nowrap}.schedule-muted,.schedule-footer{font-size:10px;color:var(--muted);line-height:1.7}.schedule-footer{margin:10px 0}.schedule-program>.schedule-muted{font-size:11px}[data-theme=dark] .schedule-summary,[data-theme=dark] .schedule-record{background:#203b50;border-color:#395e70}[data-theme=dark] .schedule-head{background:#203c50;color:#83bac8;border-color:#365c70}[data-theme=dark] .schedule-expanded,[data-theme=dark] .schedule-detail-columns>section{background:#193447;border-color:#365c70}[data-theme=dark] .schedule-pill,[data-theme=dark] .schedule-step-table th,[data-theme=dark] .schedule-tools button,[data-theme=dark] .schedule-controls button,[data-theme=dark] .schedule-program-heading button{background:#294b5e;border-color:#42677a;color:#b9e0ed}[data-theme=dark] .schedule-nested-table th,[data-theme=dark] .schedule-nested-table td,[data-theme=dark] .schedule-step-table td{border-color:#375669}@media(max-width:850px){.schedule-summary{gap:12px;flex-wrap:wrap}.schedule-tools{width:100%;margin-inline-start:0}.schedule-tools .nw-search{flex:1}.schedule-detail-columns{grid-template-columns:1fr}}

.ip-toolbar{display:flex;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--glass);margin-bottom:10px}.ip-toolbar>div{margin-inline-end:auto}.ip-toolbar b{display:block;font-size:15px}.ip-toolbar small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.ip-toolbar button,.ip-table button,.ip-actions button,.ip-step-heading button,.ip-steps button{font:inherit;font-size:11px;background:var(--glass);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:7px 10px;cursor:pointer}.ip-table-scroll{overflow:auto;padding:1px}.ip-table{width:100%;min-width:1050px;border-collapse:separate;border-spacing:0 7px;font-size:11px}.ip-table th{text-align:start;font-size:9px;text-transform:uppercase;letter-spacing:.5px;font-weight:700;color:#4d8b9a;background:#eaf5f7b8;padding:12px 10px}.ip-table th:first-child{border-radius:12px 0 0 12px}.ip-table th:last-child{border-radius:0 12px 12px 0}.ip-table td{padding:11px 10px;border-top:1px solid #b8e0e5;border-bottom:1px solid #b8e0e5;background:#f8fcfd;vertical-align:middle}.ip-table td:first-child{border-inline-start:1px solid #b8e0e5;border-radius:12px 0 0 12px;min-width:145px}.ip-table td:last-child{border-inline-end:1px solid #b8e0e5;border-radius:0 12px 12px 0;white-space:nowrap}.ip-table td small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.ip-letter{display:inline-grid;place-items:center;width:25px;height:25px;margin-inline-end:7px;border-radius:8px;color:#168e99;background:#dff4f4;font-size:13px}.ip-time{font-variant-numeric:tabular-nums;white-space:nowrap}.ip-target{display:block;font-size:10px;max-width:165px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ip-native{padding:14px;border:1px solid var(--line);border-radius:12px;margin:12px 0;font-size:11px;color:var(--muted)}.ip-native details{padding:8px}.ip-native summary{cursor:pointer}.ip-dialog{width:min(960px,94vw)}.ip-dialog h3{font-size:14px}.ip-dialog p,.ip-dialog li{font-size:12px;line-height:1.7}.ip-form{display:grid;grid-template-columns:2fr 1fr;gap:14px}.ip-dialog label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}.ip-dialog input,.ip-dialog select{font:inherit;font-size:12px;color:var(--ink);background:var(--glass);border:1px solid var(--line);border-radius:9px;padding:8px;min-width:0;max-width:100%}.ip-dialog fieldset{border:1px solid var(--line);border-radius:12px;margin:15px 0;padding:12px}.ip-dialog legend{font-size:11px;color:var(--muted);padding:0 5px}.ip-starts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.ip-days{display:flex;flex-wrap:wrap;gap:15px}.ip-days label,.ip-block-valves label{flex-direction:row;align-items:center}.ip-step-heading{display:flex;align-items:center;gap:8px;margin:18px 0 8px}.ip-step-heading h3{margin-inline-end:auto}.ip-steps{width:100%;border-collapse:collapse;font-size:11px}.ip-steps th,.ip-steps td{text-align:start;padding:7px;border-bottom:1px solid var(--line)}.ip-steps select{width:100%}.ip-steps input{width:95px}.ip-block{border:1px solid var(--line);border-radius:12px;padding:12px;margin:10px 0}.ip-block summary{font-size:12px;cursor:pointer;margin-bottom:8px}.ip-block-valves{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.ip-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.ip-actions button:disabled{opacity:.5;cursor:default}[data-theme=dark] .ip-table td{background:#203b50;border-color:#395e70}[data-theme=dark] .ip-table th{background:#294b5e;color:#a6d1df}@media(max-width:700px){.ip-toolbar{flex-wrap:wrap}.ip-starts{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-form,.ip-block-valves{grid-template-columns:1fr}.ip-step-heading{flex-wrap:wrap}.ip-dialog .diagnostics-dialog-body{overflow:auto}.ip-steps{min-width:550px}}
/* Program editor: compact controls and shared platform dropdowns. */
.ip-editor-dialog{width:min(1140px,96vw);max-height:94dvh;padding:18px 20px;box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column}.ip-editor-dialog:not([open]){display:none}.ip-editor-dialog .controller-dialog-heading{flex:none;margin-bottom:12px}.ip-editor-dialog .diagnostics-dialog-body{overflow:auto;min-height:0;padding:0 4px;scrollbar-width:thin}.ip-editor-dialog *{box-sizing:border-box}.ip-editor-dialog svg{width:18px;height:18px;flex:none}.ip-editor-overview{display:flex;align-items:center;gap:12px;margin:2px 0 16px}.ip-program-mark{width:42px;height:42px;display:grid;place-items:center;background:linear-gradient(135deg,#d8f6f2,#eeebff);border:1px solid #bee4e7;border-radius:13px;font-size:22px;font-weight:650;color:#229da7}.ip-editor-overview>div{min-width:0}.ip-editor-overview strong{display:block;font-size:14px;color:var(--ink)}.ip-editor-overview small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.ip-total-chip{margin-inline-start:auto;display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--line);background:var(--glass);border-radius:12px;white-space:nowrap;color:#299da6}.ip-total-chip b{font-size:13px;color:var(--ink)}.ip-total-chip small{margin:0;font-size:9px}.ip-editor-identity{display:flex;align-items:flex-end;gap:14px;margin-bottom:14px}.ip-editor-identity>label{flex:1}.ip-editor-dialog label{font-size:10px;gap:6px}.ip-editor-dialog input:not([type=checkbox]){min-height:36px;height:36px;padding:8px 10px;border-radius:10px;font-size:11px;width:100%;outline-offset:2px}.ip-editor-dialog input:not([type=checkbox]):focus{border-color:#45b8bc}.ip-controller-mapping{max-width:220px;font-size:10px;color:var(--muted);padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--glass)}.ip-controller-mapping summary,.ip-group-mapping summary{cursor:pointer}.ip-controller-mapping label{margin-top:9px}.ip-editor-section{border:1px solid #d1e6ed;background:linear-gradient(120deg,#ffffffb8,#ffffff75);border-radius:15px;padding:13px;margin-bottom:13px;min-width:0}.ip-section-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px;min-width:0}.ip-section-heading>div:not(.ip-quick-actions){flex:1;min-width:0}.ip-editor-dialog .ip-section-heading h3{margin:0;font-size:12px;line-height:1.4}.ip-section-heading small{display:block;font-size:9px;color:var(--muted);margin-top:3px;line-height:1.5}.ip-section-icon{width:31px;height:31px;display:grid;place-items:center;flex:none;border:1px solid #c1e8e8;border-radius:10px;background:#e3f6f4;color:#2aa8af}.ip-section-icon.lavender{background:#eeebfd;color:#9482cc;border-color:#ded7f4}.ip-section-counter{font-size:10px;background:#ecf7f8;border:1px solid #d1e6ed;border-radius:8px;padding:5px 8px;color:#418895}.ip-clock-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.ip-clock-card{padding:10px;border:1px solid #dbe7ee;border-radius:11px;background:#f7fafb8c;min-width:0}.ip-clock-card.is-enabled{background:linear-gradient(135deg,#e7faf5,#f4fafd);border-color:#86d3cd}.ip-editor-dialog .ip-check-label{display:flex;flex-direction:row;align-items:center;gap:6px;font-size:10px;font-weight:600;color:var(--ink);cursor:pointer}.ip-check-label small{margin-inline-start:auto;color:var(--muted);font-size:9px;font-weight:400}.ip-clock-selects{display:flex;align-items:flex-end;gap:4px;margin-top:11px;direction:ltr}.ip-clock-selects>label{flex:1;min-width:0;text-align:center}.ip-clock-selects>label>span{font-size:8px;letter-spacing:.3px;text-transform:uppercase;color:var(--muted)}.ip-clock-selects i{font-style:normal;align-self:center;margin-top:17px;font-size:15px;color:#89a3b1}.ip-editor-dialog .metrix-select{width:100%;min-width:0;max-width:100%}.ip-editor-dialog .metrix-select-trigger{height:34px;min-height:34px;width:100%;padding:0 24px 0 9px;border-radius:9px;font-size:11px;background:var(--glass);border-color:#cee3e9}.ip-editor-dialog .metrix-select-trigger:after{right:9px}.ip-clock-selects .metrix-select-trigger{padding-left:7px;padding-right:19px;font-variant-numeric:tabular-nums}.ip-editor-dialog input.ip-check{appearance:none;-webkit-appearance:none;display:inline-block;width:16px!important;min-width:16px!important;max-width:16px!important;height:16px!important;min-height:16px!important;padding:0!important;margin:0!important;flex:0 0 16px;vertical-align:middle;border:1.5px solid #abcbd2;border-radius:5px;background:#ffffffbf;cursor:pointer;box-shadow:none}.ip-editor-dialog input.ip-check:checked{border-color:#1da9a6;background-color:#1da9a6;background-image:url("/assets/de98a992e2e69617095c542c.svg")}.ip-editor-dialog input.ip-check:focus-visible{outline:2px solid #6fcbd0;outline-offset:2px}.ip-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.ip-editor-dialog .ip-day-chip{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;border:1px solid #d2e4eb;border-radius:10px;padding:10px 8px;color:var(--muted);background:var(--glass);font-size:11px;cursor:pointer}.ip-day-chip:has(input:checked){border-color:#7ecdc7;background:#e1f6ee;color:#278d84}.ip-quick-actions{display:flex;flex-wrap:wrap;gap:5px}.ip-quick-actions button,.ip-group-selection button{border:0;background:transparent;font:inherit;font-size:9px;padding:4px 5px;color:#2c929f;cursor:pointer}.ip-quick-actions button:hover,.ip-group-selection button:hover{text-decoration:underline}.ip-editor-columns{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,1fr);gap:13px;align-items:start}.ip-editor-dialog .ip-editor-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:10px;min-height:31px;padding:6px 9px;border:1px solid #cae2e8;border-radius:9px;background:var(--glass);color:#39798d;cursor:pointer;white-space:nowrap}.ip-editor-button svg{width:15px;height:15px}.ip-editor-button:hover:not(:disabled){background:#e4f5f5;border-color:#80c9c7}.ip-editor-button:disabled{opacity:.35;cursor:default}.ip-editor-button.primary{background:#229f9f;color:white;border-color:#229f9f}.ip-editor-button.primary:hover:not(:disabled){background:#168d90}.ip-editor-button.icon-only{width:27px;height:27px;min-height:27px;padding:5px;position:relative}.ip-editor-button.icon-only>span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.ip-editor-button.danger{color:#c2708a}.ip-editor-button.danger:hover:not(:disabled){background:#fff0f4;border-color:#e5b7c6}.ip-sequence-list{display:grid;gap:9px}.ip-sequence-card{border:1px solid #d7e6ed;background:var(--glass);border-radius:12px;padding:11px;min-width:0}.ip-step-title{display:flex;align-items:center;gap:7px;margin-bottom:10px}.ip-step-index{font-size:9px;color:#249b9e;background:#e4f4f5;padding:5px;border-radius:7px;font-variant-numeric:tabular-nums}.ip-step-title>strong{font-size:10px;color:var(--ink);font-weight:600}.ip-step-controls{display:flex;gap:3px;margin-inline-start:auto}.ip-step-targets{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(0,1.4fr);gap:8px}.ip-step-runtime{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:9px;border-top:1px solid var(--line)}.ip-step-runtime>span{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted);margin-inline-end:auto}.ip-step-runtime>span svg{width:14px;height:14px}.ip-duration-selects{display:flex;gap:6px;direction:ltr}.ip-duration-selects label{width:56px;text-align:center;gap:3px}.ip-duration-selects small{font-size:8px;color:var(--muted)}.ip-duration-selects .metrix-select-trigger{font-size:10px;padding-left:7px;padding-right:19px;height:30px;min-height:30px}.ip-editor-empty{min-height:130px;border:1px dashed #cee1e8;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px;text-align:center;color:var(--muted);background:#f3f9fb70}.ip-editor-empty>svg{width:27px;height:27px;color:#70bfc7}.ip-editor-empty strong{font-size:11px;font-weight:600;color:var(--ink)}.ip-editor-empty span{font-size:10px;line-height:1.6;max-width:240px}.ip-group-card{border:1px solid #d6e4ec;border-radius:12px;background:var(--glass);margin-bottom:9px;overflow:hidden}.ip-group-card:last-child{margin-bottom:0}.ip-group-card>summary{list-style:none;display:flex;align-items:center;gap:7px;padding:10px;cursor:pointer}.ip-group-card>summary::-webkit-details-marker{display:none}.ip-group-symbol{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#edecfb;color:#8f82c8;flex:none}.ip-group-symbol svg{width:15px;height:15px}.ip-group-card summary>strong{font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.ip-group-count{margin-inline-start:auto;flex:none;font-size:9px;padding:4px 6px;border-radius:7px;background:#edf7f8;color:#44838e}.ip-group-chevron{color:#7498a7;font-size:14px;transition:transform .15s}.ip-group-card[open] .ip-group-chevron{transform:rotate(180deg)}.ip-group-content{padding:0 11px 11px}.ip-group-search{display:flex;align-items:center;gap:6px;margin-top:10px;border:1px solid #d2e4eb;border-radius:9px;padding-inline-start:8px;background:#f8fbfc80;color:#78a0b1}.ip-group-search svg{width:14px;height:14px}.ip-editor-dialog .ip-group-search input{border:0;background:transparent;min-width:0;height:32px;min-height:32px;padding:7px}.ip-group-selection{display:flex;align-items:center;justify-content:space-between;margin:8px 0 5px;font-size:9px;color:var(--muted)}.ip-group-valves{display:grid;gap:5px;max-height:214px;overflow:auto;scrollbar-width:thin;padding:2px}.ip-editor-dialog .ip-valve-choice{display:flex;flex-direction:row;align-items:center;gap:9px;padding:8px;border:1px solid #dbe8ec;border-radius:9px;background:#ffffff65;cursor:pointer;min-height:43px}.ip-editor-dialog .ip-valve-choice[hidden],.ip-group-no-match[hidden]{display:none}.ip-valve-choice:has(input:checked){border-color:#94d3c9;background:#e9f8f2}.ip-valve-choice>span{display:flex;align-items:center;gap:8px;min-width:0}.ip-valve-choice svg{width:17px;height:17px;color:#6cbdc1}.ip-valve-choice strong{display:block;font-size:10px;font-weight:500;color:var(--ink);overflow-wrap:anywhere}.ip-valve-choice small{display:block;font-size:9px;color:var(--muted);margin-top:3px;font-variant-numeric:tabular-nums}.ip-group-mapping{border-top:1px solid var(--line);padding-top:9px;margin-top:10px;font-size:9px;color:var(--muted)}.ip-group-mapping label{margin-top:7px}.ip-group-actions{display:flex;gap:6px;align-items:center;margin-top:10px}.ip-group-actions>.ip-editor-button:first-child{margin-inline-end:auto}.ip-editor-dialog .ip-group-no-match{font-size:10px;color:var(--muted);text-align:center;padding:8px}.ip-editor-footer{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;gap:8px;margin:3px -4px 0;padding:12px 5px 2px;background:linear-gradient(180deg,#f3faf9eb,#f3faf9);backdrop-filter:blur(12px);border-top:1px solid #d4e6ec;min-height:52px}.ip-editor-footer>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-inline-end:auto;font-size:10px;color:var(--muted);min-width:0}.ip-draft-indicator{width:6px;height:6px;border-radius:50%;background:#56b9b1}.ip-editor-footer #ipEditorStatus{color:#b35d78;width:100%;font-size:10px;line-height:1.5}.ip-editor-footer #ipEditorStatus:empty{display:none}.ip-editor-footer .ip-editor-button{min-height:35px;padding:8px 13px}
[data-theme=dark] .ip-editor-section,[data-theme=dark] .ip-clock-card,[data-theme=dark] .ip-editor-empty,[data-theme=dark] .ip-group-search,[data-theme=dark] .ip-valve-choice{background:#203b50;border-color:#3b5a6e}[data-theme=dark] .ip-clock-card.is-enabled,[data-theme=dark] .ip-day-chip:has(input:checked),[data-theme=dark] .ip-valve-choice:has(input:checked){background:#214b49;border-color:#4c8e87}[data-theme=dark] .ip-program-mark,[data-theme=dark] .ip-section-icon,[data-theme=dark] .ip-section-counter,[data-theme=dark] .ip-step-index,[data-theme=dark] .ip-group-count{background:#294e5b;border-color:#426d78;color:#a1d8d8}[data-theme=dark] .ip-section-icon.lavender,[data-theme=dark] .ip-group-symbol{background:#3b3f60;border-color:#565378;color:#c4b9ef}[data-theme=dark] .ip-sequence-card,[data-theme=dark] .ip-group-card,[data-theme=dark] .ip-day-chip,[data-theme=dark] .ip-editor-dialog .metrix-select-trigger{border-color:#3b5a6e}[data-theme=dark] .ip-editor-footer{background:#203b50ed;border-color:#3b5a6e}[data-theme=dark] .ip-editor-button:hover:not(:disabled){background:#2d5862}
@media(max-width:850px){.ip-editor-dialog{padding:15px;max-height:96dvh}.ip-editor-columns{grid-template-columns:1fr}.ip-clock-grid{gap:6px}.ip-clock-card{padding:8px}.ip-clock-selects{gap:2px}.ip-section-heading small{font-size:9px}.ip-total-chip small{display:none}.ip-group-valves{max-height:240px}.ip-editor-overview>div>small{max-width:350px}}
@media(max-width:600px){.ip-editor-dialog{width:98vw;padding:12px}.ip-editor-overview{gap:8px}.ip-editor-overview>div>small{display:none}.ip-editor-overview strong{font-size:12px}.ip-total-chip{padding:7px;font-size:10px}.ip-program-mark{width:33px;height:33px;font-size:18px}.ip-editor-identity{align-items:stretch;flex-direction:column;gap:8px}.ip-controller-mapping{max-width:none}.ip-clock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ip-day-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.ip-section-heading{flex-wrap:wrap}.ip-quick-actions{margin-inline-start:auto}.ip-editor-section{padding:10px}.ip-step-controls{gap:2px}.ip-step-title>strong{font-size:9px}.ip-step-targets{grid-template-columns:1fr}.ip-editor-footer{flex-wrap:wrap}.ip-editor-footer>div{flex-basis:100%}.ip-editor-footer>.ip-editor-button{flex:1}.ip-editor-overview{margin-bottom:12px}}
.ip-editor-dialog label{margin:0}.ip-editor-dialog .ip-section-heading h3{font-size:13px}.ip-editor-overview strong{font-size:15px}.ip-editor-dialog .ip-editor-button{font-size:11px}.ip-step-title>strong{font-size:11px}.ip-valve-choice strong{font-size:11px}.ip-clock-selects>label>span{font-size:9px}.ip-editor-dialog .ip-check-label{font-size:11px}

.ip-table{min-width:1560px}.ip-table th:not(:first-child):not(:last-child),.ip-table td:not(:first-child):not(:last-child){padding-inline:8px}.ip-clock-grid{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:850px){.ip-clock-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.ip-clock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.ip-table th:first-child,.ip-table td:first-child{position:sticky;inset-inline-start:0;z-index:1}.ip-table th:last-child,.ip-table td:last-child{position:sticky;inset-inline-end:0;z-index:1}.ip-table th:first-child,.ip-table th:last-child{background:#eaf5f7;z-index:2}

.ip-native-execution{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;margin:14px 0;border:1px solid #bce2e8;border-radius:16px;background:#f8fcfd;color:#26435b}.ip-native-execution p{margin:5px 0 0;max-width:850px;font-size:12px;line-height:1.6}.ip-native-row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.ip-native-row-actions button{font-size:11px;white-space:nowrap}.ip-native-row-actions [data-native-stop]{color:#d74e6b}.ip-native-execution button{white-space:nowrap}body.dark .ip-native-execution{background:#203b50;color:#e1f3f7;border-color:#3a5a70}@media(max-width:650px){.ip-native-execution{align-items:flex-start;flex-direction:column}}
.ip-native-execution>div{min-width:0;flex:1}.ip-native-execution:has(.ip-connection-details[open]){align-items:flex-start}.ip-connection-details{margin-top:10px;font-size:12px}.ip-connection-details summary{cursor:pointer;font-weight:600;color:#158ca1}.ip-diagnostic-scroll{overflow-x:auto;margin-top:10px}.ip-connection-details table{border-collapse:collapse;width:100%;font-size:11px}.ip-connection-details th,.ip-connection-details td{text-align:start;padding:8px;border-bottom:1px solid #cde5e9;vertical-align:top}.ip-connection-details pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto}

#workspace.valves-workspace{display:block}.valves-workspace .valve-panel{padding:12px 16px;margin-bottom:20px;background:#ffffff40}.valves-workspace .valve-operation-copy h2{font-size:12px}.valves-workspace .valve-operation-copy p{font-size:10px}.valves-workspace .valve-operation-icon{width:30px;height:30px}.vl-workspace{width:100%;min-width:0;color:var(--ink)}.vl-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:22px 0 12px}.vl-eyebrow{font-size:9px;letter-spacing:1.6px;color:#389ca8}.vl-toolbar h2{font-size:21px;margin:4px 0}.vl-toolbar h2 span{font-size:11px;vertical-align:middle;padding:5px 9px;border:1px solid #b6e2e6;border-radius:8px;color:#2198ac;margin-inline-start:7px}.vl-filters{display:flex;gap:8px;flex-wrap:wrap;max-width:100%}.vl-filters input,.vl-filters select,.vl-filters button,.vl-detail-form input,.vl-detail-form select,.vl-detail-form button{font:inherit;font-size:11px;min-height:36px;border:1px solid #c9e2e9;border-radius:10px;background:var(--glass,#ffffffa0);color:inherit;padding:8px 12px;box-sizing:border-box}.vl-filters input{width:210px}.vl-scroll{width:100%;overflow:auto;contain:inline-size paint;scrollbar-width:thin;padding-bottom:8px}.vl-table{min-width:1040px}.vl-grid{display:grid;grid-template-columns:minmax(130px,1.4fr) 110px 50px 100px minmax(65px,.8fr) minmax(65px,.8fr) 98px minmax(140px,1.3fr) 160px;align-items:center;gap:12px;padding:13px 17px;font-size:11px;min-height:58px}.vl-head{min-height:40px;border:1px solid #c8e5ea;background:#ffffffcf;border-radius:12px;margin-bottom:10px;font-size:10px;color:#139caf;font-weight:700;letter-spacing:.4px}.vl-record{border:1px solid #d5e6eb;border-radius:13px;background:linear-gradient(110deg,#ffffffde,#ffffff85);margin-bottom:11px;overflow:hidden;box-shadow:0 4px 14px #426c8708}.vl-record.expanded{border-color:#75ccd0;box-shadow:0 5px 18px #399da412}.vl-grid [role=cell]{min-width:0;overflow-wrap:anywhere}.vl-name{font:inherit;font-weight:600;text-align:start;background:transparent;border:0;color:inherit;padding:5px 0;cursor:pointer}.vl-name:hover{color:#169dae}.vl-type{display:flex;align-items:center;gap:7px;color:#129fb6;white-space:nowrap}.vl-type svg{width:25px;height:25px}.vl-actions,.vl-location{display:flex;align-items:center;gap:3px}.vl-actions button,.vl-location button,.vl-location a{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:7px;padding:5px;color:#159fc0;cursor:pointer;min-width:29px;height:30px}.vl-actions svg,.vl-location svg{width:20px;height:20px}.vl-actions button:hover:not(:disabled),.vl-location button:hover{background:#d9f3f3}.vl-actions button:disabled{opacity:.26;cursor:not-allowed}.vl-status{border:1px solid #d0e2e8;border-radius:20px;background:#eef6f8;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 12px;color:#567383;min-height:29px;font-size:10px}.vl-status.running{background:linear-gradient(90deg,#c9edf6,#e9faf8);border-color:#7bc9d9;color:#23778b}.vl-status.attention{background:#fff4d1;border-color:#e4c66a;color:#866b24}.vl-status.alarm{background:#ffe3e8;border-color:#e6a2af;color:#b24d65}.vl-status small{font-size:10px;font-variant-numeric:tabular-nums;background:#ffffffa0;border-radius:12px;padding:2px 6px}.vl-detail-form{border-top:1px solid #d3e9ed;padding:19px;background:linear-gradient(120deg,#eefaf970,#f3efff50)}.vl-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 20px}.vl-detail-grid label{display:grid;gap:7px;font-size:10px;color:#378ca2}.vl-detail-grid input,.vl-detail-grid select{width:100%;min-width:0;color:var(--ink)}.vl-wide{grid-column:span 2}.vl-detail-footer{display:flex;align-items:center;gap:14px;margin-top:16px;font-size:10px;color:#8297a8}.vl-detail-footer>span:first-child{flex:1}.vl-detail-footer button{background:#289da5;color:white;border-color:#289da5;cursor:pointer}.vl-empty{border:1px dashed #bcdce4;border-radius:16px;padding:40px;text-align:center;font-size:12px;color:#7792a2}.vl-workspace button:focus-visible,.vl-workspace a:focus-visible{outline:2px solid #22b6c1;outline-offset:2px}[data-theme=dark] .vl-record,[data-theme=dark] .vl-head{background:#203b50;border-color:#416273}[data-theme=dark] .vl-detail-form{background:#20394c}[data-theme=dark] .vl-status{background:#2a475b;color:#c4dbe2}
@container(max-width:650px){.vl-filters{width:100%}.vl-filters input{flex:1;min-width:120px}.vl-toolbar{margin-top:16px}.valves-workspace .valve-panel{padding:10px}.vl-toolbar h2{font-size:19px}}
#workspace.valves-workspace .valve-panel{min-height:0;padding:10px 16px;margin-bottom:12px}#workspace.valves-workspace #valveOperation{display:flex;align-items:center;justify-content:space-between;gap:16px}#workspace.valves-workspace .valve-operation-copy{margin:0}#workspace.valves-workspace .valve-start{margin:0;flex-shrink:0}#workspace.valves-workspace .valve-message:empty{display:none}.vl-detail-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 16px}.vl-detail-form{padding:16px}.vl-toolbar{margin-top:16px}.vl-grid{min-height:52px}
.vl-grid{grid-template-columns:minmax(120px,1.4fr) 100px 45px 90px minmax(60px,.8fr) minmax(60px,.8fr) 90px minmax(130px,1.3fr) 190px}

#valvePanel[hidden]{display:none!important}.vl-workspace{margin-top:16px}.vl-grid{grid-template-columns:minmax(120px,1.4fr) 65px 100px 45px 90px minmax(60px,.8fr) minmax(60px,.8fr) 90px minmax(130px,1.3fr) 130px}.vl-tests{justify-content:flex-start}

.valve-search{width:215px;min-width:140px;height:42px;border:1px solid var(--line);border-radius:14px;padding:10px 14px;background:var(--glass);color:var(--ink);font:inherit;font-size:11px}.manual-timer-units{display:flex;gap:8px;flex-wrap:wrap}.manual-timer-units label{display:flex;align-items:center;gap:6px;font-size:12px;padding:10px 14px;border:1px solid var(--line);border-radius:12px}.manual-timer-value{font-size:36px;width:100%;padding:15px;margin:18px 0;border:1px solid var(--line);border-radius:14px;background:var(--glass);color:var(--ink)}.manual-timer-summary{font-size:16px;font-variant-numeric:tabular-nums}.manual-timer-label{font-size:12px;display:block;margin-top:18px}

.digital-timer-dialog{width:530px}.digital-timer-caption{text-align:center;font-size:10px;letter-spacing:2px;color:#369ca4;margin:24px 0 18px}.digital-timer{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:8px;padding:18px 20px;border:1px solid #cbe7e8;border-radius:20px;background:linear-gradient(135deg,#ddf6f480,#efedfb80)}.digital-timer-unit{display:grid;justify-items:center;gap:12px;min-width:0}.digital-timer-unit label{display:grid;gap:8px;text-align:center;min-width:0;width:100%}.digital-timer-unit label span{font-size:10px;letter-spacing:1px;color:#6b8b9a;text-transform:uppercase}.digital-timer input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-family:Consolas,'Courier New',monospace;font-size:48px;font-weight:600;line-height:1.15;text-align:center;padding:0;font-variant-numeric:tabular-nums}.digital-timer input:focus-visible{outline:2px solid #4db7c0;outline-offset:3px;border-radius:8px}.digital-timer-unit button{width:34px;height:32px;min-height:32px;padding:0;border-radius:10px;border:1px solid #bcdfe2;background:#ffffffa0;color:#299aa5;font-size:22px;line-height:1;cursor:pointer}.digital-timer-unit button:disabled{opacity:.4;cursor:default}.digital-timer-colon{font-family:Consolas,monospace;font-size:34px;color:#71a4ad;align-self:center;margin-top:-18px}.digital-timer-dialog .manual-timer-summary{text-align:center;font-size:12px;color:#5f8c9a;min-height:18px;margin:16px 0}.digital-timer-dialog .controller-dialog-actions{padding-top:10px}.digital-timer-dialog .controller-hint{font-size:11px}[data-theme=dark] .digital-timer{background:linear-gradient(135deg,#254a5370,#3a365b70);border-color:#4c7881}[data-theme=dark] .digital-timer-unit button{background:#244b59;color:#9ae4e5;border-color:#54838a}@media(max-width:500px){.digital-timer{padding:16px 10px;gap:5px}.digital-timer input{font-size:38px}.digital-timer-colon{font-size:28px}.digital-timer-unit button{width:32px;height:30px}.digital-timer-dialog .controller-dialog-actions{flex-wrap:wrap}}

.vl-status.manual-running{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;padding:0;overflow:hidden;direction:ltr;border-color:#55bcb5;background:transparent;min-height:29px}.manual-run-label{display:flex;align-items:center;justify-content:center;align-self:stretch;padding:5px 8px;background:#c8f3e8;color:#247d70;font-size:10px;white-space:nowrap;direction:auto}.manual-run-time{display:flex;align-items:center;justify-content:center;align-self:stretch;min-width:65px;padding:5px 8px;background:#eaf0ff;color:#526ca6;font-family:Consolas,'Courier New',monospace;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.2px;direction:ltr}[data-theme=dark] .manual-run-label{background:#285e57;color:#b3f3e0}[data-theme=dark] .manual-run-time{background:#354465;color:#d2ddff}

@property --manual-remaining{syntax:'<percentage>';inherits:false;initial-value:100%}
.vl-status.manual-running{background:linear-gradient(90deg,#c8f3e8 0%,#c8f3e8 var(--manual-remaining),#eaf0ff var(--manual-remaining),#eaf0ff 100%);transition:--manual-remaining 1s linear}.manual-running .manual-run-label,.manual-running .manual-run-time{background:transparent}[data-theme=dark] .vl-status.manual-running{background:linear-gradient(90deg,#285e57 0%,#285e57 var(--manual-remaining),#354465 var(--manual-remaining),#354465 100%)}[data-theme=dark] .manual-running .manual-run-label,[data-theme=dark] .manual-running .manual-run-time{background:transparent}@media(prefers-reduced-motion:reduce){.vl-status.manual-running{transition:none}}

.vl-status.manual-running{border-color:#0dafab;background:linear-gradient(135deg,#08aab9 0%,#20d4b1 55%,#45efa8 100%) left center/var(--manual-remaining) 100% no-repeat,linear-gradient(90deg,#d6eee3,#badfce);box-shadow:inset 0 1px 0 #ffffff25}.manual-running .manual-run-label{color:#002319;font-weight:600}.manual-running .manual-run-time{color:#002319;font-weight:700}[data-theme=dark] .vl-status.manual-running{border-color:#0dafab;background:linear-gradient(135deg,#08aab9 0%,#20d4b1 55%,#45efa8 100%) left center/var(--manual-remaining) 100% no-repeat,linear-gradient(90deg,#24483d,#18392f)}[data-theme=dark] .manual-running .manual-run-label,[data-theme=dark] .manual-running .manual-run-time{color:#002319}
/* Clear identity, diagnostics, assignment and operating controls. */
.vl-table{min-width:900px}.vl-grid{grid-template-columns:68px 104px minmax(130px,1.6fr) 55px 60px minmax(100px,1fr) 44px minmax(155px,1.4fr) 105px;gap:6px;padding:10px 12px;min-height:56px;box-sizing:border-box}.vl-head{min-height:42px;padding-block:12px;background:#edf8f7b0;color:#527e88;font-size:9px;letter-spacing:.8px;border-color:#d9e9ea;border-radius:12px}.vl-record{border-radius:13px;margin-bottom:7px;box-shadow:0 3px 12px #375f7505}.vl-record:hover{border-color:#a7d9d6}.vl-identity-cell{display:grid;gap:1px}.vl-name{font-size:12px;padding:0;line-height:1.5}.vl-row-caption{font-size:9px;color:#8a9eaa}.vl-decoder{display:grid;gap:2px;direction:ltr}.vl-decoder>strong{font:11px Consolas,monospace;letter-spacing:.2px}.vl-decoder small{display:flex;align-items:center;gap:7px;font-size:9px;color:#8a9eaa}.vl-decoder b{font-size:9px;font-weight:500;color:#497f8a;background:#eaf5f4;border-radius:5px;padding:2px 6px}.vl-type-badge{border:1px solid #d6e8e8;border-radius:7px;padding:4px 7px;font-size:9px;color:#5b8992;background:#f2f9f980}.vl-assignment{display:grid;gap:2px}.vl-assignment>span{display:flex;justify-content:space-between;gap:6px}.vl-assignment small{color:#8a9eaa;font-size:9px}.vl-assignment strong{font-size:10px;font-weight:500;text-align:end}.vl-tests{gap:5px}.vl-tests button{width:31px;height:32px;border:1px solid #dcebee;background:#f2fafb80;border-radius:9px;min-width:0}.vl-tests svg{width:19px;height:19px}.vl-controls{gap:8px}.vl-run-controls,.vl-edit-controls{display:flex;gap:2px}.vl-run-controls{padding:2px;border-radius:9px;background:#e9f7f4}.vl-run-controls button{color:#23978f;min-width:28px;padding:4px}.vl-edit-controls{border-inline-start:1px solid #dce9ec;padding-inline-start:5px}.vl-edit-controls button{min-width:26px;width:26px;padding:3px;color:#6a9aaa}.vl-actions button:disabled{opacity:.25}.vl-location{justify-content:center}.vl-status{box-sizing:border-box}.vl-detail-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:9px 14px}.vl-detail-form{padding:12px 16px}.vl-detail-grid label{gap:4px}.vl-detail-grid input,.vl-detail-grid select{min-height:30px;height:30px;padding:5px 8px;font-size:11px}.vl-detail-footer{flex-wrap:wrap;margin-top:10px;gap:10px}.vl-detail-footer button{min-height:30px;padding:5px 12px;font-size:11px}[data-theme=dark] .vl-head{background:#294653;color:#bad9dc}[data-theme=dark] .vl-tests button,[data-theme=dark] .vl-type-badge,[data-theme=dark] .vl-decoder b{background:#294b58;border-color:#456571;color:#b5dce0}[data-theme=dark] .vl-run-controls{background:#234f50}
@media(max-width:760px){.vl-table{min-width:0}.vl-head{display:none}.vl-record>.vl-grid{grid-template-columns:1fr 1fr;gap:10px;padding:12px}.vl-identity-cell{grid-column:1/-1;padding-bottom:8px;border-bottom:1px solid #dce9ec}.vl-name{font-size:14px}.vl-grid [data-label]{position:relative;padding-top:18px}.vl-grid [data-label]:before{content:attr(data-label);position:absolute;inset-block-start:0;inset-inline-start:0;font-size:8px;letter-spacing:.6px;color:#809aa5}.vl-status-cell,.vl-controls{grid-column:1/-1}.vl-location{justify-content:flex-start}.vl-controls{justify-content:space-between}.vl-detail-grid{grid-template-columns:1fr 1fr}.vl-wide{grid-column:1/-1}.vl-detail-footer>span:first-child{flex-basis:100%}}
@media(max-width:760px){.valve-toolbar{width:100%;justify-content:flex-start}.valve-toolbar .valve-search,.valve-toolbar .metrix-select{flex:0 0 100%!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box}.valve-toolbar .metrix-select-trigger{max-width:100%}.valve-toolbar .valve-add{width:100%}}

@media(min-width:761px) and (max-width:1100px){.vl-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

.vl-device-cell{min-height:16px}@media(max-width:760px){.vl-identity-cell{order:-1}}

.vl-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vl-head [role=columnheader]:nth-child(7){font-size:8px;letter-spacing:0;text-align:center}
/* Share content-sized tracks across the heading and every valve row. */
@media(min-width:761px){
 .vl-table{display:grid;grid-template-columns:repeat(9,max-content);justify-content:space-between;column-gap:12px;row-gap:7px;width:max-content;min-width:100%}
 .vl-head,.vl-record{grid-column:1/-1;display:grid;grid-template-columns:subgrid;margin-bottom:0;min-width:0}
 .vl-record>.vl-grid{grid-column:1/-1;grid-template-columns:subgrid;column-gap:inherit}
 .vl-head{column-gap:normal}
 .vl-detail-form{grid-column:1/-1;min-width:0;contain:inline-size}
 .vl-name{max-width:220px}
 .vl-status-cell{width:175px}
 .vl-status{width:100%}
 .vl-head [role=columnheader]{white-space:nowrap}
 .vl-head [role=columnheader]:nth-child(7){font-size:9px;letter-spacing:.8px;text-align:start}
}
.vl-run-controls button[data-action=off]{color:#dc5868}
.vl-run-controls button[data-action=off]:hover:not(:disabled){background:#ffe5e9}
[data-theme=dark] .vl-run-controls button[data-action=off]{color:#f08b99}

.controller-dialog.input-decoder-dialog{width:min(780px,calc(100vw - 32px))}
.input-decoder-dialog .nw-detail-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}
.input-decoder-dialog #inputSensorValues{grid-template-columns:repeat(4,minmax(0,1fr))}
.input-decoder-dialog .nw-detail-fields>div{display:flex;flex-direction:column;gap:4px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--glass)}
.input-decoder-dialog .nw-detail-fields dt{font-size:10px;line-height:1.4;color:var(--muted)}
.input-decoder-dialog .nw-detail-fields dd{margin:0;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.input-decoder-dialog p{margin:8px 0;line-height:1.5}
.input-decoder-dialog h3{font-size:15px;margin:12px 0 6px}
.input-decoder-dialog hr{border:0;border-top:1px solid var(--line);margin:14px 0}
.controller-dialog.input-decoder-dialog .nw-confirm-label{display:flex;flex-direction:row;align-items:center;gap:9px;margin:10px 0;font-size:11px}
.controller-dialog.input-decoder-dialog input[type=checkbox]{width:16px;height:16px;min-height:16px;margin:0;padding:0;flex:0 0 16px;accent-color:#159e92}
@media(max-width:600px){.input-decoder-dialog .nw-detail-fields,.input-decoder-dialog #inputSensorValues{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* SDI-12 edition uses the shared controller dropdown treatment. */
.vl-device-cell .metrix-select{width:165px;min-width:165px;max-width:165px}:is(.vl-device-cell,.vl-input-devices) .metrix-select-trigger{min-height:32px;height:32px;padding:6px 28px 6px 10px;font-size:10px;border-radius:10px}.vl-device-cell select{width:165px}

:is(.vl-device-cell,.vl-input-devices) .metrix-select>.metrix-select-trigger{display:flex;align-items:center;padding-block:0;padding-inline:10px 30px;line-height:1.2}:is(.vl-device-cell,.vl-input-devices) .metrix-select>.metrix-select-trigger:after{top:50%;transform:translateY(-70%) rotate(45deg)}
.sdi-setup-selects{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.sdi-setup-selects label{display:grid;gap:7px;font-size:11px}.sdi-setup-selects .metrix-select{width:100%;min-width:0}@media(max-width:600px){.sdi-setup-selects{grid-template-columns:1fr}}

.vl-status.vl-output-status.neutral:not(.manual-running),.vl-status.vl-output-status.running:not(.manual-running){background:#d9f5e7;border-color:#9edcbf;color:#23815c}[data-theme=dark] .vl-status.vl-output-status.neutral:not(.manual-running),[data-theme=dark] .vl-status.vl-output-status.running:not(.manual-running){background:#244e41;border-color:#408568;color:#a4e9c6}

.vl-status.vl-input-status{background:#e1f3fc;border-color:#a9d8ef;color:#34789d}[data-theme=dark] .vl-status.vl-input-status{background:#24495f;border-color:#467b99;color:#b5dff4}

.vl-sdi-chevron{display:inline-block;margin-inline-end:7px;transition:transform .15s}.vl-name[aria-expanded=true] .vl-sdi-chevron{transform:rotate(90deg)}.vl-sdi-children{grid-column:1/-1;min-width:0;border-top:1px solid var(--line);padding:12px 16px;background:var(--glass)}.vl-sdi-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px}.vl-sdi-summary button{font:inherit;color:var(--ink);border:1px solid var(--line);border-radius:9px;background:var(--glass);padding:7px 12px;cursor:pointer}.vl-sdi-note{font-size:10px;color:var(--muted);margin:8px 0}.vl-sdi-slots{max-height:430px;overflow:auto;scrollbar-width:thin}.vl-sdi-slot{display:grid;grid-template-columns:100px minmax(140px,1fr) 175px minmax(150px,1fr) 55px;gap:12px;align-items:center;padding:9px 10px;min-height:44px;font-size:11px;border-bottom:1px solid var(--line);min-width:700px}.vl-sdi-slot-head{font-size:9px;letter-spacing:.6px;color:var(--muted);position:sticky;top:0;background:var(--glass);backdrop-filter:blur(15px);z-index:1}.vl-sdi-slot .vl-status{min-height:28px}.vl-sdi-slot>span{overflow-wrap:anywhere}.vl-sdi-slot .vl-actions button{border:1px solid var(--line);background:var(--glass)}

.vl-sdi-toggle svg{transition:transform .15s;transform:rotate(90deg)}.vl-sdi-toggle[aria-expanded=true] svg{transform:rotate(0deg)}.vl-identity-cell>strong.vl-name{cursor:default;font-weight:600}

.vl-input-devices{display:grid;gap:4px;width:140px;max-width:100%}.vl-input-devices .metrix-select>.metrix-select-trigger{height:28px;min-height:28px}

.vl-type-badge.vl-output-type{background:#d9f5e7;border-color:#9edcbf;color:#23815c}.vl-type-badge.vl-input-type{background:#e1f3fc;border-color:#a9d8ef;color:#34789d}[data-theme=dark] .vl-type-badge.vl-output-type{background:#244e41;border-color:#408568;color:#a4e9c6}[data-theme=dark] .vl-type-badge.vl-input-type{background:#24495f;border-color:#467b99;color:#b5dff4}

.vl-type-badge.vl-sdi-type,.vl-status.vl-sdi-status{background:#fff5cf;border-color:#efd78a;color:#92712a}[data-theme=dark] .vl-type-badge.vl-sdi-type,[data-theme=dark] .vl-status.vl-sdi-status{background:#514925;border-color:#8f7d3e;color:#f4e3a5}

.vl-input-devices .metrix-select{width:100%;min-width:0;max-width:100%}.vl-input-devices select{width:100%}

.sensor-timeline{padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#dbf4f340,#e6eafa30);margin:12px 0 20px}.sensor-timeline-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.sensor-timeline-heading h3{margin:0;font-size:14px}.sensor-timeline-controls{display:flex;gap:7px;flex-wrap:wrap}.sensor-timeline-controls select{min-height:30px;padding:5px 9px;border:1px solid var(--line);border-radius:10px;background:var(--glass);color:var(--ink);font:inherit;font-size:11px;max-width:220px}.sensor-timeline-chart{margin-top:12px;direction:ltr}.sensor-timeline-chart svg{display:block;width:100%;height:260px;touch-action:pan-y;outline-offset:2px}.sensor-timeline-chart text{fill:var(--muted);stroke:none;font:10px Segoe UI,Tahoma,Arial,sans-serif}.st-grid{fill:none;stroke:#8ab2c544;stroke-width:1}.st-line{fill:none;stroke:#269ca7;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.st-dot{fill:var(--glass);stroke:#269ca7;stroke-width:2}.sensor-timeline-empty{display:flex;align-items:center;justify-content:center;min-height:220px;text-align:center;color:var(--muted);font-size:12px}.sensor-timeline-point{font-size:11px!important;min-height:18px;margin:5px 0!important;color:var(--ink)}.sensor-timeline-note{font-size:10px!important;line-height:1.6!important;color:var(--muted);margin:8px 0 0!important}@media(max-width:600px){.sensor-timeline{padding:12px}.sensor-timeline-controls{width:100%}.sensor-timeline-controls select{max-width:100%;min-width:0;flex:1}.sensor-timeline-chart svg{height:220px}}

.sensor-timeline-channel-control[hidden]{display:none}.sensor-timeline-controls{align-items:center}.input-decoder-dialog .sensor-timeline-controls .metrix-select{width:155px;min-width:0;max-width:100%}.input-decoder-dialog .sensor-timeline-controls .metrix-select-trigger{height:32px;min-height:32px;font-size:11px;padding:0 30px 0 10px;border-radius:10px}.input-decoder-dialog .sensor-timeline-controls>button{height:32px;min-height:32px;font-size:11px;padding:5px 10px}.sensor-timeline-chart svg{height:220px}.sensor-timeline-chart text{font-size:12px}@media(max-width:600px){.input-decoder-dialog .sensor-timeline-controls .metrix-select{width:140px;max-width:100%}.sensor-timeline-chart svg{height:200px}}

/* Fit the input timeline and all reading cards into a desktop dialog. */
.controller-dialog.input-readings-dialog{padding:20px;max-height:calc(100dvh - 32px)}.input-readings-dialog .sensor-timeline{padding:12px;margin:8px 0 10px}.input-readings-dialog .sensor-timeline-chart{margin-top:5px}.input-readings-dialog .sensor-timeline-chart svg{height:clamp(125px,22dvh,180px)}.input-readings-dialog .sensor-timeline-empty{min-height:145px}.input-readings-dialog .nw-detail-fields{gap:6px;margin:6px 0}.input-readings-dialog .nw-detail-fields>div{padding:7px 9px;gap:3px;border-radius:10px}.input-readings-dialog .nw-detail-fields dd{font-size:12px}.input-readings-dialog h3{font-size:14px;margin:8px 0 4px}.input-readings-dialog .sensor-timeline-heading h3{margin:0}.input-readings-dialog #controllerDialogBody>p{font-size:11px;line-height:1.45;margin:5px 0}.input-readings-dialog hr{margin:8px 0}.input-readings-dialog .sensor-timeline-note{margin-top:5px!important}.input-readings-dialog .sensor-timeline-point{margin:3px 0!important}@media(min-width:701px){.input-readings-dialog #inputSummary{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:600px){.controller-dialog.input-readings-dialog{padding:16px;max-height:calc(100dvh - 20px)}}

@media(min-width:761px){.vl-table.vl-equipment-table{grid-template-columns:repeat(8,max-content)}.vl-equipment-table .vl-head [role=columnheader]:nth-child(7){font-size:9px;letter-spacing:.6px;text-align:start}.vl-equipment-table .vl-head [role=columnheader]:nth-child(6){text-align:center}}

.valve-diagnostics-dialog{width:820px}.vd-identity{display:flex;align-items:center;gap:12px;margin:20px 0}.vd-identity p{margin:0;font-size:14px;font-weight:600}.vd-identity small{font-size:11px;color:#8193a4}.vd-identity-icon{display:flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(130deg,#daf5f2,#e9e5fa);color:#34a9b9}.vd-identity-icon svg{width:25px;height:25px}.vd-identity button{margin-inline-start:auto}.vd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.vd-card{position:relative;padding:17px 14px;min-width:0;border:1px solid #d5e6ed;border-radius:17px;background:linear-gradient(135deg,#ffffffb0,#f0f8fc55)}.vd-card h3{font-size:11px;line-height:1.5;font-weight:500;min-height:33px;max-width:80%;margin:4px 0 12px;color:#5e7f94}.vd-icon{display:flex;width:28px;height:28px;position:absolute;top:14px;inset-inline-end:12px;color:#46b8c0;filter:drop-shadow(0 3px 5px #71bec22b)}.vd-icon svg{width:100%;height:100%}.vd-inductance .vd-icon,.vd-switchParams .vd-icon{color:#9a88ca}.vd-temperature .vd-icon,.vd-leak .vd-icon{color:#c98faa}.vd-value{font-size:25px;font-weight:600;color:var(--ink);line-height:1.3;min-height:36px;overflow-wrap:anywhere}.vd-value strong{font-size:inherit;font-weight:inherit}.vd-value small{font-size:10px;color:#8295a5;margin-inline-start:5px;font-weight:400}.vd-note{font-size:9px!important;color:#8295a5;line-height:1.6!important;margin:10px 0 0}.vd-value dl{font-size:10px;font-weight:400;margin:8px 0 0}.vd-value dl div{display:flex;justify-content:space-between;gap:8px;line-height:1.9}.vd-value dt{color:#8194a6}.vd-value dd{margin:0}.vd-switchParams .vd-value>strong{font-size:13px}.vd-unavailable .vd-value{color:#9aaab7}.vd-raw{font-size:10px;color:#7791a3;margin:12px 0 18px}.vd-raw summary{cursor:pointer}.vd-raw pre{white-space:pre-wrap;max-height:180px;overflow:auto;background:#eaf2f64f;padding:12px;border-radius:12px;direction:ltr}.vd-ping-panel{display:flex;align-items:center;gap:13px;flex-wrap:wrap;padding:16px;border:1px solid #cbe5e8;border-radius:16px;background:linear-gradient(130deg,#e5f7f47a,#eeeafd7a)}.vd-ping-panel>div{flex:1 1 300px}.vd-ping-panel h3{font-size:13px;margin:0 0 5px}.vd-ping-panel p{font-size:10px!important;color:#7891a2;line-height:1.7!important;margin:0}.vd-ping-panel label{display:flex;align-items:center;gap:7px;font-size:10px;flex:1 1 240px}.vd-ping-panel button svg{width:19px;height:19px}.vd-ping-panel input{accent-color:#299ca6}[data-theme=dark] .vd-card{background:linear-gradient(135deg,#294353,#293c5270);border-color:#47677b}[data-theme=dark] .vd-ping-panel{background:#284858;border-color:#4a7181}@media(max-width:700px){.vd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vd-identity{flex-wrap:wrap}.vd-identity button{margin-inline-start:0}.vd-card{padding:15px 12px}.vd-value{font-size:23px}}@media(max-width:360px){.vd-grid{grid-template-columns:1fr}}

.vd-ping-panel input[type=checkbox]{width:15px;height:15px;min-height:15px;padding:0;flex:0 0 15px;margin:0}

.vd-note:empty{display:none}
/* Reserve each reading card's full space before values arrive. */
.vd-grid{grid-auto-rows:182px}
.vd-card{height:100%;box-sizing:border-box;overflow:auto}
.vd-switchParams .vd-value{font-size:13px}

.vd-sensor-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:182px;margin:0}.vd-card .sd-refresh{position:absolute;inset-inline-end:12px;top:14px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:28px!important;padding:0!important;border:0;border-radius:0;background:transparent;color:#46b8c0;cursor:pointer}.vd-card .sd-refresh svg{width:100%;height:100%}.vd-card .sd-refresh:hover{opacity:.75}.vd-card .sd-refresh:disabled{opacity:.45;cursor:default}@media(max-width:700px){.vd-sensor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:360px){.vd-sensor-grid{grid-template-columns:1fr}}

.vd-card.vd-temperature .sd-refresh{color:#c98faa}

/* Shared optical alignment for tab labels and inline icon actions. */
.header-sub-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.25}
.header-sub-tab>img,.header-sub-tab>.nw-header-icon{display:block;flex-shrink:0;align-self:center}
.nav-item{align-items:center;column-gap:10px}
.nav-item>.icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}
.valve-tabs button,.valve-add,#workspace button:has(>svg),.controller-dialog button:has(>svg){display:inline-flex;align-items:center;justify-content:center;column-gap:8px;line-height:1.25}
.valve-tab-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}
.valve-tab-icon svg,#workspace button>svg,.controller-dialog button>svg{display:block;flex-shrink:0;align-self:center;vertical-align:middle}
.controller-dialog .controller-dialog-heading button{display:inline-flex;align-items:center;justify-content:center}
/* Native dialogs stay centered at every viewport size, with contained scrolling. */
dialog{position:fixed;inset:0;margin:auto!important;box-sizing:border-box;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);overflow:auto}
dialog.nw-detail-dialog{margin:auto!important}

#headerMainTab{display:inline-flex;align-items:center;gap:10px;flex:none;border:0;background:transparent;padding:0;color:inherit;font:inherit;text-align:inherit;cursor:pointer}#headerMainTab:disabled{opacity:1;cursor:default}#headerMainTab:focus-visible{outline:2px solid #24bba7;outline-offset:4px;border-radius:8px}

input[type=date]{cursor:pointer;color-scheme:light}input[type=date]::-webkit-calendar-picker-indicator{opacity:.45;cursor:pointer}.mint-calendar{width:350px;max-width:calc(100vw - 28px);padding:22px;border:1px solid #c8e8e4;border-radius:23px;background:var(--bg,#f3faf9);color:var(--ink,#29465a);box-shadow:0 24px 90px #193e5540;font:inherit}.mint-calendar::backdrop{background:#203c5b60;backdrop-filter:blur(7px)}.mc-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.mc-heading small{font-size:9px;letter-spacing:1.6px;color:#46a49e}.mc-heading h2{font-size:18px;margin:5px 0 0}.mint-calendar button,.mint-calendar select,.mint-calendar input{font:inherit;color:inherit;box-sizing:border-box}.mc-heading button{border:0;background:transparent;width:30px;height:30px;font-size:24px;color:#73939c;cursor:pointer}.mc-navigation{display:flex;align-items:center;gap:7px;margin-bottom:20px}.mc-navigation button{width:30px;height:34px;background:#e8f5f1;border:1px solid #cde6df;border-radius:9px;font-size:24px;color:#269c8b;cursor:pointer}.mc-navigation select,.mc-navigation input{height:34px;border:1px solid #d3e7e6;border-radius:9px;background:var(--glass,#fff);padding:5px 8px;font-size:12px;min-width:0}.mc-navigation select{flex:1}.mc-navigation input{width:73px}.mc-week,.mc-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.mc-week{font-size:9px;color:#7f9c9f;margin-bottom:10px}.mc-days button{height:35px;border:1px solid transparent;border-radius:10px;background:transparent;font-size:12px;cursor:pointer}.mc-days button:hover:not(:disabled){background:#d7f4eb}.mc-days button.mc-today{border-color:#6cc5b1;color:#259b83}.mc-days button.mc-selected{background:linear-gradient(135deg,#08aab9,#20d4b1 55%,#45efa8);color:#073e37;border-color:#35b59d;font-weight:600}.mc-days button:disabled{opacity:.25;cursor:default}.mc-footer{display:flex;justify-content:space-between;border-top:1px solid #d7e8e5;padding-top:16px;margin-top:18px}.mc-footer button{border:0;border-radius:10px;padding:8px 15px;background:transparent;color:#78939b;font-size:11px;cursor:pointer}.mc-footer .mc-today-button{background:#e0f3ec;color:#278e78}.mint-calendar button:focus-visible{outline:2px solid #2ab79f;outline-offset:2px}[data-theme=dark] .mc-navigation button,[data-theme=dark] .mc-footer .mc-today-button{background:#284e50;color:#b5ece0}[data-theme=dark] .mc-days button:hover:not(:disabled){background:#285c55}
