@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172724;--muted:#78837e;--paper:#f5f6f2;--line:#e3e7df;--lime:#d5ef79;--green:#2b6854;--orange:#c47b26;--radius:16px;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #73a947;outline-offset:3px}.skip{position:fixed;top:-60px;background:white;padding:12px;z-index:100}.skip:focus{top:8px}.sidebar{width:238px;position:fixed;inset:0 auto 0 0;background:var(--ink);color:#cad2cc;padding:35px 22px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-family:Manrope,sans-serif;font-size:30px;font-weight:800;letter-spacing:-1.5px}.brand-light{font-weight:400}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:2.2px;color:#a3b1a8;margin-top:3px}.brand-symbol{font-size:56px;line-height:1;color:var(--lime)}.event-tag{display:flex;align-items:center;gap:9px;border:1px solid #3c4b42;border-radius:7px;padding:11px 10px;font-size:10px;font-weight:600;letter-spacing:.8px;margin:30px 0 35px}.live-dot,.demo-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);display:inline-block;flex-shrink:0}.nav-label{font-size:9px;letter-spacing:1.6px;color:#8b9e91;margin:0 12px 12px}nav{display:grid;gap:6px}nav a{padding:13px 14px;display:flex;align-items:center;gap:13px;color:#b3c0b7;text-decoration:none;border-radius:8px;font-size:13px}nav a:hover{background:#263a32}nav a.active{background:var(--lime);color:var(--ink);font-weight:700}svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sidebar-bottom{margin-top:auto;padding-top:35px}.partner{font-size:10px;letter-spacing:1px;font-weight:700;white-space:nowrap}.partner span{color:var(--lime);padding:0 4px}.sidebar-bottom>p{font-size:10px;color:#819489;margin:8px 0 30px}.profile{display:flex;gap:10px;border-top:1px solid #33443b;padding-top:20px;align-items:center}.avatar{width:35px;height:35px;background:#35483e;color:#d3e0d6;display:grid;place-items:center;border-radius:50%;font-size:11px;font-weight:700}.profile strong{font-size:11px;display:block}.profile small{display:block;color:#8da092;font-size:10px;margin-top:4px}.workspace{margin-left:238px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 42px;background:#fcfcfa}.breadcrumb{font-size:12px;color:var(--muted)}.breadcrumb span{padding:0 14px;color:#c8cfc6}.breadcrumb strong{color:var(--ink);font-weight:500}.top-actions{display:flex;gap:24px;align-items:center}.timezone{font-size:11px;color:var(--muted)}.demo-badge{font-size:9px;letter-spacing:1.1px;font-weight:700;border:1px solid #cbd5be;border-radius:5px;padding:6px 9px;color:#52674b}.demo-banner{background:#edf1e7;padding:10px 42px;font-size:11px;color:#64705a;display:flex;gap:8px;align-items:center}.demo-dot{background:#899e5b}main{max-width:1450px;margin:auto;padding:36px 42px 50px;min-height:calc(100vh - 180px)}.page-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:var(--green);text-transform:uppercase;margin:0 0 8px}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-size:30px;letter-spacing:-1.3px;margin:0;font-weight:800}h2{font-size:17px;letter-spacing:-.5px;margin:0}h3{font-size:14px;margin:0}.subtitle{font-size:12px;color:var(--muted);margin:10px 0 0;line-height:1.7}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;border:1px solid var(--line);border-radius:8px;padding:11px 17px;background:white;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap}.btn:hover{background:#eef2e7}.btn.primary{background:var(--ink);border-color:var(--ink);color:white}.btn.primary:hover{background:#304c3e}.btn.lime{background:var(--lime);color:var(--ink);border-color:var(--lime)}.btn.danger{color:#a64032;border-color:#efc9c0}.btn.small{min-height:35px;padding:8px 11px;font-size:11px}.link{border:0;background:transparent;padding:6px 0;color:var(--green);font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:7px;text-decoration:none}.hero{position:relative;overflow:hidden;background:var(--ink);color:white;border-radius:var(--radius);padding:30px 32px;margin-bottom:25px;display:flex;align-items:center;justify-content:space-between;min-height:185px}.hero::after{content:'';position:absolute;width:290px;height:290px;border:45px solid #293d32;border-radius:50%;right:90px;top:-90px;opacity:.5}.hero-content{position:relative;z-index:1}.hero .eyebrow{color:var(--lime)}.hero h2{font-size:27px;line-height:1.3;letter-spacing:-1px;max-width:430px}.hero p{font-size:12px;color:#aebeb3;margin:11px 0 19px}.event-date{position:relative;z-index:1;border-left:1px solid #3a4d40;padding-left:35px;min-width:145px}.event-date strong{font-size:58px;line-height:1;font-family:Manrope;font-weight:500;letter-spacing:-3px;color:var(--lime)}.event-date span{display:block;font-size:11px;letter-spacing:1px;margin-top:8px}.event-date small{font-size:10px;color:#aabcae}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:28px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.stat-label{display:flex;justify-content:space-between;gap:5px;color:#6f7d73;font-size:11px;align-items:center}.stat-label .icon{width:17px;height:17px;color:#a2afa3}.stat strong{font-family:Manrope;display:block;font-size:30px;letter-spacing:-1px;margin:12px 0 6px}.stat small{font-size:10px;color:#8a958c}.stat small.accent{color:var(--green)}.columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:23px 24px 18px;gap:12px}.panel-head small{font-size:10px;color:var(--muted)}.panel-body{padding:24px}.panel-body>p:first-child{margin-top:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{background:#fafbf8;font-weight:500;text-transform:uppercase;font-size:9px;letter-spacing:.7px;color:#889184;padding:13px 23px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:17px 23px;border-bottom:1px solid #eef0ea;font-size:11px}tr:last-child td{border-bottom:0}td strong{display:block;font-weight:600;font-size:12px}td small{color:var(--muted);display:block;font-size:10px;margin-top:5px}.client{display:flex;gap:10px;align-items:center}.client .avatar{background:#f0f3e9;color:#647351;width:32px;height:32px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:600;border-radius:20px;padding:6px 9px;background:#f0f2ed;color:#788176}.badge::before{content:'';width:4px;height:4px;background:currentColor;border-radius:100%}.badge.confirmed{background:#edf5e9;color:#4d7a40}.badge.pending{background:#fcf2e3;color:#a77932}.badge.cancelled,.badge.rejected{background:#fbede9;color:#b16a58}.badge.attended{background:#edf2fb;color:#5e76a6}.site-card{padding:18px 23px;border-top:1px solid var(--line)}.site-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.site-icon{width:35px;height:35px;background:#f3f5ef;border-radius:9px;display:grid;place-items:center;color:#657c54}.site-title{display:flex;align-items:center;gap:11px}.site-title p{font-size:10px;color:var(--muted);margin:4px 0 0}.mini-meta{font-size:10px;color:var(--muted);margin:14px 0 7px;display:flex;justify-content:space-between}.progress{height:4px;background:#edf0e8;border-radius:3px;overflow:hidden}.progress>span{height:100%;display:block;background:#9ebc64}.note-card{background:#edf1e5;border:1px solid #dfe6d3;border-radius:12px;margin-top:18px;padding:20px}.note-card .icon{color:#5f7c3e}.note-card h3{margin:10px 0 8px}.note-card p{font-size:11px;line-height:1.8;color:#6d7a60;margin:0}.note-card .link{margin-top:12px}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.search{position:relative;flex:1;min-width:190px}.search .icon{position:absolute;left:13px;top:13px;width:17px;height:17px;color:#83907f}.search input{padding-left:39px;width:100%}input,select{border:1px solid #dce2d6;background:#fff;border-radius:7px;padding:12px;font-size:12px;min-height:44px;color:var(--ink);min-width:0}input[type=checkbox]{accent-color:var(--green);min-height:20px;width:18px;flex-shrink:0}label.field{display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:8px}label.field small{font-weight:400;line-height:1.6;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .wide{grid-column:1/-1}.form-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:24px;align-items:start}.steps{display:flex;gap:6px;margin-bottom:25px}.step{flex:1;border-top:3px solid #e3e8dc;padding-top:12px;font-size:11px;color:#909a88}.step.active{border-color:var(--green);color:var(--green);font-weight:700}.step span{font-size:10px;margin-right:6px}.form-actions{display:flex;justify-content:space-between;padding-top:25px;border-top:1px solid var(--line);margin-top:25px}.combo-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{border:1px solid var(--line);border-radius:10px;padding:18px;background:#fff;display:block;text-align:left;color:var(--ink)}.choice.selected{border:2px solid #6d8c42;background:#f5f8ed;padding:17px}.choice strong{display:block;font-size:13px;margin:8px 0}.choice p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}.choice b{display:block;font-family:Manrope;font-size:24px;margin-top:13px}.choice small{font-size:9px;font-weight:400;color:var(--muted)}.section-label{font-size:11px;font-weight:600;margin:24px 0 12px}.times{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.time{background:#fff;border:1px solid var(--line);border-radius:7px;padding:11px 5px;color:var(--ink);font-size:12px}.time small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.time.selected{background:#eaf1da;border-color:#7b9955}.summary{padding:24px}.summary-title{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}.summary dl,.details{margin:0}.summary dt,.details dt{font-size:10px;color:var(--muted);margin-top:17px}.summary dd,.details dd{font-size:12px;margin:5px 0 0;font-weight:500}.total-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:11px}.total-row strong{font-family:Manrope;font-size:25px}.info{font-size:11px;line-height:1.8;background:#f3f6ec;border-radius:9px;padding:14px;color:#687657;margin:18px 0 0}.warning{background:#fff5e8;color:#98743e}.check-label{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6}.check-label input{margin-top:0}.check-label small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.reminder-row{display:flex;align-items:center;gap:15px;padding:19px 0;border-bottom:1px solid var(--line)}.reminder-row:last-child{border-bottom:0}.reminder-number{width:34px;height:34px;display:grid;place-items:center;background:#f1f5e8;border-radius:100%;color:#77934f;font-size:12px}.reminder-row .check-label{flex:1}.email-preview{background:#f4f5f0;padding:25px}.email-sheet{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.email-brand{background:var(--ink);color:var(--lime);padding:23px;font-family:Manrope;font-weight:800;letter-spacing:1px}.email-content{padding:25px}.email-content p{font-size:12px;line-height:1.8;color:#74806b}.email-content h3{font-size:19px;line-height:1.4;margin:8px 0 15px}.email-detail{padding:16px;background:#f5f7ef;border-radius:8px;font-size:12px;line-height:1.9}.integration{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:9px;padding:16px;margin-top:12px;gap:15px}.integration h3{font-size:12px}.integration p{font-size:10px;color:var(--muted);margin:5px 0 0}.pill{font-size:9px;background:#f1f2ee;border-radius:5px;padding:6px 8px;color:var(--muted);white-space:nowrap}.agenda-grid{display:grid;grid-template-columns:65px repeat(3,minmax(110px,1fr));gap:1px;background:var(--line)}.agenda-grid>div{background:#fff;min-height:85px;padding:10px}.agenda-grid .agenda-heading{min-height:45px;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;background:#f8faf4}.agenda-grid .hour{font-size:10px;color:var(--muted);padding-top:20px}.appointment{background:#edf3e3;border-left:3px solid #8cad58;border-radius:5px;padding:10px;width:100%;border-top:0;border-right:0;border-bottom:0;text-align:left;min-height:63px;font-size:10px;color:#50673d}.appointment.pending{background:#fcf3e5;border-left-color:#d5ad68;color:#917242}.appointment strong{display:block;font-size:11px;margin-bottom:5px}.empty-slot{width:100%;min-height:63px;border:1px dashed #e0e6d9;border-radius:5px;background:transparent;color:#9aa78d;font-size:10px}.empty{padding:35px;text-align:center;color:var(--muted);font-size:12px;line-height:1.8}.details{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.icon-button{border:1px solid var(--line);border-radius:7px;width:36px;height:36px;background:white;display:grid;place-items:center}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}dialog{border:1px solid var(--line);border-radius:18px;padding:28px;max-width:560px;width:calc(100% - 30px);max-height:88vh;color:var(--ink);box-shadow:0 30px 100px #17272430}dialog::backdrop{background:#10221980;backdrop-filter:blur(3px)}#toast{position:fixed;bottom:30px;left:calc(50% + 100px);transform:translateX(-50%);background:var(--ink);color:white;max-width:90%;border-radius:10px;padding:15px 22px;font-size:12px;box-shadow:0 8px 30px #0002;z-index:100;display:none}#toast.show{display:block}footer{display:flex;justify-content:space-between;gap:10px;margin:0 42px;padding:20px 0;border-top:1px solid var(--line);font-size:10px;color:#99a08e}footer span{letter-spacing:1.6px}.mobile-only{display:none}.space-top{margin-top:24px}.text-muted{color:var(--muted)}.errors{color:#a54632;font-size:12px;line-height:1.7}.capacity-note{font-size:10px;color:var(--muted);padding:13px 23px;background:#fafbf8;border-top:1px solid var(--line)}
@media(min-width:1500px){main{padding-top:45px}.hero{min-height:210px}.hero h2{font-size:31px}}
@media(max-width:1150px){.sidebar{width:205px;padding:30px 16px}.workspace{margin-left:205px}.topbar{padding:0 25px}main{padding:30px 25px}.demo-banner{padding:10px 25px}.columns{grid-template-columns:1fr}.site-list{display:grid;grid-template-columns:1fr 1fr}.note-card{margin-top:15px}.stats{gap:10px}.stat{padding:15px}.form-layout{grid-template-columns:1fr}.summary{display:none}.event-date{padding-left:25px}footer{margin:0 25px}#toast{left:calc(50% + 100px)}}
@media(max-width:700px){.sidebar{position:fixed;inset:auto 0 0;width:100%;height:74px;padding:0;background:#fff;color:var(--ink);border-top:1px solid var(--line);box-shadow:0 -4px 20px #17272405}.sidebar>.brand,.sidebar>.event-tag,.sidebar>.nav-label,.sidebar-bottom{display:none}nav{height:100%;display:flex;justify-content:space-around;gap:0;padding:6px 4px}nav a{padding:7px 3px;font-size:9px;flex:1;flex-direction:column;gap:5px;color:#8b9684;border-radius:8px}nav a.active{background:#eff4e4;color:#405a2d}nav a .icon{width:21px;height:21px}.workspace{margin:0}.topbar{height:62px;padding:0 20px}.breadcrumb{font-size:11px}.breadcrumb>span{padding:0 8px}.timezone{display:none}.demo-banner{padding:10px 20px;font-size:10px;line-height:1.6;align-items:flex-start}.demo-dot{margin-top:5px}main{padding:25px 18px 30px;min-height:calc(100vh - 250px)}.page-head{align-items:flex-start;gap:10px;margin-bottom:21px}h1{font-size:25px;letter-spacing:-1px}.subtitle{font-size:11px;margin-top:7px}.page-head>.btn{font-size:11px;padding:10px 12px;min-height:40px}.page-head>.btn .icon{width:16px;height:16px}.hero{padding:24px 22px;min-height:190px;margin-bottom:18px;align-items:flex-start}.hero h2{font-size:23px;max-width:230px}.hero p{font-size:10px;max-width:210px;line-height:1.7}.hero .eyebrow{font-size:9px}.hero::after{right:-120px;top:-30px}.event-date{min-width:auto;border:0;padding:12px 0 0 8px;text-align:center}.event-date strong{font-size:44px}.event-date span{font-size:9px;letter-spacing:0}.event-date small{font-size:9px}.hero .btn{font-size:10px;min-height:37px;padding:9px 13px}.stats{grid-template-columns:1fr 1fr;gap:11px;margin-bottom:22px}.stat{padding:16px}.stat strong{font-size:27px;margin-top:10px}.stat-label{font-size:10px}.columns{gap:18px}.panel-head{padding:19px 17px 16px}.panel-head h2{font-size:15px}.panel-body{padding:19px 17px}.panel-head .link{font-size:10px}th{padding:12px 15px}td{padding:16px 15px}.hide-mobile{display:none}.site-list{grid-template-columns:1fr}.site-card{padding:17px}.toolbar{gap:9px}.toolbar select{flex:1;width:100px;font-size:11px}.toolbar .search{flex-basis:100%}.form-grid{grid-template-columns:1fr;gap:17px}.combo-grid{gap:9px}.choice{padding:13px}.choice.selected{padding:12px}.choice strong{font-size:12px}.choice p{font-size:10px}.choice b{font-size:22px}.times{gap:8px}.steps{gap:4px;margin-bottom:20px}.step{font-size:10px;line-height:1.6}.step span{display:block}.email-preview{padding:17px}.email-content{padding:20px}.agenda-grid{grid-template-columns:45px repeat(3,minmax(80px,1fr))}.agenda-grid>div{padding:5px}.agenda-grid .agenda-heading{font-size:9px}.appointment{padding:8px 5px;font-size:9px}.appointment strong{font-size:10px}.empty-slot{font-size:9px}.details{grid-template-columns:1fr 1fr}dialog{padding:22px}.dialog-head h2{font-size:17px}.dialog-actions .btn{flex:1;font-size:11px}footer{margin:0 18px 90px;font-size:9px;line-height:1.6}footer span{white-space:nowrap;font-size:8px}#toast{left:50%;bottom:90px;width:max-content}.integration{align-items:flex-start}.event-date{margin-left:3px}}
@media(prefers-reduced-motion:no-preference){main{animation:appear .25s ease}@keyframes appear{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}}

/* Empire Keeway / EK Day: original logos, blue, orange and white. */
:root {
  --brand-blue: #0731b2;
  --brand-blue-dark: #08267b;
  --brand-orange: #f18b13;
  --ink: #172b50;
  --muted: #64728b;
  --paper: #f4f6fb;
  --line: #e0e6f1;
  --lime: var(--brand-orange);
  --green: var(--brand-blue);
  --orange: var(--brand-orange);
}
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible { outline-color: var(--brand-orange); }
.sidebar { background: linear-gradient(165deg, #0731b2 0%, #072d98 48%, #081e5e 100%); color: #e4ecff; }
.brand { flex-direction: column; gap: 9px; }
.brand-logo { display: block; width: 152px; height: auto; object-fit: contain; border-radius: 8px; }
.brand small { color: #d4e1ff; letter-spacing: 2px; margin: 0; }
.event-tag { border-color: #5575c8; background: #ffffff08; color: #fff; margin: 23px 0 28px; }
.nav-label { color: #b4c8f4; }
nav a { color: #e0e9ff; }
nav a:hover { background: #ffffff12; }
nav a.active { color: #172b50; background: var(--brand-orange); box-shadow: 0 5px 16px #00164d26; }
.sidebar-bottom > p, .profile small { color: #b6c9f3; }
.profile { border-color: #ffffff26; }
.profile .avatar { background: #ffffff1c; color: #fff; }
.topbar { background: #fff; }
.header-identity { display: flex; align-items: center; gap: 10px; min-width: 0; }
.empire-logo { width: 148px; height: auto; object-fit: contain; flex-shrink: 0; }
.breadcrumb span { color: #ccd4e5; padding: 0 9px; }
.demo-badge { color: #815011; border-color: #f4c995; background: #fff8ec; }
.demo-banner { background: #eaf0fc; color: #455e88; }
.demo-dot { background: var(--brand-blue); }
.btn:hover { background: #edf2ff; }
.btn.primary { background: var(--brand-blue); border-color: var(--brand-blue); color: #fff; }
.btn.primary:hover { background: var(--brand-blue-dark); border-color: var(--brand-blue-dark); }
.btn.brand-cta { background: var(--brand-orange); border-color: var(--brand-orange); color: #172b50; font-weight: 700; }
.btn.brand-cta:hover { background: #ffa52e; }
.hero { background: linear-gradient(115deg, #08267b 0%, #0731b2 68%, #1649c5 100%); border-bottom: 4px solid var(--brand-orange); min-height: 232px; }
.hero::after { border: 0; border-radius: 0; width: 115px; height: 400px; transform: skewX(-25deg); background: #ffffff0b; right: 150px; top: -60px; opacity: 1; }
.hero::before { content: ''; position: absolute; background: #f18b1314; width: 18px; height: 400px; top: -60px; right: 127px; transform: skewX(-25deg); }
.hero .eyebrow { color: #ffb449; }
.hero p { color: #d5e2ff; }
.hero .hero-content > .eyebrow { color: #ffb449; }
.event-date { border-color: #ffffff30; padding-left: 28px; min-width: 190px; }
.hero-logo { display: block; width: 155px; height: auto; border-radius: 8px; margin-bottom: 12px; }
.event-numeral { display: flex; align-items: center; gap: 12px; }
.event-date strong { font-size: 46px; color: #ffb449; }
.event-date span { font-size: 10px; line-height: 1.6; margin: 0; }
.event-date small { display: block; color: #d5e2ff; letter-spacing: 0; }
.stat { box-shadow: 0 3px 12px #0731b204; }
.stat-label { color: #64728b; }
.stat-label .icon { color: #617cbc; }
.stat strong { color: var(--brand-blue); }
.stat:nth-child(3) strong { color: #a75a00; }
.stat small { color: #697890; }
th { background: #f7f9fd; color: #67758c; }
td { border-color: #edf0f7; }
.client .avatar { background: #edf2ff; color: #3658a4; }
.badge { background: #eef1f7; color: #62718a; }
.badge.confirmed { background: #eaf0ff; color: #214ca3; }
.badge.pending { background: #fff0db; color: #915000; }
.badge.attended { background: #eef0f5; color: #485979; }
.badge.cancelled, .badge.rejected { color: #a34a38; }
.site-icon { background: #edf2ff; color: var(--brand-blue); }
.progress { background: #e9eef8; }
.progress > span { background: var(--brand-orange); }
.note-card { background: #edf2ff; border-color: #d8e3fa; }
.note-card .icon { color: var(--brand-blue); }
.note-card p { color: #536888; }
.note-card h3 { color: #203f80; }
.search .icon { color: #7d8da9; }
input, select { border-color: #d9e1f0; }
input[type=checkbox] { accent-color: var(--brand-blue); }
.step { border-color: #dfe5f1; color: #6a7994; }
.step.active { border-color: var(--brand-orange); color: var(--brand-blue); }
.choice.selected { border-color: var(--brand-blue); background: #f0f5ff; }
.choice b { color: var(--brand-blue); }
.time.selected { background: #eaf0ff; border-color: var(--brand-blue); color: var(--brand-blue); }
.info { background: #edf2ff; color: #4a638c; }
.warning { background: #fff2e1; color: #89540e; }
.reminder-number { color: var(--brand-blue); background: #edf2ff; }
.email-preview { background: #f0f3fa; }
.email-brand { background: var(--brand-blue); display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 20px; border-bottom: 4px solid var(--brand-orange); }
.email-event-logo { display: block; width: 90px; height: auto; border-radius: 5px; }
.email-empire { background: white; padding: 9px; border-radius: 6px; max-width: 145px; }
.email-empire img { display: block; width: 100%; height: auto; }
.email-content p { color: #64728b; }
.email-detail { background: #edf2ff; border-left: 3px solid var(--brand-orange); }
.pill { background: #eef1f8; color: #65738b; }
.agenda-grid .agenda-heading, .capacity-note { background: #f7f9fd; }
.appointment { background: #eaf0ff; border-left-color: var(--brand-blue); color: #284d98; }
.appointment.pending { background: #fff1dd; border-left-color: var(--brand-orange); color: #8b5510; }
.empty-slot { border-color: #dce3f1; color: #6b80a1; }
dialog { box-shadow: 0 30px 100px #08267b30; }
dialog::backdrop { background: #071b4780; }
#toast { background: var(--brand-blue-dark); }
footer { color: #6a7a96; }
@media (max-width: 1150px) {
  .brand-logo { width: 138px; }
  .event-date { min-width: 170px; padding-left: 22px; }
  .hero-logo { width: 140px; }
}
@media (max-width: 700px) {
  .sidebar { background: #fff; box-shadow: 0 -4px 20px #0731b209; }
  nav a { color: #617492; }
  nav a:hover { background: #edf2ff; }
  nav a.active { background: #eaf0ff; color: var(--brand-blue); box-shadow: inset 0 -3px var(--brand-orange); }
  .topbar { padding: 0 18px; height: 66px; }
  .empire-logo { width: 115px; }
  .header-identity { gap: 0; }
  .breadcrumb { font-size: 10px; }
  .breadcrumb span { padding: 0 6px; }
  .top-actions { gap: 0; margin-left: 8px; }
  .demo-badge { padding: 5px 6px; font-size: 8px; }
  .hero { padding: 24px 20px; min-height: 230px; gap: 10px; align-items: center; }
  .hero h2 { font-size: 22px; }
  .hero-content { min-width: 0; }
  .hero .hero-content > .eyebrow { font-size: 8px; letter-spacing: 1px; }
  .event-date { min-width: 94px; padding: 0; border: 0; margin-left: 0; }
  .hero-logo { width: 94px; margin-bottom: 15px; }
  .event-numeral { flex-direction: column; gap: 6px; }
  .event-date strong { font-size: 42px; }
  .event-date span { font-size: 9px; }
  .event-date small { font-size: 9px; }
  .email-brand { padding: 13px 16px; }
}
.catalog-toolbar { align-items: end; margin-top: 24px; }
.catalog-toolbar .field { min-width: 220px; }
.catalog-toolbar select { width: 100%; }
.catalog-tools, .catalog-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.catalog-tools { margin-left: auto; }
.catalog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; margin: 24px 0; }
.catalog-card { padding: 24px; min-width: 0; }
.catalog-card-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 20px; }
.catalog-card-top .eyebrow { margin: 0; font-size: 10px; }
.catalog-card h2 { overflow-wrap: anywhere; }
.catalog-desc { color: var(--muted); font-size: 13px; line-height: 1.7; min-height: 44px; white-space: pre-wrap; overflow-wrap: anywhere; }
.catalog-price { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; margin: 24px 0; }
.catalog-price strong { font-size: 28px; color: var(--brand-blue); }
.catalog-price span { font-size: 12px; color: var(--muted); }
.catalog-inactive { background: #f6f7fa; }
.import-label { position: relative; overflow: hidden; cursor: pointer; }
.import-label input { position: absolute; inset: 0; opacity: 0; width: 100%; cursor: pointer; }
.import-label:focus-within { outline: 2px solid var(--brand-blue); outline-offset: 3px; }
.field textarea { width: 100%; box-sizing: border-box; font: inherit; border: 1px solid var(--line); border-radius: 8px; padding: 12px; resize: vertical; color: var(--ink); background: #fff; }
.field textarea:focus { outline: 2px solid var(--brand-blue); outline-offset: 1px; }
@media (max-width: 700px) {
  .catalog-grid { grid-template-columns: 1fr; gap: 14px; }
  .catalog-card { padding: 19px; }
  .catalog-tools { margin-left: 0; width: 100%; }
  .catalog-tools .btn, .catalog-actions .btn { flex: 1; }
  .catalog-toolbar .field { width: 100%; }
  nav a { min-width: 0; }
  #combo-form input, #combo-form select, #combo-form textarea { font-size: 16px; }
}
@media (max-width: 380px) {
  .breadcrumb { display: none; }
  .hero { padding: 22px 16px; gap: 9px; }
  .hero h2 { font-size: 20px; }
  .hero-logo { width: 80px; }
  .event-date { min-width: 80px; }
}

.bike-catalog-banner { display: flex; align-items: center; gap: 17px; padding: 20px 24px; margin: 0 0 26px; background: #fff; border: 1px solid #cedafa; border-left: 4px solid var(--brand-orange); border-radius: 12px; color: var(--ink); text-decoration: none; }
.bike-catalog-banner > span:nth-child(2) { flex: 1; }
.bike-catalog-banner strong, .bike-catalog-banner small { display: block; }
.bike-catalog-banner strong { font-size: 16px; }
.bike-catalog-banner small { font-size: 12px; margin-top: 5px; color: var(--muted); }
.bike-catalog-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: #eef3ff; color: var(--brand-blue); flex-shrink: 0; }
.bike-catalog-icon .icon { width: 30px; height: 30px; }
.bike-manual-callout { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 22px; border-bottom: 1px solid var(--line); margin-bottom: 24px; }
.bike-manual-callout p { font-size: 13px; color: var(--muted); margin-bottom: 0; }
.bike-toolbar { display: flex; gap: 12px; }
.bike-toolbar .search { flex: 1; min-width: 0; }
.bike-toolbar .search input { width: 100%; min-width: 0; }
.bike-toolbar select { min-width: 155px; }
.bike-count, .bike-source { font-size: 12px; line-height: 1.7; color: var(--muted); margin: 18px 0; }
.bike-source a { color: var(--brand-blue); text-underline-offset: 3px; }
.bike-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.bike-card { padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: white; color: var(--ink); text-align: left; transition: border-color .15s, box-shadow .15s; min-width: 0; }
.bike-card:hover, .bike-card.selected { border-color: var(--brand-blue); box-shadow: 0 4px 18px #0731b21a; }
.bike-card:focus-visible { outline: 3px solid var(--brand-orange); outline-offset: 2px; }
.bike-card img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; background: white; }
.bike-card-info { display: flex; flex-direction: column; gap: 6px; padding: 15px; border-top: 1px solid #eff2f8; }
.bike-card-info small { color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .5px; }
.bike-card-info strong { font-size: 15px; min-height: 38px; overflow-wrap: anywhere; }
.bike-card-info > span { font-size: 12px; color: var(--muted); }
.bike-card-info b { display: flex; align-items: center; justify-content: space-between; font-size: 11px; color: var(--brand-blue); margin-top: 8px; }
.bike-card-info .icon { width: 16px; height: 16px; }
.bike-pagination { display: flex; justify-content: center; align-items: center; gap: 18px; margin-top: 22px; font-size: 12px; }
.bike-pagination button:disabled { opacity: .4; cursor: default; }
.motorcycle-section { margin-top: 32px; border-top: 1px solid var(--line); padding-top: 6px; }
.motorcycle-section .bike-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bike-mode-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0; }
.bike-mode-actions .btn { font-size: 12px; }
.bike-selected { display: flex; align-items: center; gap: 22px; border: 1px solid #cedafa; border-radius: 12px; padding: 16px; background: white; }
.bike-selected img { width: 150px; height: 150px; object-fit: contain; flex-shrink: 0; }
.bike-selected .eyebrow { font-size: 9px; }
.bike-selected h3 { font-size: 18px; }
.bike-selected p { color: var(--muted); font-size: 12px; line-height: 1.7; }
.booking-bike { display: flex; align-items: center; gap: 18px; padding: 8px 0 20px; }
.booking-bike img { width: 115px; height: 115px; object-fit: contain; }
.booking-bike span { font-weight: 700; }
@media (max-width: 1150px) { .bike-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .bike-grid, .motorcycle-section .bike-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .bike-card-info { padding: 12px 10px; }
  .bike-card-info strong { font-size: 13px; min-height: 34px; }
  .bike-card-info b { font-size: 10px; }
  .bike-card-info small { font-size: 9px; }
  .bike-toolbar, .bike-manual-callout { flex-direction: column; align-items: stretch; }
  .bike-toolbar input, .bike-toolbar select { font-size: 16px; }
  .bike-manual-callout h2 { font-size: 18px; }
  .bike-mode-actions .btn { width: 100%; justify-content: center; }
  .bike-catalog-banner { padding: 16px; gap: 12px; }
  .bike-catalog-banner strong { font-size: 14px; }
  .bike-selected { gap: 12px; padding: 12px; }
  .bike-selected img { width: 100px; height: 100px; }
  .bike-selected h3 { font-size: 15px; }
}

.booking-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.selected-bike-recap { display: flex; align-items: center; gap: 16px; padding: 15px; border: 1px solid #cedafa; background: white; border-radius: 12px; margin-top: 20px; }
.selected-bike-recap img { width: 90px; height: 90px; object-fit: contain; }
.selected-bike-recap > .icon { width: 48px; height: 48px; color: var(--brand-blue); }
.selected-bike-recap > div { flex: 1; min-width: 0; }
.selected-bike-recap strong, .selected-bike-recap span { display: block; }
.selected-bike-recap span { color: var(--muted); font-size: 12px; line-height: 1.6; margin-top: 5px; }
.category-rule { font-size: 11px; color: var(--muted); line-height: 1.7; }
.no-category-combos { background: #fff7ed; border: 1px solid #f5d9b6; border-radius: 10px; margin-top: 20px; }
@media (max-width: 700px) {
  .booking-steps .step { font-size: 10px; min-width: 0; }
  .selected-bike-recap { flex-wrap: wrap; gap: 12px; }
  .selected-bike-recap img { width: 70px; height: 70px; }
  .selected-bike-recap .btn { width: 100%; justify-content: center; }
}

/* Transparent EK Day artwork, scaled to its natural aspect ratio. */
.brand-logo, .hero-logo, .email-event-logo { border-radius: 0; background: transparent; object-fit: contain; }
.brand-logo { width: 172px; }
.brand { gap: 14px; }
.hero-logo { width: 174px; }
.email-event-logo { width: 104px; }
.mobile-event-brand { display: none; }
@media (max-width: 1150px) and (min-width: 701px) {
  .brand-logo { width: 150px; }
  .hero-logo { width: 144px; }
}
@media (max-width: 700px) {
  .topbar { height: 74px; }
  .header-identity { gap: 16px; }
  .mobile-event-brand { display: flex; align-items: center; padding-right: 14px; border-right: 1px solid var(--line); }
  .mobile-event-brand img { display: block; width: 76px; height: auto; }
  .empire-logo { width: 112px; }
  .breadcrumb { display: none; }
  .hero { flex-direction: column-reverse; align-items: stretch; gap: 21px; padding: 23px; min-height: 0; }
  .event-date { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 0 0 17px; border-bottom: 1px solid #ffffff30; }
  .hero-logo { width: 130px; margin: 0; }
  .event-numeral { flex-direction: row; text-align: left; gap: 10px; }
  .event-date strong { font-size: 38px; }
  .event-date span, .event-date small { font-size: 9px; }
  .hero h2 { font-size: 25px; max-width: none; }
  .hero p { max-width: none; font-size: 12px; line-height: 1.65; }
  .hero .hero-content > .eyebrow { font-size: 9px; }
  .hero .btn { min-height: 44px; font-size: 12px; padding: 12px 16px; }
  .hero::after { right: -10px; }
  .hero::before { right: 110px; }
  nav a { font-size: 10px; }
}
@media (max-width: 380px) {
  .header-identity { gap: 10px; }
  .mobile-event-brand { padding-right: 10px; }
  .mobile-event-brand img { width: 64px; }
  .empire-logo { width: 95px; }
  .hero { padding: 20px; }
  .hero-logo { width: 108px; }
  .event-date { gap: 10px; }
  .event-date strong { font-size: 32px; }
  .hero h2 { font-size: 23px; }
}
/* Partner brand lockup: transparent artwork, consistent optical sizing. */
.topbar { height: auto; min-height: 92px; padding-top: 16px; padding-bottom: 16px; gap: 16px; flex-wrap: wrap; }
.header-identity { flex: 1; gap: 16px; }
.header-partners { display: flex; align-items: center; gap: 22px; flex-shrink: 0; }
.header-partners .empire-logo { width: 148px; height: 54px; }
.header-partners .partner-logo { display: block; height: 54px; object-fit: contain; }
.header-partners .mototop-logo { width: 112px; }
.header-partners .daleguaya-logo { width: 88px; }
.topbar .breadcrumb { white-space: nowrap; }
.topbar .top-actions { margin-left: auto; }
@media (min-width: 701px) and (max-width: 1250px) {
  .topbar .breadcrumb { display: none; }
  .header-partners { gap: 16px; }
  .header-partners .empire-logo { width: 130px; }
  .header-partners .mototop-logo { width: 100px; }
  .header-partners .daleguaya-logo { width: 78px; }
  .topbar .timezone { display: none; }
}
@media (max-width: 700px) {
  .topbar { padding: 13px 14px 10px; min-height: 0; gap: 7px; }
  .header-identity { flex: 0 0 100%; width: 100%; gap: 10px; }
  .mobile-event-brand { padding-right: 9px; flex: 0 0 58px; }
  .mobile-event-brand img { width: 48px; height: 36px; object-fit: contain; }
  .header-partners { display: grid; grid-template-columns: 1.2fr 1fr .85fr; gap: 10px; flex: 1; min-width: 0; }
  .header-partners .empire-logo, .header-partners .mototop-logo, .header-partners .daleguaya-logo { width: 100%; min-width: 0; height: 46px; }
  .topbar .top-actions { line-height: 1; }
  .topbar .demo-badge { font-size: 8px; padding: 3px 6px; }
}
/* Team access and administration */
.login-card{max-width:510px;margin:30px auto;padding:36px}.login-logo{width:150px;height:110px;object-fit:contain;display:block;margin:0 auto 18px}.login-card h1{font-size:30px;line-height:1.12;margin:12px 0}.login-card .field{display:flex;flex-direction:column;gap:8px}.login-card .btn{width:100%;justify-content:center}.login-footnote{font-size:12px;color:#617293;margin:24px 0 0;line-height:1.6}.account-link{border:0;padding:6px 0;background:none;color:#c9d9ff;cursor:pointer;font:inherit;font-size:12px}.temporary-password{font-family:monospace;font-size:14px;overflow-wrap:anywhere;user-select:all}.profile{gap:12px}@media(max-width:600px){.login-card{padding:24px;margin:12px 0}.login-card h1{font-size:26px}.login-logo{width:130px;height:95px}}

.rate-settings{margin-bottom:24px}.rate-save{display:flex;align-items:flex-end}.payment-preview{margin-top:20px;padding:16px 20px;background:#edf3ff;border:1px solid #cddcff;border-radius:12px}.payment-preview p{margin:6px 0;line-height:1.6}[name="plate"]{text-transform:uppercase}

/* Team administration: cards remain usable on phones without a wide table. */
.team-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}
.team-stat{padding:20px 24px;border-top:3px solid #f28b13;display:flex;flex-direction:column;gap:7px}.team-stat strong{font-size:30px;color:#10348f}.team-stat span{font-size:12px;color:#586b8e}
.team-toolbar{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.team-toolbar .field{min-width:160px;flex:1}.team-toolbar .team-search{flex:2;min-width:220px}.team-toolbar .btn{min-height:44px}.team-sync,.team-count,.team-created{font-size:12px;color:#617293;line-height:1.6}.team-sync{padding:12px 0;border-bottom:1px solid var(--line)}
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.team-card{border:1px solid var(--line);border-radius:12px;padding:22px;background:#fff}.team-inactive{background:#f7f8fb}.team-person{display:flex;align-items:center;gap:12px}.team-person>div{min-width:0}.team-person h3{margin:0 0 5px;font-size:16px;overflow-wrap:anywhere}.team-person h3 small{font-size:10px;color:#184fc7;background:#eaf0ff;border-radius:4px;padding:3px 5px}.team-avatar{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#eaf0ff;color:#143bb0;font-weight:700;flex-shrink:0}.team-username{font-size:12px;color:#617293;overflow-wrap:anywhere}.team-labels{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;align-items:center}.team-role{font-size:11px;padding:5px 8px;border:1px solid var(--line);border-radius:5px;color:#173a77}.team-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.team-permissions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.team-permissions h2{font-size:18px;margin:8px 0}.team-permissions p:not(.eyebrow){font-size:13px;line-height:1.7;color:#617293}.team-panel .field{display:flex;flex-direction:column;gap:7px}#user-form .field{display:flex;flex-direction:column;gap:8px}#user-form small{line-height:1.6;color:#617293}#user-form [readonly]{background:#f4f6fb}#user-form .dialog-actions{flex-wrap:wrap}.dialog-actions{flex-wrap:wrap}
@media(max-width:900px){.team-grid{grid-template-columns:1fr}.team-stat{padding:16px}.team-permissions{grid-template-columns:1fr}}
@media(max-width:600px){.team-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.team-stat strong{font-size:26px}.team-toolbar .field{min-width:0;flex:1 1 40%}.team-toolbar .team-search{flex:1 1 100%;min-width:0}.team-toolbar>.btn{width:100%;justify-content:center}.team-panel{padding:16px}.team-card{padding:16px}.team-card-actions .btn{flex:1;justify-content:center}.team-person h3{font-size:15px}}
