:root{color:#34263d;background:#f7f5f8;--brand:#3e074a;--gold:#ffbd32}
aside{background:var(--brand);padding:24px 20px}
.brand-logo{display:block;width:100%;height:auto;mix-blend-mode:lighten}
.brand{margin:0 -8px;padding-bottom:22px;border-bottom:1px solid #ffffff25}
.sub{color:#f5d994;letter-spacing:1.7px;text-align:center;margin-top:18px;font-size:9px}
nav{margin-top:30px}nav button{color:#e1cfe6}nav button:hover{background:#ffffff10;color:#fff}
nav button.active{background:#ffffff14;color:#fff;border-left:3px solid var(--gold)}
.asidefoot{color:#d1b6da}.asidefoot span{color:var(--gold)!important}
.primary{background:var(--brand);color:white;box-shadow:0 3px 8px #3e074a16}.primary:hover{background:#5c176b}
.secondary{color:var(--brand);border-color:#e1d7e5}.secondary:hover{background:#f6f0f8}
.eyebrow{color:#72417f}.avatar{background:var(--brand);color:var(--gold)}
.top{border-bottom-color:#e5dce8}.top b{color:var(--brand)}
.card,.panel{border-color:#e9e0ed}.card label{color:#76657e}.card .metric{color:var(--brand)}
.cards>.card:first-child{border-top:3px solid var(--gold)}
.bar{background:var(--brand)}.track{background:#f0e8f3}
.notice{background:#fbf3df;color:#70551d;border-left:3px solid var(--gold)}
.calc{background:#f5eef7;border:1px solid #e8dcec}.calc strong{color:var(--brand)}
input,select{border-color:#dfd4e4;color:#3d2b48}input:focus,select:focus{outline-color:#b586c3}
input[readonly]{background:#f5eff8;color:var(--brand);font-weight:700;border-color:#ddcde5}
form label{color:#67546f}form label small{color:#8c7b94;font-size:11px;line-height:1.5;font-weight:400}
th{background:#f8f4fa;color:#8a7695}.tag{background:#f2e9f6;color:#6c387c}
.pill{background:#fff5dc;color:#73551a;border-color:#f3dfab}
.toast{background:var(--brand);border-left:4px solid var(--gold)}
@media(max-width:650px){aside{padding:15px 18px}.brand{width:165px;border:0;padding:0;margin:0}.sub{display:none}nav{margin-top:15px}.brand-logo{width:165px}}
.travel-header{position:relative;isolation:isolate;height:190px;background:#3e074a;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;border-bottom:3px solid #ffbd32}
.header-logo img,.brand-logo{clip-path:inset(2% 2%);mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.header-logo{position:relative;z-index:2;text-align:center;background:#3e074a;padding:0 18px}.header-logo img{display:block;width:250px;height:auto;mix-blend-mode:lighten}.header-logo>span{display:block;color:#e4c9eb;font-size:9px;letter-spacing:1.3px;margin-top:-7px}
.header-caption{position:absolute;top:22px;left:24px;color:#f7d987;font-size:9px;letter-spacing:1.5px;z-index:3}.header-caption small{display:block;color:#c5a5ce;font-size:10px;letter-spacing:.3px;margin-top:7px}
.travel-art{position:absolute;width:32%;height:150px;color:#ffbd32;opacity:.26;bottom:0;z-index:0}.art-left{left:0}.art-right{right:0}.header-status{position:absolute;right:20px;top:23px;color:#dec3e5;font-size:10px;z-index:3}.header-status:before{content:'●';font-size:7px;color:#ffbd32;margin-right:6px}
.upcoming-panel h2{margin-top:10px;margin-bottom:8px}.trip-preview{display:flex;align-items:center;gap:13px;border-bottom:1px solid #eee6f1;padding:16px 0}.trip-date{min-width:45px;background:#f5eff8;border-radius:8px;padding:8px 7px;text-align:center;color:#3e074a}.trip-date strong{display:block;font-size:20px}.trip-date small{font-size:9px;letter-spacing:1px}.trip-preview>div:nth-child(2){flex:1;min-width:0}.trip-preview b,.trip-preview span,.trip-preview small{display:block}.trip-preview b{font-size:12px;margin:3px 0}.trip-preview span:not(.trip-label){font-size:11px;color:#786482}.trip-preview small{font-size:10px;color:#93829b;margin-top:4px}.trip-label{font-size:9px;color:#8b6b24;text-transform:uppercase;letter-spacing:1px}.trip-open{border:0;background:#f7f1f9;color:#682976;border-radius:50%;width:29px;height:29px}.upcoming-panel>.secondary{margin-top:18px;width:100%}
@media(max-width:1000px){.header-caption{top:15px;left:16px;font-size:8px}.header-status{top:16px;right:16px;font-size:8px}.header-caption small{font-size:8px}.header-logo img{width:220px}.travel-header{height:185px}}
@media(max-width:650px){.brand{display:none}.sub{display:block;margin:0;text-align:left;color:#ffbd32;letter-spacing:2px}nav{margin-top:12px}.travel-header{height:175px}.header-caption{display:none}.header-status{top:12px;font-size:8px}.header-logo img{width:230px}.header-logo{padding:0 5px}.header-logo>span{font-size:8px}.travel-art{width:38%;opacity:.19}.heading{margin-top:24px}}
