:root{--brand:#2b1a8f;--brand-dark:#1f1266;--red:#e4002b;--ink:#26272b;--ink-soft:#4b4d55;--ink-muted:#7c7f89;--line:#ececf0;--tag:#f2f2f5;--surface:#ffffff;--shadow:0 10px 30px rgba(23,20,60,0.14);--shadow-sm:0 4px 14px rgba(23,20,60,0.1);--radius:10px;--font:"Helvetica Neue",Helvetica,Arial,"Segoe UI",system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{font-family:var(--font);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select{font-family:inherit}h1,p{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body:has(.find),html:has(.find){overflow:hidden}.find{position:fixed;inset:0;display:flex;flex-direction:column;overflow:hidden}.find__intro{flex:none;padding:26px 32px 18px}.find__intro h1{font-size:clamp(32px,3.6vw,46px);line-height:1.05;font-weight:700;letter-spacing:-.015em;color:var(--brand)}.find__intro p{margin-top:14px;max-width:1120px;font-size:16px;line-height:1.55;color:var(--ink-soft)}.finder{position:relative;flex:1 1 auto;min-height:0;width:100%;background:#eef1f4;overflow:hidden}.map-canvas{position:absolute;inset:0}.detail__map .map-canvas,.finder .map-canvas{position:absolute;inset:0;width:100%;height:100%}.finder .map-canvas,.loc__map .map-canvas{z-index:0}.finder__panel{position:absolute;top:20px;left:24px;width:min(510px,calc(100% - 48px));bottom:20px;display:flex;flex-direction:column;gap:14px;min-height:0;z-index:3}.searchbox{position:relative;z-index:4;display:flex;flex:none;align-items:center;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);height:56px;padding:0 8px 0 16px}.searchbox__suggestions{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:20;max-height:min(360px,50vh);overflow-y:auto;overscroll-behavior:contain;padding:6px;border-radius:12px;background:#fff;box-shadow:0 18px 44px rgba(23,22,45,.2);scrollbar-width:thin;scrollbar-color:#c9cbd3 transparent}.searchbox__suggestion{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;width:100%;border:0;border-radius:8px;padding:10px 12px;background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:1.4;text-align:left;cursor:pointer}.searchbox__suggestion:hover,.searchbox__suggestion[data-active=true]{background:#f4f3fb}.searchbox__suggestion-icon{display:grid;place-items:center;color:var(--ink-muted)}.searchbox__suggestion-icon svg{display:block}.searchbox__empty{padding:15px 16px;font-size:14px;line-height:1.45;color:var(--ink-muted)}.searchbox__attribution{padding:7px 12px 9px;border-top:1px solid rgba(0,0,0,.08);color:var(--ink-muted);font-size:11px;line-height:1.2;text-align:right}.searchbox input{flex:1 1;min-width:0;border:0;outline:none;background:transparent;font-size:16px;color:var(--ink)}.searchbox input::placeholder{color:var(--ink-muted)}.searchbox__glass{flex:none;display:grid;place-items:center;margin-right:10px;color:var(--ink-muted)}.searchbox__glass svg{display:block}.searchbox__clear{flex:none;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:var(--ink-muted);cursor:pointer;display:grid;place-items:center}.searchbox__clear:hover{background:#f4f3fb;color:var(--brand)}.searchbox__clear:focus-visible{outline:0;box-shadow:0 0 0 2px rgba(43,26,143,.35)}.menus{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.menu{position:relative;min-width:0}.menu__button{width:100%;height:54px;display:flex;align-items:center;gap:8px;background:#fff;border:0;border-radius:var(--radius);box-shadow:var(--shadow);padding:0 14px 0 18px;font:inherit;font-size:15px;color:var(--ink);text-align:left;cursor:pointer}.menu__button:hover{box-shadow:var(--shadow),0 0 0 1px rgba(43,26,143,.16)}.menu__button:focus-visible{outline:0;box-shadow:var(--shadow),0 0 0 2px rgba(43,26,143,.45)}.menu__label{flex:none;font-size:13px;color:var(--ink-muted);white-space:nowrap}.menu__value{flex:1 1 auto;min-width:0;font-weight:600;color:var(--brand);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu__chevron{flex:none;color:var(--brand);transition:transform .18s ease}.menu__button[aria-expanded=true] .menu__chevron{transform:rotate(180deg)}.menu__list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:6;margin:0;padding:6px;list-style:none;background:#fff;border-radius:10px;box-shadow:0 14px 36px rgba(20,20,43,.24);max-height:302px;overflow-y:auto;scrollbar-width:thin}.menu__option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:none;border:0;border-radius:7px;padding:10px 12px;font:inherit;font-size:14px;color:var(--ink);text-align:left;cursor:pointer}.menu__option:hover{background:#f4f2fd}.menu__option[data-selected=true]{color:var(--brand);font-weight:600}.menu__option svg{flex:none;color:var(--brand)}.select{position:relative;display:block;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);height:54px}.select select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:100%;border:0;background:transparent;border-radius:var(--radius);padding:0 40px 0 18px;font-size:15px;color:var(--ink);cursor:pointer;outline:none;text-overflow:ellipsis}.select:focus-within{box-shadow:var(--shadow),0 0 0 2px rgba(43,26,143,.35)}.select__chevron{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--brand)}.plant-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.plant-card__status{padding:16px 24px;font-size:14px;color:var(--ink-muted);border-bottom:1px solid var(--line)}.plant-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1 auto;min-height:0;scrollbar-width:thin;scrollbar-color:#c9cbd3 transparent}.plant-list::-webkit-scrollbar{width:8px}.plant-list::-webkit-scrollbar-thumb{background:#c9cbd3;border-radius:8px}.plant{border-bottom:1px solid var(--line)}.plant:last-child{border-bottom:0}.plant[data-selected=true]{background:#faf9ff}.plant__head{display:flex;align-items:flex-start;gap:14px;padding:22px 24px 0;cursor:pointer}.plant__name{flex:1 1 auto;min-width:0;padding:0;border:0;background:none;font-family:inherit;text-align:left;cursor:pointer;font-size:20px;line-height:1.35;font-weight:600;letter-spacing:-.01em;color:var(--brand);text-decoration:none}.plant__name:hover{text-decoration:underline}.plant__toggle{flex:none;margin-top:1px;width:32px;height:32px;display:grid;place-items:center;background:none;border:0;border-radius:6px;color:var(--ink-soft);cursor:pointer}.plant__toggle:hover{background:var(--tag);color:var(--brand)}.plant__toggle svg{transition:transform .18s ease}.plant[data-expanded=true] .plant__toggle svg{transform:rotate(180deg)}.plant__collapse{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .26s ease,opacity .18s ease}.plant__collapse[data-open=true]{grid-template-rows:1fr;opacity:1}.plant__collapse>.plant__more{overflow:hidden;min-height:0}.plant__more{display:flex;flex-direction:column;gap:18px}.plant__more>.plant__hours{padding-top:18px}.plant__hours{display:flex;align-items:flex-start;gap:14px}.plant__hours-icon{flex:none;margin-top:0;color:var(--ink)}.plant__hours h3{font-size:15px;font-weight:600;line-height:20px;color:var(--ink);margin:0 0 8px}.plant__hours ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:3px;gap:3px;font-size:14px;color:var(--ink-soft)}.plant__hours li{display:flex;gap:5px}.plant__hours .day{color:var(--ink-muted)}.plant__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.plant__contact{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;max-width:none;height:46px;padding:0 22px;border:1px solid #c9d6e6;border-radius:999px;background:#fff;color:#0a63c9;font-size:14px;font-weight:600;text-decoration:none}.plant__contact:hover{border-color:#0a63c9}.plant__nav{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:132px;height:46px;padding:0 22px;border:1px solid var(--brand);border-radius:999px;background:var(--brand);color:#fff;font-family:inherit;font-size:14px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color .16s ease,border-color .16s ease}.plant__nav:hover{border-color:var(--brand-dark);background:var(--brand-dark)}.plant__nav:focus-visible{outline:3px solid rgba(0,80,160,.24);outline-offset:2px}.navmodal{position:fixed;inset:0;z-index:60;background:rgba(18,18,32,.45);display:grid;place-items:center;padding:24px;animation:navmodal-fade-in .18s ease both}.navmodal__card{position:relative;width:min(760px,calc(100vw - 32px));min-width:min(420px,calc(100vw - 32px));max-height:80vh;display:flex;flex-direction:column;overflow:visible;background:#fff;border-radius:12px;padding:22px 28px 24px;box-shadow:var(--shadow);animation:navmodal-card-in .24s cubic-bezier(.2,.8,.3,1) both}.navmodal[data-closing=true]{animation:navmodal-fade-out .16s ease both}.navmodal[data-closing=true] .navmodal__card{animation:navmodal-card-out .16s ease both}@keyframes navmodal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes navmodal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes navmodal-card-in{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}@keyframes navmodal-card-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(8px) scale(.99)}}@media (prefers-reduced-motion:reduce){.navmodal,.navmodal[data-closing=true],.navmodal[data-closing=true] .navmodal__card,.navmodal__card{animation-duration:1ms}}.navmodal__card[data-detailed=true]{width:min(80vw,1200px);height:80vh}.navmodal__card h2{font-size:22px;line-height:1.3;color:var(--brand);margin:0 0 10px;padding-right:44px}.navmodal__close{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--ink-muted);cursor:pointer}.navmodal__close:hover{background:#f2f5fa;color:var(--ink)}.navmodal__close:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.navmodal__address{margin-top:8px;font-size:13px;line-height:1.5;color:var(--ink-soft)}.navmodal__stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:18px 0 0}.navmodal__stats dt{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted)}.navmodal__stats dd{margin:4px 0 0;font-size:22px;font-weight:700;color:var(--ink)}.navmodal__hint,.navmodal__note{margin-top:14px;font-size:13px;line-height:1.5;color:var(--ink-soft)}.navmodal__origin{margin-top:18px;max-width:none}.navmodal__origin .navmodal__hint{margin-top:0}.navmodal__origin form{margin-top:12px}.navmodal__origin label{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted)}.navmodal__origin-row{display:flex;align-items:flex-start;gap:10px;margin-top:7px;flex-wrap:wrap}.navmodal__origin-field{position:relative;z-index:2;flex:1 1 300px;min-width:0}.navmodal__origin-field input{width:100%;height:46px;padding:0 14px 0 42px;border:1px solid #c9d6e6;border-radius:8px;background:#fff;color:var(--ink);font:inherit}.navmodal__origin-field input:focus{outline:3px solid rgba(0,80,160,.16);border-color:var(--brand)}.navmodal__origin-glass{position:absolute;left:14px;top:50%;transform:translateY(-50%);display:grid;place-items:center;color:var(--ink-muted);pointer-events:none}.navmodal__origin-field .searchbox__suggestions{top:calc(100% + 6px);z-index:30;max-height:min(302px,42vh)}.navmodal__origin .btn{flex:0 0 auto;height:46px}.navmodal__error{margin:8px 0 0;color:#b42318;font-size:13px;line-height:1.45}.navmodal__directions{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.navmodal__directions h3{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px}.navmodal__steps{flex:1 1 auto;min-height:0;list-style:none;margin:0;padding:0 6px 0 0;overflow-y:auto}.navmodal__steps li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;grid-gap:14px;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45;color:var(--ink)}.navmodal__steps li:last-child{border-bottom:0}.navmodal__step-icon{display:grid;place-items:center;width:56px;height:56px;border:1px solid #e7ebf2;border-radius:12px;background:linear-gradient(180deg,#fbfcfe,#f2f5fa);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);color:var(--brand)}.manoeuvre,.navmodal__step-icon svg{display:block}.manoeuvre{width:50px;height:50px}.manoeuvre__road{fill:none;stroke:#d7dce5;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.manoeuvre__route{fill:none;stroke:var(--brand);stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.manoeuvre__head,.manoeuvre__start{fill:var(--brand)}.manoeuvre__finish{fill:#fff;stroke:var(--brand);stroke-width:4}.manoeuvre__finish-dot{fill:var(--brand)}.manoeuvre__island{fill:#fff;stroke:var(--brand);stroke-width:5.5}.manoeuvre__exit{fill:var(--brand);font-size:12px;font-weight:700;text-anchor:middle;dominant-baseline:central}.navmodal__step-text{min-width:0}.navmodal__step-distance{color:var(--ink-muted);font-size:12px;white-space:nowrap}.navmodal__actions{flex:none;display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.navmodal__actions .btn{flex:1 1 auto;justify-content:center}.plant__distance{flex:none;margin-top:5px;font-size:13px;font-weight:600;color:var(--ink-muted);white-space:nowrap}.plant__body{padding:10px 24px 20px;cursor:pointer}.plant__address{font-style:normal;font-size:14px;line-height:1.55;color:var(--ink-soft)}.plant__tags{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-block;background:var(--tag);color:var(--ink);border-radius:6px;padding:5px 12px;font-size:13px;line-height:1.3}.plant-list__empty{padding:26px 24px 30px;font-size:15px;line-height:1.6;color:var(--ink-soft)}.plant-list__empty strong{display:block;color:var(--brand);font-size:17px;margin-bottom:6px}.plant__skeleton{padding:22px 24px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--line)}.plant__skeleton span{display:block;height:12px;border-radius:4px;background:linear-gradient(90deg,#eef0f5,#f8f9fc,#eef0f5);background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.maplibregl-ctrl-top-right{top:20px;right:20px}.maplibregl-ctrl-group{background:#fff;border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.maplibregl-ctrl-group button{width:42px;height:42px}.finder .map-canvas .maplibregl-ctrl-attrib,.loc__map .map-canvas .maplibregl-ctrl-attrib{display:none}.origin-dot{width:16px;height:16px;border-radius:50%;background:var(--red);border:3px solid #fff;box-shadow:0 0 0 5px rgba(228,0,43,.2)}.detail{max-width:1180px;margin:0 auto;padding:32px 24px 64px}.breadcrumb{font-size:13px;color:var(--ink-muted);display:flex;gap:8px;align-items:center;margin-bottom:18px}.breadcrumb a:hover{color:var(--brand)}.detail__head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:22px}.detail__head h1{font-size:clamp(26px,2.8vw,36px);letter-spacing:-.02em;color:var(--brand);line-height:1.15}.detail__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-gap:32px;gap:32px;margin-top:28px;align-items:start}.detail__map{position:relative;height:380px;border-radius:var(--radius);overflow:hidden}.detail__map,.panel{border:1px solid var(--line)}.panel{border-radius:var(--radius);padding:20px;margin-bottom:16px}.panel h2{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 14px;font-weight:700}.panel p{line-height:1.65;color:var(--ink-soft)}.kv,.panel p{font-size:14px}.kv{display:grid;grid-template-columns:120px 1fr;grid-gap:8px 16px;gap:8px 16px;margin:0}.kv dt{color:var(--ink-muted)}.kv dd{margin:0;color:var(--ink);line-height:1.5}.hours{width:100%;border-collapse:collapse;font-size:14px}.hours td,.hours th{text-align:left;padding:8px 0;border-bottom:1px solid var(--line);font-weight:400}.hours th{color:var(--ink-muted);font-weight:400}.hours tr:last-child td,.hours tr:last-child th{border-bottom:0}.hours tr[data-today=true] td,.hours tr[data-today=true] th{font-weight:700;color:var(--brand)}.detail__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.btn{border:0;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:11px 18px;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.btn--brand{background:var(--brand);color:#fff}.btn--brand:hover{background:var(--brand-dark)}.btn--outline{background:#fff;color:var(--brand);border:1px solid #d9d7e8}.badges{display:flex;flex-wrap:wrap;gap:8px}.badge{font-size:12px;font-weight:600;color:var(--ink);background:var(--tag);border-radius:6px;padding:5px 11px}.badge--closed{background:#fdecef;color:#a8102b}.plant-pin{cursor:pointer}.plant-pin svg{filter:drop-shadow(0 2px 3px rgba(20,20,43,.28))}.plant-pin[data-selected=true]>svg{transform:scale(1.15);transform-origin:bottom center}.plant-pin__label{position:absolute;z-index:1;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%) translateY(5px);width:max-content;max-width:280px;display:inline-flex;flex-direction:column;align-items:center;gap:5px;padding:9px 16px;background:#fff;border-radius:7px;border:1px solid var(--line);font-size:12px;line-height:1.3;font-weight:600;color:var(--brand);text-align:center;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s}.map-canvas--picked .plant-pin[data-selected=true] .plant-pin__label{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.plant-pin__logo{flex:none;display:block;width:130px;height:auto}.plant-pin__name{display:block;text-align:center}@media (max-width:900px){.find__intro{padding:22px 20px 14px}.finder__panel{top:14px;bottom:14px;left:14px;width:min(510px,calc(100% - 28px));gap:10px}.detail__grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.find__intro h1{font-size:30px}.searchbox{height:52px;padding-left:16px}.searchbox input{font-size:15px}.menu__button{height:48px;padding:0 10px 0 14px;font-size:14px}.menu__label{font-size:12px}.menu__list{max-height:240px}.plant__head{padding:16px 16px 0}.plant__body{padding:8px 16px 16px}.plant__name{font-size:17px}.kv{grid-template-columns:1fr;gap:2px 0}.kv dd{margin-bottom:10px}}.loc{max-width:1180px;margin:0 auto;padding:26px 28px 72px}.loc__crumb{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-muted);margin-bottom:26px}.loc__crumb a:hover,.loc__head h1{color:var(--brand)}.loc__head h1{font-size:clamp(28px,3.2vw,42px);letter-spacing:-.02em;line-height:1.15}.loc__address{margin-top:14px;font-size:14px;line-height:1.6;color:var(--ink-soft)}.loc__layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);grid-gap:44px;gap:44px;margin-top:30px;align-items:start}.loc__block{margin-bottom:26px}.loc__block h2{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:10px}.loc__block p{font-size:14px;line-height:1.7;color:var(--ink-soft)}.loc__phones{margin:0;display:grid;grid-gap:10px;gap:10px}.loc__phones div{display:flex;justify-content:space-between;gap:16px;font-size:14px}.loc__phones dt{color:var(--ink-soft)}.loc__phones dd{margin:0}.loc__phones a{color:var(--brand);font-weight:600}.loc__hours{width:100%;border-collapse:collapse;font-size:14px}.loc__hours th{width:130px;text-align:left;font-weight:400;color:var(--ink-soft);padding:5px 0}.loc__hours td{padding:5px 0;color:var(--ink)}.loc__hours tr[data-today=true] td,.loc__hours tr[data-today=true] th{color:var(--brand);font-weight:700}.loc__map{position:relative;height:430px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.loc__map .map-canvas{position:absolute;inset:0;width:100%;height:100%}.loc__ctas{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-top:18px}.loc__cta{display:flex;align-items:center;justify-content:center;height:46px;border-radius:999px;font-size:14px;font-weight:600;text-decoration:none}.loc__cta--outline{background:#fff;border:1px solid #cdd7e3;color:var(--brand)}.loc__cta--brand{background:#0a63c9;color:#fff}@media (max-width:900px){.loc__layout{grid-template-columns:minmax(0,1fr);gap:28px}.loc{padding:22px 18px 56px}}body:has(.admin){background:#f5f6fa}.admin{min-height:100vh;max-width:1380px;margin:0 auto;padding:28px 30px 80px}.admin__top{justify-content:space-between;gap:16px}.admin__crumb,.admin__top{display:flex;align-items:center}.admin__crumb{gap:8px;font-size:13px;color:var(--ink-muted)}.admin__crumb a:hover{color:var(--brand)}.admin__head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:30px 0 24px}.admin__eyebrow{margin:0 0 7px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}.admin__head h1{color:var(--brand);font-size:clamp(32px,4vw,48px);line-height:1.05;letter-spacing:-.02em}.admin__lede{max-width:650px;margin-top:10px;font-size:15px;line-height:1.6;color:var(--ink-soft)}.admin__stats{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));grid-gap:10px;gap:10px;flex:none;margin:0}.admin__stat{min-width:100px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-sm)}.admin__stat dt{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-muted)}.admin__stat dd{margin:4px 0 0;font-size:26px;font-weight:700;line-height:1;color:var(--ink)}.admin__toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-sm)}.admin__search{height:42px;border:1px solid #dfe1e8;border-radius:7px;background:#fff;color:var(--ink);font:inherit;font-size:14px;outline:none;flex:1 1 320px;min-width:180px;padding:0 12px}.admin__search:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(43,26,143,.12)}.admin__status-field{flex:0 0 auto;width:168px}.admin__status-field [role=combobox]{width:100%;height:42px;min-height:42px;padding:0 12px;border:1px solid #dfe1e8;border-radius:7px;background:#fff;box-shadow:none;color:var(--ink);font-size:14px;font-weight:500}.admin__status-field [role=combobox]:hover{border-color:#c9ccd8}.admin__status-field [role=combobox]:focus-visible,.admin__status-field [role=combobox][aria-expanded=true]{border-color:var(--brand);box-shadow:0 0 0 3px rgba(43,26,143,.12);outline:none}.admin__count{margin-left:auto;padding:0 4px;font-size:12px;color:var(--ink-muted);white-space:nowrap}.admin-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:8px;font:inherit;font-size:14px;font-weight:600;line-height:1;text-decoration:none;cursor:pointer}.admin-btn:focus-visible{outline:3px solid rgba(43,26,143,.22);outline-offset:2px}.admin-btn:disabled{opacity:.55;cursor:not-allowed}.admin-btn--primary{background:var(--brand);color:#fff}.admin-btn--primary:hover:not(:disabled){background:var(--brand-dark)}.admin-btn--ghost{background:#fff;border-color:#d9d7e8;color:var(--brand)}.admin-btn--ghost:hover:not(:disabled){border-color:var(--brand);background:#f8f7fe}.admin-btn--danger{background:#fff;border-color:#f0c9d0;color:#a8102b}.admin-btn--danger:hover:not(:disabled){background:#fdf2f4;border-color:#d99aa5}.admin-btn--danger-solid{background:#b42318;border-color:#b42318;color:#fff}.admin-btn--danger-solid:hover:not(:disabled){background:#8f1c13}.admin-btn--small{min-height:34px;padding:0 11px;font-size:13px}.admin__message{margin:14px 0 0;padding:11px 14px;border-radius:8px;font-size:13px;line-height:1.45}.admin__message--success{background:#edf8f0;border:1px solid #c9e7d1;color:#216b35}.admin__message--error{background:#fdf2f4;border:1px solid #f0c9d0;color:#a8102b}.admin-grid{margin-top:16px}.admin-row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px}.admin-row-actions .admin-btn{min-height:28px;padding:0 5px;font-size:11px;line-height:1;white-space:nowrap}.admin-status{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.admin-status>span{width:7px;height:7px;border-radius:50%;background:currentColor}.admin-status--open{background:#e6f6ec;color:#146c2e}.admin-status--closed{background:#fdecef;color:#b3122f}.admin__empty{display:flex;flex-direction:column;gap:5px;margin-top:16px;padding:28px 24px;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);font-size:14px;line-height:1.5}.admin__empty strong{color:var(--brand);font-size:16px}.admin-modal{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-start;justify-content:center;padding:24px;overflow-y:auto;background:rgba(18,18,32,.52)}.admin-modal__card{width:min(920px,100%);margin:auto;overflow:hidden;background:#fff;border-radius:12px;box-shadow:var(--shadow)}.admin-modal__card form{display:flex;flex-direction:column;max-height:calc(100vh - 48px)}.admin-modal__card--small{width:min(460px,100%)}.admin-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid var(--line)}.admin-modal__head h2{margin:0;color:var(--brand);font-size:22px;line-height:1.25}.admin-modal__close{flex:none;display:grid;place-items:center;width:36px;height:36px;margin-top:-4px;border:0;border-radius:50%;background:transparent;color:var(--ink-muted);cursor:pointer}.admin-modal__close:hover:not(:disabled){background:#f2f5fa;color:var(--ink)}.admin-modal__close:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.admin-modal__body{min-height:0;padding:24px 26px;overflow-y:auto}.admin-modal__card--small .admin-modal__body{padding-bottom:10px}.admin-modal__foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 26px;border-top:1px solid var(--line);background:#fbfbfd}.admin-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.admin-field{min-width:0}.admin-field--full{grid-column:1/-1}.admin-form__section{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.admin-form__section h3{margin:0 0 5px;color:var(--ink);font-size:14px;line-height:1.4}.admin-form__hint,.admin-form__lead{margin:0 0 12px;color:var(--ink-muted);font-size:12px;line-height:1.55}.admin-form__lead{color:var(--ink-soft);font-size:14px}.admin-form__error{margin:0 0 16px;padding:10px 12px;border:1px solid #f0c9d0;border-radius:7px;background:#fdf2f4;color:#a8102b;font-size:13px;line-height:1.45}.admin-hours{overflow:hidden;border:1px solid var(--line);border-radius:8px}.admin-hours__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:16px;gap:16px;padding:14px 12px;border-top:1px solid var(--line)}.admin-hours__row:first-child{border-top:0}.admin-hours__closed-note{display:flex;flex-direction:column;gap:3px;margin:0;color:var(--ink-soft);font-size:13px;line-height:1.4}.admin-hours__closed-note strong{color:var(--ink-muted);font-size:11px;letter-spacing:.05em;text-transform:uppercase}@media (max-width:900px){.admin{padding:22px 18px 60px}.admin__head{align-items:stretch;flex-direction:column;gap:20px}.admin__stats{width:100%}.admin__count{margin-left:0}}@media (max-width:700px){.admin{padding:18px 14px 52px}.admin__top{align-items:flex-start;flex-direction:column}.admin__stats{grid-template-columns:repeat(3,minmax(0,1fr))}.admin__stat{padding:10px 11px}.admin__stat dd{font-size:22px}.admin__head h1{font-size:34px}.admin__toolbar{align-items:stretch;flex-direction:column}.admin__search,.admin__status-field,.admin__toolbar .admin-btn{width:100%;flex:none}.admin__count{text-align:right}.admin-modal{padding:12px}.admin-modal__card form{max-height:calc(100vh - 24px)}.admin-modal__body,.admin-modal__foot,.admin-modal__head{padding-left:18px;padding-right:18px}.admin-form__grid{grid-template-columns:minmax(0,1fr)}.admin-field--full{grid-column:auto}.admin-hours__row{grid-template-columns:minmax(0,1fr)}.admin-modal__foot{flex-wrap:wrap}.admin-modal__foot .admin-btn,.admin-modal__foot .admin-modal__action{flex:1 1 auto}}