/* === YBH Kurumsal Panel Layout === */
:root{
  --brand:#111827;
  --bg:#f7f8fb; --card:#ffffff; --text:#111827; --muted:#6b7280; --line:#e5e7eb;
}
*{box-sizing:border-box}
body{ margin:0; background:var(--bg); color:var(--text); font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif; }
a{ color:inherit }

.topbar{
  position: sticky; top:0; z-index: 50;
  height:56px; display:flex; align-items:center; justify-content:space-between;
  padding:0 16px; background:#fff; border-bottom:1px solid var(--line);
}
.brand{ display:flex; align-items:center; gap:10px; }
.brand-logo{ height:36px; display:block; }
.brand-fallback{ font-weight:700; font-size:18px; color:var(--text); }

.layout{ display:grid; grid-template-columns: 240px 1fr; min-height: calc(100vh - 56px); }
.sidebar{
  border-right:1px solid var(--line); background:#fff; padding:12px;
  position:sticky; top:56px; height: calc(100vh - 56px); overflow:auto;
}
.side-link{
  display:block; padding:10px 12px; border-radius:10px; color:var(--text); text-decoration:none;
  border:1px solid transparent; margin-bottom:6px;
}
.side-link:hover{ background:#f3f4f6; }
.side-link.active{ background: rgba(17,24,39,.06); border-color: rgba(17,24,39,.08); font-weight:600; }

.content{ padding:18px; }
.card{ background:var(--card); border:1px solid var(--line); border-radius:14px; padding:16px; box-shadow:0 1px 2px rgba(0,0,0,.03); }
.btn{ display:inline-block; padding:8px 12px; border:1px solid var(--line); border-radius:10px; text-decoration:none; cursor:pointer; background:#fff; }
.btn.small{ padding:6px 10px; font-size:14px; }
.alert{ padding:10px; border-radius:8px; margin:8px 0; }
.alert.ok{ background:#f6ffed; border:1px solid #b7eb8f; }
.alert.err{ background:#fff2f0; border:1px solid #ffccc7; }
label.small{ display:block; color:var(--muted); font-size:12px; margin-bottom:4px; }
.form-grid{ display:grid; grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); gap:12px; }
input[type="text"],input[type="email"],input[type="password"],input[type="file"],textarea,select{
  width:100%; padding:8px; border:1px solid #d1d5db; border-radius:8px; background:#fff;
}
.preview img{ max-height:48px; display:block; margin-top:6px; }

@media (max-width: 1024px){
  .layout{ grid-template-columns: 72px 1fr; }
  .side-link{ text-indent:-9999px; position:relative; height:40px; }
  .side-link::after{ content:'•'; text-indent:0; position:absolute; left:12px; top:9px; }
}
