/* ==========================================================================
   ERD Studio — page-level styles for index.php / settings.php.
   Loads after site.css (shared chrome — nav, buttons, theme, footer) and
   only adds what THIS project's own pages need: hero, feature grid,
   dashboard "my diagrams" grid, and the settings page. erd.php (the
   diagram editor itself) does not load this file — it is a fully
   self-contained tool page with its own embedded styles, same pattern
   as every other *.dilman.dev project's editor/simulator page.
   ========================================================================== */

/* ---------- shared small bits ---------- */
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:12.5px;font-weight:600;font-family:var(--font-mono);letter-spacing:.01em;}
.badge-accent{background:var(--gold-dim);color:var(--gold);border:1px solid rgba(91,33,182,.25);}
.nav-btn-lg{padding:14px 28px;font-size:15.5px;}
.nav-btn-sm{padding:8px 16px;font-size:13px;}
.muted{color:var(--text2);}

/* ---------- hero ---------- */
.erd-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;padding:28px 0 56px;}
.hero-inner h1{font-family:'Noto Kufi Arabic',sans-serif;font-size:clamp(30px,4.4vw,50px);line-height:1.1;letter-spacing:-.02em;color:var(--text0);margin:18px 0 16px;}
.hero-sub{font-size:16.5px;color:var(--text2);max-width:520px;line-height:1.6;margin:0 0 26px;}
.hero-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px;}
.hero-trust{font-size:12.5px;color:var(--text3);margin:0;}
.hero-notice{display:flex;align-items:flex-start;gap:10px;background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-sm);padding:14px 16px;margin:4px 0 22px;font-size:13.5px;line-height:1.55;color:var(--text2);max-width:520px;}
.hero-notice::before{content:"";flex:0 0 8px;width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px var(--gold-dim);}
.hero-welcome-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r-sm);background:var(--gold-dim);color:var(--gold);margin-bottom:16px;}
.hero-visual{position:relative;min-height:320px;}
.hero-erd-svg{width:100%;height:auto;filter:drop-shadow(0 20px 50px rgba(0,0,0,.35));}
@media(max-width:900px){
  .erd-hero{grid-template-columns:1fr;gap:28px;padding-top:8px;}
  .hero-visual{order:-1;min-height:220px;}
}

/* ---------- feature grid ---------- */
.erd-features{padding:20px 0 48px;}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;}
.feature-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;transition:border-color .2s,transform .2s;}
.feature-card:hover{border-color:var(--line2);transform:translateY(-2px);}
.feature-icon{width:40px;height:40px;border-radius:10px;background:var(--gold-dim);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.feature-card h3{font-family:'Noto Kufi Arabic',sans-serif;font-size:15.5px;color:var(--text0);margin:0 0 8px;}
.feature-card p{color:var(--text2);font-size:13px;line-height:1.6;margin:0;}
html[dir="rtl"] .feature-card{text-align:right;}

/* ---------- dashboard / "my diagrams" ---------- */
.dashboard-section{padding:28px 0 60px;border-top:1px solid var(--line);margin-top:12px;}
.dashboard-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px;flex-wrap:wrap;}
.dashboard-head h2{font-family:'Noto Kufi Arabic',sans-serif;font-size:22px;color:var(--text0);margin:0;}
.dashboard-sub{font-size:12.5px;color:var(--text3);margin:4px 0 0;}
.nav-btn-disabled{opacity:.45;cursor:not-allowed;pointer-events:none;}
.diagram-limit-note{background:var(--rose-dim);color:var(--rose);border:1px solid var(--rose-dim);border-radius:var(--r-sm);padding:9px 14px;font-size:13px;font-weight:600;margin:-8px 0 20px;}
.empty-state{background:var(--surface);border:1px dashed var(--line2);border-radius:var(--r-lg);padding:36px;text-align:center;color:var(--text2);}
.empty-state p{margin:0 0 14px;}

.diagrams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;}
.diagram-card{position:relative;display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);text-decoration:none;color:inherit;transition:border-color .2s,transform .2s;z-index:1;}
.diagram-card.menu-open{z-index:30;}
.diagram-card:hover{border-color:var(--gold);transform:translateY(-2px);text-decoration:none;}
.diagram-card-thumb{height:100px;background:var(--surface2);color:var(--text3);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);border-radius:var(--r-lg) var(--r-lg) 0 0;overflow:hidden;}
.diagram-card-thumb svg{width:70%;height:70%;}
.diagram-card-body{padding:14px 16px;}
.diagram-card-name{font-weight:600;color:var(--text0);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.diagram-card-meta{font-size:12px;color:var(--text3);margin-top:4px;font-family:var(--font-mono);}
.diagram-card-menu{position:absolute;top:8px;right:8px;}
html[dir="rtl"] .diagram-card-menu{right:auto;left:8px;}
.diagram-card-menu-btn{width:28px;height:28px;border-radius:8px;border:1px solid transparent;background:rgba(0,0,0,.35);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(4px);}
.diagram-card-menu-btn:hover{background:rgba(0,0,0,.55);}
.diagram-card-dropdown{position:absolute;top:32px;right:0;width:160px;padding:6px;display:none;z-index:40;}
html[dir="rtl"] .diagram-card-dropdown{right:auto;left:0;}
.diagram-card-dropdown.open{display:block;}
.diagram-card-dropdown button{width:100%;text-align:left;background:none;border:none;padding:9px 10px;border-radius:var(--r-sm);color:var(--text1);font-size:13px;font-weight:500;cursor:pointer;font-family:var(--font);}
html[dir="rtl"] .diagram-card-dropdown button{text-align:right;}
.diagram-card-dropdown button:hover{background:var(--overlay);color:var(--text0);}
.diagram-card-dropdown button.danger{color:var(--rose);}
.diagram-card-dropdown button.danger:hover{background:var(--rose-dim);}

/* ---------- settings page ---------- */
.settings-wrap{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:22px;}
.settings-wrap h1{font-family:'Noto Kufi Arabic',sans-serif;font-size:26px;color:var(--text0);margin:0 0 4px;}
.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;}
.settings-card h2{font-size:15.5px;color:var(--text0);margin:0 0 10px;font-family:'Noto Kufi Arabic',sans-serif;}
.settings-card p{color:var(--text2);font-size:13.5px;line-height:1.6;margin:0 0 16px;}
.settings-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);gap:12px;flex-wrap:wrap;}
.settings-row:first-of-type{border-top:none;padding-top:0;}
.settings-row-info{min-width:0;}
.settings-row-title{font-weight:600;color:var(--text0);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.settings-row-sub{font-size:12px;color:var(--text3);font-family:var(--font-mono);margin-top:2px;}
.settings-row-actions{display:flex;gap:8px;flex-shrink:0;}
.icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--line2);background:var(--surface2);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;}
.icon-btn:hover{border-color:var(--gold);color:var(--text0);}
.icon-btn.danger:hover{border-color:var(--rose);color:var(--rose);background:var(--rose-dim);}
.settings-card.danger-zone{border-color:rgba(240,99,122,.3);}
.settings-card.danger-zone h2{color:var(--rose);}

/* ---------- admin quick stat cards (used by admin/index.php) ---------- */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:26px;}
.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;}
.stat-card .stat-value{font-family:'Noto Kufi Arabic',sans-serif;font-size:28px;color:var(--text0);font-weight:700;}
.stat-card .stat-label{font-size:12px;color:var(--text2);margin-top:4px;}
