{{-- Odalama panosu stilleri (prefix: rmg-) — manifesto pmf- desenini izler. --}}
<style>
    /* ── Araç çubuğu ── */
    .rmg-bar { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;
        background:linear-gradient(135deg,#f8fafc,#f1f5f9); border:1px solid #e8ecf3; border-radius:14px;
        padding:.6rem .85rem; margin-bottom:.85rem; }
    .rmg-stats { display:flex; align-items:center; gap:.55rem; flex-wrap:wrap; }
    .rmg-stat { display:inline-flex; align-items:center; gap:6px; font-size:.76rem; font-weight:600; color:#64748b; }
    .rmg-stat i { color:#94a3b8; font-size:.78rem; }
    .rmg-stat b { color:#1e293b; font-weight:800; }
    .rmg-stat.ok i, .rmg-stat.ok b { color:#0d9488; }
    .rmg-stat.warn i, .rmg-stat.warn b { color:#d97706; }
    .rmg-stat.bad i, .rmg-stat.bad b { color:#dc2626; }
    .rmg-sep { width:1px; height:14px; background:#e2e8f0; }
    .rmg-hint { font-size:.7rem; font-weight:600; color:#94a3b8; }
    .rmg-hint i { color:#0d9488; margin-right:4px; }

    /* ── Rezervasyon bloğu ── */
    .rmg-sale { border:1px solid #e8ecf3; border-radius:16px; background:#fff; padding:.75rem .85rem; margin-bottom:.85rem; }
    .rmg-sale-head { display:flex; align-items:center; gap:10px; margin-bottom:.6rem; }
    .rmg-sale-av { width:32px; height:32px; flex:none; border-radius:11px; display:grid; place-items:center;
        background:linear-gradient(135deg,#14b8a6,#0d9488); color:#fff; font-weight:800; font-size:.82rem; }
    .rmg-sale-txt { min-width:0; display:flex; flex-direction:column; gap:1px; }
    .rmg-sale-code { border:none; background:transparent; padding:0; text-align:left; cursor:pointer;
        font-size:.82rem; font-weight:800; color:#0f766e; }
    .rmg-sale-code:hover { text-decoration:underline; text-underline-offset:2px; }
    .rmg-sale-sub { font-size:.7rem; font-weight:600; color:#94a3b8; display:flex; align-items:center; gap:5px; flex-wrap:wrap; }
    .rmg-sale-sub b { color:#334155; }
    .rmg-flag { border-radius:999px; padding:0 7px; font-size:.63rem; font-weight:800; background:#f1f5f9; color:#64748b; }
    .rmg-flag.warn { background:#fef3c7; color:#92400e; }

    .rmg-addbtn { margin-left:auto; display:inline-flex; align-items:center; gap:6px; white-space:nowrap;
        border:1px solid #99f6e4; background:#f0fdfa; color:#0f766e; border-radius:10px;
        padding:.35rem .7rem; font-size:.73rem; font-weight:800; cursor:pointer; transition:.15s; }
    .rmg-addbtn:hover { background:#ccfbf1; border-color:#5eead4; }
    .rmg-addbtn i { font-size:.65rem; }

    /* ── Katlanır formlar (oda ekle / düzenle) ── */
    .rmg-addform, .rmg-editform { display:flex; align-items:flex-end; gap:.5rem; flex-wrap:wrap;
        background:#f8fafc; border:1px solid #e8ecf3; border-radius:12px; padding:.6rem .7rem; margin-bottom:.65rem; }
    .rmg-addform[hidden], .rmg-editform[hidden] { display:none; }
    .rmg-f { display:flex; flex-direction:column; gap:3px; min-width:0; flex:1 1 130px; }
    .rmg-f.narrow { flex:0 0 76px; }
    .rmg-f > label { font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#94a3b8; }
    /* Defter dili: çerçeve okuma hâlinde yok, hover'da belirir, odakta mavi halka */
    .rmg-input { width:100%; background:transparent; border:1.5px solid transparent; border-radius:7px;
        padding:.28rem .42rem; font-size:.79rem; font-weight:650; color:#0f172a;
        transition:border-color .13s, box-shadow .13s, background .13s; }
    .rmg-input::placeholder { color:#c3cddc; font-weight:500; font-style:italic; }
    .rmg-input:hover { background:#fff; border-color:#dbe6f7; }
    .rmg-input:focus { outline:none; background:#fff; border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.18); }
    .rmg-chk { display:inline-flex; align-items:center; gap:6px; font-size:.73rem; font-weight:700; color:#475569;
        cursor:pointer; padding-bottom:.35rem; white-space:nowrap; }
    .rmg-chk input { accent-color:#0d9488; }
    .rmg-f-acts { display:flex; align-items:center; gap:.35rem; margin-left:auto; }
    .rmg-cancel { border:1.5px solid #e2e8f0; background:#fff; color:#64748b; font-weight:700; font-size:.73rem;
        border-radius:9px; padding:.32rem .7rem; cursor:pointer; }
    .rmg-cancel:hover { background:#f1f5f9; }
    .rmg-save { border:none; background:linear-gradient(135deg,#14b8a6,#0d9488); color:#fff; font-weight:800; font-size:.74rem;
        border-radius:9px; padding:.34rem .85rem; cursor:pointer; box-shadow:0 4px 12px rgba(13,148,136,.28); }
    .rmg-del { border:1.5px solid #fecaca; background:#fff; color:#dc2626; border-radius:9px;
        padding:.32rem .6rem; cursor:pointer; font-size:.72rem; }
    .rmg-del:hover { background:#fef2f2; }

    /* ── Havuz + odalar ── */
    .rmg-cols { display:grid; grid-template-columns:minmax(190px,238px) 1fr; gap:.7rem; align-items:start; }

    .rmg-pool { border:1.5px dashed #cbd5e1; border-radius:14px; background:#f8fafc; padding:.6rem .55rem; }
    .rmg-pool-h { display:flex; align-items:center; gap:6px; font-size:.66rem; font-weight:800; text-transform:uppercase;
        letter-spacing:.04em; color:#64748b; margin-bottom:.5rem; }
    .rmg-pool-h i { color:#f59e0b; }
    .rmg-pool-h b { margin-left:auto; background:#fff; border:1px solid #e2e8f0; border-radius:999px;
        padding:0 7px; font-size:.68rem; color:#334155; }
    .rmg-pool-empty { display:flex; align-items:center; gap:6px; font-size:.7rem; font-weight:600; color:#94a3b8; padding:.35rem .2rem; }
    .rmg-pool-empty i { color:#10b981; }
    .rmg-pool-empty[hidden] { display:none; }

    .rmg-rooms { display:grid; grid-template-columns:repeat(auto-fill,minmax(232px,1fr)); gap:.6rem; align-content:start; }
    .rmg-room { border:1.5px solid #e8ecf3; border-radius:14px; background:#fff; padding:.55rem .6rem; transition:.16s; }
    .rmg-room.is-full { border-color:#99f6e4; background:#f0fdfa; }
    .rmg-room.is-over { border-color:#fca5a5; background:#fef2f2; }
    .rmg-room-h { display:flex; align-items:center; gap:6px; margin-bottom:.45rem; flex-wrap:wrap; }
    .rmg-room-h > i { color:#94a3b8; font-size:.76rem; }
    .rmg-room-h b { font-size:.79rem; font-weight:800; color:#1e293b; }
    .rmg-type { background:#f1f5f9; color:#64748b; border-radius:999px; padding:0 7px; font-size:.62rem; font-weight:800; }
    .rmg-type.xb { background:#ecfeff; color:#0e7490; }
    .rmg-type.xb i { font-size:.55rem; }
    .rmg-beds { margin-left:auto; font-size:.68rem; font-weight:800; color:#64748b;
        background:#f8fafc; border:1px solid #e8ecf3; border-radius:999px; padding:0 7px; }
    .rmg-room.is-full .rmg-beds { background:#ccfbf1; border-color:#5eead4; color:#0f766e; }
    .rmg-room.is-over .rmg-beds { background:#fee2e2; border-color:#fca5a5; color:#b91c1c; }
    .rmg-ico { width:24px; height:24px; border-radius:8px; border:1px solid #e8ecf3; background:#fff; color:#94a3b8;
        cursor:pointer; font-size:.64rem; transition:.15s; }
    .rmg-ico:hover { border-color:#5eead4; color:#0f766e; background:#f0fdfa; }
    .rmg-room-f { display:flex; align-items:center; gap:5px; margin-top:.45rem; padding-top:.4rem;
        border-top:1px dashed #e8ecf3; font-size:.66rem; font-weight:700; color:#94a3b8; }
    .rmg-room-f i { color:#cbd5e1; }

    .rmg-slots { display:flex; flex-direction:column; gap:.35rem; min-height:38px; }
    .rmg-ghost { display:flex; align-items:center; gap:6px; border:1.5px dashed #e2e8f0; border-radius:11px;
        padding:.4rem .55rem; font-size:.68rem; font-weight:700; color:#cbd5e1; }

    /* Sürükleme hedefi */
    .rmg-over { outline:2px dashed #14b8a6; outline-offset:2px; background:#f0fdfa; }

    /* ── Yolcu kartı ── */
    .rmg-pax { display:flex; align-items:center; gap:7px; background:#fff; border:1.5px solid #e8ecf3;
        border-radius:11px; padding:.32rem .42rem; cursor:grab; transition:.15s; }
    .rmg-pax:hover { border-color:#5eead4; box-shadow:0 3px 10px rgba(13,148,136,.12); }
    .rmg-pax.is-dragging { opacity:.45; cursor:grabbing; }
    .rmg-pax.is-saving { border-color:#fbbf24; background:#fffbeb; }
    .rmg-pax.is-ok { border-color:#5eead4; background:#f0fdfa; }
    .rmg-pax-av { width:26px; height:26px; flex:none; border-radius:9px; display:grid; place-items:center;
        background:#e2e8f0; color:#475569; font-weight:800; font-size:.72rem; }
    .rmg-pax-av.m { background:#dbeafe; color:#1d4ed8; }
    .rmg-pax-av.f { background:#fce7f3; color:#be185d; }
    .rmg-pax-txt { min-width:0; display:flex; flex-direction:column; gap:1px; }
    .rmg-pax-txt b { font-size:.74rem; font-weight:700; color:#1e293b; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .rmg-pax-txt small { display:flex; align-items:center; gap:4px; font-size:.63rem; color:#94a3b8; font-weight:600; flex-wrap:wrap; }
    .rmg-tag { background:#f1f5f9; color:#64748b; border-radius:999px; padding:0 5px; font-size:.58rem; font-weight:800; }
    .rmg-tag.baby { background:#fef3c7; color:#92400e; }
    .rmg-dot { width:3px; height:3px; border-radius:50%; background:#cbd5e1; }
    .rmg-move { margin-left:auto; flex:none; max-width:74px; border:1px solid #e8ecf3; border-radius:8px;
        background:#f8fafc; color:#64748b; font-size:.63rem; font-weight:700; padding:2px 3px; cursor:pointer; }
    .rmg-move:focus { outline:none; border-color:#14b8a6; }

    /* ── Boş / bilgi durumları ── */
    .rmg-noroom { grid-column:1 / -1; display:flex; flex-direction:column; align-items:center; gap:5px;
        border:1.5px dashed #e2e8f0; border-radius:14px; padding:1.1rem .8rem; text-align:center; }
    .rmg-noroom i { font-size:1.35rem; color:#cbd5e1; }
    .rmg-noroom b { font-size:.79rem; font-weight:800; color:#475569; }
    .rmg-noroom span { font-size:.7rem; font-weight:600; color:#94a3b8; margin-bottom:.35rem; }

    .rmg-empty { display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center;
        color:#94a3b8; padding:2.6rem 1rem; }
    .rmg-empty i { font-size:1.9rem; color:#cbd5e1; }
    .rmg-empty b { font-size:.86rem; font-weight:800; color:#475569; }
    .rmg-empty span { font-size:.74rem; font-weight:600; }

    .rmg-note { display:flex; gap:8px; align-items:flex-start; border-radius:12px; padding:.75rem .9rem;
        font-size:.76rem; line-height:1.55; font-weight:600; }
    .rmg-note.warn { background:#fffbeb; border:1px solid #fde68a; color:#92400e; }
    .rmg-note i { margin-top:2px; }

    @media (max-width:720px) {
        .rmg-cols { grid-template-columns:1fr; }
        .rmg-bar { flex-direction:column; align-items:stretch; }
        .rmg-addform, .rmg-editform { flex-direction:column; align-items:stretch; }
        .rmg-f-acts { margin-left:0; justify-content:flex-end; }
    }
</style>
