@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Nanum+Myeongjo:wght@700;800&display=swap";html{scroll-behavior:smooth}body{min-width:320px}a{color:inherit}:root{--ink:#19352d;--muted:#718079;--cream:#fbf9f5;--line:#e9e5dd;--coral:#e97761;--green:#315b48}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.nav{background:#fffdf9;border-bottom:1px solid #eee9df;justify-content:space-between;align-items:center;height:78px;padding:0 max(5vw,42px);display:flex}.brand{color:var(--ink);font-size:21px;font-weight:700;text-decoration:none}.brand-mark{background:var(--coral);color:#fff;border-radius:9px 9px 9px 2px;place-items:center;width:26px;height:26px;margin-right:7px;font-family:Georgia;font-style:italic;display:inline-grid}.nav-links{gap:34px;margin-left:95px;display:flex}.nav-links a{color:#506159;font-size:14px;text-decoration:none}.avatar{color:#fff;background:#d7a574;border:0;border-radius:50%;width:34px;height:34px;font-weight:700}.hero{background:#f4eee2;min-height:320px;padding:57px max(8vw,80px) 34px;display:flex;overflow:hidden}.hero-copy{z-index:1;flex:1}.eyebrow{letter-spacing:1.4px;color:#cc8069;margin:0 0 9px;font-size:10px;font-weight:700}.hero h1{letter-spacing:-2px;margin:0 0 17px;font-family:Nanum Myeongjo,serif;font-size:38px;line-height:1.38}.hero h1 em{color:var(--coral);font-style:normal}.subcopy,.planner-heading>p,.section-title>div>p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.hero-visual{width:410px;position:relative}.sun{background:#efbc70;border-radius:50%;width:205px;height:205px;position:absolute;top:-13px;right:52px}.plate{background:#f9f7f1;border:12px solid #e5ded0;border-radius:50%;width:218px;height:218px;position:absolute;top:38px;right:58px;box-shadow:inset 0 0 0 8px #fff}.food{background:#587e55;border-radius:50%;position:absolute;inset:33px;overflow:hidden}.food:before,.food:after{content:"";background:#e98659;border-radius:50%;position:absolute}.food:before{width:70px;height:70px;top:7px;left:15px}.food:after{background:#e8c15d;width:57px;height:57px;bottom:6px;right:7px}.food i{z-index:2;background:#f7e4a6;border-radius:50%;width:30px;height:30px;position:absolute}.food i:first-child{top:48px;left:64px}.food i:nth-child(2){background:#d85747;top:16px;right:14px}.food i:nth-child(3){background:#f6f0d0;bottom:12px;left:21px}.food b{background:#f2ebd9;border-radius:50%;width:76px;height:14px;position:absolute;top:78px;left:29px;rotate:-22deg}.float-card{background:#fffdf9;border-radius:11px;align-items:center;gap:8px;padding:10px 14px;display:flex;position:absolute;top:77px;left:8px;box-shadow:0 9px 25px #806d5633}.float-card span{color:#dc7059;background:#fbe2d8;border-radius:8px;padding:7px}.float-card small,.float-card strong{display:block}.float-card small{color:#7b827c;font-size:10px}.float-card strong{margin-top:2px;font-size:15px}h2{letter-spacing:-1px;margin:0 0 8px;font-size:22px}.planner,.results{max-width:1136px;margin:auto;padding:46px 32px}.planner{border-bottom:1px solid var(--line)}.planner-heading{margin-bottom:23px}.planner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 22px;display:grid}.planner label,.planner fieldset{border:0;min-width:0;margin:0;padding:0}.planner label,.planner legend{color:#40564a;font-size:12px;font-weight:700}.planner input,.companion select{width:100%;color:var(--ink);background:#fffdf9;border:1px solid #e5e0d8;border-radius:8px;margin-top:7px;padding:11px 12px;font-size:13px;display:block}.location-block{align-self:end}.location{color:#55725e;background:#eff2ee;border:0;border-radius:7px;padding:11px 12px;font-size:12px}.location-block small{color:#9a7168;margin-top:6px;font-size:11px;display:block}.planner fieldset{grid-column:span 2}.choice-row{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.choice-row button{color:#617067;background:#fffdf9;border:1px solid #e5e0d8;border-radius:20px;padding:8px 13px;font-size:12px}.choice-row button.selected{background:var(--green);border-color:var(--green);color:#fff}.choice-row button.avoid.selected{background:#b75b4d;border-color:#b75b4d}.custom-time{max-width:180px}.companion{background:#f8f1e7;border:1px solid #eadfce;border-radius:11px;grid-column:span 2;padding:16px}.companion strong{font-size:13px}.companion p{color:var(--muted);margin:4px 0 12px;font-size:11px}.companion-add{gap:7px;display:flex}.companion select{margin:0}.companion-add button,.companion-list button{background:var(--coral);color:#fff;white-space:nowrap;border:0;border-radius:7px;padding:9px 12px;font-size:12px}.companion-list{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.companion-list span{color:#53665b;background:#fffdf9;border-radius:15px;padding:6px 8px;font-size:11px}.companion-list button{color:#bd6654;background:0 0;margin-left:4px;padding:0}.recommend-button{background:var(--green);color:#fff;border:0;border-radius:8px;margin-top:25px;padding:13px 16px;font-size:13px;font-weight:700}.recommend-button span{margin-left:14px;font-size:17px}.results{padding-bottom:78px}.section-title{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.result-note{color:#7c897f;background:#eff2ee;border-radius:5px;padding:6px 8px;font-size:11px}.result-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.result-card{background:#fffdf9;border:1px solid #e8e4dc;border-radius:13px;overflow:hidden}.place-image{place-items:center;height:132px;display:grid;position:relative}.place-image span{filter:drop-shadow(0 4px 4px #0002);font-size:48px}.place-image label{color:#4d5b51;background:#fffdf9df;border-radius:4px;padding:4px 6px;font-size:9px;font-weight:700;position:absolute;top:9px;left:9px}.coral{background:linear-gradient(135deg,#f3b37c,#c76345)}.blue{background:linear-gradient(135deg,#a7c5ce,#547a8e)}.yellow{background:linear-gradient(135deg,#f5db83,#c48a4e)}.green{background:linear-gradient(135deg,#a8cda4,#4f8061)}.red{background:linear-gradient(135deg,#ec9c7b,#b95343)}.orange{background:linear-gradient(135deg,#f2c170,#d77a40)}.place-info{padding:15px}.place-heading{justify-content:space-between;gap:8px;display:flex}.place-info h3{margin:0 0 4px;font-size:16px}.place-info p{color:#78857d;margin:0;font-size:11px}.match-score{color:#3d7254;background:#eff2ee;border-radius:50%;place-items:center;min-width:42px;height:42px;font-size:15px;display:grid}.match-score small{font-size:9px}.travel{color:#a56855!important;margin-top:12px!important}.mood-line{color:#53665b!important;margin-top:5px!important}.place-info ul{border-top:1px solid #eee9df;margin:13px 0 0;padding:10px 0 0;list-style:none}.place-info li{color:#56685e;margin-bottom:3px;font-size:11px;line-height:1.55}.place-info li:before{content:"✓";color:#cf765f;margin-right:5px}.empty-state{text-align:center;background:#fffdf9;border:1px dashed #d9cdbc;border-radius:12px;padding:52px 20px}.empty-state span{font-size:34px}.empty-state h3{margin:12px 0 7px;font-size:17px}.empty-state p,.hint{color:var(--muted);font-size:12px}.empty-state button{background:var(--green);color:#fff;border:0;border-radius:7px;padding:10px 13px;font-size:12px}.hint{text-align:center;margin-top:18px}@media (width<=900px){.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-left:6vw;padding-right:6vw}.planner,.results{padding-left:26px;padding-right:26px}}@media (width<=640px){.nav{height:64px;padding:0 18px}.nav-links{display:none}.hero{min-height:300px;padding:44px 25px}.hero h1{font-size:29px}.hero-visual{opacity:.35;width:310px;position:absolute;right:-105px}.planner,.results{padding:34px 19px}.planner-grid{grid-template-columns:1fr;gap:16px}.planner fieldset,.companion{grid-column:span 1}.companion-add{flex-wrap:wrap}.companion-add select{flex:1;min-width:125px}.result-grid{grid-template-columns:1fr}.section-title{gap:12px}.result-note{white-space:nowrap}.place-image{height:116px}}@media (width>=641px) and (width<=900px){.planner-grid{gap:16px}.companion-add select{min-width:0}}.location-selector{background:#fffdf9;border:1px solid #e5e0d8;border-radius:11px;min-width:0;padding:14px 15px}.location-heading{color:#40564a;justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.location-heading span{color:#55725e;background:#eff2ee;border-radius:12px;padding:4px 7px;font-size:10px;font-weight:600}.location-actions{flex-wrap:wrap;gap:7px;margin:10px 0;display:flex}.location-actions button{color:#55725e;background:#fff;border:1px solid #d9e2da;border-radius:7px;padding:9px 10px;font-size:12px}.location-actions button.selected{background:var(--green);border-color:var(--green);color:#fff}.location-selector>p{color:#718079;margin:0 0 10px;font-size:11px;line-height:1.55}.location-selector label{color:#40564a;font-size:11px;font-weight:700}.location-selector input{width:100%;color:var(--ink);background:#fffdf9;border:1px solid #e5e0d8;border-radius:7px;margin-top:6px;padding:10px 11px;font-size:13px;display:block}.location-selector small{color:#9a7168;margin-top:8px;font-size:11px;line-height:1.4;display:block}.location-current{color:#40564a;background:#eff2ee;border-radius:7px;align-items:center;gap:7px;padding:9px 10px;font-size:12px;display:flex}.location-current b{flex:1}.location-current button{color:#55725e;background:#fff;border:0;border-radius:5px;padding:5px 7px;font-size:11px}@media (width<=640px){.location-actions button{flex:1}.location-heading{align-items:flex-start}.location-heading span{white-space:nowrap}}.date-time{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.date-time input{color:var(--ink);background:#fffdf9;border:1px solid #e5e0d8;border-radius:7px;padding:9px 10px;font-size:12px}.planner-buttons{flex-wrap:wrap;gap:9px;margin-top:25px;display:flex}.reserve-button{color:#ae604c;background:#fffdf9;border:1px solid #d59b87;border-radius:8px;padding:13px 16px;font-size:13px;font-weight:700}.reserve-note{color:var(--muted);margin:11px 0 0;font-size:11px}.schedule{border-bottom:1px solid var(--line);max-width:1136px;margin:auto;padding:45px 32px}.schedule-list{flex-direction:column;gap:10px;display:flex}.schedule-card{background:#fffdf9;border:1px solid #e8e4dc;border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:17px;display:flex}.schedule-card h3{margin:7px 0 4px;font-size:15px}.schedule-card p{color:#56685e;margin:0 0 5px;font-size:12px}.schedule-card small{color:#89948e;font-size:11px}.status{color:#55725e;background:#eff2ee;border-radius:12px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.status.ready{color:#b85e49;background:#fbe2d8}.status.done{color:#7d817b;background:#ece8e1}.schedule-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.schedule-actions button{color:#53665b;white-space:nowrap;background:#fffdf9;border:1px solid #e5e0d8;border-radius:6px;padding:8px 9px;font-size:11px}.schedule-actions .view-button{background:var(--green);border-color:var(--green);color:#fff}.schedule-actions .delete-button{color:#b75b4d}.schedule-empty{text-align:center;color:var(--muted);border:1px dashed #d9cdbc;border-radius:11px;padding:30px;font-size:12px}.schedule-empty span{font-size:25px}.ready-banner{color:#815140;background:#fbe6dc;border-radius:8px;max-width:1136px;margin:20px auto -10px;padding:11px 14px;font-size:12px}.ready-banner a{color:#9f513d;margin-left:9px;font-weight:700}@media (width<=900px){.schedule{padding-left:26px;padding-right:26px}}@media (width<=640px){.schedule{padding:34px 19px}.schedule-card{flex-direction:column;align-items:flex-start}.schedule-actions{justify-content:flex-start}.date-time input{flex:1;min-width:120px}.ready-banner{margin:15px 19px -5px}.planner-buttons button{flex:1}}.calendar{border-bottom:1px solid var(--line);max-width:1136px;margin:auto;padding:45px 32px}.calendar-empty{text-align:center;background:#fffdf9;border:1px dashed #d9cdbc;border-radius:12px;padding:32px}.calendar-empty span{font-size:28px}.calendar-empty h3{margin:9px 0 6px;font-size:16px}.calendar-empty p,.calendar-empty small{color:var(--muted);margin:0;font-size:12px;line-height:1.6;display:block}.calendar-empty button,.calendar-card button{background:var(--green);color:#fff;border:0;border-radius:7px;margin:14px 0 9px;padding:10px 13px;font-size:12px;font-weight:700}.calendar-readonly{color:#55725e;background:#eff2ee;border-radius:12px;margin:-7px 0 12px;padding:5px 8px;font-size:11px;display:inline-block}.calendar-list{flex-direction:column;gap:9px;display:flex}.calendar-card{background:#fffdf9;border:1px solid #e8e4dc;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:15px 16px;display:flex}.calendar-card h3{margin:0 0 6px;font-size:15px}.calendar-card p{color:#64746b;margin:3px 0;font-size:12px}.calendar-card button{white-space:nowrap;margin:0}.calendar-notice{color:#55725e;margin:12px 0 0;font-size:12px}.calendar-disconnect{color:#ae604c;background:#fffdf9;border:1px solid #d59b87;border-radius:7px;margin-top:12px;padding:9px 11px;font-size:12px}@media (width<=640px){.calendar{padding:34px 19px}.calendar-card{flex-direction:column;align-items:flex-start}.calendar-card button{width:100%}}
