@import url('https://fonts.googleapis.com/css2?family=Gaegu:wght@400;700&family=Gowun+Dodum&display=swap');
:root{--ink:#435446;--muted:#91917f;--line:#e9e2d2;--green:#71ad8a;--orange:#e9a16b;--yellow:#e6c85d}body{background-color:#fff8ed;background-image:radial-gradient(#d8cabd60 .8px,transparent .8px);background-size:16px 16px;color:var(--ink);font-family:'Gowun Dodum','Noto Sans KR',sans-serif}header{background:#fffbf3eb;border-bottom:1px dashed #dfd4c2;height:88px}.brand{font-family:'Gaegu','Gowun Dodum',sans-serif;font-size:25px;gap:11px}.brand-icon{color:#43654f;background:#f7df9b;border:2px solid #fffaf0;border-radius:12px;box-shadow:2px 3px 0 #ddcda9;transform:rotate(-9deg);font-size:25px}.brand small{font-family:'DM Sans',sans-serif;letter-spacing:2.5px;font-size:8px;color:#90997d}.header-note{font-family:'Gaegu',sans-serif;font-size:18px;color:#a79585;transform:rotate(-3deg)}.mode{background:#f5ebda;border:1px solid #eadfc9;color:#8b8f76}.mode i{background:#de9c8e}main{padding-top:38px}.eyebrow{letter-spacing:2px;color:#b39a86;font-size:9px}.intro{margin-bottom:28px}h1{font-family:'Gaegu','Gowun Dodum',sans-serif;font-size:45px;letter-spacing:-1.7px;font-weight:700;line-height:1.2}h1 em{position:relative;color:#6d977c;white-space:nowrap}h1 em:after{content:'';position:absolute;left:0;right:-5px;bottom:0;height:9px;background:#eed99080;z-index:-1;transform:rotate(-2deg);border-radius:40%}.subtitle{font-size:12px;color:#9b9b85}.totals{background:#fffdf7;border:1px solid #e9dfcd;border-radius:18px;padding:15px 7px;box-shadow:3px 4px 0 #e7dec854;position:relative;transform:rotate(1deg)}.totals:before{content:'';position:absolute;width:46px;height:13px;top:-7px;left:40%;background:#ebd5cb99;transform:rotate(-5deg);border-left:1px dashed #e5c8bb;border-right:1px dashed #e5c8bb}.totals>div{min-width:112px;border-left-style:dashed}.totals strong{font-family:'Gaegu','DM Sans',sans-serif;font-size:35px;font-weight:700;margin-bottom:3px}.totals span{font-size:10px}.workspace{border:2px solid #e3decd;border-radius:23px;box-shadow:5px 7px 0 #e8dfc64a;background:#fffdf7}.map-wrap{background:#dceef0}.map-heading{color:#7a9b8a;letter-spacing:1.3px}.home{background:#fffdf5;border:1px solid #d2dbca;border-radius:12px;box-shadow:2px 3px 0 #c6d8ce60;color:#78907a;transition:transform .15s}.home:hover{transform:translateY(-2px) rotate(-2deg)}.legend{background:#fffdf5f2;border:1px solid #e1deca;border-radius:12px;box-shadow:2px 3px 0 #c3d6cc45}.dot{box-shadow:inset 0 0 0 1px #ffffff30}aside{background:#fffdf6;border-left:1px dashed #e0ddcb;padding:24px}.panel-title{font-family:'Gaegu','Gowun Dodum',sans-serif;font-size:19px}.small-label{font-family:'DM Sans',sans-serif;letter-spacing:1.8px;color:#b3aa91;font-size:8px}.search{background:#f7f3e8;border:1px solid #e7e0cc;border-radius:11px}.search input{font-family:'Gowun Dodum',sans-serif;color:#6c7d65}.search>span{color:#a9b297}.results{border-radius:12px;border-color:#e6dfcc}.results button{background:#fffdf6;color:#6b7e64;border-bottom-style:dashed}.results button:hover{background:#f9efd7}.empty.couple-welcome{padding:20px 0 22px}.couple-scene{position:relative;width:260px;height:340px;max-width:100%;margin:0 auto 8px}.couple-scene:before{content:'';position:absolute;width:215px;height:215px;border-radius:48% 52% 45% 55%;background:#f8e4cb;top:55px;left:20px;transform:rotate(-10deg);border:1px dashed #e9caaa}.couple-scene:after{content:'';position:absolute;bottom:3px;left:38px;width:185px;height:18px;border-radius:50%;background:#e9dfcb7a;filter:blur(4px);z-index:0}.couple-cutout{position:absolute;width:184px;height:auto;max-height:310px;object-fit:contain;bottom:4px;left:35px;z-index:2;transform:rotate(-3deg);filter:drop-shadow(2px 0 0 #fff) drop-shadow(-2px 0 0 #fff) drop-shadow(0 2px 0 #fff) drop-shadow(0 -2px 0 #fff) drop-shadow(2px 4px 2px #78674d22)}.travel-speech{position:absolute;top:5px;left:94px;z-index:4;background:#fffdf6;border:2px solid #858975;border-radius:55% 48% 52% 45%/50% 48% 55% 52%;box-shadow:2px 3px 0 #e4d6bc77;padding:12px 17px;font-family:'Gaegu',sans-serif;font-size:23px;font-weight:700;white-space:nowrap;transform:rotate(5deg);color:#6b7561}.travel-speech:before{content:'';position:absolute;bottom:-15px;left:17px;width:22px;height:21px;background:#858975;clip-path:polygon(15% 0,100% 0,0 100%)}.travel-speech:after{content:'';position:absolute;bottom:-11px;left:19px;width:17px;height:18px;background:#fffdf6;clip-path:polygon(15% 0,100% 0,0 100%)}.sticker-heart{position:absolute;top:88px;right:0;color:#d99d9a;font:42px 'Gaegu',sans-serif;transform:rotate(14deg);z-index:3}.sticker-spark{position:absolute;color:#d7b867;z-index:3;font-size:25px}.spark-one{top:34px;left:19px;transform:rotate(10deg)}.spark-two{top:207px;left:0;color:#9cb59b;font-size:31px;transform:rotate(-15deg)}.couple-stamp{position:absolute;bottom:14px;right:-4px;z-index:4;background:#f8e2a6;border:1px dashed #d3bb86;padding:5px 10px;font-family:'Gaegu',sans-serif;font-size:15px;transform:rotate(-8deg);box-shadow:1px 2px 0 #ddcba74d}.empty.couple-welcome .couple-caption{font-family:'Gaegu',sans-serif;font-size:20px;color:#82916e;line-height:1.3;margin:14px 0 9px}.empty.couple-welcome .couple-guide{font-size:11px;color:#a5a18b;line-height:1.9;margin:0 0 12px}.text-button{color:#9a9e75}.couple-welcome .text-button{border:1px solid #e7ddc4;background:#fff8e7;border-radius:30px;padding:8px 13px;color:#8a9271;font-size:10px;box-shadow:1px 2px 0 #e8dfca66}.saved{border-top:1px dashed #e1dcc7}.saved h3{font-family:'Gaegu',sans-serif;font-size:17px}.filters button[aria-pressed=true]{background:#edf0d9;border-color:#dce4c1;color:#86916a}.saved-row{border-bottom-style:dashed;border-color:#e8e4d3}.saved-row:hover{background:#faf1db}.storage-note{color:#a29e85}.storage-note>span{color:#d3aa78}.storage-note small{color:#b1ac98}.country-top{margin-top:24px}.status-pill{border:1px solid #ffffff90;font-size:10px;border-radius:8px;transform:rotate(-2deg)}#country-name{font-family:'Gaegu','Gowun Dodum',sans-serif;font-size:37px;font-weight:700;letter-spacing:-1px}.english{font-size:11px;color:#aaa88f;margin-bottom:24px}.cities-heading h3{font-family:'Gaegu',sans-serif;font-size:23px}.cities-heading h3 span{font-family:'Gaegu',sans-serif;font-size:18px;background:#eef1de;border-radius:50%;padding:0 7px}.city-badge{color:#b6a58b;font-size:8px}.city-description{color:#aaa88f}.city-go{font-size:12px;color:#7b8e6a}.city-go small{color:#aaa78f}.city-row{border-bottom-style:dashed}.city-pin:before{border-width:3px;box-shadow:0 1px 0 #8a9e741a}.city-pin-label{font-family:'Gaegu',sans-serif;font-size:14px;border-radius:7px;background:#fffdf4;color:#7a8f6e;border:1px solid #d8deca}.city-field{color:#9b9c80;font-size:11px}.city-field input,.city-field select,.city-field textarea{background:#fffef9;border-color:#e4dec9;border-radius:10px;font-family:'Gowun Dodum',sans-serif}.date-pair{gap:8px}.primary-button{background:#869d76;border-radius:11px;box-shadow:2px 3px 0 #d1d9bf;font-family:'Gowun Dodum',sans-serif}.primary-button:hover{background:#748b66;transform:translateY(-1px)}.subtle-button{color:#a5a188}.local-info{border-top-style:dashed;color:#aca790}#city-detail{border:2px solid #e3decd;border-radius:23px;box-shadow:5px 7px 0 #e8dfc64a;background:#fffdf6}.detail-heading{background:#fdf5e7;border-bottom-style:dashed;border-color:#e9dec9}.detail-heading h2{font-family:'Gaegu',sans-serif;font-size:36px;font-weight:700}.trip-summary{background:#f5f3e3;border-right-style:dashed}.detail-tabs{border-bottom-style:dashed}.detail-tabs button{font-family:'Gaegu',sans-serif;font-size:21px;color:#aca78c}.detail-tabs button[aria-selected=true]{color:#7f966e;border-bottom-color:#c9b178}.content-heading h3{font-family:'Gaegu',sans-serif;font-size:24px}.entry-form{background:#fbf7eb;border:1px dashed #e3d7b8;border-radius:15px}.expense-totals>div{background:#edf0dc;border:1px solid #e0e6ca;border-radius:14px}.expense-totals>div:last-child{background:#fff0d9;border-color:#f0dfbe}.expense-totals strong{font-family:'Gaegu',sans-serif;font-size:30px}.upload-button{background:#fff3d9;border-color:#ead8af;border-radius:10px;color:#9b956b}.photo-card{border-radius:13px;border-color:#e7dfc9;box-shadow:2px 3px 0 #ece3cc6b;padding:6px}.photo-card img{border-radius:8px}.record-row{border-bottom-style:dashed}.country-auto-note{border-top-style:dashed;font-size:9px;color:#aaa68e}footer{color:#b3a78f;font-size:8px}#toast{background:#8d9e76;border:2px solid #fff5dc;border-radius:15px;box-shadow:2px 4px 0 #7d795329}.maplibregl-ctrl-group{border-radius:10px!important;background:#fffdf4!important}.maplibregl-ctrl button{border-radius:9px!important}@media(max-width:1050px){h1{font-size:36px}.totals>div{min-width:85px;padding:0 12px}.totals{padding:12px 3px}.brand{font-size:23px}.couple-scene{width:245px}.travel-speech{left:88px;font-size:22px;padding:11px 15px}.couple-stamp{right:0}}@media(max-width:760px){header{height:76px}.brand{font-size:23px}.brand-icon{width:34px;height:37px;font-size:21px}.mode{padding:8px}.intro{margin-bottom:24px}main{padding-top:29px}h1{font-size:37px}.subtitle{font-size:10px;line-height:1.9}.totals{margin-top:23px;transform:rotate(-1deg)}.totals strong{font-size:31px}.totals span{font-size:9px}.workspace{border-radius:19px}.map-wrap{min-height:450px}aside{border-left:0;border-top:1px dashed #dcd6bd;padding:23px}.couple-scene{height:335px;width:260px}.couple-cutout{width:187px;left:35px}.travel-speech{left:96px;font-size:24px}.sticker-heart{right:0}.couple-stamp{right:-2px}.couple-welcome{max-width:330px;margin:auto}.empty.couple-welcome{padding-top:14px}.empty.couple-welcome .couple-caption{font-size:23px}.empty.couple-welcome .couple-guide{font-size:12px}.saved{margin-top:9px}.trip-summary{border-right:0}.detail-heading h2{font-size:32px}.content-heading h3{font-size:22px}.detail-tabs button{font-size:21px}.expense-totals strong{font-size:26px}.storage-note{margin-top:20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.brand small{font-size:13px;letter-spacing:1px;margin-top:3px}
