.resource-card-actions[data-v-b2c8e781]{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:auto}.resource-card-actions button[data-v-b2c8e781]{flex:1 1 150px}.resource-read-button[data-v-b2c8e781]{order:-1}.stat-card[data-v-41108480]{background:var(--color-primary-bg);border-color:var(--color-primary-light)}.stat-card p[data-v-41108480]{margin:0;color:var(--color-primary-dark);font-size:1.4rem;font-weight:800}.loading-screen[data-v-b9f002c1]{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--color-primary);font-size:1.2rem;font-weight:700}:root{--color-primary: #285f58;--color-primary-dark: #1c4742;--color-primary-light: #cfe3dd;--color-primary-bg: #edf5f2;--color-accent: #cf6f59;--color-accent-dark: #a94f3f;--color-accent-light: #f7e4df;--color-accent-glow: rgba(207, 111, 89, .22);--color-secondary: #665d86;--color-secondary-light: #ddd8eb;--color-secondary-bg: #f3f1f8;--color-highlight: #d8a83e;--color-text: #1f2d2a;--color-text-secondary: #586865;--color-text-muted: #71807d;--color-bg: #f5f7f5;--color-surface: #ffffff;--color-border: #d8e0dc;--color-border-light: #e8edea;--color-success: #2e6b51;--color-success-bg: #e8f3ed;--color-error: #a94638;--color-error-bg: #f9e9e5;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 8px;--shadow-sm: 0 1px 3px rgba(31, 45, 42, .07);--shadow-md: 0 8px 20px rgba(31, 45, 42, .08);--shadow-lg: 0 16px 36px rgba(31, 45, 42, .1);--shadow-accent: 0 4px 20px var(--color-accent-glow);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg)}*{box-sizing:border-box}body{margin:0;min-width:320px;color:var(--color-text);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit}button{min-height:44px;border:0;border-radius:var(--radius-sm);padding:.65rem 1.3rem;background:var(--color-primary);color:#fff;cursor:pointer;font-weight:600;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;letter-spacing:0}button:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}button:not(:disabled):hover{background:var(--color-primary-dark);box-shadow:0 3px 8px #1f474229}button:not(:disabled):active{transform:translateY(0)}button:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px;box-shadow:var(--shadow-accent)}.button-label{display:inline-flex;min-height:1.25rem;align-items:center;justify-content:center;gap:.55rem}.button-spinner{width:1rem;height:1rem;flex:0 0 1rem;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:button-spin .75s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{position:sticky;top:0;z-index:100;display:grid;grid-template-columns:auto 1fr auto;gap:1.25rem;align-items:center;padding:.7rem clamp(1.25rem,4vw,3rem);background:var(--color-surface);border-bottom:1px solid var(--color-border)}.brand{display:flex;align-items:center;gap:.7rem;padding:0;color:var(--color-text);background:transparent;text-align:left;border-radius:var(--radius-sm);min-height:0}.brand:hover,.brand:focus-visible{color:var(--color-text);background:transparent;transform:none;box-shadow:none}.brand small{display:block;color:var(--color-text-muted);font-weight:500;font-size:.75rem}.brand-mark{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-weight:700;font-size:1.15rem;box-shadow:none}nav{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center}nav button,.outline-button,.secondary,.tabs button{background:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);font-weight:500;transition:all .2s ease}nav button{min-height:34px;padding:.35rem .75rem;font-size:.88rem;color:var(--color-text-secondary);background:transparent;border-color:transparent}nav button:not(:disabled):hover,button.outline-button:not(:disabled):hover,button.secondary:not(:disabled):hover,.tabs button:not(:disabled):hover{border-color:var(--color-primary);color:var(--color-primary-dark);background:var(--color-primary-bg);transform:none;box-shadow:none}button.saved-button,button.saved-button:not(:disabled):hover{color:var(--color-success);background:var(--color-success-bg);border:1px solid #a9cdb9;box-shadow:none;transform:none}.urgent-button{color:#fff;background:var(--color-accent)}button.urgent-button:not(:disabled):hover{background:var(--color-accent-dark)}a{color:var(--color-primary);text-underline-offset:.2em}a:hover{color:var(--color-primary-dark)}nav button.active,.tabs button.active{color:var(--color-primary-dark);background:var(--color-primary-bg);border-color:var(--color-primary-light);font-weight:600}nav button.active:not(:disabled):hover,.tabs button.active:not(:disabled):hover,.admin-section-nav button.active:not(:disabled):hover{color:var(--color-primary-dark);background:var(--color-primary-bg);border-color:var(--color-primary-light);box-shadow:none}main{flex:1;width:min(1200px,calc(100% - 2.5rem));margin:0 auto;padding:2rem 0 4rem}.hero,.content-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:none}.hero{display:grid;grid-template-columns:1.4fr .6fr;gap:2rem;align-items:stretch;padding:clamp(1.5rem,4vw,3rem);background:var(--color-surface);border-left:4px solid var(--color-primary)}.hero h1,.content-panel h1{margin:.25rem 0 1rem;font-size:clamp(1.8rem,4.5vw,3.5rem);line-height:1.12;color:var(--color-text);font-weight:800;letter-spacing:0}.content-panel h1{font-size:clamp(1.5rem,3vw,2.5rem)}.hero p,.content-panel p{color:var(--color-text-secondary);line-height:1.75;font-size:1.05rem}.eyebrow{margin:0;color:var(--color-primary);font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.actions button.secondary{background:var(--color-surface);border:1px solid var(--color-primary);color:var(--color-primary);font-weight:600}.actions button.secondary:hover{background:var(--color-primary-bg);transform:none}.urgent-box{padding:1.5rem;border-radius:var(--radius-md);background:var(--color-accent-light);border:1px solid #eab8ac;border-left:4px solid var(--color-accent)}.urgent-box h2{margin-top:0;font-size:1.1rem;color:#81382d}.urgent-box p{color:#6f3931}.urgent-disclaimer{margin-top:1rem;font-size:.9rem}.section-grid,.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-card,.resource-card,.form-card,.rating-summary,.review-list article{padding:1.25rem 1.25rem 1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);transition:all .25s ease}.info-card:hover,.resource-card:hover{box-shadow:0 6px 16px #1f2d2a14;border-color:var(--color-primary-light)}.info-card h2,.resource-card h2{margin:0 0 .5rem;font-size:1.05rem;color:var(--color-text);font-weight:700}.resource-card span{display:inline-block;margin-bottom:.5rem;padding:.18rem .5rem;border-radius:4px;background:var(--color-secondary-bg);color:var(--color-secondary);font-size:.75rem;font-weight:600}.resource-card{display:flex;flex-direction:column;overflow:hidden}.resource-card>p{color:var(--color-text-secondary);line-height:1.65}.resource-card-image{width:calc(100% + 2.5rem);height:auto;aspect-ratio:16 / 9;margin:-1.25rem -1.25rem 1rem;object-fit:cover}.resource-detail{max-width:900px;margin:0 auto}.resource-back-button{width:auto;margin-bottom:1.5rem}.resource-detail-header{padding-bottom:2rem;border-bottom:1px solid var(--color-border-light)}.resource-detail-header h1{max-width:720px;margin-bottom:.75rem}.resource-detail-header>button{width:auto;margin-top:1rem}.resource-hero-figure{margin:2rem 0 0}.resource-hero-figure img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;border-radius:var(--radius-sm);object-fit:cover}.resource-hero-figure figcaption{margin-top:.55rem;color:var(--color-text-muted);font-size:.78rem;text-align:right}.resource-hero-figure a,.resource-sources a{color:var(--color-primary);font-weight:600}.resource-detail-summary{max-width:720px;color:var(--color-text-secondary);font-size:1.08rem;line-height:1.7}.resource-article-body{max-width:720px;margin:0 auto;padding:1rem 0 2rem}.resource-article-body section{margin-top:2.25rem}.resource-key-facts,.resource-exercise{padding:1.25rem 1.4rem;border-radius:var(--radius-sm)}.resource-key-facts{border:1px solid var(--color-primary-light);background:var(--color-primary-bg)}.resource-key-facts h2,.resource-exercise h2{margin-top:.25rem}.resource-exercise{margin-top:1.25rem;border-left:4px solid var(--color-secondary);background:var(--color-secondary-bg)}.resource-exercise p,.resource-exercise li,.resource-key-facts li{color:var(--color-text)}.resource-article-body h2{margin-bottom:.75rem;font-size:1.35rem}.resource-article-body p,.resource-article-body li{color:var(--color-text-secondary);line-height:1.75}.resource-article-body li+li{margin-top:.45rem}.resource-safety-note{margin-top:2.5rem;padding:1.25rem;border-left:4px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent-light)}.resource-safety-note h2{margin-top:0;font-size:1.05rem}.resource-safety-note p{margin-bottom:0;color:var(--color-text)}.resource-sources{padding-top:2rem;border-top:1px solid var(--color-border-light)}.resource-sources span{color:var(--color-text-muted)}.content-panel{padding:clamp(1.25rem,3vw,2.25rem)}.two-column,.account-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:2.5rem}.account-layout{grid-template-columns:minmax(0,.8fr) minmax(240px,.3fr) minmax(300px,420px);align-items:start}.section-heading{display:flex;gap:1rem;align-items:start;justify-content:space-between}label{display:grid;gap:.35rem;color:var(--color-text);font-weight:600;font-size:.88rem}input,select,textarea{width:100%;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);padding:.7rem .85rem;color:var(--color-text);background:var(--color-surface);transition:border-color .2s ease,box-shadow .2s ease}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:3rem;background-color:var(--color-surface);background-image:linear-gradient(45deg,transparent 50%,var(--color-text-secondary) 50%),linear-gradient(135deg,var(--color-text-secondary) 50%,transparent 50%);background-position:calc(100% - 1.25rem) calc(50% - .15rem),calc(100% - .9rem) calc(50% - .15rem);background-size:.42rem .42rem,.42rem .42rem;background-repeat:no-repeat}select:focus{background-image:linear-gradient(45deg,transparent 50%,var(--color-primary) 50%),linear-gradient(135deg,var(--color-primary) 50%,transparent 50%)}textarea{min-height:96px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-bg)}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;background:var(--color-border-light);color:var(--color-text-muted)}::placeholder{color:var(--color-text-muted)}.form-card{display:grid;gap:1rem;padding:1.5rem;border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.form-card button[type=submit]{margin-top:.5rem}.message{margin:0;padding:.7rem 1rem;border-radius:var(--radius-sm);font-weight:600;font-size:.88rem}.message.error{color:var(--color-error);background:var(--color-error-bg);border-left:3px solid var(--color-error)}.message.success{color:var(--color-success);background:var(--color-success-bg);border-left:3px solid var(--color-success)}.pending-status{margin:0;padding:.7rem .85rem;border-left:3px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary-bg);color:var(--color-primary-dark);font-size:.85rem;font-weight:600}.tabs{display:grid;gap:.6rem}.rating-summary{display:grid;gap:.25rem;width:max-content;min-width:180px;margin-bottom:1.5rem;padding:1.25rem;background:var(--color-primary-bg);border-color:var(--color-primary-light)}.rating-summary strong{font-size:2.2rem;color:var(--color-primary);font-weight:800}.rating-summary span{color:var(--color-text-secondary);font-size:.9rem}.review-list{display:grid;gap:.75rem}.review-list article{padding:1rem 1.25rem;border-left:3px solid var(--color-secondary)}.review-list p{margin:.4rem 0;color:var(--color-text-secondary)}.review-list small{color:var(--color-text-muted);font-size:.82rem}.responsive-table{width:100%;margin-top:1.5rem;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.responsive-table table{width:100%;min-width:650px;border-collapse:collapse}.responsive-table caption{padding:.9rem 1rem .5rem;text-align:left;font-weight:700;font-size:.9rem;color:var(--color-text)}.responsive-table th,.responsive-table td{padding:.85rem 1rem;border-bottom:1px solid var(--color-border-light);text-align:left}.responsive-table th{color:var(--color-text);background:var(--color-primary-bg);font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:0}.responsive-table td{color:var(--color-text-secondary);font-size:.93rem}.responsive-table tbody tr:last-child td{border-bottom:0}.responsive-table tbody tr:hover td{background:var(--color-primary-bg)}.site-footer{width:min(1200px,calc(100% - 2.5rem));margin:0 auto 2rem;padding:1.5rem 0 .5rem;border-top:1px solid var(--color-border-light);color:var(--color-text-muted);font-size:.85rem}.site-footer p{margin:.25rem 0}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--color-primary);font-size:1.15rem;font-weight:600}@media (max-width: 920px){.site-header,.hero,.two-column,.account-layout,.section-heading{grid-template-columns:1fr}.site-header{position:static}nav{justify-content:start}.section-grid,.card-grid{grid-template-columns:1fr 1fr}.section-heading{align-items:stretch;flex-direction:column}.account-layout{grid-template-columns:1fr}.account-layout>div:first-child{order:-1}}.admin-section-nav{justify-content:flex-start;gap:.45rem;margin:1.75rem 0 1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border-light)}.admin-section-nav button{min-height:40px;padding:.55rem .9rem}.admin-section-nav button.active{border-color:var(--color-primary-light);background:var(--color-primary-bg);color:var(--color-primary-dark)}.admin-report-panel{display:grid;gap:1.25rem;margin-top:1.5rem;padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.admin-report-panel h2{margin:.25rem 0 .5rem}.admin-report-panel p{margin-bottom:0}@media (max-width: 600px){main{width:min(calc(100% - 1rem),1200px);padding-top:1rem}.hero h1,.content-panel h1{font-size:1.8rem}.site-header{grid-template-columns:minmax(0,1fr) auto;padding:.6rem .75rem;gap:.6rem}.site-header nav{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));order:3;width:100%}.site-header>.outline-button{width:auto}.section-grid,.card-grid{grid-template-columns:1fr}nav button,.outline-button,button{width:100%}}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:1000;padding:.7rem 1rem;border-radius:var(--radius-sm);color:#fff;background:var(--color-primary-dark);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.connection-status{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;min-height:32px;padding:.3rem clamp(1.25rem,4vw,3rem);color:var(--color-text-secondary);background:var(--color-primary-bg);border-bottom:1px solid var(--color-border-light);font-size:.78rem;font-weight:700}.connection-status.offline{color:#7a3d32;background:var(--color-error-bg)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--color-success)}.connection-status.offline .status-dot{background:var(--color-error)}.draft-status{margin:-.25rem 0 0;color:var(--color-text-muted);font-size:.78rem}.booking-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:1.5rem;align-items:start;margin-top:1.5rem}.booking-calendar{min-width:0}.subsection-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.subsection-heading h2,.interactive-table h2,.analytics-section h2{margin:.2rem 0 0;font-size:1.2rem}.calendar-key{color:var(--color-text-muted);font-size:.8rem;font-weight:700}.calendar-frame{width:100%;min-height:560px;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:.75rem}.fc{min-width:650px;color:var(--color-text-secondary);font-size:.86rem}.fc .fc-toolbar-title{font-size:1rem}.fc .fc-button{width:auto;min-height:34px;padding:.35rem .6rem;border-color:var(--color-primary);border-radius:4px;background:var(--color-primary);font-size:.78rem}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.fc .fc-button:not(:disabled):hover{border-color:var(--color-primary-dark);background:var(--color-primary-dark)}.fc .fc-timegrid-slot{height:2.4rem}.interactive-table{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-border-light)}.table-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem}.table-toolbar p{margin:.2rem 0 0;font-size:.82rem}.table-global-search{width:min(320px,100%)}.column-search-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin-top:1rem}.column-search-grid label{font-size:.78rem}.sort-button{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-height:32px;padding:0;color:var(--color-text);background:transparent;border:0;border-radius:0;text-align:left;text-transform:uppercase;font-size:.82rem}.sort-button:hover,.sort-button:focus-visible{color:var(--color-primary-dark);background:transparent;box-shadow:none;transform:none}.table-pagination{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:.8rem}.table-pagination button{width:auto;min-height:36px;padding:.4rem .8rem}.table-pagination span{min-width:110px;color:var(--color-text-secondary);text-align:center;font-size:.82rem}.compact-actions{margin-top:0}.dashboard-saved-section{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-border-light)}.dashboard-saved-section h2{margin:.25rem 0 .5rem}.dashboard-saved-section .section-heading>button{width:auto}.dashboard-empty-state{margin-top:1.25rem;padding:1.25rem;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-surface)}.analytics-section{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-border-light)}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.analytics-grid figure{min-width:0;margin:0;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-sm)}.analytics-grid figcaption{margin-bottom:.75rem;color:var(--color-text);font-size:.9rem;font-weight:700}.chart-frame{position:relative;width:100%;height:280px}.map-workspace{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:1rem;margin-top:1.5rem}.map-controls{display:grid;align-content:start;gap:1rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-sm)}.map-controls fieldset{display:grid;gap:.75rem;margin:0;padding:.9rem;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.map-controls legend{padding:0 .35rem;color:var(--color-text);font-size:.9rem;font-weight:700}.centre-results{display:grid;gap:.45rem;max-height:220px;padding:0;margin:0;overflow:auto;list-style:none}.centre-results button{display:grid;gap:.2rem;width:100%;min-height:0;padding:.7rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);text-align:left}.centre-results button:hover,.centre-results button:focus-visible{color:var(--color-primary-dark);background:var(--color-primary-bg);border-color:var(--color-primary);box-shadow:none;transform:none}.centre-results span,.map-status,.map-disclaimer{color:var(--color-text-secondary);font-size:.82rem;line-height:1.45}.empty-result{padding:.5rem;color:var(--color-text-muted);font-size:.85rem}.support-map{min-height:600px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.route-summary{display:grid;gap:.5rem;margin:0;padding:.85rem;border-left:3px solid var(--color-primary);background:var(--color-primary-bg)}.route-summary div{display:flex;justify-content:space-between;gap:.75rem}.route-summary dt{color:var(--color-text-secondary)}.route-summary dd{margin:0;color:var(--color-text);font-weight:700;text-align:right}.map-status{margin:0}.map-disclaimer{margin:1rem 0 0}@media (max-width: 920px){.booking-workspace,.analytics-grid,.map-workspace{grid-template-columns:1fr}.booking-workspace .form-card{max-width:none}}@media (max-width: 600px){.connection-status{justify-content:flex-start;padding-inline:.75rem}.table-toolbar,.subsection-heading{align-items:stretch;flex-direction:column}.table-global-search,.table-pagination button{width:100%}.table-pagination{display:grid;grid-template-columns:1fr auto 1fr}.calendar-frame{min-height:500px}.fc{min-width:0}.support-map{min-height:400px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
