/* App workspace is scoped, responsive and entirely self-contained. */
#app{--app-pine:#193e35;--app-pine-light:#ebf2ec;--app-ink:#243b34;--app-muted:#52655c;--app-cream:#fbfaf6;--app-border:#dbe3d9;--app-gold:#aa7c37;--app-red:#852a23;color:var(--app-ink);font-family:inherit;line-height:1.6}
#app *,#app *::before,#app *::after{box-sizing:border-box}
#app .app-wrap{width:min(1180px,calc(100% - 64px));margin:32px auto 88px}
#app p{margin:0 0 16px}#app h1,#app h2,#app h3{font-family:Georgia,'Times New Roman',serif;color:var(--app-pine);line-height:1.17;letter-spacing:-.025em;margin:0 0 16px;font-weight:500}
#app .app-heading>h2,#app .app-heading>div>h2{font-size:clamp(34px,4.7vw,58px)}#app h2{font-size:clamp(25px,2.8vw,32px)}#app h3{font-size:24px}
#app a{color:var(--app-pine);text-underline-offset:4px}#app a:hover{text-decoration-thickness:2px}
#app button,#app input,#app select,#app textarea{font:inherit}#app button{cursor:pointer}#app button:disabled{cursor:not-allowed;opacity:.55}
#app :focus-visible{outline:3px solid #b57c23;outline-offset:4px}#app [tabindex="-1"]:focus{outline:none}
#app .app-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}
#app [hidden]{display:none!important}
#app .app-preview{display:flex;align-items:flex-start;gap:13px;border:1px solid #d9dcca;background:#f3f1e3;border-radius:13px;padding:17px 21px;font-size:13px;color:#4a4f35}
#app .app-preview strong{display:block;letter-spacing:.01em}#app .app-preview p{font-size:13px;line-height:1.5;margin:3px 0 0}#app .app-preview-dot{flex:none;height:8px;width:8px;border-radius:50%;background:#9d782d;margin-top:6px}#app .app-preview-label{margin-left:auto;flex:none;letter-spacing:.12em;font-size:10px;font-weight:700;border:1px solid #c9c8af;padding:4px 9px;border-radius:5px;margin-top:2px}
#app .app-nav{display:flex;gap:28px;padding:26px 0 0;border-bottom:1px solid var(--app-border);overflow:auto}
#app .app-nav a{display:block;flex:none;padding:0 0 14px;font-size:14px;font-weight:650;color:var(--app-muted);text-decoration:none;border-bottom:2px solid transparent}
#app .app-nav a[aria-current="page"]{color:var(--app-pine);border-color:var(--app-pine)}
#app .app-login{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:21px 0;border-bottom:1px solid var(--app-border);margin-bottom:38px}
#app .app-login p{font-size:13px;margin:4px 0 0}#app .app-login-form{display:flex;align-items:center;gap:9px;flex:none}#app .app-login-form select{max-width:240px;font-size:13px;min-height:44px;min-width:0;background:transparent}#app .app-login-form button{font-size:13px;min-height:44px;padding:10px 16px}
#app .app-eyebrow{display:block;font-size:10px;letter-spacing:.17em;text-transform:uppercase;font-weight:750;color:#66785b;margin-bottom:11px;line-height:1.5}
#app .app-role{display:inline-block;border:1px solid var(--app-border);background:#f1f4ed;border-radius:5px;padding:0 5px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;margin-left:5px}
#app .app-heading{max-width:760px;margin:0 0 32px}#app .app-heading>p,#app .app-heading>div>p{font-size:16px;line-height:1.8;color:var(--app-muted);max-width:690px}
#app .app-heading--split{max-width:none;display:flex;justify-content:space-between;align-items:center;gap:26px}#app .app-heading--split h2{font-size:clamp(34px,4vw,48px)}#app .app-heading--split .app-button{flex:none}
#app .app-notice{border:1px solid #c6d9cc;background:#edf4ee;border-radius:10px;padding:14px 18px;color:#305541;font-size:14px;margin:0 0 24px;overflow-wrap:anywhere}
#app .app-notice p{margin:4px 0 0}#app .app-notice--error{background:#fff0ed;border-color:#e4bdb5;color:var(--app-red)}#app .app-notice--info{background:#f3f4eb;border-color:#dce0cc;color:#566246}
#app .app-steps{display:flex;list-style:none;gap:14px;padding:0;margin:0 0 28px;font-size:12px;color:var(--app-muted)}
#app .app-steps li{display:flex;align-items:center;gap:8px;flex:1;white-space:nowrap;padding:14px 0;border-top:1px solid var(--app-border)}#app .app-steps li.is-active{border-color:var(--app-pine);color:var(--app-pine)}#app .app-steps li span{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#e9eee4;border-radius:50%;font-size:11px}#app .app-steps li.is-active span{background:var(--app-pine);color:white}
#app .app-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}#app .app-layout--admin{grid-template-columns:minmax(0,1fr) 365px}
#app .app-card{background:#fff;border:1px solid var(--app-border);border-radius:18px;padding:32px;margin-bottom:24px;box-shadow:0 4px 14px #203b3210}
#app .app-aside .app-card{margin-bottom:18px}#app .app-soft-card{background:#eff2e9;border:1px solid #e1e6d8;border-radius:16px;padding:28px;margin-bottom:24px}#app .app-soft-card p{font-size:14px;color:var(--app-muted)}#app .app-soft-card a{font-size:13px;font-weight:650}#app .app-soft-card h3{font-size:27px}
#app .app-section-heading{display:flex;align-items:flex-start;gap:15px;margin-bottom:25px}#app .app-section-heading h2{font-size:28px;margin-bottom:5px}#app .app-section-heading p{font-size:13px;color:var(--app-muted);margin:0}#app .app-section-heading--line{margin-top:32px;padding-top:30px;border-top:1px solid var(--app-border)}#app .app-step-number{display:block;color:var(--app-gold);font-size:12px;border:1px solid #d9cfb6;width:35px;height:35px;line-height:33px;text-align:center;border-radius:50%;flex:none;margin-top:2px}
#app .app-field{margin:0 0 21px;min-width:0}#app .app-field label{display:block;font-size:13px;font-weight:650;color:var(--app-ink);margin-bottom:8px}
#app input:not([type="checkbox"]):not([type="radio"]),#app select,#app textarea{display:block;width:100%;background:#fff;border:1px solid #bac7bb;border-radius:8px;padding:11px 12px;min-height:46px;color:var(--app-ink);font-size:14px;line-height:1.5}
#app input::placeholder,#app textarea::placeholder{color:#6a756d}#app textarea{resize:vertical;min-height:110px}#app select{padding-right:24px;cursor:pointer}
#app .app-help{font-size:12px!important;color:var(--app-muted);line-height:1.65;margin:7px 0 0!important}#app .app-form-row{display:flex;gap:18px}#app .app-form-row>*{flex:1;min-width:0}
#app .app-mode{display:flex;gap:12px;padding:0;margin:0 0 25px;border:0}#app .app-mode legend{font-size:13px;font-weight:650;margin-bottom:10px}
#app .app-mode-option{position:relative;flex:1;display:flex;align-items:center;gap:11px;padding:17px 15px;border:1px solid var(--app-border);border-radius:10px;cursor:pointer;background:#fff}#app .app-mode-option.is-selected{border-color:#4e7561;background:#f1f6ef;box-shadow:inset 0 0 0 1px #4e7561}#app .app-mode-option input{width:16px;height:16px;margin:0;accent-color:var(--app-pine);flex:none}#app .app-mode-option strong{display:block;font-size:14px;font-weight:650}#app .app-mode-option small{display:block;font-size:11px;color:var(--app-muted);margin-top:2px}#app .app-mode-icon{font-size:24px;line-height:1;color:#70805c}
#app .app-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}#app .app-slot{padding:14px 9px;border:1px solid #cbd4c7;border-radius:9px;background:#fff;text-align:center;color:var(--app-pine);min-height:72px;transition:background .15s,border-color .15s}#app .app-slot strong{display:block;font-size:14px;font-weight:650}#app .app-slot span{display:block;font-size:10px;color:var(--app-muted);margin-top:4px}#app .app-slot:hover:not(:disabled){background:#eef5eb;border-color:#5b7b58}#app .app-slot.is-selected{background:var(--app-pine);border-color:var(--app-pine);color:#fff}#app .app-slot.is-selected span{color:#dae6d8}#app .app-slot:disabled{background:#f1f1ed;border-color:#e2e5da;opacity:.65}
#app .app-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:var(--app-pine);color:white;border:1px solid var(--app-pine);border-radius:8px;padding:13px 20px;min-height:48px;font-size:13px;font-weight:650;line-height:1.5;text-align:center;text-decoration:none;transition:background .15s,transform .15s}
#app .app-button:hover:not(:disabled){background:#2c5748;text-decoration:none}#app .app-button--secondary{color:var(--app-pine);background:#fff;border-color:#b8c6b7}#app .app-button--secondary:hover:not(:disabled){background:#edf3e9}#app .app-button--quiet{padding:9px 13px;min-height:40px;background:transparent;color:var(--app-pine);border-color:#c4d1bf;font-size:12px}#app .app-button--quiet:hover:not(:disabled){background:#edf3e9}
#app .app-actions{display:flex;align-items:center;gap:16px;margin-top:24px;flex-wrap:wrap}#app .app-actions .app-help{flex:1;min-width:180px}#app .app-back{background:none;border:0;color:var(--app-pine);font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:5px 0;min-height:34px}#app #back-to-times{margin:-7px 0 24px}
#app .app-summary{background:#f7f8f2}#app .app-summary h2{font-size:30px}#app dl{margin:0}#app .app-summary dl>div{padding:15px 0;border-bottom:1px solid var(--app-border)}#app dt{font-size:11px;color:var(--app-muted);margin-bottom:4px}#app dd{font-size:14px;font-weight:650;margin:0;overflow-wrap:anywhere}#app .app-summary-note{display:flex;gap:13px;margin-top:25px}#app .app-summary-note>span{font-size:26px;line-height:1.1;color:#7d8c67}#app .app-summary-note p{font-size:12px;color:var(--app-muted);margin:0}
#app .app-review-details{margin:4px 0 25px}#app .app-review-details>div{display:flex;justify-content:space-between;gap:24px;padding:14px 0;border-bottom:1px solid var(--app-border)}#app .app-review-details dt{flex:1;font-size:12px;margin:0}#app .app-review-details dd{flex:1.6;text-align:right;font-size:14px}
#app .app-check{display:flex;align-items:flex-start;gap:11px;font-size:13px;color:var(--app-muted);margin:22px 0;line-height:1.7;cursor:pointer}#app .app-check input{accent-color:var(--app-pine);width:18px;height:18px;flex:none;margin:2px 0 0}#app .app-confirm-actions{display:flex;flex-direction:column;gap:10px}#app .app-confirm-actions .app-button span{font-size:11px}
#app .app-success{max-width:760px;margin:0 auto;text-align:center;padding:44px 54px}#app .app-success h2{font-size:46px}#app .app-success-mark{display:flex;align-items:center;justify-content:center;margin:0 auto 26px;width:64px;height:64px;font-size:30px;border-radius:50%;background:#e4efdf;color:var(--app-pine)}#app .app-success .app-actions{justify-content:center}#app .app-success>p{color:var(--app-muted);font-size:14px}#app .app-success .app-review-details{text-align:left;margin:28px 0}
#app .app-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 26px}#app .app-stat{padding:22px 28px;background:#eff3e8;border:1px solid #dce3d5;border-radius:13px}#app .app-stat>span{font-size:12px;color:var(--app-muted)}#app .app-stat strong{display:block;font-family:Georgia,serif;font-size:48px;line-height:1.1;font-weight:400;color:var(--app-pine);margin:11px 0}#app .app-stat strong.app-stat-word{font-size:34px;line-height:1.55}#app .app-stat small{font-size:11px;color:var(--app-muted)}
#app .app-card-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}#app .app-card-heading h2,#app .app-card-heading h3{margin-bottom:0}#app .app-card-heading .app-field{margin:0;min-width:220px;max-width:250px}#app .app-card-heading .app-eyebrow{margin-bottom:8px}
#app .app-booking-list{display:flex;flex-direction:column}#app .app-booking{display:flex;align-items:flex-start;gap:20px;padding:23px 0;border-top:1px solid var(--app-border)}#app .app-booking:last-child{padding-bottom:0}#app .app-booking-date{width:62px;flex:none;display:flex;flex-direction:column;align-items:center;border:1px solid #d6dfce;border-radius:9px;background:#f3f6ed;padding:8px 12px;color:var(--app-pine)}#app .app-booking-date strong{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.3}#app .app-booking-date span{text-transform:uppercase;font-size:10px;letter-spacing:.07em}#app .app-booking-main{flex:1;min-width:0}#app .app-booking-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:9px}#app .app-booking-title h3{font-family:inherit;font-size:15px;letter-spacing:0;font-weight:650;margin:0}#app .app-booking-main>p{font-size:13px;margin:0 0 2px}#app .app-booking-ref{display:block;font-size:10px;color:var(--app-muted);overflow-wrap:anywhere;margin-top:9px}#app .app-booking-actions{display:flex;flex-direction:column;gap:8px;max-width:190px;flex:none}
#app .app-pill{display:inline-block;flex:none;font-size:9px;text-transform:uppercase;letter-spacing:.08em;line-height:1.6;padding:4px 8px;border:1px solid #d7ddce;background:#f0f2e9;color:#697256;border-radius:4px}#app .app-pill--green{background:#e5f1e6;border-color:#bcd6bd;color:#3d6846}
#app .app-empty{padding:25px 0;color:var(--app-muted);font-size:14px;grid-column:1/-1}#app .app-empty h3{font-size:27px}#app .app-empty p{margin-bottom:10px}#app .app-empty a{font-size:13px;font-weight:650}
#app .app-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}#app .app-package{border:1px solid #d4ddcd;border-radius:12px;padding:24px;background:#fbfcf7}#app .app-package h3{font-family:inherit;font-size:15px;font-weight:650;letter-spacing:0;line-height:1.5}#app .app-package .app-package-count{font-family:Georgia,serif;font-size:38px;color:var(--app-pine);line-height:1.3;margin:0 0 12px}#app .app-package-count span{display:block;font-family:inherit;font-size:14px;color:var(--app-muted)}#app .app-package>p:not(.app-package-count){font-size:12px;color:var(--app-muted)}#app .app-package .app-button{width:100%;padding:12px 9px;font-size:12px}
#app .app-table-scroll{overflow:auto}#app .app-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:15px}#app .app-table th{text-align:left;font-size:10px;color:var(--app-muted);text-transform:uppercase;letter-spacing:.09em;font-weight:650}#app .app-table td,#app .app-table th{padding:12px 8px;border-bottom:1px solid #d7dfce;vertical-align:top;overflow-wrap:anywhere}#app .app-table td:last-child{font-size:10px;max-width:400px}#app .app-payment-table{table-layout:fixed}#app .app-payment-table small{display:block;font-size:10px;color:var(--app-muted);margin-top:3px}#app .app-payment-table strong{font-size:12px;font-weight:650}
#app .app-gate{padding:40px;max-width:780px}#app .app-gate>p{color:var(--app-muted)}#app .app-loading{color:var(--app-muted);font-size:14px;padding:20px;grid-column:1/-1}
#app .app-admin-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f0f2e6;border:1px solid #dfe3cc;border-radius:13px;padding:20px 24px;margin-bottom:24px;font-size:14px}#app .app-admin-banner p{font-size:12px;margin:3px 0 0;color:var(--app-muted)}
#app .app-admin-tabs{display:flex;gap:7px;border-bottom:1px solid var(--app-border);margin-bottom:28px;overflow:auto}#app .app-admin-tabs button{flex:none;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--app-muted);padding:12px 18px;font-size:12px;min-height:47px}#app .app-admin-tabs button.is-active{border-bottom-color:var(--app-pine);color:var(--app-pine);font-weight:650;background:#eff3e9;border-radius:8px 8px 0 0}
#app .app-publish .app-button{width:100%;margin-bottom:12px}#app .app-publish .app-check{font-size:12px}#app .app-mini-preview{background:#f7f7ed;border:1px solid #e3e4d3;border-radius:10px;padding:20px;margin:20px 0}#app .app-mini-preview h3{font-size:25px}#app .app-mini-preview p{font-size:12px;color:var(--app-muted);white-space:pre-wrap;margin:0}#app .app-mini-preview .app-eyebrow{font-size:8px}
#app .app-version-list>div{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;padding:14px 0;border-top:1px solid #d9e0ce}#app .app-version-list small{display:block;font-size:9px;overflow-wrap:anywhere;color:var(--app-muted)}#app .app-version-list .app-back{font-size:10px;flex:none}
#app .app-rate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}#app .app-divider{border-top:1px solid var(--app-border);margin:28px 0}#app .app-package-editor{border:1px solid #d9e0d2;background:#f9faf5;border-radius:10px;padding:20px;margin:18px 0}#app .app-package-editor legend{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#6d795d;padding:0 7px}#app .app-package-editor>.app-field:last-child{margin-bottom:0}
#app .app-block-list>div{display:flex;flex-direction:column;border-top:1px solid #d8e0cd;padding:17px 0;font-size:13px}#app .app-block-list small{color:var(--app-muted);font-size:11px;margin-top:2px}#app .app-block-list+ p{margin-top:15px!important}#app .app-launch-gates ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px;padding-left:20px;font-size:13px;color:var(--app-muted)}
#app .app-footnote{display:flex;align-items:flex-start;gap:24px;padding:24px 0;border-top:1px solid var(--app-border);font-size:12px;color:var(--app-muted);margin-top:18px}#app .app-footnote strong{flex:none;color:var(--app-pine);font-size:11px;text-transform:uppercase;letter-spacing:.1em}
#app .app-page-section{border:1px solid #d9e0d2;border-radius:10px;background:#f9faf5;padding:20px;margin:24px 0}#app .app-page-section legend{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:650;color:var(--app-muted);padding:0 8px}#app .app-page-section .app-field:last-child{margin-bottom:0}#app .app-route-row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;font-size:11px;margin:0 0 20px}#app .app-route-label{font-size:11px;overflow-wrap:anywhere;margin:0}#app .app-route-label code{background:#edf2e7;border-radius:4px;padding:3px 6px;font-size:10px;color:var(--app-muted)}
@media(max-width:1000px){#app .app-layout,#app .app-layout--admin{grid-template-columns:minmax(0,1fr) 290px}#app .app-card{padding:26px}#app .app-login{align-items:flex-start}#app .app-mode-icon{display:none}#app .app-booking{flex-wrap:wrap}#app .app-booking-actions{flex-direction:row;margin-left:82px;max-width:none}#app .app-package-grid{grid-template-columns:repeat(2,1fr)}#app .app-login-form select{max-width:190px}}
@media(max-width:800px){#app .app-layout,#app .app-layout--admin{grid-template-columns:1fr}#app .app-aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}#app .app-aside>.app-card,#app .app-aside>.app-soft-card{margin:0}#app .app-login{flex-wrap:wrap;gap:16px;margin-bottom:30px}#app .app-login-form{width:100%}#app .app-login-form select{max-width:none;flex:1}#app .app-heading--split{align-items:flex-start;flex-direction:column;gap:10px}#app .app-summary-note{margin-top:17px}#app .app-card-heading .app-field{max-width:240px;min-width:160px}#app .app-card-heading{align-items:flex-start}#app .app-stat-grid{gap:12px}#app .app-stat{padding:20px}#app .app-stat strong.app-stat-word{font-size:28px;line-height:1.9}#app .app-preview-label{display:none}}
@media(max-width:580px){#app .app-wrap{width:calc(100% - 32px);margin:20px auto 50px}#app .app-card{padding:24px 20px;border-radius:13px}#app .app-preview{padding:14px 15px;font-size:12px}#app .app-preview p{font-size:11px}#app .app-preview-dot{width:6px;height:6px}#app .app-nav{gap:23px;padding-top:23px}#app .app-nav a{font-size:12px;padding-bottom:12px}#app .app-login{padding:18px 0}#app .app-login-form button{padding:9px 12px}#app .app-heading{margin-bottom:26px}#app .app-heading h2{font-size:38px}#app .app-heading>p,#app .app-heading>div>p{font-size:14px;line-height:1.8}#app .app-eyebrow{font-size:9px}#app .app-steps{gap:10px;font-size:10px;margin-bottom:20px}#app .app-steps li{gap:6px;white-space:normal;align-items:flex-start;padding-top:12px;line-height:1.5}#app .app-steps li span{height:20px;width:20px;flex:none;font-size:9px}#app .app-section-heading h2{font-size:25px}#app .app-mode-option{padding:14px 10px;gap:7px}#app .app-mode-option strong{font-size:13px}#app .app-mode-option small{font-size:10px}#app .app-mode{gap:9px}#app .app-form-row{flex-wrap:wrap;gap:0}#app .app-form-row>.app-field{flex:0 0 100%}#app .app-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}#app .app-slot{padding:12px 5px}#app .app-slot strong{font-size:12px}#app .app-slot span{font-size:9px}#app .app-button{min-height:48px;padding:12px 16px;font-size:12px}#app .app-actions{gap:12px}#app .app-actions>.app-button{width:100%}#app .app-aside{grid-template-columns:1fr}#app .app-soft-card{padding:25px 20px}#app .app-review-details>div{gap:15px}#app .app-review-details dt{font-size:11px}#app .app-review-details dd{font-size:12px}#app .app-success{padding:30px 20px}#app .app-success h2{font-size:36px}#app .app-confirm-actions .app-button{flex-wrap:wrap;gap:4px}#app .app-stat-grid{grid-template-columns:1fr 1fr;gap:10px}#app .app-stat:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}#app .app-stat:last-child strong{grid-column:2;grid-row:1/3;margin:0;text-align:right;font-size:29px;line-height:1.2}#app .app-stat:last-child small{grid-column:1}#app .app-stat{padding:18px}#app .app-stat strong{font-size:40px}#app .app-stat small{font-size:10px}#app .app-card-heading{flex-wrap:wrap;gap:15px}#app .app-card-heading .app-field{width:100%;max-width:none}#app .app-booking{gap:13px;padding:20px 0}#app .app-booking-date{width:49px;padding:7px 9px}#app .app-booking-date strong{font-size:26px}#app .app-booking-title{gap:7px}#app .app-booking-title h3{font-size:14px}#app .app-booking-main>p{font-size:12px}#app .app-booking-actions{margin-left:62px;flex-wrap:wrap;gap:8px}#app .app-booking-actions .app-button{font-size:10px;padding:9px 11px;min-height:40px}#app .app-booking-ref{font-size:9px}#app .app-package-grid{grid-template-columns:1fr}#app .app-package{padding:22px}#app .app-admin-banner{padding:18px;align-items:flex-start}#app .app-admin-banner strong{font-size:12px}#app .app-admin-banner p{font-size:11px}#app .app-admin-banner>.app-pill{display:none}#app .app-admin-tabs{gap:0;margin-bottom:22px}#app .app-admin-tabs button{font-size:11px;padding:10px 14px}#app .app-rate-grid{grid-template-columns:1fr;gap:0}#app .app-package-editor{padding:17px 13px}#app .app-launch-gates ul{grid-template-columns:1fr;gap:9px}#app .app-footnote{flex-direction:column;gap:8px;font-size:11px}#app .app-gate{padding:30px 22px}#app .app-notice{font-size:12px;padding:13px 15px}}
@media(prefers-reduced-motion:reduce){#app *,#app *::before,#app *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:580px){#app .app-login-form{flex-wrap:wrap}#app .app-login-form select{flex:0 0 100%}#app .app-page-section{padding:16px 13px}}

/* Online demonstration tools and content overlays. */
#app .app-demo-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 24px;margin-top:-16px;margin-bottom:12px;border-bottom:1px solid var(--app-border)}
#app .app-demo-tools p{font-size:12px;color:var(--app-muted);margin:0;max-width:560px}
#app .app-demo-tools button{flex:none;font-size:11px}
#app .app-login-form{flex-wrap:wrap;justify-content:flex-end}
.demo-content-notice{width:min(1180px,calc(100% - 64px));margin:24px auto;padding:18px 22px;border:1px solid #d7d9c2;border-radius:10px;background:#f3f1e3;color:#374d3d;font:13px/1.65 system-ui,sans-serif;overflow-wrap:anywhere}
.demo-content-notice strong{display:block;font-size:13px}.demo-content-notice p{margin:5px 0 10px}.demo-content-notice a{color:#193e35;font-weight:600;text-underline-offset:3px}
@media(max-width:800px){#app .app-login-form{justify-content:flex-start}}
@media(max-width:580px){#app .app-demo-tools{flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px;margin-bottom:8px}#app .app-demo-tools button{width:100%}.demo-content-notice{width:calc(100% - 32px);padding:16px 18px;font-size:12px}}

/* Published browser schedules, explicit group prices and credit expiry. */
#app .app-price-breakdown{margin:22px 0;min-width:0}
#app .app-price-breakdown h3{font-family:inherit;font-size:13px;font-weight:650;letter-spacing:0;margin:0 0 8px}
#app .app-price-breakdown .app-review-details{margin:0}
#app .app-price-breakdown .app-review-details>div{padding:9px 0}
#app .app-price-breakdown .app-total-row dt,#app .app-price-breakdown .app-total-row dd{font-weight:750;color:var(--app-pine)}
#app .app-booking .app-price-breakdown{max-width:480px;margin:12px 0}
#app .app-booking .app-price-breakdown .app-review-details dt,#app .app-booking .app-price-breakdown .app-review-details dd{font-size:11px}
#app .app-policy-box{padding:18px 20px;background:#f3f4eb;border:1px solid #dce0cc;border-radius:10px;margin:22px 0;text-align:left}
#app .app-policy-box h3{font-family:inherit;font-size:14px;font-weight:650;letter-spacing:0;margin:0 0 8px}
#app .app-policy-box p{font-size:12px;color:var(--app-muted);margin:0 0 8px}
#app .app-policy-box p:last-child{margin-bottom:0}
#app .app-cancellation-outcome{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#f4f1e7;border:1px solid #dfd5bd;border-radius:8px;margin:14px 0;font-size:12px;overflow-wrap:anywhere}
#app .app-cancellation-outcome strong{font-size:12px;font-weight:650}
#app .app-policy-line{margin-top:10px!important;max-width:560px}
#app .app-credit-lots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}
#app .app-credit-lot{background:#f9fbf5;border:1px solid #d7dfce;border-radius:10px;padding:17px;min-width:0;overflow-wrap:anywhere}
#app .app-credit-lot>strong{display:block;font-size:14px;margin-bottom:8px}
#app .app-credit-lot>p{font-size:12px;margin:0 0 5px}
#app .app-credit-lot>small{display:block;font-size:9px;color:var(--app-muted);margin-top:8px}
#app .app-weekly-ranges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
#app .app-date-overrides{margin:20px 0}
#app .app-date-overrides>div{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;border-top:1px solid var(--app-border);padding:13px 0;font-size:12px}
#app .app-date-overrides small{display:block;color:var(--app-muted);font-size:11px;margin-top:3px}
#app .app-date-overrides button{font-size:11px;flex:none}
#app .app-publish-controls{border-top:1px solid var(--app-border);padding-top:8px;margin-top:20px}
@media(max-width:580px){#app .app-weekly-ranges,#app .app-credit-lots{grid-template-columns:1fr}#app .app-date-overrides>div{flex-wrap:wrap}#app .app-date-overrides button{min-height:40px}#app .app-policy-box{padding:16px}#app .app-price-breakdown .app-review-details>div{gap:12px}#app .app-publish-controls>.app-button{width:100%}}
