:root{--bg:#eaf7fb;--surface:#fff;--surface-soft:#f3fbfd;--ink:#082032;--muted:#5d7185;--line:#cfe7ef;--navy:#08324a;--teal:#087c86;--teal-soft:#ecfdf5;--blue-soft:#e9f8ff;--amber-soft:#fffbeb;--rose-soft:#fff1f2;--green:#047857;--amber:#b45309;--red:#b42318;--purple:#6d28d9;--aqua:#22c7dc;--sun:#f7c948;--shadow:0 16px 42px #08324a1f;--glass:#ffffffad;--glass-strong:#ffffffd1;--glass-line:#9fd5e494}*{box-sizing:border-box}html,body{overflow-anchor:none}body{color:var(--ink);background:radial-gradient(circle at 82% 8%,#f7c94847,#0000 26%),radial-gradient(circle at 9% 18%,#22c7dc3d,#0000 30%),linear-gradient(#eefbff 0%,#e7f7fb 38%,#fff9e8 100%);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}h1,h2,h3,p{margin:0}h1{letter-spacing:0;font-size:clamp(28px,4vw,42px);line-height:1.05}h2{letter-spacing:0;font-size:clamp(24px,3vw,34px);line-height:1.1}h3{font-size:18px;line-height:1.25}.loginShell,.shell{min-height:100vh}.loginShell{background-color:#0000;background-image:linear-gradient(#102a4359,#102a432e),url("data:image/svg+xml,%3Csvg width='1400' height='900' viewBox='0 0 1400 900' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='1400' height='900' fill='%23e8f4f8'/%3E%3Cpath d='M0 574c168-48 280-45 415 4 154 56 302 47 450-3 174-59 329-53 535 18v307H0Z' fill='%23102a43'/%3E%3Cpath d='M0 645c160-34 291-31 410 10 141 48 271 40 397-5 166-60 334-61 593 8v242H0Z' fill='%230f766e'/%3E%3Ccircle cx='1118' cy='154' r='78' fill='%23f7c948'/%3E%3Cpath d='M230 510h270l54 72H176l54-72Z' fill='%23ffffff'/%3E%3Cpath d='M279 440h176l45 70H236l43-70Z' fill='%23d97706'/%3E%3C/svg%3E");background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;place-items:center;padding:24px;display:grid}.loginBackdrop{display:none}.loginPanel{width:min(520px,100%);box-shadow:var(--shadow);background:#fffffff0;border:1px solid #ffffffb3;border-radius:10px;gap:18px;padding:30px;display:grid}.brandRow,.brandMark,.topbar,.iconText,.cardTop,.pill.pick,.plannerControls label,.filters label{align-items:center;display:flex}.brandRow{gap:14px}.brandMark{color:#fff;background:var(--navy);border-radius:10px;justify-content:center;width:52px;height:52px}.loginPanel p,.heroCopy p,.categoryHeader p,.meta,.overview,.tableRow span,.stat span,.miniCard span{color:var(--muted)}.tripStrip{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.tripStrip span{border:1px solid var(--line);background:var(--surface-soft);min-height:56px;color:var(--navy);text-align:center;border-radius:8px;place-items:center;padding:8px;font-size:13px;font-weight:800;display:grid}label{gap:7px;font-size:13px;font-weight:800;display:grid}.checkRow{grid-template-columns:18px 1fr;align-items:center}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:var(--teal);outline:3px solid #0f766e29}textarea{resize:vertical;min-height:64px}.primary,.ghost,.choice,.categoryStep,.dayTab{border-radius:999px;font-weight:900}.primary,.ghost{border:1px solid #0000;min-height:38px;padding:8px 13px}.primary{color:#fff;background:linear-gradient(135deg,#087c86,#0ea5b5);box-shadow:0 10px 22px #087c8638}.ghost{color:var(--navy);background:#ffffffc7;border-color:#08324a24}.error{color:var(--red);font-weight:800}.shell{grid-auto-rows:max-content;align-content:start;gap:10px;padding:10px;display:grid}.topbar{border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(18px)saturate(1.2);backdrop-filter:blur(18px)saturate(1.2);background:linear-gradient(135deg,#ffffffc2,#ecfdff85),linear-gradient(90deg,#087c8614,#f7c9480d);border-radius:18px;justify-content:space-between;align-self:start;align-items:center;gap:14px;min-height:0;padding:12px 14px;box-shadow:0 12px 34px #08324a14}.topActions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.topActions .ghost,.topActions .primary{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff8a;border-color:#08324a1a;border-radius:999px;min-height:36px;padding:7px 13px;box-shadow:inset 0 1px #ffffffdb,0 8px 20px #08324a14}.topActions .primary{color:#fff;background:linear-gradient(135deg,#087c86f5,#0ea5b5eb);border-color:#087c8657;box-shadow:0 12px 24px #087c8633}.topbarBrand{align-items:center;gap:14px;min-width:0;display:flex}.familyCruiseLogo{object-fit:contain;filter:drop-shadow(0 14px 22px #082f492e);background:radial-gradient(circle at 50% 42%,#fffffff0,#ecfeff75 62%,#0000 72%),#ffffff57;border-radius:26px;flex:none;width:clamp(128px,12vw,184px);height:clamp(128px,12vw,184px);padding:5px}.heroCopy{gap:2px;max-width:760px;display:grid}.topbar h1{font-size:clamp(23px,2.15vw,31px)}.eyebrow{color:var(--teal);text-transform:uppercase;font-size:12px;font-weight:900}.plannerLayout{overflow-anchor:none;grid-template-columns:280px minmax(0,1fr);align-items:start;gap:12px;display:grid}.categoryRail{border:1px solid var(--glass-line);background:var(--glass-strong);-webkit-backdrop-filter:blur(16px)saturate(1.18);backdrop-filter:blur(16px)saturate(1.18);border-radius:18px;gap:8px;padding:14px;display:grid;position:sticky;top:16px;box-shadow:0 14px 34px #08324a14}.railLabel{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.categoryStep{min-height:44px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:28px 22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.categoryStep:hover{background:#ffffff94}.categoryStep.active{color:var(--navy);background:linear-gradient(135deg,#ecfdf5f5,#e0f7fad1);border-color:#087c8638;box-shadow:inset 0 1px #ffffffe6,0 8px 18px #087c861a}.categoryStep.locked{color:#9ca3af;background:#f3f4f6}.categoryStep span:nth-child(3){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.categoryStep small{color:var(--muted);font-weight:800}.stepNumber{background:var(--surface-soft);width:26px;height:26px;color:var(--muted);border-radius:999px;place-items:center;font-size:12px;display:grid}.categoryStep.active .stepNumber{background:var(--teal);color:#fff}.railActions{border-top:1px solid #08324a1a;gap:8px;margin-top:8px;padding-top:12px;display:grid}.railAction{min-height:40px;color:var(--navy);text-align:left;background:#ffffff8f;border:1px solid #087c8629;border-radius:14px;align-items:center;gap:9px;padding:9px 11px;font-weight:900;display:flex;box-shadow:inset 0 1px #ffffffbd}.railAction:hover{background:#ecfdffd6;border-color:#087c8647}.plannerMain{overflow-anchor:none;gap:10px;display:grid}.categoryHeader,.sectionBrief,.plannerControls,.dayWalk,.stepFooter,.filters,.panel{border:1px solid var(--glass-line);background:var(--glass);-webkit-backdrop-filter:blur(16px)saturate(1.15);backdrop-filter:blur(16px)saturate(1.15);border-radius:18px;box-shadow:0 12px 30px #08324a12}.categoryHeader{background:linear-gradient(135deg,#fffc,#eefcff94),radial-gradient(circle at 96% 0,#22c7dc29,#0000 32%);justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.categoryHeader>div:first-child{gap:5px;display:grid}.categoryHeader h2{font-size:clamp(28px,3vw,40px)}.sectionBrief{background:linear-gradient(90deg,#ffffffb3,#ecfdff7a),#ffffff94;grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:14px;padding:11px 14px;display:grid}.completionHint{white-space:nowrap;background:#ecfdf5c7;border:1px solid #10b98147;border-radius:999px;width:fit-content;padding:7px 10px;font-weight:900;color:var(--green)!important}.completionHint.complete{background:#ecfdf5;border-color:#bbf7d0;color:var(--green)!important}.sectionBrief div{gap:3px;display:grid}.sectionBrief p:not(.railLabel){color:var(--ink);line-height:1.25}.categoryStats{flex-wrap:wrap;justify-content:flex-end;gap:7px;min-width:0;display:flex}.categoryStats span{min-width:104px;min-height:36px;color:var(--navy);text-align:center;background:#ffffff9e;border:1px solid #087c862e;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-weight:900;display:inline-flex}.plannerControls,.filters{gap:8px;padding:8px 10px;display:grid}.plannerControls{grid-template-columns:minmax(240px,1fr) 190px}.filters{grid-template-columns:minmax(220px,2fr) repeat(5,minmax(138px,1fr))}.plannerControls label,.filters label{color:var(--muted);flex-direction:row;gap:8px;font-weight:600}.dayWalk{background:linear-gradient(135deg,#ffffff9e,#e8fbff5c);border-radius:20px;gap:6px;padding:7px;display:flex;overflow-x:auto}.dayTab{min-width:126px;color:var(--ink);text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff75;border:1px solid #0000;border-radius:15px;gap:1px;padding:10px 12px 9px;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:grid;box-shadow:inset 0 1px #ffffffc7}.dayTab:hover{background:#ffffffb8;border-color:#087c8629;transform:translateY(-1px)}.dayTab small{color:#607385;font-size:12px;font-weight:800;line-height:1.15}.dayTab strong{width:fit-content;color:var(--teal);background:#087c861a;border-radius:999px;margin-top:4px;padding:2px 7px;font-size:12px}.dayTab.active{color:#fff;background:linear-gradient(135deg,#087c86eb,#0ea5b5d6);border-color:#087c8647;box-shadow:0 14px 28px #087c862e}.dayTab.active small{color:#fffc}.dayTab.active strong{color:#fff;background:#ffffff2e}.optionList{overflow-anchor:none;gap:10px;display:grid}.optionDayGroup{gap:10px;display:grid}.optionDayGroup+.optionDayGroup{margin-top:18px}.optionDayHeader{background:linear-gradient(135deg,#ecfeffeb,#ffffffb8),#ffffffad;border:1px solid #0ea5e938;border-radius:10px;justify-content:space-between;align-items:end;gap:14px;padding:12px 14px;display:flex;box-shadow:0 10px 24px #082f490d}.optionDayHeader h3{margin:2px 0 0;font-size:20px;line-height:1.15}.optionDayHeader span{color:var(--teal);background:#f0fdfad1;border:1px solid #2dd4bf8c;border-radius:999px;flex:none;padding:7px 10px;font-weight:900}.optionGrid{gap:10px;display:grid}.optionCard{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:210px minmax(0,1.25fr) minmax(180px,.55fr);gap:12px;padding:14px;display:grid;box-shadow:0 8px 22px #1118270d}.optionCard h2{font-size:20px;line-height:1.18}.optionMedia{background:var(--surface-soft);border-radius:10px;grid-area:1/1/span 9;min-height:190px;overflow:hidden}.optionMedia img{object-fit:cover;width:100%;height:100%;min-height:190px;display:block}.mediaFallback{height:100%;min-height:190px;color:var(--navy);text-align:center;background:linear-gradient(135deg,#e0f2fe,#ecfdf5);place-items:center;gap:8px;padding:14px;font-weight:900;display:grid}.optionCard>.cardTop,.optionCard>h2,.optionCard>.meta,.optionCard>.alsoIn,.optionCard>.price,.optionCard>.deal,.optionCard>.pickReason,.optionCard>.joiningBlock,.optionCard>.overview,.optionCard>.restriction{grid-column:2}.optionCard>.choiceRow,.optionCard>textarea,.optionCard>.timePicker{grid-column:3}.optionCard>.adminToggle,.optionCard>.adminControls{grid-column:3;align-self:start}.cardTop{flex-wrap:wrap;gap:8px}.pill,.status{border:1px solid var(--line);background:var(--surface-soft);width:fit-content;color:var(--muted);border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.pill.alert{color:var(--amber);background:var(--amber-soft);border-color:#fde68a}.pill.pick.must{color:var(--purple);background:#f5f3ff;border-color:#ddd6fe}.pill.pick.smart{color:var(--green);background:var(--teal-soft);border-color:#bbf7d0}.pill.pick.splurge{color:var(--amber);background:var(--amber-soft);border-color:#fed7aa}.pill.pick.caution{color:var(--red);background:var(--rose-soft);border-color:#fecaca}.price{color:var(--navy);font-size:19px;font-weight:900}.price span{color:var(--muted);font-size:14px;text-decoration:line-through}.deal,.restriction,.pickReason,.alsoIn{font-size:13px;font-weight:800}.deal{color:var(--green)}.excursionFacts{flex-wrap:wrap;grid-column:2;gap:8px;display:flex}.excursionFacts span{color:#075985;background:#f0f9ff;border:1px solid #bae6fd;border-radius:999px;align-items:center;min-height:28px;padding:5px 9px;font-size:12px;font-weight:900;display:inline-flex}.alsoIn{color:var(--teal)}.pickReason{background:var(--blue-soft);max-width:760px;color:var(--navy);border:1px solid #dbeafe;border-radius:8px;padding:9px 10px;line-height:1.35}.joiningBlock{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:10px;gap:8px;width:fit-content;max-width:100%;padding:10px;display:grid}.joiningBlock strong{color:var(--green);font-size:13px}.attendeeChips{flex-wrap:wrap;gap:6px;display:flex}.joiningLine{gap:6px;margin-top:8px;display:grid}.joiningLine strong{color:var(--navy);font-size:12px}.joiningLine.muted strong{color:var(--muted)}.slotGroup{border:1px solid var(--line);background:#ffffffa3;border-radius:10px;gap:5px;padding:8px;display:grid}.slotGroup>span{color:var(--teal);font-size:12px;font-weight:900}.attendeeChips span{color:#0f766e;background:#f0fdfa;border:1px solid #99f6e4;border-radius:999px;align-items:center;min-height:26px;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.restriction{color:var(--amber)}.overview{-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.excursionDetails{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;grid-column:2}.excursionDetails summary{cursor:pointer;color:var(--navy);padding:10px 12px;font-size:13px;font-weight:900}.excursionDetails div{gap:6px;padding:0 12px 12px;display:grid}.excursionDetails strong{color:var(--teal);text-transform:uppercase;font-size:12px}.excursionDetails ul{gap:5px;margin:0;padding-left:18px;display:grid}.excursionDetails li{color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.choiceRow{grid-template-columns:1fr;align-self:start;gap:8px;display:grid}.choice{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;padding:9px 10px}.timePicker{color:var(--navy);align-self:start}.timePicker select{min-height:40px;color:var(--teal);background:#f0fdfa;border-color:#99f6e4;font-weight:900}.choice.active.opt-in,.status.opt-in{color:var(--green);background:#dcfce7;border-color:#bbf7d0}.choice.active.opt-out,.status.opt-out{color:var(--red);background:#fee2e2;border-color:#fecaca}.status.unset{color:var(--muted);border-color:var(--line);background:#f1f5f9}.modalScrim{z-index:50;-webkit-backdrop-filter:blur(14px)saturate(1.1);backdrop-filter:blur(14px)saturate(1.1);background:radial-gradient(circle at 25% 15%,#0ea5e947,#0000 34%),radial-gradient(circle at 80% 80%,#2dd4bf3d,#0000 32%),#082f4961;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.welcomeModal{background:linear-gradient(135deg, #fffffff5, #ecfeffe6), var(--surface);border:1px solid #ffffff9e;border-radius:18px;gap:14px;width:min(720px,100%);padding:24px;display:grid;box-shadow:0 28px 80px #082f4947}.welcomeIcon{color:#fff;background:linear-gradient(135deg, var(--teal), #0ea5e9);border-radius:18px;place-items:center;width:54px;height:54px;display:grid;box-shadow:0 16px 30px #0ea5b547}.welcomeModal h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.02}.welcomeModal p{color:var(--muted);margin:0;font-weight:800;line-height:1.5}.welcomeRules{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.welcomeRules div{background:#ffffff9e;border:1px solid #0ea5e933;border-radius:12px;padding:12px}.welcomeRules strong,.welcomeRules span{display:block}.welcomeRules strong{color:var(--navy);margin-bottom:5px}.welcomeRules span{color:var(--muted);font-size:13px;font-weight:800;line-height:1.35}.clothingModal{grid-template-columns:minmax(240px,.85fr) minmax(0,1fr);align-items:center;gap:20px;width:min(860px,100%)}.clothingPreview{perspective:1200px;background:radial-gradient(circle at 50% 20%,#ecfeffd1,#0000 42%),#fff;border:1px solid #0ea5e938;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 18px 44px #082f491f}.hoodieStage{width:100%;min-height:430px;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.75,.2,1);position:relative}.hoodieStage.showingBack{transform:rotateY(180deg)}.hoodieFace{backface-visibility:hidden;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.hoodieBack{transform:rotateY(180deg)}.hoodieFace img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.hoodieControls{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #ffffffb8;border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;display:grid;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 12px 28px #082f4929}.hoodieControls button{min-height:38px;color:var(--navy);background:0 0;border:1px solid #0000;border-radius:999px;font-weight:950}.hoodieControls button.active,.hoodieControls button:hover{color:#fff;background:linear-gradient(135deg,#087c86f5,#0ea5b5e6);border-color:#087c8647}.hoodieControls .rotateButton{justify-content:center;align-items:center;gap:5px;display:inline-flex}.clothingCopy{gap:14px;display:grid}.sizeGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.sizeButton{min-height:72px;color:var(--navy);background:linear-gradient(135deg,#ffffffeb,#ecfeffb8),#fff;border:1px solid #087c8647;border-radius:16px;font-size:24px;font-weight:950;box-shadow:0 10px 22px #082f4914}.sizeButton:hover{color:#fff;background:linear-gradient(135deg,#087c86f5,#0ea5b5e6);border-color:#087c8694}.adminOptionList{gap:10px;max-height:760px;padding-right:4px;display:grid;overflow:auto}.adminOptionList.grouped{gap:14px}.panelNote{max-width:860px;color:var(--muted);margin:0 0 14px;font-weight:800;line-height:1.45}.panelHeader{justify-content:space-between;align-items:start;gap:16px;margin-bottom:14px;display:flex}.panelHeader h2{margin-bottom:4px}.panelHeader .panelNote{margin:0}.loginStatusTable .tableRow{grid-template-columns:minmax(170px,1.2fr) 110px 100px 150px 130px}.clothingOrderTable .tableRow{grid-template-columns:minmax(170px,1.2fr) 120px 150px 130px}.adminDayGroup{border:1px solid var(--line);background:#f8fafc;border-radius:10px;gap:10px;padding:12px;display:grid}.adminDayHeader{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:2px 2px 8px;display:flex}.adminDayHeader h3{color:var(--navy);margin:0 0 3px;font-size:18px}.adminDayHeader span{color:var(--muted);font-size:13px;font-weight:900}.adminDayHeader strong{color:#92400e;text-transform:uppercase;background:#fffbeb;border:1px solid #fde68a;border-radius:999px;flex:none;padding:6px 10px;font-size:12px}.adminDayOptions{gap:10px;display:grid}.adminControls{align-self:start;gap:10px;display:grid}.familyPick{color:#854d0e;background:#fef9c3;border:1px solid #facc15;border-radius:10px;grid-template-columns:auto 1fr;gap:8px;padding:10px;display:grid}.familyPick svg{color:#eab308}.familyPick strong,.familyPick span{display:block}.familyPick strong{margin-bottom:2px;font-size:13px}.familyPick span{color:#713f12;font-size:12px;font-weight:800;line-height:1.35}.adminToggle{width:100%}.adminToggle.hidden{color:var(--red);background:var(--rose-soft);border-color:#fecaca}.stepFooter{justify-content:space-between;gap:10px;padding:12px;display:flex}.emptyState{border:1px dashed var(--line);color:var(--muted);text-align:center;background:#fff;border-radius:10px;padding:28px}.summaryView{gap:14px;display:grid}.calendarPanel{border:1px solid var(--line);background:linear-gradient(135deg, #0ea5e914, #14b8a614), var(--surface);border-radius:10px;gap:12px;padding:14px;display:grid;box-shadow:0 8px 22px #1118270d}.calendarPage{grid-auto-rows:max-content;align-content:start;gap:14px;display:grid}.calendarHero{min-height:0;box-shadow:var(--shadow);background:linear-gradient(135deg,#fffffff5,#e6faffe6),radial-gradient(circle at 100%,#f7c94833,#0000 34%);border:1px solid #ffffffc7;border-radius:16px;justify-content:space-between;align-self:start;align-items:center;gap:18px;padding:10px 12px;display:flex}.calendarHero.compact{padding:8px 12px}.calendarStats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.calendarHeroLeft{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.calendarToggle{background:#f0fdfad6;border:1px solid #99f6e4;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.calendarToggle button{min-height:30px;color:var(--teal);background:0 0;border:0;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.calendarToggle button.active{color:#fff;background:var(--teal)}.calendarStats span{min-height:34px;color:var(--teal);background:#f0fdfaeb;border:1px solid #99f6e4;border-radius:999px;align-items:center;padding:7px 11px;font-size:13px;font-weight:900;display:inline-flex}.calendarPanel.large{background:linear-gradient(135deg, #e0f7ffeb, #fffae6db), var(--surface);padding:16px}.calendarTimeline{gap:12px;display:grid}.calendarDay{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:14px;display:grid}.calendarDate{background:linear-gradient(#fffffff5,#edfbffeb);border:1px solid #22c7dc57;border-radius:14px;gap:6px;padding:13px;display:grid;position:sticky;top:12px;box-shadow:0 10px 24px #08324a12}.calendarDate span{color:#075985;background:#e0f2fe;border-radius:999px;width:fit-content;padding:5px 8px;font-size:12px;font-weight:900}.calendarDate strong{color:var(--navy);font-size:15px}.calendarEvents{border-left:3px solid #22c7dc6b;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px;padding-left:12px;display:grid}.calendarEvent{background:linear-gradient(135deg,#fffffffa,#f1fdffe6);border:1px solid #22c7dc61;border-radius:16px;grid-template-columns:128px minmax(0,1fr);gap:12px;min-height:132px;padding:13px;display:grid;position:relative;box-shadow:0 12px 24px #08324a14}.calendarEvent:before{content:"";background:#fff;border:3px solid #38bdf8;border-radius:50%;width:11px;height:11px;position:absolute;top:22px;left:-20px}.eventTime{border-right:1px solid var(--line);align-content:start;gap:4px;padding-right:10px;display:grid}.eventTime strong{color:var(--teal);font-size:15px}.eventTime span,.calendarEvent small{color:var(--muted);font-size:12px;font-weight:900}.calendarEvent h4{color:var(--navy);margin:0 0 4px;font-size:17px}.calendarEvent p{color:var(--ink);margin:0 0 4px;font-weight:900}.calendarEvent.master{border-color:#bae6fd;box-shadow:0 8px 20px #0f766e0f}.summaryTotals{grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;display:grid}.summaryTotals div,.summarySection{border:1px solid var(--line);background:var(--surface);border-radius:10px;box-shadow:0 8px 22px #1118270d}.summaryTotals div{gap:6px;padding:16px;display:grid}.summaryTotals span,.summarySectionHeader p,.summaryItem small{color:var(--muted)}.summaryTotals strong{color:var(--navy);font-size:26px}.summarySection{gap:12px;padding:14px;display:grid}.summarySectionHeader{justify-content:space-between;align-items:center;gap:12px;display:flex}.summaryList{gap:8px;display:grid}.summaryItem{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:130px minmax(0,1fr);align-items:start;gap:12px;padding:10px;display:grid}.summaryItem div{gap:4px;display:grid}.summaryItem p{color:var(--ink);font-size:13px}.adminLayout{gap:16px;display:grid}.stats{grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;display:grid}.stat,.miniCard{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:6px;padding:14px;display:grid;box-shadow:0 8px 22px #1118270d}.stat strong{font-size:28px}.panel{gap:12px;padding:16px;display:grid}.table{gap:8px;display:grid}.tableRow{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:minmax(220px,2fr) 120px 120px 100px;align-items:center;gap:12px;padding:12px;display:grid}.tableRow div{gap:3px;display:grid}.selectionsTable .tableRow{grid-template-columns:minmax(160px,1fr) 130px minmax(260px,2fr) 120px minmax(140px,1fr)}.totalGrid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}@media (max-width:1120px){.plannerLayout{grid-template-columns:1fr}.categoryRail{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.railLabel{grid-column:1/-1}.filters,.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.calendarHero{flex-direction:column;align-items:flex-start}.calendarStats{justify-content:flex-start}}@media (max-width:820px){.topbar,.categoryHeader{flex-direction:column;align-items:flex-start}.topbarBrand{align-items:flex-start}.familyCruiseLogo{border-radius:28px;width:124px;height:124px}.sectionBrief{grid-template-columns:1fr}.completionHint{white-space:normal}.plannerControls,.optionCard,.calendarDay,.calendarEvent,.clothingModal,.welcomeRules,.summaryTotals,.summaryItem,.tableRow,.loginStatusTable .tableRow,.clothingOrderTable .tableRow,.selectionsTable .tableRow{grid-template-columns:1fr}.hoodieStage{min-height:330px}.hoodieControls{border-radius:18px;grid-template-columns:1fr}.panelHeader{display:grid}.optionMedia,.optionCard>.cardTop,.optionCard>h2,.optionCard>.meta,.optionCard>.alsoIn,.optionCard>.price,.optionCard>.deal,.optionCard>.excursionFacts,.optionCard>.excursionDetails,.optionCard>.pickReason,.optionCard>.joiningBlock,.optionCard>.overview,.optionCard>.restriction,.optionCard>.choiceRow,.optionCard>.timePicker,.optionCard>textarea,.optionCard>.adminControls{grid-column:1}.optionMedia{grid-row:auto}.calendarDate{position:static}.calendarEvents{grid-template-columns:1fr;margin-left:7px}.eventTime{border-right:0;border-bottom:1px solid var(--line);padding-bottom:8px;padding-right:0}.topActions{justify-content:flex-start}.choiceRow{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:620px){.shell,.loginShell{padding:12px}.loginPanel{padding:20px}.tripStrip,.categoryRail,.categoryStats,.summaryTotals,.filters,.stats,.choiceRow{grid-template-columns:1fr}}
