@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter","Inter Fallback"}
@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.88bd3266.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.6a9181d3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.607a00cf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.88bd3266.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.6a9181d3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.607a00cf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/bfd813093b8ca1bb-s.p.88bd3266.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/acc5f86302586f33-s.6a9181d3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/f304c3cf3765fb5f-s.607a00cf.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai Fallback;src:local(Arial);ascent-override:99.79%;descent-override:42.32%;line-gap-override:0.0%;size-adjust:106.33%}.noto_sans_thai_df01719d-module__Hu3Boq__className{font-family:Noto Sans Thai,Noto Sans Thai Fallback;font-style:normal}.noto_sans_thai_df01719d-module__Hu3Boq__variable{--font-noto-thai:"Noto Sans Thai","Noto Sans Thai Fallback"}
:root{--bg:#f5efe4;--surface:#fffaf2e0;--surface-strong:#fffaf2;--text:#1f1a17;--muted:#6f665c;--accent:#bf5b2c;--accent-dark:#8c3f1c;--line:#1f1a171f;--shadow:0 20px 50px #59341d1f;--max-width:1120px;font-family:var(--font-inter),var(--font-noto-thai),system-ui,sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--fw-normal:400;--fw-medium:500;--fw-semi:600;--fw-bold:700;--lh-tight:1.15;--lh-normal:1.6;--admin-surface:#fff;--admin-border:#1f1a171a;--status-pending-bg:#f59e0b1f;--status-pending-fg:#92400e;--status-confirmed-bg:#22c55e1f;--status-confirmed-fg:#166534;--status-rejected-bg:#ef44441f;--status-rejected-fg:#991b1b;--status-reschedule-bg:#3b82f61f;--status-reschedule-fg:#1e40af}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:radial-gradient(circle at 0 0,#bf5b2c29,#0000 30%),radial-gradient(circle at 100% 0,#2d5b7a26,#0000 32%),linear-gradient(#f7f0e6 0%,#f3eadb 100%);min-height:100vh;margin:0}.app-shell{min-height:100vh}.app-shell.has-public-header{padding-top:92px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.page-shell{width:min(100% - 2rem,var(--max-width));margin:0 auto}.site-header{z-index:20;padding:1rem 0 0;position:fixed;inset:0 0 auto}.site-nav{border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffaf2d1;border-radius:24px;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;display:flex}.site-brand{align-items:center;gap:.8rem;display:inline-flex}.site-brand strong,.site-brand small{display:block}.site-brand small{color:var(--muted)}.site-brand-mark{background:linear-gradient(135deg,var(--accent),#d48744);color:#fff;border-radius:14px;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.site-menu{align-items:center;gap:.5rem;display:flex}.site-link,.menu-toggle{min-height:42px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.65rem 1rem;display:inline-flex}.site-link.is-active{color:#fff;background:var(--accent)}.menu-toggle{cursor:pointer;border-color:var(--line);display:none}.hero{padding:3rem 0 2rem}.hero-card,.section-card,.booking-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:28px}.hero-card{gap:2rem;padding:2rem;display:grid}.eyebrow{color:var(--accent-dark);letter-spacing:.04em;text-transform:uppercase;background:#bf5b2c1f;border-radius:999px;padding:.35rem .7rem;font-size:.85rem;display:inline-flex}.hero h1,.booking-card h1{max-width:10ch;margin:1rem 0;font-size:clamp(2.5rem,6vw,5rem);line-height:.94}.admin-dashboard h1{max-width:none;font-size:clamp(1.5rem,3vw,2rem);font-weight:var(--fw-semi);line-height:var(--lh-tight);letter-spacing:-.01em;text-wrap:balance}.hero p,.section-card p,.muted{color:var(--muted);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.button-primary,.button-secondary{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:.8rem 1.2rem;transition:transform .16s,background .16s;display:inline-flex}.button-primary{background:var(--accent);color:#fff}.button-secondary{border-color:var(--line);background:0 0}.button-primary:hover,.button-secondary:hover{transform:translateY(-1px)}.hero-grid,.feature-grid,.portfolio-grid,.form-grid,.summary-grid{gap:1rem;display:grid}.hero-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.hero-stat,.feature-item,.portfolio-item,.summary-item{border:1px solid var(--line);background:#fff9;border-radius:20px;padding:1.1rem}.feature-item strong,.portfolio-item strong,.hero-stat strong,.summary-note strong{margin-bottom:.45rem;display:block}.section{padding:1rem 0 2rem}.section-card{padding:1.5rem}.feature-grid,.portfolio-grid,.summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.booking-page{padding:2rem 0 3rem}.booking-card{padding:1.5rem}.admin-dashboard{overflow:hidden}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.field{gap:.45rem;display:grid}.field label{font-size:.92rem;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--surface-strong);border-radius:14px;width:100%;padding:.8rem .95rem}.field textarea{resize:vertical;min-height:110px}.field-hint{color:var(--muted);font-size:.85rem}.form-inline-note{color:var(--muted);margin:.25rem 0 0;font-size:.9rem;line-height:1.5}.form-inline-note code{color:var(--accent-dark);background:#bf5b2c1a;border-radius:999px;align-items:center;margin-left:.35rem;padding:.15rem .45rem;font-size:.85em;display:inline-flex}.field.checkbox{grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding-top:1.8rem}.booking-calendar-section{gap:.75rem;margin-top:1rem;display:grid}.booking-tax-section{border:1px solid var(--line);background:#ffffff73;border-radius:18px;gap:1rem;margin-top:1rem;padding:1rem;display:grid}.booking-tax-toggle{cursor:pointer;grid-template-columns:auto 1fr;align-items:start;gap:.85rem;display:grid}.booking-tax-toggle input{width:20px;height:20px;margin-top:.2rem}.booking-tax-toggle strong{margin-bottom:.25rem;display:block}.booking-tax-toggle p{margin:0}.booking-tax-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.booking-calendar{border:1px solid var(--line);background:#ffffff8c;border-radius:18px;gap:.75rem;margin-top:.35rem;padding:.9rem;display:grid}.booking-calendar-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.booking-calendar-header strong{text-align:center}.booking-calendar-weekdays,.booking-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;display:grid}.booking-calendar-weekday{text-align:center;color:var(--muted);font-size:.85rem;font-weight:700}.booking-calendar-cell{border:1px solid var(--line);min-height:68px;color:var(--text);text-align:center;background:#ffffffd1;border-radius:16px;gap:.2rem;padding:.55rem .35rem;display:grid}.booking-calendar-cell small{color:var(--muted)}.booking-calendar-cell.is-selected{background:#bf5b2c24;border-color:#bf5b2c66}.booking-calendar-cell.is-in-range{background:#bf5b2c14;border-color:#bf5b2c33}.booking-calendar-cell.is-disabled{opacity:.5;cursor:not-allowed}.booking-calendar-cell.is-empty{background:0 0;border:1px dashed #1f1a170f;border-radius:16px;min-height:68px}.booking-calendar-day{font-size:1rem;font-weight:700}.booking-layout{gap:1.25rem;display:grid}.summary{border:1px solid var(--line);background:#ffffffb3;border-radius:22px;padding:1rem}.summary-total{margin:.5rem 0 0;font-size:2rem}.summary-note{border:1px solid var(--line);background:#ffffff8c;border-radius:18px;margin-top:1rem;padding:1rem}.date-chip-grid{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.date-chip{border:1px solid var(--line);background:#fffc;border-radius:999px;align-items:center;min-height:32px;padding:.35rem .7rem;font-size:.88rem;display:inline-flex}.inline-link{color:var(--accent-dark);text-decoration:underline}.form-actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.pricing-selector-section{gap:1rem;margin-top:2rem;display:grid}.pricing-selector-header h2{margin-bottom:.35rem}.pricing-selector-header p{margin:0}.pricing-selector-group,.pricing-create-panel,.pricing-group-block{border:1px solid var(--line);background:#ffffff8c;border-radius:22px;padding:1rem}.pricing-selector-group-header{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.9rem;display:flex}.pricing-selector-group-header small{color:var(--muted)}.pricing-selector-list,.pricing-group-stack,.summary-selection-list{gap:.75rem;display:grid}.pricing-selector-item{border:1px solid var(--line);cursor:pointer;background:#ffffffb8;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:.9rem 1rem;display:grid}.pricing-selector-item.is-selected{background:#bf5b2c1a;border-color:#bf5b2c66}.pricing-selector-item-control input{width:18px;height:18px}.pricing-selector-item-body{gap:.2rem;display:grid}.pricing-selector-item-price{white-space:nowrap;font-weight:700}.summary-selection-item{justify-content:space-between;gap:1rem;display:flex}.form-feedback{border-radius:14px;margin:1rem 0 0;padding:.9rem 1rem}.form-feedback-error{color:#8c1d18;background:#b533291a;border:1px solid #b5332933}.form-feedback-success{color:#285e37;background:#3278461a;border:1px solid #3278462e}.admin-auth-card{max-width:720px}.admin-toolbar{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.5rem;display:flex}.admin-dashboard h2{margin:0;font-size:1.35rem}.admin-summary-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.75rem;display:grid}.admin-summary-grid .summary-item{background:var(--admin-surface);border:1px solid var(--admin-border);border-radius:16px;padding:1.25rem 1.25rem 1.25rem 1.5rem;transition:box-shadow .16s;box-shadow:0 1px 3px #0000000d}.admin-summary-grid .summary-item:hover{box-shadow:0 4px 12px #00000014}.admin-summary-grid .summary-item:first-child{border-left:3px solid #3b82f6}.admin-summary-grid .summary-item:nth-child(2){border-left:3px solid #f59e0b}.admin-summary-grid .summary-item:nth-child(3){border-left:3px solid #22c55e}.admin-summary-grid .summary-item:nth-child(4){border-left:3px solid #ef4444}.admin-summary-grid .summary-item:nth-child(5){border-left:3px solid #8b5cf6}.summary-total-small{font-size:2.25rem;font-weight:var(--fw-bold);letter-spacing:-.02em;color:var(--text);margin:.35rem 0 0;line-height:1}.admin-viewbar{justify-content:flex-start;margin-bottom:1rem;display:flex}.admin-nav{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;display:flex}.admin-nav-link{border:1px solid var(--line);min-height:42px;color:var(--muted);background:#ffffffa6;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1rem;display:inline-flex}.admin-nav-link.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.admin-content-grid{gap:1.25rem;min-width:0;display:grid}.admin-content-grid-stacked{grid-template-columns:minmax(0,1fr)}.admin-content-grid.has-detail{grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);align-items:start}.admin-content-grid>*{min-width:0}.segmented-control{border:1px solid var(--line);background:#ffffffb3;border-radius:999px;padding:.25rem;display:inline-flex}.segment{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.6rem 1rem}.segment.is-active{background:var(--accent);color:#fff}.admin-table-wrap{border:1px solid var(--admin-border);background:var(--admin-surface);border-radius:16px;width:100%;max-width:100%;overflow-x:auto;box-shadow:0 1px 3px #0000000f}.admin-table{border-collapse:collapse;width:100%;min-width:980px}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:1rem}.admin-table thead th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.85rem}.admin-table td strong,.admin-table td span{display:block}.admin-table td span+span{margin-top:.25rem}.admin-table tbody tr{cursor:pointer;transition:background .1s}.admin-table tbody tr:nth-child(2n){background:#f5efe459}.admin-table tbody tr:hover{background:#bf5b2c0f}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table thead{z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffaf2f2;position:sticky;top:0}.admin-table thead tr{border-bottom:2px solid var(--line)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.status-pill{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:90px;padding:.45rem .7rem;font-size:.88rem;display:inline-flex}.status-pending{background:var(--status-pending-bg);color:var(--status-pending-fg)}.status-confirmed{background:var(--status-confirmed-bg);color:var(--status-confirmed-fg)}.status-rejected{background:var(--status-rejected-bg);color:var(--status-rejected-fg)}.status-rescheduled{background:var(--status-reschedule-bg);color:var(--status-reschedule-fg)}.invoice-status-pending{color:var(--accent-dark);background:#bf5b2c1f}.invoice-status-inprogress{color:#214f75;background:#2458831f}.invoice-status-sent{color:#6e5517;background:#8161181f}.invoice-status-received_money{color:#285e37;background:#32784624}.action-row{flex-wrap:wrap;gap:.6rem;display:flex}.button-small{min-height:38px;padding:.6rem .9rem}.calendar-panel{gap:1rem;display:grid}.calendar-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.75rem;display:grid}.calendar-weekday{text-align:center;color:var(--muted);font-weight:700}.calendar-cell{border:1px solid var(--line);background:#ffffff9e;border-radius:20px;min-height:140px;padding:.85rem}.calendar-cell.is-empty{background:#ffffff40}.calendar-day{margin-bottom:.7rem;display:block}.calendar-events{gap:.45rem;display:grid}.calendar-event{text-align:left;cursor:pointer;background:#bf5b2c1a;border:1px solid #bf5b2c1f;border-radius:14px;width:100%;padding:.55rem .65rem;font-size:.88rem}.calendar-event span,.calendar-event small{display:block}.calendar-event small{color:var(--muted);margin-top:.18rem}.detail-panel{border:1px solid var(--line);background:#ffffffb8;border-radius:22px;align-self:start;width:100%;min-width:0;padding:1rem}.detail-panel-stacked{max-width:none}.detail-panel-header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.detail-panel-header h2{font-size:1.4rem;font-weight:var(--fw-bold);line-height:var(--lh-tight);margin:.75rem 0 0}.detail-section{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.detail-section strong{margin-bottom:.55rem;display:block}.detail-section p{margin:.35rem 0}.detail-empty{padding:1rem .25rem}.detail-empty-inline{border:1px solid var(--line);background:#ffffff8f;border-radius:22px;margin-top:1rem;padding:1.25rem}.admin-row.is-selected{background:#bf5b2c14}.portfolio-image,.portfolio-card-image{object-fit:cover;border-radius:18px;width:100%}.portfolio-image{aspect-ratio:16/10;margin-bottom:1rem}.portfolio-admin-section{border-top:1px solid var(--line);margin-top:2rem;padding-top:2rem}.portfolio-admin-header{margin-bottom:1.25rem}.portfolio-admin-layout{gap:1.25rem;display:grid}.portfolio-admin-list{gap:1rem;display:grid}.portfolio-card{border:1px solid var(--line);background:#ffffffad;border-radius:22px;gap:1rem;padding:1rem;transition:box-shadow .16s,transform .16s;display:grid}.portfolio-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #59341d1f}.portfolio-card-image,.portfolio-card-placeholder{aspect-ratio:16/10}.portfolio-card-placeholder{border:1px dashed var(--line);color:var(--muted);background:#ffffff59;border-radius:18px;place-items:center;display:grid}.portfolio-card-body{gap:.45rem;display:grid}.portfolio-card-body p{margin:0}.portfolio-card-body small{color:var(--muted)}.portfolio-detail-image{aspect-ratio:16/10;object-fit:cover;border-radius:18px;width:100%;margin-top:.5rem}.portfolio-detail-hero{object-fit:cover;border-radius:24px;width:100%;min-height:320px;margin-bottom:1.5rem}.portfolio-meta-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.invoice-detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem;display:grid}.admin-section-card{margin-top:1.25rem;padding:1.5rem}.admin-section-header{margin-bottom:1rem}.pricing-panel{background:#ffffff80}.pricing-group-summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.pricing-grid-list{grid-template-columns:1fr}.pricing-card{border:1px solid var(--line);background:#ffffffb8;border-radius:22px;gap:1rem;padding:1rem;transition:box-shadow .16s,transform .16s;display:grid}.pricing-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #59341d1a}.pricing-card p{margin:.35rem 0 0}.pricing-card-list{grid-template-columns:minmax(0,1fr) minmax(220px,280px) auto;align-items:end}.pricing-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.pricing-current{color:var(--muted)}.admin-password-form{gap:1rem;max-width:720px;display:grid}button:disabled{opacity:.7;cursor:wait}.admin-shell{min-height:100vh;display:flex}.admin-sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf2f2;flex-direction:column;flex-shrink:0;width:240px;height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.admin-sidebar-brand{border-bottom:1px solid var(--line);align-items:center;gap:.75rem;margin-bottom:1rem;padding:0 .5rem 1.25rem;display:flex}.admin-sidebar-brand strong,.admin-sidebar-brand small{display:block}.admin-sidebar-brand small{color:var(--muted);font-size:var(--text-xs)}.admin-sidebar-nav{flex-direction:column;gap:.25rem;display:flex}.admin-sidebar-link{color:var(--muted);font-size:.95rem;font-weight:var(--fw-medium);border-radius:14px;align-items:center;gap:.75rem;padding:.7rem .9rem;transition:background .12s,color .12s;display:flex}.admin-sidebar-link:hover{color:var(--text);background:#bf5b2c12}.admin-sidebar-link.is-active{color:var(--accent);font-weight:var(--fw-semi);background:#bf5b2c1f}.admin-sidebar-icon{text-align:center;flex-shrink:0;width:20px;font-size:1rem}.admin-main{flex:1;min-width:0;overflow-y:auto}.admin-page-content{padding:2rem}@media (max-width:768px){.admin-shell{flex-direction:column}.admin-sidebar{border-right:none;border-top:1px solid var(--line);z-index:30;flex-direction:row;align-items:center;width:100%;height:auto;padding:.5rem .75rem;position:fixed;inset:auto 0 0;overflow:auto hidden}.admin-sidebar-brand{display:none}.admin-sidebar-nav{flex-direction:row;justify-content:space-around;gap:.25rem;width:100%}.admin-sidebar-link{font-size:var(--text-xs);text-align:center;border-radius:10px;flex-direction:column;gap:.25rem;padding:.5rem .75rem}.admin-main{padding-bottom:72px}}@media (min-width:960px){.hero-card{grid-template-columns:1.2fr .8fr;align-items:start}.booking-layout{grid-template-columns:1.4fr .8fr;align-items:start}.portfolio-admin-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);align-items:start}}@media (max-width:900px){.app-shell.has-public-header{padding-top:86px}.site-nav{align-items:center;position:relative}.menu-toggle{display:inline-flex}.site-menu{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffaf2f5;border-radius:20px;flex-direction:column;align-items:stretch;padding:.75rem;display:none;position:absolute;top:calc(100% + .75rem);left:0;right:0}.site-menu.is-open{display:flex}.site-link,.menu-toggle{width:100%}.calendar-weekdays,.calendar-grid{grid-template-columns:1fr}.calendar-weekday{display:none}.calendar-cell{min-height:auto}.admin-toolbar,.calendar-header,.booking-calendar-header{flex-direction:column;align-items:stretch}.booking-calendar-weekdays,.booking-calendar-grid{gap:.35rem}.pricing-selector-group-header,.pricing-card-list,.summary-selection-item{grid-template-columns:1fr;display:grid}}
