
:root{--ink:#182e33;--muted:#53666a;--paper:#f5f4ee;--card:#fff;--accent:#dfc7b5;--line:#d9dfd8;--radius:12px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{color:#653b25}header,footer{padding:24px 5vw}header{display:flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid var(--line);background:white}.brand{font-size:26px;font-weight:850;text-decoration:none;letter-spacing:-1px}.brand span{display:block;font-size:11px;letter-spacing:0;font-weight:500}nav{display:flex;gap:20px;flex-wrap:wrap}main{width:100%;max-width:var(--page-width);margin-inline:auto;padding:40px var(--page-gutter) 80px}h1{font-size:clamp(32px,5vw,64px);line-height:1.12;letter-spacing:-2px}h2{margin-top:40px;line-height:1.3}h3{font-size:23px;line-height:1.3}.hero{padding:50px 0 70px;width:100%}.hero h1{font-size:clamp(42px,6vw,78px)}.hero p{max-width:620px}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:12px;font-weight:bold}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:20px}article,.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin:16px 0;overflow-wrap:anywhere}article h2{margin-top:0}button,.button{display:inline-block;border:1px solid var(--ink);border-radius:7px;padding:10px 16px;background:var(--accent);color:var(--ink);font:600 14px system-ui;cursor:pointer;text-decoration:none;margin:5px 0}button:hover,.button:hover{background:#ceb099}input,select,textarea{display:block;width:100%;max-width:100%;padding:11px;border:1px solid #9eada8;border-radius:6px;background:#fff;font:inherit;color:var(--ink)}input[type=checkbox],input[type=radio]{display:inline-block;width:auto}textarea{min-height:110px}label{font-weight:550}form p{margin:18px 0}article form{display:inline-block;vertical-align:top;margin-right:8px;max-width:100%}article form input{margin-top:8px}.errorlist,.notice,#session-warning{padding:14px 20px;background:#fff0cf;border-left:4px solid #a95f00}.errorlist{color:#842800}.tabs{padding:18px 0;border-bottom:1px solid var(--line)}section{scroll-margin-top:20px}footer{background:var(--ink);color:var(--paper)}footer nav{margin:20px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere}small{color:var(--muted)}footer small{color:#c6d5cf}:focus-visible{outline:3px solid #3377bb;outline-offset:3px}@media(max-width:700px){header{align-items:flex-start;flex-direction:column}header nav{gap:12px;font-size:14px}main{padding:24px 16px}article{padding:16px}.hero{padding:24px 0}.tabs{gap:12px}}

.legal-page{max-width:820px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,5vw,52px);overflow-wrap:anywhere}.legal-page h1{font-size:clamp(30px,4vw,50px);margin:0 0 12px}.legal-page h2{font-size:clamp(20px,2vw,26px);letter-spacing:-.02em;margin:42px 0 12px}.legal-page h2:first-of-type{margin-top:30px}.legal-page p{max-width:72ch;margin:12px 0;line-height:1.75}.legal-page a{color:#245e68}.legal-page .eyebrow{color:var(--muted);margin-bottom:12px}

.cover{max-width:100%;max-height:600px;object-fit:contain;border-radius:12px;display:block;margin:24px 0}

.site-banner{position:sticky;top:0;z-index:20;background:var(--card);box-shadow:0 2px 8px #182e3310}.site-banner header{padding-top:14px;padding-bottom:14px}.section-nav{padding:8px 5vw;gap:8px;flex-wrap:nowrap;overflow-x:auto;border-bottom:1px solid var(--line)}.section-nav a{white-space:nowrap;text-decoration:none;padding:8px 12px;border-radius:6px}.section-nav a[aria-current=page]{background:var(--ink);color:white}.badge{display:inline-block;min-width:23px;padding:0 6px;border-radius:20px;background:var(--accent);color:var(--ink);font-size:12px;text-align:center;font-weight:750}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.account-heading h1{font-size:34px;margin:12px 0}.account-heading p{margin:6px 0}.section-nav + main{scroll-margin-top:180px}@media(max-width:700px){.site-banner header{gap:8px;padding:10px 16px}.site-banner header nav{flex-wrap:nowrap;overflow-x:auto;width:100%;white-space:nowrap}.brand span{display:none}.brand{font-size:22px}.section-nav{padding:6px 12px;font-size:14px}}

.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:32px 0 20px}.section-heading h2{margin:0}.notification-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.notification-card p{margin:0;flex:1}.notification-card form{flex-shrink:0;margin:0}.action-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:16px}.action-row form{margin:0}.appointment-card .confirmation-form{display:block;margin:20px 0 0}.confirmation-form details{margin-bottom:12px}.confirmation-form input{margin-top:8px}@media(max-width:700px){.notification-card{align-items:flex-start;flex-direction:column;gap:16px}}
.help-panel{margin:12px 0 24px;padding:14px 18px;background:#fff;border:1px solid var(--line);border-radius:8px}.help-panel summary{cursor:pointer;font-weight:600}.muted{color:var(--muted)}.product-gallery{width:100%;min-width:0;margin:24px 0}.gallery-main{display:block;width:100%;height:420px;object-fit:contain;background:#fff;border-radius:12px}.gallery-thumbnails{display:flex;gap:12px;overflow-x:auto;margin-top:12px;padding:4px}.gallery-thumbnails a{flex:0 0 82px;border:2px solid transparent;border-radius:6px;padding:3px}.gallery-thumbnails a[aria-current]{border-color:var(--ink)}.gallery-thumbnails img{display:block;width:72px;height:72px;object-fit:cover}.editor-assets{display:flex;flex-wrap:wrap;gap:16px}.editor-assets img{max-width:180px;max-height:150px;object-fit:contain}.editor-assets article{margin:0;padding:12px}.prose img{max-width:100%;height:auto}.markdown-preview{scroll-margin-top:190px}.summary-fields{display:flex;flex-wrap:wrap;gap:24px}.summary-fields dt{color:var(--muted)}.summary-fields dd{margin:0}.pagination{margin:24px 0}@media(max-width:700px){.gallery-main{height:280px}}
.account-search{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin:24px 0}.account-search label:first-child{flex:1;min-width:220px}.account-search button{margin:0}.table-scroll{overflow-x:auto}.account-table{width:100%;border-collapse:collapse;background:var(--card);font-size:15px}.account-table th,.account-table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--line)}.account-table th{font-size:13px;color:var(--muted)}.account-table td:first-child,.account-table td:last-child{white-space:nowrap}.account-table .badge{margin-left:8px}
/* Shared list/detail presentation for operational screens. */
.data-table{width:100%;border-collapse:collapse;background:var(--card);font-size:15px}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}.data-table th{font-size:13px;color:var(--muted);font-weight:650}.data-table td:last-child{white-space:nowrap}.data-table tbody tr:hover,.account-table tbody tr:hover{background:#f7f0ea}.table-scroll{border:1px solid var(--line);border-radius:10px;margin:16px 0}.list-toolbar{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:20px 0}.list-toolbar label{flex:1;min-width:180px;max-width:420px}.list-toolbar button{margin:0}.record-detail{width:100%;min-width:0}.record-detail article{margin:0 0 20px}.record-detail article>form{display:block;margin:16px 0}.record-detail .action-row form{display:inline-block;margin:0}.record-detail h3:first-child{margin-top:0}.section-heading h1{font-size:36px;margin:8px 0}.record-detail .help-panel{margin:20px 0}.pagination a{padding:6px 12px;border:1px solid var(--line);border-radius:6px;background:white;text-decoration:none}.pagination{align-items:center}.format-tools{gap:8px}button,.button{line-height:1.4}button:disabled{opacity:.5;cursor:default}@media(max-width:700px){.data-table th,.data-table td,.account-table th,.account-table td{padding:10px 12px}.list-toolbar{gap:12px}.record-detail article{padding:16px}.section-heading h1{font-size:30px}}
/* Consistent header, page rhythm and compact controls. */
:root{--control-radius:8px;--control-height:36px}
.site-banner .global-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;padding:14px 5vw}
.global-header .primary-nav{justify-content:flex-end;align-items:center;gap:6px;flex-wrap:wrap}
.primary-nav a{padding:7px 10px;text-decoration:none;border-radius:var(--control-radius);font-size:14px;white-space:nowrap}
.primary-nav a:hover{background:#f3ece5;color:var(--ink)}
.header-tools{display:flex;align-items:center;gap:8px;flex-shrink:0}
.icon-button,.language-switch{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--line);border-radius:var(--control-radius);text-decoration:none;background:white;font-size:13px;font-weight:650}
.icon-button:hover,.language-switch:hover{background:#f3ece5;color:var(--ink)}
.notification-bell{position:relative}.bell-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:20px;background:var(--ink);color:white;font-size:10px;line-height:18px;text-align:center}
.brand span{font-size:11px;letter-spacing:.2px}.section-nav{padding-top:6px;padding-bottom:6px}.section-nav a{padding:7px 11px;font-size:14px}
main.management-main{padding-top:28px}.page-heading{margin:0 0 24px;padding:0}.page-heading h1,.management-main>.section-heading h1{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:0;font-weight:750}
.section-content>section,.section-content>div{margin-top:0}.section-content>h2:first-child,.section-content>section>h2:first-child{margin-top:0}.section-content>.list-toolbar:first-child,.section-content>.account-search:first-child,.section-content>section>.list-toolbar:first-child{margin-top:0}
.section-content .list-toolbar,.section-content .account-search{margin-bottom:20px}.management-main h3{font-size:20px;letter-spacing:-.3px;margin:28px 0 14px}.management-main h2{font-size:25px;letter-spacing:-.5px}
button,.button,.list-toolbar>a,.action-row>a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-height);padding:7px 13px;border-radius:var(--control-radius);font:600 13px/1.4 system-ui,sans-serif;letter-spacing:0;text-decoration:none;vertical-align:middle;transition:background-color .15s,border-color .15s}
button,.button{background:#dfc7b5;border:1px solid #d8bda7;color:var(--ink);box-shadow:none;margin:0}
button:hover,.button:hover{background:#d8bda7;border-color:#cfb195;color:var(--ink)}
.list-toolbar>a:not(.button),.action-row>a:not(.button){background:white;border:1px solid var(--line);color:var(--ink)}
.list-toolbar>a:not(.button):hover,.action-row>a:not(.button):hover{background:#f3ece5;border-color:#cbb7a7}
.list-toolbar,.action-row,.format-tools{align-items:center;gap:10px}.list-toolbar:has(label),.account-search{align-items:flex-end}
input,select,textarea{padding:8px 10px;border-radius:var(--control-radius);font-size:14px}input:not([type=checkbox]):not([type=radio]),select{min-height:38px}label{font-size:14px}form>button,form>label+button{margin-top:12px}.list-toolbar>button,.account-search>button,.action-row button,.section-heading button{margin:0}
.data-table td>a,.account-table td>a{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.data-table td>a:hover,.account-table td>a:hover{background:#f1e8e0}
.help-panel{padding:12px 15px}.help-panel summary{font-size:14px;font-weight:600}.data-table details>summary{cursor:pointer;font-size:13px}.account-heading{margin-bottom:24px}.account-heading+h2{margin-top:0}
@media(max-width:700px){.site-banner .global-header{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 16px}.global-header .brand{grid-column:1;grid-row:1}.global-header .brand span{display:block;font-size:10px}.header-tools{grid-column:2;grid-row:1}.global-header .primary-nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;width:100%;gap:2px}.primary-nav a{padding:6px 8px;font-size:13px}.page-heading h1{font-size:28px}main.management-main{padding-top:22px}.page-heading{margin-bottom:20px}}
main.personal-main{padding-top:28px}.personal-main .page-heading h1{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:0;font-weight:750}.personal-main h3{font-size:20px;letter-spacing:-.3px;margin:28px 0 14px}.personal-main .section-content>h3:first-child{margin-top:0}.profile-identity{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.profile-form{width:100%;min-width:0}.notification-table td:first-child{min-width:240px}.personal-main .data-table details{min-width:130px;white-space:normal}.personal-main .data-table details[open]{min-width:220px}.personal-main .data-table details .action-row{margin:12px 0 0}@media(max-width:700px){main.personal-main{padding-top:22px}.personal-main .page-heading h1{font-size:28px}}
.personal-main>.section-content .data-table td>p{margin:4px 0 0;color:var(--muted);font-size:13px}.personal-main>h1:first-of-type{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:0 0 24px}.personal-main .section-content>.list-toolbar:first-child{margin-top:0}
.profile-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:24px;align-items:start}.profile-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:24px}.personal-main .profile-card h2{font-size:20px;margin:0 0 24px;letter-spacing:-.3px}.profile-summary .profile-identity{gap:8px}.profile-summary .profile-identity strong{font-size:20px}.profile-summary dl{margin:24px 0}.profile-summary dt{font-size:12px;color:var(--muted);margin-top:16px}.profile-summary dd{margin:4px 0 0;font-size:14px;overflow-wrap:anywhere}.profile-account-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding-top:20px;border-top:1px solid var(--line)}.profile-account-actions a{display:block;padding:8px 12px;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-size:13px;font-weight:600}.profile-account-actions a:hover{background:#f3ece5}.profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.profile-fields label{display:block;margin-bottom:7px}.profile-fields input,.profile-fields select{max-width:none}.profile-preference{margin-top:24px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.profile-preference label{display:flex;align-items:center;gap:10px}.profile-preference input{margin:0;flex-shrink:0}.profile-save{padding-top:20px}@media(max-width:800px){.profile-layout{grid-template-columns:1fr}.profile-fields{grid-template-columns:1fr}.profile-card{padding:20px}}

/* One page frame for public pages, personal area and management. */
:root{--page-width:1160px;--page-gutter:24px;--frame-inset:max(var(--page-gutter),calc((100% - var(--page-width))/2 + var(--page-gutter)))}
html{scrollbar-gutter:stable}
.site-banner .global-header,.site-banner .section-nav,body>footer{padding-inline:var(--frame-inset)}
main.management-main,main.personal-main{width:100%;max-width:var(--page-width);margin-inline:auto;padding-inline:var(--page-gutter)}
main>*,.section-content,.section-content>section,.profile-layout>*,.profile-fields>*,.grid>*{min-width:0}
.section-content,.record-detail,.markdown-editor,.profile-layout,.table-scroll{max-width:100%}
.table-scroll{width:100%;overflow-x:auto}.data-table td,.account-table td{overflow-wrap:anywhere}
main img,main video,main iframe{max-width:100%}.prose,.profile-card{overflow-wrap:anywhere}
@media(max-width:700px){:root{--page-gutter:16px}main{padding-inline:var(--page-gutter)}.site-banner .global-header,.site-banner .section-nav,body>footer{padding-inline:var(--frame-inset)}}
.archive-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.archive-toolbar .list-toolbar{margin:0}.archive-categories>a[aria-current=page]{background:var(--ink);border-color:var(--ink);color:white}.archive-categories>a[aria-current=page]:hover{background:var(--ink);color:white}.archive-toolbar+h3{margin-top:0}

/* Shared compact controls, record summaries and editing surfaces. */
main>h1:first-child,main>.page-heading h1{font-size:32px;line-height:1.2;letter-spacing:-.8px;margin:0 0 24px}
button.secondary,.button.secondary,.format-tools button{background:var(--card);border-color:var(--line);color:var(--ink)}
button.secondary:hover,.button.secondary:hover,.format-tools button:hover{background:#f3ece5;border-color:#cbb7a7}
.data-table td small{display:block;color:var(--muted);font-size:12px;margin-top:4px;white-space:normal}
.data-table td .notification-link{display:block;border:0;padding:0;min-height:0;font-size:14px;font-weight:400;white-space:normal}.data-table td .notification-link:hover{background:none;text-decoration:underline}
.data-table form{margin:0}.data-table td button{margin-top:0}.profile-card h2{font-size:20px;margin:0 0 20px}.profile-card dl{margin:0}.profile-card dt{font-size:12px;color:var(--muted);margin-top:16px}.profile-card dd{margin:4px 0 0;font-size:14px;overflow-wrap:anywhere}
.profile-layout{margin-bottom:24px}textarea{min-height:88px;max-height:520px;resize:vertical;field-sizing:content}textarea[name=note],textarea[name=reason]{height:88px;min-height:88px}.markdown-editor textarea[name=body]{min-height:240px;max-height:650px}.markdown-editor>.field{margin:0 0 20px}.markdown-editor>.field>label{display:block;margin-bottom:6px}.markdown-editor .format-tools{margin-bottom:8px}.markdown-editor .helptext{font-size:12px;color:var(--muted);margin-top:6px}
.variant-editor{margin:24px 0;padding-top:20px;border-top:1px solid var(--line)}.variant-fields{display:grid;grid-template-columns:2fr 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.variant-fields p{margin:0}.variant-fields label{display:block;margin-bottom:5px}.variant-fields input{width:100%}.variant-fields .errorlist{grid-column:1/-1}
.product-thumbnail{display:block;overflow:hidden;border-radius:8px;background:#f3ece5}.product-thumbnail img{display:block;width:100%;height:180px;object-fit:contain}.product-cell{display:flex;align-items:center;gap:12px}.product-cell .product-thumbnail{flex:0 0 54px}.product-cell .product-thumbnail img{width:54px;height:54px}.product-cell small{display:block}.stock-options{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.stock-options>span{border:1px solid var(--line);padding:8px 12px;border-radius:8px;font-size:13px;background:white}
.slot-picker{margin:0 0 24px}.slot-picker input[type=date]{max-width:260px;display:block;margin:8px 0 16px}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:10px}.slot-grid .slot-option{flex-direction:column;align-items:flex-start;padding:12px;text-align:left}.slot-option small{font-weight:400;font-size:11px}.slot-option[aria-pressed=true]{background:#eee0d4;border-color:#a77a57;box-shadow:0 0 0 1px #a77a57}.status-attention{display:inline-block;color:#775b19;background:#fff3cb;padding:4px 8px;border-radius:6px;font-size:12px}.pending-payments{margin-bottom:28px}.fee-summary{font-size:15px}.contact-reply{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.contact-reply small{display:block;color:var(--muted)}.history-filters input{min-width:0}.history-filters label{flex:1;min-width:130px}.record-detail .profile-card>form+form{margin-top:12px}.record-detail .profile-card details{margin:16px 0}
@media(max-width:700px){.variant-fields{grid-template-columns:1fr}.profile-card{padding:18px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}main>h1:first-child,main>.page-heading h1{font-size:28px}}

/* Keep appointment status and actions distinct, with aligned controls. */
.payment-appointment-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;white-space:normal}.payment-appointment-actions>.button{flex-shrink:0;white-space:nowrap}

/* Availability is visible before choosing a day; native select remains the no-JS fallback. */
.availability-calendar{max-width:380px;margin-bottom:20px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.calendar-heading strong{text-transform:capitalize;font-size:15px}.calendar-heading button{width:36px;padding:4px;font-size:22px}
.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekday{text-align:center;font-size:11px;color:var(--muted);padding:4px 0}
.calendar-days .calendar-day{width:100%;min-width:0;min-height:36px;padding:6px 0;margin:0;border:1px solid transparent;border-radius:7px;font-size:13px}
.calendar-day.has-availability{background:#eee0d4;color:#492610;border-color:#dfc7b5}.calendar-day.is-full{background:#fff0cc;color:#795818;border-color:#e5ca84}.calendar-day.is-unavailable{background:transparent;color:var(--muted);opacity:.45}.calendar-day[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:1px;font-weight:800}.calendar-day:focus-visible{outline:3px solid #3377bb;outline-offset:1px}
.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:14px;font-size:11px;color:var(--muted)}.calendar-legend span::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;background:#b4c0b9}.calendar-legend .has-availability::before{background:#a77a57}.calendar-legend .is-full::before{background:#d1a349}
.slot-picker input[hidden]{display:none}

/* Compact catalogue cards retain their size even with a single product. */
.shop-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr)); gap:1.5rem; margin-block:1.5rem 2rem; }
.shop-card { padding:0; overflow:hidden; align-self:start; margin:0; }
.shop-card .product-thumbnail { display:block; margin:0; width:100%; height:auto; border-radius:0; background:#f3ece5; }
.shop-card .product-thumbnail img { display:block; width:100%; height:240px; object-fit:contain; border-radius:0; }
.shop-card-body { padding:1.25rem; }
.shop-card h2 { font-size:1.3rem; margin:.65rem 0; }
.shop-card h2 a { text-decoration:none; }
.shop-card h2 a:hover { text-decoration:underline; }
.shop-card p { margin:.5rem 0; }
.shop-price { font-size:1.25rem; font-weight:700; }
.shop-card .muted,.variant-summary,.shop-card small { font-size:.875rem; }
.badge.neutral { background:#ece5df; color:var(--ink); }
.review-header { display:flex; align-items:center; gap:1rem; margin-bottom:1.25rem; }
.listing-preview { padding:1.25rem; border:1px solid var(--line,#d9ded5); border-radius:12px; }
.field-heading { font-size:.8rem; font-weight:700; color:var(--muted,#626c70); margin-top:0; }
.catalog-properties { background:#f5f6f2; padding:1rem 1.25rem; margin-block:1.25rem; border-radius:12px; }
.catalog-properties h4 { margin:0 0 1rem; }
.catalog-properties .summary-fields { margin:0; }
.membership-summary { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; margin-bottom:2rem; }
.membership-price { font-size:1.4rem; font-weight:700; margin-bottom:0; }
.membership-price .muted { font-size:1rem; font-weight:400; }
.reservation-form { max-width:34rem; }

/* Treasury follows the management list and form layout. */
.treasury-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}
.treasury-overview .profile-card{padding:18px 20px}
.treasury-overview h2{margin:0 0 5px;font-size:14px;color:var(--muted);font-weight:650}
.treasury-overview strong{display:block;font-size:clamp(22px,2.4vw,30px);line-height:1.25;font-variant-numeric:tabular-nums}
.treasury-overview p{margin:7px 0 0;font-size:12px}
.treasury-balance{background:#f1e8e0}
.treasury-shortcuts{margin:0 0 30px}
.treasury-list-heading{margin:0 0 12px}
.treasury-list-heading h2{margin:0}
.treasury-list-heading p{margin:2px 0 0;font-size:13px}
.treasury-filters{margin:0 0 14px}
.treasury-filters label{min-width:145px;max-width:240px}
.treasury-filters label:first-child{min-width:190px;max-width:320px}
.treasury-filters label:nth-child(n+4){min-width:130px;max-width:160px}
.treasury-filters>a{min-height:var(--control-height);padding:7px 11px;border:1px solid var(--line);border-radius:var(--control-radius);background:white;text-decoration:none;font-size:13px;font-weight:600}
.treasury-table{min-width:760px}
.treasury-table td:first-child{white-space:nowrap}
.treasury-scroll-hint{display:none;margin:0;font-size:12px}
.treasury-table td:nth-child(2){min-width:190px}
.treasury-table td:nth-child(2) strong{font-weight:600}
.treasury-table td:nth-child(4){white-space:nowrap}
.treasury-amount{font-variant-numeric:tabular-nums;font-weight:700}
.treasury-negative{color:#9b3c32}
.treasury-positive{color:#653b25}
.treasury-reverse-form{min-width:210px;padding-top:10px;white-space:normal}
.treasury-reverse-form label{display:block}
.treasury-reverse-form input{margin-top:5px}
.treasury-reverse-form button{margin-top:9px}
.treasury-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}
.treasury-actions .profile-card{align-self:start}
.treasury-actions h2{margin:0 0 10px}
.treasury-actions p{margin:0 0 18px}
.treasury-actions form>label{display:block}
.treasury-actions form>label input{margin-top:6px}
.treasury-actions form>button{margin-top:14px}
.treasury-actions .help-panel{margin:18px 0 0}
.treasury-actions .help-panel p{margin:12px 0 0;font-size:13px}
.treasury-actions .action-row{margin-top:12px;font-size:13px}
.treasury-entry-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.treasury-field label{display:block;margin-bottom:5px}
.treasury-field-wide,.treasury-entry-form>.errorlist{grid-column:1/-1}
.treasury-entry-form button{justify-self:start;grid-column:1/-1}
.treasury-entry-form .errorlist{margin:6px 0 0;font-size:12px}
.treasury-preview{margin-top:24px}
.treasury-preview h2{margin:0 0 8px}
.treasury-checkbox{display:flex;gap:9px;align-items:center;margin-top:20px}
.treasury-checkbox input{margin:0}
.treasury-preview form>button{margin-top:12px}
.treasury-result{display:inline-block;padding:3px 8px;border-radius:6px;font-size:12px;font-weight:700;background:#ece5df}
.treasury-result-novo{background:#eee0d4;color:#653b25}
.treasury-result-conflito{background:#fff0cb;color:#805710}
@media(max-width:800px){.treasury-actions{grid-template-columns:1fr}.treasury-overview{gap:10px}}
@media(max-width:600px){.treasury-overview{grid-template-columns:1fr}.treasury-overview .profile-card{padding:14px 16px}.treasury-entry-form{grid-template-columns:1fr}.treasury-filters label,.treasury-filters label:first-child,.treasury-filters label:nth-child(n+4){min-width:100%;max-width:none}.treasury-scroll-hint{display:block}}
.reservation-form select,.reservation-form input,.reservation-form textarea { width:100%; }

.auth-card { width:100%; max-width:38rem; margin:1.5rem auto 3rem; padding:clamp(1.25rem,4vw,2.5rem); background:#fff; border:1px solid #d9ded5; border-radius:16px; }
.auth-card h1 { font-size:clamp(1.8rem,4vw,2.5rem); margin-top:0; }
.auth-card form { max-width:none; }
.auth-card input:not([type=checkbox]):not([type=radio]),.auth-card select { width:100%; }
.auth-card input[type=checkbox],.auth-card input[type=radio] { width:auto; margin-inline-end:.5rem; }
.auth-card form > div,.auth-card form > p { margin-block:1rem; }
.auth-card .helptext,.auth-card form ul { font-size:.9rem; color:#626c70; }
.auth-card button { margin-block:.5rem; }

.security-check{display:flex;flex-direction:column;gap:.5rem;max-width:100%;margin-block:1rem}.security-widget{min-width:0;max-width:100%}.security-status{font-size:.9rem}.security-check small{display:block}.security-check button{align-self:flex-start}
.registration-control{margin-bottom:24px}.registration-control h2{margin:0 0 8px}.registration-control p{margin:0 0 14px}.registration-control form{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.registration-control form button{margin:0}.registration-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.registration-switch input{appearance:none;width:42px;height:24px;border:1px solid #877565;border-radius:20px;background:#bbab9e;position:relative;cursor:pointer;margin:0}.registration-switch input:checked{background:#805638;border-color:#805638}.registration-switch input:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:white;transition:transform .15s}.registration-switch input:checked:before{transform:translateX(18px)}.registration-switch input:focus-visible{outline:3px solid #3756b5;outline-offset:2px}
.registration-control summary{cursor:pointer;font-weight:700;display:list-item}.registration-control summary .badge{margin-left:10px}.registration-control[open] summary{margin-bottom:16px}.registration-control p{margin-bottom:16px}
.prose .text-center,.markdown-preview .text-center{text-align:center}.prose img.media-size-small{width:min(100%,320px)}.prose img.media-size-medium{width:min(100%,640px)}.prose img.media-size-large{width:min(100%,960px)}
.home-section{margin:0 0 52px}.home-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.home-section-heading h2{margin:0}.home-section-heading>a{font-size:14px;font-weight:650;text-decoration:none}.home-section-heading>a:hover{text-decoration:underline}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:20px}.feature-card{display:flex;flex-direction:column;padding:0;margin:0;overflow:hidden}.feature-media{display:block;height:210px;background:#f5f5f1;overflow:hidden}.feature-media img{display:block;width:100%;height:100%;object-fit:contain}.feature-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:170px;background:linear-gradient(135deg,#eee0d4,#e1c5af);color:#653b25;font-size:clamp(24px,4vw,42px);font-weight:850;letter-spacing:-1px}.feature-card-body{padding:20px 22px 24px}.feature-card-body small{display:block;margin-bottom:8px}.feature-card-body h3{font-size:22px;margin:0;line-height:1.3}.feature-card-body h3 a{text-decoration:none}.feature-card-body h3 a:hover{text-decoration:underline}.feature-card-body p{margin:10px 0 0;color:var(--muted)}.home-section .shop-grid{margin-top:0}.home-section .shop-card{margin-top:0}.shop-card .product-thumbnail .feature-placeholder{height:180px;min-height:180px;font-size:30px}@media(max-width:700px){.feature-media{height:190px}.home-section{margin-bottom:42px}}
.data-table .action-row{margin:0;flex-wrap:nowrap}
.announcement-bar{display:flex;align-items:center;gap:16px;background:#eee0d4;color:#492610;border-block:1px solid #d5bda9;padding:10px var(--frame-inset);font-size:15px;min-width:0}.announcement-viewport{flex:1;min-width:0}.announcement-track{display:flex}.announcement-group{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.announcement-item{overflow-wrap:anywhere}.announcement-item>span{margin-left:24px}.announcement-copy{display:none}.announcement-bar button{flex:0 0 auto;margin:0;color:#492610;border-color:#cbb7a7}.announcement-bar.has-motion .announcement-viewport{overflow:hidden}.announcement-bar.has-motion .announcement-track{width:max-content;animation:announcement-scroll var(--announcement-duration,30s) linear infinite}.announcement-bar.has-motion .announcement-group{flex-wrap:nowrap;flex:0 0 auto;min-width:calc(100vw - var(--frame-inset)*2 - 100px);padding-right:24px;white-space:nowrap}.announcement-bar.has-motion .announcement-copy{display:flex}.announcement-bar.is-paused .announcement-track,.announcement-bar:hover .announcement-track,.announcement-bar:focus-within .announcement-track{animation-play-state:paused}@keyframes announcement-scroll{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.announcement-bar .announcement-track{animation:none!important;width:auto!important}.announcement-bar .announcement-group{flex-wrap:wrap!important;white-space:normal!important;min-width:0!important}.announcement-bar .announcement-copy{display:none!important}.announcement-bar [data-announcement-pause]{display:none}}@media(max-width:700px){.announcement-bar{font-size:14px;gap:8px;padding-block:8px}}
