@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');:root{--ink:#143a37;--dark:#082e2c;--muted:#6b817b;--lime:#d4ef9b;--bg:#f8f8f2;--line:#e1e9df}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}header{height:78px;display:flex;align-items:center;justify-content:space-between;max-width:1220px;margin:auto;padding:0 24px}.brand{font-size:17px;letter-spacing:.06em;font-weight:800;color:var(--dark);text-decoration:none}.brand:first-letter{font-size:28px}.light{font-weight:400}nav{display:flex;gap:5px}nav button{border:0;background:transparent;color:#54716b;padding:11px 14px;border-radius:30px}nav button.active{background:#e7efdc;color:var(--dark);font-weight:700}nav span{font-size:11px}main{max-width:1220px;margin:auto;padding:0 24px}.hidden{display:none!important}.hero{border-radius:22px;min-height:510px;padding:85px 7%;color:white;background:linear-gradient(90deg,rgba(5,34,32,.9),rgba(5,34,32,.34)),url('https://images.unsplash.com/photo-1537996194471-e657df975ab4?auto=format&fit=crop&w=1800&q=85') center/cover}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:800;color:#78a88d}.hero .eyebrow{color:var(--lime)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif}h1{font-size:clamp(40px,5.4vw,76px);line-height:1.1;margin:19px 0}h1 em{color:var(--lime);font-weight:600}.hero p{font-size:17px;max-width:520px;line-height:1.7;color:#e4f0e9}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.primary,.secondary{border:0;border-radius:10px;padding:14px 20px;font-weight:700}.primary{background:var(--lime);color:var(--dark)}.secondary{background:#ffffff23;color:white;border:1px solid #ffffff66}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin:20px 0 65px;background:white;border:1px solid var(--line);border-radius:16px}.stats div{padding:25px;text-align:center}.stats div+div{border-left:1px solid var(--line)}.stats strong{font-size:29px;display:block}.stats small{color:var(--muted)}.section-title{margin:42px 0 20px}.section-title h2{font-size:34px;margin:9px 0}.destinations{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.destination{height:245px;border-radius:15px;position:relative;overflow:hidden;cursor:pointer;background-size:cover;background-position:center}.destination:before{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#092e2bd9)}.destination div{position:absolute;bottom:19px;left:19px;color:white}.destination strong{display:block;font-size:22px;font-family:Georgia}.destination small{color:#d8e6db}.ideas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:65px}.idea,.item{background:white;border:1px solid var(--line);border-radius:15px;overflow:hidden}.idea img,.item img{width:100%;height:190px;object-fit:cover;background:#d8e7d9}.idea-body,.item-body{padding:18px}.idea h3,.item h3{font-size:21px;margin:7px 0}.idea p,.item p{font-size:13px;line-height:1.5;color:var(--muted)}.idea button,.item button{border:0;background:#e8f1de;color:var(--dark);border-radius:8px;padding:9px 12px;font-weight:700}.pagehead{padding:50px 0 20px}.pagehead h1{font-size:54px;margin:10px 0}.pagehead p{color:var(--muted)}.dot{color:#82a65e}.toolbar{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.toolbar input,.toolbar select{min-width:130px;flex:1}.toolbar input,.toolbar select,.planner input,form input,form select,form textarea{border:1px solid #d5e2d8;border-radius:9px;padding:13px;background:white;color:var(--ink);width:100%}.toggle{display:flex;align-items:center;gap:6px;white-space:nowrap}.toggle input{width:auto}.saved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;min-height:180px}.item .meta{color:#789282;font-size:11px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.item .actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.item .actions button{font-size:12px}.item .actions .danger{background:#ffeded;color:#9a3333}.item .links{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.item a{color:#286a5d;font-size:12px}.empty{grid-column:1/-1;text-align:center;padding:60px 20px;background:white;border:1px dashed #b6c9b6;border-radius:15px;color:var(--muted)}.data-actions{display:flex;gap:12px;flex-wrap:wrap;margin:35px 0 65px}.data-actions button,.import{border:1px solid #c9d9cb;background:white;border-radius:9px;padding:12px;cursor:pointer}.planner{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:white;border:1px solid var(--line);padding:30px;border-radius:16px;margin:25px 0 90px}.planner label,form label{display:block;font-size:12px;font-weight:700;margin:14px 0 6px}.planner h3{font-size:25px}.note{background:#f1f6e8;border-radius:10px;padding:18px;margin:25px 0;line-height:1.6}footer{background:var(--dark);color:white;display:flex;justify-content:space-between;gap:12px;padding:35px max(24px,calc((100vw - 1170px)/2));font-weight:700}footer small{font-weight:400;color:#abc4b8}dialog{width:min(550px,calc(100vw - 22px));max-height:90vh;overflow:auto;border:0;border-radius:17px;padding:26px;box-shadow:0 20px 90px #0005}dialog::backdrop{background:#05221fb8}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{margin:6px 0 10px}.close{border:0;background:#eff4eb;border-radius:30px;padding:9px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.full{width:100%;margin-top:15px}#toast{position:fixed;bottom:20px;right:20px;background:var(--dark);color:white;border-radius:10px;padding:13px 18px;display:none;z-index:20}@media(max-width:800px){header{height:auto;gap:12px;align-items:start;padding:18px 15px;flex-direction:column}nav{width:100%;overflow:auto}nav button{font-size:12px;padding:9px}main{padding:0 14px}.hero{min-height:460px;padding:55px 24px}.destinations{grid-template-columns:repeat(2,1fr)}.destination{height:205px}.ideas,.saved-grid{grid-template-columns:repeat(2,1fr)}.planner{grid-template-columns:1fr}.stats div{padding:18px 8px}.stats small{font-size:11px}footer{flex-direction:column}}@media(max-width:520px){.ideas,.saved-grid{grid-template-columns:1fr}.hero h1{font-size:42px}.hero p{font-size:15px}.pagehead h1{font-size:42px}.two{grid-template-columns:1fr}.destination{height:180px}.toolbar .primary{width:100%}}

#sync { margin: .75rem 0; font-size: .85rem; overflow-wrap: anywhere; }
