:root{--bg:#0b0f19;--panel:#111827;--text:#e5e7eb;--muted:#9ca3af;--border:#243244;--accent:#22c55e;--today-header:#2f6fb9;--today-card:var(--panel);--today-title:#93c5fd;--today-link:#93c5fd;--today-highlight:#1f2d40}:root[data-theme=light]{--bg:#f7f7fb;--panel:#ffffff;--text:#111827;--muted:#6b7280;--border:#e5e7eb;--accent:#16a34a;--today-header:#2f6fb9;--today-card:#faf7f6;--today-title:#db6b3d;--today-link:#2f6fb9;--today-highlight:#dcebef}*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{display:flex;min-height:100vh}.sidebar{width:280px;background:var(--panel);border-right:1px solid var(--border);padding:16px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;font-weight:700;margin-bottom:18px}.badge{padding:2px 8px;border:1px solid var(--border);border-radius:999px;font-size:12px;color:var(--muted)}.nav{display:flex;flex-direction:column;gap:6px}.nav a{padding:10px 12px;border-radius:10px;color:var(--muted)}.nav a.active{color:var(--text);background:#22c55e1f;border:1px solid rgba(34,197,94,.25)}.main{flex:1;padding:0}.top-menu{height:58px;border-bottom:2px solid #8ac8f8;background:linear-gradient(180deg,#94a3b82e,#94a3b814);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:10}.top-menu-left,.top-menu-right{display:flex;align-items:center;gap:8px}.top-menu a,.top-menu-link{border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:6px;font-size:14px;text-transform:uppercase;letter-spacing:.02em;cursor:pointer}.top-menu a.active,.top-menu a:hover,.top-menu-link:hover{color:var(--text);background:#ffffff59}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 20px}.content-shell{padding:0 20px 20px}.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 980px){.sidebar{width:240px}.grid{grid-template-columns:1fr}.top-menu{height:auto;padding:8px 12px;flex-wrap:wrap;gap:8px}.top-menu-left,.top-menu-right{flex-wrap:wrap}.top-menu a,.top-menu-link{padding:8px 10px;font-size:12px}}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text)}.field select option,.field select optgroup{background:var(--panel);color:var(--text)}.row{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid var(--border);background:transparent;color:var(--text);padding:10px 12px;border-radius:12px;cursor:pointer}.btn.primary{background:#22c55e2e;border-color:#22c55e59}.small{font-size:12px;color:var(--muted)}.hr{height:1px;background:var(--border);margin:14px 0}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;padding:8px 10px;color:var(--muted)}.images{display:flex;gap:10px;flex-wrap:wrap}.imageTile{width:140px;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#ffffff08}.imageTile img{display:block;width:100%;height:90px;object-fit:cover}.imageTile .meta{padding:8px;display:flex;justify-content:space-between;align-items:center}.documentation-tabs{display:flex;gap:8px;flex-wrap:wrap}.documentation-tab{border:1px solid var(--border);background:var(--panel);color:var(--muted);border-radius:12px;padding:10px 14px;cursor:pointer}.documentation-tab.active{color:var(--text);border-color:#22c55e73;background:#22c55e24}.documentation-editor{padding:14px}.documentation-toolbar{display:flex;gap:8px;flex-wrap:wrap;padding:8px;border:1px solid var(--border);border-radius:10px;margin:10px 0;color:var(--muted);font-size:12px}.documentation-toolbar span{padding:3px 6px;border:1px solid var(--border);border-radius:6px}.documentation-textarea{width:100%;min-height:190px;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text);padding:10px}.survey-table{width:100%;border-collapse:collapse;min-width:900px}.survey-table th,.survey-table td{border-bottom:1px solid var(--border);padding:10px;text-align:left;vertical-align:top}.survey-table th{color:var(--muted);font-weight:600;font-size:12px}.testimonial-cell{max-width:320px}.survey-cell-input{border:1px solid var(--border);border-radius:6px;padding:8px;min-height:38px;display:flex;align-items:center}.notes-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px;flex-wrap:wrap}.notes-color-picker{display:flex;align-items:center;gap:8px;color:var(--muted);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.notes-color-picker input{width:36px;height:28px;padding:0;border:1px solid var(--border);border-radius:6px;background:transparent}.notes-editor{width:100%;min-height:360px;border:1px solid var(--border);border-radius:10px;padding:10px;background:transparent;color:var(--text);overflow:auto}.notes-editor:focus{outline:2px solid rgba(34,197,94,.25);outline-offset:1px}.today-page{display:flex;flex-direction:column;gap:18px}.today-header{background:var(--today-header);border-radius:0 0 10px 10px;padding:14px;display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:12px}.today-date-card,.today-stat-card{background:#ffffff26;border-radius:10px;padding:12px;color:#fff}.today-date-row{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.today-date-main{font-size:30px;line-height:1;font-weight:700}.today-date-sub{font-size:18px;line-height:1.1;font-weight:700}.today-arrow{border:0;background:transparent;color:#fff;cursor:pointer;font-size:16px}.today-stat-title{font-size:22px;font-weight:700}.today-stat-value{margin-top:8px;width:34px;height:34px;border-radius:999px;background:#ffffff47;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.today-stat-value.warning{background:#fff;color:#f97316}.today-section{background:var(--today-card)}.today-section-title{margin:0 0 8px;color:var(--today-title)}.today-action-row,.today-next-row{display:grid;grid-template-columns:1.2fr 1.4fr 1.8fr .7fr .8fr .9fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--border);align-items:center}.today-next-row{grid-template-columns:.9fr 1.2fr .8fr 1.4fr .7fr .7fr .9fr}.today-next-row.highlight{background:var(--today-highlight);margin:0 -16px;padding:14px 16px}.today-link{color:var(--today-link);font-weight:700}.today-guest{font-weight:700}.today-banner{display:grid;grid-template-columns:260px 1fr;gap:8px;overflow:hidden}.today-banner-left{background:#2f6fb9;color:#fff;min-height:86px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;text-align:center;padding:8px}.today-banner-strip{min-height:86px;background:linear-gradient(90deg,#89b4f0,#9fd3ff,#7cb2e8,#6596cc)}@media (max-width: 1200px){.today-header{grid-template-columns:1fr 1fr}.today-action-row,.today-next-row{grid-template-columns:1fr;gap:6px}}.bookings-page{display:flex;flex-direction:column;gap:14px}.bookings-timeline{background:#2f6fb9;border-color:#2f6fb9;color:#fff;padding:10px 14px}.bookings-timeline-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.bookings-timeline-track{position:relative;height:66px;border-radius:6px;background:repeating-linear-gradient(to right,#fff3,#fff3 3px,#ffffff12 3px,#ffffff12 8px)}.bookings-timeline-month{position:absolute;top:-22px;font-size:12px;color:#ffffffe6}.bookings-timeline-bar{position:absolute;top:26px;height:14px;border-radius:2px;background:#fffffff2}.bookings-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.bookings-filter{border:0;border-bottom:2px solid var(--border);background:transparent;color:var(--text);padding:8px 0;font-weight:600;cursor:pointer}.bookings-search-wrap{margin-left:auto;min-width:220px;display:flex;align-items:center;border:1px solid #5aa8cd;border-radius:999px;overflow:hidden}.bookings-search{border:0;background:transparent;color:var(--text);padding:8px 12px;width:100%}.bookings-search:focus{outline:none}.bookings-search-icon{padding:8px 10px;background:#5aa8cd;color:#fff}.bookings-pill{border:0;border-radius:999px;padding:8px 14px;background:#5aa8cd;color:#fff;font-weight:700;cursor:pointer}.bookings-pill.danger{background:#df6a41}.bookings-list{padding:0}.bookings-header-row,.bookings-row{display:grid;grid-template-columns:1.1fr 1.2fr 1.2fr 1.7fr .9fr .9fr .9fr;gap:10px;align-items:start;padding:12px 14px}.bookings-header-row{border-bottom:2px solid var(--border);color:#4f9ccd;font-weight:700;font-size:13px}.bookings-row{border-bottom:1px solid var(--border)}.bookings-row.expanded{background:#5faacd29}.bookings-id a{color:#4f9ccd;text-decoration:underline}.bookings-edit{color:#5aa8cd}.bookings-source.uniche{color:#2d7dcc;font-weight:700}.bookings-source.airbnb{color:#7c3aed;font-weight:700}.danger-text{color:#df6a41}.bookings-expanded{display:grid;grid-template-columns:1.8fr 1fr;gap:10px;padding:0 14px 12px;border-bottom:1px solid var(--border);background:#5faacd29}.bookings-contact-row{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px;padding:4px 0;font-size:14px}.bookings-payment{font-size:14px;display:flex;flex-direction:column;gap:8px;justify-content:center}@media (max-width: 1100px){.bookings-search-wrap{margin-left:0}.bookings-header-row,.bookings-row{grid-template-columns:1fr;gap:4px}.bookings-expanded,.bookings-contact-row{grid-template-columns:1fr}}.new-booking-page{display:flex;flex-direction:column;gap:12px}.new-booking-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.new-booking-totals{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:14px;min-width:560px}.new-booking-totals div{display:flex;flex-direction:column;gap:4px;color:var(--muted)}.new-booking-totals strong{color:var(--text);font-size:28px;line-height:1.1}.new-booking-layout{display:grid;grid-template-columns:250px 1fr;gap:14px}.itinerary-panel{border:1px solid var(--border);background:var(--panel);border-radius:8px;overflow:hidden;height:fit-content}.itinerary-title{background:#78c4e8;color:#133444;padding:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:center}.itinerary-item{padding:10px 12px;border-top:1px solid rgba(120,196,232,.5);display:flex;flex-direction:column;gap:6px}.itinerary-item-label{font-size:14px;line-height:1.2;font-weight:700}.itinerary-item-amt{font-weight:700;color:var(--muted);text-align:right}.new-booking-main{min-width:0}.step-tabs{display:flex;flex-wrap:wrap;gap:0;margin-bottom:8px}.step-tabs button{border:1px solid var(--border);border-bottom:none;background:var(--panel);color:var(--text);padding:12px 18px;border-top-left-radius:24px;border-top-right-radius:24px;cursor:pointer}.step-tabs button.active{background:#3db1e8;color:#0f172a}.step-panel{border-top-left-radius:0}.new-booking-table-head,.new-booking-table-row{display:grid;grid-template-columns:1.4fr .4fr .7fr .6fr .6fr .6fr .8fr auto;gap:10px;align-items:center;padding:8px 4px}.new-booking-table-head{font-weight:700;color:var(--muted);border-bottom:2px solid #78c4e8}.new-booking-table-row{border-bottom:1px solid var(--border)}.new-booking-table-row.extras{grid-template-columns:1.3fr 1fr .6fr .5fr .9fr auto}.pay-grid{display:grid;grid-template-columns:1fr 380px;gap:16px}.summary-block{background:#78c4e8;color:#133444;padding:10px 12px;margin-bottom:10px;font-weight:700}.payment-box{border:1px solid #b9dbe8;border-radius:10px;padding:14px;height:fit-content}.payment-box>div{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}@media (max-width: 1300px){.new-booking-header{flex-direction:column}.new-booking-totals{min-width:0;width:100%}}@media (max-width: 1050px){.new-booking-layout,.new-booking-table-head,.new-booking-table-row,.new-booking-table-row.extras,.pay-grid{grid-template-columns:1fr}}.reports-page{display:flex;flex-direction:column;gap:12px}.reports-section-title{margin:14px 0 8px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.reports-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.report-table{width:100%;border-collapse:collapse;min-width:620px}.report-table th,.report-table td{border-bottom:1px solid var(--border);padding:10px;text-align:left;vertical-align:top}.report-table th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
