/* Rack de quartos em tela cheia (sempre escuro, como painel de recepção/TV). */
.rack-layer{position:fixed;inset:0;z-index:70;overflow:auto;color:#e9edf4;display:flex;flex-direction:column;gap:14px;padding:18px 22px;
  background:radial-gradient(900px 400px at 100% 0%,rgba(214,180,106,.14),transparent 60%),linear-gradient(160deg,#13233f,#070e1a);
  --line:rgba(201,210,227,.12);--muted:#93a0b8;--panel:#111c30}
.rk-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.rk-brand{display:flex;align-items:center;gap:12px;flex:1;min-width:220px}
.rk-hotel{font-family:var(--serif);font-size:24px;color:#fff;line-height:1.1}
.rk-sub{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold2)}
.rk-occ{text-align:center;padding:6px 16px;border:1px solid rgba(214,180,106,.35);border-radius:12px}
.rk-occ b{display:block;font-family:var(--serif);font-size:26px;color:var(--gold2);line-height:1}.rk-occ small{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.rk-clock{font-family:var(--serif);font-size:38px;color:#fff;font-variant-numeric:tabular-nums;min-width:110px;text-align:center}
.rk-tools{display:flex;gap:6px}
.rk-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;font-weight:700;font-size:13px}
.rk-btn:hover{border-color:var(--gold2)}.rk-close{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}
.rk-filters{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}
.rk-filter{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);color:#c9d2e3;text-align:left;border-top:3px solid var(--st,var(--gold2))}
.rk-filter.st-gold{--st:var(--gold2)}
.rk-filter b{font-family:var(--serif);font-size:24px;color:#fff;line-height:1}.rk-filter span{font-size:11px;font-weight:650}
.rk-filter.active{background:rgba(214,180,106,.16);border-color:var(--gold2)}
.rk-body{flex:1}
.rk-floor{margin-bottom:16px}
.rk-floor h3{margin:0 0 10px;font-size:15px;color:var(--gold2);letter-spacing:.4px}.rk-floor h3 small{font-family:var(--sans);font-size:11px;color:var(--muted);font-weight:500}
.rk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(210px * var(--rk,1)),1fr));gap:12px}
.rk-card{position:relative;display:flex;flex-direction:column;gap:calc(6px * var(--rk,1));min-height:calc(150px * var(--rk,1));padding:calc(14px * var(--rk,1));text-align:left;
  border-radius:16px;color:#e9edf4;border:1px solid color-mix(in srgb,var(--st) 45%,transparent);overflow:hidden;
  background:linear-gradient(165deg,color-mix(in srgb,var(--st) 26%,#111c30),#0d1729 70%);box-shadow:0 10px 26px rgba(0,0,0,.28);transition:transform .12s}
.rk-card::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--st)}
.rk-card:hover{transform:translateY(-2px)}
.rk-top{display:flex;justify-content:space-between;align-items:center;gap:6px}
.rk-top strong{font-family:var(--serif);font-size:calc(34px * var(--rk,1));line-height:1;color:#fff}
.rk-type{color:#aab6cc;font-size:calc(12px * var(--rk,1))}
.rk-card .rc-state{font-size:calc(11.5px * var(--rk,1));color:color-mix(in srgb,var(--st) 70%,#fff)}
.rk-guest{margin-top:auto;padding-top:8px;border-top:1px dashed rgba(255,255,255,.14)}
.rk-guest b{display:block;font-size:calc(14px * var(--rk,1));color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rk-guest small{display:block;color:#aab6cc;font-size:calc(11.5px * var(--rk,1))}
.rk-card .hk{font-size:calc(10.5px * var(--rk,1))}
.rk-card .hk-limpo{background:rgba(76,192,138,.16);color:#6fd6a4}.rk-card .hk-sujo{background:rgba(230,162,60,.18);color:#f0b65c}
.rk-card .hk-limpando{background:rgba(59,182,204,.18);color:#62cde0}.rk-card .hk-manutencao{background:rgba(239,107,101,.18);color:#f38a85}
.rk-foot{text-align:center;font-size:11px;color:var(--muted)}
@media(max-width:1100px){.rk-filters{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){
  .rack-layer{padding:12px}.rk-clock{font-size:26px;min-width:0}.rk-hotel{font-size:18px}.rk-occ{display:none}
  .rk-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.rk-filter{padding:7px 8px}.rk-filter b{font-size:18px}.rk-filter span{font-size:9.5px}
  .rk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.rk-tools .rk-btn:not(.rk-close){display:none}
}
.rk-top strong.long{font-size:calc(22px * var(--rk,1));line-height:1.1}
