:root{--pine:#8b6b3b;--text:#24231f;--muted:#807c73;--line:#e7e2d7;--bg:#faf9f6;--gold:#b89658}
body{background:var(--bg);color:var(--text)}aside{background:#f5f1e9;color:#25231f;border-right:1px solid #e3d9c8}aside .tag,aside .label{color:#917c58}.nav button{color:#6d665a}.nav button.active,.nav button:hover{background:#e9deca;color:#433019}.client{border-color:#ded0b7;background:#fff;color:#3b3429}.client small{color:#867c6a}
.top,.metric,.card,.resource-tile{background:#fffefa;border-color:var(--line)}.hero{background:linear-gradient(125deg,#2e2b25,#685238);box-shadow:0 10px 30px #3a2a141c}.hero:after{color:#e6d5aa;border-color:#d7b76f}.badge,.chip{background:#f5eddd;color:#8a6c36;border-color:#e3d4b9}.eyebrow{color:#967641}.btn{color:var(--text);border-color:#e4dac8;background:#fffefa}.btn.primary,.resource-tile a{background:#3a3329;color:#fff;border-color:#3a3329}.track{background:#efe9df}.fill{background:linear-gradient(90deg,#947343,#d4b676)}.note,.resource-note{background:#f7f1e5;color:#75654a}.step b,.resource-icon{background:#f2e8d6;color:#82622f}.zone.active{background:#f8f0e1;border-color:#c7a76a}.weekday{background:#f5f0e7;color:#8c7a5c}.day.other{background:#f9f7f2}.event{background:#f4e8d0;color:#795a29;border-color:#ba955a}.field input,.field select,.field textarea,.search{background:#fffefa;color:var(--text);border-color:#ded6c8}
.theme-toggle{border:1px solid #e2d5bf;border-radius:999px;padding:9px 13px;background:#fff9ef;color:#735a32;font-size:12px;font-weight:800;margin-right:14px}
body.dark{--pine:#d5b67c;--text:#eee9df;--muted:#aaa397;--line:#4c483f;--bg:#181a19;color:var(--text)}body.dark aside{background:#202321;color:#eee9df;border-color:#383c36}body.dark .nav button{color:#bbb9af}body.dark .nav button.active,body.dark .nav button:hover{background:#514534;color:#fff}body.dark .client,body.dark .top,body.dark .metric,body.dark .card,body.dark .resource-tile{background:#252824;color:#eee9df;border-color:#42443d}body.dark .chip,body.dark .badge,body.dark .note,body.dark .resource-note,body.dark .step b,body.dark .resource-icon{background:#3c362b;color:#dec38b;border-color:#514533}body.dark .btn,body.dark .theme-toggle,body.dark .zone,body.dark .field input,body.dark .field select,body.dark .field textarea,body.dark .search{background:#30342f;color:#eee9df;border-color:#4e5047}body.dark .btn.primary{background:#d0b47b;color:#28231b;border-color:#d0b47b}body.dark .zone.active{background:#4b4030}body.dark .weekday,body.dark .day.other{background:#2d302b;color:#bcb7aa}body.dark .track{background:#484a40}
@media(max-width:700px){.theme-toggle{margin-right:6px;padding:8px 10px}.top small{font-size:9px}}
/* Official client and parent-brand identity */
aside{padding-top:22px}.xxp-brand{display:flex;align-items:center;justify-content:center;min-height:104px;margin:0 2px 9px;padding:10px 16px;border-radius:16px;background:#070706;box-shadow:0 10px 28px #16100817}.xxp-brand img{display:block;width:154px;max-height:86px;object-fit:contain}aside .tag{text-align:center;padding:0 10px 31px;letter-spacing:1.65px}
.hero{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:250px;padding:34px 40px;background:linear-gradient(112deg,#1b3129 0%,#172820 52%,#2b3429 100%);border:1px solid #3c5546;box-shadow:0 14px 38px #12231a22}.hero:after{display:none}.hero-copy{position:relative;z-index:1;max-width:580px}.hero h2{font-size:29px;letter-spacing:-1.1px}.hero small{color:#d8c18f}.hero p{color:#c7d2c8}.emerald-brand{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:190px;height:190px;border-radius:30px;background:#0c271d;border:1px solid #6d7957;box-shadow:0 18px 38px #071a1366,0 0 0 8px #ffffff08;overflow:hidden}.emerald-brand img{width:100%;height:100%;object-fit:contain}.client-logo-line{display:flex;align-items:center;gap:10px}.client-logo-line img{width:30px;height:30px;border-radius:8px}.client-logo-line strong{font-size:13px}
.top{height:78px}.content{max-width:1460px}.metric,.card,.resource-tile{box-shadow:0 5px 22px #26201308;border-radius:19px}.metric{min-height:145px}.btn,.zone,.field input,.field select,.field textarea{border-radius:12px}.hero .overline{display:block;color:#d8c18f;letter-spacing:2.2px;font-size:10px;font-weight:800}
body.dark .xxp-brand{background:#030403}body.dark .hero{border-color:#516354;background:linear-gradient(120deg,#13271e,#20372a)}body.dark .emerald-brand{border-color:#617756}
@media(max-width:950px){.emerald-brand{width:145px;height:145px}.hero{min-height:230px}.hero h2{font-size:25px}}
.emerald-sidebar-brand{background:#fff;border:1px solid #e8e1d5;min-height:146px;padding:0;box-shadow:0 8px 25px #2821130b}.emerald-sidebar-brand img{width:205px;max-height:140px;object-fit:contain}.dark .emerald-sidebar-brand{background:#fff;border-color:#5d5548}
@media(max-width:700px){.xxp-brand{min-height:86px}.xxp-brand img{width:132px}.hero{padding:26px;gap:16px;align-items:flex-start}.emerald-brand{width:88px;height:88px;border-radius:17px}.hero h2{font-size:22px}.hero p{font-size:11px}.hero small{font-size:9px}}
/* Spacious calendar with a focused, on-demand event composer */
#calendar .calendar-full{display:block}#calendar .calendar-full>.card{width:100%;padding:30px 34px}#calendar .calendarbar{gap:14px;flex-wrap:wrap}#calendar .calendarbar>div{margin-left:auto}#calendar .calendar-add-button{white-space:nowrap;padding:13px 20px}
#calendar .calendar{width:100%;grid-template-columns:repeat(7,minmax(0,1fr));border-radius:15px}#calendar .day{min-height:132px;height:auto;padding:14px 12px;transition:background .15s ease;cursor:pointer}#calendar .day:hover,#calendar .day:focus-visible{background:#f6eddd;outline:2px solid #c19c5a;outline-offset:-2px}#calendar .event{font-size:11px;padding:8px 7px}
#calendar .calendar-events-summary{margin-top:22px;padding:25px 34px}#calendar .calendar-events-summary h3{margin-top:0!important;margin-bottom:16px}
.event-dialog{position:fixed;inset:0;margin:auto;max-width:min(560px,calc(100vw - 30px));width:100%;max-height:min(90vh,900px);overflow-y:auto;border:1px solid #e4d9c6;border-radius:23px;padding:0;background:transparent;box-shadow:0 30px 100px #16120c50}.event-dialog::backdrop{background:#171b18a3;backdrop-filter:blur(6px)}.event-dialog>.card{position:relative;padding:32px 34px;border:0;box-shadow:none;border-radius:23px}.event-dialog-close{position:absolute;top:18px;right:20px;border:0;border-radius:50%;width:35px;height:35px;font-size:26px;line-height:1;background:#f2ede4;color:#675946;cursor:pointer}.event-dialog-close:hover{background:#e8ddcb}
body.dark #calendar .day:hover,body.dark #calendar .day:focus-visible{background:#40392d}body.dark .event-dialog>.card{background:#252824}body.dark .event-dialog-close{background:#3f413c;color:#eee8db}
@media(max-width:700px){#calendar .calendar-full>.card{padding:17px 12px}#calendar .calendarbar>div{margin-left:0}#calendar .calendar-add-button{width:100%}#calendar .day{min-height:88px;padding:7px 5px}#calendar .event{font-size:9px}#calendar .calendar-events-summary{padding:20px}.event-dialog>.card{padding:27px 20px}}
.calendar-legend{padding:16px 2px 18px}.legend-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.legend-heading strong{font-size:13px}.legend-heading span{font-size:11px;color:var(--muted)}.legend-controls{display:flex;flex-wrap:wrap;gap:9px}.legend-filter{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fffefa;border-radius:999px;padding:8px 12px;font-weight:700;font-size:11px;color:var(--text);transition:opacity .15s,transform .15s}.legend-filter:hover{transform:translateY(-1px)}.legend-dot{width:11px;height:11px;border-radius:4px;background:var(--event-color);flex:none}.legend-filter.inactive{opacity:.38;text-decoration:line-through}.legend-actions{margin-top:10px;text-align:right}.legend-actions button{border:0;background:none;color:var(--pine);font-size:11px;font-weight:800;cursor:pointer}.color-hint{display:block;font-size:11px;font-weight:600;color:var(--muted);margin-top:5px}.color-hint:before{content:'';display:inline-block;width:10px;height:10px;margin-right:7px;border-radius:3px;background:var(--choice)}
body.dark .legend-filter{background:#30342f}body.dark .legend-actions button{color:#d8be8a}
@media(max-width:700px){.legend-heading{display:block}.legend-heading span{display:block;margin-top:3px}.legend-controls{gap:6px}.legend-filter{padding:7px 9px;font-size:10px}}
.calendar-legend{padding:12px 2px 14px;position:relative;z-index:5}.event-filter-dropdown{position:relative;display:inline-block}.event-filter-trigger{list-style:none;display:flex;align-items:center;gap:9px;min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:#fffefa;color:var(--text);font-size:12px;font-weight:750;cursor:pointer;box-shadow:0 2px 8px rgba(35,30,20,.03)}.event-filter-trigger::-webkit-details-marker{display:none}.event-filter-trigger:focus-visible{outline:3px solid #477fc6;outline-offset:2px}.event-filter-trigger.filtered{border-color:#b7a077}.filter-symbol{font-size:18px;color:var(--pine)}.filter-count{padding:4px 8px;background:#f2eee5;border-radius:999px;color:#665b48;font-size:10px}.filter-chevron{font-size:17px;color:var(--muted);transition:transform .15s}.event-filter-dropdown[open] .filter-chevron{transform:rotate(180deg)}.event-filter-menu{position:absolute;top:calc(100% + 8px);left:0;width:min(310px,calc(100vw - 45px));padding:16px;background:#fffefa;border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 45px rgba(30,25,15,.16);z-index:30}.event-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:12px}.event-filter-heading button{border:0;background:transparent;color:var(--pine);font-weight:750;font-size:11px;cursor:pointer}.event-filter-options{display:grid;gap:3px}.event-filter-option{display:flex;align-items:center;gap:10px;padding:9px 5px;border-radius:8px;font-size:12px;font-weight:650;cursor:pointer}.event-filter-option:hover{background:#f5f1e9}.event-filter-option input{accent-color:#375a49;width:16px;height:16px;margin:0}.event-filter-option .legend-dot{width:10px;height:10px}.event-filter-footer{display:flex;justify-content:flex-end;border-top:1px solid var(--line);margin-top:10px;padding-top:12px}.event-filter-footer button{background:var(--pine);color:white;border:0;border-radius:9px;padding:9px 18px;font-size:12px;font-weight:750;cursor:pointer}body.dark .event-filter-trigger,body.dark .event-filter-menu{background:#30342f;color:#f5f1ea}body.dark .filter-count{background:#43483f;color:#f3eee3}body.dark .event-filter-option:hover{background:#3b4039}
.google-address-field{margin-top:2px}.address-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:7px}.address-map-button{border:0;background:none;padding:4px 0;color:#7d643f;font-size:11px;font-weight:800;text-align:left}.address-map-button:disabled{opacity:.4;cursor:not-allowed}.address-helper{font-weight:500;color:var(--muted);font-size:10px;text-align:right}.saved-address-link{display:inline-block;margin-top:9px;color:#876a3d;font-size:11px;font-weight:700;text-decoration:underline}.dark .address-map-button,.dark .saved-address-link{color:#d8be8a}
@media(max-width:700px){.address-actions{align-items:flex-start;flex-direction:column;gap:3px}.address-helper{text-align:left}}
.places-config{margin-top:12px;border:1px solid #e5ded2;background:#faf7f0;border-radius:13px;padding:12px 14px;color:#645b4b;font-size:12px;font-weight:500}
.places-config summary{cursor:pointer;font-weight:800;color:#80663c}
.places-config p{margin:10px 0;line-height:1.5}
.places-config input{margin:5px 0 9px;width:100%;border:1px solid #ddd1bd;border-radius:10px;padding:11px;background:white;color:#282622}
.places-config .btn{margin:2px 5px 2px 0;padding:9px 12px}
.places-status{color:#5d7c69}
.places-suggestions{background:#fff;border:1px solid #d8d0c4;box-shadow:0 12px 28px #28201520;border-radius:12px;overflow:hidden;z-index:5;margin-top:5px}
.places-suggestions[hidden]{display:none}
.places-suggestions button{display:block;width:100%;text-align:left;background:#fff;color:#292723;border:0;padding:12px 14px;font-size:13px;border-bottom:1px solid #f0ece6}
.places-suggestions button:hover,.places-suggestions button:focus-visible{background:#f6efe4}
body.dark .places-config{background:#2b2925;border-color:#51483b;color:#dfd6c9}
body.dark .places-config summary{color:#e1bd7c}
.feed-controls{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.feed-controls input,.feed-controls select{background:transparent;border:1px solid var(--line);border-radius:9px;padding:9px;color:inherit}.feed-status{font-size:12px;color:#779382;margin:0 0 18px}.shared-event{width:100%;text-align:left;border:0;border-left:3px solid var(--shared-color);background:color-mix(in srgb,var(--shared-color) 10%,white);white-space:normal;line-height:1.45;cursor:pointer;border-radius:4px}.feed-calendar .day{height:auto;min-height:108px}.feed-entry{display:block;width:100%;text-align:left;background:transparent;color:inherit;cursor:pointer}.feed-detail .card{position:relative;padding:32px}.feed-time{margin:25px 0;padding:22px;background:#f2f6f0;border-radius:13px}.feed-time small,.feed-time strong,.feed-time span{display:block}.feed-time strong{font-size:21px;margin:10px 0}.feed-detail h3{margin-top:25px}.dark .feed-time{background:#20382b}.dark .shared-event{background:#233b2e;color:#d5e8d6}.dark .feed-controls select{background:#183225}.feed-calendar [hidden],#feed-manage[hidden]{display:none!important}@media(max-width:800px){.feed-calendar .calendarbar{align-items:flex-start;flex-direction:column;gap:16px}.feed-controls{width:100%}.feed-calendar .day{padding:5px;min-height:85px}.shared-event{font-size:9px}}
