@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@300;400;500;600;700&display=swap";:root{font-family:IBM Plex Sans Arabic,Arial,sans-serif;color:#171516;background:#f6f1e8;--ink:#171516;--wine:#5B1626;--wine2:#3F0E1B;--cream:#F6F1E8;--paper:#FFFDFA;--muted:#746C65;--stone:#B8AFA2;--copper:#D89479;--line:#DED7CE;--soft:#EDE5DA;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--cream);color:var(--ink)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{display:block;width:100%}p{line-height:1.8}.public-site{direction:rtl;overflow:hidden}.site-header{height:78px;display:flex;align-items:center;gap:34px;padding:0 clamp(22px,5vw,76px);background:#f5f1eaf0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(91,22,38,.1);position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:10px;font-weight:700;direction:ltr;white-space:nowrap}.brand-mark{display:inline-block;width:30px;height:30px;border-radius:9px;background:transparent;object-fit:cover;vertical-align:middle}.site-header nav{display:flex;gap:26px;margin-inline:auto;color:#5d5752;font-size:14px}.site-header nav a:hover{color:var(--wine)}.header-action{font-size:13px;border:1px solid var(--wine);padding:9px 14px;border-radius:999px;color:var(--wine)}.hero{min-height:670px;display:grid;grid-template-columns:1.02fr .98fr;padding:0 clamp(22px,5vw,76px);max-width:1600px;margin:auto}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 5vw 70px 0}.kicker{font-size:12px;letter-spacing:.12em;color:var(--wine);font-weight:700}.hero h1{font-size:clamp(43px,5.3vw,82px);line-height:1.13;letter-spacing:-.045em;margin:16px 0 25px;font-weight:600}.hero-copy>p{font-size:18px;max-width:650px;color:#5f5852;margin:0 0 30px}.hero-actions,.contact-block>div{display:flex;gap:10px;flex-wrap:wrap}.primary-button,.ghost-button,.secondary-button{border:0;border-radius:999px;padding:13px 22px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.primary-button{background:var(--wine);color:#fff}.primary-button:hover{background:var(--wine2)}.primary-button:disabled{opacity:.45;cursor:not-allowed}.ghost-button,.secondary-button{background:transparent;border:1px solid #bdb4aa;color:var(--ink)}.hero-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:36px;color:#777069;font-size:12px}.hero-meta span:before{content:"•";color:var(--wine);margin-left:7px}.hero-visual{position:relative;min-height:600px}.hero-visual>img{height:100%;object-fit:cover;border-radius:0 0 32px 32px}.hero-card{position:absolute;right:28px;bottom:28px;background:#fffdfaf0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:20px 22px;border-radius:17px;width:min(310px,calc(100% - 56px));display:grid;gap:5px}.hero-card small,.hero-card span{color:var(--muted);font-size:12px}.hero-card strong{font-size:16px}.highlight-strip{display:grid;grid-template-columns:repeat(4,1fr);max-width:1450px;margin:0 auto;padding:26px clamp(22px,5vw,76px);border-bottom:1px solid var(--line)}.highlight-strip div{padding:7px 24px;border-left:1px solid var(--line);display:grid;gap:4px}.highlight-strip div:last-child{border-left:0}.highlight-strip strong{font-size:14px}.highlight-strip span{font-size:12px;color:var(--muted)}.section{padding:100px clamp(22px,5vw,76px);max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-heading h2,.location-block h2,.contact-block h2{font-size:clamp(31px,4vw,54px);line-height:1.25;margin:8px 0 0;letter-spacing:-.03em}.section-heading>p{max-width:480px;color:var(--muted);margin:0}.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.space-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.space-image{height:265px;position:relative;overflow:hidden}.space-image img{height:100%;object-fit:cover;transition:transform .5s}.space-card:hover .space-image img{transform:scale(1.025)}.space-image>span{position:absolute;top:15px;right:15px;background:#fffdfae6;padding:6px 10px;border-radius:999px;font-size:11px}.space-body{padding:22px;display:flex;flex-direction:column;flex:1}.space-title{display:flex;justify-content:space-between;gap:15px;align-items:start}.space-title h3{font-size:20px;margin:0}.space-title strong{font-size:12px;color:var(--wine);white-space:nowrap}.space-body p{font-size:13px;color:var(--muted);margin:13px 0}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.tags span{font-size:10.5px;background:#f1ece5;padding:5px 8px;border-radius:999px}.text-button{border:0;background:none;color:var(--wine);font-weight:600;font-size:13px;padding:17px 0 0;cursor:pointer;text-align:right}.booking-section{max-width:none;background:var(--wine2);color:#fff;padding-inline:max(clamp(22px,5vw,76px),calc((100vw - 1450px)/2))}.section-heading.light .kicker{color:#d9b8bf}.section-heading.light>p{color:#d3c4c5}.booking-card{max-width:1100px;margin:auto;background:var(--paper);color:var(--ink);border-radius:26px;padding:30px}.booking-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.booking-head h3{font-size:25px;margin:4px 0}.live-dot{font-size:11px;color:#27623a;background:#e8f3ea;padding:7px 10px;border-radius:999px}.live-dot:before{content:"●";font-size:8px;margin-left:6px}.booking-fields,.booking-form{display:grid;gap:16px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-card label{display:grid;gap:7px;font-size:12px;font-weight:600}.booking-card label small{color:var(--muted);font-weight:400}.booking-card input,.booking-card select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px 13px;outline:none}.booking-card input:focus,.booking-card select:focus{border-color:var(--wine)}.slot-area{margin:26px 0}.slot-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px}.slot-title small{color:var(--muted)}.slots{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.slot{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 5px;cursor:pointer;display:grid;gap:1px;font-size:12px}.slot small{font-size:10px;color:#999}.slot.active{background:var(--wine);border-color:var(--wine);color:#fff}.slot:disabled{background:#eeeae5;color:#aaa;cursor:not-allowed}.booking-total{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:4px}.booking-total>div{display:grid}.booking-total small{color:var(--muted)}.booking-total strong{font-size:22px}.notice{padding:12px 14px;border-radius:10px;font-size:12px}.notice.error{background:#fae8e8;color:#8a2525}.notice.success{background:#e7f3e9;color:#27623a}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service-grid>div{background:var(--cream);padding:32px}.service-grid b{color:var(--wine);font-size:11px}.service-grid h3{margin:35px 0 8px;font-size:18px}.service-grid p{font-size:13px;color:var(--muted);margin:0}.location-block{display:grid;grid-template-columns:1fr 1.2fr;max-width:1450px;margin:0 auto 100px;background:#e9e1d7;min-height:430px}.location-block>div{padding:60px;display:flex;flex-direction:column;align-items:start;justify-content:center}.location-block p{color:var(--muted);margin:12px 0 24px}.location-block img{height:100%;object-fit:cover}.contact-block{text-align:center;padding:100px 22px;background:var(--paper);border-top:1px solid var(--line)}.contact-block p{color:var(--muted)}.contact-block>div{justify-content:center;margin-top:24px}footer{display:flex;align-items:center;gap:30px;padding:28px clamp(22px,5vw,76px);background:var(--ink);color:#fff}footer p{margin:auto;color:#aaa;font-size:12px}footer>span{color:#aaa;font-size:12px;direction:ltr}.shell{min-height:100vh;display:grid;place-items:center;padding:24px;direction:rtl}.placeholder{width:min(720px,100%);padding:40px;background:#fff;border:1px solid var(--line);border-radius:20px}.eyebrow{direction:ltr;text-align:right;font-weight:700}.portal-page{min-height:100vh;direction:rtl;padding:clamp(18px,4vw,52px);background:#f6f1e8}.portal-shell{width:min(1180px,100%);margin:auto;display:grid;gap:18px}.card-panel{background:#fffdfaf0;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 16px 50px #2d1f180d}.portal-login{width:min(470px,100%);margin:7vh auto}.portal-login h1,.portal-top h1{font-size:clamp(30px,4vw,48px);margin:8px 0}.portal-login>p,.portal-top p,.card-panel>p{color:var(--muted);margin:0 0 20px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:#eee8df;border-radius:14px;padding:4px;margin:25px 0}.segmented button{border:0;background:transparent;padding:10px;border-radius:11px;cursor:pointer}.segmented button.active{background:#fff;color:var(--wine);box-shadow:0 2px 8px #0000000d}.portal-form{display:grid;gap:13px}.portal-form.compact{margin-top:18px}.portal-form label{display:grid;gap:6px;font-size:12px;font-weight:600}.portal-form input{height:48px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 13px;outline:none}.portal-form input:focus{border-color:var(--wine)}.portal-form .text-button{text-align:center;padding:3px}.portal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 4px}.portal-top p{margin:0}.tenant-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.tenant-stats article{background:var(--ink);color:#fff;border-radius:18px;padding:18px;display:grid;gap:6px}.tenant-stats small{color:#aaa;font-size:11px}.tenant-stats strong{font-size:15px}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card-panel h2{margin:5px 0 12px;font-size:23px}.photo-upload{background:#f1ece5;border-radius:14px;padding:16px;margin:15px 0}.photo-upload p{font-size:12px;color:var(--muted);margin:0 0 10px}.permit-link{display:block;margin-top:13px;color:var(--wine);font-size:12px}.section-row{display:flex;align-items:center;justify-content:space-between}.section-row .text-button{padding:0}.visitor-rows{display:grid;gap:8px}.visitor-rows>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:13px 4px}.visitor-rows>a>span{display:grid;gap:2px}.visitor-rows small{font-size:11px;color:var(--muted)}.visitor-rows b{font-size:11px;color:var(--wine)}.empty-state{color:var(--muted);font-size:13px}.portal-loading{min-height:80vh;display:grid;place-items:center;color:var(--muted)}.admin-auth{min-height:100vh;direction:rtl;display:grid;place-items:center;padding:24px;background:#eee8df}.admin-login{width:min(440px,100%);background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:32px;display:grid;gap:14px}.admin-login h1{margin:5px 0 0;font-size:30px}.admin-login p{color:var(--muted);font-size:13px;margin:0 0 10px}.admin-login label{display:grid;gap:6px;font-size:12px;font-weight:600}.admin-login input,.admin-toolbar input,.admin-toolbar select,.status-select{border:1px solid var(--line);border-radius:11px;background:#fff;padding:11px 12px;outline:none}.admin-primary,.admin-secondary{border:0;border-radius:11px;padding:11px 16px;cursor:pointer}.admin-primary{background:var(--wine);color:#fff}.admin-primary.compact{align-self:center}.admin-secondary{background:#fff;border:1px solid var(--line)}.admin-alert{background:#fae8e8;color:#8a2525;padding:11px 13px;border-radius:10px;font-size:12px}.admin-app{min-height:100vh;direction:rtl;display:grid;grid-template-columns:230px minmax(0,1fr);background:#f2eee8}.admin-sidebar{background:var(--ink);color:#fff;padding:25px 18px;display:flex;flex-direction:column;gap:24px;position:sticky;top:0;height:100vh}.admin-sidebar .brand-mark{background:#fff;color:var(--wine)}.admin-user{display:grid;border-top:1px solid #343032;border-bottom:1px solid #343032;padding:17px 0}.admin-user strong{font-size:12px;overflow:hidden;text-overflow:ellipsis}.admin-user span{font-size:10px;color:#999}.admin-sidebar nav{display:grid;gap:4px}.admin-sidebar nav button,.admin-logout{border:0;background:transparent;color:#bbb;text-align:right;padding:10px 12px;border-radius:9px;cursor:pointer}.admin-sidebar nav button.active{background:#2b2729;color:#fff}.admin-logout{margin-top:auto;color:#d4aeb6}.admin-content{min-width:0}.admin-topbar{height:72px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#f2eee8e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.admin-topbar>div{display:grid}.admin-topbar span{font-size:9px;color:var(--muted);direction:ltr}.admin-topbar strong{font-size:15px}.admin-topbar a{font-size:11px;color:var(--wine)}.admin-module{padding:30px;max-width:1400px;margin:auto}.admin-module-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:22px}.admin-module-head h2{font-size:30px;margin:3px 0}.admin-module-head p{margin:0;color:var(--muted);font-size:12px}.admin-kicker{font-size:9px;color:var(--wine);font-weight:700}.admin-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) 180px auto;gap:9px;align-items:center;margin-bottom:13px}.admin-toolbar span{font-size:11px;color:var(--muted);padding:0 8px}.admin-table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px}.admin-table{width:100%;border-collapse:collapse;min-width:850px}.admin-table th{text-align:right;font-size:10px;color:var(--muted);font-weight:500;background:#faf8f4;padding:11px 14px;border-bottom:1px solid var(--line)}.admin-table td{padding:13px 14px;border-bottom:1px solid #eee9e2;font-size:12px;vertical-align:top}.admin-table td>strong,.admin-table td>small,.admin-table td>code{display:block}.admin-table td>small{color:var(--muted);font-size:10px;margin-top:2px}.admin-table code{font-size:9px;color:var(--wine);margin-top:4px}.status-select{padding:7px 8px;font-size:11px}.admin-empty{padding:45px;text-align:center;background:#fff;border:1px dashed var(--line);border-radius:16px;color:var(--muted);font-size:12px}.status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eee9e3;font-size:10px}.s-نشط{background:#e5f2e8;color:#27623a}.s-سابق{background:#eee;color:#666}.admin-drawer-backdrop{position:fixed;inset:0;background:#17151673;z-index:50;display:flex;justify-content:flex-start}.admin-drawer{width:min(560px,100%);height:100%;overflow:auto;background:var(--paper);padding:28px;box-shadow:20px 0 60px #00000026}.admin-drawer-head{display:flex;align-items:start;justify-content:space-between;margin-bottom:24px}.admin-drawer-head h3{font-size:25px;margin:3px 0}.admin-drawer-head>button{border:0;background:#eee8df;width:34px;height:34px;border-radius:50%;font-size:22px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:grid;gap:6px;font-size:11px;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 11px;outline:none}.form-grid .full{grid-column:1/-1}.drawer-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}@media(max-width:980px){.site-header nav{display:none}.site-header{height:68px}.header-action{margin-right:auto}.hero{grid-template-columns:1fr;padding:0}.hero-copy{padding:70px 24px 45px}.hero-visual{min-height:460px}.hero-visual>img{border-radius:0}.highlight-strip{grid-template-columns:1fr 1fr}.highlight-strip div:nth-child(2){border-left:0}.space-grid,.service-grid{grid-template-columns:1fr 1fr}.slots{grid-template-columns:repeat(5,1fr)}.location-block{margin:0 22px 70px}.section{padding-top:75px;padding-bottom:75px}.tenant-stats{grid-template-columns:1fr 1fr}.admin-app{grid-template-columns:190px minmax(0,1fr)}}@media(max-width:640px){.brand{font-size:14px}.brand-mark{width:27px;height:27px}.header-action{font-size:11px;padding:7px 10px}.hero-copy{padding-top:55px}.hero h1{font-size:42px}.hero-copy>p{font-size:15px}.hero-visual{min-height:390px}.hero-card{right:18px;bottom:18px;width:calc(100% - 36px)}.highlight-strip{grid-template-columns:1fr 1fr;padding:18px}.highlight-strip div{padding:10px}.section-heading{display:block}.section-heading>p{margin-top:13px}.space-grid{grid-template-columns:1fr}.space-image{height:235px}.booking-section{padding-inline:14px}.booking-card{padding:20px 14px;border-radius:20px}.two-cols{grid-template-columns:1fr}.slots{grid-template-columns:repeat(3,1fr)}.booking-total{align-items:end}.booking-total .primary-button{padding:11px 16px}.service-grid{grid-template-columns:1fr}.location-block{grid-template-columns:1fr;margin:0}.location-block>div{padding:45px 24px}.location-block img{height:280px}.contact-block{padding:75px 22px}footer{flex-direction:column;gap:10px;text-align:center}footer p{margin:0}.portal-page{padding:16px}.portal-login{margin:2vh auto}.portal-top{align-items:flex-start}.portal-top h1{font-size:29px}.tenant-stats{grid-template-columns:1fr 1fr}.portal-grid{grid-template-columns:1fr}.card-panel{padding:20px;border-radius:18px}.visitor-rows>a{align-items:flex-start}.secondary-button{padding:9px 14px}.admin-app{display:block}.admin-sidebar{height:auto;position:static;padding:14px;gap:12px}.admin-sidebar .admin-user{display:none}.admin-sidebar nav{display:flex;overflow:auto}.admin-sidebar nav button{white-space:nowrap}.admin-logout{position:absolute;top:16px;left:12px;margin:0}.admin-topbar{height:58px;padding:0 16px}.admin-module{padding:20px 12px}.admin-module-head{align-items:start}.admin-module-head h2{font-size:25px}.admin-toolbar{grid-template-columns:1fr 115px}.admin-toolbar span{grid-column:1/-1}.admin-table-wrap{border-radius:12px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.admin-drawer{padding:20px}}.payment-step{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);display:grid;gap:16px}.payment-step.expired{opacity:.94}.payment-summary{display:flex;justify-content:space-between;gap:20px;align-items:end}.payment-summary h4{margin:5px 0 0;font-size:22px}.payment-summary>div:last-child{display:grid;text-align:left}.payment-summary small{font-size:10px;color:var(--muted)}.hold-timer{display:grid;grid-template-columns:1fr auto;gap:3px 16px;align-items:center;padding:14px 16px;border:1px solid rgba(91,22,38,.18);background:#fbf7f2;border-radius:14px}.hold-timer span{font-size:12px;color:var(--ink)}.hold-timer strong{font-size:22px;letter-spacing:.05em;color:var(--wine);font-variant-numeric:tabular-nums}.hold-timer small{grid-column:1/-1;color:var(--muted);font-size:11px}.payment-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-option{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px;text-align:right;display:grid;gap:7px;color:var(--ink)}button.payment-option{cursor:pointer}.payment-option.active{border-color:var(--wine);box-shadow:0 0 0 2px #5b162614}.payment-option>strong{font-size:15px}.payment-option>span{font-size:12px;color:var(--muted);line-height:1.7}.transfer-option{align-content:start}.bank-details{display:grid;gap:4px;padding:12px;margin-top:4px;background:var(--soft);border-radius:11px}.bank-details small{color:var(--muted)}.bank-details code{direction:ltr;text-align:left;font-size:12px;word-break:break-all}.receipt-upload{margin-top:5px;width:max-content;cursor:pointer}.payment-state{display:flex;gap:10px 22px;flex-wrap:wrap;background:#f1ece5;border-radius:12px;padding:12px 14px;font-size:12px}.payment-state strong{color:var(--wine)}.payment-actions{display:flex;gap:18px;flex-wrap:wrap}.payment-actions .text-button{padding:0}.promo-field{display:grid;gap:7px}.promo-field>small{color:var(--muted)}.promo-input{position:relative}.promo-input input{text-transform:uppercase;letter-spacing:.08em;padding-left:110px}.promo-input span{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--muted)}.quote-breakdown{display:grid;gap:4px;min-width:210px}.quote-breakdown>small,.quote-breakdown>span{font-size:11px;color:var(--muted)}.quote-breakdown>strong{font-size:24px;color:var(--ink)}.quote-breakdown>em{font-size:10px;color:#8b3a3a;font-style:normal}.quote-discount{color:var(--wine)!important;font-weight:600}@media(max-width:760px){.payment-methods{grid-template-columns:1fr}.payment-summary{align-items:start}.receipt-upload{width:100%}}@media(max-width:480px){.payment-summary{display:grid}.payment-summary>div:last-child{text-align:right}.hold-timer{grid-template-columns:1fr}.hold-timer strong{justify-self:start}.hold-timer small{grid-column:auto}.payment-actions{display:grid;gap:6px}.payment-actions .text-button{text-align:center;padding:8px}.promo-input input{padding-left:12px}.promo-input span{position:static;display:block;margin-top:5px;transform:none}.quote-breakdown{min-width:0}}.slot.past{opacity:.45}.slot.past small{color:var(--muted)}.submit-why{display:block;margin-top:8px;font-size:12.5px;color:var(--muted)}.steps{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.steps li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding:8px 0;border-top:3px solid var(--line)}.steps li b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--line);color:var(--ink)}.steps li.current{color:var(--ink);border-top-color:var(--wine)}.steps li.current b{background:var(--wine);color:#fff}.steps li.done{color:var(--ink);border-top-color:var(--copper,#D89479)}.steps li.done b{background:var(--copper,#D89479);color:#fff}.slot-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:var(--muted)}.slot-legend span{display:inline-flex;align-items:center;gap:6px}.slot-legend .lg{width:12px;height:12px;border-radius:4px;border:1px solid var(--line);background:var(--paper)}.slot-legend .lg.active{background:var(--wine);border-color:var(--wine)}.slot-legend .lg.taken{background:repeating-linear-gradient(45deg,#e4ddd3,#e4ddd3 3px,#f6f1e8 3px 6px)}.slot-legend .lg.past{background:#eee8df;opacity:.6}.slot.taken{background:repeating-linear-gradient(45deg,#e4ddd3,#e4ddd3 3px,#f6f1e8 3px 6px)}.field-ok{display:block;margin-top:6px;font-size:12px;color:#27623a}.booking-sticky{display:none}@media(max-width:820px){.booking-sticky{display:flex;position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:12px;right:12px;z-index:31;background:var(--ink);color:#f6f1e8;border-radius:14px;padding:10px 14px;align-items:center;justify-content:space-between;gap:10px;box-shadow:0 12px 30px #00000040}.booking-sticky strong{display:block;font-size:13.5px}.booking-sticky small{font-size:12px;color:#d9d0c5}.booking-sticky b{font-size:15px;white-space:nowrap}.booking-section .sticky-cta{display:none}}.membership-card{margin-bottom:20px;display:grid;gap:16px}.membership-card h2{margin:4px 0 0}.membership-badge{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#5b162614;color:var(--wine);font-size:12px}.membership-meta{display:flex;gap:12px;flex-wrap:wrap}.membership-meta span{display:flex;gap:5px;align-items:baseline;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--soft);font-size:12px}.membership-note{color:var(--muted);line-height:1.7}@media(max-width:600px){.membership-card .section-row{display:grid;gap:10px}.membership-badge{justify-self:start}.membership-meta{display:grid}.membership-meta span{width:100%}}.bill-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 18px}.bill-stats>div{background:#f6f2ec;border-radius:14px;padding:14px;display:grid;gap:4px}.bill-stats small{font-size:12px;color:var(--muted)}.bill-stats strong{font-size:17px;font-variant-numeric:tabular-nums}.bill-stats strong.ok{color:#27623a}.bill-stats strong.due{color:#8a2525}.bill-list{display:grid;gap:10px}.bill-item{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.bill-head{width:100%;border:0;background:transparent;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;text-align:right;font:inherit;min-height:56px}.bill-head strong{display:block;font-size:14px}.bill-head small{color:var(--muted);font-size:12px}.bill-amounts{display:grid;justify-items:end;gap:4px}.bill-amounts b{font-variant-numeric:tabular-nums}.pill{font-style:normal;font-size:11px;padding:4px 9px;border-radius:999px;background:#eee9e3}.pill.ok{background:#e5f2e8;color:#27623a}.pill.warn{background:#fbf0dc;color:#8a5a12}.pill.due{background:#fae8e8;color:#8a2525}.bill-body{padding:0 16px 16px;display:grid;gap:12px;border-top:1px solid #eee9e2}.bill-kv{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:6px 12px;font-size:13px;margin:12px 0 0}.bill-kv dt{color:var(--muted)}.bill-kv dd{margin:0;font-variant-numeric:tabular-nums}.doc-link{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--wine);border-radius:999px;color:var(--wine);font-size:13px;font-weight:600;justify-self:start}.bill-payments{display:grid;gap:8px}.bill-pay{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;background:#faf8f4;border-radius:12px;flex-wrap:wrap}.bill-pay.rev{background:#fae8e8}.bill-pay small{display:block;color:var(--muted);font-size:12px}@media(max-width:640px){.bill-stats{grid-template-columns:1fr 1fr}.bill-kv{grid-template-columns:auto 1fr}}.legacy-floor-section{background:#f5f1eb}.legacy-floor-list{display:grid;gap:10px}.legacy-floor-window{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.legacy-floor-head{width:100%;border:0;background:#fff;color:inherit;display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:16px;align-items:center;text-align:right;padding:17px 20px;cursor:pointer}.legacy-floor-window.open .legacy-floor-head{background:#fbf8f4}.legacy-floor-code{width:46px;height:46px;border-radius:14px;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800}.legacy-floor-title{display:grid;gap:4px}.legacy-floor-title strong{font-size:17px}.legacy-floor-title small{color:var(--muted);line-height:1.6}.legacy-floor-meta{display:flex;align-items:center;gap:16px}.legacy-floor-meta b{font-size:14px;white-space:nowrap}.legacy-floor-meta i{font-style:normal;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:22px}.legacy-floor-body{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:24px;padding:0 20px 20px}.legacy-floor-copy{padding:18px 4px;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}.legacy-floor-copy>div{display:grid;gap:4px;padding:14px;border-radius:14px;background:#f6f2ed}.legacy-floor-copy>div span{font-size:11px;color:var(--muted)}.legacy-floor-copy>div strong{font-size:15px}.legacy-floor-copy p{grid-column:1/-1;margin:4px 0 0;line-height:1.9;color:var(--muted)}.legacy-floor-copy a{grid-column:1/-1}.legacy-floor-plan{position:relative;background:#f2efeb;border-radius:18px;min-height:330px;display:grid;place-items:center;overflow:hidden}.legacy-floor-plan>span{position:absolute;top:12px;right:12px;background:#ffffffeb;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:700;z-index:2}.legacy-floor-plan img{width:100%;height:100%;max-height:470px;object-fit:contain;padding:14px}.legacy-gallery-section{background:#fff}.legacy-gallery-groups{display:grid;gap:28px}.legacy-gallery-group{display:grid;gap:12px}.legacy-gallery-group header{display:flex;align-items:end;justify-content:space-between;gap:16px}.legacy-gallery-group h3{margin:0;font-size:20px}.legacy-gallery-group header span{font-size:11px;color:var(--muted)}.legacy-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.legacy-photo-card{border:0;padding:0;background:#ddd;position:relative;overflow:hidden;border-radius:14px;aspect-ratio:4/3;cursor:zoom-in;text-align:right}.legacy-photo-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.legacy-photo-card:after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(transparent,#0c0a0ab8)}.legacy-photo-card span{position:absolute;z-index:2;right:10px;left:10px;bottom:9px;color:#fff;font-size:11px;font-weight:600;line-height:1.45}.legacy-photo-card:hover img{transform:scale(1.035)}.legacy-lightbox{position:fixed;inset:0;z-index:9999;background:#0a0909f0;display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.legacy-lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:88vh;min-width:0}.legacy-image-stage{width:100%;height:calc(100% - 52px);display:grid;place-items:center;overflow:auto;cursor:zoom-in}.legacy-lightbox figure img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 22px 70px #0006;transition:transform .2s ease;transform-origin:center center}.legacy-lightbox figure.zoomed .legacy-image-stage{cursor:zoom-out;place-items:start center}.legacy-lightbox figure.zoomed img{max-width:none;max-height:none;width:auto;height:auto;min-width:150%;transform:scale(1.15)}.legacy-lightbox figcaption{width:min(100%,1000px);display:flex;justify-content:space-between;gap:20px;color:#fff;font-size:12px}.legacy-close,.legacy-zoom,.legacy-lb-arrow{border:0;background:#ffffff1f;color:#fff;cursor:pointer}.legacy-close{position:absolute;left:20px;top:20px;width:46px;height:46px;border-radius:50%;font-size:28px}.legacy-zoom{position:absolute;left:76px;top:20px;width:46px;height:46px;border-radius:50%;font-size:26px}.legacy-lb-arrow{width:48px;height:66px;border-radius:14px;font-size:38px;justify-self:center}.legacy-lb-arrow:hover,.legacy-close:hover,.legacy-zoom:hover{background:#fff3}@media(max-width:960px){.legacy-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.legacy-floor-body{grid-template-columns:1fr}.legacy-floor-plan{min-height:280px}}@media(max-width:700px){.legacy-floor-section,.legacy-gallery-section{padding-inline:18px}.legacy-floor-head{grid-template-columns:50px minmax(0,1fr) auto;padding:14px;gap:10px}.legacy-floor-code{width:42px;height:42px}.legacy-floor-meta b{display:none}.legacy-floor-title strong{font-size:15px}.legacy-floor-title small{font-size:11px}.legacy-floor-body{padding:0 14px 14px;gap:14px}.legacy-floor-copy{grid-template-columns:1fr 1fr;padding:4px 0}.legacy-floor-plan{min-height:230px}.legacy-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.legacy-photo-card{aspect-ratio:1/1}.legacy-gallery-groups{gap:24px}.legacy-lightbox{grid-template-columns:1fr;padding:68px 10px}.legacy-lightbox figure{height:calc(100vh - 136px)}.legacy-lb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:58px;background:#00000073}.legacy-lb-arrow.prev{right:8px}.legacy-lb-arrow.next{left:8px}.legacy-lightbox figcaption{flex-direction:column;gap:3px;padding:0 4px}.legacy-close{top:max(12px,env(safe-area-inset-top));left:12px}.legacy-zoom{top:max(12px,env(safe-area-inset-top));left:62px}.legacy-lightbox figure.zoomed img{min-width:180%}}.hero-full{position:relative;display:grid;place-items:end start;min-height:min(88vh,760px);padding:0;max-width:none;overflow:hidden;color:#f6f1ea}.hero-full .hero-bg,.hero-full picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-full .hero-bg{aspect-ratio:auto!important}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,#171516d1,#17151659 45%,#1715161a)}.hero-full .hero-copy{position:relative;padding:60px clamp(22px,5vw,76px) 64px;max-width:820px}.hero-full .kicker{color:#e6cdd3}.hero-full h1{color:#fff;font-size:clamp(40px,5.6vw,80px);margin:14px 0 18px}.hero-full h1 em{font-style:normal;color:#e9c9d1}.hero-full .hero-copy>p{color:#e3dcd3;font-size:17px;max-width:600px}.ghost-button.light{border-color:#ffffff80;color:#fff}.more-section{padding-top:80px;padding-bottom:40px}.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.more-grid>div{background:var(--paper);padding:28px 24px}.more-grid b{color:var(--wine);font-size:12px}.more-grid h3{margin:22px 0 6px;font-size:17px}.more-grid p{margin:0;font-size:13.5px;color:var(--muted)}.editorial{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,72px);align-items:center;max-width:1500px;margin:0 auto;padding:56px clamp(22px,5vw,76px)}.editorial.flip .editorial-media{order:2}.editorial-media img{border-radius:24px;object-fit:cover;width:100%;height:auto;max-height:560px}.editorial-copy h2{font-size:clamp(28px,3.4vw,46px);line-height:1.25;letter-spacing:-.02em;margin:8px 0 14px}.editorial-copy>p{color:var(--muted);font-size:16px;max-width:520px;margin:0 0 20px}.editorial-meta{display:grid;gap:10px;margin-bottom:6px}.editorial-meta strong{color:var(--wine);font-size:15px}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.plan-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:26px;display:grid;gap:12px;align-content:start}.plan-card h3{margin:0;font-size:20px}.plan-card>strong{font-size:26px;letter-spacing:-.02em}.plan-card>strong small{font-size:13px;color:var(--muted);font-weight:400}.plan-card p{margin:0;font-size:13.5px;color:var(--muted)}.plan-card ul{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:13.5px}.plan-card li:before{content:"—";color:var(--wine);margin-left:8px}.plan-card .ghost-button{justify-self:start;margin-top:6px}.menu-toggle{display:none;width:44px;height:44px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px;padding:10px;cursor:pointer;margin-right:auto}.menu-toggle span{display:block;height:2px;background:var(--ink);border-radius:2px}.mobile-menu{position:fixed;inset:68px 0 0;background:var(--cream);z-index:40;padding:24px;display:flex;flex-direction:column;justify-content:space-between}.mobile-menu nav{display:grid;gap:4px}.mobile-menu nav a{font-size:22px;padding:14px 8px;border-bottom:1px solid var(--line)}.mobile-menu-foot{display:grid;gap:10px;padding-bottom:env(safe-area-inset-bottom)}.sticky-cta{display:none}@media(max-width:980px){.site-header .header-action{display:none}.sticky-cta{display:flex;position:fixed;bottom:max(14px,env(safe-area-inset-bottom));left:16px;right:16px;z-index:30;justify-content:center;background:var(--wine);color:#fff;padding:15px;border-radius:999px;font-weight:600;box-shadow:0 14px 40px #5b162659}.booking-section{padding-bottom:110px}.editorial{grid-template-columns:1fr;padding:36px 22px}.editorial.flip .editorial-media{order:0}.more-grid{grid-template-columns:1fr}.hero-full{min-height:78vh}.hero-full .hero-copy{padding:40px 22px 48px}.hero-full h1{font-size:40px}}.faq{padding-top:70px;padding-bottom:70px}.faq-list{display:grid;gap:10px;max-width:860px}.faq-list details{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:0 20px}.faq-list summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:600;font-size:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--wine);font-size:22px;font-weight:300}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:0 0 18px;color:var(--muted);font-size:15px;line-height:1.9}.compare{padding-top:60px}.compare-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.compare-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px 18px;display:grid;gap:12px;align-content:start}.compare-card h3{margin:0;font-size:17px}.compare-card dl{margin:0;display:grid;gap:8px;font-size:13px}.compare-card dt{color:var(--muted);font-size:11.5px}.compare-card dd{margin:0 0 2px}.compare-card dd.price{color:var(--wine);font-weight:600}.hours-note{margin:-6px 0 16px;color:var(--muted);font-size:14px}@media(max-width:1100px){.compare-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:820px){.compare-grid{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none}.compare-grid::-webkit-scrollbar{display:none}.compare-card{flex:0 0 78vw;scroll-snap-align:start}}.teaser{display:inline-block;font-size:13px;color:#27623a;background:#e5f2e8;padding:6px 12px;border-radius:999px;margin-top:4px}.public-site .section{padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}.public-site .section-heading{margin-bottom:clamp(24px,3vw,40px);align-items:end}.public-site .section-heading h2{font-size:clamp(28px,3.6vw,48px);line-height:1.2;letter-spacing:-.02em;margin:8px 0 0;max-width:16ch}.public-site .section-heading>p{max-width:38ch;font-size:15.5px;line-height:1.8}.public-site .kicker{letter-spacing:.06em;font-size:12px}.more-section{padding-top:clamp(48px,6vw,80px)!important;padding-bottom:0!important}.more-grid{gap:1px;background:var(--line);border:1px solid var(--line);border-radius:22px;overflow:hidden}.more-item{position:relative;background:var(--paper);padding:26px 24px 24px;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;align-items:start;min-height:0;transition:background .18s}.more-item:hover{background:#fff}.more-item .more-icon{grid-row:1/4;width:44px;height:44px;border-radius:12px;background:var(--cream);color:var(--wine);display:grid;place-items:center}.more-item b{grid-column:2;font-size:11px;letter-spacing:.08em;color:var(--muted);font-weight:600}.more-item h3{grid-column:2;margin:0;font-size:17.5px;line-height:1.35}.more-item p{grid-column:2;margin:0;font-size:14px;line-height:1.75;color:var(--muted);max-width:32ch}.more-item:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--wine);transform:scaleX(0);transform-origin:right;transition:transform .22s}.more-item:hover:after{transform:scaleX(1)}.highlight-strip{max-width:1500px;margin:0 auto;padding:22px clamp(22px,5vw,76px) 0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:0}.highlight-strip>div{padding:16px 18px;border-right:1px solid var(--line);display:grid;gap:4px}.highlight-strip>div:first-child{border-right:0;padding-right:0}.highlight-strip strong{font-size:14.5px}.highlight-strip span{font-size:13px;color:var(--muted);line-height:1.6}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-grid>div{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px 20px;display:grid;gap:8px;position:relative;overflow:hidden}.service-grid b{font-size:36px;line-height:1;color:var(--line);font-weight:700;letter-spacing:-.04em}.service-grid h3{margin:6px 0 0;font-size:16.5px}.service-grid p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.7}.space-card{border-radius:22px;overflow:hidden;transition:transform .2s,box-shadow .2s;border:1px solid var(--line);background:var(--paper)}.space-card:hover{transform:translateY(-2px);box-shadow:0 18px 40px #2d1f181a}.space-card .space-image{aspect-ratio:4/3;overflow:hidden}.space-card img{width:100%;height:100%;aspect-ratio:auto!important;object-fit:cover;display:block}.space-body{padding:18px 20px 20px;display:grid;gap:10px}.space-title{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.space-title h3{margin:0;font-size:17px}.space-title strong{color:var(--wine);font-size:13.5px;white-space:nowrap}.space-body p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.7}.tags{display:flex;flex-wrap:wrap;gap:6px}.tags span{font-size:12px;padding:5px 10px;border-radius:999px;background:var(--cream);color:var(--ink)}.space-body .text-button{padding:6px 0 0;min-height:auto}.compare-card,.plan-card{border-radius:22px;transition:box-shadow .2s}.compare-card:hover,.plan-card:hover{box-shadow:0 14px 34px #2d1f1814}.compare-card dt{letter-spacing:.04em;text-transform:none}.plan-card>strong{color:var(--wine)}.faq-list details{transition:background .18s}.faq-list details[open]{background:#fff}.location-block h2{font-size:clamp(28px,3.4vw,44px)}.contact-block{border-radius:28px}@media(max-width:980px){.more-grid{grid-template-columns:1fr 1fr}.highlight-strip{grid-template-columns:1fr 1fr;row-gap:8px}.highlight-strip>div{border-right:0;padding:10px 0}.service-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.more-grid{grid-template-columns:1fr;border-radius:18px}.more-item{padding:20px 18px}.service-grid{grid-template-columns:1fr}.public-site .section-heading h2{max-width:none}}@media(prefers-reduced-motion:reduce){.more-item:after,.space-card,.compare-card,.plan-card{transition:none}}.hero-split{min-height:min(88vh,760px);display:grid;grid-template-columns:.98fr 1.02fr;align-items:stretch;padding:0;max-width:1600px;margin:0 auto;gap:0}.hero-split .hero-copy{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:64px clamp(22px,5vw,76px) 64px 5vw}.hero-split .kicker{font-size:12px;letter-spacing:.06em;color:var(--wine)}.hero-split h1{font-size:clamp(42px,5.4vw,78px);line-height:1.08;letter-spacing:-.02em;margin:0;color:var(--ink)}.hero-split h1 em{font-style:normal;color:var(--wine)}.hero-split .hero-copy>p{font-size:17px;line-height:1.8;color:var(--muted);max-width:52ch;margin:0}.hero-split .hero-actions{margin-top:4px}.hero-split .hero-visual{position:relative;min-height:560px;overflow:hidden;border-radius:0 0 32px 32px}.hero-split .hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}.hero-split .hero-slide.show{opacity:1}.hero-split .hero-slide picture,.hero-split .hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto!important}.hero-split .hero-slide.show img{animation:hero-drift 14s ease-in-out both}@keyframes hero-drift{0%{transform:scale(1.03)}to{transform:scale(1.09)}}.hero-split .hero-card{position:absolute;right:22px;bottom:22px;background:#fffdfaf0;border:1px solid var(--line);border-radius:16px;padding:14px 18px;display:grid;gap:2px;max-width:280px}.hero-split .hero-card small{font-size:11px;color:var(--wine);letter-spacing:.06em}.hero-split .hero-card strong{font-size:15px}.hero-split .hero-card span{font-size:12px;color:var(--muted)}.hero-dots{display:flex;gap:8px;margin-top:6px}.hero-dots button{width:34px;height:4px;border:0;border-radius:2px;background:var(--line);cursor:pointer;padding:0;transition:background .2s}.hero-dots button.active{background:var(--wine)}.hero-dots button:focus-visible{outline:2px solid var(--wine);outline-offset:3px}@media(prefers-reduced-motion:reduce){.hero-split .hero-slide{transition:none}.hero-split .hero-slide.show img{animation:none}}@media(max-width:980px){.hero-split{grid-template-columns:1fr;min-height:0}.hero-split .hero-visual{order:-1;min-height:52vh;border-radius:0}.hero-split .hero-copy{padding:36px 22px 40px}.hero-split h1{font-size:44px}.hero-split .hero-card{right:14px;bottom:14px;padding:10px 14px}}.more-section{padding-bottom:clamp(56px,7vw,96px)!important}.more-grid{grid-template-columns:repeat(3,1fr)}.more-item{cursor:default;transition:background .2s,color .2s}.more-item:hover,.more-item:focus-within{background:var(--wine);color:#f6f1e8}.more-item:hover h3,.more-item:hover p,.more-item:hover b,.more-item:focus-within h3,.more-item:focus-within p,.more-item:focus-within b{color:#f6f1e8}.more-item:hover .more-icon,.more-item:focus-within .more-icon{background:#ffffff24;color:#fff}.more-item:after{display:none}@media(max-width:980px){.more-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.more-grid{grid-template-columns:1fr}}.space-specs{margin:2px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:12.5px;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.space-specs dt{color:var(--muted)}.space-specs dd{margin:0;font-weight:500}.room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 22px}.room-card{position:relative;border:0;padding:0;background:var(--paper);border-radius:18px;overflow:hidden;cursor:pointer;text-align:right;font:inherit;color:var(--ink);display:grid;transition:transform .2s,box-shadow .2s,outline-color .2s;outline:2px solid transparent;outline-offset:2px}.room-card picture{display:block;width:100%;aspect-ratio:4/3;overflow:hidden}.room-card img{width:100%;height:100%;aspect-ratio:auto!important;object-fit:cover;object-position:center 45%;display:block}.room-card .room-body{padding:12px 14px 14px;display:grid;gap:2px}.room-card strong{font-size:14.5px}.room-card small{font-size:12.5px;color:var(--muted)}.room-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px #00000040}.room-card.active{outline-color:#e9c9d1}.room-card.active strong{color:var(--wine)}.room-card:focus-visible{outline-color:#fff}@media(max-width:1100px){.room-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.room-grid{grid-template-columns:1fr;gap:12px}}.header-install{display:inline-flex;margin-inline-start:8px}.header-install .btn{min-height:36px;font-size:12px;border-radius:999px;border-color:var(--wine);color:var(--wine);background:transparent}@media(max-width:980px){.header-install{margin:0 0 0 auto;order:2}.header-install .btn{min-height:40px;padding:0 10px}.header-install .btn svg{margin:0}.menu-toggle{order:3;margin-right:0}}@media(max-width:400px){.header-install .btn span{display:none}}.brand img.brand-mark{width:34px;height:34px;border-radius:9px;object-fit:cover;background:none;display:inline-block}.site-header .brand span,footer .brand span{font-weight:700;letter-spacing:-.01em;color:var(--ink)}.public-site .kicker,.hero-split .kicker{color:var(--copper)}.hero-dots button.active{background:var(--copper)}.tags span{background:var(--soft);color:var(--ink)}.space-specs dt,.compare-card dt{color:var(--stone)}.more-item b{color:var(--copper)}.more-item:hover b,.more-item:focus-within b{color:#f3d9df}.room-card.active{outline-color:var(--copper)}.booking-section .kicker{color:var(--copper)}footer p,footer span{color:var(--stone)}@media(max-width:1100px){.menu-toggle{display:flex}}.gallery-chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.gallery-chips .chip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:8px 14px;font:inherit;font-size:13px;min-height:40px;cursor:pointer;color:var(--ink)}.gallery-chips .chip small{color:var(--stone);margin-inline-start:4px}.gallery-chips .chip.active{background:var(--wine);color:#f6f1e8;border-color:var(--wine)}.gallery-chips .chip.active small{color:#e9c9d1}.gallery-masonry{columns:3;column-gap:14px}.gallery-tile{display:block;width:100%;break-inside:avoid;margin:0 0 14px;padding:0;border:0;background:var(--paper);border-radius:18px;overflow:hidden;cursor:zoom-in;position:relative;text-align:right;font:inherit}.gallery-tile img{width:100%;height:auto;display:block;transition:transform .35s}.gallery-tile:hover img{transform:scale(1.03)}.gallery-tile span{position:absolute;inset:auto 0 0;padding:26px 14px 12px;font-size:12.5px;color:#f6f1e8;background:linear-gradient(to top,rgba(23,21,22,.72),transparent);opacity:0;transition:opacity .2s}.gallery-tile:hover span,.gallery-tile:focus-visible span{opacity:1}.gallery-tile:focus-visible{outline:3px solid var(--copper);outline-offset:2px}.legacy-gallery-groups{display:none}@media(max-width:980px){.gallery-masonry{columns:2}}@media(max-width:520px){.gallery-masonry{columns:2;column-gap:10px}.gallery-tile{margin-bottom:10px;border-radius:12px}.gallery-tile span{opacity:1;padding:18px 10px 8px;font-size:11.5px}}@media(prefers-reduced-motion:reduce){.gallery-tile img{transition:none}}.contact-block.cta-photo{position:relative;overflow:hidden;background:var(--ink);color:#f6f1e8;padding:clamp(88px,12vw,150px) 22px;text-align:center;border-top:0;min-height:520px;display:grid;place-items:center}.cta-photo .cta-bg,.cta-photo picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;aspect-ratio:auto!important}.cta-photo .cta-overlay{position:absolute;inset:0;background:linear-gradient(to top,#3f0e1be0,#1715168c 55%,#17151659)}.cta-photo .cta-copy{position:relative;z-index:1;max-width:720px;display:grid;gap:14px;justify-items:center}.cta-photo .kicker{color:var(--copper)}.cta-photo h2{color:#fff;font-size:clamp(34px,4.6vw,60px);line-height:1.12;letter-spacing:-.02em;margin:0;max-width:18ch}.cta-photo p{color:#e9ddd2;font-size:17px;line-height:1.8;max-width:46ch;margin:0}.cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}.primary-button.light{background:#f6f1e8;color:var(--wine)}.primary-button.light:hover{background:#fff}.ghost-button.light{border-color:#f6f1e88c;color:#f6f1e8;background:transparent}.ghost-button.light:hover{background:#ffffff1a}@media(max-width:640px){.contact-block.cta-photo{min-height:440px;padding:72px 20px}.cta-actions{flex-direction:column;width:100%}.cta-actions a{width:100%;justify-content:center}}.stats{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:center}.stats-copy h2{font-size:clamp(28px,3.4vw,44px);line-height:1.2;letter-spacing:-.02em;margin:8px 0 10px}.stats-copy p{color:var(--muted);font-size:15.5px;line-height:1.8;max-width:40ch;margin:0 0 6px}.stats-nums{margin:22px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}.stats-nums>div{background:var(--paper);padding:18px 16px;display:grid;gap:4px}.stats-nums dd{margin:0;font-size:clamp(26px,3vw,38px);font-weight:700;letter-spacing:-.03em;color:var(--wine);direction:ltr;text-align:right;font-variant-numeric:tabular-nums;line-height:1}.stats-nums dt{font-size:12.5px;color:var(--stone);order:2}.stats-photo,.stats picture{width:100%;height:100%;min-height:420px;object-fit:cover;border-radius:22px;aspect-ratio:auto!important;display:block}@media(max-width:980px){.stats{grid-template-columns:1fr}.stats-photo,.stats picture{min-height:260px;order:-1}.stats-nums{grid-template-columns:repeat(3,1fr)}}@media(max-width:520px){.stats-nums{grid-template-columns:1fr 1fr}}.space-image{position:relative}.space-image img.alt{position:absolute;inset:0;opacity:0;transition:opacity .35s}.space-card:hover .space-image img.alt,.space-card:focus-within .space-image img.alt{opacity:1}.site-header{transition:height .2s,padding .2s,box-shadow .2s}.site-header.compact{height:54px;box-shadow:0 6px 24px #2d1f1814}.site-header.compact .brand img.brand-mark{width:28px;height:28px}.site-header.compact .brand span{font-size:15px}.faq-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.faq-tools .gallery-chips{margin:0}.faq-search{min-height:40px;border:1px solid var(--line);border-radius:999px;padding:0 14px;font:inherit;font-size:14px;background:var(--paper);min-width:220px}.plan-card{position:relative}.plan-card.featured{border:2px solid var(--copper,#D89479);box-shadow:0 14px 34px #d894792e}.plan-flag{position:absolute;top:-12px;right:18px;background:var(--copper,#D89479);color:#fff;font-size:11.5px;padding:4px 10px;border-radius:999px;letter-spacing:.03em}.plan-card ul li{padding-inline-start:20px;position:relative}.plan-card ul li:before{content:"✓";position:absolute;right:0;color:var(--copper,#D89479);font-weight:700}@media(prefers-reduced-motion:reduce){.space-image img.alt,.site-header{transition:none}}.links-page{min-height:100vh;background:var(--cream);display:grid;align-content:start;justify-items:center;padding:calc(28px + env(safe-area-inset-top)) 18px 40px;gap:22px}.links-head{text-align:center;display:grid;justify-items:center;gap:8px}.links-head img{border-radius:20px}.links-head h1{margin:6px 0 0;font-size:24px;letter-spacing:-.01em}.links-head p{margin:0;color:var(--muted);font-size:14.5px;max-width:34ch;line-height:1.7}.links-list{display:grid;gap:10px;width:min(480px,100%)}.links-list a{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:14px 16px;text-decoration:none;color:var(--ink);min-height:64px;transition:transform .15s,box-shadow .15s}.links-list a:hover{transform:translateY(-1px);box-shadow:0 10px 26px #2d1f1814}.links-list a:focus-visible{outline:3px solid var(--copper,#D89479);outline-offset:2px}.links-icon{width:40px;height:40px;border-radius:12px;background:var(--wine);color:#f6f1e8;display:grid;place-items:center}.links-list strong{display:block;font-size:15px}.links-list small{display:block;color:var(--muted);font-size:12.5px}.links-foot{display:grid;gap:10px;justify-items:center;color:var(--muted);font-size:13px}.links-foot a{color:var(--wine)}.visit-form{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;align-items:end;max-width:820px;margin:18px auto 0;text-align:right}.visit-form label{display:grid;gap:6px;font-size:13px;color:#e9ddd2}.visit-form label small{color:#c9bdb2}.visit-form input{min-height:46px;border:1px solid rgba(246,241,232,.35);background:#ffffff14;color:#fff;border-radius:12px;padding:0 12px;font:inherit;font-size:16px}.visit-form input::placeholder{color:#b8aca2}.visit-form input:focus{outline:none;border-color:#f6f1e8;background:#ffffff24}.visit-form .primary-button{min-height:46px}.visit-msg{grid-column:1/-1;margin:4px 0 0;font-size:14px}.visit-msg.ok{color:#cfe8d5}.visit-msg.error{color:#f3c9c9}@media(max-width:820px){.visit-form{grid-template-columns:1fr}.visit-form .primary-button{width:100%}}.announce{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--wine);color:#f6f1e8;font-size:13.5px;padding:9px 44px 9px 12px;position:relative;text-align:center}.announce a{color:#fff;text-decoration:underline;text-underline-offset:3px}.announce button{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;background:transparent;color:#f6f1e8;font-size:20px;cursor:pointer;border-radius:8px}.announce button:hover{background:#ffffff1f}.space-page{max-width:1400px;margin:0 auto;padding:calc(20px + env(safe-area-inset-top)) clamp(18px,5vw,76px) 60px;display:grid;gap:40px}.space-crumbs{display:flex;gap:8px;font-size:13px;color:var(--muted)}.space-crumbs a{color:var(--muted)}.space-crumbs b{color:var(--ink)}.space-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(20px,4vw,56px);align-items:start}.space-gallery>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:22px;display:block}.space-gallery .thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}.space-gallery .thumbs button{border:2px solid transparent;padding:0;border-radius:12px;overflow:hidden;background:none;cursor:pointer;aspect-ratio:4/3}.space-gallery .thumbs button img{width:100%;height:100%;object-fit:cover;display:block}.space-gallery .thumbs button.active{border-color:var(--wine)}.space-gallery .thumbs button:focus-visible{outline:3px solid var(--copper,#D89479)}.space-copy{display:grid;gap:16px;align-content:start}.space-copy h1{font-size:clamp(32px,4vw,52px);line-height:1.12;letter-spacing:-.02em;margin:0}.space-copy .lead{font-size:16.5px;line-height:1.8;color:var(--muted);max-width:52ch;margin:0}.space-copy .space-specs{grid-template-columns:auto 1fr;font-size:14px;padding:14px 0}.space-price strong{font-size:22px;color:var(--wine)}.space-price small{color:var(--muted)}.space-more h2{font-size:24px;margin:0 0 16px}.space-more .space-card{text-decoration:none;color:inherit}.space-foot{color:var(--muted);font-size:14px}.space-foot a{color:var(--wine)}.text-button.muted{color:var(--muted)}@media(max-width:980px){.space-hero{grid-template-columns:1fr}}.photo-collections{padding-top:72px}.collection-stack{display:grid;gap:26px}.photo-collection{background:#fff;border:1px solid #e7dfd5;border-radius:24px;padding:22px;box-shadow:0 14px 38px #291d170b}.photo-collection header{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.2fr);gap:24px;align-items:end;margin-bottom:18px}.photo-collection header span{display:block;color:#7b2436;font-size:12px;font-weight:700;margin-bottom:6px}.photo-collection header h3{margin:0;font-size:clamp(20px,2vw,28px);line-height:1.35}.photo-collection header p{margin:0;color:#756c64;line-height:1.9;font-size:13.5px}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.photo-tile{position:relative;border:0;padding:0;border-radius:15px;overflow:hidden;background:#eee;aspect-ratio:4/3;cursor:zoom-in;text-align:right;min-width:0}.photo-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .35s ease}.photo-tile:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,#0f0b0aa8);pointer-events:none}.photo-tile span{position:absolute;z-index:2;right:12px;left:36px;bottom:10px;color:#fff;font-size:12px;font-weight:600;line-height:1.5}.photo-tile b{position:absolute;z-index:2;left:10px;bottom:10px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#ffffffe6;color:#39151e;font-size:12px}.photo-tile:hover img{transform:scale(1.035);filter:saturate(1.04)}.photo-grid.count-3{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-grid.count-3 .photo-tile{aspect-ratio:16/10}.gallery-open{overflow:hidden}.photo-lightbox{position:fixed;inset:0;z-index:10000;background:#0f0c0cf0;display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;padding:max(24px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.photo-lightbox figure{margin:0;min-width:0;height:min(82vh,850px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.photo-lightbox figure img{display:block;max-width:100%;max-height:calc(100% - 54px);width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 20px 70px #00000059}.photo-lightbox figcaption{color:#fff;display:flex;justify-content:space-between;gap:30px;width:min(100%,1000px);font-size:12px;opacity:.92}.photo-lightbox figcaption strong{font-size:13px}.lightbox-close,.lightbox-nav{border:0;color:#fff;background:#ffffff1a;cursor:pointer;display:grid;place-items:center}.lightbox-close{position:absolute;top:max(18px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));width:46px;height:46px;border-radius:50%;font-size:28px}.lightbox-nav{width:50px;height:70px;border-radius:14px;font-size:38px;justify-self:center}.lightbox-nav:hover,.lightbox-close:hover{background:#fff3}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-collection header{grid-template-columns:1fr;gap:8px}.photo-lightbox{grid-template-columns:54px minmax(0,1fr) 54px}.lightbox-nav{width:42px;height:60px}}@media(max-width:620px){.photo-collections{padding-top:50px}.photo-collection{padding:14px;border-radius:19px}.photo-grid,.photo-grid.count-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.photo-grid.count-3 .photo-tile,.photo-tile{aspect-ratio:1/1}.photo-tile span{font-size:10.5px;right:9px;bottom:8px}.photo-tile b{display:none}.photo-lightbox{grid-template-columns:1fr;padding:72px 12px}.photo-lightbox figure{height:calc(100vh - 144px)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:58px;background:#00000073}.lightbox-nav.prev{right:10px}.lightbox-nav.next{left:10px}.photo-lightbox figcaption{padding:0 4px;flex-direction:column;gap:3px}.lightbox-close{width:44px;height:44px}}@media(max-width:1100px){.site-header nav{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:64px 0 44px}.hero-visual{min-height:430px}.highlight-strip,.space-grid,.service-grid{grid-template-columns:repeat(2,1fr)}.location-block{grid-template-columns:1fr}.location-block img{min-height:360px}.tenant-stats{grid-template-columns:repeat(2,1fr)}.admin-app{grid-template-columns:190px minmax(0,1fr)}.admin-sidebar{padding-inline:12px}.admin-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.site-header{height:66px;padding-inline:16px;gap:12px}.site-header .header-action{margin-inline-start:auto}.hero{padding-inline:18px}.hero-copy{padding:46px 0 32px}.hero h1{font-size:clamp(38px,12vw,58px)}.hero-copy>p{font-size:16px}.hero-actions>*{width:100%}.hero-visual{min-height:360px}.hero-visual>img{border-radius:22px}.hero-card{right:14px;bottom:14px;width:calc(100% - 28px)}.highlight-strip{grid-template-columns:1fr 1fr;padding-inline:18px}.highlight-strip div{padding:12px 8px}.section{padding:68px 18px}.section-heading{display:grid;gap:14px;margin-bottom:28px}.space-grid,.service-grid,.portal-grid,.two-cols{grid-template-columns:1fr}.space-image{height:230px}.booking-card{padding:20px 16px;border-radius:20px}.booking-head{align-items:start}.slots{grid-template-columns:repeat(4,1fr)}.booking-total{align-items:end;gap:14px}.location-block{margin-bottom:68px}.location-block>div{padding:44px 22px}.location-block img{min-height:280px}footer{display:grid;gap:10px;text-align:center}footer p{margin:0}.portal-page{padding:16px}.portal-login{margin:2vh auto;padding:22px}.portal-top{align-items:flex-start}.portal-top h1{font-size:30px}.tenant-stats{grid-template-columns:1fr 1fr}.card-panel{padding:20px;border-radius:18px}.visitor-rows>a{align-items:flex-start}.admin-app{display:block}.admin-sidebar{position:sticky;top:0;z-index:30;height:auto;padding:10px 12px;display:grid;grid-template-columns:1fr auto;gap:8px}.admin-sidebar .brand{grid-column:1}.admin-user{grid-column:2;grid-row:1;border:0;padding:0;text-align:left;max-width:150px}.admin-sidebar nav{grid-column:1 / -1;display:flex;gap:6px;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.admin-sidebar nav::-webkit-scrollbar{display:none}.admin-sidebar nav button{white-space:nowrap;background:#242123}.admin-logout{grid-column:1 / -1;margin:0;padding:7px 10px;text-align:center}.admin-topbar{height:58px;padding:0 16px;top:111px}.admin-module{padding:20px 14px 44px}.admin-module-head{align-items:flex-start;gap:12px}.admin-module-head h2{font-size:26px}.admin-toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}.admin-toolbar>*{width:100%}.admin-kpis{grid-template-columns:1fr 1fr}.admin-table-wrap{margin-inline:-14px;border-radius:0}.admin-table{min-width:720px}.admin-drawer{width:100%;max-width:none;border-radius:18px 18px 0 0;max-height:92vh;align-self:end}.admin-drawer-backdrop{align-items:end;padding:0}.form-grid,.permit-actions-grid,.settings-price-grid{grid-template-columns:1fr}.pass-row{grid-template-columns:1fr auto;gap:8px}.pass-row code,.pass-row button{grid-column:auto}.sale-line{grid-template-columns:1fr 90px 110px 34px}}@media(max-width:480px){.brand{font-size:13px}.brand-mark{width:27px;height:27px}.header-action{padding:8px 10px;font-size:11px}.hero-meta{display:grid;gap:6px}.highlight-strip{grid-template-columns:1fr}.highlight-strip div{border-left:0;border-bottom:1px solid var(--line)}.slots{grid-template-columns:repeat(3,1fr)}.booking-total{display:grid}.booking-total button{width:100%}.tenant-stats,.admin-kpis{grid-template-columns:1fr}.portal-top{display:grid}.portal-top button{justify-self:stretch}.admin-topbar a{display:none}.admin-module-head{display:grid}.admin-module-head>button,.admin-module-head>a{width:100%}.sale-line{grid-template-columns:1fr 72px}.sale-line>:nth-child(3){grid-column:1}.sale-line>:nth-child(4){grid-column:2;grid-row:2}}:root{--ps-bg:#F6F1E8;--ps-surface:#fffdfa;--ps-surface-2:#faf8f4;--ps-line:#ded7ce;--ps-line-2:#eee9e2;--ps-ink:#171516;--ps-ink-2:#4d4744;--ps-muted:#746c65;--ps-brand:#5B1626;--ps-brand-2:#3F0E1B;--ps-copper:#D89479;--ps-stone:#B8AFA2;--ps-brand-soft:#f6e9ec;--ps-ok:#27623a;--ps-ok-soft:#e5f2e8;--ps-warn:#8a5a12;--ps-warn-soft:#fbf0dc;--ps-danger:#8a2525;--ps-danger-soft:#fae8e8;--ps-info:#1f4f7a;--ps-info-soft:#e6eef6;--ps-neutral:#5c5652;--ps-neutral-soft:#eee9e3;--ps-r-sm:10px;--ps-r:14px;--ps-r-lg:20px;--ps-shadow:0 10px 30px rgba(45,31,24,.08);--ps-fast:.16s;--ps-ease:cubic-bezier(.2,.7,.2,1)}@media(prefers-reduced-motion:reduce){*{transition-duration:0s!important;animation-duration:0s!important}}*:focus-visible{outline:3px solid rgba(91,22,38,.35);outline-offset:2px;border-radius:6px}.admin-app button,.admin-app a{touch-action:manipulation}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--ps-r-sm);border:1px solid transparent;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--ps-fast) var(--ps-ease),border-color var(--ps-fast),opacity var(--ps-fast),transform var(--ps-fast)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--ps-brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--ps-brand-2)}.btn-secondary{background:var(--ps-surface);border-color:var(--ps-line);color:var(--ps-ink)}.btn-secondary:hover:not(:disabled){border-color:#bfb6ab;background:#fff}.btn-ghost{background:transparent;color:var(--ps-brand);padding-inline:10px}.btn-ghost:hover:not(:disabled){background:var(--ps-brand-soft)}.btn-danger{background:var(--ps-danger-soft);color:var(--ps-danger);border-color:transparent}.btn-danger:hover:not(:disabled){background:#f3d5d5}.btn-sm{min-height:36px;padding:0 12px;font-size:12px}.btn-block{width:100%}.btn .spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ps-spin .8s linear infinite}@keyframes ps-spin{to{transform:rotate(360deg)}}.btn-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn-row.end{justify-content:flex-end}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:600;line-height:1;white-space:nowrap;background:var(--ps-neutral-soft);color:var(--ps-neutral)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.75}.badge-ok{background:var(--ps-ok-soft);color:var(--ps-ok)}.badge-warn{background:var(--ps-warn-soft);color:var(--ps-warn)}.badge-danger{background:var(--ps-danger-soft);color:var(--ps-danger)}.badge-info{background:var(--ps-info-soft);color:var(--ps-info)}.badge-brand{background:var(--ps-brand-soft);color:var(--ps-brand)}.badge-muted{opacity:.8}.badge-lg{padding:7px 12px;font-size:12px}.card{background:var(--ps-surface);border:1px solid var(--ps-line);border-radius:var(--ps-r-lg);padding:20px}.card+.card,.card+.admin-table-wrap,.admin-table-wrap+.card{margin-top:16px}.card-head{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:14px}.card-head h3{margin:0;font-size:16px}.card-head p{margin:4px 0 0;color:var(--ps-muted);font-size:12px}.card.tone-warn{border-color:#ecd9b8;background:#fffaf2}.card.tone-danger{border-color:#efc9c9;background:#fff6f6}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}.stat{background:var(--ps-surface);border:1px solid var(--ps-line);border-radius:var(--ps-r);padding:14px 16px;display:grid;gap:6px;min-height:84px}.stat small{font-size:11px;color:var(--ps-muted)}.stat strong{font-size:20px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat em{font-style:normal;font-size:11px;color:var(--ps-muted)}.stat.tone-ok strong{color:var(--ps-ok)}.stat.tone-warn strong{color:var(--ps-warn)}.stat.tone-danger strong{color:var(--ps-danger)}.stat.tone-brand{background:var(--ps-brand);border-color:var(--ps-brand)}.stat.tone-brand *{color:#fff}.stat.clickable{cursor:pointer;transition:border-color var(--ps-fast)}.stat.clickable:hover{border-color:var(--ps-brand)}.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13px;margin:0}.kv dt{color:var(--ps-muted);font-size:12px;padding-top:1px}.kv dd{margin:0;font-weight:500;overflow-wrap:anywhere}.kv dd[dir=ltr]{text-align:right;font-variant-numeric:tabular-nums}.kv-2{grid-template-columns:auto 1fr auto 1fr}.divider{border:0;border-top:1px solid var(--ps-line-2);margin:14px 0}.empty{padding:40px 20px;text-align:center;background:var(--ps-surface);border:1px dashed var(--ps-line);border-radius:var(--ps-r-lg);color:var(--ps-muted);font-size:13px;display:grid;gap:10px;justify-items:center}.empty strong{color:var(--ps-ink);font-size:14px}.empty svg{width:34px;height:34px;color:#b8afa5}.skeleton{background:linear-gradient(90deg,#efeae3 25%,#f7f3ee,#efeae3 75%);background-size:200% 100%;animation:ps-shimmer 1.2s infinite;border-radius:8px;min-height:14px}@keyframes ps-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-rows{display:grid;gap:10px}.skeleton-rows .skeleton{height:52px;border-radius:12px}.banner{display:flex;align-items:start;gap:10px;padding:12px 14px;border-radius:var(--ps-r-sm);font-size:13px;line-height:1.6;margin-bottom:14px;border:1px solid transparent}.banner-error{background:var(--ps-danger-soft);color:var(--ps-danger);border-color:#f0cfcf}.banner-ok{background:var(--ps-ok-soft);color:var(--ps-ok)}.banner-warn{background:var(--ps-warn-soft);color:var(--ps-warn)}.banner-info{background:var(--ps-info-soft);color:var(--ps-info)}.banner .btn{margin-inline-start:auto}.toast-host{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:200;display:grid;gap:8px;width:min(420px,calc(100% - 24px));pointer-events:none}.toast{pointer-events:auto;background:var(--ps-ink);color:#fff;padding:12px 16px;border-radius:12px;font-size:13px;box-shadow:0 14px 40px #00000040;display:flex;gap:12px;align-items:center;animation:ps-up .22s var(--ps-ease)}.toast-ok{background:#1e4d2e}.toast-error{background:#7a1f1f}.toast button{margin-inline-start:auto;background:transparent;border:0;color:#fff;opacity:.7;cursor:pointer;font-size:18px;line-height:1;min-width:32px;min-height:32px}@keyframes ps-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.modal-scrim{position:fixed;inset:0;background:#1715168c;z-index:100;display:grid;place-items:center;padding:16px;animation:ps-fade .15s}@keyframes ps-fade{0%{opacity:0}to{opacity:1}}.modal{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--ps-surface);border-radius:var(--ps-r-lg);padding:22px;box-shadow:0 30px 80px #0000004d;animation:ps-up .2s var(--ps-ease)}.modal.wide{width:min(860px,100%)}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:14px;margin-bottom:16px}.modal-head h3{margin:2px 0 0;font-size:19px}.modal-head p{margin:4px 0 0;color:var(--ps-muted);font-size:12px}.modal-close{border:0;background:var(--ps-neutral-soft);width:40px;height:40px;border-radius:50%;font-size:22px;cursor:pointer;flex:none;line-height:1}.modal-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;position:sticky;bottom:-22px;background:var(--ps-surface);padding:12px 0 0;border-top:1px solid var(--ps-line-2)}.drawer{position:fixed;inset:0 auto 0 0;width:min(620px,100%);background:var(--ps-surface);z-index:110;overflow:auto;padding:22px;box-shadow:20px 0 60px #0000002e;animation:ps-slide .22s var(--ps-ease)}@keyframes ps-slide{0%{transform:translate(-30px);opacity:0}to{transform:none;opacity:1}}.field{display:grid;gap:6px;font-size:12px;font-weight:600}.field>span{display:flex;justify-content:space-between;gap:8px}.field small{font-weight:400;color:var(--ps-muted)}.field input,.field select,.field textarea,.input{width:100%;min-height:44px;border:1px solid var(--ps-line);border-radius:var(--ps-r-sm);background:#fff;padding:10px 12px;outline:none;font:inherit;font-size:14px;transition:border-color var(--ps-fast)}.field input:focus,.field select:focus,.field textarea:focus,.input:focus{border-color:var(--ps-brand);box-shadow:0 0 0 3px #5b162614}.field.invalid input{border-color:var(--ps-danger)}.field .err{color:var(--ps-danger);font-weight:500}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;min-height:44px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--ps-brand)}.help{font-size:12px;color:var(--ps-muted);line-height:1.7;margin:4px 0 0}.summary-box{background:var(--ps-surface-2);border:1px solid var(--ps-line);border-radius:var(--ps-r);padding:14px 16px;font-size:13px;line-height:1.9}.summary-box strong{display:block;font-size:12px;color:var(--ps-brand);margin-bottom:4px}.fieldset{border:1px solid var(--ps-line);border-radius:var(--ps-r);padding:14px 16px;margin:0 0 12px}.fieldset legend{padding:0 8px;font-size:12px;font-weight:700;color:var(--ps-brand)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.toolbar .input{flex:1 1 220px;min-width:0}.toolbar select.input{flex:0 1 180px}.toolbar .count{font-size:12px;color:var(--ps-muted);margin-inline-start:auto}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.chip{border:1px solid var(--ps-line);background:var(--ps-surface);border-radius:999px;padding:8px 12px;font-size:12px;cursor:pointer;min-height:36px}.chip.active{background:var(--ps-ink);color:#fff;border-color:var(--ps-ink)}.admin-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-table th.sortable:after{content:" ↕";opacity:.4}.admin-table th.sorted-asc:after{content:" ↑";opacity:1}.admin-table th.sorted-desc:after{content:" ↓";opacity:1}.admin-table tr.clickable{cursor:pointer}.admin-table tr.clickable:hover td{background:#fcfaf6}.admin-table td .btn-row{flex-wrap:nowrap}.pager{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;font-size:12px;color:var(--ps-muted)}.sticky-actions{position:sticky;bottom:0;background:linear-gradient(to top,var(--ps-bg) 70%,transparent);padding:14px 0 max(4px,env(safe-area-inset-bottom));display:flex;gap:8px;justify-content:flex-end;z-index:5}.dash-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.dash-list{display:grid;gap:0}.dash-item{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 0;border-top:1px solid var(--ps-line-2);font-size:13px;align-items:center}.dash-item:first-child{border-top:0}.dash-item strong{font-weight:600}.dash-item small{grid-column:1;color:var(--ps-muted);font-size:11px}.dash-item .badge{grid-row:1/3}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.quick-actions button{min-height:64px;border:1px solid var(--ps-line);background:var(--ps-surface);border-radius:var(--ps-r);cursor:pointer;font:inherit;font-size:13px;font-weight:600;display:grid;gap:4px;padding:12px;text-align:right;transition:border-color var(--ps-fast)}.quick-actions button:hover{border-color:var(--ps-brand)}.quick-actions button small{font-weight:400;color:var(--ps-muted);font-size:11px}.cal-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.cal-head .date-nav{display:flex;align-items:center;gap:4px;margin-inline-start:auto}.cal-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--ps-muted);margin-bottom:10px}.cal-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-2px;margin-inline-end:5px}.cal{display:grid;gap:8px}.cal-row{display:grid;grid-template-columns:110px 1fr;gap:8px;align-items:center}.cal-row>strong{font-size:12px}.cal-hours{display:grid;grid-template-columns:repeat(15,1fr);gap:3px}.cal-cell{height:38px;border-radius:7px;border:1px solid var(--ps-line-2);background:var(--ps-surface);font-size:10px;display:grid;place-items:center;cursor:default;color:var(--ps-muted);padding:0;font:inherit}.cal-cell.booked{background:var(--ps-brand);border-color:var(--ps-brand);color:#fff;cursor:pointer}.cal-cell.hold{background:var(--ps-warn-soft);border-color:#e8cf9e;color:var(--ps-warn);cursor:pointer}.cal-cell.retry{background:var(--ps-danger-soft);border-color:#efc9c9;color:var(--ps-danger);cursor:pointer}.cal-cell.past{opacity:.35}.cal-week{display:grid;grid-template-columns:110px repeat(7,1fr);gap:6px}.cal-week>div{display:grid;gap:4px}.cal-week .day{font-size:11px;color:var(--ps-muted);text-align:center;padding:4px 0}.cal-day-cell{min-height:56px;border-radius:9px;border:1px solid var(--ps-line-2);background:var(--ps-surface);display:grid;place-items:center;gap:2px;font-size:11px;padding:6px;text-align:center;cursor:pointer}.cal-day-cell.free{color:var(--ps-ok)}.cal-day-cell.busy{background:var(--ps-brand-soft);color:var(--ps-brand);border-color:#e6cbd1}.perm-matrix{width:100%;border-collapse:collapse;font-size:12px}.perm-matrix th,.perm-matrix td{padding:9px 8px;border-bottom:1px solid var(--ps-line-2);text-align:right}.perm-matrix th{font-size:11px;color:var(--ps-muted);font-weight:500;background:var(--ps-surface-2);position:sticky;top:0}.perm-matrix td.center,.perm-matrix th.center{text-align:center}.perm-matrix tr.group td{background:var(--ps-surface-2);font-weight:700;font-size:11px;color:var(--ps-brand)}.perm-matrix input{width:22px;height:22px;accent-color:var(--ps-brand)}.perm-sensitive{color:var(--ps-danger)}.timeline{display:grid;gap:0;margin:0;padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:8px 0;font-size:12px;position:relative}.timeline li:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--ps-line);margin-top:4px}.timeline li.done:before{background:var(--ps-ok)}.timeline li.now:before{background:var(--ps-brand);box-shadow:0 0 0 4px var(--ps-brand-soft)}.timeline small{display:block;color:var(--ps-muted)}.countdown{font-variant-numeric:tabular-nums;font-weight:600}@media(max-width:820px){.grid-2,.grid-3,.dash-grid,.field-row{grid-template-columns:1fr}.kv-2{grid-template-columns:auto 1fr}.modal{padding:18px;padding-bottom:max(18px,env(safe-area-inset-bottom));border-radius:16px;max-height:calc(100dvh - 24px)}.modal-scrim{padding:12px;align-items:end}.drawer{width:100%;padding:18px;padding-bottom:max(18px,env(safe-area-inset-bottom))}.cal-row{grid-template-columns:1fr}.cal-hours{grid-template-columns:repeat(8,1fr)}.cal-week{grid-template-columns:repeat(7,1fr)}.cal-week .label-col{display:none}.admin-table-wrap.cards{overflow:visible;background:transparent;border:0}.admin-table-wrap.cards table{min-width:0;display:block}.admin-table-wrap.cards thead{display:none}.admin-table-wrap.cards tbody{display:grid;gap:10px}.admin-table-wrap.cards tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;background:var(--ps-surface);border:1px solid var(--ps-line);border-radius:14px;padding:12px 14px}.admin-table-wrap.cards td{display:grid;gap:2px;padding:4px 0;border:0;font-size:13px}.admin-table-wrap.cards td:before{content:attr(data-label);font-size:10px;color:var(--ps-muted)}.admin-table-wrap.cards td.span,.admin-table-wrap.cards td.action-cell{grid-column:1/-1}.admin-table-wrap.cards td.action-cell:before{display:none}.admin-table-wrap.cards td.action-cell .btn-row{flex-wrap:wrap}.admin-table-wrap.cards td>strong{font-size:14px}.toolbar .count{width:100%;margin:0}}@media(max-width:640px){.admin-module-head{flex-direction:column;align-items:stretch;gap:10px}.admin-module-head h2{font-size:22px}.stat-grid{grid-template-columns:1fr 1fr}.stat strong{font-size:17px}.quick-actions{grid-template-columns:1fr 1fr}.admin-sidebar{position:sticky;top:0;z-index:20;padding:10px 12px;gap:8px}.admin-sidebar nav{gap:6px;padding-bottom:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-sidebar nav::-webkit-scrollbar{display:none}.admin-sidebar nav button{min-height:40px;padding:8px 12px;font-size:13px;border:1px solid #343032}.admin-sidebar nav button.active{border-color:#fff}.admin-topbar{position:static;height:auto;padding:10px 14px}.admin-module{padding:14px 12px 90px}.btn{min-height:44px}.btn-row .btn{flex:1 1 auto}.modal-foot{flex-wrap:wrap}.modal-foot .btn{flex:1 1 45%}.toolbar .input{flex:1 1 100%}.perm-matrix th{min-width:80px}}.admin-app{font-size:14px;line-height:1.6}.admin-table th{font-size:12px}.admin-table td{font-size:13px}.admin-table td>small{font-size:12px}.admin-table code,.admin-topbar span,.admin-kicker,.admin-user span{font-size:12px}.admin-module-head p{font-size:13px}.stat small,.dash-item small,.kv dt,.help,.tl-body small{font-size:12px}.admin-module-head h2{font-size:26px}.card-head h3{font-size:16px}.modal-head h3{font-size:20px}@media(max-width:820px){.field input,.field select,.field textarea,.input,.search-input input{font-size:16px}}.progress{display:grid;gap:6px}.progress-label{display:flex;justify-content:space-between;font-size:12px;color:var(--ps-muted)}.progress-label strong{color:var(--ps-ink);font-variant-numeric:tabular-nums}.progress-track{height:8px;background:var(--ps-line-2);border-radius:99px;overflow:hidden}.progress-bar{height:100%;border-radius:99px;transition:width .3s var(--ps-ease)}.progress-bar.tone-ok{background:var(--ps-ok)}.progress-bar.tone-warn{background:#c98a1d}.progress-bar.tone-danger{background:var(--ps-danger)}.progress small{color:var(--ps-muted)}.tl{list-style:none;margin:0;padding:0;display:grid}.tl li{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:10px 0;position:relative}.tl li+li:before{content:"";position:absolute;right:13px;top:-10px;height:22px;border-right:2px solid var(--ps-line-2)}.tl-dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--ps-neutral-soft);color:var(--ps-neutral)}.tl-ok .tl-dot{background:var(--ps-ok-soft);color:var(--ps-ok)}.tl-warn .tl-dot{background:var(--ps-warn-soft);color:var(--ps-warn)}.tl-danger .tl-dot{background:var(--ps-danger-soft);color:var(--ps-danger)}.tl-info .tl-dot{background:var(--ps-info-soft);color:var(--ps-info)}.tl-brand .tl-dot{background:var(--ps-brand-soft);color:var(--ps-brand)}.tl-body{display:grid;gap:2px;font-size:13px}.tl-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.tl-head b{font-variant-numeric:tabular-nums;font-weight:600}.tl-head b.neg{color:var(--ps-danger)}.tl li.muted{opacity:.55}.tl li.muted .tl-head strong{text-decoration:line-through}.bottom-nav{display:none}@media(max-width:820px){.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--ps-surface);border-top:1px solid var(--ps-line);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.bottom-nav button{border:0;background:transparent;display:grid;justify-items:center;gap:3px;padding:6px 2px;font:inherit;font-size:11px;color:var(--ps-muted);min-height:52px;border-radius:10px}.bottom-nav button.active{color:var(--ps-brand);background:var(--ps-brand-soft)}.admin-sidebar{display:none}.admin-app{display:block}.admin-topbar{position:sticky;top:0;z-index:20;height:56px;padding:0 14px;background:var(--ps-surface);border-bottom:1px solid var(--ps-line)}.admin-module{padding:14px 12px calc(96px + env(safe-area-inset-bottom))}.modal-scrim{align-items:end;padding:0}.modal{width:100%;max-height:92dvh;border-radius:20px 20px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}.modal-foot{position:sticky;bottom:calc(-16px - env(safe-area-inset-bottom));padding-bottom:calc(8px + env(safe-area-inset-bottom));margin-inline:-16px;padding-inline:16px}.search-modal{border-radius:16px;margin:0 12px;width:auto}}.topbar-actions{display:flex;gap:8px;align-items:center}.topbar-search{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--ps-line);border-radius:10px;background:var(--ps-surface);color:var(--ps-muted);font-size:13px;cursor:pointer}.topbar-search kbd{font:inherit;font-size:11px;border:1px solid var(--ps-line);border-radius:5px;padding:1px 6px;color:var(--ps-muted)}.mobile-more{display:grid;gap:6px}.mobile-more button{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 14px;border:1px solid var(--ps-line);border-radius:12px;background:var(--ps-surface);font:inherit;font-size:14px}.search-modal{padding:12px}.search-input{display:flex;align-items:center;gap:10px;padding:4px 6px;border-bottom:1px solid var(--ps-line);margin-bottom:8px;color:var(--ps-muted)}.search-input input{flex:1;border:0;outline:0;font:inherit;font-size:16px;min-height:44px;background:transparent}.search-group{margin-top:8px}.search-group>small{display:block;padding:6px 8px 2px;font-size:12px;color:var(--ps-brand);font-weight:700}.search-row{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;border:0;background:transparent;padding:10px 8px;border-radius:10px;cursor:pointer;text-align:right;font:inherit}.search-row:hover,.search-row:focus-visible{background:var(--ps-surface-2)}.search-row strong{display:block;font-size:14px}.search-row small{color:var(--ps-muted);font-size:12px}.cal-week{grid-template-columns:repeat(7,1fr)}@media(max-width:820px){.cal-hours{display:flex;flex-wrap:wrap;gap:6px}.cal-cell{height:36px;min-width:64px;flex:1 1 auto;font-size:12px;border-radius:8px}.cal-row{background:var(--ps-surface);border:1px solid var(--ps-line);border-radius:14px;padding:12px}.cal-row>strong{font-size:14px;margin-bottom:8px;display:block}.cal-day-cell{min-height:48px;font-size:11px;padding:4px}}.dashboard-hours .cal-cell{min-width:0}.cal-cell.free-click{cursor:pointer}.cal-cell.free-click:hover{border-color:var(--ps-brand);color:var(--ps-brand)}.iframe-preview{width:100%;height:min(70vh,720px);border:1px solid var(--ps-line);border-radius:12px;background:#fff}@media(max-width:820px){.modal{max-height:calc(100dvh - 12px);overscroll-behavior:contain}.modal-scrim{padding-bottom:0}.drawer{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.drawer .modal-foot{position:sticky;bottom:calc(-18px - env(safe-area-inset-bottom));background:var(--ps-surface);padding-bottom:calc(10px + env(safe-area-inset-bottom));margin-inline:-18px;padding-inline:18px}.modal-foot .btn,.drawer .modal-foot .btn{flex:1 1 40%}.search-modal{margin-top:8px}.cal-head .date-nav{width:100%;margin:0;justify-content:space-between}.cal-head .date-nav .input{flex:1}.chips{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none}.stat-grid{grid-template-columns:1fr 1fr}.kv{grid-template-columns:1fr}.kv dt{margin-top:6px}.bottom-nav button{font-size:11px}.toolbar select.input{flex:1 1 45%}.quick-actions{grid-template-columns:1fr 1fr}}@media(max-width:380px){.stat strong{font-size:16px}.bottom-nav button span{font-size:10px}.admin-module-head h2{font-size:20px}}.bars{display:grid;gap:8px}.bar-row{display:grid;grid-template-columns:120px 1fr auto;gap:10px;align-items:center;font-size:13px}.bar-label{color:var(--ps-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:12px;background:var(--ps-line-2);border-radius:99px;overflow:hidden}.bar-track i{display:block;height:100%;background:var(--ps-brand);border-radius:99px;transition:width .3s var(--ps-ease)}.bar-row b{font-variant-numeric:tabular-nums;min-width:40px;text-align:left}.bar-row small{grid-column:2;color:var(--ps-muted);font-size:11px;margin-top:-4px}.trend{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:3px;height:140px;align-items:end}.trend-col{display:grid;grid-template-rows:1fr auto;height:100%;align-items:end;gap:4px}.trend-col i{display:block;background:var(--ps-brand);opacity:.85;border-radius:4px 4px 0 0;min-height:2px}.trend-col small{font-size:9px;color:var(--ps-muted);text-align:center}@media(max-width:820px){.bar-row{grid-template-columns:90px 1fr auto}.trend{height:100px}.trend-col:nth-child(2n) small{visibility:hidden}}.nav-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--ps-danger);color:#fff;font-size:11px;font-weight:700;margin-inline-start:8px;vertical-align:middle}.bn-icon{position:relative;display:inline-grid}.bn-icon .nav-badge{position:absolute;top:-6px;right:-10px;margin:0}.dash-item.action-item{grid-template-columns:1fr auto;align-items:center}.dash-item.action-item .btn-row{flex-wrap:nowrap}@media(max-width:820px){.dash-item.action-item{grid-template-columns:1fr}.dash-item.action-item .btn-row{grid-row:auto;grid-column:1;margin-top:6px}}.print-sheet{display:none}@media print{body *{visibility:hidden}.print-sheet,.print-sheet *{visibility:visible}.print-sheet{display:block;position:absolute;inset:0;padding:12mm;background:#fff;color:#000;font-size:12px}.print-sheet h1{font-size:18px;margin:0 0 10px}.print-sheet table{width:100%;border-collapse:collapse}.print-sheet th,.print-sheet td{border:1px solid #999;padding:6px 8px;text-align:right}}.skip-link{position:absolute;top:-60px;right:12px;background:var(--ps-ink);color:#fff;padding:10px 14px;border-radius:8px;z-index:999}.skip-link:focus{top:12px}:root{--ps-sp-1:4px;--ps-sp-2:8px;--ps-sp-3:12px;--ps-sp-4:16px;--ps-sp-5:20px;--ps-sp-6:28px;--ps-row:44px}.admin-app .admin-card,.admin-app .settings-card{background:var(--ps-surface);border:1px solid var(--ps-line);border-radius:var(--ps-r-lg);padding:var(--ps-sp-5);box-shadow:none}.admin-app .admin-card+.admin-card{margin-top:var(--ps-sp-4)}.admin-app .admin-card h3,.admin-app .section-row h3{font-size:16px;margin:0 0 var(--ps-sp-3)}.admin-app .admin-primary,.admin-app .admin-secondary{min-height:44px;padding:0 16px;border-radius:var(--ps-r-sm);font:inherit;font-size:13px;font-weight:600;border:1px solid transparent;transition:background var(--ps-fast)}.admin-app .admin-primary{background:var(--ps-brand);color:#fff}.admin-app .admin-primary:hover:not(:disabled){background:var(--ps-brand-2)}.admin-app .admin-primary:disabled{opacity:.5;cursor:not-allowed}.admin-app .admin-secondary{background:var(--ps-surface);border-color:var(--ps-line);color:var(--ps-ink)}.admin-app .admin-primary.compact{min-height:36px;font-size:12px}.admin-app .text-button{min-height:36px;padding:0 8px;border-radius:8px;font-size:13px}.admin-app .text-button:hover{background:var(--ps-brand-soft)}.admin-app .danger-text{color:var(--ps-danger);background:none;border:0;min-height:36px;padding:0 8px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px}.admin-app .status-pill{font-size:11px;font-weight:600;padding:5px 10px;gap:6px;align-items:center}.admin-app .status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.75}.admin-app .admin-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.admin-app .admin-tabs button{border:1px solid var(--ps-line);background:var(--ps-surface);border-radius:999px;padding:8px 12px;font:inherit;font-size:12px;min-height:36px;cursor:pointer}.admin-app .admin-tabs button.active{background:var(--ps-ink);color:#fff;border-color:var(--ps-ink)}.admin-app .admin-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.admin-app .admin-toolbar input,.admin-app .admin-toolbar select,.admin-app .status-select{min-height:44px;border-radius:var(--ps-r-sm);border:1px solid var(--ps-line);font:inherit;font-size:14px}.admin-app .form-grid label,.admin-app .settings-inline label{font-size:12px;font-weight:600;gap:6px}.admin-app .form-grid input,.admin-app .form-grid select,.admin-app .form-grid textarea,.admin-app .settings-inline input,.admin-app .settings-inline select{min-height:44px;border:1px solid var(--ps-line);border-radius:var(--ps-r-sm);padding:10px 12px;font:inherit;font-size:14px;background:#fff}.admin-app .form-grid input:focus,.admin-app .settings-inline input:focus{border-color:var(--ps-brand);box-shadow:0 0 0 3px #5b162614;outline:none}.admin-app .notice,.admin-app .admin-alert{font-size:13px;line-height:1.6;border-radius:var(--ps-r-sm);padding:12px 14px}.admin-app .admin-empty{padding:40px 20px;border-radius:var(--ps-r-lg);font-size:13px}.admin-app .admin-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}.admin-app .admin-kpis>div{background:var(--ps-surface);border:1px solid var(--ps-line);border-radius:var(--ps-r);padding:14px 16px}.admin-app .admin-drawer{background:var(--ps-surface);border-radius:0;padding:22px}.field .req{color:var(--ps-danger);margin-inline-start:3px;font-weight:700}.admin-table th{text-align:right;font-size:12px;font-weight:600;color:var(--ps-muted);background:var(--ps-surface-2);padding:10px 12px;border-bottom:1px solid var(--ps-line);white-space:nowrap}.admin-table td{padding:8px 12px;border-bottom:1px solid var(--ps-line-2);vertical-align:middle;min-height:var(--ps-row);font-size:13px}.admin-table tr:last-child td{border-bottom:0}.admin-table td>strong{display:block;font-weight:600}.admin-table td>small{display:block;color:var(--ps-muted);font-size:12px}.admin-table td>code{font-size:11px;color:var(--ps-muted)}.admin-table th.num,.admin-table td.num,.admin-table td[dir=ltr]{text-align:left;font-variant-numeric:tabular-nums;direction:ltr}.admin-table th:focus-visible{outline:3px solid rgba(91,22,38,.35);outline-offset:-3px}.admin-table tr.clickable:focus-visible{outline:3px solid rgba(91,22,38,.35);outline-offset:-3px}@media(min-width:821px){.admin-table{min-width:0}.admin-table-wrap{overflow:auto;max-height:70vh;border:1px solid var(--ps-line);border-radius:var(--ps-r);background:var(--ps-surface)}.admin-table thead th{position:sticky;top:0;z-index:2}}.badge-done{background:#e7e4ef;color:#3f3a6b}.badge-action{background:var(--ps-brand-soft);color:var(--ps-brand)}.admin-sidebar nav{display:grid;gap:14px}.nav-group{display:grid;gap:2px}.nav-group>small{font-size:11px;color:#9b938c;padding:0 12px 4px;letter-spacing:.02em}.admin-sidebar nav button{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:right;border:0;background:transparent;color:#d9d3cc;padding:10px 12px;border-radius:10px;font:inherit;font-size:13.5px;min-height:40px;cursor:pointer}.admin-sidebar nav button:hover{background:#2c2729;color:#fff}.admin-sidebar nav button.active{background:var(--ps-brand);color:#fff;font-weight:600}.admin-sidebar nav button:focus-visible{outline:3px solid rgba(255,255,255,.45)}.offline-bar,.update-bar{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13px;position:sticky;top:0;z-index:30}.offline-bar{background:#fbf0dc;color:var(--ps-warn);border-bottom:1px solid #ecd9b8}.update-bar{background:var(--ps-info-soft);color:var(--ps-info);border-bottom:1px solid #cfdcea}.update-bar .btn{margin-inline-start:auto}@media(display-mode:standalone){.admin-topbar{padding-top:env(safe-area-inset-top)}.offline-bar,.update-bar{padding-top:calc(10px + env(safe-area-inset-top))}.admin-sidebar{padding-top:calc(25px + env(safe-area-inset-top))}.site-header{padding-top:calc(12px + env(safe-area-inset-top))}.modal{max-height:calc(100dvh - env(safe-area-inset-top) - 12px)}}.admin-content,.admin-module,.card,.stat,.dash-item,.modal,.drawer{min-width:0}.admin-app{overflow-x:clip}@media(max-width:820px){.admin-sidebar nav{display:flex;gap:6px}.nav-group{display:contents}.nav-group>small{display:none}.admin-sidebar nav button{width:auto;min-height:40px;padding:8px 12px;background:#242123;border:1px solid #343032;justify-content:center}.admin-table-wrap.cards .admin-table td.num,.admin-table-wrap.cards .admin-table td[dir=ltr]{text-align:right}}.admin-sidebar .brand img.brand-mark{width:30px;height:30px;border-radius:8px}.admin-kicker{color:var(--ps-copper)}.bottom-nav button span,.cal-cell{font-size:11px}.trend-col small{font-size:10px}.badge-glyph{font-style:normal;font-weight:800;margin-inline-end:5px;font-size:11px}.copyable{border:0;background:transparent;padding:2px 4px;border-radius:6px;display:inline-flex;gap:6px;align-items:center;cursor:copy;font:inherit;color:inherit}.copyable code{font-size:12px;color:var(--ps-muted)}.copyable span{font-size:12px;color:var(--ps-stone,#B8AFA2)}.copyable:hover{background:var(--ps-brand-soft)}.copyable.copied span{color:var(--ps-ok)}.active-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}.active-filters .chip{font-size:12px;min-height:32px;padding:4px 10px;background:var(--ps-brand-soft);border-color:transparent;color:var(--ps-brand)}.active-filters .chip.ghost{background:transparent;color:var(--ps-muted)}.bulk-bar{position:sticky;bottom:calc(env(safe-area-inset-bottom) + 12px);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--ps-ink);color:#fff;border-radius:14px;padding:10px 14px;margin:0 0 12px;box-shadow:0 14px 34px #0000004d}.bulk-bar .btn{background:#ffffff1f;color:#fff;border-color:transparent}.bulk-bar .btn-ghost{background:transparent}.pick-cell{width:36px}.pick-cell input{width:18px;height:18px;accent-color:var(--ps-brand)}.admin-table tr.row-open td{background:var(--ps-brand-soft);box-shadow:inset 3px 0 0 var(--ps-brand)}@media(min-width:1100px){.drawer{width:min(480px,45vw)}}.toast-action{background:transparent;border:1px solid rgba(255,255,255,.4);color:inherit;border-radius:8px;padding:4px 10px;margin-inline-start:10px;font:inherit;font-size:12px;cursor:pointer}.density-compact{--ps-row:36px}.density-compact .admin-table td{padding:5px 10px;font-size:12.5px}.density-compact .admin-table th{padding:7px 10px}.density-compact .card{padding:14px}.density-compact .stat{padding:10px 12px}.density-compact .dash-item{padding:8px 0}.profile-tabs{position:sticky;top:0;z-index:3;display:flex;gap:6px;background:var(--ps-surface);padding:6px 0 10px;margin:-6px 0 10px;border-bottom:1px solid var(--ps-line)}.profile-tabs button{border:1px solid var(--ps-line);background:var(--ps-surface);border-radius:999px;padding:8px 14px;font:inherit;font-size:13px;min-height:36px;cursor:pointer}.profile-tabs button.active{background:var(--ps-ink);color:#fff;border-color:var(--ps-ink)}.admin-app.kiosk .admin-sidebar,.admin-app.kiosk .admin-topbar,.admin-app.kiosk .bottom-nav,.admin-app.kiosk .admin-module-head .btn-row,.admin-app.kiosk .skip-link{display:none!important}.admin-app.kiosk{display:block;font-size:17px}.admin-app.kiosk .admin-content{padding:24px 28px}.admin-app.kiosk .cal-cell{font-size:14px;min-height:44px}.admin-app.kiosk .admin-module-head h2{font-size:28px}
