/* Real administrator workspace; same paper, forest and serif system as the public site. */
#app[data-view="admin"]{--ra-paper:#f8f5ec;--ra-white:#fffdf7;--ra-ink:#183d36;--ra-muted:#66736b;--ra-line:#dcded0;--real-white:#fffdf7;--real-ink:#183d36;--real-forest:#19473c;--real-muted:#53665c;--real-line:#dcded0;color:var(--ra-ink);font:15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#app[data-view="admin"] *{box-sizing:border-box}
#app[data-view="admin"] [hidden]{display:none!important}
#app .real-auth{background:var(--ra-white);border:1px solid var(--ra-line);border-radius:12px;padding:22px 25px;margin-bottom:28px}
#app .real-auth p:last-child{margin-bottom:0}#app .real-auth-session{display:flex;justify-content:space-between;align-items:center;gap:18px}
#app .real-auth-session>div{min-width:0;overflow-wrap:anywhere}#app .real-auth-session button{flex:none}
#app .real-auth-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(170px,1fr) minmax(150px,1fr) auto;gap:15px;align-items:end}
#app .real-auth-form>.real-check{grid-column:1/-1;margin:0}#app .real-auth-form:has(.real-check)>button{grid-column:1/-1;justify-self:start}
#app .real-auth-form .real-field{margin:0}#app .real-auth-form>.real-auth-message{grid-column:1/-1}
#app .real-auth-switch{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
#app .real-auth-switch button{border:1px solid #c5cbbd;background:transparent;padding:7px 12px;border-radius:6px;min-height:42px;color:var(--ra-ink);font-size:13px}
#app .real-auth-switch button[aria-pressed=true]{background:#19473c;color:#fffdf7;border-color:#19473c}
#app .real-auth-message{margin:12px 0 0;color:#852a23;overflow-wrap:anywhere}
#app .real-eyebrow{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#586a58;margin-bottom:10px}
#app .real-muted,#app .real-help{color:var(--real-muted)}#app .real-help{font-size:13px;line-height:1.65;margin:9px 0 18px}
#app .real-notice{background:#edf2e8;border:1px solid #cdd8c7;border-radius:9px;padding:15px 18px;margin-bottom:22px;color:#305342;overflow-wrap:anywhere;font-size:14px}
#app .real-notice p{margin:6px 0 0}
#app .real-field{margin-bottom:22px;min-width:0}#app .real-field label{display:block;font-size:13px;font-weight:650;margin-bottom:8px}
#app .real-field input,#app .real-field select{display:block;width:100%;min-width:0;min-height:47px;border:1px solid #b9c4b7;border-radius:7px;padding:10px 11px;background:#fff;color:var(--ra-ink);font-size:14px}
#app .real-check{display:flex;align-items:flex-start;gap:11px;cursor:pointer;font-size:13px;color:var(--real-muted);margin:20px 0;line-height:1.7}
#app .real-check input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:#19473c}
#app .real-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:48px;border-radius:7px;border:1px solid #19473c;background:#19473c;color:#fffdf7;padding:12px 18px;text-decoration:none;font-size:13px;line-height:1.6;font-weight:650;text-align:center;cursor:pointer}
#app .real-button--secondary{background:#fff;color:#19473c;border-color:#b8c6b7}#app .real-button:disabled{cursor:wait}
#app .real-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:21px}
#app .real-admin-wrap{max-width:1180px;width:100%;margin:32px auto 70px;min-width:0}
#app .real-admin-heading{max-width:790px;margin-bottom:28px}
#app .real-admin-heading h2{font:normal 46px/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:10px 0 16px;color:var(--ra-ink)}
#app .real-admin-heading p{margin:0;color:var(--ra-muted)}
#app .real-admin-eyebrow{font-size:11px!important;letter-spacing:.13em;text-transform:uppercase;font-weight:650;color:var(--ra-ink)!important}
#app .real-admin-links{display:flex;gap:22px;flex-wrap:wrap;border-bottom:1px solid var(--ra-line);padding-bottom:20px;margin-bottom:20px}
#app .real-admin-links a,#app .real-admin-preview-link{color:var(--ra-ink);font-size:13px;text-underline-offset:4px}
#app .real-admin-auth:not(.real-auth){border-bottom:1px solid var(--ra-line);padding:8px 0 24px;margin-bottom:24px}
#app .real-admin-notice{margin:0 0 24px;padding:16px 20px;border:1px solid #c3d5c6;background:#eef4eb;color:#1d4938;border-radius:9px;overflow-wrap:anywhere}
#app .real-admin-notice[hidden],#app .real-admin-tabs[hidden]{display:none}
#app .real-admin-notice--error{border-color:#d9bdac;background:#fff1e7;color:#6c3023}
#app .real-admin-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--ra-line);margin-bottom:22px}
#app .real-admin-tab{flex:1 1 120px;min-width:0;border:0;background:transparent;color:var(--ra-muted);font:600 13px/1.5 inherit;padding:14px 20px;min-height:48px;border-bottom:2px solid transparent;white-space:normal;cursor:pointer}
#app .real-admin-tab.is-active{border-bottom-color:#19473c;color:#19473c;background:#efeede}
#app .real-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
#app .real-admin-toolbar p{margin:0;max-width:660px}
#app .real-admin-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:24px;align-items:start}
#app .real-admin-card{background:var(--ra-white);border:1px solid var(--ra-line);border-radius:16px;padding:30px;min-width:0;margin-bottom:24px}
#app .real-admin-card h2{font:normal 31px/1.25 Georgia,"Times New Roman",serif;letter-spacing:-.02em;margin:0 0 16px}
#app .real-admin-card>p{margin:0 0 18px;color:var(--ra-muted)}
#app .real-admin-help{font-size:12px;line-height:1.7;color:var(--ra-muted);margin:7px 0 15px;overflow-wrap:anywhere}
#app .real-admin-field{margin:0 0 20px;min-width:0}
#app .real-admin-field label{display:block;font-size:12px;font-weight:650;color:var(--ra-ink);margin-bottom:7px}
#app .real-admin-field input,#app .real-admin-field select,#app .real-admin-field textarea{font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ra-ink);width:100%;max-width:100%;background:#fffef9;border:1px solid #c4cebe;border-radius:7px;padding:11px 12px;min-height:46px}
#app .real-admin-field textarea{resize:vertical;min-height:120px}
#app .real-admin-field input[readonly]{background:#f0f1e9;color:#58695e}
#app .real-admin-field input:focus,#app .real-admin-field select:focus,#app .real-admin-field textarea:focus,#app .real-admin-button:focus-visible,#app .real-admin-tab:focus-visible,#app summary:focus-visible{outline:3px solid #aabda6;outline-offset:3px}
#app .real-admin-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#app .real-admin-choice{border:1px solid var(--ra-line);border-radius:8px;padding:12px 14px;margin:0 0 20px}
#app .real-admin-choice legend{font-size:12px;font-weight:650;padding:0 6px}
#app .real-admin-choice label{display:flex;gap:10px;align-items:center;padding:6px 0;font-size:13px}
#app .real-admin-choice input{width:18px;height:18px;accent-color:#19473c;flex:none}
#app .real-admin-button{font:650 12px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#19473c;border:1px solid #19473c;color:#fffdf7;border-radius:8px;padding:12px 17px;min-height:47px;cursor:pointer;max-width:100%;white-space:normal;text-align:center}
#app .real-admin-button--secondary{background:#f1f1e7;color:#19473c;border-color:#bfcaba}
#app .real-admin-button--quiet{background:transparent;color:#19473c;border-color:#cbd4c3;font-size:11px}
#app .real-admin-button:disabled{cursor:wait}
#app .real-admin-note{background:#f2efe1;color:#4a5b46!important;border:1px solid #dad9c6;border-radius:8px;padding:14px 16px;font-size:12px}
#app .real-admin-package,#app .real-admin-slot,#app .real-admin-booking{border-top:1px solid var(--ra-line);padding:23px 0;min-width:0}
#app .real-admin-package:last-child,#app .real-admin-slot:last-child,#app .real-admin-booking:last-child{padding-bottom:0}
#app .real-admin-package-heading,#app .real-admin-booking-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:9px}
#app .real-admin-package h3,#app .real-admin-slot h3,#app .real-admin-booking h3{font:650 16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0;overflow-wrap:anywhere}
#app .real-admin-pill{display:inline-block;flex:none;max-width:45%;border:1px solid #c9d6be;background:#eef3e6;border-radius:4px;padding:4px 7px;font-size:10px;line-height:1.5;color:#3b5946;overflow-wrap:anywhere}
#app .real-admin-offer{font-size:14px;margin:8px 0;color:var(--ra-ink);overflow-wrap:anywhere}
#app details{margin:13px 0 0}
#app details summary{color:#19473c;font-size:13px;font-weight:600;cursor:pointer;min-height:36px;padding:5px 0}
#app details[open]>summary{margin-bottom:12px}
#app .real-admin-package-form{margin-top:14px}
#app .real-admin-archive-review{margin-top:12px}
#app .real-admin-archived-list{border-top:1px solid var(--ra-line);padding-top:15px;margin-top:24px}
#app .real-admin-archived-item{padding:12px 0;border-top:1px solid #e5e5d7;font-size:13px}
#app .real-admin-empty{padding:20px 0;color:var(--ra-muted);font-size:14px}
#app .real-admin-footnote{font-size:12px;color:var(--ra-muted);border-top:1px solid var(--ra-line);padding-top:24px;margin-top:12px;max-width:100%;overflow-wrap:anywhere}
#app .real-admin-reference{font-size:11px;color:var(--ra-muted);overflow-wrap:anywhere;margin:8px 0}
#app .real-admin-preview-link{display:inline-block;margin-top:20px}
#app .real-admin-page-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
#app .real-admin-heading{border-left:4px solid #19473c;padding:12px 0 12px 22px}
#app .real-admin-links .real-admin-visitor-link{font-weight:700;background:#19473c;color:#fffdf7;border-radius:7px;padding:10px 14px;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
#app .real-admin-view-help{font-size:13px;color:var(--ra-muted);margin:-7px 0 24px;max-width:650px}
#app .real-admin-package-actions{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-top:18px}
#app .real-admin-package-actions .real-admin-archive-review{margin:0}
#app .real-admin-button--danger{color:#802d27;background:#fff2ed;border-color:#c99788}
#app .real-admin-button--danger:hover{background:#f9e2d9}
#app .real-admin-delete-dialog{width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #c6cbbb;border-radius:16px;padding:28px;background:#fffdf7;color:#173d34;box-shadow:0 22px 80px #132e3440}
#app .real-admin-delete-dialog::backdrop{background:#142d2bc2}
#app .real-admin-delete-dialog h2{font:normal 30px/1.2 Georgia,"Times New Roman",serif;margin:0 0 16px;overflow-wrap:anywhere}
#app .real-admin-delete-dialog p{line-height:1.7;overflow-wrap:anywhere}
#app .real-admin-dialog-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;margin-top:24px}
#app .real-admin-progress-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:24px;align-items:start}
#app .real-admin-progress-layout>div{min-width:0}
#app .real-admin-progress-preview{border:1px solid #c7d4c2;border-radius:10px;background:#f0f4e9;padding:20px;margin-top:22px;min-width:0;overflow-wrap:anywhere;color:#183d36}
#app .real-admin-progress-preview h3,#app .real-admin-private-notes h3,#app .real-admin-progress-record h3{font:650 15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0 0 10px;overflow-wrap:anywhere}
#app .real-admin-progress-preview h4{font:650 12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:18px 0 6px}
#app .real-admin-progress-preview p{margin:6px 0;overflow-wrap:anywhere}
#app .real-admin-progress-preview ul{padding-left:22px;margin:7px 0}
#app .real-admin-progress-text{white-space:pre-wrap;font-size:13px;line-height:1.75}
#app .real-admin-private-notes{border:1px dashed #c5cbbb;border-radius:10px;background:#f3f0e7;padding:18px;margin:24px 0}
#app .real-admin-private-notes .real-admin-field{margin-bottom:0}
#app .real-admin-progress-record{border-top:1px solid var(--ra-line);padding:20px 0;min-width:0}
#app .real-admin-progress-record .real-admin-progress-preview{margin-top:0}
#app .real-admin-progress-record:last-child{padding-bottom:0}
#app .real-admin-removal-request{border-top:1px solid var(--ra-line);padding:16px 0;min-width:0;overflow-wrap:anywhere}
#app .real-admin-removal-request h3{font:650 15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0 0 8px}
#app .real-admin-removal-request p{margin:6px 0}
#app .real-admin-field textarea[readonly]{background:#f0f1e9;color:#36463b;cursor:text}
#app .real-admin-progress-dialog .real-admin-progress-preview{margin-top:18px}
@media(max-width:900px){#app .real-admin-progress-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:580px){#app .real-admin-progress-preview{padding:16px}#app .real-admin-private-notes{padding:14px}#app .real-admin-progress-layout .real-admin-page-actions>button{width:100%}#app .real-admin-progress-dialog h2{font-size:26px}}
@media(max-width:580px){#app .real-admin-delete-dialog{padding:22px 18px}#app .real-admin-dialog-actions{flex-direction:column}#app .real-admin-dialog-actions>button{width:100%}#app .real-admin-heading{padding-left:16px}#app .real-admin-links{align-items:center}#app .real-admin-package-actions{display:block}#app .real-admin-package-actions .real-admin-archive-review{margin-top:12px}}
@media(max-width:1000px){#app .real-auth-form{grid-template-columns:repeat(2,minmax(0,1fr))}#app .real-auth-form>div:first-child{grid-column:1/-1}#app .real-auth-form>button{justify-self:start}}
@media(max-width:900px){#app .real-admin-layout{grid-template-columns:minmax(0,1fr)}#app .real-admin-side{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}}
@media(max-width:580px){#app .real-auth{padding:18px}#app .real-auth-form{grid-template-columns:1fr}#app .real-auth-form>div:first-child{grid-column:auto}#app .real-auth-form>button,#app .real-auth-form:has(.real-check)>button{justify-self:stretch}#app .real-auth-session{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:580px){#app .real-admin-wrap{margin:24px auto 50px}#app .real-admin-heading h2{font-size:36px}#app .real-admin-heading>p{font-size:14px}#app .real-admin-links{gap:17px}#app .real-admin-links a{font-size:12px}#app .real-admin-card{padding:24px 20px;border-radius:12px}#app .real-admin-card h2{font-size:28px}#app .real-admin-form-row,#app .real-admin-side{grid-template-columns:minmax(0,1fr);gap:0}#app .real-admin-toolbar{flex-direction:column;align-items:flex-start;gap:12px}#app .real-admin-toolbar>.real-admin-button{width:100%}#app .real-admin-tab{padding:12px 14px;font-size:12px}#app .real-admin-notice{padding:14px 16px;font-size:13px}#app .real-admin-button{min-height:48px}#app .real-admin-package-heading,#app .real-admin-booking-heading{gap:10px}#app .real-admin-pill{font-size:9px}#app .real-admin-choice{padding:12px}#app .real-admin-package-form>.real-admin-button{width:100%}}
@media(prefers-reduced-motion:reduce){#app[data-view="admin"] *,#app[data-view="admin"] *::before,#app[data-view="admin"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Keep button labels independent of surrounding link colors and faded ancestors. */
#app .real-button:not(.real-button--secondary):not(:disabled):is(:hover,:focus-visible,:active),
#app .real-admin-button:not(.real-admin-button--secondary):not(.real-admin-button--quiet):not(.real-admin-button--danger):not(:disabled):is(:hover,:focus-visible,:active),
#app .real-admin-links .real-admin-visitor-link:is(:hover,:focus-visible,:active){background:#102f29;border-color:#102f29;color:#fffdf7}
#app .real-button--secondary:not(:disabled):is(:hover,:focus-visible,:active),
#app .real-admin-button--secondary:not(:disabled):is(:hover,:focus-visible,:active),
#app .real-admin-button--quiet:not(:disabled):is(:hover,:focus-visible,:active){background:#edf3e7;color:#19473c}
#app .real-button:focus-visible,#app .real-admin-button:focus-visible,#app .real-admin-visitor-link:focus-visible{outline:3px solid #fffdf7;outline-offset:2px;box-shadow:0 0 0 6px #19473c}
#app .real-button:disabled,#app .real-admin-button:disabled,#app .real-auth-switch button:disabled{opacity:1;background:#e1e7dd;color:#36463b;border-color:#91a08f;cursor:not-allowed}

#app .real-admin-availability-edit{min-width:0;border:1px solid var(--ra-line);border-radius:9px;padding:20px;margin:20px 0}
#app .real-admin-availability-edit legend{font-size:13px;font-weight:650;padding:0 6px}
#app #availability-editor>h3{font-size:18px;margin:25px 0 9px}
#app .real-admin-availability-preview{min-width:0;border:1px solid #c7d4c2;border-radius:10px;background:#f0f4e9;padding:22px;margin:22px 0;overflow-wrap:anywhere}
#app .real-admin-availability-preview h3{font-size:16px;margin:0 0 12px}
#app .real-admin-availability-preview h4{font-size:13px;margin:14px 0 5px}
#app .real-admin-availability-preview p{font-size:13px;margin:6px 0}
#app .real-admin-availability-group{border-bottom:1px solid #d1ddc9;padding-bottom:10px}
#app .real-admin-availability-slots{max-height:360px;overflow:auto;padding:0 0 0 25px;scrollbar-gutter:stable}
#app .real-admin-availability-slots li{font-size:13px;line-height:1.7;padding:4px 0;overflow-wrap:anywhere}
#app #availability-editor+.real-admin-page-actions{margin-top:20px}
@media(max-width:580px){#app .real-admin-availability-edit,#app .real-admin-availability-preview{padding:16px}#app #availability-editor .real-admin-page-actions>button,#app #availability-preview+.real-admin-page-actions>button{width:100%}}
#app .real-admin-cancellation-preview,#app .real-admin-cancellation-result{min-width:0;border:1px solid #c7d4c2;border-radius:10px;background:#f0f4e9;padding:20px;margin:20px 0;overflow-wrap:anywhere}
#app .real-admin-cancellation-preview h3,#app .real-admin-cancellation-result h3{font-size:16px;margin:0 0 12px}
#app .real-admin-cancellation-status{border-top:1px solid #d1ddc9;border-bottom:1px solid #d1ddc9;margin:14px 0;padding:10px 0}
#app .real-admin-cancellation-status h4,#app .real-admin-cancellation-preview h4{font-size:13px;margin:8px 0}
#app .real-admin-cancellation-preview p,#app .real-admin-cancellation-result p{font-size:13px;line-height:1.7}
#app .real-admin-cancellation-message{font:13px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;background:#fffdf7;border:1px solid #d1ddc9;border-radius:7px;padding:16px;max-width:100%}
@media(max-width:580px){#app .real-admin-cancellation-preview,#app .real-admin-cancellation-result{padding:16px}#app .real-admin-cancellation-editor>button{width:100%;margin:5px 0}}
