/* HotelOS SMART — BUILD-07.7 platform grants console. Extends workforce.css + accounts.css. */
.gr-main{max-width:1280px}
.tiles{grid-template-columns:repeat(5,minmax(0,1fr))}
.gr-layout{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:18px;align-items:start}
.gr-list{position:sticky;top:12px;display:grid;gap:10px;max-height:calc(100vh - 24px);overflow:auto}
.gr-list input[type=search]{border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 11px;font-size:14px;width:100%}
.gr-filter{display:flex;gap:8px;align-items:center;font-size:13.5px;color:var(--muted)}
.gr-hotels{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.gr-hotels button{width:100%;text-align:start;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer;display:grid;gap:4px}
.gr-hotels button:hover{border-color:var(--navy)}
.gr-hotels button[aria-current=true]{border-color:var(--gold);background:#FFFCF5;box-shadow:inset 3px 0 0 var(--gold)}
.gr-hotels strong{font-size:14.5px}
.gr-hotels small{color:var(--muted);font-size:12px}
.gr-hotels .chips{margin-top:2px}
.gr-detail{display:grid;gap:16px;min-width:0}
.gr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.gr-head h2{margin:0;font-size:20px}
.gr-head small{color:var(--muted)}
.gr-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.gr-prod{border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;gap:8px;background:#fff;min-width:0}
.gr-prod.soon{border-color:#EBD3AE;background:#FFF9EF}
.gr-prod h3{margin:0;font-size:15px}
.gr-prod .ends{font-size:13px;color:var(--muted)}
.gr-prod .ends b{color:var(--ink)}
.gr-prod .row-actions{display:flex;gap:6px;flex-wrap:wrap}
.bar{height:8px;border-radius:999px;background:#EEF2F7;overflow:hidden;min-width:80px}
.bar i{display:block;height:100%;background:var(--navy)}
.bar i.full{background:var(--warn)}
.gr-seat-table td,.gr-seat-table th{white-space:nowrap}
.gr-ledger{list-style:none;margin:0;padding:0;display:grid;gap:0}
.gr-ledger li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;padding:10px 0;border-bottom:1px solid var(--line)}
.gr-ledger li:last-child{border-bottom:0}
.gr-ledger .act{font-size:12px;font-weight:700;border-radius:999px;padding:2px 10px;height:fit-content;border:1px solid var(--line)}
.gr-ledger .act.grant{color:var(--ok);border-color:#BFDCCD}.gr-ledger .act.extend{color:var(--info);border-color:#C9D6E6}
.gr-ledger .act.seats{color:var(--navy);border-color:var(--gold-soft)}.gr-ledger .act.revoke{color:var(--bad);border-color:#E6C4C4}
.gr-ledger .what{font-size:14px}
.gr-ledger .meta{grid-column:2;font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}
.gr-seats-pick{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin:0;display:grid;gap:6px}
.gr-seats-pick label{display:grid;grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:10px;color:var(--ink);font-size:13.5px}
.gr-impact{background:#FFF4F4;border:1px solid #E6C4C4;color:var(--bad);border-radius:10px;padding:10px 12px;margin:0;font-size:14px}
.gr-impact.none{background:var(--paper);border-color:var(--line);color:var(--muted)}
.gr-confirm{display:flex!important;flex-direction:row!important;gap:8px;align-items:center;color:var(--ink)!important}
.gr-confirm input{width:16px;height:16px}
dialog .form{max-height:calc(100vh - 40px);overflow:auto}
@media (max-width:980px){
  .gr-layout{grid-template-columns:minmax(0,1fr)}
  .gr-list{position:static;max-height:none}
  .tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:620px){
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gr-seat-table{min-width:0}
}
#grantDlg{width:min(600px,calc(100% - 24px))}
dialog .form input,dialog .form select,dialog .form textarea{min-width:0;width:100%}
.form-row > label{min-width:0}
.gr-more{display:grid;gap:6px}
.gr-more summary{cursor:pointer;color:var(--navy);font-size:13.5px;padding:4px 0}
.gr-more[open] summary{margin-bottom:6px}
.gr-more label{margin-bottom:6px}
@media (max-width:620px){.form-row{grid-template-columns:minmax(0,1fr)}}
dialog .form input[type=checkbox]{width:16px;height:16px;flex:0 0 auto}
.gr-confirm{justify-content:flex-start}
/* BUILD-08.0 governed outbox */
.out-kill{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;border-color:#BFDCCD}
.out-kill small{color:var(--muted)}
.out-kill.engaged{background:#FFF4F4;border-color:#E6C4C4}
.out-kill.engaged strong{color:var(--bad)}
.out-ledger-h{font-size:15px;margin:14px 0 4px}
#chanDlg,#killDlg{width:min(560px,calc(100% - 24px))}

/* S12-V1.1 brand: mother emblem in header, product logo in the gate */
.mark-emblem{height:56px;width:56px;border-radius:12px;object-fit:cover}
.gate-logo{max-width:340px;width:100%;height:auto;display:block;margin:24px auto 8px;border-radius:16px}
.gate{text-align:center}
