/* ─── /assets/modules/layer-text.css ─── */
.layer__text-col{max-width: 100%;}@media (min-width: 761px){.layer__text-col{max-width: var(--text-col-w,100%);}}.layer--text--centered .layer__text-col{margin-inline: auto;}

/* ─── /assets/modules/date-picker.css ─── */
@layer mm{.date-button,.date-trigger{--date-trigger-bg: var(--color-bg-elev,#fff);--date-trigger-border: var(--color-border-strong,#b8b8b8);--date-trigger-fg: var(--color-fg,#1a1a1a);--date-trigger-muted: var(--color-fg-muted,#666);--date-trigger-focus: var(--color-primary,#1e2a3a);}.date-popover{--date-bg: var(--color-bg-elev,#fff);--date-surface: var(--color-bg-soft,#f7f7f8);--date-surface-strong: var(--color-border,#d9d9d9);--date-border: var(--color-border,#d9d9d9);--date-fg: var(--color-fg,#1a1a1a);--date-muted: var(--color-fg-muted,#666);--date-muted-strong: var(--color-fg,#1a1a1a);--date-accent: var(--color-primary,#1e2a3a);--date-accent-text: var(--color-primary-fg,#fff);--date-accent-hover: color-mix(in srgb,var(--color-primary,#1e2a3a) 15%,transparent);--date-accent-active: color-mix(in srgb,var(--color-primary,#1e2a3a) 25%,transparent);--date-accent-subtle: color-mix(in srgb,var(--color-primary,#1e2a3a) 10%,transparent);--date-overlay-bg: light-dark(rgba(255,255,255,.72),rgba(7,10,18,.72));--date-radius: var(--radius-lg,14px);--date-radius-md: var(--radius-md,8px);--date-radius-pill: 999px;--date-shadow: var(--shadow-2,0 2px 4px rgba(0,0,0,.06),0 12px 32px rgba(0,0,0,.08));--date-available-bg: transparent;}}@layer mm{[data-date]{position: relative;display: inline-block;}.date-button{display: inline-flex;align-items: center;gap: .5rem;min-width: 12rem;padding: .5rem .75rem;background: var(--date-trigger-bg);border: 1px solid var(--date-trigger-border);border-radius: 6px;color: var(--date-trigger-fg);font: inherit;text-align: left;cursor: pointer;user-select: none;}.date-button:focus-visible{outline: 2px solid var(--date-trigger-focus);outline-offset: 2px;}.date-button[data-empty="1"]{color: var(--date-trigger-muted);}.date-button .date-from,.date-button .date-till{display: inline-block;min-width: 6rem;}.date-button .date-arrow{flex: 0 0 auto;opacity: .6;}.date-trigger-row{display: grid;grid-template-columns: 1fr 1fr;gap: .5rem;min-width: 22rem;}.date-trigger{display: grid;gap: .15rem;min-height: 58px;padding: .55rem .85rem;background: var(--date-trigger-bg);border: 1px solid var(--date-trigger-border);border-radius: 12px;color: var(--date-trigger-fg);font: inherit;text-align: left;cursor: pointer;}.date-trigger:focus-visible,.date-trigger.is-active{outline: none;border-color: var(--date-trigger-focus);box-shadow: 0 0 0 3px rgba(129,140,248,.15);}.date-trigger small{color: var(--date-trigger-muted);font-size: .64rem;text-transform: uppercase;letter-spacing: .08em;}.date-trigger span{display: block;font: 700 .92rem/1.2 system-ui;}.date-trigger[data-empty="1"] span{color: var(--date-trigger-muted);font-weight: 500;}@media (max-width: 600px){.date-trigger-row{min-width: 0;}}.date--split{display: block;}.date--split .date-trigger-row{grid-template-columns: 1fr;gap: 1.1rem;min-width: 0;}.date--split .date-trigger{min-height: 0;padding: 0;background: transparent;border: 0;border-radius: 0;}.date--split .date-trigger small{color: var(--ink,#1e2a3a);font-size: .82rem;font-weight: 600;text-transform: none;letter-spacing: normal;}.date--split .date-trigger .form-field__value{padding: .55rem .85rem;background: var(--date-trigger-bg);border: 1px solid var(--date-trigger-border);border-radius: 12px;min-height: 1.25rem;font: inherit;font-weight: 400;color: var(--color-fg,#1a1a1a);}.date--split .date-trigger[data-empty="1"] .form-field__value{color: var(--color-fg-muted,#666);font-weight: 400;}.date--split .date-trigger:focus-visible,.date--split .date-trigger.is-active{border: 0;box-shadow: none;}.date--split .date-trigger:focus-visible .form-field__value,.date--split .date-trigger.is-active .form-field__value{border-color: var(--date-trigger-focus);box-shadow: 0 0 0 3px rgba(129,140,248,.15);}}.date-popover{position: relative;display: flex;flex-direction: column;gap: .65rem;background: var(--date-bg);color: var(--date-fg);border: 1px solid var(--date-border);border-radius: var(--date-radius);box-shadow: var(--date-shadow);z-index: 1000;min-width: 18rem;padding: .75rem;font: inherit;overflow: hidden;}.date-popover[data-mobile="1"]{max-height: 85dvh;display: flex;flex-direction: column;overflow-y: hidden;}.date-popover[data-mobile="1"] .date-months{flex: 1;min-height: 0;overflow-y: auto;overscroll-behavior: contain;-webkit-overflow-scrolling: touch;}.date-popover[data-mobile="1"] .date-head,.date-popover[data-mobile="1"] .date-patterns,.date-popover[data-mobile="1"] .date-times,.date-popover[data-mobile="1"] .date-footer{flex-shrink: 0;}.date-head{display: flex;justify-content: space-between;align-items: center;gap: .5rem;padding: 0 .15rem;}.date-head-title{font: 700 .9rem/1.2 system-ui;color: var(--date-muted-strong);}.date-head-actions{display: inline-flex;gap: .35rem;align-items: center;}.date-head-today{padding: .35rem .85rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-pill);color: var(--date-fg);font: 600 .78rem/1 system-ui;cursor: pointer;}.date-head-today:hover{background: var(--date-accent-hover);}.date-head-nav{display: inline-flex;gap: .25rem;}.date-head-nav button{width: 2rem;height: 2rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-pill);color: var(--date-fg);font: 1.1rem/1 system-ui;cursor: pointer;display: inline-flex;align-items: center;justify-content: center;}.date-head-nav button:hover{background: var(--date-accent-hover);}.date-head-nav button:disabled{opacity: .35;cursor: default;}.date-head-nav button:disabled:hover{background: var(--date-surface);}.date-patterns{display: flex;flex-wrap: wrap;gap: .35rem;padding: 0 .15rem;}.date-pattern{padding: .3rem .8rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-pill);color: var(--date-fg);font: inherit;font-size: .82rem;cursor: pointer;}.date-pattern:hover{background: var(--date-accent-hover);}.date-pattern[data-active="1"]{background: var(--date-accent);border-color: transparent;color: var(--date-accent-text);}.date-pattern-group{display: inline-flex;align-items: center;gap: .35rem;padding-left: .5rem;border-left: 1px solid var(--date-border);}.date-pattern-group-label{font-size: .68rem;text-transform: uppercase;letter-spacing: .04em;color: var(--date-muted);}.date-months{display: grid;gap: .85rem;position: relative;--loader-color: rgba(255,255,255,.9);--loader-track: rgba(255,255,255,.18);--loader-size: 2rem;}.date-months[data-layout="sideBySide"]{grid-auto-flow: column;grid-auto-columns: minmax(15rem,1fr);max-width: 60rem;}.date-popover[data-mobile="1"] .date-months{grid-auto-flow: row;grid-template-columns: 1fr;}.date-month{padding: .4rem;background: var(--date-surface);border-radius: var(--date-radius-md);}.date-month-head{display: flex;justify-content: center;gap: .35rem;padding: .25rem 0 .65rem;}.date-month-head button{background: transparent;border: 0;color: var(--date-fg);font: 600 .95rem/1 system-ui;padding: .2rem .5rem;border-radius: 6px;cursor: pointer;text-transform: capitalize;}.date-month-head button:hover{background: var(--date-accent-hover);}.date-month-year{color: var(--date-muted-strong);}.date-day-head,.date-grid{display: grid;grid-template-columns: repeat(7,1fr);gap: 2px;}.date-day-head{font-size: .68rem;text-transform: uppercase;letter-spacing: .04em;color: var(--date-muted);padding-bottom: .35rem;}.date-day-head span{text-align: center;}.date-cell{position: relative;aspect-ratio: 1 / 1;display: inline-flex;align-items: center;justify-content: center;padding: 0;background: transparent;border: 0;border-radius: var(--date-radius-md);color: inherit;font: inherit;font-size: .85rem;cursor: pointer;transition: background-color 80ms,color 80ms;}.date-cell:hover:not([data-disabled="1"]){background: var(--date-accent-hover);}.date-cell[data-outside="1"]{color: var(--date-muted);opacity: .55;}.date-cell[data-today="1"]{font-weight: 700;outline: 1px dashed currentColor;outline-offset: -2px;}.date-cell[data-disabled="1"]{opacity: .3;cursor: not-allowed;pointer-events: none;}.date-cell[data-selected="from"],.date-cell[data-selected="till"]{background: var(--date-accent);color: var(--date-accent-text);}.date-cell[data-in-range="1"]{background: var(--date-accent-active);border-radius: 0;}.date-cell[data-tentative="1"]{background: var(--date-accent-subtle);}.date-cell:not([data-disabled="1"]):not([data-outside="1"]):not([data-selected]):not([data-in-range="1"]):not([data-tentative="1"]){background: var(--date-available-bg);}.date-times{display: flex;gap: 1rem;padding: .5rem 0 0;border-top: 1px solid var(--date-border);flex-wrap: wrap;}.date-time{display: flex;align-items: center;gap: .5rem;}.date-time-label{font-size: .8rem;color: var(--date-muted);}.date-time-display{display: inline-flex;align-items: center;gap: .1rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-pill);padding: .2rem .45rem;}.date-time-part{min-width: 1.9rem;padding: .15rem .35rem;background: transparent;border: 0;border-radius: 6px;color: var(--date-fg);font: 700 .85rem/1 system-ui;text-align: center;cursor: pointer;transition: background .15s;}.date-time-part:hover{background: var(--date-accent-hover);}.date-time-part.is-active{background: var(--date-accent-active);box-shadow: inset 0 0 0 1px var(--date-accent-subtle);}.date-time-sep{color: var(--date-muted-strong);font-weight: 800;opacity: .9;}.date-time-range-sep{color: var(--date-muted-strong);font-weight: 800;opacity: .9;margin: 0 .35rem;}.date-clock{display: grid;place-items: center;padding: .25rem 0;width: 100%;}.date-clock-face{position: relative;width: min(100%,220px);aspect-ratio: 1;border-radius: 50%;background: radial-gradient(circle at center,rgba(255,255,255,.12),rgba(255,255,255,.07) 56%,rgba(255,255,255,.05) 57%,rgba(255,255,255,.05) 100%);border: 1px solid rgba(255,255,255,.08);box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);}.date-clock-hand{position: absolute;left: 50%;top: 50%;width: 2px;height: 28%;background: linear-gradient(to bottom,var(--date-accent),rgba(129,140,248,.55));transform-origin: 50% 100%;border-radius: var(--date-radius-pill);pointer-events: none;}.date-clock-center{position: absolute;left: 50%;top: 50%;width: 9px;height: 9px;margin-left: -4.5px;margin-top: -4.5px;border-radius: 50%;background: var(--date-accent);box-shadow: 0 0 0 3px rgba(129,140,248,.14);pointer-events: none;}.date-clock-option{position: absolute;transform: translate(-50%,-50%);width: 1.8rem;height: 1.8rem;border: 0;border-radius: 50%;background: transparent;color: #f5f3ff;font: 700 .78rem/1 system-ui;cursor: pointer;display: inline-flex;align-items: center;justify-content: center;transition: transform .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease;}.date-clock-option:hover{background: rgba(129,140,248,.18);box-shadow: 0 0 0 3px rgba(129,140,248,.1);transform: translate(-50%,-50%) scale(1.05);}.date-clock-option.is-inner{font-size: .7rem;color: rgba(245,243,255,.85);}.date-clock-option.is-tick{width: .34rem;height: .34rem;font-size: 0;border-radius: var(--date-radius-pill);background: rgba(255,255,255,.16);box-shadow: none;}.date-clock-option.is-active{background: var(--date-accent);color: #fff;box-shadow: 0 0 0 4px rgba(129,140,248,.14);transform: translate(-50%,-50%) scale(1.06);}.date-clock-option.is-tick.is-active{background: rgba(129,140,248,.88);box-shadow: 0 0 0 4px rgba(129,140,248,.14);}.date-clock-caption{margin-top: .25rem;color: var(--date-muted);font: 700 .78rem/1 system-ui;letter-spacing: .08em;text-transform: uppercase;}.date-overlay-time{display: inline-flex;align-items: center;gap: .1rem;flex-wrap: wrap;}.date-footer{display: flex;justify-content: flex-end;gap: .35rem;padding-top: .5rem;border-top: 1px solid var(--date-border);}.date-action{padding: .45rem 1rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-pill);color: inherit;font: 600 .82rem/1 system-ui;cursor: pointer;}.date-action:hover{background: var(--date-accent-hover);}.date-action--primary{background: var(--date-accent);border-color: transparent;color: var(--date-accent-text);}.date-action--primary:hover{background: var(--date-accent);filter: brightness(1.1);}.date-overlay{position: absolute;inset: .5rem;display: flex;align-items: center;justify-content: center;background: var(--date-overlay-bg);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);border-radius: 14px;z-index: 10;padding: .25rem;}.date-overlay-panel{width: min(100%,360px);max-height: calc(100% - .5rem);display: grid;gap: .5rem;padding: .65rem;background: rgba(17,24,39,.98);border: 1px solid var(--date-border);border-radius: 18px;box-shadow: 0 20px 40px rgba(0,0,0,.28);overflow: auto;}.date-overlay-header{display: flex;justify-content: space-between;align-items: center;gap: .5rem;color: var(--date-fg);}.date-overlay-title{font: 700 .72rem/1 system-ui;text-transform: uppercase;letter-spacing: .08em;color: var(--date-muted);}.date-overlay-nav{display: inline-flex;gap: .25rem;}.date-overlay-nav button{width: 1.8rem;height: 1.8rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-pill);color: var(--date-fg);font: 1rem/1 system-ui;cursor: pointer;display: inline-flex;align-items: center;justify-content: center;}.date-overlay-nav button:hover{background: var(--date-accent-hover);}.date-overlay-grid{display: grid;gap: .4rem;grid-template-columns: repeat(3,minmax(0,1fr));}.date-overlay-pill{min-height: 38px;padding: .45rem .55rem;background: var(--date-surface);border: 1px solid var(--date-border);border-radius: var(--date-radius-md);color: var(--date-fg);font: 600 .82rem/1 system-ui;cursor: pointer;text-transform: capitalize;}.date-overlay-pill:hover{background: var(--date-accent-hover);}.date-overlay-pill[data-active="1"]{background: var(--date-accent);border-color: transparent;color: var(--date-accent-text);}

/* ─── /assets/modules/overlay.css ─── */
@layer mm{:root{--overlay-backdrop: rgba(8,12,20,.5);--overlay-sheet-radius: var(--radius-lg,16px);--overlay-sheet-max-h: 85vh;}}.overlay-backdrop{position: fixed;inset: 0;background: var(--overlay-backdrop);opacity: 0;transition: opacity .22s ease;-webkit-tap-highlight-color: transparent;}.overlay-backdrop.is-open{opacity: 1;}.overlay-sheet.overlay-sheet{position: fixed;left: 10px;right: 10px;bottom: 10px;top: auto;width: auto;max-width: 100%;min-width: 0;max-height: var(--overlay-sheet-max-h);overflow-y: auto;-webkit-overflow-scrolling: touch;border-radius: var(--overlay-sheet-radius);padding-bottom: max(env(safe-area-inset-bottom,0px),.5rem);box-shadow: 0 -8px 30px rgba(0,0,0,.25);transform: translateY(100%);transition: transform .26s cubic-bezier(.32,.72,0,1);}.overlay-sheet.overlay-sheet.is-open{transform: translateY(0);}.overlay-sheet::before{content: "";display: block;width: 2.25rem;height: .28rem;margin: .5rem auto .25rem;border-radius: 999px;background: var(--color-border-strong,rgba(128,128,128,.55));flex: none;}@media (prefers-reduced-motion: reduce){.overlay-backdrop,.overlay-sheet{transition: none;}}

/* ─── /assets/modules/bottom-sheet.css ─── */
@layer mm{.sheet-backdrop{--sheet-backdrop: rgba(0,0,0,.45);}.sheet{--sheet-bg: var(--color-bg-elev,#fff);--sheet-fg: var(--color-fg,#1a1a1a);--sheet-border: var(--color-border,#d9d9d9);--sheet-handle: var(--color-border-strong,#b8b8b8);--sheet-handle-active: var(--color-fg-muted,#666);--sheet-focus: var(--color-primary,#1e2a3a);--sheet-shadow: rgba(0,0,0,.18);}}.sheet-backdrop{position: fixed;inset: 0;background: var(--sheet-backdrop);opacity: 0;transition: opacity 250ms ease-out;pointer-events: auto;}.sheet-backdrop.is-open{opacity: 1;}.sheet{position: fixed;left: 0;right: 0;bottom: 0;max-height: 85dvh;background: var(--sheet-bg);color: var(--sheet-fg);border-radius: 18px 18px 0 0;box-shadow: 0 -8px 32px var(--sheet-shadow);transform: translateY(100%);transition: transform 250ms ease-out;display: flex;flex-direction: column;overflow: hidden;padding-bottom: max(16px,env(safe-area-inset-bottom));outline: none;}.sheet.is-open{transform: translateY(0);}.sheet-handle{align-self: center;width: 40px;height: 4px;margin: 10px 0 6px;border-radius: 2px;background: var(--sheet-handle);cursor: grab;flex-shrink: 0;position: relative;}.sheet-handle::before{content: '';position: absolute;inset: -16px -32px;}.sheet-handle:active{cursor: grabbing;background: var(--sheet-handle-active);}.sheet-handle:focus-visible{outline: 2px solid var(--sheet-focus);outline-offset: 4px;}.sheet-title{margin: 4px 20px 12px;font-size: 17px;font-weight: 600;color: var(--sheet-fg);flex-shrink: 0;}.sheet-body{flex: 1 1 auto;overflow-y: auto;padding: 0 20px 16px;-webkit-overflow-scrolling: touch;}.sheet-footer{flex-shrink: 0;padding: 12px 20px 0;border-top: 1px solid var(--sheet-border);background: var(--sheet-bg);}.sheet-footer[hidden]{display: none;}@media (prefers-reduced-motion: reduce){.sheet-backdrop,.sheet{transition: none;}}

/* ─── /assets/modules/loader.css ─── */
.loader{position: absolute;inset: 0;width: var(--loader-size,2.75rem);height: var(--loader-size,2.75rem);margin: auto;border-radius: 50%;border: 3px solid var(--loader-track,rgba(255,255,255,.2));border-top-color: var(--loader-color,#fff);animation: spin var(--loader-speed,0.65s) linear infinite;animation-play-state: paused;opacity: 0;pointer-events: none;transition: opacity var(--dur-fast,0.15s) ease-out;z-index: 1;}[data-loading] > .loader{animation-play-state: running;opacity: 1;}@keyframes spin{to{transform: rotate(360deg);}}@media (prefers-reduced-motion: reduce){.loader{animation-duration: 1.5s;}}

/* ─── /assets/modules/guests.css ─── */
@layer mm{.guests-popup{--guests-bg: var(--color-bg-elev,#fff);--guests-border: var(--color-border,#d9d9d9);--guests-fg: var(--color-fg,#1a1a1a);--guests-muted: var(--color-fg-muted,#666);--guests-accent: var(--color-primary,#1e2a3a);--guests-accent-text: var(--color-primary-fg,#fff);--guests-accent-hover: color-mix(in srgb,var(--color-primary,#1e2a3a) 15%,transparent);--guests-btn-bg: var(--color-bg-soft,#f7f7f8);--guests-btn-border: var(--color-border,#d9d9d9);--guests-radius: var(--radius-lg,14px);--guests-shadow: var(--shadow-2,0 2px 4px rgba(0,0,0,.06),0 12px 32px rgba(0,0,0,.08));}}@layer mm{.guests-btn[data-guests]{display: flex;align-items: center;justify-content: flex-start;gap: .5rem;width: 100%;min-width: 0;height: auto;padding: .5rem .75rem;background: var(--color-bg,#fff);border: 1px solid var(--color-border,#d9d9d9);border-radius: var(--form-radius,var(--radius-sm,4px));color: var(--color-fg,#1a1a1a);font: inherit;text-align: left;cursor: pointer;user-select: none;}.guests-btn[data-guests]:focus-visible{outline: 2px solid var(--color-primary,#1e2a3a);outline-offset: 2px;}.guests-btn[data-guests][data-empty="1"] .form-field__value{color: var(--color-fg-muted,#666);}}.guests-popup{min-width: 18rem;background: var(--guests-bg);border: 1px solid var(--guests-border);border-radius: var(--guests-radius);box-shadow: var(--guests-shadow);color: var(--guests-fg);font: inherit;overflow: hidden;}.guests-rows{padding: .375rem 0;}.guests-row{display: flex;align-items: center;justify-content: space-between;gap: 1rem;padding: .6rem 1rem;}.guests-row + .guests-row{border-top: 1px solid var(--guests-border);}.guests-row__label{flex: 1;min-width: 0;}.guests-row__name{display: block;font-size: .9rem;font-weight: 600;}.guests-row__sub{display: block;font-size: .78rem;color: var(--guests-muted);margin-top: .1rem;}.guests-row__ctrls{display: flex;align-items: center;gap: .5rem;}@layer mm{.guests-btn{display: flex;align-items: center;justify-content: center;width: 2rem;height: 2rem;border: 1px solid var(--guests-btn-border);border-radius: 50%;background: var(--guests-btn-bg);color: var(--guests-fg);font: inherit;font-size: 1.15rem;line-height: 1;cursor: pointer;user-select: none;transition: background .15s,border-color .15s;}.guests-btn:hover:not(:disabled){background: var(--guests-accent-hover);border-color: var(--guests-accent);}.guests-btn:focus-visible{outline: 2px solid var(--guests-accent);outline-offset: 2px;}.guests-btn:disabled{opacity: .3;cursor: not-allowed;}}.guests-count{min-width: 1.5rem;text-align: center;font-size: .9rem;font-weight: 600;}.guests-footer{display: flex;gap: .5rem;padding: .6rem 1rem;border-top: 1px solid var(--guests-border);}.guests-footer__btn{flex: 1;padding: .45rem .75rem;border-radius: calc(var(--guests-radius) - 4px);font: inherit;font-size: .875rem;font-weight: 500;cursor: pointer;transition: opacity .15s;}.guests-footer__btn:hover{opacity: .85;}.guests-footer__btn:focus-visible{outline: 2px solid var(--guests-accent);outline-offset: 2px;}.guests-footer__btn--secondary{background: transparent;border: 1px solid var(--guests-btn-border);color: var(--guests-muted);}.guests-footer__btn--primary{background: var(--guests-accent);border: 1px solid transparent;color: var(--guests-accent-text);}

/* ─── /assets/modules/custom-select.css ─── */
select.select{position: absolute;opacity: 0;pointer-events: none;width: 1px;height: 1px;margin: 0;padding: 0;border: 0;}.select-display{position: relative;display: flex;width: 100%;align-items: center;justify-content: space-between;gap: .5rem;min-width: 0;padding: .5rem .75rem;background: var(--color-bg,#fff);border: 1px solid var(--color-border,#d9d9d9);border-radius: var(--form-radius,var(--radius-sm,4px));color: var(--color-fg,#1a1a1a);font: inherit;cursor: pointer;user-select: none;}.select-display:focus-visible{outline: 2px solid var(--color-primary,#1e2a3a);outline-offset: 2px;}.select-display[aria-expanded="true"]{border-color: var(--color-primary,#1e2a3a);}.select-display[data-empty="1"] .select-label{color: var(--color-fg-muted,#666);}.select-arrow{width: 0;height: 0;border-left: 4px solid transparent;border-right: 4px solid transparent;border-top: 5px solid currentColor;opacity: .6;transition: transform 120ms;}.select-display[aria-expanded="true"] .select-arrow{transform: scaleY(-1);}.select-dropdown{background: var(--color-bg-elev,#fff);color: var(--color-fg,#1a1a1a);border: 1px solid var(--color-border,#d9d9d9);border-radius: var(--radius-sm,4px);box-shadow: 0 4px 18px rgba(0,0,0,.25);z-index: 1000;min-width: 12rem;max-width: min(100vw - 16px,480px);max-height: min(60vh,24rem);display: flex;flex-direction: column;overflow: hidden;}.select-search{padding: .35rem;border-bottom: 1px solid var(--color-border,#d9d9d9);}.select-search input{width: 100%;padding: .35rem .55rem;background: transparent;border: 1px solid var(--color-border,#d9d9d9);border-radius: var(--radius-sm,4px);color: inherit;font: inherit;outline: none;}.select-search input:focus{border-color: var(--color-primary,#1e2a3a);}.select-options{overflow-y: auto;scrollbar-width: thin;}.select-group{padding: .35rem .75rem;font-size: .8em;font-weight: 600;color: var(--color-fg-muted,#666);text-transform: uppercase;letter-spacing: .03em;}.select-option{padding: .4rem .75rem;cursor: pointer;white-space: normal;overflow-wrap: anywhere;line-height: 1.4;user-select: none;transition: background-color 80ms,color 80ms;display: flex;align-items: center;gap: .5rem;}.select-flag{width: 1.25rem;height: .9rem;flex-shrink: 0;object-fit: cover;border-radius: 2px;box-shadow: 0 0 0 1px rgba(0,0,0,.08);}.select-label{display: inline-flex;align-items: center;gap: .5rem;}.select-option--in-group{padding-left: 1.25rem;}.select-dropdown--nowrap .select-option{white-space: nowrap;overflow-wrap: normal;}.select-option:hover,.select-option[data-highlighted="1"]{background: var(--color-primary,#1e2a3a);color: var(--color-primary-fg,#fff);}.select-option[data-selected="1"]{font-weight: 600;}.select-option[data-disabled="1"]{opacity: .5;cursor: not-allowed;pointer-events: none;}

/* ─── /assets/modules/site-header.css ─── */
.site-header{position: relative;}.site-header--sticky{position: sticky;top: 0;z-index: 100;background: var(--surface,var(--bg,#fff));box-shadow: 0 1px 12px rgba(0,0,0,.06);}.site-nav-toggle{display: none;align-items: center;justify-content: center;box-sizing: content-box;width: 24px;height: 18px;padding: 10px;margin: -10px;border: 0;background: transparent;color: var(--ink,var(--fg,#1a1a1a));cursor: pointer;-webkit-appearance: none;appearance: none;border-radius: 6px;}.site-nav-toggle:focus-visible{outline: 2px solid var(--accent,#0a7c5a);outline-offset: 2px;}.site-nav-toggle__bars{position: relative;display: block;width: 24px;height: 18px;}.site-nav-toggle__bars span{position: absolute;left: 0;display: block;width: 100%;height: 2px;background: currentColor;border-radius: 2px;transition: top .2s ease,transform .2s ease,opacity .2s ease;}.site-nav-toggle__bars span:nth-child(1){top: 0;}.site-nav-toggle__bars span:nth-child(2){top: 8px;}.site-nav-toggle__bars span:nth-child(3){top: 16px;}body[data-menu-open="true"] .site-nav-toggle__bars span:nth-child(1){top: 8px;transform: rotate(45deg);}body[data-menu-open="true"] .site-nav-toggle__bars span:nth-child(2){opacity: 0;}body[data-menu-open="true"] .site-nav-toggle__bars span:nth-child(3){top: 8px;transform: rotate(-45deg);}@media (max-width: 767px){.site-nav-toggle{display: inline-flex;}.site-nav{position: absolute;top: 100%;left: 0;right: 0;z-index: 60;flex-direction: column;flex-wrap: nowrap;align-items: stretch;gap: 0;padding: .25rem 1.5rem 1rem;background: var(--surface,var(--bg,#fff));border-bottom: 1px solid var(--line,rgba(0,0,0,.12));box-shadow: 0 10px 24px rgba(0,0,0,.12);max-height: calc(100vh - 100%);max-height: calc(100dvh - 100%);overflow-y: auto;overscroll-behavior: contain;-webkit-overflow-scrolling: touch;opacity: 0;visibility: hidden;transform: translateY(-.5rem);transition: opacity .2s ease,transform .2s ease,visibility 0s linear .2s;}body[data-menu-open="true"] .site-nav{opacity: 1;visibility: visible;transform: none;transition: opacity .2s ease,transform .2s ease,visibility 0s;}.site-nav a{padding: .8rem .25rem;font-size: 1rem;border-bottom: 1px solid var(--line,rgba(0,0,0,.08));}.site-nav a:last-child{border-bottom: 0;}}@media (prefers-reduced-motion: reduce){.site-nav,.site-nav-toggle__bars span{transition: none;}}html[data-nav="drawer"] .site-nav-toggle{display: inline-flex;}@media (max-width: 767px){html[data-nav="drawer"] .site-nav{display: none;}}.site-drawer{position: fixed;top: 0;right: 0;bottom: 0;left: auto;z-index: 120;display: flex;flex-direction: column;align-items: stretch;width: min(320px,85vw);margin: 0;padding: 5rem 1.5rem 1.5rem;background: var(--surface,var(--bg,#fff));box-shadow: -8px 0 28px rgba(0,0,0,.18);overflow-y: auto;-webkit-overflow-scrolling: touch;transform: translateX(100%);visibility: hidden;transition: transform .28s cubic-bezier(.4,0,.2,1),visibility 0s linear .28s;}body[data-menu-open="true"] .site-drawer{transform: none;visibility: visible;transition: transform .28s cubic-bezier(.4,0,.2,1),visibility 0s;}.site-drawer a{padding: .85rem .25rem;font-size: 1.05rem;color: inherit;text-decoration: none;border-bottom: 1px solid var(--line,rgba(0,0,0,.08));}.site-drawer a:last-child{border-bottom: 0;}html[data-nav="drawer"] body::after{content: "";position: fixed;inset: 0;z-index: 90;background: rgba(0,0,0,.45);opacity: 0;visibility: hidden;transition: opacity .28s ease,visibility 0s linear .28s;}html[data-nav="drawer"] body[data-menu-open="true"]::after{opacity: 1;visibility: visible;transition: opacity .28s ease,visibility 0s;}@media (prefers-reduced-motion: reduce){.site-drawer,html[data-nav="drawer"] body::after{transition: none;}}

/* ─── /assets/modules/lang-switcher.css ─── */
.lang-switcher{--lang-switcher-gap: 0.5rem;--lang-switcher-bg: #fff;--lang-switcher-fg: inherit;--lang-switcher-border: rgba(0,0,0,0.12);--lang-switcher-radius: 0.5rem;--lang-switcher-hover: rgba(0,0,0,0.06);position: relative;display: inline-block;}.lang-switcher__toggle{display: inline-flex;align-items: center;gap: 0.35rem;cursor: pointer;list-style: none;user-select: none;color: var(--lang-switcher-fg);}.lang-switcher__toggle::-webkit-details-marker{display: none;}.lang-switcher__caret{width: 0.45rem;height: 0.45rem;flex: none;transition: transform 0.15s ease;}.lang-switcher[open] .lang-switcher__caret{transform: rotate(180deg);}.lang-switcher__menu{position: absolute;right: 0;z-index: 40;min-width: max-content;margin: var(--lang-switcher-gap) 0 0;padding: 0.25rem;list-style: none;background: var(--lang-switcher-bg);border: 1px solid var(--lang-switcher-border);border-radius: var(--lang-switcher-radius);box-shadow: 0 6px 24px rgba(0,0,0,0.12);}.lang-switcher__item{display: flex;align-items: center;gap: 0.5rem;padding: 0.4rem 0.6rem;border-radius: calc(var(--lang-switcher-radius) - 0.25rem);text-decoration: none;color: var(--lang-switcher-fg);white-space: nowrap;}.lang-switcher__item:hover,.lang-switcher__item:focus-visible{background: var(--lang-switcher-hover);}.lang-switcher__flag{display: block;width: 20px;height: 20px;border-radius: 2px;object-fit: cover;flex: none;}.lang-switcher__name{flex: 1;}.lang-switcher__iso{font-size: 0.85em;opacity: 0.6;}.lang-switcher__check{margin-left: 0.25rem;font-weight: 700;}.lang-switcher__item.is-active{font-weight: 600;}
