
/* Reference UI v75: one component stylesheet replaces v65-v72 visual overrides. */
:root{
  --s:clamp(.39px,calc(100vw / 941),1px);
  --ink:#111d47;--muted:#617da8;--accent:#1765ff;--accent2:#eaf3ff;
  --line:#e5edfa;--panel:#ffffff;--bg:#eef6ff;
}
body.ref-ui{
  color:var(--ink);font-family:"Noto Sans KR","Noto Sans CJK KR","Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;
  background:radial-gradient(ellipse at 15% 0,#d8edff 0,transparent 38%),linear-gradient(125deg,#eff8ff,#f6f7ff);
}
.ref-ui .app{max-width:941px;margin:auto;padding:calc(15*var(--s)) calc(28*var(--s)) calc(146*var(--s));}
.ui-icon{display:inline-block;width:1.25em;height:1.25em;flex-shrink:0;vertical-align:middle}
.ref-ui button{cursor:pointer}
.ref-ui button:focus-visible,.ref-ui a:focus-visible{outline:3px solid #86b5ff;outline-offset:3px}
.ref-ui .hero{display:block;position:relative;isolation:isolate;min-height:0;height:calc(205*var(--s));margin:0 0 calc(14*var(--s));padding:0;overflow:hidden;border-radius:calc(40*var(--s));
  background:linear-gradient(114deg,var(--hero-dark,#0854ce) 0%,var(--hero-main,#2680ff) 46%,var(--hero-light,#82c7ff) 100%);
  box-shadow:0 calc(14*var(--s)) calc(35*var(--s)) rgba(85,124,190,.14);color:white;
}
.ref-ui .hero:before{content:"";position:absolute;inset:0;z-index:-1;width:auto;height:auto;border:none;transform:none;
  background:linear-gradient(135deg,transparent 49%,rgba(190,156,255,.34) 49.2%,rgba(126,174,255,.1) 64%,transparent 64.2%);}
.ref-ui .hero:after{content:none}
.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:0}
.ref-ui .hero .hero-text{position:absolute;left:4%;top:16%;z-index:2;width:61%;max-width:none}
.ref-ui .hero .eyebrow{font-size:calc(16*var(--s));font-weight:700;letter-spacing:.26em;color:#fff;line-height:1.5}
.ref-ui .hero h1{font-size:calc(55*var(--s));font-weight:800;letter-spacing:-.045em;line-height:1.17;margin:calc(9*var(--s)) 0 calc(11*var(--s));white-space:nowrap;text-shadow:none}
.ref-ui .hero .brand-by{font-size:.48em;letter-spacing:-.025em;opacity:1;font-weight:500;color:#fff;vertical-align:baseline}
.ref-ui .hero .sub{font-size:calc(24*var(--s));line-height:1.4;white-space:nowrap;color:#fff;letter-spacing:-.025em}
.ref-ui .hero-status-row{position:absolute;top:10.5%;right:2%;display:flex;align-items:center;gap:calc(12*var(--s));z-index:3}
.ref-ui .cloud-badge,.ref-ui .hero-badge{display:inline-flex;align-items:center;justify-content:center;gap:calc(8*var(--s));padding:calc(10*var(--s)) calc(16*var(--s));border-radius:999px;border:1px solid #c4e2ff;color:white;font-weight:500;font-size:calc(22*var(--s));line-height:1.1;letter-spacing:-.03em;backdrop-filter:none;min-height:calc(47*var(--s));}
.ref-ui .cloud-badge{background:rgba(255,255,255,.94);color:#1164ff;border-color:white;font-size:calc(19*var(--s));}
.ref-ui .cloud-badge:before{content:"";width:calc(16*var(--s));height:calc(16*var(--s));border-radius:50%;background:#bdc9dc}
.ref-ui .cloud-badge.online:before{background:#00c991}
.ref-ui .cloud-badge.online,.ref-ui .cloud-badge.offline{color:#1664ff;background:rgba(255,255,255,.94)}
.ref-ui .hero-badge{background:rgba(255,255,255,.12);font-size:calc(23*var(--s))}
.ref-ui .hero-round-btn{width:calc(50*var(--s));height:calc(50*var(--s));min-width:25px;min-height:25px;border:0;border-radius:50%;background:white;color:#5480ff;display:grid;place-items:center;padding:0;font-size:calc(24*var(--s));box-shadow:none}
.ref-ui .hero-round-btn:before{content:none}

/* Trip cover and current itinerary; all content is live data. */
.ref-ui #activeTripBanner{padding:0;background:transparent;border:0;box-shadow:none;margin:0}
.ref-ui .trip-focus-card{position:relative;display:grid;grid-template-columns:calc(198*var(--s)) minmax(0,1fr);gap:calc(22*var(--s));padding:calc(12*var(--s));min-height:calc(250*var(--s));border-radius:calc(31*var(--s));background:rgba(255,255,255,.96);border:1px solid white;box-shadow:0 calc(12*var(--s)) calc(32*var(--s)) rgba(80,113,169,.10)}
.ref-ui .trip-focus-cover{position:relative;display:block;min-height:calc(226*var(--s));height:100%;padding:0;overflow:hidden;border-radius:calc(22*var(--s));background-color:#9fcfff;background-image:linear-gradient(140deg,#53baf7,#146bef);background-size:cover;background-position:center;border:0;cursor:pointer;}
.ref-ui .trip-focus-cover:after{content:none}
.ref-ui .trip-focus-cover-inner{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:calc(14*var(--s));pointer-events:none;background:linear-gradient(180deg,transparent 48%,#152d514f);}
.ref-ui .cover-script{font-family:"Segoe Print","Nanum Pen Script",cursive;font-size:calc(23*var(--s));line-height:1.2;font-weight:500;font-style:italic;letter-spacing:0;word-break:keep-all;color:#fff;text-shadow:0 2px 6px #00295166;text-align:left;max-width:100%}
.ref-ui .cover-pin{position:absolute;right:calc(14*var(--s));bottom:calc(12*var(--s));display:grid;place-items:center;border-radius:50%;background:#16243d99;width:calc(48*var(--s));height:calc(48*var(--s));font-size:calc(25*var(--s));color:#fff}
.ref-ui .cover-change-badge{position:absolute;top:calc(8*var(--s));right:calc(8*var(--s));padding:3px 6px;border-radius:9px;background:#12284f99;color:white;font-size:9px;opacity:0}
.ref-ui #tripFocusCover:focus-visible .cover-change-badge,.ref-ui #tripFocusCover:hover .cover-change-badge{opacity:1}
.ref-ui .trip-focus-main{position:relative;min-width:0;padding:calc(0*var(--s)) 0;display:flex;flex-direction:column;justify-content:center;}
.ref-ui .trip-focus-kicker{align-self:flex-start;display:inline-flex;gap:calc(8*var(--s));align-items:center;padding:calc(5*var(--s)) calc(15*var(--s));border-radius:999px;font-size:calc(22*var(--s));font-weight:700;color:#1167ff;background:#ebf3ff;line-height:1.25}
.ref-ui .trip-focus-name{margin:calc(6*var(--s)) 0 calc(7*var(--s));font-size:calc(38*var(--s));line-height:1.22;letter-spacing:-.05em;font-weight:800;color:#10194c;padding-right:13%;}
.ref-ui .trip-focus-meta{display:flex;align-items:flex-start;gap:calc(9*var(--s));color:#5975a2;margin:calc(3*var(--s)) 0;font-size:max(11px,calc(23*var(--s)));line-height:1.35;letter-spacing:-.04em;padding-right:10%}
.ref-ui .trip-focus-meta .ui-icon{margin-top:.03em;flex-shrink:0;}
.ref-ui .trip-focus-meta.trip-dates{font-size:max(10px,calc(21*var(--s)));padding-right:0}
.ref-ui .focus-menu{position:absolute;right:calc(6*var(--s));top:calc(0*var(--s));border:1px solid #e5ecfa;border-radius:50%;width:calc(45*var(--s));height:calc(45*var(--s));min-width:26px;min-height:26px;display:grid;place-items:center;background:white;color:#253d77;font-size:calc(24*var(--s));padding:0}
.focus-menu .ui-icon{transform:rotate(90deg)}
.ref-ui .trip-focus-online{display:flex;align-items:center;gap:calc(12*var(--s));margin-top:calc(13*var(--s));min-width:0}
.ref-ui .trip-focus-online #presenceList{min-width:0;flex:1}
.ref-ui .online-label{display:none}
.ref-ui .presence-row{display:flex;align-items:center;gap:calc(9*var(--s));margin:0;flex-wrap:wrap}
.ref-ui .presence-chip{display:inline-flex;position:relative;align-items:center;gap:calc(7*var(--s));background:#f2f7ff;border:0;border-radius:999px;color:#112044;padding:calc(4*var(--s)) calc(12*var(--s)) calc(4*var(--s)) calc(4*var(--s));font-size:max(10px,calc(19*var(--s)));font-weight:650;max-width:100%;min-height:calc(45*var(--s))}
.ref-ui .presence-avatar{width:calc(39*var(--s));height:calc(39*var(--s));min-width:18px;min-height:18px;display:grid;place-items:center;border-radius:50%;color:#346ef1;background:linear-gradient(150deg,#cee9ff,#e6ddff);font-size:max(11px,calc(20*var(--s)));font-weight:800;position:relative}
.ref-ui .presence-dot{position:absolute;right:-1px;bottom:0;width:calc(11*var(--s));height:calc(11*var(--s));min-width:5px;min-height:5px;border:1px solid white;border-radius:50%;background:#00c991;}
.ref-ui .presence-editing{font-size:max(9px,calc(11*var(--s)));max-width:100%;white-space:normal}
.ref-ui .presence-add{margin-left:auto;align-self:center;width:calc(61*var(--s));height:calc(61*var(--s));min-width:30px;min-height:30px;display:grid;place-items:center;border:0;background:#eef4ff;color:#2876ff;border-radius:50%;padding:0;font-size:calc(32*var(--s))}

/* Day selector, map and order buttons. */
.ref-ui .toolbar{display:grid;grid-template-columns:1.04fr 1.25fr .78fr;align-items:center;gap:calc(17*var(--s));padding:calc(10*var(--s));border-radius:calc(27*var(--s));background:#fff;border:1px solid white;margin:calc(13*var(--s)) 0 calc(15*var(--s));box-shadow:0 calc(9*var(--s)) calc(28*var(--s)) #6c94c416;position:relative}
.day-select-wrap{display:flex;align-items:center;gap:calc(12*var(--s));border:1px solid #dce7f8;border-radius:calc(19*var(--s));padding:0 calc(13*var(--s));height:calc(69*var(--s));min-height:38px;color:#5573a3;font-size:calc(29*var(--s))}
.ref-ui .toolbar select{max-width:none;min-width:0;width:100%;border:0;padding:0;min-height:0;height:100%;border-radius:0;background:transparent;font-weight:700;font-size:max(12px,calc(25*var(--s)));color:#132247;}
.ref-ui .toolbar .btn{display:flex;align-items:center;justify-content:center;gap:calc(15*var(--s));padding:0 calc(12*var(--s));height:calc(69*var(--s));min-height:38px;min-width:0;white-space:nowrap;border-radius:calc(20*var(--s));font-size:max(11px,calc(24*var(--s)));font-weight:600;border:1px solid #dfe8fa;}
.ref-ui .toolbar .btn.primary{background:linear-gradient(116deg,#358aff,#8370ff);border:0;box-shadow:0 6px 14px #447bff21;color:white}
.ref-ui #scheduleCloudStatus{position:relative;grid-column:1/-1;margin:-1px 0 -2px;min-height:0;font-size:10px;line-height:1.1;padding:0 6px;text-align:right;background:none;border:none;color:#388975;display:none;}
.ref-ui #scheduleCloudStatus.error{display:block;color:#c33b48}
.ref-ui .btn:disabled{opacity:.48;cursor:not-allowed}

/* Vertical time line. Place actions live inside the menu, not repeated on every card. */
.ref-ui #scheduleList{display:flex;flex-direction:column;gap:calc(14*var(--s));margin:0}
.ref-ui .route-row{position:relative;display:grid;grid-template-columns:calc(64*var(--s)) minmax(0,1fr);gap:calc(14*var(--s)) calc(25*var(--s));min-width:0}
.ref-ui .route-rail{grid-column:1;grid-row:1/-1;position:relative;display:flex;flex-direction:column;align-items:center;min-width:0}
.ref-ui .num{margin:calc(9*var(--s)) 0 0;min-width:0;width:calc(48*var(--s));height:calc(48*var(--s));border-radius:50%;background:linear-gradient(140deg,#76b4ff,#337dff);color:white;box-shadow:0 0 0 calc(6*var(--s)) #cee2ff;font-size:calc(27*var(--s));font-weight:600;z-index:1}
.ref-ui .route-time{background:transparent;margin-top:calc(15*var(--s));font-size:max(10px,calc(20*var(--s)));font-weight:500;line-height:1.28;text-align:center;color:#5876a6;white-space:nowrap;font-variant-numeric:tabular-nums;}
.ref-ui .route-time span{font-weight:500}
.ref-ui .line{width:0;margin:calc(9*var(--s)) 0 0;height:auto;flex:1;min-height:calc(20*var(--s));border-left:calc(2.5*var(--s)) dotted #68a0ff;background:none}
.ref-ui .place{position:relative;grid-column:2;min-width:0;margin:0;padding:calc(13*var(--s)) calc(20*var(--s)) calc(14*var(--s));background:rgba(255,255,255,.96);border:1px solid #fff;border-radius:calc(34*var(--s));box-shadow:0 calc(10*var(--s)) calc(28*var(--s)) rgba(79,125,174,.06);}
.ref-ui .place-head{display:flex;align-items:flex-start;justify-content:space-between;gap:calc(8*var(--s));margin-bottom:calc(11*var(--s));}
.ref-ui .place-title-wrap{display:flex;gap:calc(17*var(--s));align-items:center;min-width:0;flex:1;}
.ref-ui .place-title-text{min-width:0;flex:1}
.ref-ui .place-category-icon{width:calc(73*var(--s));height:calc(73*var(--s));border-radius:calc(24*var(--s));display:grid;place-items:center;flex:0 0 auto;font-size:calc(40*var(--s));background:#e3f2ff;color:#1291ff}
.tone-blue{--tone:#008bff;--tone-bg:#e4f2ff}
.tone-purple{--tone:#8950ff;--tone-bg:#efe7ff}
.tone-mint{--tone:#00bb93;--tone-bg:#e2f8ef}
.tone-coral{--tone:#ff794f;--tone-bg:#fff0e8}
.tone-pink{--tone:#fc6286;--tone-bg:#ffeaf0}
.ref-ui .place-category-icon{background:var(--tone-bg);color:var(--tone)}
.ref-ui .place-title-line{display:flex;align-items:center;gap:calc(10*var(--s));flex-wrap:wrap;min-width:0;}
.ref-ui .place h3{margin:0;font-size:max(13px,calc(30*var(--s)));line-height:1.18;font-weight:750;letter-spacing:-.04em;word-break:keep-all;overflow-wrap:anywhere;color:#10193d;}
.ref-ui .category-pill{background:var(--tone-bg);color:var(--tone);font-size:max(9px,calc(20*var(--s)));font-weight:650;padding:calc(5*var(--s)) calc(12*var(--s));border-radius:999px;white-space:nowrap;}
.ref-ui .place-address{display:flex;align-items:flex-start;gap:calc(7*var(--s));margin-top:calc(6*var(--s));font-size:max(10px,calc(21*var(--s)));line-height:1.25;color:#5978a5;word-break:keep-all;}
.ref-ui .place-address .ui-icon{flex-shrink:0}
.ref-ui .place-head-actions{display:flex;align-items:center;gap:calc(8*var(--s));padding-top:calc(2*var(--s));flex-shrink:0}
.ref-ui .cost-pill{display:inline-flex;align-items:center;gap:calc(8*var(--s));white-space:nowrap;padding:calc(10*var(--s)) calc(16*var(--s));border-radius:999px;color:#7250ff;background:linear-gradient(115deg,#f1efff,#f6f2ff);font-size:max(10px,calc(23*var(--s)));font-weight:700;}
.ref-ui .place-settings .icon-btn{width:calc(30*var(--s));min-width:25px;height:calc(41*var(--s));min-height:28px;display:grid;place-items:center;font-size:calc(27*var(--s));border:0;color:#58719a;background:none;border-radius:8px;padding:0;}
.ref-ui .place-body-grid{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.4fr);gap:calc(18*var(--s));align-items:stretch;}
.ref-ui .place-note-card{padding:calc(10*var(--s)) calc(15*var(--s));border:1px solid #dfeafb;border-radius:calc(21*var(--s));background:linear-gradient(145deg,#fff,#fefeff);min-height:calc(112*var(--s));min-width:0;}
.ref-ui .note-label{display:flex;align-items:center;gap:calc(9*var(--s));color:#008dff;font-size:max(10px,calc(21*var(--s)));font-weight:700;margin-bottom:calc(4*var(--s));line-height:1.2}
.ref-ui .note-label .ui-icon{font-size:1.2em}
.ref-ui .memo-text{margin:0;padding-left:calc(29*var(--s));font-size:max(10.5px,calc(21*var(--s)));line-height:1.42;white-space:pre-wrap;overflow-wrap:anywhere;letter-spacing:-.035em;}
.ref-ui .cost-detail{display:none}
.ref-ui .editing-badge{font-size:10px;line-height:1.2;padding:3px 5px;margin:0;}
.ref-ui .photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(10*var(--s));margin:0;padding:0;min-width:0;align-items:stretch;overflow:visible;min-height:calc(112*var(--s));}
.ref-ui .photo-mini{position:relative;display:block;padding:0;border:0;background:#edf5fc;border-radius:calc(16*var(--s));width:auto;min-width:0;height:100%;min-height:calc(112*var(--s));overflow:hidden;}
.ref-ui .photo-mini img{display:block;width:100%;height:100%;min-height:calc(112*var(--s));max-height:calc(155*var(--s));object-fit:cover;border-radius:0;background:#edf5fc;cursor:zoom-in;}
.ref-ui .photo-mini .cap{display:none}
.photo-more{position:absolute;right:5px;bottom:5px;border-radius:999px;background:#1d243aa9;color:#fff;font-size:max(11px,calc(20*var(--s)));padding:3px 9px;pointer-events:none}
.photo-placeholder{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #dfe8f6;border-radius:calc(16*var(--s));font-size:11px;color:#8191af;min-height:70px;text-align:center;}
.ref-ui .place-menu{right:0;top:100%;z-index:25;width:200px;border:1px solid #e0e8f6;border-radius:15px;background:#fff;padding:7px;box-shadow:0 12px 40px #28416d30;}
.ref-ui .place-menu .btn,.ref-ui .place-menu a{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;min-height:39px;border:0;font-size:13px;font-weight:500;margin:1px 0;border-radius:9px;padding:9px 10px;text-align:left;}
.ref-ui .place-menu .btn:hover,.ref-ui .place-menu a:hover{background:#edf4ff}
.ref-ui .menu-rule{border:0;border-top:1px solid #edf1fa;margin:5px 0}
.ref-ui .place-menu .complete-btn{width:100%;height:auto}
.ref-ui .place-menu .complete-btn.done{color:#00a27c;background:#e8f8f1}
.ref-ui .transit-connector{position:relative;grid-column:2;display:flex;align-items:center;justify-content:flex-start;gap:calc(19*var(--s));padding:calc(4*var(--s)) calc(21*var(--s));margin:0;border:1px solid #fff;background:linear-gradient(120deg,#fff,#f8fbff);min-height:calc(61*var(--s));border-radius:calc(29*var(--s));font-size:max(10px,calc(20*var(--s)));color:#5876a5;box-shadow:0 calc(6*var(--s)) calc(18*var(--s)) #6c94c40a;}
.ref-ui .transit-connector:before{content:"";position:absolute;left:calc(-58*var(--s));top:50%;width:calc(58*var(--s));border-top:calc(2.5*var(--s)) dotted #79aaff;}
.ref-ui .transit-icon{display:grid;place-items:center;width:calc(61*var(--s));height:calc(61*var(--s));border-radius:50%;margin-left:calc(-3*var(--s));font-size:calc(33*var(--s));color:var(--tone);background:var(--tone-bg);flex-shrink:0}
.ref-ui .transit-icon.tone-blue{background:linear-gradient(120deg,#5badff,#79beff);color:white}
.ref-ui .transit-connector strong{font-weight:650;white-space:nowrap;font-size:max(11px,calc(23*var(--s)));color:#152049}
.ref-ui .transit-mins{white-space:nowrap;font-size:inherit}
.ref-ui .transit-arrival{font-size:inherit;white-space:nowrap;}
.ref-ui .transit-arrival b{font-size:max(12px,calc(27*var(--s)));font-weight:700;padding:0;border:0;color:#0064ff;letter-spacing:-.045em;}
.ref-ui .transit-arrow{display:grid;place-items:center;font-size:calc(21*var(--s));margin-left:auto;color:#6485b1;}
/* Expense summary: sums are real, with currencies kept separate. */
.ref-ui #scheduleDailyExpenseSummary{margin-top:calc(15*var(--s))}
.ref-ui .daily-expense-card{border:1px solid white;border-radius:calc(30*var(--s));padding:calc(13*var(--s)) calc(22*var(--s));background:linear-gradient(115deg,#fff,#f5f9ff);box-shadow:0 calc(10*var(--s)) calc(28*var(--s)) #7694cb12}
.ref-ui .daily-expense-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:calc(9*var(--s))}
.ref-ui .daily-expense-title{display:flex;align-items:center;gap:calc(9*var(--s));color:#0062ff;min-width:0}
.ref-ui .daily-expense-title b{font-size:max(12px,calc(25*var(--s)));white-space:nowrap;letter-spacing:-.045em;}
.ref-ui .daily-expense-title .ui-icon{font-size:calc(24*var(--s))}
.ref-ui .daily-expense-title span{font-size:max(10px,calc(17*var(--s)));color:#5976a3;white-space:nowrap}
.ref-ui .expense-detail-link{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:#1874ff;font-size:max(10px,calc(19*var(--s)));padding:0;white-space:nowrap}
.ref-ui .daily-expense-bottom{display:grid;grid-template-columns:1fr auto;gap:calc(17*var(--s));align-items:stretch}
.ref-ui .daily-expense-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(9*var(--s));min-width:0;}
.ref-ui .daily-expense-cat{display:flex;align-items:center;gap:calc(8*var(--s));padding:calc(7*var(--s)) calc(8*var(--s));border-radius:calc(17*var(--s));background:#eef4ff;min-width:0;}
.ref-ui .daily-cat-icon{font-size:calc(29*var(--s));color:var(--tone,#276bfa);background:#ffffffa8;padding:calc(8*var(--s));border-radius:calc(13*var(--s));display:grid;place-items:center}
.ref-ui .daily-cat-values{min-width:0}
.ref-ui .daily-cat-values span{display:block;color:#7284a2;font-size:max(9px,calc(16*var(--s)));}
.ref-ui .daily-cat-values b{display:block;color:#14204b;font-size:max(10px,calc(19*var(--s)));font-weight:600;line-height:1.2;overflow-wrap:anywhere}
.ref-ui .daily-expense-total{border-left:calc(2*var(--s)) solid #cbdbff;padding-left:calc(20*var(--s));min-width:calc(140*var(--s));max-width:calc(245*var(--s));align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.ref-ui .daily-expense-total small{font-size:max(10px,calc(18*var(--s)));color:#6980a8;}
.ref-ui .daily-expense-total strong{font-size:max(18px,calc(41*var(--s)));font-weight:750;line-height:1.12;color:#005cff;letter-spacing:-.055em;overflow-wrap:anywhere}
.ref-ui .daily-expense-total.multi-currency strong{font-size:max(14px,calc(25*var(--s)))}

/* Native-looking navigation. */
.ref-ui .tabs{z-index:30;position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(941px,100%);border-radius:calc(38*var(--s)) calc(38*var(--s)) 0 0;border:1px solid #fff;background:#fffffff2;box-shadow:0 -7px 28px #7b9bcc0a;backdrop-filter:blur(16px);}
.ref-ui .tabs-inner{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;padding:calc(8*var(--s)) calc(20*var(--s)) max(8px,env(safe-area-inset-bottom));max-width:none;}
.ref-ui .tab{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:calc(4*var(--s));height:calc(83*var(--s));min-height:55px;padding:calc(10*var(--s)) 0;border-radius:calc(27*var(--s));font-size:max(11px,calc(20*var(--s)));font-weight:600;color:#5d79a0;background:none;}
.ref-ui .tab .tab-icon{display:grid;place-items:center;font-size:calc(32*var(--s));line-height:1;}
.ref-ui .tab.active:not(.add-center-tab){color:#0067ff;background:linear-gradient(135deg,#dcecff,#f6f9ff)}
.ref-ui .add-center-tab{transform:translateY(calc(-15*var(--s)));background:none;color:#5b749a;overflow:visible;}
.ref-ui .add-center-tab .tab-icon{display:grid;place-items:center;width:calc(83*var(--s));height:calc(83*var(--s));min-width:49px;min-height:49px;border-radius:50%;background:linear-gradient(125deg,#6695ff,#7075ff 60%,#56bcff);box-shadow:0 calc(12*var(--s)) calc(20*var(--s)) #6d8dff33;color:#fff;font-size:calc(42*var(--s));margin-top:calc(-16*var(--s));flex-shrink:0}
.ref-ui .nav-home:before,.ref-ui .nav-map:before,.ref-ui .nav-wallet:before,.ref-ui .nav-gear:before{content:none}
/* Other screens and forms retain their actual controls and legible sizing. */
.ref-ui #tripsView .card{border:1px solid white;box-shadow:0 8px 28px #7694cb12;}
.ref-ui .login-launch-btn{border:1px solid #e4edfc;border-radius:20px;box-shadow:none;}
.ref-ui .trip-card{padding:18px 20px;margin-bottom:6px}
.ref-ui .trip-title{font-size:21px;color:#142045}
.ref-ui .trip-active{background:linear-gradient(145deg,#fff,#f3f7ff);border-color:#d0e0ff!important}
.ref-ui .trip-index-card{margin-bottom:14px}
.ref-ui .trip-actions .btn{border-radius:12px;font-size:13px;min-height:37px}
.ref-ui .btn.primary{background:linear-gradient(120deg,#3486ff,#7768ff);border-color:transparent}
.ref-ui .modal{align-items:center;padding:18px;}
.ref-ui .sheet{border-radius:25px;max-height:calc(100dvh - 36px);overscroll-behavior:contain;}
.ref-ui .sheet .top h1{color:#122454}
.ref-ui .sheet .photo-grid .photo-thumb{width:100%;height:auto;aspect-ratio:4/3}
.ref-ui .sheet .btn{font-size:14px;}
.ref-ui .sheet .photo-grid .btn{font-size:12px}
.cover-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cover-option{padding:0;background:none;border:2px solid transparent;border-radius:13px;overflow:hidden}
.cover-option img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.cover-option.selected{border-color:#2682ff}
.cover-option span{display:block;padding:6px;font-size:11px;text-align:left}
.cover-pick-hint{font-size:13px;line-height:1.5;color:#6a7f9f}
.ref-ui .viewer .viewer-tools .btn{font-size:14px}
.ref-ui .viewer .viewer-close{z-index:90}
.ref-ui .viewer .viewer-nav{font-size:40px}
@media(max-width:600px){
  .ref-ui .hero .sub{font-size:calc(24*var(--s))}
  .ref-ui .place-head{gap:2px}
  .ref-ui .place-title-wrap{gap:calc(10*var(--s))}
  .ref-ui .place-head-actions{gap:2px;}
  .ref-ui .cost-pill{padding:4px 7px;gap:4px}
  .ref-ui .place-settings .icon-btn{min-width:23px}
  .ref-ui .memo-text{padding-left:0}
  .ref-ui .trip-focus-meta{padding-right:0}
  .ref-ui .transit-connector{gap:calc(11*var(--s));}
  .ref-ui .daily-expense-cat{gap:4px;padding:5px}
  .ref-ui .daily-cat-icon{padding:3px}
  .ref-ui .daily-expense-cats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ref-ui .daily-expense-total{min-width:60px;max-width:120px;}
}
@media(max-width:380px){
  .ref-ui .category-pill{padding:2px 4px}
  .ref-ui .cost-pill .ui-icon{display:none}
  .ref-ui .transit-connector{gap:4px}
  .ref-ui .daily-expense-cat{flex-direction:column;align-items:flex-start}
  .ref-ui .day-select-wrap{gap:4px;padding:0 6px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}


/* v74: compact typography + customizable icons + rename-only current trip menu */
.ref-ui .hero .eyebrow{font-size:calc(14*var(--s))}
.ref-ui .hero h1{font-size:calc(49*var(--s));margin:calc(7*var(--s)) 0 calc(9*var(--s))}
.ref-ui .hero .sub{font-size:calc(21*var(--s))}
.ref-ui .trip-focus-kicker{font-size:calc(18*var(--s));padding:calc(4*var(--s)) calc(12*var(--s))}
.ref-ui .trip-focus-name{font-size:calc(33*var(--s));margin:calc(5*var(--s)) 0 calc(5*var(--s))}
.ref-ui .trip-focus-meta{font-size:max(10px,calc(19*var(--s)))}
.ref-ui .trip-focus-meta.trip-dates{font-size:max(9.5px,calc(18*var(--s)))}
.ref-ui .presence-chip{font-size:max(9.5px,calc(17*var(--s)));min-height:calc(40*var(--s))}
.ref-ui .toolbar select{font-size:max(11px,calc(21*var(--s)))}
.ref-ui .toolbar .btn{font-size:max(10.5px,calc(20*var(--s)))}
.ref-ui .route-time{font-size:max(9.5px,calc(17*var(--s)))}
.ref-ui .place h3{font-size:max(12px,calc(25*var(--s)))}
.ref-ui .category-pill{font-size:max(8.5px,calc(16*var(--s)))}
.ref-ui .place-address{font-size:max(9.5px,calc(17*var(--s)))}
.ref-ui .cost-pill{font-size:max(9px,calc(18*var(--s)));padding:calc(8*var(--s)) calc(13*var(--s))}
.ref-ui .note-label{font-size:max(9.5px,calc(17*var(--s)))}
.ref-ui .memo-text{font-size:max(10px,calc(18*var(--s)))}
.ref-ui .transit-connector{font-size:max(9.5px,calc(17*var(--s)))}
.ref-ui .transit-connector strong{font-size:max(10px,calc(19*var(--s)))}
.ref-ui .transit-arrival b{font-size:max(11px,calc(22*var(--s)))}
.ref-ui .daily-expense-title b{font-size:max(11px,calc(21*var(--s)))}
.ref-ui .daily-cat-values span{font-size:max(8.5px,calc(14*var(--s)))}
.ref-ui .daily-cat-values b{font-size:max(9.5px,calc(17*var(--s)))}
.ref-ui .daily-expense-total strong{font-size:max(16px,calc(34*var(--s)))}

.focus-actions-wrap{position:absolute;right:calc(6*var(--s));top:0;z-index:16}
.focus-actions-wrap .focus-menu{position:static}
.focus-action-menu{display:none;position:absolute;right:0;top:calc(50*var(--s));width:max-content;min-width:150px;padding:6px;background:#fff;border:1px solid #e2eaf7;border-radius:13px;box-shadow:0 12px 36px rgba(48,72,116,.18);z-index:35}
.focus-action-menu.show{display:block}
.focus-action-menu button{display:flex;width:100%;align-items:center;gap:8px;border:0;background:#fff;border-radius:9px;padding:10px 12px;color:#17264b;font-size:13px;text-align:left}
.focus-action-menu button:hover{background:#eef5ff}
.focus-action-menu .ui-icon{font-size:16px;color:#3978ed}

.icon-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.icon-settings-groups{display:grid;gap:10px;margin-top:12px}
.icon-setting-group{border:1px solid #e3ebf7;border-radius:16px;background:#f9fbff;overflow:hidden}
.icon-setting-group summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#18274c;list-style:none}
.icon-setting-group summary::-webkit-details-marker{display:none}
.icon-setting-group summary:after{content:'⌄';float:right;color:#7890b4}
.icon-setting-group[open] summary:after{transform:rotate(180deg)}
.icon-setting-list{display:grid;gap:0;padding:0 10px 10px}
.icon-setting-row{display:grid;grid-template-columns:minmax(92px,1fr) 42px minmax(130px,1.25fr);align-items:center;gap:9px;padding:8px 4px;border-top:1px solid #edf2fa}
.icon-setting-name{font-size:13px;font-weight:700;color:#25365b}
.icon-setting-preview{width:36px;height:36px;border-radius:11px;background:#eaf3ff;color:#2678f7;display:grid;place-items:center;font-size:20px}
.icon-setting-row select{width:100%;min-height:38px;border:1px solid #dfe7f3;border-radius:10px;background:#fff;padding:6px 28px 6px 9px;font-size:13px;color:#223358}
@media(max-width:520px){
  .icon-settings-head{flex-direction:column}
  .icon-setting-row{grid-template-columns:86px 36px 1fr;gap:7px}
  .icon-setting-name,.icon-setting-row select{font-size:12px}
}


/* v75: denser typography, clearer expense summary, accordion settings/expense pages */
.ref-ui{--font-scale:.93}
.ref-ui .hero .eyebrow{font-size:calc(13*var(--s))}
.ref-ui .hero h1{font-size:calc(45*var(--s));line-height:1.02}
.ref-ui .hero .sub{font-size:calc(19*var(--s))}
.ref-ui .trip-focus-kicker{font-size:calc(16*var(--s))}
.ref-ui .trip-focus-name{font-size:calc(30*var(--s));line-height:1.06}
.ref-ui .trip-focus-meta{font-size:max(9px,calc(17*var(--s)))}
.ref-ui .trip-focus-meta.trip-dates{font-size:max(9px,calc(16*var(--s)))}
.ref-ui .presence-chip{font-size:max(9px,calc(15*var(--s)))}
.ref-ui .toolbar select{font-size:max(10px,calc(18*var(--s)))}
.ref-ui .toolbar .btn{font-size:max(10px,calc(18*var(--s)))}
.ref-ui .route-time{font-size:max(9px,calc(15*var(--s)))}
.ref-ui .place h3{font-size:max(11px,calc(22*var(--s)))}
.ref-ui .category-pill{font-size:max(8px,calc(14*var(--s)))}
.ref-ui .place-address{font-size:max(9px,calc(15*var(--s)))}
.ref-ui .cost-pill{font-size:max(8.5px,calc(16*var(--s)));padding:calc(7*var(--s)) calc(11*var(--s))}
.ref-ui .note-label{font-size:max(9px,calc(15*var(--s)))}
.ref-ui .memo-text{font-size:max(9.5px,calc(16*var(--s)));line-height:1.42}
.ref-ui .transit-connector{font-size:max(9px,calc(15*var(--s)))}
.ref-ui .transit-connector strong{font-size:max(9.5px,calc(17*var(--s)))}
.ref-ui .transit-arrival b{font-size:max(10px,calc(19*var(--s)))}
.ref-ui .tab{font-size:max(10px,calc(17*var(--s)))}
.ref-ui .tab .tab-icon{font-size:calc(28*var(--s))}

.page-section-heading{display:flex;align-items:end;justify-content:space-between;margin:2px 2px 10px;padding:0 2px}
.page-section-heading h2{margin:0;color:#152348;font-size:20px;letter-spacing:-.03em}
.compact-page{display:none;gap:10px}
.compact-page.active{display:grid}
.clean-accordion{border:1px solid #e3eaf6;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 6px 20px rgba(70,95,135,.06)}
.clean-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;color:#17264b;user-select:none}
.clean-accordion>summary::-webkit-details-marker{display:none}
.clean-accordion>summary:after{content:'⌄';font-size:18px;color:#7890b4;transition:transform .18s ease}
.clean-accordion[open]>summary:after{transform:rotate(180deg)}
.clean-accordion>summary>div{display:grid;gap:2px}
.clean-accordion>summary b{font-size:15px;letter-spacing:-.02em}
.clean-accordion>summary span{font-size:11px;color:#7a89a4;font-weight:500}
.clean-accordion-body{border-top:1px solid #edf2f9;padding:14px 16px 16px}
.clean-accordion .field{margin-top:10px}
.clean-accordion .field label{font-size:12px}
.clean-accordion input,.clean-accordion select,.clean-accordion textarea{font-size:13px}
.clean-accordion .btn{font-size:12px;min-height:36px}
.clean-accordion .small{font-size:11px;line-height:1.45}
.compact-subsection{padding-bottom:4px}
.compact-subtitle{font-weight:800;font-size:13px;color:#24365f;margin-bottom:4px}
.compact-actions{gap:7px;flex-wrap:wrap}
.compact-setting-gap{margin-top:14px!important}
.danger-accordion>summary b{color:#d14a4a}

.custom-type-builder{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
.custom-type-box{border:1px solid #e7edf7;background:#f8fbff;border-radius:14px;padding:11px}
.custom-type-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(100px,1fr) auto;gap:6px;margin-top:8px}
.custom-type-row input,.custom-type-row select{min-width:0;height:36px}
.icon-help{padding:9px 11px;border-radius:12px;background:#f2f7ff;color:#5f7395}
.icon-settings-head{margin-top:14px}
.icon-settings-groups{gap:8px}
.icon-setting-group{background:#fbfdff;border-radius:14px}
.icon-setting-group summary{padding:10px 12px;font-size:13px}
.summary-count{display:inline-flex;margin-left:6px;padding:1px 6px;border-radius:999px;background:#edf4ff;color:#4f78bd;font-size:10px}
.icon-setting-list{padding:0 8px 8px}
.icon-setting-row{grid-template-columns:minmax(84px,1fr) 34px minmax(115px,1.25fr) 26px;gap:7px;padding:7px 3px}
.icon-setting-name{font-size:12px}
.icon-setting-name small{display:block;font-size:9px;color:#7e91af;font-weight:500;margin-top:1px}
.icon-setting-preview{width:32px;height:32px;font-size:17px}
.icon-setting-row select{min-height:34px;font-size:12px}
.icon-remove-btn{width:26px;height:26px;border:0;border-radius:8px;background:#fff0f0;color:#d94848;font-size:18px;line-height:1;cursor:pointer}

/* expense summary: label with icon on top, currencies below in a horizontal wrap */
.ref-ui .daily-expense-card{padding:calc(12*var(--s)) calc(18*var(--s))}
.ref-ui .daily-expense-head{margin-bottom:calc(8*var(--s))}
.ref-ui .daily-expense-title b{font-size:max(10px,calc(18*var(--s)))}
.ref-ui .daily-expense-title span{font-size:max(8px,calc(14*var(--s)))}
.ref-ui .expense-detail-link{font-size:max(9px,calc(15*var(--s)))}
.ref-ui .daily-expense-bottom{grid-template-columns:minmax(0,1fr) auto;gap:calc(12*var(--s))}
.ref-ui .daily-expense-cats{gap:calc(7*var(--s))}
.ref-ui .daily-expense-cat{display:grid;align-content:start;gap:calc(6*var(--s));padding:calc(7*var(--s));min-width:0}
.ref-ui .daily-cat-label{display:flex;align-items:center;gap:calc(5*var(--s));font-size:max(8px,calc(14*var(--s)));font-weight:700;color:#536884;white-space:nowrap}
.ref-ui .daily-cat-icon{width:calc(30*var(--s));height:calc(30*var(--s));padding:calc(5*var(--s));border-radius:calc(10*var(--s));font-size:calc(18*var(--s));flex:0 0 auto}
.ref-ui .daily-cat-amounts,.ref-ui .daily-total-amounts{display:flex;align-items:center;gap:3px 6px;flex-wrap:wrap;min-width:0}
.ref-ui .daily-money-chip{display:inline-block;color:#14204b;font-size:max(8.5px,calc(14.5*var(--s)));font-weight:700;line-height:1.15;white-space:nowrap}
.ref-ui .daily-money-chip.currency-krw:before{content:'·';margin-right:5px;color:#9cadc5;font-weight:400}
.ref-ui .daily-money-chip.currency-usd:before{content:'·';margin-right:5px;color:#9cadc5;font-weight:400}
.ref-ui .daily-expense-total{min-width:calc(118*var(--s));max-width:calc(220*var(--s));padding-left:calc(14*var(--s))}
.ref-ui .daily-expense-total small{font-size:max(8.5px,calc(14*var(--s)))}
.ref-ui .daily-expense-total .daily-money-chip{color:#075ff5;font-size:max(10px,calc(18*var(--s)))}

@media(max-width:600px){
  .custom-type-builder{grid-template-columns:1fr}
  .custom-type-row{grid-template-columns:1fr 1fr auto}
  .clean-accordion>summary{padding:12px 13px}
  .clean-accordion-body{padding:12px 13px 14px}
  .ref-ui .daily-expense-cats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .ref-ui .daily-expense-cat{padding:5px}
  .ref-ui .daily-cat-label{gap:3px}
  .ref-ui .daily-cat-icon{width:24px;height:24px;padding:3px}
  .ref-ui .daily-cat-amounts{display:flex;flex-wrap:wrap;gap:2px 5px}
  .ref-ui .daily-money-chip{font-size:max(8px,calc(13*var(--s)))}
  .ref-ui .daily-money-chip.currency-krw:before,.ref-ui .daily-money-chip.currency-usd:before{content:'·';margin-right:4px}
  .ref-ui .daily-expense-total{min-width:88px;max-width:112px;padding-left:8px}
  .ref-ui .daily-expense-total .daily-total-amounts{display:flex;flex-wrap:wrap;gap:2px 5px}
  .ref-ui .daily-expense-total .daily-money-chip{font-size:max(9px,calc(15*var(--s)))}
  .icon-setting-row{grid-template-columns:76px 32px 1fr 25px}
}
@media(max-width:390px){
  .ref-ui .place h3{font-size:max(10.5px,calc(20*var(--s)))}
  .ref-ui .memo-text{font-size:max(9px,calc(15*var(--s)))}
  .custom-type-row{grid-template-columns:1fr 1fr}.custom-type-row .btn{grid-column:1/-1}
}


/* v76 — reference-match pass. 941px is the source artwork width; everything scales from it. */
.ref-ui{--s:clamp(.34px,calc(100vw / 941),1px)}
body.ref-ui{background:linear-gradient(180deg,#edf7ff 0,#f6f9ff 48%,#edf5ff 100%)}
.ref-ui .app{max-width:941px;padding:calc(61*var(--s)) calc(28*var(--s)) calc(145*var(--s));}

/* Header — real HTML controls over a decoration-only raster. */
.ref-ui .hero{height:calc(196*var(--s));border-radius:calc(38*var(--s));margin-bottom:calc(14*var(--s));
  background:linear-gradient(112deg,#0967e8 0%,#1e7df6 48%,#70bdff 100%);box-shadow:none;}
.ref-ui .hero:before{background:linear-gradient(132deg,transparent 50%,rgba(168,143,255,.28) 50.3%,rgba(143,174,255,.10) 67%,transparent 67.2%)}
.ref-ui .hero:after{content:"";display:block;position:absolute;inset:auto 0 0 0;height:calc(52*var(--s));z-index:0;pointer-events:none;
  background:
    radial-gradient(circle at 3% 110%,#fff 0 39%,transparent 40%),
    radial-gradient(circle at 10% 115%,#fff 0 35%,transparent 36%),
    radial-gradient(circle at 40% 120%,#fff 0 37%,transparent 38%),
    radial-gradient(circle at 49% 118%,#fff 0 31%,transparent 32%),
    radial-gradient(circle at 58% 122%,#fff 0 35%,transparent 36%);
  opacity:.97}
.ref-ui .hero-art{inset:auto calc(10*var(--s)) 0 auto;width:calc(404*var(--s));height:calc(118*var(--s));object-fit:fill;z-index:1;border-radius:0;}
.ref-ui .hero .hero-text{left:3.8%;top:16.5%;width:58%;z-index:3}
.ref-ui .hero .eyebrow{font-size:calc(15*var(--s));font-weight:700;letter-spacing:.30em;line-height:1.3}
.ref-ui .hero h1{font-size:calc(50*var(--s));font-weight:800;line-height:1.12;letter-spacing:-.05em;margin:calc(8*var(--s)) 0 calc(10*var(--s));}
.ref-ui .hero .brand-by{font-size:.44em;font-weight:550;margin-left:calc(6*var(--s))}
.ref-ui .hero .sub{font-size:calc(21*var(--s));font-weight:450;letter-spacing:-.03em;line-height:1.25}
.ref-ui .hero-status-row{top:9.5%;right:2.0%;gap:calc(10*var(--s));z-index:4}
.ref-ui .cloud-badge{min-height:calc(46*var(--s));padding:calc(9*var(--s)) calc(15*var(--s));font-size:calc(18*var(--s));font-weight:650}
.ref-ui .cloud-badge:before{width:calc(15*var(--s));height:calc(15*var(--s))}
.ref-ui .hero-badge{min-height:calc(46*var(--s));padding:calc(9*var(--s)) calc(15*var(--s));font-size:calc(20*var(--s));font-weight:500}
.ref-ui .hero-round-btn{width:calc(47*var(--s));height:calc(47*var(--s));min-width:24px;min-height:24px;color:#4b79ff;font-size:calc(26*var(--s));font-weight:900}
.hero-help-mark{display:block;line-height:1;transform:translateY(-1px)}

/* Current-trip panel. */
.ref-ui .trip-focus-card{grid-template-columns:calc(195*var(--s)) minmax(0,1fr);gap:calc(23*var(--s));padding:calc(12*var(--s));min-height:calc(249*var(--s));border-radius:calc(31*var(--s));box-shadow:0 calc(8*var(--s)) calc(28*var(--s)) rgba(89,123,177,.08)}
.ref-ui .trip-focus-cover{min-height:calc(225*var(--s));border-radius:calc(20*var(--s));}
.ref-ui .trip-focus-cover-inner{justify-content:flex-start;padding:calc(21*var(--s)) calc(12*var(--s));background:linear-gradient(180deg,rgba(17,41,75,.08),transparent 48%,rgba(17,41,75,.12))}
.ref-ui .cover-script{font-size:calc(25*var(--s));line-height:1.05;text-align:center;text-shadow:0 1px 5px rgba(0,25,70,.32)}
.ref-ui .cover-pin{width:calc(51*var(--s));height:calc(51*var(--s));right:calc(14*var(--s));bottom:calc(11*var(--s));font-size:calc(27*var(--s))}
.ref-ui .trip-focus-main{justify-content:flex-start;padding-top:calc(7*var(--s))}
.ref-ui .trip-focus-kicker{font-size:calc(18*var(--s));padding:calc(5*var(--s)) calc(14*var(--s));gap:calc(7*var(--s));font-weight:750}
.ref-ui .trip-focus-name{font-size:calc(36*var(--s));line-height:1.13;margin:calc(7*var(--s)) 0 calc(8*var(--s));padding-right:26%;font-weight:800}
.ref-ui .trip-focus-meta{font-size:calc(21*var(--s));line-height:1.25;margin:calc(5*var(--s)) 0;padding-right:27%;gap:calc(9*var(--s));}
.ref-ui .trip-focus-meta.trip-dates{font-size:calc(19*var(--s));padding-right:0;white-space:nowrap}
.ref-ui .focus-actions-wrap{right:calc(2*var(--s));top:calc(1*var(--s))}
.ref-ui .focus-menu{width:calc(47*var(--s));height:calc(47*var(--s));font-size:calc(23*var(--s))}
.ref-ui .trip-focus-quote{position:absolute;right:calc(26*var(--s));top:calc(63*var(--s));width:calc(150*var(--s));height:calc(83*var(--s));border-radius:48% 52% 50% 44%;background:#f1f6ff;color:#1769ff;display:grid;place-content:center;text-align:center;font-size:calc(19*var(--s));font-weight:650;line-height:1.3;transform:rotate(-4deg)}
.ref-ui .trip-focus-quote b{font-size:1.05em}
.ref-ui .trip-focus-online{margin-top:auto;margin-bottom:calc(1*var(--s));}
.ref-ui .presence-row{gap:calc(9*var(--s))}
.ref-ui .presence-chip{font-size:calc(18*var(--s));min-height:calc(43*var(--s));padding:calc(4*var(--s)) calc(13*var(--s)) calc(4*var(--s)) calc(4*var(--s));}
.ref-ui .presence-avatar{width:calc(37*var(--s));height:calc(37*var(--s));font-size:calc(18*var(--s))}

/* Toolbar. */
.ref-ui .toolbar{grid-template-columns:1fr 1.30fr .78fr;gap:calc(15*var(--s));padding:calc(10*var(--s));border-radius:calc(27*var(--s));margin:calc(13*var(--s)) 0 calc(13*var(--s));}
.ref-ui .day-select-wrap,.ref-ui .toolbar .btn{height:calc(67*var(--s));min-height:34px;border-radius:calc(18*var(--s));}
.ref-ui .day-select-wrap{gap:calc(10*var(--s));padding:0 calc(14*var(--s));font-size:calc(27*var(--s))}
.ref-ui .toolbar select{font-size:calc(23*var(--s));font-weight:750}
.ref-ui .toolbar .btn{font-size:calc(22*var(--s));gap:calc(12*var(--s));font-weight:700}

/* Timeline and place cards. */
.ref-ui #scheduleList{gap:calc(12*var(--s))}
.ref-ui .route-row{grid-template-columns:calc(63*var(--s)) minmax(0,1fr);column-gap:calc(19*var(--s));row-gap:calc(11*var(--s));}
.ref-ui .num{width:calc(47*var(--s));height:calc(47*var(--s));font-size:calc(25*var(--s));box-shadow:0 0 0 calc(5*var(--s)) #cce3ff;margin-top:calc(7*var(--s))}
.ref-ui .route-time{font-size:calc(17*var(--s));margin-top:calc(12*var(--s));line-height:1.34}
.ref-ui .line{margin-top:calc(8*var(--s));border-left-width:calc(2*var(--s));border-color:#5fa3ff}
.ref-ui .place{padding:calc(12*var(--s)) calc(17*var(--s)) calc(13*var(--s));border-radius:calc(28*var(--s));box-shadow:0 calc(8*var(--s)) calc(24*var(--s)) rgba(88,119,170,.055)}
.ref-ui .place-head{margin-bottom:calc(9*var(--s));}
.ref-ui .place-title-wrap{gap:calc(14*var(--s))}
.ref-ui .place-category-icon{width:calc(67*var(--s));height:calc(67*var(--s));border-radius:calc(21*var(--s));font-size:calc(36*var(--s))}
.ref-ui .place-title-line{gap:calc(8*var(--s))}
.ref-ui .place h3{font-size:calc(27*var(--s));line-height:1.15;font-weight:780}
.ref-ui .category-pill{font-size:calc(16*var(--s));padding:calc(4*var(--s)) calc(10*var(--s));font-weight:700}
.ref-ui .place-address{font-size:calc(17*var(--s));margin-top:calc(5*var(--s));gap:calc(6*var(--s))}
.ref-ui .cost-pill{font-size:calc(18*var(--s));padding:calc(8*var(--s)) calc(13*var(--s));gap:calc(7*var(--s))}
.ref-ui .place-settings .icon-btn{font-size:calc(23*var(--s));height:calc(35*var(--s));min-width:22px;min-height:24px}
.ref-ui .place-body-grid{grid-template-columns:minmax(0,.93fr) minmax(0,1.42fr);gap:calc(17*var(--s));}
.ref-ui .place-body-grid.no-photos{grid-template-columns:minmax(0,1fr)}
.ref-ui .place-body-grid.no-photos .photo-strip{display:none}
.ref-ui .place-note-card{min-height:calc(105*var(--s));padding:calc(10*var(--s)) calc(14*var(--s));border-radius:calc(18*var(--s))}
.ref-ui .note-label{font-size:calc(17*var(--s));gap:calc(7*var(--s));margin-bottom:calc(4*var(--s))}
.ref-ui .memo-text{font-size:calc(18*var(--s));line-height:1.35;padding-left:calc(25*var(--s))}
.ref-ui .photo-strip{min-height:calc(105*var(--s));gap:calc(8*var(--s));}
.ref-ui .photo-mini{min-height:calc(105*var(--s));border-radius:calc(13*var(--s))}
.ref-ui .photo-mini img{min-height:calc(105*var(--s));max-height:calc(124*var(--s))}
.ref-ui .transit-connector{min-height:calc(57*var(--s));border-radius:calc(28*var(--s));gap:calc(17*var(--s));padding:calc(4*var(--s)) calc(18*var(--s));font-size:calc(17*var(--s));}
.ref-ui .transit-connector:before{left:calc(-50*var(--s));width:calc(50*var(--s));border-top-width:calc(2*var(--s))}
.ref-ui .transit-icon{width:calc(55*var(--s));height:calc(55*var(--s));font-size:calc(29*var(--s));}
.ref-ui .transit-connector strong{font-size:calc(20*var(--s));font-weight:700}
.ref-ui .transit-arrival b{font-size:calc(23*var(--s));}
.ref-ui .transit-arrow{font-size:calc(19*var(--s))}

/* Daily expense summary. */
.ref-ui #scheduleDailyExpenseSummary{margin-top:calc(13*var(--s))}
.ref-ui .daily-expense-card{border-radius:calc(28*var(--s));padding:calc(12*var(--s)) calc(18*var(--s));box-shadow:0 calc(8*var(--s)) calc(24*var(--s)) rgba(88,119,170,.055)}
.ref-ui .daily-expense-head{margin-bottom:calc(7*var(--s))}
.ref-ui .daily-expense-title b{font-size:calc(20*var(--s));}
.ref-ui .daily-expense-title span{font-size:calc(15*var(--s))}
.ref-ui .expense-detail-link{font-size:calc(16*var(--s))}
.ref-ui .daily-expense-bottom{gap:calc(13*var(--s))}
.ref-ui .daily-expense-cats{gap:calc(7*var(--s))}
.ref-ui .daily-expense-cat{padding:calc(6*var(--s)) calc(7*var(--s));border-radius:calc(16*var(--s));gap:calc(5*var(--s));}
.ref-ui .daily-cat-label{font-size:calc(14*var(--s));gap:calc(4*var(--s));}
.ref-ui .daily-cat-icon{width:calc(29*var(--s));height:calc(29*var(--s));font-size:calc(17*var(--s));padding:calc(4*var(--s));}
.ref-ui .daily-money-chip{font-size:calc(15*var(--s));}
.ref-ui .daily-expense-total{min-width:calc(151*var(--s));max-width:calc(185*var(--s));padding-left:calc(15*var(--s));}
.ref-ui .daily-expense-total small{font-size:calc(14*var(--s));}
.ref-ui .daily-expense-total .daily-money-chip{font-size:calc(19*var(--s));}

/* Bottom navigation. */
.ref-ui .tabs{width:min(941px,100%);border-radius:calc(37*var(--s)) calc(37*var(--s)) 0 0;box-shadow:0 -8px 30px rgba(75,110,166,.08)}
.ref-ui .tabs-inner{padding:calc(8*var(--s)) calc(23*var(--s)) max(8px,env(safe-area-inset-bottom));}
.ref-ui .tab{height:calc(83*var(--s));min-height:52px;border-radius:calc(24*var(--s));font-size:calc(17*var(--s));gap:calc(4*var(--s));}
.ref-ui .tab .tab-icon{font-size:calc(29*var(--s))}
.ref-ui .add-center-tab{transform:translateY(calc(-16*var(--s)))}
.ref-ui .add-center-tab .tab-icon{width:calc(76*var(--s));height:calc(76*var(--s));min-width:46px;min-height:46px;font-size:calc(39*var(--s));margin-top:calc(-13*var(--s))}

@media(max-width:600px){
  .ref-ui .app{padding-top:calc(12*var(--s));padding-left:calc(13*var(--s));padding-right:calc(13*var(--s))}
  .ref-ui .hero{height:calc(196*var(--s));border-radius:calc(31*var(--s));}
  .ref-ui .trip-focus-quote{display:none}
  .ref-ui .trip-focus-meta{padding-right:0}
  .ref-ui .trip-focus-name{padding-right:12%}
  .ref-ui .daily-expense-total{min-width:84px;max-width:112px;padding-left:8px}
  .ref-ui .daily-expense-total .daily-money-chip{font-size:calc(15*var(--s))}
}
