:root{
  --bg:#160f0b; --panel:#241810; --panel2:#302116; --line:#5a3b24; --text:#f4e4c8; --muted:#b99f78;
  --gold:#d2a646; --red:#b7422d; --blue:#4778b8; --green:#5a9b53; --black:#0b0908;
  --shadow:0 10px 30px rgba(0,0,0,.35); --radius:18px;
}
*{box-sizing:border-box} body{margin:0;background:radial-gradient(circle at top,#3a2415 0,#160f0b 55%);color:var(--text);font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;min-height:100vh;padding:12px 12px 32px} button{font:inherit;color:inherit}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 12px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}h1{font-size:22px;margin:0}h2{font-size:17px;margin:0 0 12px}.ghost{border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:12px;padding:9px 12px}.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.status-card{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow)}.status-card b{display:block;font-size:16px}.muted{color:var(--muted);font-size:13px}.tabs{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:rgba(22,15,11,.92);backdrop-filter:blur(8px);padding:8px 0;margin-bottom:12px}.tabs button{border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:12px;padding:9px 4px;color:var(--muted)}.tabs button.active{background:var(--gold);color:#211408;border-color:#efc76d}.tab{display:none}.tab.active{display:block}.panel{background:rgba(36,24,16,.92);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-bottom:12px;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.grid2{display:grid;grid-template-columns:1fr;gap:0}@media(min-width:850px){.grid2{grid-template-columns:1fr 1fr;gap:12px}.status-grid{grid-template-columns:repeat(4,1fr)}}
.map{position:relative;height:430px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(150deg,#2d1c11,#1c120d 70%);overflow:hidden}.map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:32px 32px}.edge{position:absolute;height:2px;background:rgba(210,166,70,.32);transform-origin:left center}.loc{position:absolute;transform:translate(-50%,-50%);min-width:86px;max-width:110px;border:1px solid #7a5632;border-radius:14px;background:#2d2016;padding:8px;text-align:center;box-shadow:0 8px 18px rgba(0,0,0,.35)}.loc.target{border-color:#b7422d}.loc.gear{border-color:#d2a646}.loc.law{border-color:#4778b8}.loc.escape{border-color:#5a9b53}.loc .name{font-weight:800;font-size:13px}.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:3px;margin-top:5px}.chip{font-size:10px;padding:2px 5px;border-radius:99px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.08)}.chip.bandit{background:rgba(183,66,45,.35)}.chip.law{background:rgba(71,120,184,.35)}.chip.hunter{background:rgba(210,166,70,.35);color:#fff}.chip.marker{background:rgba(255,255,255,.15)}
.actions{display:grid;grid-template-columns:1fr;gap:8px}@media(min-width:650px){.actions{grid-template-columns:repeat(2,1fr)}}.action,.smallbtn{border:1px solid var(--line);background:#3a281b;border-radius:14px;padding:11px;text-align:left;cursor:pointer}.action.primary{background:linear-gradient(180deg,#d2a646,#9b7024);color:#1e1209;border-color:#edca72}.action.danger{background:#773021;border-color:#b7422d}.action.disabled{opacity:.45;cursor:not-allowed}.smallbtn{font-size:13px;padding:7px 9px;margin:3px}.badge{display:inline-block;padding:4px 9px;border-radius:999px;background:rgba(210,166,70,.16);border:1px solid rgba(210,166,70,.4);color:#f6d890;font-size:12px}.bar{height:10px;background:#120c08;border-radius:99px;border:1px solid var(--line);overflow:hidden;margin:6px 0 12px}.bar span{display:block;height:100%;background:linear-gradient(90deg,#7a3f2b,#d2a646)}.row{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid rgba(255,255,255,.07);padding:8px 0}.row:last-child{border-bottom:0}.cards{display:grid;grid-template-columns:1fr;gap:8px}.card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px}.card strong{display:block;margin-bottom:4px}.list{display:flex;flex-direction:column;gap:6px}.warning{color:#ffd18a}.dangerText{color:#ff9b8c}.ok{color:#b9f0ae}.hidden{display:none}.toast{position:fixed;left:12px;right:12px;bottom:12px;padding:12px 14px;border-radius:14px;background:#0f0b08;border:1px solid var(--gold);box-shadow:var(--shadow);z-index:20}.modal{position:fixed;inset:0;background:rgba(0,0,0,.62);display:grid;place-items:center;z-index:50;padding:14px}.modal .box{width:min(680px,100%);max-height:86vh;overflow:auto;background:#241810;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow)}.modal h3{margin:0 0 12px}.modal .close{float:right}.logitem{padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}.logitem small{color:var(--muted)}

/* v0.99.5 gameplay UI */
.loc.work{border-color:#8bbf63}.loc.selected{outline:3px solid var(--gold);box-shadow:0 0 0 6px rgba(210,166,70,.18),0 8px 18px rgba(0,0,0,.35)}
.minibadge{display:inline-block;font-size:9px;border-radius:999px;padding:1px 5px;margin:2px;border:1px solid rgba(255,255,255,.12)}
.minibadge.job{background:rgba(90,155,83,.28)}.minibadge.wanted{background:rgba(183,66,45,.32)}.minibadge.susp{background:rgba(210,166,70,.28)}
.objective-strip,.job-strip,.market-strip{grid-column:1/-1;background:rgba(255,255,255,.035);border:1px dashed rgba(210,166,70,.35);border-radius:16px;padding:10px;display:grid;gap:8px}.objective-strip h3,.job-strip h3,.market-strip h3{margin:0 0 4px;font-size:14px;color:#f6d890}.objective{border:1px solid rgba(255,255,255,.09);background:rgba(0,0,0,.18);border-radius:12px;padding:8px}.objective strong{display:block}.objective.done{border-color:rgba(90,155,83,.6)}.objective.todo{border-color:rgba(210,166,70,.55)}.objective.main{border-color:rgba(183,66,45,.65);background:rgba(183,66,45,.13)}.objective.side{border-color:rgba(71,120,184,.55)}
.wanted-card{border-color:rgba(183,66,45,.45);background:rgba(183,66,45,.08)}.market-card{border-color:rgba(210,166,70,.35)}
.action:hover,.smallbtn:hover{filter:brightness(1.14)}.smallbtn.primary{background:linear-gradient(180deg,#d2a646,#9b7024);color:#1e1209;border-color:#edca72}
code{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.09);border-radius:6px;padding:1px 5px;color:#f6d890}
h3{font-size:15px;margin:12px 0 8px}.modal h4{margin:12px 0 8px}.modal .card{margin-bottom:8px}
