:root{color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--brand-primary:#1464aa;--brand-primary-dark:#0f5695;--brand-accent:#f59e0b;--brand-background:#f8fafc;--brand-text:#1f2937;--brand-border:#e5e7eb;background:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{background:var(--brand-background);min-height:100vh}h1,h2,h3,h4,p{margin-top:0}.full-page-center,.content-loader{justify-content:center;align-items:center;min-height:40vh;display:flex}.login-page,.public-payment-page{background:radial-gradient(circle at 15% 10%,#1464aa24,#0000 35%),linear-gradient(145deg,#f8fafc,#eff6ff);place-items:center;min-height:100vh;padding:24px;display:grid}.public-booking-page{background:#ebebeb;min-height:100vh;padding:24px 12px}.public-booking-card{width:min(100%,680px);margin:0 auto}.public-booking-meta{color:#555;justify-content:space-between;gap:12px;padding:12px 20px;font-size:14px;display:flex}.public-booking-meta span{color:#b90013;font-weight:700}.public-booking-logo{border-radius:8px;width:min(100%,340px);margin:0 auto 24px;display:block}.public-booking-section{margin-top:26px}.public-booking-program{background:#eef0f8;border:1px solid #c8cee8;border-radius:10px;padding:20px}.public-booking-details{border:1px solid #ebebeb;border-radius:10px;grid-template-columns:minmax(140px,40%) 1fr;margin:0;display:grid;overflow:hidden}.public-booking-details dt,.public-booking-details dd{border-bottom:1px solid #ebebeb;margin:0;padding:12px 16px}.public-booking-details dt{color:#555}.public-booking-details dd{color:#001181;font-weight:700}.public-booking-messengers{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;display:grid}.public-booking-messengers a{color:#fff;text-align:center;border-radius:8px;padding:12px 6px;font-weight:700;text-decoration:none}.public-booking-messengers a:first-child{background:#2aabee}.public-booking-messengers a:nth-child(2){background:#25d366}.public-booking-messengers a:nth-child(3){background:#7360f2}@media (width<=520px){.public-booking-meta,.public-booking-details{display:block}.public-booking-meta span{margin-top:4px;display:block}.public-booking-details dt{border-bottom:0;padding-bottom:4px}.public-booking-details dd{padding-top:0}}.public-payment-card{width:min(100%,560px);box-shadow:0 24px 70px #1f29371f}.public-payment-amount{color:var(--brand-primary);margin:24px 0 8px;font-size:32px;font-weight:700}.public-payment-note{text-align:center;margin:18px 0 0!important}.login-card{width:min(100%,430px);box-shadow:0 24px 70px #1f29371f}.brand-block,.sidebar-brand{align-items:center;gap:14px;display:flex}.login-card .brand-block{flex-direction:column;align-items:flex-start}.brand-logo{object-fit:contain;height:auto;display:block}.brand-logo-login{border-radius:8px;width:min(100%,310px)}.brand-logo-sidebar{border-radius:6px;width:204px}.brand-logo-mobile{border-radius:5px;width:154px}.brand-block .ant-typography,.page-heading .ant-typography,.excursion-card .ant-typography{margin:0}.app-shell{min-height:100vh}.app-sider{border-right:1px solid var(--brand-border);height:100vh;top:0;position:sticky!important}.sidebar-brand{min-height:78px;padding:18px 22px}.sidebar-subtitle,.user-copy .ant-typography{font-size:12px;display:block}.sidebar-help{color:#6b7280;align-items:center;gap:10px;display:flex;position:absolute;bottom:20px;left:24px}.app-header{z-index:20;border-bottom:1px solid var(--brand-border);justify-content:flex-end;align-items:center;height:70px;padding:0 28px;display:flex;position:sticky;top:0}.user-block{margin-left:auto}.app-content{width:min(100%,1440px);margin:0 auto;padding:28px}.page-heading{margin-bottom:22px}.filter-card{margin-bottom:18px}.view-switch{margin-bottom:16px}.departure-calendar{overflow:auto}.departure-calendar .fc{min-width:680px}.schedule-template{margin-bottom:14px}.preview-summary{margin-bottom:16px}.tariff-summary{width:100%;margin:8px 0 18px}.tariff-summary .ant-alert{margin-top:12px}.editor-alert{margin-bottom:18px}.modal-alert{margin-bottom:16px}.editor-status-card{margin-top:18px}.editor-status-card .ant-form-item{min-width:min(100%,260px);margin-bottom:0}.status-pill{letter-spacing:.01em;border-radius:10px;align-items:center;max-width:100%;padding:10px 14px;font-size:14px;font-weight:700;line-height:1.35;display:inline-flex}.status-pill--alive{color:#052e16;background:#22c55e}.status-pill--neutral{color:#713f12;background:#facc15}.status-pill--dead{color:#fff;background:#ef4444}.status-pill--info{color:#0c4a6e;background:#7dd3fc}.status-pill--muted{color:#334155;background:#e2e8f0}.status-field .ant-select-selector{border-width:2px!important;font-weight:600!important}.status-field--alive .ant-select-selector{color:#14532d!important;background:#dcfce7!important;border-color:#22c55e!important}.status-field--neutral .ant-select-selector{color:#713f12!important;background:#fef9c3!important;border-color:#eab308!important}.status-field--dead .ant-select-selector{color:#7f1d1d!important;background:#fee2e2!important;border-color:#ef4444!important}.status-field--info .ant-select-selector{color:#0c4a6e!important;background:#e0f2fe!important;border-color:#38bdf8!important}.status-field--muted .ant-select-selector{color:#334155!important;background:#f1f5f9!important;border-color:#94a3b8!important}.rich-markdown-editor{border:1px solid var(--brand-border);border-radius:8px;transition:border-color .2s;overflow:hidden}.rich-markdown-editor:focus-within{border-color:var(--brand-primary);box-shadow:0 0 0 2px #1464aa1a}.rich-markdown-import{border-bottom:1px solid var(--brand-border);background:#f8fafc;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.rich-markdown-editor [class*=_toolbarRoot_]{background:#f8fafc;border-radius:0}.rich-markdown-content{min-height:160px;color:var(--brand-text);padding:14px 16px;font-family:inherit}.rich-markdown-content p:last-child{margin-bottom:0}.rich-markdown-editor [class*=_contentEditable_]{min-height:160px}.audit-json{white-space:pre-wrap;background:#f8fafc;border-radius:8px;max-height:360px;margin:0;padding:12px;overflow:auto}.filter-card .ant-select,.filter-card .ant-picker{width:100%}.page-card{background:#fff;border-radius:12px;min-height:50vh;padding:24px}.excursion-card{width:100%}.card-meta{color:#6b7280;margin-top:16px}.mobile-navigation{z-index:30;border-top:1px solid var(--brand-border);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #1f293714}.mobile-navigation .ant-menu-item{flex:1 1 0;justify-content:center;align-items:center;min-width:0!important;display:flex!important}@media (width<=767px){.login-page{padding:12px}.login-card{box-shadow:none;border:0}.app-header{height:62px;padding:0 16px}.app-content{padding:18px 14px 88px}.page-heading{align-items:flex-start!important}.filter-card .ant-card-body{padding:14px}.ant-list-item{padding-inline:0!important}}.booking-payments-card--paid{background:linear-gradient(#f0fdf4 0%,#fff 48%);border-color:#86efac}.booking-payments-card--paid .ant-card-head{color:#166534;border-bottom-color:#bbf7d0}.booking-seat--removed>td{color:var(--ant-color-text-disabled);background:var(--ant-color-fill-quaternary);text-decoration:line-through}
