@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--green:#254c3e;--ink:#25372e;--muted:#68746d;--line:#e1e6df;--cream:#f7f8f3;--orange:#ec865c}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'Noto Sans KR',system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #c76b3a;outline-offset:3px}button:disabled{opacity:.5;cursor:not-allowed}.skip{position:absolute;top:-100px}.skip:focus{top:8px;z-index:100;background:white;padding:12px}.demo{background:#e9eee6;text-align:center;padding:7px 16px;font-size:12px;color:#435747}.demo b{margin-right:10px;letter-spacing:1.3px}.header{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 max(5%,calc((100vw - 1280px)/2));gap:40px}.brand{font-weight:800;letter-spacing:-.8px;font-size:23px;white-space:nowrap}.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--green);color:white;margin-right:9px;font-size:26px;line-height:1}.brand small{color:#dc825a}.nav{display:flex;gap:28px;align-self:stretch;align-items:center;flex:1}.nav a{font-size:14px;font-weight:600;height:100%;display:flex;align-items:center;border-bottom:3px solid transparent}.nav a.active{color:var(--green);border-color:var(--green)}.header-actions{display:flex;align-items:center;gap:16px;font-size:13px}.avatar-small{background:#eee5da;border-radius:50%;padding:8px 12px}.shell{max-width:1280px;margin:auto;padding:44px 24px 65px}.eyebrow{color:#637765;font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 10px}h1{font-size:38px;letter-spacing:-1.8px;line-height:1.4;margin:0 0 12px}h2{font-size:24px;letter-spacing:-.7px;margin:0}h3{font-size:19px;letter-spacing:-.4px;margin:0 0 7px}p{margin:0 0 16px}.muted{color:var(--muted)}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.intro p{margin:0;color:var(--muted);font-size:15px}.intro-art{font-size:60px;transform:rotate(-9deg);opacity:.85}.searchbar{background:white;border:1px solid var(--line);border-radius:17px;padding:16px 20px;display:grid;grid-template-columns:1fr 1.5fr 1fr auto;gap:20px;box-shadow:0 6px 20px #203f2a04;margin-bottom:28px}.searchbar label{font-size:12px;font-weight:700}.searchbar input,.searchbar select{border:0;padding:3px 0;background:white;min-height:32px}.searchbar>label+label{border-left:1px solid var(--line);padding-left:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 21px;border-radius:9px;background:var(--green);color:white;font-size:14px;font-weight:600}.btn.secondary{background:white;color:var(--green);border:1px solid #cad5cc}.btn.soft{background:#e9eee6;color:var(--green)}.btn.danger{background:#aa4536;color:white}.btn.wide{width:100%}.browse{display:grid;grid-template-columns:215px minmax(0,1fr);gap:36px}.filters{font-size:14px}.filter-title{display:flex;justify-content:space-between;align-items:center;margin:2px 0 20px}.text-button{font-size:12px;color:#66786a;text-decoration:underline}.filter-group{padding:19px 0;border-top:1px solid var(--line)}.filter-group h3{font-size:14px;margin:0 0 13px}.check{display:flex;gap:9px;align-items:center;font-size:14px;margin:10px 0}.check input{width:17px;height:17px;accent-color:var(--green);flex-shrink:0}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);border-radius:7px;background:white;padding:7px 11px;font-size:12px}.chip.active{background:var(--green);color:white;border-color:var(--green)}.results-top{display:flex;justify-content:space-between;align-items:center;margin:0 0 20px;font-size:14px}.results-top select{width:auto;border:0;background:transparent;font-size:13px;padding:4px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid var(--line);border-radius:14px;background:white;overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #24392f0b}.card-cover{height:193px;position:relative;background:#e4e7dc;overflow:hidden}.card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover .card-cover img{transform:scale(1.04)}.location{position:absolute;top:14px;left:14px;background:#ffffffed;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600}.heart{position:absolute;right:12px;top:12px;background:white;border-radius:50%;width:33px;height:33px;font-size:20px;line-height:1}.heart.saved{color:#bd5739}.card-content{padding:18px}.person-row{display:flex;gap:10px;align-items:center;margin-bottom:12px}.portrait{width:41px;height:41px;border-radius:50%;object-fit:cover;background:#e8e9df}.name{font-size:16px;font-weight:700}.verified{font-size:12px;color:#518069;margin-left:4px}.meta{font-size:11px;color:var(--muted)}.card h3{font-size:15px;line-height:1.65;min-height:50px}.tags{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0 15px}.tag{background:#f0f3ec;color:#5c6a58;font-size:11px;padding:3px 7px;border-radius:4px}.card-footer{border-top:1px solid #edf0e9;padding-top:12px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.price{font-size:18px;font-weight:700}.price small{font-size:11px;font-weight:400;color:var(--muted)}.rating{font-size:11px}.rating span{color:#d38d40}.card-link{display:block}.match-banner{margin-top:28px;padding:25px 30px;background:#e9eddf;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:20px}.match-banner h3{font-size:19px}.match-banner p{font-size:13px;color:#647259;margin:0}.banner-icon{font-size:36px;margin-right:20px}.banner-copy{display:flex;align-items:center}.footer{border-top:1px solid var(--line);padding:24px;text-align:center;color:var(--muted);font-size:12px}.footer button{text-decoration:underline;margin:0 10px}.mobile-nav{display:none}.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:26px;margin-bottom:20px}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:16px}.page-head h1{font-size:30px}.page-head p{font-size:14px;margin:0}.tabs{display:flex;gap:8px;margin-bottom:26px;flex-wrap:wrap}.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:25px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.stat strong{font-size:30px;display:block}.stat span{font-size:13px;color:var(--muted)}.row{display:flex;align-items:center;justify-content:space-between;gap:15px}.row+.row{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.badge{font-size:12px;padding:4px 10px;border-radius:5px;background:#edf2e8;color:#416442;white-space:nowrap}.badge.orange{background:#fff0e6;color:#985430}.detail-hero{height:275px;border-radius:18px;overflow:hidden;margin-bottom:25px}.detail-hero img{width:100%;height:100%;object-fit:cover}.detail-profile{display:flex;gap:18px;align-items:center}.detail-profile .portrait{width:80px;height:80px}.detail-profile h1{font-size:28px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}.info-grid dt{font-size:12px;color:var(--muted)}.info-grid dd{margin:4px 0;font-size:14px}.note{padding:14px 16px;background:#f2f4ed;border-radius:8px;font-size:12px;color:#56664f;margin:16px 0}.empty{text-align:center;padding:60px 15px;background:white;border:1px dashed #c7d0c4;border-radius:14px}.empty h3{margin-bottom:10px}label.field{display:block;font-size:13px;font-weight:600;margin-bottom:16px}input,textarea,select{display:block;width:100%;border:1px solid #ced6cd;border-radius:7px;padding:10px 12px;background:white;color:var(--ink);min-height:44px}label.field input,label.field textarea,label.field select{margin-top:6px}textarea{resize:vertical;min-height:94px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.full{grid-column:1/-1}.required{color:#aa5030}.form-error{color:#a63b2b;font-size:14px}.messages{display:grid;grid-template-columns:270px 1fr;min-height:490px;overflow:hidden;padding:0}.contacts{border-right:1px solid var(--line);padding:16px}.contact{display:flex;width:100%;gap:12px;padding:14px 10px;border-radius:9px;text-align:left;align-items:center}.contact.active{background:#eef2e9}.conversation{display:flex;flex-direction:column;min-width:0}.chat-head{padding:20px;border-bottom:1px solid var(--line)}.bubbles{padding:22px;flex:1;max-height:400px;overflow:auto}.bubble{max-width:80%;padding:12px 15px;border-radius:12px;background:#eff1ea;margin-bottom:14px;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.mine{background:var(--green);color:white;margin-left:auto}.chat-form{padding:17px;display:flex;gap:10px;border-top:1px solid var(--line)}dialog{width:min(570px,calc(100% - 28px));border:0;border-radius:18px;padding:30px;max-height:90dvh;color:var(--ink);box-shadow:0 25px 100px #0004}dialog::backdrop{background:#15271e88;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.close{font-size:26px;width:40px;height:40px}.dialog-head h2{font-size:23px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#203f30;color:white;padding:12px 23px;border-radius:10px;z-index:100;display:none;box-shadow:0 10px 40px #0002;max-width:90%;font-size:14px}.review-reason{margin:12px 0}.inline-actions{display:flex;gap:10px;flex-wrap:wrap}.photo-preview{width:90px;height:90px;object-fit:cover;border-radius:12px}.small{font-size:13px}.route-back{font-size:13px;margin-bottom:20px;display:inline-block}.mobile-filter{display:none}.safety{margin-top:20px;font-size:12px;color:#6f7b6d}fieldset{border:0;padding:0;margin:0}legend{font-weight:700;margin-bottom:18px;font-size:18px}.admin-list h3{margin-bottom:10px}.admin-list .panel{overflow-wrap:anywhere}.only-icon{font-size:18px}.privacy-list li{margin:12px 0}
@media(min-width:1500px){.card-cover{height:210px}}@media(max-width:1100px){.header{padding:0 24px;gap:25px}.nav{gap:18px}.header-actions .guide-join{display:none}.browse{grid-template-columns:180px minmax(0,1fr);gap:24px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card-cover{height:205px}}@media(max-width:720px){.demo{font-size:10px;padding:7px 8px}.demo b{margin-right:4px}.header{height:68px;padding:0 20px;justify-content:space-between}.brand{font-size:21px}.nav{display:none}.header-actions{gap:8px}.header-actions>a:first-child{display:none}.shell{padding:28px 18px 105px}.intro{margin-bottom:23px}.intro-art{display:none}h1{font-size:29px;letter-spacing:-1.3px}.intro p{font-size:13px}.searchbar{grid-template-columns:1fr 1fr;padding:15px;gap:12px;border-radius:12px;margin-bottom:22px}.searchbar>label+label{padding-left:12px}.searchbar label:nth-child(3){border-left:0;padding-left:0}.searchbar .btn{align-self:end}.searchbar input,.searchbar select{font-size:14px;max-width:100%}.browse{display:block}.filters{display:none;padding:18px;background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:20px}.filters.open{display:block}.mobile-filter{display:inline-flex;margin-bottom:17px;min-height:38px}.cards{gap:13px}.card-cover{height:155px}.card-content{padding:13px}.person-row{gap:7px}.portrait{width:32px;height:32px}.name{font-size:14px}.meta{font-size:10px}.card h3{font-size:13px;min-height:44px}.tag{font-size:10px;padding:3px 5px}.tags{gap:3px}.card-footer{align-items:flex-start;gap:5px;flex-direction:column}.price{font-size:16px}.location{top:10px;left:10px;font-size:10px}.heart{width:29px;height:29px;right:8px;top:9px}.match-banner{padding:23px 20px;align-items:flex-start;flex-direction:column}.banner-icon{display:none}.match-banner .btn{width:100%}.match-banner h3{font-size:18px}.mobile-nav{display:flex;position:fixed;bottom:0;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);width:100%;z-index:20;padding:8px 8px max(8px,env(safe-area-inset-bottom));justify-content:space-around}.mobile-nav a{display:flex;align-items:center;flex-direction:column;font-size:10px;min-width:55px;color:#737f73}.mobile-nav a span{font-size:21px}.mobile-nav a.active{color:var(--green);font-weight:800}.footer{padding-bottom:100px}.two-col{display:block}.panel{padding:20px}.page-head h1{font-size:27px}.page-head{align-items:flex-start}.page-head>.btn{padding:10px 13px;white-space:nowrap}.stats{gap:9px}.stat{padding:15px 12px}.stat strong{font-size:25px}.stat span{font-size:11px}.detail-hero{height:200px}.detail-profile .portrait{width:62px;height:62px}.detail-profile h1{font-size:24px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.messages{display:block}.contacts{display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--line);padding:8px}.contact{width:auto;min-width:125px;font-size:12px}.contact .meta{display:none}.chat-form{padding:12px}.chat-form .btn{padding:10px 14px}.bubble{max-width:90%}.row{align-items:flex-start;flex-wrap:wrap}dialog{padding:23px}.results-top{font-size:13px}.info-grid{gap:15px}.page-head p{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
main:focus{outline:none}
:root{--green:#c21968;--ink:#b0145c;--muted:#99546f;--line:#f0cddd;--cream:#fff0f5;--orange:#ee4891}
body{background:#fff0f5;color:var(--ink)}
.demo{background:#fbd9e7;color:#a81d5b}.header{background:#fffafd}.brand small{color:#ec3e8b}.eyebrow{color:#c21968}.intro-art{color:#ef5598}.avatar-small{background:#fbd5e5;color:#b0145c}.btn{background:#c21968;color:#fff}.btn.secondary{background:#fffafd;color:#b0145c;border-color:#e8b6ce}.btn.soft,.chip.active{background:#c21968;color:#fff}.tag{background:#ffe6f0;color:#a61c59}.match-banner{background:#fbd7e7}.match-banner p{color:#99546f}.note{background:#ffe4ee;color:#94345c}.badge{background:#ffe1ee;color:#ad195a}.verified{color:#c21968}.card-cover{background:#f8d9e5}.card{border-color:#f0cddd}.text-button,.safety{color:#99546f}.bubble{background:#ffe3ee}.bubble.mine{background:#c21968;color:white}.bubble.mine .meta{color:#ffe4f0}.contact.active{background:#ffe1ed}.searchbar,.panel,.stat{border-color:#f0cddd}.chip{border-color:#ecc5d6}.portrait{background:#fbd7e6}.mobile-nav a{color:#99546f}.heart.saved{color:#e4297a}.rating span{color:#c21968}.card-footer{border-color:#f4dbe6}
.account-entry{display:flex;gap:12px;justify-content:flex-end;margin-bottom:28px}.guide-entry span{font-size:12px;opacity:.85}.account-panel{max-width:620px;margin:20px auto;padding:34px}.account-panel h1{font-size:30px}.auth-links{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:13px;margin:22px 0}.join-steps{display:flex;gap:14px;flex-wrap:wrap;padding-left:22px;font-size:14px;margin:25px 0}.member-link{font-weight:700}.real-card img{width:100%;height:210px;object-fit:cover}.review-photo{display:block;width:200px;max-width:100%;margin:16px 0;border-radius:10px}.guide-mobile{font-weight:800}.header-actions .guide-join{display:none!important}
@media(max-width:720px){.account-entry{display:grid;grid-template-columns:1fr 1fr;margin-bottom:24px;gap:10px}.account-entry .btn{padding:11px 8px;font-size:13px}.guide-entry{flex-direction:column;gap:0}.guide-entry span{font-size:10px}.account-panel{padding:23px 18px}.account-panel h1{font-size:26px}.header-actions .member-link{display:block!important;font-size:12px}.mobile-nav a{min-width:48px;font-size:9px}.mobile-nav{gap:2px}}

/* Meeting and cost approvals */
.trip-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px}.trip-layout>*{min-width:0}.trip-demo,.trip-booking-note{background:#ffe0ed;border:1px solid #efb4cc;border-radius:18px;padding:22px;margin-bottom:24px}.trip-demo p,.trip-booking-note p{font-size:14px;margin:8px 0;line-height:1.7}.trip-layout h2{font-size:21px;margin-bottom:20px}.trip-layout h3{margin:20px 0 12px}.meeting-title{overflow-wrap:anywhere}.meeting-time{font-size:24px;font-weight:750;margin:12px 0}.meeting-time small{font-size:14px;font-weight:400}.cost-list{margin:20px 0}.cost-list>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.cost-list dt{font-size:14px;line-height:1.6}.cost-list dd{margin:0;text-align:right;white-space:nowrap;font-weight:700}.cost-total{font-size:22px}.cost-total dt{font-size:16px;font-weight:700}.trip-pending,.expense-item{padding:18px;border:1px solid var(--line);border-radius:14px;margin:18px 0;background:#fff8fb;overflow-wrap:anywhere}.trip-empty{padding:24px;text-align:center;background:#fff5f9;border-radius:14px;line-height:1.8}.trip-layout details{margin-top:20px}.trip-layout summary{cursor:pointer;font-weight:700;padding:14px 0;min-height:44px}.trip-layout form{margin-top:12px}.trip-layout .wide{margin-top:16px}.trip-layout hr{border:0;border-top:1px solid var(--line);margin:24px 0}.receipt-preview{max-width:100%;max-height:350px;object-fit:contain}.trip-summary{position:sticky;top:100px}.trip-layout .row{flex-wrap:wrap}.trip-layout .btn{white-space:normal}.trip-layout input,.trip-layout textarea,.trip-layout select{max-width:100%;min-width:0}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:760px){.trip-layout{grid-template-columns:1fr;gap:0}.trip-summary{position:static}.trip-demo .row{display:block}.trip-demo .btn{margin-top:12px;width:100%}.trip-layout .panel{padding:20px}.cost-total{font-size:20px}}
/* Neutral typography and sakura header */
:root{--ink:#29343c;--muted:#59636b}body{color:var(--ink)}.muted,.intro p,.match-banner p,.text-button,.safety{color:#59636b}.demo{color:#46515b}.eyebrow,.brand small,.avatar-small,.btn.secondary,.tag,.badge,.verified,.rating span,.mobile-nav a,.contact,.nav a.active{color:#34444f}.btn.secondary{background:#fffafd}.bubble{color:#29343c}.bubble.mine{color:white}.note{color:#46515b;background:#fff0f5}.heart.saved{color:#bd326a}.trip-booking-note,.trip-demo{color:#29343c}body{isolation:isolate}.sakura-sky{position:absolute;top:0;left:0;width:100%;height:28svh;min-height:170px;max-height:300px;overflow:hidden;pointer-events:none;z-index:-1;background:url('assets/sakura-white.png') center top/100% auto no-repeat}#app{position:relative;z-index:0}.header{background:#fffafd8c}.demo{background:#fbd9e780}@media(max-width:720px){.sakura-sky{height:26svh}}

/* Contain native iOS date controls within responsive form tracks. */
.two-col>* , .form-grid>* , .searchbar>*{min-width:0}label.field{min-width:0}input[type="date"]{appearance:none;-webkit-appearance:none;display:block;min-width:0;width:100%;max-width:100%;min-height:46px;box-sizing:border-box}input[type="date"]::-webkit-date-and-time-value{text-align:left;min-width:0}input[type="date"]::-webkit-datetime-edit{min-width:0;padding:0}.date-range{min-width:0;max-width:100%;margin:0 0 16px}.date-range legend{font-size:13px;margin-bottom:8px}.date-range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.date-range .field{margin-bottom:6px}.date-range .meta{margin:0}.searchbar{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.8fr) auto}.searchbar .date-range{margin:0}.searchbar input[type="date"]{border:1px solid var(--line);padding:8px;font-size:14px}.form-grid>.date-range{grid-column:1/-1}@media(max-width:720px){.searchbar{grid-template-columns:repeat(2,minmax(0,1fr))}.searchbar>.date-range{grid-column:1/-1}.searchbar>.btn{grid-column:1/-1}.date-range-grid{grid-template-columns:minmax(0,1fr)}}
