
:root{
  --bg:#eef4fb;--bg-soft:#f8fbff;--nav:#0f172a;--nav-2:#111d34;--card:#ffffff;--text:#112033;--muted:#64748b;--primary:#2563eb;--line:#dbe7f3;--line-2:#e9f0f8;--success:#16a34a;--warn:#f59e0b;--danger:#dc2626;--shadow:0 18px 50px rgba(15,23,42,.08);
}
*{box-sizing:border-box}
body{margin:0;font-family:'Cairo',sans-serif;color:var(--text);background:linear-gradient(180deg,#edf3fb 0%,#f8fbff 100%)}
a{text-decoration:none}
.layout-shell{display:grid;grid-template-columns:320px 1fr;min-height:100vh}
.side-nav{background:linear-gradient(180deg,var(--nav) 0%,var(--nav-2) 100%);padding:28px 22px;color:#fff;display:flex;flex-direction:column;gap:20px;position:sticky;top:0;height:100vh}
.side-brand{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.side-brand-mark{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);display:grid;place-items:center;font-weight:900;font-size:1.1rem;box-shadow:0 12px 30px rgba(37,99,235,.28)}
.side-brand-title{font-weight:800;font-size:1.15rem}.side-brand-subtitle{font-size:.92rem;color:#bfdbfe}
.menu-stack{display:flex;flex-direction:column;gap:10px}
.menu-link{display:flex;align-items:center;padding:14px 16px;border-radius:18px;color:#e5eefc;font-weight:800;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.menu-link:hover,.menu-link.active{background:rgba(255,255,255,.12);color:#fff}.menu-link.danger{margin-top:8px;background:rgba(220,38,38,.13)}
.side-card{margin-top:auto;border-radius:24px;padding:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.mini-label{font-size:.9rem;color:#cbd5e1}.mini-value{font-size:1.15rem;font-weight:800;margin:6px 0}.mini-muted{font-size:.9rem;color:#cbd5e1}
.content-shell{padding:26px 26px 40px}
.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px}.page-kicker{color:var(--primary);font-weight:800}.page-title{margin:6px 0 0;font-size:2rem;font-weight:800}.topbar-actions{display:flex;gap:10px;flex-wrap:wrap}
.content-body{max-width:1600px}
.hero-card,.glass-card,.metric-card,.soft-card{background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.82);border-radius:28px;box-shadow:var(--shadow);backdrop-filter:blur(14px)}
.hero-card{padding:24px 28px;background:linear-gradient(135deg,#2563eb 0%,#0f172a 100%);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px}
.hero-title{margin:0 0 8px;font-size:2rem;font-weight:900}.hero-text{margin:0;color:#dbeafe;max-width:850px}.hero-group{display:flex;gap:12px;flex-wrap:wrap}
.metric-card{padding:20px}.metric-value{font-size:2rem;font-weight:900;color:var(--primary)}.metric-label{color:var(--muted);font-weight:800}
.glass-card{padding:20px}.soft-card{padding:16px;background:#fbfdff;border:1px solid var(--line)}
.section-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.section-title{margin:0;font-size:1.15rem;font-weight:900}.section-subtitle{margin:4px 0 0;color:var(--muted)}
.table-modern thead th{background:#f8fbff;color:#334155;border-bottom:1px solid var(--line);font-weight:900;white-space:nowrap}.table-modern>:not(caption)>*>*{padding:14px 16px;border-color:var(--line)}
.stack-list{display:flex;flex-direction:column;gap:12px}.stack-item{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:20px;background:#fbfdff}.item-title{font-weight:900}.item-subtitle{color:var(--muted);font-size:.92rem}
.form-control,.form-select{border-radius:16px;padding:.9rem 1rem;border:1px solid #d6e1ee;background:#fff}.form-control:focus,.form-select:focus{box-shadow:0 0 0 .2rem rgba(37,99,235,.12);border-color:#93c5fd}.form-check-input{width:1.15rem;height:1.15rem}.form-label{font-weight:800}.form-text{color:var(--muted)}
.btn{border-radius:16px;font-weight:900;padding:.8rem 1rem}.btn-primary{background:var(--primary);border-color:var(--primary)}
.btn-soft{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.btn-dark{background:#0f172a;border-color:#0f172a}.btn-outline-primary{border-color:#93c5fd;color:#1d4ed8}.btn-outline-danger{border-color:#fecaca;color:#b91c1c}.btn-outline-secondary{border-color:#cbd5e1;color:#334155}
.badge-soft{display:inline-flex;align-items:center;padding:.45rem .7rem;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-weight:800}.badge-success{background:#ecfdf5;color:#15803d}.badge-warn{background:#fffbeb;color:#b45309}.badge-danger{background:#fef2f2;color:#b91c1c}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.toolbar{display:flex;gap:10px;flex-wrap:wrap}.empty-box{padding:32px;border-radius:24px;border:1px dashed #cbd5e1;background:#f8fbff;text-align:center;color:var(--muted)}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-card{width:min(460px,100%);padding:32px;border-radius:32px;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow)}
.table-actions{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:1200px){.layout-shell{grid-template-columns:1fr}.side-nav{position:relative;height:auto}.grid-3{grid-template-columns:1fr 1fr}}
@media (max-width:768px){.content-shell{padding:16px}.topbar{flex-direction:column}.hero-card{flex-direction:column;align-items:flex-start}.grid-2,.grid-3{grid-template-columns:1fr}}

.form-control-color{width:100%;height:56px;padding:.45rem;border-radius:18px}
.color-picker{cursor:pointer}
.form-hint{font-size:.88rem;color:var(--muted);margin-top:.35rem}
.preview-chip{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .85rem;border-radius:999px;background:#f8fbff;border:1px solid var(--line);font-weight:800}
.preview-swatch{width:18px;height:18px;border-radius:999px;border:2px solid rgba(15,23,42,.08)}
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.check-tile{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:13px 14px;border-radius:18px;background:#fbfdff}
.screen-preview-link{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1rem;border-radius:16px;font-weight:900;background:#0f172a;color:#fff}

.nav-section-title{margin-top:6px;margin-bottom:2px;color:#93c5fd;font-size:.85rem;font-weight:900;padding-inline:8px}
.table-search-input{max-width:320px}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:768px){.table-search-input{max-width:100%}}


.color-dot{display:inline-block;width:18px;height:18px;border-radius:50%;margin-inline:2px;border:2px solid rgba(15,23,42,.08);vertical-align:middle}
.multi-check-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:280px;overflow:auto;padding:8px;border:1px solid #e5e7eb;border-radius:18px;background:#fbfdff}
.check-chip{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid #e5edf6;font-weight:700}
.screen-preview-mini{--mini-columns:3;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#0f172a,#111827);color:#fff;border:1px solid rgba(255,255,255,.08)}
.screen-preview-mini .mini-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.screen-preview-mini .mini-logo{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-weight:800}
.screen-preview-mini .mini-title{font-size:1.15rem;font-weight:800}
.screen-preview-mini .mini-cards{display:grid;grid-template-columns:repeat(var(--mini-columns),minmax(0,1fr));gap:12px;padding:14px}
.screen-preview-mini .mini-card{border-radius:20px;padding:14px;background:rgba(255,255,255,.08);display:flex;flex-direction:column;gap:8px}
.screen-preview-mini .mini-card strong{font-size:1.35rem}.screen-preview-mini .mini-card em{font-style:normal;color:#cbd5e1}
.screen-preview-mini .mini-ticker{padding:12px 16px;background:#111827;border-top:1px solid rgba(255,255,255,.08);font-weight:700}
[data-card-style="outline"] .screen-preview-mini .mini-card{background:transparent;border:2px solid rgba(96,165,250,.7)}
[data-card-style="soft"] .screen-preview-mini .mini-card{background:rgba(255,255,255,.14)}
[data-scale="large"] .screen-preview-mini .mini-card strong{font-size:1.55rem}
[data-scale="xlarge"] .screen-preview-mini .mini-card strong{font-size:1.8rem}
.side-nav-scroll{flex:1;overflow:auto;padding-inline-end:4px}
.side-footer{border-top:1px solid rgba(255,255,255,.08);padding-top:12px;display:flex;flex-direction:column;gap:10px}
.side-toggle-btn,.side-logout{width:100%;justify-content:center}
body.side-collapsed .layout-shell{grid-template-columns:104px 1fr}
body.side-collapsed .side-brand-title,body.side-collapsed .side-brand-subtitle,body.side-collapsed .nav-section-title,body.side-collapsed .menu-link:not(.side-toggle-btn):not(.side-logout){font-size:0;justify-content:center}
body.side-collapsed .side-brand{justify-content:center}
body.side-collapsed .menu-link{padding-inline:10px}
.tenant-login-wrap{width:min(1180px,100%);display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch}.tenant-login-showcase{border-radius:34px;padding:34px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}
.tenant-showcase-top{display:flex;gap:18px;align-items:center}.tenant-showcase-logo{width:96px;height:96px;object-fit:contain;border-radius:24px;background:#fff;padding:10px}.tenant-showcase-title{margin:8px 0 0;font-size:2rem;font-weight:900}.tenant-showcase-subtitle{margin:.4rem 0 0;color:#dbeafe}.tenant-showcase-preview{padding:18px;border-radius:24px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16)}
.auth-card.wide{width:min(540px,100%)}
.preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.preset-tile{border:1px solid var(--line);background:#f8fbff;border-radius:18px;padding:15px 16px;font-weight:800}.preset-tile:hover{background:#eef6ff}
.sticky-preview-card{position:sticky;top:20px}
.designer-preview{min-height:430px;background:linear-gradient(180deg,var(--preview-bg1,#091428),var(--preview-bg2,#10244a));}.designer-preview .mini-header{background:rgba(255,255,255,.04)}.designer-preview .mini-logo{background:rgba(255,255,255,.16)}.designer-preview .mini-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1)}
.designer-preview .mini-cards{grid-template-columns:repeat(var(--mini-columns), minmax(0,1fr))}.designer-preview .mini-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.designer-preview .mini-metrics small{display:block;color:#cbd5e1;font-size:.95rem}.designer-preview .mini-metrics strong{display:block;font-size:1.55rem}
@media (max-width:1200px){.tenant-login-wrap{grid-template-columns:1fr}.sticky-preview-card{position:relative;top:auto}}

.side-nav{display:flex;flex-direction:column;min-height:100vh;}
.side-nav-scroll{overflow:auto;flex:1;scrollbar-width:thin;}
.side-footer{position:sticky;bottom:0;background:rgba(10,18,35,.96);padding-top:.75rem;}

.ltr-input{direction:ltr;text-align:left}.multi-check-box{display:flex;flex-wrap:wrap;gap:10px;max-height:260px;overflow:auto;padding:10px;border:1px dashed rgba(148,163,184,.35);border-radius:18px}.check-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0}.field-wrap .input-group input{border-inline:0}.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.preset-tile{border:1px solid rgba(148,163,184,.3);background:#fff;border-radius:16px;padding:12px;font-weight:700}.side-nav-scroll{scroll-behavior:smooth}.tenant-login-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}.tenant-login-showcase{border-radius:30px;padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:540px}.tenant-showcase-logo{width:88px;height:88px;object-fit:contain;border-radius:24px;background:rgba(255,255,255,.1);padding:10px}.tenant-showcase-top{display:flex;gap:18px;align-items:flex-start}.tenant-showcase-preview{background:rgba(255,255,255,.1);border-radius:24px;padding:18px}.tenant-showcase-preview code{display:block;direction:ltr;text-align:left;white-space:normal;word-break:break-all;color:#fff}.wide.tenant-auth-card{padding:30px}.screen-preview-mini{--mini-columns:3;--mini-card-min:240px;--mini-gap:12px;--mini-radius:24px;--mini-label-scale:1;--mini-value-scale:1;border-radius:24px;overflow:hidden;background:linear-gradient(180deg,var(--preview-bg1,#0f172a),var(--preview-bg2,#111827));color:#fff;border:1px solid rgba(255,255,255,.08)}.screen-preview-mini .mini-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.screen-preview-mini .mini-logo{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-weight:800}.screen-preview-mini .mini-title{font-size:1.15rem;font-weight:800}.screen-preview-mini .mini-cards{display:grid;grid-template-columns:repeat(var(--mini-columns),minmax(0,1fr));gap:var(--mini-gap);padding:14px}.screen-preview-mini .mini-card{border-radius:var(--mini-radius);padding:14px;background:rgba(255,255,255,.08);display:flex;flex-direction:column;gap:8px}.screen-preview-mini .mini-ticker{padding:12px 16px;background:#111827;border-top:1px solid rgba(255,255,255,.08);font-weight:700}.designer-preview .mini-cards{grid-template-columns:repeat(var(--mini-columns), minmax(0,1fr))}.designer-preview .mini-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.designer-preview .mini-metrics small{display:block;color:#cbd5e1;font-size:calc(.95rem * var(--mini-label-scale))}.designer-preview .mini-metrics strong{display:block;font-size:calc(1.55rem * var(--mini-value-scale))}.color-dot{display:inline-block;width:18px;height:18px;border-radius:999px;margin-inline-end:6px;border:1px solid rgba(0,0,0,.1)}
@media (max-width:980px){.tenant-login-wrap{grid-template-columns:1fr}.tenant-login-showcase{min-height:unset}}

.link-card{padding:16px 18px;border-radius:22px;background:#fbfdff;border:1px solid var(--line);height:100%}
.qr-box{display:flex;align-items:center;justify-content:center;min-height:148px;padding:10px;border-radius:18px;background:#fff;border:1px dashed #cbd5e1}
.qr-box img{max-width:132px;height:auto}


.preset-grid.rich-presets{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.preset-tile.visual-rich{position:relative;overflow:hidden;min-height:118px;border-radius:22px;color:#fff;text-align:right;padding:16px 15px;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 34px rgba(15,23,42,.12)}.preset-tile.visual-rich .preset-name{display:block;font-size:1rem;font-weight:800}.preset-tile.visual-rich .preset-desc{display:block;font-size:.78rem;opacity:.92;margin-top:4px}.preset-tile.visual-rich .preset-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.preset-tile.visual-rich .preset-badges span{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.12);padding:4px 8px;border-radius:999px;font-size:.72rem}.studio-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}.studio-tool-card{border:1px solid rgba(148,163,184,.24);border-radius:20px;padding:14px;background:linear-gradient(180deg,#fff,#f8fbff)}.studio-tool-card h3{font-size:1rem;margin:0 0 6px;font-weight:800}.studio-tool-card p{font-size:.88rem;color:#64748b;margin:0 0 12px}.studio-inline-controls{display:flex;gap:8px;flex-wrap:wrap}.studio-inline-controls .btn{flex:1 1 auto}.studio-save-hint{font-size:.8rem;color:#64748b;margin-top:10px}.compact-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.compact-badges span{display:inline-flex;align-items:center;gap:6px;background:#eef6ff;border:1px solid #dbeafe;border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:700;color:#1e3a8a}


/* readability hover fixes */
.menu-link:hover,.menu-link:focus{color:#ffffff!important;background:rgba(37,99,235,.22)!important;border-color:rgba(96,165,250,.35)!important}
.menu-link.active{color:#ffffff!important;background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:rgba(147,197,253,.25)!important}
.side-toggle-btn:hover,.side-logout:hover{color:#fff!important}
.side-nav .menu-link.danger:hover{background:rgba(220,38,38,.22)!important;color:#fff!important;border-color:rgba(248,113,113,.35)!important}
