*{box-sizing:border-box}body{margin:0;background:#f4ead7;color:#2b1b15;font-family:Arial,Helvetica,sans-serif}.hero{background:#851b1d;color:#fff;text-align:center;padding:34px 20px;border-bottom:7px solid #c79a3b}.hero small{letter-spacing:3px}.hero h1{font-family:Georgia,serif;font-size:42px;margin:8px 0}.wrap{max-width:900px;margin:28px auto;padding:0 18px}.card{background:#fffaf0;border:1px solid #ddc9a6;border-radius:14px;padding:22px;margin-bottom:18px;box-shadow:0 5px 18px #6f401318}h2{font-family:Georgia,serif;color:#7d191c}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));grid-gap:10px;gap:10px}.choice{padding:14px;border:1px solid #cdb890;background:#fff;border-radius:10px;cursor:pointer;color:#3b231b}.choice.sel{background:#851b1d;color:#fff;border-color:#851b1d}.choice:disabled{opacity:.45;cursor:not-allowed}.row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eadfc9;padding:13px 0}.row input{width:80px}input,select{width:100%;padding:12px;border:1px solid #cdb890;border-radius:8px;font-size:16px}.formgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}label{font-weight:700;display:block;margin-bottom:6px}.note{font-size:13px;color:#725f52}.primary{background:#851b1d;color:#fff;border:0;border-radius:9px;padding:14px 20px;font-size:16px;font-weight:700;cursor:pointer}.primary:disabled{opacity:.5}.moneyline{display:flex;justify-content:space-between;padding:6px 0}.total{font-size:24px;font-weight:800;border-top:2px solid #c79a3b;margin-top:8px;padding-top:12px}.error{background:#ffe6e6;color:#7c1111;padding:10px;border-radius:8px;margin-top:10px}@media(max-width:650px){.formgrid{grid-template-columns:1fr}.hero h1{font-size:32px}}.adminnav{display:flex;gap:8px;flex-wrap:wrap}.adminnav button{width:auto}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse}td,th{padding:12px 8px;text-align:left;border-bottom:1px solid #ddc9a6}th{color:#7d191c}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:15px}.sectionhead h2{margin:0}.overlay{position:fixed;inset:0;background:#0008;display:flex;align-items:center;justify-content:center;padding:20px;z-index:20}.modal{width:min(620px,100%);max-height:90vh;overflow:auto}.modal label{margin-top:12px}.modal button{margin-top:15px;margin-right:8px}big{font-size:28px;font-weight:800}.actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.actions button,.mini{padding:9px 11px}.schedule{margin-top:15px}.scheduleRow{display:grid;grid-template-columns:150px 1fr;grid-gap:12px;gap:12px;align-items:center;padding:7px 0;border-bottom:1px solid #eadfc9}@media(max-width:650px){.row{align-items:flex-start;gap:12px;flex-direction:column}.actions{justify-content:flex-start}.scheduleRow{grid-template-columns:1fr}.sectionhead{align-items:flex-start}}.wide{max-width:1180px}.kpis{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:10px;gap:10px;margin-bottom:18px}.kpi{background:#fffaf0;border:1px solid #ddc9a6;border-radius:12px;padding:15px;box-shadow:0 4px 14px #6f401310}.kpi span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#725f52;font-weight:700}.kpi strong{display:block;font-family:Georgia,serif;font-size:25px;color:#3b231b;margin-top:6px}.kpi small{display:block;margin-top:4px;color:#725f52}.occ{display:inline-block!important;border-radius:999px;padding:5px 9px;font-size:13px!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:800;white-space:nowrap}.occ.green{background:#dff1df;color:#245d2c}.occ.amber{background:#fff0c7;color:#7b5200}.occ.red{background:#f6d4d4;color:#8a1717}.legend{font-size:12px;color:#725f52;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-left:8px}.dot.green{background:#4f9b5b}.dot.amber{background:#d49b22}.dot.red{background:#b92a2a}.stopgroup{border:1px solid #ddc9a6;border-radius:12px;overflow:hidden;margin-top:12px}.stopsummary{width:100%;border:0;background:#fff;padding:16px;display:grid;grid-template-columns:minmax(220px,1fr) 160px 110px 25px;align-items:center;grid-gap:12px;gap:12px;text-align:left;cursor:pointer;color:#2b1b15}.stopsummary:hover{background:#fffaf0}.stopsummary>div:first-child b,.stopsummary>div:first-child small,.stopsummary>div:first-child span{display:block}.stopsummary>div:first-child b{font-family:Georgia,serif;font-size:22px;color:#7d191c}.stopsummary>div:first-child span{font-weight:700;margin-top:2px}.stopsummary>div:first-child small{color:#725f52;margin-top:4px}.stopstats b,.stopstats span{display:block}.stopstats span{font-size:12px;color:#725f52;margin-top:3px}.chev{text-align:right;color:#7d191c}.inset{background:#fffaf0;border-top:1px solid #ddc9a6;padding:0 12px 10px}.calendarHead,.weekgrid{display:grid;grid-template-columns:repeat(7,minmax(125px,1fr));grid-gap:7px;gap:7px}.calendarHead{padding:8px 2px;color:#7d191c;font-size:11px;text-align:center}.weekscroll{overflow-x:auto;max-height:58vh;padding-bottom:4px}.weekblock{min-width:930px;margin-bottom:14px}.weektitle{font-family:Georgia,serif;color:#7d191c;font-weight:700;margin:8px 0}.daycell{border:1px solid #ddc9a6;border-radius:9px;padding:9px;background:#fff;min-height:92px}.daycell b{display:block;font-size:13px;margin-bottom:7px}.daycell input{font-size:13px;padding:8px}.daycell.outside{background:#eee8dd;color:#998d82}.daycell.outside span{font-size:11px}.modal{width:min(1080px,96vw)}@media(max-width:900px){.kpis{grid-template-columns:repeat(3,1fr)}.stopsummary{grid-template-columns:1fr 120px 100px 20px}}@media(max-width:650px){.kpis{grid-template-columns:repeat(2,1fr)}.stopsummary{grid-template-columns:1fr 90px}.chev,.stopsummary .occ{justify-self:start}.calendarHead{display:none}.weekblock{min-width:0}.weekgrid{grid-template-columns:1fr}.daycell.outside{display:none}}.adminlogo{display:block;width:min(390px,78vw);height:110px;object-fit:contain;margin:0 auto 4px}.hero{padding-top:18px}.reportActions{display:flex;gap:7px;align-items:center;white-space:nowrap}.reportLink{text-decoration:none;display:inline-block}.daycell{min-height:115px}.daycell input{background:#fff}.weekscroll:empty:before{content:"No calendar dates available. Check the tour stop opening and closing dates.";display:block;padding:20px;background:#fff0c7;border-radius:8px;color:#7b5200}.salesTools{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.doorHero{display:flex;justify-content:space-between;gap:16px;padding:16px;margin:14px 0;background:#f5ead4;border-radius:14px}.doorHero span,.doorTicket span{display:block;color:#6f6257}.doorTicket{justify-content:space-between;padding:18px 0;border-bottom:1px solid #dcc39b}.doorTicket,.stepper{display:flex;align-items:center}.stepper{gap:18px}.stepper button{width:48px;height:48px;border-radius:50%;border:1px solid #caa66d;background:white;font-size:28px}.stepper strong{font-size:28px;min-width:28px;text-align:center}.doorTotal{display:flex;justify-content:space-between;align-items:center;font-size:24px;padding:22px 0}.doorTotal strong{font-size:36px}.paybuttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.paybuttons button{padding:20px;border:0;border-radius:12px;font-weight:900;font-size:20px}.cash{background:#176b36;color:white}.cardpay{background:#635bff;color:white}@media(max-width:700px){.paybuttons{grid-template-columns:1fr}.doorHero{flex-direction:column}}.accessbox{margin-top:18px;padding:16px;border:1px solid #dcc79f;border-radius:14px;background:#fffaf0}.accessbox textarea{min-height:90px;resize:vertical}.accessbadge{display:inline-block;padding:4px 8px;border-radius:999px;background:#e8f2ff;font-weight:700}.checkline{display:flex;gap:10px;align-items:center;margin:14px 0}.checkline input{width:auto}.ticketqr{text-align:center;margin:22px 0}.ticketqr img{width:min(280px,80vw);height:auto;background:#fff;padding:10px;border:1px solid #ddc9a6;border-radius:12px}.checkcard{text-align:center}.checkstatus{font-weight:900;font-size:24px;padding:14px;border-radius:10px;margin-bottom:20px}.checkstatus.valid{background:#dff1df;color:#245d2c}.checkstatus.used{background:#fff0c7;color:#7b5200}.ticketcount{font-size:64px;font-weight:900;color:#7d191c;line-height:1}.ticketcount span{display:block;font-size:18px;color:#725f52}.bigaction{width:100%;font-size:22px;padding:20px;margin-top:20px}.checkcard.checked{border:2px solid #d49b22}.ticketrow{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eadfc9;padding:14px 0}.ticketrow .stepper button:disabled{opacity:.35;cursor:not-allowed}@media(max-width:650px){.ticketrow{padding:12px 0}.ticketrow .stepper{gap:12px}.ticketrow .stepper button{width:46px;height:46px}}.premiumPitch{font-weight:800;color:#851b1d}.customerBlock{border-bottom:1px solid #eadfc9;padding-bottom:8px}.customerBlock>.row{border-bottom:0}.customerBookings{margin:0 0 12px 18px;padding:12px;border-left:3px solid #c79a3b;background:#fff}.customerBookings>b{display:block;margin-bottom:7px;color:#7d191c}.bookingLink{width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;border:0;border-top:1px solid #eadfc9;background:transparent;padding:9px 4px;cursor:pointer;color:#3b231b}.bookingLink:hover{background:#fffaf0}.danger{color:#8a1717;border-color:#d9a0a0}@media(max-width:650px){.bookingLink{flex-direction:column;gap:3px}.customerBookings{margin-left:0}}