:root{color-scheme:light;--paper:#f8f7f1;--ink:#201f1b;--muted:#6f6d65;--line:#e7e4da;--yellow:#f2dc00;--gold:#8b7400;--red:#c82f34;--cream:#fbf2c5;--green:#4c7b54}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.site-header{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1320px)/2));gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:43px;height:52px;object-fit:contain}.brand strong{display:block;font-size:12px;letter-spacing:.12em}.brand span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.timezone{font-size:12px;color:#514f46;background:#f5f3eb;padding:9px 12px;border-radius:999px;white-space:nowrap}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px}.shell{max-width:1320px;margin:auto;padding:38px 24px 24px}.intro{display:flex;align-items:center;justify-content:space-between;margin:0 0 25px}.eyebrow{color:var(--gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin:0 0 9px}.intro h1{font-size:30px;letter-spacing:-.04em;margin:0}.intro-copy{color:#625f55;font-size:14px;margin:9px 0 0}.intro-mark{width:58px;height:58px;display:grid;place-items:center;background:var(--yellow);font-weight:900;font-size:14px;border-radius:50%;border:4px solid #fff;box-shadow:0 0 0 1px var(--line)}.layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.8fr);gap:20px;align-items:start}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 2px 10px #30260008}.calendar-panel{padding:21px 20px 17px;overflow:hidden}.booking-panel{padding:22px}.panel-heading{display:flex;justify-content:space-between;align-items:center}.panel-heading h2{margin:0;font-size:20px;letter-spacing:-.03em}.icon-button{height:34px;width:34px;border:1px solid var(--line);border-radius:9px;background:white;color:#514f46;font-size:21px;cursor:pointer}.calendar-tools{display:flex;align-items:center;justify-content:space-between;margin:20px 0 9px;gap:12px}.week-label{font-size:13px;font-weight:700}.calendar-buttons{display:flex;gap:6px}.soft-button{height:32px;min-width:34px;border:1px solid var(--line);border-radius:8px;background:white;color:#3e3b32;font-size:17px;cursor:pointer}.today-button{font-size:11px;padding:0 11px}.soft-button:hover,.icon-button:hover{border-color:#bca800;background:#fffdec}.status-line{font-size:11px;color:var(--muted);min-height:14px;margin:0 0 9px}.calendar-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:9px}.calendar{min-width:680px;display:grid;grid-template-columns:48px repeat(7,minmax(78px,1fr));grid-template-rows:48px 1fr}.day-header{position:relative;text-align:center;border-bottom:1px solid var(--line);border-left:1px solid #f0eee7;padding:8px 2px;background:#fff}.day-header strong{display:block;font-size:10px;letter-spacing:.08em;color:var(--muted)}.day-header span{display:inline-grid;place-items:center;width:24px;height:24px;margin-top:2px;border-radius:50%;font-size:12px}.day-header.is-today span{background:var(--yellow);font-weight:700;color:var(--ink)}.hour-labels{display:grid;grid-template-rows:repeat(24,48px);padding-top:0;color:#77746b;font-size:9px;text-align:right;padding-right:7px}.hour-label{height:48px;transform:translateY(-6px)}.day-column{height:1152px;position:relative;border-left:1px solid #f0eee7;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 47px,#efede6 47px,#efede6 48px)}.booking-block{position:absolute;left:4px;right:4px;min-height:27px;overflow:hidden;padding:5px 6px;background:#fff7c2;border-left:3px solid var(--gold);border-radius:5px;color:#39341e;font-size:10px;line-height:1.25}.booking-block strong{display:block;font-size:10px;overflow-wrap:anywhere}.booking-block span{display:block;margin-top:3px;color:#625b38}.legend{display:flex;align-items:center;gap:7px;margin-top:12px;color:#57544b;font-size:10px}.legend-swatch{width:11px;height:11px;border-radius:3px;background:#fff0a2;border-left:3px solid var(--gold)}.refresh-note{margin-left:auto;color:#858177}.panel-copy{font-size:12px;color:#6a675e;margin:9px 0 19px}form{display:grid;gap:13px}label{display:grid;gap:6px;color:#48443a;font-size:11px;font-weight:700}label>span{color:var(--red);display:inline}label small{color:var(--muted);font-weight:400;display:inline;font-size:10px}input,select,textarea{width:100%;font:400 12px Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;border:1px solid #e2ded3;border-radius:8px;padding:10px 11px;outline:none}input,select{height:39px}textarea{resize:vertical;min-height:72px}input:focus,select:focus,textarea:focus{border-color:#9e8600;box-shadow:0 0 0 3px #9e860020}input::placeholder,textarea::placeholder{color:#99968d}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.submit-button{height:43px;border:0;border-radius:9px;background:var(--yellow);color:var(--ink);font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px}.submit-button:hover{background:#e4ce00}.submit-button:disabled{opacity:.65;cursor:wait}.form-message{font-size:11px;color:var(--red);margin:0;min-height:0}.form-message:empty{display:none}.success-card{display:grid;grid-template-columns:29px 1fr;gap:8px;margin-top:15px;padding:13px;background:#f3f8f1;border:1px solid #d9e8d4;border-radius:9px}.success-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#dbeed7;color:#2e6536;font-weight:700}.success-card strong{font-size:12px}.success-card p{font-size:11px;color:#555;margin:4px 0 9px}.calendar-link{grid-column:2;font-size:11px;color:#684f00;font-weight:700;text-decoration:none}.calendar-link:hover{text-decoration:underline}footer{text-align:center;color:#77746b;font-size:10px;padding:20px 0 0}@media(max-width:850px){.layout{grid-template-columns:1fr}.booking-panel{order:-1}.intro{margin-bottom:17px}.shell{padding-top:25px}}@media(max-width:520px){.site-header{height:68px;padding:0 15px}.brand img{width:36px;height:44px}.brand strong{font-size:10px}.brand span{font-size:9px}.timezone{font-size:10px;padding:8px}.shell{padding:21px 13px}.calendar-panel,.booking-panel{padding:17px 13px}.intro h1{font-size:27px}.intro-copy{font-size:12px}.date-row{grid-template-columns:1fr}.calendar-tools{align-items:flex-start}.refresh-note{font-size:9px}}
.booking-block{cursor:grab;touch-action:none;user-select:none}.booking-block:active{cursor:grabbing}.day-column{touch-action:pan-x}.drag-preview{position:absolute;left:4px;right:4px;z-index:4;pointer-events:none;border:1px dashed var(--gold);border-radius:5px;background:#f2dc0070}.editing-note{margin:0;padding:9px 10px;border-radius:8px;background:#fbf2c5;color:#514916;font-size:11px}.form-actions{display:grid;gap:7px}.cancel-edit-button{height:36px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#514f46;font-size:11px;font-weight:700;cursor:pointer}.booking-dialog{width:min(440px,calc(100vw - 32px));border:1px solid var(--line);border-radius:14px;padding:20px;color:var(--ink);box-shadow:0 16px 50px #201f1b30}.booking-dialog::backdrop{background:#201f1b70}.dialog-topline{display:flex;align-items:center;justify-content:space-between}.dialog-topline .eyebrow{margin:0}.booking-dialog h2{font-size:20px;margin:4px 0 14px}.dialog-details{display:grid;gap:8px;color:#514f46;font-size:12px}.dialog-actions{display:flex;gap:8px;margin-top:20px}.dialog-actions button{min-height:38px;padding:0 12px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer}.dialog-edit{border:0;background:var(--yellow);color:var(--ink)}.dialog-delete{border:1px solid #e4c8c4;background:white;color:#a52b30}
.calendar{grid-template-rows:48px 660px}.calendar-hours-scroll{grid-column:1/-1;min-width:680px;height:660px;overflow-y:auto;display:grid;grid-template-columns:48px repeat(7,minmax(78px,1fr));scrollbar-gutter:stable}

/* iOS 26 inspired web treatment. Translucency stays subtle so the calendar remains clear. */
body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;background:radial-gradient(ellipse at 8% 0%,#f2dc001c,transparent 31rem),radial-gradient(ellipse at 96% 16%,#c82f340d,transparent 28rem),var(--paper)}
.site-header{position:sticky;top:0;z-index:30;background:#ffffffc9;border-color:#e7e4daba;backdrop-filter:saturate(165%) blur(22px);-webkit-backdrop-filter:saturate(165%) blur(22px)}
.panel{background:#fffffff0;border-color:#e2ded3c7;border-radius:22px;box-shadow:0 18px 55px #322b0f12,inset 0 1px #ffffffeb;backdrop-filter:saturate(140%) blur(18px);-webkit-backdrop-filter:saturate(140%) blur(18px);animation:esum-arrive 560ms cubic-bezier(.2,.8,.2,1) both}
.booking-panel{animation-delay:70ms}.site-header,.panel,.booking-dialog{transition:background-color 200ms ease,border-color 200ms ease,box-shadow 220ms ease,transform 220ms cubic-bezier(.2,.8,.2,1)}
button,.booking-block{transition:background-color 180ms ease,border-color 180ms ease,box-shadow 220ms ease,transform 220ms cubic-bezier(.2,.8,.2,1)}
button:hover{transform:translateY(-1px)}button:active{transform:scale(.98)}.booking-block:hover{transform:translateY(-1px);box-shadow:0 5px 14px #81292b20}
.booking-dialog{border-radius:22px;backdrop-filter:saturate(145%) blur(18px);-webkit-backdrop-filter:saturate(145%) blur(18px)}.booking-dialog[open]{animation:esum-arrive 240ms cubic-bezier(.2,.8,.2,1) both}.booking-dialog::backdrop{background:#201f1b50;backdrop-filter:blur(5px)}
input,select,textarea{font-family:inherit;border-radius:12px}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 4px #f2dc0030,0 3px 12px #8b740010}
.submit-button{border-radius:14px;box-shadow:0 5px 15px #8b740021}.submit-button:hover{background:#e4ce00;box-shadow:0 8px 22px #8b74002b}
@keyframes esum-arrive{from{opacity:0;transform:translateY(9px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-transparency:reduce){.site-header,.panel,.booking-dialog{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}button:hover,button:active,.booking-block:hover{transform:none}}
.booking-block{background:var(--booking-bg,#fbe6e5);border-left-color:var(--booking-border,#c82f34);color:var(--booking-text,#76272b)}
.booking-block span{color:var(--booking-muted,#93464a)}
.booking-block .booking-owner{margin-top:2px;font-size:9px;font-weight:600}
.legend{flex-wrap:wrap;column-gap:14px;row-gap:7px}
.legend-item{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.legend-swatch{background:#fbe6e5;border-left-color:#c82f34}
.legend-swatch.relations{background:#fff3bf;border-left-color:#9b7c00}
.legend-swatch.partnerships{background:#e5eff8;border-left-color:#3f729f}
.legend-swatch.marketing{background:#e5f1e8;border-left-color:#4f7d59}
