/* Layout: sticky paper header with the Mitra Travel logo under a sun-to-sea stripe; one working column (max 1120px); package view = program + sticky price panel; itinerary = route ribbon + navy day cards. Brand: navy #16305E, sun gold #E2A43A, sea teal #1B9AAA. */
:root{
  --bg:#FBF8F2; --surface:#FFFFFF; --sunk:#F4EEE3; --ink:#1A2238; --muted:#5E6A80; --line:#E7DFD0;
  --cobalt:#16305E; --cobalt-soft:#E6ECF6; --teal:#12808C; --teal-soft:#DDF1F3; --gold:#9A6512; --gold-soft:#FBEED3;
  --sun:#E2A43A; --sun-2:#F2B648; --on-sun:#16305E; --brand-ink:#16305E;
  --hero:#16305E; --hero-2:#0E2246; --on-hero:#FFFFFF; --on-hero-muted:#C9D3E6;
  --ok:#1B7A45; --ok-soft:#DDF2E5; --warn:#A35F0C; --warn-soft:#FAEAD3; --bad:#B3352E; --bad-soft:#F8E0DE;
  --on-accent:#FFFFFF; --scrim:rgba(14,34,70,.45); --btn-dark:#16305E; --on-dark:#FFFFFF;
  --shadow:0 1px 2px rgba(22,48,94,.05),0 12px 30px -8px rgba(22,48,94,.12);
  --f-display:"Oswald","Montserrat",system-ui,sans-serif;
  --f-body:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0B1428; --surface:#121E38; --sunk:#1A2846; --ink:#EEF1F7; --muted:#9FAAC2; --line:#26355A;
  --cobalt:#9DB4EA; --cobalt-soft:#1E2E54; --teal:#5CC8D2; --teal-soft:#123A40; --gold:#F2B648; --gold-soft:#3A2D12;
  --sun:#F2B648; --sun-2:#F7C566; --on-sun:#0E2246; --brand-ink:#FFFFFF;
  --hero:#16294F; --hero-2:#0A1430; --on-hero:#FFFFFF; --on-hero-muted:#B9C5DC;
  --ok:#55C487; --ok-soft:#163525; --warn:#E3A94C; --warn-soft:#3A2B12; --bad:#EE7069; --bad-soft:#3D1C1B;
  --on-accent:#0B1428; --scrim:rgba(0,0,0,.6); --btn-dark:#F4EEE3; --on-dark:#0E2246; --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -8px rgba(0,0,0,.45); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0B1428; --surface:#121E38; --sunk:#1A2846; --ink:#EEF1F7; --muted:#9FAAC2; --line:#26355A;
  --cobalt:#9DB4EA; --cobalt-soft:#1E2E54; --teal:#5CC8D2; --teal-soft:#123A40; --gold:#F2B648; --gold-soft:#3A2D12;
  --sun:#F2B648; --sun-2:#F7C566; --on-sun:#0E2246; --brand-ink:#FFFFFF;
  --hero:#16294F; --hero-2:#0A1430; --on-hero:#FFFFFF; --on-hero-muted:#B9C5DC;
  --ok:#55C487; --ok-soft:#163525; --warn:#E3A94C; --warn-soft:#3A2B12; --bad:#EE7069; --bad-soft:#3D1C1B;
  --on-accent:#0B1428; --scrim:rgba(0,0,0,.6); --btn-dark:#F4EEE3; --on-dark:#0E2246; --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -8px rgba(0,0,0,.45); color-scheme:dark}

*{box-sizing:border-box}
[hidden]{display:none!important}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.5}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
h1,h2,h3{margin:0;text-wrap:balance}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--cobalt);outline-offset:2px}
svg.i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.num{font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}
.small{font-size:13px}

/* top bar */
.band{height:4px;background:linear-gradient(90deg,var(--sun) 0,var(--sun-2) 38%,#1B9AAA 72%,#5CC8D2 100%)}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}
.top-in{max-width:1120px;margin:0 auto;padding-block:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;margin-right:auto;min-width:0}
.brand .lg{height:56px;width:auto;color:var(--brand-ink);flex:none;display:block}
.brand small{display:block;color:var(--muted);font-size:12px;line-height:1.25;border-left:1px solid var(--line);padding-left:12px;max-width:16ch}
svg.lg{overflow:visible}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;flex-wrap:wrap}
.seg button{border:0;background:transparent;padding:5px 9px;font-size:12px;font-weight:600;letter-spacing:.06em;cursor:pointer;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--hero);color:var(--on-hero)}
.who{display:flex;align-items:center;gap:8px;font-size:13px;min-width:0}
.cc{font-family:var(--f-mono);font-size:11px;font-weight:500;letter-spacing:.05em;padding:2px 6px;border-radius:4px;background:var(--cobalt-soft);color:var(--cobalt);white-space:nowrap}
.link{background:none;border:0;padding:4px 2px;color:var(--cobalt);cursor:pointer;font-weight:500}

/* main */
.wrap{max-width:1120px;margin:0 auto;padding-block:20px 64px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px;overflow-x:auto}
.tabs button{border:0;background:none;padding:10px 12px;cursor:pointer;color:var(--muted);font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--sun);font-weight:600}
.tabs .count{font-family:var(--f-mono);font-size:11px;margin-left:6px;padding:1px 5px;border-radius:9px;background:var(--sunk)}
.tabs .count.hot{background:var(--warn-soft);color:var(--warn)}
.head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:18px}
.head h1,.h1{font-family:var(--f-display);font-weight:600;font-size:clamp(24px,3.8vw,34px);line-height:1.15;text-transform:uppercase;letter-spacing:.01em;color:var(--brand-ink)}
.eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:4px}
.section-t{font-family:var(--f-body);font-weight:700;font-size:16px;margin:0 0 12px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;border:1px solid transparent;padding:9px 14px;font-weight:600;cursor:pointer;font-size:14px;line-height:1.2;text-align:center}
.btn.pri{background:var(--sun);color:var(--on-sun)}
.btn.pri:hover{background:var(--sun-2)}
.btn.navy{background:var(--hero);color:var(--on-hero)}
.btn.sec{background:var(--surface);border-color:var(--line);color:var(--ink)}
.btn.ghost{background:transparent;color:var(--cobalt);padding-inline:8px}
.btn.okb{background:var(--ok);color:var(--on-accent)}
.btn.badb{background:transparent;border-color:var(--line);color:var(--bad)}
.btn.dark{background:var(--btn-dark);color:var(--on-dark);border-radius:999px;padding:12px 18px;font-size:15px}
.btn.sm{padding:6px 10px;font-size:13px}
.btn:disabled{opacity:.45;cursor:not-allowed}

.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;white-space:nowrap}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.s-requested{background:var(--warn-soft);color:var(--warn)}
.s-confirmed{background:var(--cobalt-soft);color:var(--cobalt)}
.s-partial{background:var(--teal-soft);color:var(--teal)}
.s-paid,.s-ok{background:var(--ok-soft);color:var(--ok)}
.s-declined{background:var(--bad-soft);color:var(--bad)}
.tag{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--sunk);color:var(--muted);white-space:nowrap}

/* catalog */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:0;display:flex;flex-direction:column;min-width:0;overflow:hidden;box-shadow:var(--shadow)}
.ctop{position:relative;background:linear-gradient(135deg,var(--hero),var(--hero-2));color:var(--on-hero);padding:16px 18px 14px;display:flex;justify-content:space-between;align-items:flex-end;gap:10px;overflow:hidden;min-height:86px}
.ctop::before{content:"";position:absolute;right:-38px;top:-46px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(242,182,72,.55) 0,rgba(242,182,72,.18) 45%,rgba(242,182,72,0) 70%)}
.ctop::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#E2A43A,#1B9AAA)}
.ctop .mono{position:relative;font-size:12px;color:var(--on-hero-muted)}
.ctop .cd{position:relative;text-align:right;line-height:1}
.ctop .cd b{display:block;font-family:var(--f-display);font-weight:600;font-size:34px;color:#F2B648}
.ctop .cd span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--on-hero-muted)}
.cbody{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1}
.card h3{font-family:var(--f-body);font-weight:700;font-size:17px;line-height:1.3}
.route{font-size:13px;color:var(--teal);font-weight:500}
.card p{margin:0;color:var(--muted);font-size:14px}
.price{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px dashed var(--line);flex-wrap:wrap}
.price .big{font-size:20px;font-weight:700}
.price small{display:block;color:var(--muted);font-size:12px}
.netline{font-size:13px;color:var(--ok);font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer;font-weight:500;color:var(--muted)}
.chip[aria-pressed="true"]{background:var(--hero);border-color:var(--hero);color:var(--on-hero)}
.chip .mono{font-size:11px}

/* package detail */
.back{margin-bottom:12px}
.detail{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}
.meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:16px 0 26px}
.meta div{background:var(--surface);padding:10px 12px}
.meta dt{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600}
.meta dd{margin:2px 0 0;font-weight:600}
.panel{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--sun);border-radius:16px;padding:18px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 80px);box-shadow:var(--shadow)}
.ptable{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0 12px}
.ptable th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:right;font-weight:600;padding:6px 0;border-bottom:1px solid var(--line)}
.ptable th:first-child,.ptable td:first-child{text-align:left}
.ptable td{text-align:right;padding:8px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.ptable td.net{color:var(--ok);font-weight:700}
.stack{display:flex;flex-direction:column;gap:8px}
.lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:28px}
.lists ul{margin:0;padding-left:18px}
.lists li{margin-bottom:4px}
.terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:24px}
.terms > div{background:var(--sunk);border-radius:10px;padding:14px 16px;font-size:14px}
.terms ul{margin:6px 0 0;padding-left:18px}

/* itinerary */
.itin-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:12px}
.itin-bar label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.itin-bar input{width:auto}
.ribbon{display:flex;align-items:stretch;gap:0;overflow-x:auto;padding:14px 4px 16px;margin-bottom:16px;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.rnode{flex:none;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:96px;padding:0 6px;text-align:center}
.rdot{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--hero);color:#F2B648;font-family:var(--f-display);font-size:16px;font-weight:600;box-shadow:0 0 0 3px var(--surface),0 0 0 4px var(--sun)}
.rnode.end .rdot{background:var(--sunk);color:var(--muted)}
.rnode b{font-size:13px;font-weight:600;line-height:1.2}
.rnode span{font-size:12px;color:var(--muted)}
.rsep{flex:1 0 34px;display:flex;align-items:flex-start;justify-content:center;position:relative;padding-top:8px;color:var(--teal)}
.rsep::before{content:"";position:absolute;left:0;right:0;top:17px;border-top:2px dashed var(--line)}
.rsep svg{position:relative;background:var(--surface);padding:0 3px;width:24px;height:18px}
.days{display:flex;flex-direction:column;gap:12px}
.day{display:grid;grid-template-columns:88px minmax(0,1fr);background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.day-side{background:linear-gradient(180deg,var(--hero),var(--hero-2));color:var(--on-hero);padding:16px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;position:relative}
.day-side::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,#E2A43A,#1B9AAA)}
.day-side small{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--on-hero-muted)}
.day-side .dn{font-family:var(--f-display);font-weight:600;font-size:34px;line-height:1;color:#F2B648}
.day-side .dd{font-size:12px;font-weight:600;margin-top:6px;line-height:1.25}
.day-main{padding:14px 18px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.day-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.day-h h3{font-family:var(--f-body);font-weight:700;font-size:17px;line-height:1.25}
.mv{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--teal);background:var(--teal-soft);padding:3px 9px;border-radius:999px}
.mv svg{width:15px;height:15px}
.acts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.acts li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;font-size:14.5px}
.ai{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--sunk);color:var(--muted)}
.ai svg{width:17px;height:17px}
.ai.sight{background:var(--cobalt-soft);color:var(--cobalt)}
.ai.craft,.ai.museum{background:var(--teal-soft);color:var(--teal)}
.ai.food{background:var(--gold-soft);color:var(--gold)}
.ai.nature{background:var(--ok-soft);color:var(--ok)}
.ai.pilgrim{background:var(--teal-soft);color:var(--teal)}
.acts li span{padding-top:5px}
.day-f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border-top:1px dashed var(--line);padding-top:10px;font-size:13px;color:var(--muted)}
.day-f .ov{display:inline-flex;align-items:center;gap:6px}
.meals{display:inline-flex;gap:4px}
.meal{font-size:11px;font-weight:600;padding:2px 7px;border-radius:5px;background:var(--gold-soft);color:var(--gold)}

/* bookings */
.rows{display:flex;flex-direction:column;gap:10px}
.brow{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1.1fr) auto;gap:14px;align-items:center}
.brow .t{font-weight:600}
.brow .sub{font-size:13px;color:var(--muted)}
.brow .money{font-variant-numeric:tabular-nums;font-size:14px}
.brow .bacts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.duel{font-size:12px;font-weight:600;color:var(--warn);margin-top:3px}
.bar{height:6px;border-radius:3px;background:var(--sunk);overflow:hidden;margin-top:6px}
.bar i{display:block;height:100%;background:var(--ok)}
.empty{background:var(--surface);border:1px dashed var(--line);border-radius:12px;padding:32px;text-align:center;color:var(--muted)}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:18px}
.tile{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px}
.tile .v{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;margin-top:2px}
.note{background:var(--teal-soft);color:var(--ink);border-radius:10px;padding:12px 14px;font-size:14px;margin-bottom:16px;display:flex;gap:10px}
.note::before{content:"";flex:none;width:4px;border-radius:2px;background:var(--teal)}
.tscroll{overflow-x:auto}
table.tb{width:100%;border-collapse:collapse;font-size:14px}
table.tb th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 12px;font-weight:600;background:var(--sunk);white-space:nowrap}
table.tb td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:middle}
table.tb td.r,table.tb th.r{text-align:right}
table.tb tr.off td{color:var(--muted)}
.boxed{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:18px}
.boxed-h{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line)}
.boxed-h h2{font-family:var(--f-body);font-weight:700;font-size:16px}

/* admin */
.prow{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.6fr) auto;gap:16px;align-items:center}
.prow.off{opacity:.6}
.mtiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:16px}
.mtile{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 14px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px}
.mtile[aria-pressed="true"]{border-color:var(--cobalt);box-shadow:0 0 0 1px var(--cobalt)}
.mtile b{font-weight:600}
.mtile .bar{display:block;width:100%}
.mtile .bar i{background:var(--cobalt)}
.mtile.full .bar i{background:var(--warn)}
.limit{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.limit input{width:72px}

/* info */
.info{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.icard{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.icard h3{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600}
.icard h3 svg{color:var(--teal)}
.icard p{margin:0;font-size:14px;color:var(--muted)}
.icard.key{border-color:var(--teal);background:var(--teal-soft)}
.icard.key p{color:var(--ink)}

/* forms */
label.f{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:500;color:var(--muted)}
input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=date],input[type=search],input[inputmode],select,textarea{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 10px;font-size:15px;color:var(--ink);width:100%;min-width:0}
input.bad{border-color:var(--bad)}
textarea{resize:vertical;min-height:70px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer}
.opt:has(input:checked){border-color:var(--cobalt);background:var(--cobalt-soft)}
.opt input{margin-top:3px}
.sum{background:var(--sunk);border-radius:10px;padding:12px 14px;font-size:14px}
.sum div{display:flex;justify-content:space-between;gap:12px;padding:3px 0;font-variant-numeric:tabular-nums}
.sum .tot{border-top:1px solid var(--line);margin-top:6px;padding-top:8px;font-weight:700;font-size:16px}
.sum .c{color:var(--ok)}
.err{color:var(--bad);font-size:13px;min-height:1em}
.trav{display:grid;grid-template-columns:28px minmax(140px,1.6fr) minmax(110px,1fr) minmax(120px,1fr) minmax(130px,1fr) 100px;gap:8px;align-items:center;min-width:700px}
.trav.h{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
.trav input,.trav select{padding:7px 8px;font-size:14px}

/* checkout */
.paytabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--sunk);padding:4px;border-radius:10px}
.paytabs button{border:0;border-radius:7px;background:transparent;padding:9px;font-weight:600;cursor:pointer;color:var(--muted);font-size:14px}
.paytabs button[aria-selected="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.cardviz{border-radius:14px;padding:16px 18px;color:#fff;background:linear-gradient(135deg,#1C2F7A,#16305E 55%,#12808C);aspect-ratio:1.586;max-width:300px;width:100%;display:flex;flex-direction:column;justify-content:space-between;font-family:var(--f-mono);box-shadow:var(--shadow)}
.cardviz .cb{align-self:flex-end;font-family:var(--f-body);font-weight:700;font-size:15px;letter-spacing:.04em}
.cardviz .cn{font-size:17px;letter-spacing:.08em}
.cardviz .cr{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;gap:8px}
.cardviz .chipz{width:34px;height:24px;border-radius:5px;background:linear-gradient(135deg,#E9D49A,#B99A4B)}
.ckgrid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.brandbadge{font-size:12px;font-weight:700;padding:2px 8px;border-radius:5px;background:var(--sunk);color:var(--muted)}
.brandbadge.on{background:var(--cobalt);color:var(--on-accent)}
.inwrap{position:relative}
.inwrap .brandbadge{position:absolute;right:8px;top:50%;transform:translateY(-50%)}
.testcards{font-size:13px;color:var(--muted);background:var(--sunk);border-radius:8px;padding:10px 12px}
.testcards code{font-family:var(--f-mono);color:var(--ink)}
.gsheet{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}
.spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--sunk);border-top-color:var(--cobalt);margin:12px auto}
@media (prefers-reduced-motion:no-preference){.spinner{animation:sp 0.9s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}}
.result{text-align:center;display:flex;flex-direction:column;gap:8px;align-items:center}
.result .big{width:52px;height:52px;border-radius:50%;display:grid;place-items:center}
.result .big svg{width:28px;height:28px;stroke-width:2.2}
.result .okc{background:var(--ok-soft);color:var(--ok)}
.result .badc{background:var(--bad-soft);color:var(--bad)}
.rcpt{width:100%;text-align:left}

/* modal */
.scrim{position:fixed;inset:0;background:var(--scrim);z-index:20;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding-top:max(32px,calc(env(safe-area-inset-top,0px) + 16px));padding-bottom:max(32px,env(safe-area-inset-bottom,0px));padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
.sheet{background:var(--surface);border-radius:14px;width:100%;max-width:560px;padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px;min-width:0}
.sheet.wide{max-width:820px}
.sheet h2{font-family:var(--f-body);font-weight:700;font-size:18px}
.sheet .foot{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.preview{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--sunk)}
.preview .scale{transform-origin:top left;width:794px}
.kv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:6px 14px;font-size:14px}
.kv dt{color:var(--muted)}
.kv dd{margin:0;font-weight:500}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;font-size:14px;z-index:30;max-width:calc(100% - 32px);box-shadow:var(--shadow)}

/* login */
.login{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start;padding-top:12px}
.login h1{font-family:var(--f-display);font-weight:600;font-size:clamp(28px,4.6vw,44px);line-height:1.1;margin-bottom:12px;text-transform:uppercase;letter-spacing:.01em}
.hero-p{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--hero),var(--hero-2));color:var(--on-hero);border-radius:22px;padding:28px clamp(20px,4vw,40px) 32px}
.hero-p::before{content:"";position:absolute;right:-140px;top:-150px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(242,182,72,.38) 0,rgba(242,182,72,.12) 42%,rgba(242,182,72,0) 68%);pointer-events:none}
.hero-p::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,#E2A43A,#F2B648 38%,#1B9AAA 72%,#5CC8D2)}
.hero-p > *{position:relative}
.hero-p .lg{height:78px;width:auto;margin:0 0 20px -6px;display:block}
.hero-p .eyebrow{color:#F2B648}
.hero-p .how b{color:#F2B648}
.hero-p .tag{background:rgba(255,255,255,.1);color:var(--on-hero)}
.login .lead{font-size:17px;color:var(--on-hero-muted);max-width:52ch;margin:0 0 20px}
.how{display:grid;gap:10px;max-width:52ch}
.how div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;font-size:14px}
.how b{font-family:var(--f-mono);font-size:12px;color:var(--teal);padding-top:2px}
.mlist{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}
.acc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}
.acc h2{font-size:15px;font-weight:600}
.acc + .acc{margin-top:14px}
.demo{font-size:13px;color:var(--muted);margin-top:14px}

/* Print documents (program, voucher, receipt): fixed light print look */
.doc{position:relative;width:794px;padding:48px 56px 40px;font-family:var(--f-body);font-size:13px;line-height:1.5;background:#fff;color:#111934}
.doc .dband{height:6px;background:linear-gradient(90deg,#E2A43A,#F2B648 38%,#1B9AAA 72%,#5CC8D2);margin:-48px -56px 24px}
.doc .dlogo{height:58px;width:auto;color:#16305E;display:block;margin-bottom:8px}
.doc .dhead{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:2px solid #111934;padding-bottom:14px;margin-bottom:16px}
.doc h1{font-family:var(--f-display);font-weight:600;font-size:27px;line-height:1.15;margin:4px 0 6px;text-transform:uppercase;color:#16305E}
.doc .dcode{font-family:var(--f-mono);font-size:12px;color:#566079}
.doc .droute{color:#12808C;font-weight:600}
.doc .dmeta{display:flex;flex-wrap:wrap;gap:8px 28px;margin-bottom:12px;font-size:12px;color:#566079}
.doc .dmeta b{display:block;font-size:13px;color:#111934}
.doc h2{font-family:var(--f-body);font-weight:700;font-size:15px;margin:16px 0 8px}
.doc .dday{display:grid;grid-template-columns:70px 1fr;gap:14px;padding:10px 0;border-bottom:1px solid #D6DCE8}
.doc .dday .n{font-family:var(--f-display);color:#16305E;font-weight:600;font-size:18px;line-height:1.1}
.doc .dday .n small{display:block;font-family:var(--f-body);font-size:11px;color:#566079;font-weight:500;margin-top:3px}
.doc .dday ul{margin:3px 0 4px;padding-left:16px}
.doc .dday .o{color:#566079;font-size:11px}
.doc .dday .m{display:inline-block;font-size:10px;font-weight:600;padding:1px 5px;border-radius:4px;background:#F6ECD6;color:#9A6E1C;margin-left:4px}
.doc table{width:100%;border-collapse:collapse;margin-top:4px}
.doc th,.doc td{padding:7px 8px;border-bottom:1px solid #D6DCE8;text-align:right}
.doc th:first-child,.doc td:first-child{text-align:left}
.doc table.l th,.doc table.l td{text-align:left}
.doc th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#566079;background:#F2F4F8}
.doc .dl{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.doc .dl ul{margin:0;padding-left:16px}
.doc .dfoot{margin-top:20px;font-size:11px;color:#566079;border-top:1px solid #D6DCE8;padding-top:10px}
.doc .box{border:1.5px solid #16305E;border-radius:8px;padding:12px 14px;margin:6px 0 4px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px 18px}
.doc .box div{font-size:11px;color:#566079}
.doc .box b{display:block;font-size:13px;color:#111934}

@media (max-width:860px){
  .detail{grid-template-columns:minmax(0,1fr)}
  .panel{position:static}
  .login{grid-template-columns:minmax(0,1fr)}
  .brow{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .brow .bacts{grid-column:1/-1;justify-content:flex-start}
  .prow{grid-template-columns:minmax(0,1fr)}
  .ckgrid{grid-template-columns:minmax(0,1fr)}
  .ckgrid .cardviz{order:-1}
}
@media (max-width:520px){
  .grid{grid-template-columns:minmax(0,1fr)}
  .brow{grid-template-columns:minmax(0,1fr)}
  .who .nm{display:none}
  .day{grid-template-columns:64px minmax(0,1fr)}
  .day-side .dn{font-size:24px}
  .day-main{padding:12px 14px}
  .kv{grid-template-columns:minmax(0,1fr)}
  .kv dd{margin-bottom:6px}
}
@media (prefers-reduced-motion:no-preference){
  .card,.btn,.chip,.mtile{transition:border-color .15s,background-color .15s}
  .card:hover{border-color:var(--cobalt)}
}

/* ---- app additions ---- */
a{color:var(--cobalt)}
a.btn{text-decoration:none}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.banner{border-radius:10px;padding:12px 14px;font-size:14px;margin-bottom:16px;display:flex;gap:10px;align-items:center}
.banner.ok{background:var(--ok-soft);color:var(--ok)}
.banner.bad{background:var(--bad-soft);color:var(--bad)}
.banner.info{background:var(--teal-soft);color:var(--ink)}
.auth-wrap{max-width:440px;margin:6vh auto 0}
.auth-wrap .acc{gap:14px}
.auth-logo{display:flex;justify-content:center;margin-bottom:18px}
.auth-logo .lg{height:84px;width:auto;color:var(--brand-ink)}
.days-ed{display:flex;flex-direction:column;gap:12px}
.day-ed{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}
.day-ed textarea{min-height:84px;font-size:14px}
.tri{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.inline{display:inline}
.linkbtn{background:none;border:0;padding:0;color:var(--cobalt);cursor:pointer;font:inherit;text-decoration:underline}
.print-bar{max-width:794px;margin:16px auto;display:flex;gap:8px;justify-content:space-between;align-items:center;padding-left:16px;padding-right:16px}
.print-page{background:#E9E6DF;min-height:100vh;padding-bottom:32px}
.print-page .doc{margin:0 auto;box-shadow:0 10px 40px -10px rgba(0,0,0,.25);max-width:100%}
@media print{
  @page{size:A4;margin:12mm}
  body{background:#fff!important}
  .print-bar,.top,.band,body::before{display:none!important}
  .print-page{background:#fff;padding:0}
  .print-page .doc{box-shadow:none;width:auto;padding:0}
  .doc .dband{margin:0 0 18px}
  .doc .dday,.doc tr,.doc .box{break-inside:avoid}
}
@media (max-width:820px){.print-page .doc{width:100%;padding:28px 20px}.doc .dband{margin:-28px -20px 20px}.doc .box{grid-template-columns:1fr 1fr}}

/* ---- PHP edition ---- */
.tabs a.tab{padding:10px 12px;text-decoration:none;white-space:nowrap;margin-bottom:-1px;color:var(--muted);font-weight:500;border-bottom:2px solid transparent}
.tabs a.tab.on{color:var(--ink);font-weight:600;border-bottom-color:var(--sun)}
.seg a.lang{padding:5px 9px;font-size:12px;font-weight:600;letter-spacing:.06em;text-decoration:none;color:var(--muted)}
.seg a.lang.on{background:var(--hero);color:var(--on-hero)}
a.chip{text-decoration:none}
.print-body{background:#E9E6DF}
.install{max-width:640px;margin:5vh auto;display:flex;flex-direction:column;gap:14px}
.install pre{background:var(--sunk);padding:12px;border-radius:8px;overflow:auto;font-size:13px}
.check{display:flex;gap:8px;align-items:flex-start;font-size:14px}
.check b{min-width:22px}
@media print{.print-body{background:#fff}}

/* ---- group departures ---- */
.deps{display:flex;flex-direction:column;gap:12px}
.dep{display:grid;grid-template-columns:86px minmax(0,1fr) 220px;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.dep-date{background:linear-gradient(180deg,var(--hero),var(--hero-2));color:var(--on-hero);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 6px;position:relative}
.dep-date::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,#E2A43A,#1B9AAA)}
.dd-day{font-family:var(--f-display);font-size:34px;font-weight:600;line-height:1;color:#F2B648}
.dd-mon{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.dd-yr{font-size:11px;color:var(--on-hero-muted)}
.dep-main{padding:14px 18px;display:flex;flex-direction:column;gap:8px;min-width:0}
.dep-main h3{font-weight:700;font-size:17px;margin:0}
.dep-side{padding:14px 18px;border-left:1px dashed var(--line);display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:center}
.dep-side .big{font-size:22px;font-weight:700}
.dep-side .btn{margin-top:6px}
.seatbar{display:flex;flex-direction:column;gap:6px;min-width:0}
.sb-track{position:relative;height:10px;border-radius:5px;background:var(--sunk);overflow:visible}
.sb-track i{display:block;height:100%;border-radius:5px;background:var(--warn)}
.seatbar.ok .sb-track i{background:var(--ok)}
.sb-track b{position:absolute;top:-4px;width:2px;height:18px;background:var(--ink);opacity:.55}
.sb-legend{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;flex-wrap:wrap}
.tag.okt{background:var(--ok-soft);color:var(--ok)}
.tag.gtag{background:var(--teal-soft);color:var(--teal);font-family:var(--f-body);font-size:11px}
.s-held{background:var(--warn-soft);color:var(--warn)}
.s-expired{background:var(--bad-soft);color:var(--bad)}
.deptable td{vertical-align:top}
@media (max-width:760px){.dep{grid-template-columns:70px minmax(0,1fr)}.dep-side{grid-column:1/-1;border-left:0;border-top:1px dashed var(--line);flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}}

/* ---- messages ---- */
.chat{margin-top:4px}
.msgs{display:flex;flex-direction:column;gap:10px;padding:16px;max-height:520px;overflow-y:auto;background:var(--sunk)}
.msgs-empty{text-align:center;padding:18px 0}
.msg{max-width:min(78%,560px);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:9px 12px;align-self:flex-start}
.msg.me{align-self:flex-end;background:var(--cobalt-soft);border-color:transparent}
.msg.staff{border-left:3px solid var(--sun)}
.msg .mhead{display:flex;gap:10px;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:3px}
.msg .mhead b{color:var(--ink);font-weight:600}
.msg .mbody{font-size:14.5px;overflow-wrap:anywhere}
.msg .mbody a{color:var(--cobalt)}
.msg.sys{align-self:center;max-width:92%;background:transparent;border:0;padding:2px 8px;text-align:center;font-size:12.5px;color:var(--muted)}
.msg.sys span{display:inline-block;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 12px;color:var(--ink)}
.msg.sys time{display:block;font-size:11px;margin-top:2px}
.mfiles{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.mfile{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 9px;text-decoration:none;color:var(--ink);font-size:13px;min-width:0}
.mfile b{font-family:var(--f-mono);font-size:10.5px;background:var(--hero);color:var(--on-hero);border-radius:4px;padding:2px 5px;flex:none}
.mfile span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
.mfile small{color:var(--muted);flex:none}
.msgform{display:flex;flex-direction:column;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--line)}
.msgform textarea{min-height:64px}
.msgbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.msgbar #msgFileNames{flex:1;min-width:140px}
.filepick{cursor:pointer;position:relative}
.inbox{display:flex;flex-direction:column;gap:8px}
.ibx{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"t r" "p r";gap:2px 14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px 16px;text-decoration:none;color:var(--ink)}
.ibx.un{border-left:3px solid var(--sun)}
.ibx.un .ibx-t{font-weight:600}
.ibx-t{grid-area:t;min-width:0}
.ibx-p{grid-area:p;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ibx-r{grid-area:r;display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.count.hot{font-family:var(--f-mono);font-size:11px;padding:1px 6px;border-radius:9px;background:var(--warn-soft);color:var(--warn)}
.banner.warn{background:var(--warn-soft);color:var(--warn)}

/* ---- traveller form ---- */
.tcard{border:1px solid var(--line);border-radius:12px;padding:12px 16px 14px;margin:0;background:var(--surface);min-width:0}
.tcard legend{padding:0 6px;font-size:14px}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 12px}
.trow{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:flex-end;margin-top:10px}
.chk{display:inline-flex;gap:6px;align-items:center;font-size:13px;color:var(--muted)}
.filef input[type=file]{font-size:13px;max-width:260px}
input.bad{border-color:var(--warn)}
#travellers,#chat{scroll-margin-top:96px}
/* passport block, progress, contacts (v5) */
.tag.warnt{background:var(--warn-soft);color:var(--warn)}
.tsec{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:10px 0 6px;padding-top:8px;border-top:1px dashed var(--line)}
.tsec:first-of-type{border-top:0;padding-top:0;margin-top:2px}
.tprog{position:relative;background:var(--sunk);border-radius:8px;height:30px;overflow:hidden;display:flex;align-items:center}
.tprog span{position:relative;z-index:1;padding:0 12px;font-size:13px;font-weight:600}
.tprog i{position:absolute;left:0;top:0;bottom:0;background:var(--ok-soft)}
.cbtns{display:flex;flex-wrap:wrap;gap:8px}
.cbtn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;color:var(--ink);background:var(--surface)}
.cbtn:hover{border-color:currentColor}
.cbtn svg{width:16px;height:16px;flex:none}
.cbtn.wa svg{color:#25D366}.cbtn.tg svg{color:#229ED9}
.cbtn.sm{padding:3px 9px;font-size:12px}
.ccard{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);display:grid;gap:10px}
.ccard .who{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;align-items:baseline}
.ccard .who b{font-size:14px}
.ccard + .ccard{margin-top:8px}
.reachbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--sunk)}
.reachbar > .small{font-weight:600}
.reach{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
details.mcon{margin-top:4px}details.mcon summary{cursor:pointer;color:var(--muted)}
.mconf{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.mconf input{width:170px}
.cols2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:16px;align-items:start}
.cols2 > .boxed{margin:0}
.tlist{list-style:none;margin:0;padding:6px 16px;display:grid}
.tlist li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:7px 0;border-bottom:1px solid var(--line)}
.tlist li:last-child{border-bottom:0}
.tname{flex:1 1 220px;min-width:0}
.tdot{width:9px;height:9px;border-radius:50%;background:var(--line);flex:none;align-self:center}
.tdot.ok{background:var(--ok)}.tdot.part{background:var(--warn)}
.tbk-f{padding:10px 16px 14px;border-top:1px solid var(--line)}
.filters{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end;margin-bottom:16px}
.filters .f{flex:0 1 160px}
/* group tour downloads */
.dlbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--sun);border-radius:12px;padding:12px 16px;margin-bottom:16px}
.dlbar > div:first-child{display:flex;flex-direction:column;gap:2px}
.dlbtns{display:flex;flex-wrap:wrap;gap:8px}
.deppdf{margin-top:8px;font-size:13px}
.dlpair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.dlpair .btn{padding-inline:8px}
.doc table.sched td{vertical-align:top;font-size:12px}
@media print{.dlbar,.dlpair{display:none}}
.doc table.sched td:nth-child(2){min-width:190px}.doc table.sched th{font-size:10px}
/* partnership application */
.apply-wrap{max-width:760px;margin:3vh auto 0}
.apply-hero{background:linear-gradient(160deg,var(--hero),var(--hero-2));color:var(--on-hero);border-radius:18px;padding:22px clamp(18px,4vw,30px);margin:14px 0 16px;position:relative;overflow:hidden}
.apply-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#E2A43A,#F2B648 38%,#1B9AAA 72%,#5CC8D2)}
.apply-hero .eyebrow{color:#F2B648}.apply-hero .h1{color:var(--on-hero);font-size:clamp(24px,4vw,32px)}
.apply-hero p{color:var(--on-hero-muted);margin:8px 0 10px;max-width:60ch}
.apply-why{margin:0;padding-left:18px;display:grid;gap:4px;font-size:14px}
.acc.apply fieldset{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;margin:0;min-width:0}
.acc.apply legend{padding:0 6px;font-weight:700;font-size:14px}
.acc.apply .wide2{grid-column:span 2}
@media (max-width:520px){.acc.apply .wide2{grid-column:auto}}
.apply-foot{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.join-card{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;justify-content:space-between;border:1px dashed var(--line);border-radius:12px;padding:12px 14px;background:var(--surface)}
.join-card b{display:block}
.appmeta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.appmeta > div{background:var(--surface);padding:10px 12px;min-width:0;overflow-wrap:anywhere}
.appmeta dt{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600}
.appmeta dd{margin:2px 0 0;font-weight:500}
.s-new{background:var(--warn-soft);color:var(--warn)}.s-approved{background:var(--ok-soft);color:var(--ok)}.s-rejected{background:var(--bad-soft);color:var(--bad)}
