/* Panel arayüzü — sitenin token'larını kullanır (main.css'ten sonra yüklenir). */

.panel-body{background:var(--bg,#151417);min-height:100vh;display:flex;flex-direction:column;}
.panel-body .mono{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:13px;}
.pn-muted{color:#8b8794;font-size:13px;}
.pn-note{color:#8b8794;font-size:13px;}

/* Üst çubuk */
.pn-topbar{border-bottom:1px solid rgba(255,255,255,.09);background:var(--bg-raised,#1c1b1f);}
.pn-topbar-inner{max-width:1320px;margin:0 auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.pn-topbar-right{display:flex;align-items:center;gap:20px;}
.pn-user{font-size:13px;color:#a9a6b3;}
.pn-logout{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#a9a6b3;}
.pn-logout:hover{color:#fff;}

/* Kabuk: kenar menü + içerik */
.pn-shell{flex:1;max-width:1320px;width:100%;margin:0 auto;padding:28px;display:grid;grid-template-columns:214px 1fr;gap:28px;align-items:start;}
.pn-side{position:sticky;top:22px;display:grid;gap:4px;}
.pn-side-link{
  display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:10px;
  color:#a9a6b3;font-size:14px;border:1px solid transparent;
}
.pn-side-link i{width:18px;text-align:center;}
.pn-side-link:hover{color:#fff;background:rgba(255,255,255,.04);}
.pn-side-link.is-active{color:#fff;background:var(--bg-raised,#1c1b1f);border-color:rgba(255,255,255,.1);}
.pn-main{min-width:0;}
.pn-plain{flex:1;max-width:1320px;width:100%;margin:0 auto;padding:40px 28px 60px;}
.pn-plain.is-narrow{max-width:1080px;}

/* Sayfa başlığı */
.pn-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:24px;}
.pn-head h1{font-family:'Oswald',sans-serif;font-size:28px;margin:0 0 6px;}
.pn-head p{margin:0;color:#a9a6b3;font-size:14px;}

/* Kart */
.pn-card{
  background:var(--bg-raised,#1c1b1f);border:1px solid rgba(255,255,255,.09);
  border-radius:14px;padding:22px 24px;margin-bottom:16px;
}
.pn-card-title{font-family:'Oswald',sans-serif;font-size:15px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 18px;}

/* Form alanları */
.pn-label{display:block;font-size:13px;color:#a9a6b3;margin-bottom:14px;width:100%;}
.pn-label .req{color:var(--accent,#d98a63);}
.pn-label-sm{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8b8794;margin-bottom:4px;}
.pn-input{
  display:block;width:100%;margin-top:6px;background:#151417;color:#e8e6ec;
  border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:10px 14px;font:inherit;font-size:14px;
}
.pn-input:focus{outline:none;border-color:var(--accent,#d98a63);}
.pn-input::placeholder{color:#6b6875;}
textarea.pn-input{resize:vertical;line-height:1.6;}
.pn-help{color:#8b8794;font-size:12px;margin:-8px 0 14px;}
.pn-inline-check{display:flex;align-items:center;gap:9px;color:#a9a6b3;font-size:13px;}
.pn-form label{display:block;font-size:13px;color:#a9a6b3;margin-bottom:16px;}
.pn-form input{
  display:block;width:100%;margin-top:6px;background:#151417;color:#e8e6ec;
  border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:11px 14px;font:inherit;font-size:14px;
}
.pn-form input:focus{outline:none;border-color:var(--accent,#d98a63);}

/* Uyarı kutuları */
.pn-alert{
  display:flex;gap:12px;align-items:flex-start;padding:14px 18px;border-radius:12px;
  border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);
  font-size:14px;color:#d8d5dd;margin-bottom:18px;
}
.pn-alert i{margin-top:2px;}
.pn-alert.is-ok{border-color:rgba(106,168,116,.45);}
.pn-alert.is-ok i{color:var(--green,#6aa874);}
.pn-alert.is-warn{border-color:rgba(217,138,99,.45);}
.pn-alert.is-warn i{color:var(--accent,#d98a63);}
.pn-alert.is-error{border-color:rgba(200,90,90,.5);}
.pn-alert.is-error i{color:#c85a5a;}
.pn-alert code{font-family:'JetBrains Mono',monospace;font-size:12px;color:#e8e6ec;}

/* Giriş / kayıt */
.pn-auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;}
.pn-auth-card{background:var(--bg-raised,#1c1b1f);border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:34px;}
.pn-auth-card h1{font-family:'Oswald',sans-serif;font-size:24px;margin:0 0 8px;}
.pn-auth-sub{color:#a9a6b3;font-size:14px;margin-bottom:22px;}
.pn-auth-tabs{display:flex;gap:8px;margin-bottom:24px;}
.pn-auth-tabs a{
  flex:1;text-align:center;padding:9px 12px;border-radius:999px;font-size:13px;
  border:1px solid rgba(255,255,255,.14);color:#a9a6b3;
}
.pn-auth-tabs a.is-active{background:#fff;color:#151417;border-color:#fff;font-weight:600;}
.pn-auth-foot{margin:18px 0 0;font-size:13px;color:#8b8794;}
.pn-auth-foot a,.pn-usage-text a{color:var(--accent,#d98a63);}
.pn-auth-aside h2{font-family:'Oswald',sans-serif;font-size:26px;margin:0 0 12px;}
.pn-auth-aside p{color:#a9a6b3;font-size:15px;line-height:1.7;max-width:46ch;}
.pn-auth-aside ul{list-style:none;padding-left:0;margin:22px 0 0;display:grid;gap:12px;}
.pn-auth-aside li{display:flex;gap:12px;color:#a9a6b3;font-size:14px;}
.pn-auth-aside li i{color:var(--green,#6aa874);}

/* Planlar */
.pn-plan{
  position:relative;height:100%;background:var(--bg-raised,#1c1b1f);
  border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:24px;
  display:flex;flex-direction:column;
}
.pn-plan.is-popular{border-color:rgba(217,138,99,.5);}
.pn-plan.is-current{border-color:rgba(106,168,116,.55);}
.pn-plan h3{font-family:'Oswald',sans-serif;font-size:18px;margin:0 0 10px;}
.pn-plan-price{font-family:'Oswald',sans-serif;font-size:30px;margin-bottom:18px;}
.pn-plan-price span{font-family:'Inter',sans-serif;font-size:13px;color:#8b8794;}
.pn-plan ul{list-style:none;padding-left:0;margin:0 0 22px;display:grid;gap:10px;flex:1;}
.pn-plan li{display:flex;gap:10px;font-size:13.5px;color:#a9a6b3;}
.pn-plan li i{color:var(--green,#6aa874);font-size:12px;margin-top:3px;}
.pn-plan-badge{
  position:absolute;top:-11px;left:24px;background:var(--accent,#d98a63);color:#151417;
  font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px;font-weight:600;
}
.btn.is-disabled{opacity:.5;pointer-events:none;display:inline-block;text-align:center;}

/* Kullanım çubuğu */
.pn-usage{margin-bottom:22px;}
.pn-usage-bar{height:6px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;}
.pn-usage-bar span{display:block;height:100%;background:var(--accent,#d98a63);}
.pn-usage-text{font-size:12.5px;color:#8b8794;margin-top:8px;}

/* Tablo */
.pn-table-wrap{border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow-x:auto;}
.pn-table{width:100%;border-collapse:collapse;font-size:14px;min-width:720px;}
.pn-table th{
  text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8b8794;
  font-weight:500;padding:13px 18px;background:rgba(255,255,255,.03);
}
.pn-table td{padding:14px 18px;border-top:1px solid rgba(255,255,255,.07);vertical-align:top;}
.pn-pill{
  display:inline-block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  padding:3px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.18);color:#a9a6b3;
}
.pn-pill.is-live{border-color:rgba(106,168,116,.5);color:var(--green,#6aa874);}
.pn-row-actions{white-space:nowrap;text-align:right;}
.pn-icon-btn{
  display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;
  border:1px solid rgba(255,255,255,.16);border-radius:9px;color:#a9a6b3;margin-left:6px;
}
.pn-icon-btn:hover{color:#fff;border-color:rgba(255,255,255,.4);}

/* Boş durum */
.pn-empty{
  text-align:center;padding:56px 34px;background:var(--bg-raised,#1c1b1f);
  border:1px solid rgba(255,255,255,.09);border-radius:14px;
}
/* Sadece boş-durum kutusunun kendi büyük ikonu — içerideki butonun ikonuna bulaşmasın */
.pn-empty > i{font-size:28px;color:var(--accent,#d98a63);margin-bottom:16px;display:block;}
.pn-empty h2{font-family:'Oswald',sans-serif;font-size:20px;margin:0 0 8px;}
.pn-empty p{color:#a9a6b3;font-size:14px;max-width:52ch;margin:0 auto 22px;}

/* Pasaport formu sekmeleri */
.pn-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 18px;}
.pn-tab{
  background:transparent;border:1px solid rgba(255,255,255,.14);color:#a9a6b3;
  border-radius:999px;padding:9px 18px;font:inherit;font-size:14px;cursor:pointer;
}
.pn-tab:hover{color:#fff;}
.pn-tab.is-active{background:#fff;color:#151417;border-color:#fff;font-weight:600;}
.pn-layer{display:none;}
.pn-layer.is-active{display:block;}
.pn-layer-hint{color:#8b8794;font-size:13.5px;margin-bottom:16px;max-width:80ch;}

.pn-link-row{
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
  margin-top:6px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);
}
.pn-link-row a{color:var(--accent,#d98a63);word-break:break-all;}
.pn-qr{background:#fff;padding:8px;border-radius:8px;line-height:0;}
.pn-qr img,.pn-qr canvas{display:block;}

.pn-save-bar{
  position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
  background:var(--bg-raised,#1c1b1f);border:1px solid rgba(255,255,255,.09);border-radius:14px;
  padding:16px 20px;margin-top:20px;
}

.pn-dl{margin:0 0 22px;display:grid;gap:1px;background:rgba(255,255,255,.06);border-radius:10px;overflow:hidden;}
.pn-dl > div{display:grid;grid-template-columns:40% 1fr;gap:14px;padding:11px 14px;background:var(--bg-raised,#1c1b1f);}
.pn-dl dt{color:#8b8794;font-size:13.5px;}
.pn-dl dd{margin:0;font-size:13.5px;}

.pn-footer{border-top:1px solid rgba(255,255,255,.09);padding:18px 0;margin-top:auto;}
.pn-footer .pn-topbar-inner{padding-top:0;padding-bottom:0;font-size:12.5px;color:#8b8794;}
.pn-footer a{color:#a9a6b3;}

@media (max-width:900px){
  .pn-shell{grid-template-columns:1fr;padding:20px;}
  .pn-side{position:static;grid-auto-flow:column;overflow-x:auto;gap:8px;}
  .pn-side-link span{white-space:nowrap;}
  .pn-auth{grid-template-columns:1fr;gap:28px;}
  .pn-auth-aside{order:-1;}
  .pn-topbar-inner{padding:14px 20px;}
}

/* GTIN doğrulama satırı */
.pn-gtin-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-8px 0 10px;}
.pn-mini-btn{
  background:transparent;border:1px solid rgba(255,255,255,.18);color:#a9a6b3;
  border-radius:999px;padding:5px 13px;font:inherit;font-size:12.5px;cursor:pointer;white-space:nowrap;
}
.pn-mini-btn:hover{color:#fff;border-color:rgba(255,255,255,.4);}
.pn-gtin-result{font-size:12.5px;color:#8b8794;}
.pn-gtin-result.is-good{color:var(--green,#6aa874);}
.pn-gtin-result.is-bad{color:#c85a5a;}

/* Düzenleme kilidi (abonelik katalogdan küçükse) */
.pn-icon-btn.is-locked{border-color:rgba(217,138,99,.45);color:var(--accent,#d98a63);}
.pn-passport-form.is-locked .pn-input{opacity:.65;cursor:not-allowed;}
.pn-passport-form.is-locked .pn-mini-btn{display:none;}

/* Buton içindeki ikonlar butonun rengini alır ve satır içinde kalır */
.btn i{display:inline-block;color:inherit;font-size:inherit;margin:0;vertical-align:baseline;}

/* Tam genişlikteki butonlarda yazı ortalansın (.btn inline-flex, varsayılanı sola yaslıyor) */
.panel-body .btn.w-100,
.pn-plan .btn,
.pn-plan .btn.is-disabled{justify-content:center;text-align:center;}
/* Plan kartlarında buton/form her zaman kartın altına yapışsın */
.pn-plan form{margin-top:auto;}
.pn-plan .btn.is-disabled{width:100%;}
