:root{--bg:#f5f7fa;--card:#fff;--ink:#173247;--muted:#667789;--line:#dfe6ec;--accent:#0f4c5c;--gold:#f3c969;--ok:#e6f6ea;--warn:#fff3d6;--bad:#fde8e8}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink)}.wrap{max-width:1320px;margin:auto;padding:18px}header{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#173247,#0f4c5c);color:white;padding:22px 24px;border-radius:20px}header h1{margin:0;font-size:28px}header p{margin:4px 0 0;opacity:.8}.pill{background:white;color:#173247;padding:10px 14px;border-radius:999px;font-weight:800}nav{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}nav button,.areaBtns button{border:1px solid var(--line);background:white;padding:10px 13px;border-radius:999px;font-weight:700;cursor:pointer}nav button.active,.areaBtns button.active{background:#173247;color:white;border-color:#173247}.tab{display:none}.tab.active{display:block}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:16px}.card h2{margin:0 0 12px}.muted{color:var(--muted);font-size:13px}.priority{background:var(--warn);padding:12px;border-radius:12px;font-weight:800;margin-bottom:12px}.sourcebox{background:#eef6f8;border:1px solid #cfe0e4;padding:12px;border-radius:12px;margin-bottom:14px}.groupTitle{font-weight:900;margin:16px 0 6px}.smallcat{font-size:11px;color:var(--muted);display:block;margin-top:3px}.editrow{display:grid;grid-template-columns:minmax(220px,1.2fr) 165px minmax(260px,1.5fr) 90px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.editrow:last-child{border-bottom:none}input,textarea,select{width:100%;padding:9px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink)}button{font-family:inherit}.savebtn,.primary,#addShow,.linkbtn{border:0;background:#173247;color:white;padding:9px 12px;border-radius:9px;font-weight:800;cursor:pointer;text-decoration:none;text-align:center}.settingsgrid{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:10px;align-items:end}.settingsgrid label,.budgetrow label,.controls2 label{font-size:12px;color:var(--muted);font-weight:700}.parkgrid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;margin-top:14px}.areaBtns{display:flex;flex-wrap:wrap;gap:7px}.itemgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.item{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.item img{width:100%;height:165px;object-fit:cover;display:block}.itembody{padding:12px}.itemtop{display:flex;justify-content:space-between;gap:8px}.badge{background:#173247;color:white;border-radius:8px;padding:4px 7px;font-size:12px;font-weight:900;height:max-content}.meta{font-size:12px;color:var(--muted);line-height:1.5;margin:6px 0}.controls2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.controls2 .wide{grid-column:1/-1}.controls2 textarea{min-height:72px}.showform{display:grid;grid-template-columns:1fr 130px 1fr auto;gap:8px}.showrow{display:grid;grid-template-columns:auto 1fr 100px 1fr auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}.budgetrow{display:grid;grid-template-columns:1fr 120px 120px 1.4fr 90px;gap:8px;align-items:end;padding:9px 0;border-bottom:1px solid var(--line)}.budgettotal{margin-top:12px;background:#eef3f6;border-radius:12px;padding:12px}.sources a{display:block;margin:8px 0;color:#0f4c5c}.footer{color:var(--muted);font-size:12px;text-align:center;padding:16px}.summary{display:flex;gap:12px;flex-wrap:wrap}.metric{background:#eef3f6;border-radius:12px;padding:10px 12px;font-size:13px}.metric b{font-size:20px;display:block}.tagline{margin:0 0 12px;color:var(--muted)}#realMap{height:520px;border-radius:16px;border:1px solid var(--line);overflow:hidden}.maphead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.maphead h3{margin:0 0 4px}.mapnote{font-size:11px;color:var(--muted);line-height:1.4}.mapPopupBtn{margin-top:6px;border:0;border-radius:6px;padding:6px 8px;background:#173247;color:#fff;cursor:pointer}.toast{position:fixed;right:22px;bottom:22px;background:#173247;color:#fff;padding:11px 15px;border-radius:10px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:9999;font-weight:800}.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:900px){.parkgrid,.itemgrid,.settingsgrid{grid-template-columns:1fr}.editrow,.budgetrow,.showform,.showrow{grid-template-columns:1fr}.controls2{grid-template-columns:1fr}.controls2 .wide{grid-column:auto}header{align-items:flex-start;gap:10px}.pill{font-size:12px}#realMap{height:420px}.maphead{flex-direction:column}.savebtn{width:100%}}

/* v3 - visual de roteiro, prioridades, malas e áreas concluídas */
.status-done{background:#e7f7ec!important;border-color:#9ed8ad!important}.status-progress{background:#eaf2ff!important;border-color:#a9c5ef!important}.status-pending{background:#fff0f0!important;border-color:#f2b4b4!important}.status-waiting{background:#fff7df!important;border-color:#ead79a!important}.status-planned{background:#f2f3f5!important;border-color:#d6d9dd!important}
.checklistRow{border:1px solid var(--line);border-radius:12px;padding:10px;margin:8px 0}.checklistRow .statusSelect{font-weight:800}

.packingGroup{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:14px 0;background:#fff}.packingHeader{background:linear-gradient(90deg,#eef3f6,#f9fbfc);padding:14px 16px;border-bottom:1px solid var(--line)}.packingHeader>div{display:flex;align-items:center;gap:12px}.packingHeader h3{margin:0;font-size:18px}.packingHeader span{color:var(--muted);font-size:12px}.packingIcon{font-size:24px}.packingItems{padding:0 14px}.packingRow{padding-left:6px}.packingRow .editmain{position:relative;padding-left:14px}.packingRow .editmain:before{content:'•';position:absolute;left:0;color:#9aa8b3}

.routePlan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.routeStep{display:flex;gap:12px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px;cursor:pointer;color:var(--ink)}.routeStep:hover{border-color:#9ab4c0;box-shadow:0 3px 14px rgba(23,50,71,.06)}.routeStep.current{border:2px solid #173247}.routeStep.done{background:#e8f7ec;border-color:#86c99a}.routeNum{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;background:#173247;color:#fff;font-weight:900}.routeStep.done .routeNum{background:#2e8b57}.routeBody{min-width:0}.routeTop{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.routeBody small{color:var(--muted)}.routeBody p{margin:5px 0 0;font-size:12px;line-height:1.35;color:#4f6170}

.areaHero{display:flex;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:12px;background:linear-gradient(135deg,#fff,#f4f7f9)}.areaHero.done{background:linear-gradient(135deg,#e6f7eb,#f7fff9);border-color:#8dcca0}.areaHero h2{margin:2px 0 6px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:900;color:var(--muted)}.areaPriorityLine{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}.mustDo{margin-top:8px;padding:8px 10px;background:#fff7df;border-radius:10px;font-size:12px}.areaActions{display:flex;align-items:flex-start}.completeArea,.undoArea{border:0;border-radius:10px;padding:10px 12px;font-weight:900;cursor:pointer;white-space:nowrap}.completeArea{background:#2e8b57;color:#fff}.undoArea{background:#fff;color:#2e8b57;border:1px solid #79bd8e}
.areaBtns button.areaDone{background:#dff4e5;border-color:#7fc092;color:#1f6b3d}.areaBtns button.areaDone.active{background:#2e8b57;color:white;border-color:#2e8b57}

.priorityLegend{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}.priorityTag,.miniPriority{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.miniPriority{margin-left:5px;padding:2px 6px;font-size:9px}.prioS{background:#ffe0e0!important;color:#991b1b!important}.prioA{background:#fff1bf!important;color:#7a5200!important}.prioB{background:#e6edf4!important;color:#40546a!important}.prioOff{background:#efefef!important;color:#777!important}.badge.prioS,.badge.prioA,.badge.prioB,.badge.prioOff{height:max-content}
.itemDone{border-color:#86c99a;box-shadow:0 0 0 2px rgba(46,139,87,.08)}.itemDone .itembody{background:#f5fff7}

@media(max-width:900px){.routePlan{grid-template-columns:1fr}.areaHero{flex-direction:column}.areaActions{width:100%}.completeArea,.undoArea{width:100%}.packingItems{padding:0 10px}}

/* v4 - todos os dias, orçamento global e cards com fotos */
#dayMap{height:520px;border-radius:16px;border:1px solid var(--line);overflow:hidden}.imgPlaceholder{height:165px;display:grid;place-items:center;font-size:48px;background:linear-gradient(135deg,#eef3f6,#fff7df)}.dayTitleRow{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.datePill{background:#173247;color:#fff;border-radius:999px;padding:8px 12px;font-weight:900}.globalBudget{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.globalBudget>div{background:#eef3f6;border-radius:12px;padding:12px}.globalBudget span{display:block;color:var(--muted);font-size:11px;font-weight:800}.globalBudget b{display:block;font-size:20px;margin-top:3px}.globalBudget .neg{color:#b42318}.item .meta{min-height:56px}.item[data-dayitem] .itembody,.item[data-uni] .itembody{height:100%}.item[data-dayitem],.item[data-uni]{display:flex;flex-direction:column}.item[data-dayitem] img,.item[data-uni] img{background:#eef3f6}.sources #daySources a{display:block;margin:8px 0;color:#0f4c5c}.itemtop b{line-height:1.25}.showrow button{border:0;border-radius:8px;padding:8px;background:#f0f2f4;color:#4f6170;cursor:pointer}
@media(max-width:900px){#dayMap{height:420px}.globalBudget{grid-template-columns:1fr 1fr}.dayTitleRow{align-items:center}.datePill{font-size:12px}.item .meta{min-height:auto}}
@media(max-width:560px){.globalBudget{grid-template-columns:1fr}}
