:root{--navy:#082445;--blue:#0ea5e9;--sky:#e0f2fe;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans KR",Arial,sans-serif;color:var(--ink);background:#f8fafc}.navbar{background:rgba(8,36,69,.98)}.brand-logo{width:38px;height:38px;border-radius:12px}.hero{background:linear-gradient(135deg,#082445 0%,#0b3a69 56%,#0ea5e9 100%);color:white;border-radius:0 0 32px 32px}.hero-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(6px)}.product-card{border:1px solid var(--line);border-radius:22px;box-shadow:0 16px 40px rgba(15,23,42,.06);transition:.2s}.product-card:hover{transform:translateY(-3px);box-shadow:0 20px 52px rgba(14,165,233,.16)}.price{font-size:2rem;font-weight:800;color:var(--navy)}.btn-ocean{background:var(--blue);color:white;border:none}.btn-ocean:hover{background:#0284c7;color:white}.section-title{font-weight:800;color:var(--navy)}.footer{background:#071d36;color:#cbd5e1}.footer a{color:#e0f2fe}.admin-sidebar{background:#082445;min-height:100vh;padding:1rem}.admin-sidebar-inner{position:sticky;top:0;min-height:100vh;padding-top:.25rem}.admin-nav a,.admin-sidebar a{color:#dbeafe;text-decoration:none;display:block;padding:.65rem 1rem;border-radius:12px}.admin-nav a:hover,.admin-sidebar a:hover{background:rgba(255,255,255,.1)}.admin-main{background:#f8fafc;min-height:100vh;overflow-x:auto}@media(max-width:767.98px){.admin-sidebar{min-height:auto}.admin-sidebar-inner{position:static;min-height:auto}.admin-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem}.admin-main{min-height:auto}}.table-card{background:white;border-radius:18px;border:1px solid var(--line);box-shadow:0 10px 30px rgba(15,23,42,.05)}.key-box{border:1px solid var(--line);border-radius:18px;background:white;padding:1.4rem}.badge-ready{background:#dcfce7;color:#166534}.badge-issued{background:#dbeafe;color:#1d4ed8}.badge-disabled{background:#fee2e2;color:#991b1b}

.key-warning {
  border-left: 5px solid #dc3545;
  background: #fff5f5;
}
.key-warning strong {
  display: block;
  margin-bottom: 4px;
}

.admin-form-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem}.admin-form-grid>div{grid-column:span 2}.admin-form-wide{grid-column:1/-1!important}.admin-table th{white-space:nowrap}.admin-description-cell{max-width:420px;white-space:pre-wrap}.badge.text-bg-info{background:#e0f2fe!important;color:#075985!important}@media(max-width:991.98px){.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-grid>div{grid-column:span 1}.admin-form-wide{grid-column:1/-1!important}}@media(max-width:575.98px){.admin-form-grid{grid-template-columns:1fr}.admin-form-grid>div{grid-column:1/-1}}
.key-stat-card{min-height:94px}.key-stat-number{font-size:2rem;font-weight:800;line-height:1.15}.key-table code{color:#0f172a;background:#f1f5f9;border-radius:8px;padding:.18rem .45rem}.pin-mask{letter-spacing:.12rem;color:#64748b}.key-table td{vertical-align:middle}
.detail-list{display:grid;grid-template-columns:120px minmax(0,1fr);gap:.45rem .75rem;margin-bottom:0}.detail-list dt{color:#64748b;font-weight:600}.detail-list dd{margin-bottom:0;min-width:0;word-break:break-word}.table code{color:#0f172a;background:#f1f5f9;border-radius:8px;padding:.15rem .4rem}.admin-main .badge{font-weight:700}
