/* Pocket Trip: Tokyo × Sendai sky-blue samurai cloud edition */
:root{--bg:#edf8ff;--rose:#7bb9e8;--rose2:#e6f4ff;--ink:#244d77;--sub:#6787a6;--line:#cde6f9;--shadow:0 8px 28px #6b9fc020}
body{background:linear-gradient(145deg,#e3f5ff,#fff4fa 68%,#eaf6ff)}
.app-shell{background:linear-gradient(#f2faff,#fff8fb);max-width:960px}
.topbar{background:#e8f6ff;border-bottom:2px solid #c6e5f8}
.brandmark{background:#fff;color:#548cc1;box-shadow:0 2px 8px #8bc4ed50}
.brand strong span{color:#5a9cce}
.hero{background:linear-gradient(112deg,#d3eeff 0%,#eff9ff 45%,#fff2ed 100%);min-height:330px;border:2px solid #fff}
.hero:before{content:'☁ ✨';color:#7ab6df}
.hero-text{padding:24px 20px 0}
.hero h1{font-size:clamp(27px,5vw,39px);color:#26527d}
.hero h1 em{color:#528fc3}
.hero-scene{opacity:.58;width:88%;bottom:25px}
.hero-samurai{position:absolute;bottom:23px;right:3px;width:44%;max-width:235px;z-index:3;filter:drop-shadow(0 7px 5px #6599bd24);border-radius:26px}
.hero-bottom{background:#ffffffd8;color:#4e87af}
.intro-strip{border:1px solid #c9e6f7;background:#fff}
.intro-strip strong,.section-title h2{color:#315e89}
.day-chip.selected{background:#4f91c9;border-color:#4f91c9}
.day-banner{background:linear-gradient(105deg,#fce7f2,#e8f7ff)}
.day-banner.onsen{background:linear-gradient(105deg,#e6f4ff,#e9f6ec)}
.day-banner.bay{background:linear-gradient(105deg,#e7f5e7,#e7f5ff)}
.day-banner.flight{background:linear-gradient(105deg,#e6f2ff,#fff1db)}
.event-card{border-color:#d9eaf6;box-shadow:0 6px 20px #6eacd018}
.event-card[data-type=activity]{--cat:#7ab9ed}
.event-status{background:#e4f8eb;color:#28774c}
.btn-primary{background:#5c9fd1}
.mini-action.map{background:#e7f6ff;color:#3d84b7}
.budget-hero{background:linear-gradient(120deg,#d3efff,#e9f8ff,#ffeaf5)}
.progress-track span{background:#64acd9}
.samurai-note{display:flex;align-items:center;gap:12px;margin:14px 0 6px;padding:11px 13px;border:1px solid #c5e6f9;border-radius:18px;background:#f6fcff}
.samurai-note img{width:92px;height:70px;object-fit:cover;object-position:45% 40%;border-radius:13px}
.samurai-note strong{font-size:13px;color:#386b98}
.samurai-note p{font-size:11px;line-height:1.6;color:#6b8baa;margin:4px 0 0}
.samurai-badge{display:inline-block;border-radius:100px;padding:5px 9px;background:#e6f3ff;color:#397fb5;font-size:10px;font-weight:900}
@media(max-width:480px){.hero{min-height:315px}.hero-samurai{width:49%;right:-5px;bottom:28px}.hero-scene{width:97%;opacity:.42}.hero-text{padding:19px 15px 0}.hero h1{font-size:29px}.samurai-note img{width:74px;height:64px}}

/* Full dashboard redesign */
.app-shell{max-width:1440px;background:#f7fcff;border:1px solid #d7edfb;border-radius:24px;overflow:hidden}
.desktop-layout{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:100vh}
.desktop-sidebar{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 14px;background:linear-gradient(160deg,#ccecff,#e7f6ff 65%,#c9e9ff);border-right:2px solid #b6ddf8;color:#235784}
.sidebar-mascot{border-radius:24px;background:#fff9;width:145px;overflow:hidden;border:2px solid white;box-shadow:0 7px 20px #7ab5df36}.sidebar-mascot img{width:100%;display:block}
.desktop-sidebar h2{text-align:center;line-height:1.3;font-size:20px;margin:0;font-weight:950;color:#20518a}.desktop-sidebar p{font-size:11px;margin:0 0 15px;color:#507eaa;font-weight:800}
.sidebar-nav{display:grid;gap:10px;width:100%}.sidebar-nav button{border:1px solid #c0e3fb;background:#fff9;color:#315d89;text-align:left;font-size:13px;font-weight:850;border-radius:15px;padding:14px 12px}.sidebar-nav button:hover{background:#fff}.sidebar-footer{margin-top:auto;text-align:center;font-size:12px;line-height:2;color:#487ba5}
main{min-width:0;padding:0 22px 125px}
.topbar{padding:11px 24px;min-height:59px}
.hero{margin-top:20px;min-height:305px;border-radius:28px;background:linear-gradient(112deg,#cfeeff,#e9f7ff 48%,#ffeff7);box-shadow:0 8px 24px #73acd229}
.hero-text{padding:35px 32px 0}.hero h1{font-size:clamp(30px,4.4vw,51px);line-height:1.15;letter-spacing:1px}.hero-text>p{font-size:12px}.hero-bubbles span{font-size:11px;padding:8px 12px}
.hero-scene{width:60%;max-width:590px;bottom:24px;right:13%;opacity:.65}.hero-samurai{width:31%;max-width:290px;bottom:30px;right:1%;border:3px solid #fff;box-shadow:0 8px 18px #7caed128}
.hero-bottom{font-size:10px}
.dashboard-head{text-align:center;margin:23px 0 16px}.dashboard-head span{font-size:10px;letter-spacing:1.5px;font-weight:900;color:#5799c7}.dashboard-head h2{font-size:25px;color:#2c6090;margin:7px 0}.dashboard-head p{font-size:12px;color:#7393ac;margin:0}
.dashboard-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0 27px}
.dashboard-cards button{display:flex;align-items:flex-start;flex-direction:column;gap:8px;border:2px solid #d7ebfa;border-radius:21px;padding:17px 13px;background:#fff;box-shadow:0 5px 15px #7cb5d11c;text-align:left;min-height:138px;color:#275986}
.dashboard-cards button:nth-child(1){background:#fff0f6;border-color:#f6d9e6}.dashboard-cards button:nth-child(2){background:#eaf6ff}.dashboard-cards button:nth-child(3){background:#e9f7ff}.dashboard-cards button:nth-child(4){background:#f0fbf3}
.dashboard-cards button span{font-size:29px}.dashboard-cards button b{font-size:14px}.dashboard-cards button small{font-size:10px;color:#6e8da5;line-height:1.6}
.samurai-note{margin-top:16px}.intro-strip{margin-top:10px}
.day-tabs{gap:11px}.day-chip{border:2px solid #d5eafa;background:#fff}.day-chip.selected{background:#5b9ed4}
.bottom-nav{background:#fffef9e8;border:2px solid #d6eafb;border-radius:99px;left:50%;transform:translateX(-50%);width:min(650px,95%);bottom:15px;box-shadow:0 7px 20px #6795b633}
@media(min-width:900px){.app-shell{margin:10px auto}.bottom-nav{position:fixed}.timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-left:0;margin-left:0;padding-left:0}.event-card{margin:0}.event-card:before{display:none}}
@media(max-width:899px){.desktop-layout{display:block}.desktop-sidebar{display:none}.app-shell{border:0;border-radius:0}main{padding:0 15px 125px}.hero-text{padding:22px 16px 0}.hero h1{font-size:32px}.hero-scene{width:85%;right:0}.hero-samurai{width:43%;bottom:26px;right:0}.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dashboard-cards button{min-height:126px;padding:12px}.dashboard-head h2{font-size:21px}}
@media(max-width:400px){.hero h1{font-size:28px}.hero{min-height:300px}.dashboard-cards button b{font-size:12px}.dashboard-cards button small{font-size:9px}}

/* Authentic Masamune-Cinnamoroll illustration edition */
:root{--ink:#193f73;--sub:#6682a6;--line:#beddf5}
body{background:linear-gradient(120deg,#d3edff,#f5fbff 44%,#ffeef8)}
.app-shell{background:linear-gradient(180deg,#e8f7ff 0,#f9fcff 370px,#fff9fd 100%)}
.hero{background:linear-gradient(120deg,#bde4ff 0%,#e7f6ff 52%,#fff0f5 100%);border:3px solid white;box-shadow:0 10px 30px #559cc936}
.hero:before{content:'☁️  ✨  ☁️';top:9px;right:25px;font-size:23px}
.hero-text{z-index:5}.hero h1{color:#194b88;text-shadow:0 2px 0 #fff}.hero h1 em{color:#3c88ca}
.hero-bubbles span{background:#ffffffd9;border:1px solid #fff;color:#3575a7;box-shadow:0 2px 8px #7fb2d322}
.hero-samurai{width:43%;max-width:345px;right:1%;bottom:25px;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 9px 7px #3f81a04d);object-fit:contain;z-index:4}
.hero-scene{opacity:.4;right:11%;width:80%;bottom:22px}
.hero-cityscape{position:absolute;z-index:3;bottom:43px;left:25px;display:flex;gap:11px;align-items:center;color:#317ab6;font-size:12px;font-weight:950;text-shadow:0 1px white}
.hero-cityscape span{padding:6px 9px;background:#ffffffb8;border:1px solid #fff;border-radius:30px}
.hero-cityscape .city-train{font-size:22px;background:transparent;border:0}
.sidebar-mascot{background:linear-gradient(#d8f0ff,#fff3f9);border-radius:28px}.sidebar-mascot img{object-fit:contain;aspect-ratio:1}
.samurai-note{background:linear-gradient(100deg,#e7f6ff,#fff4fa);border:2px solid white;box-shadow:0 5px 14px #7aa9cc24}
.samurai-note img{background:#d6efff;object-fit:contain;object-position:center;border-radius:15px}
.samurai-charm{margin:15px 0;padding:12px 16px;border-radius:18px;background:linear-gradient(90deg,#dcefff,#fff1f6);border:1px solid #c5e5fc;color:#336c9d;font-size:12px}
.dashboard-cards button{border:2px solid #b9dffa;box-shadow:0 6px 16px #78aaca26;transition:transform .15s}
.dashboard-cards button:active{transform:scale(.97)}
.dashboard-cards button:nth-child(1){background:linear-gradient(145deg,#ffe5f2,#fff8fc)}
.dashboard-cards button:nth-child(2){background:linear-gradient(145deg,#d6edff,#fff)}
.dashboard-cards button:nth-child(3){background:linear-gradient(145deg,#d9f0ff,#f7fcff)}
.dashboard-cards button:nth-child(4){background:linear-gradient(145deg,#e2f5e8,#fff)}
.day-chip{background:#fff;border-color:#c8e4f7}.day-chip.selected{background:#397fbe;color:#fff}
.event-card{border:2px solid #d7e9f7;border-left:5px solid var(--cat,#91c4e9)}
.event-card[data-type="activity"]{background:linear-gradient(110deg,#fff0f8,#fff)}
.section-title h2,.timeline-title{color:#245c92}
@media(max-width:899px){.hero-samurai{width:53%;right:-5%;bottom:29px}.hero-cityscape{bottom:42px;left:8px;gap:2px;font-size:9px}.hero-cityscape span{padding:5px}.hero-cityscape .city-train{font-size:15px}.hero-scene{opacity:.28}.hero-text{max-width:80%}.hero h1{font-size:29px}.hero-bubbles{max-width:260px}.hero-bubbles span{font-size:9px}.samurai-charm{font-size:11px}}
