:root{
  --navy:#0b1f3a; --navy-dark:#071527; --gold:#f2a900; --gold-dark:#c98700;
  --bg:#f4f6fa; --card:#ffffff; --text:#1a2233; --muted:#6b7686; --border:#e3e7ee;
  --danger:#d64545; --ok:#1c8a4b; --whatsapp:#25d366; --whatsapp-dark:#1ebe5b;
}
*{box-sizing:border-box;}
body{margin:0;font-family:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);padding-bottom:110px;}
a{color:inherit;}
header.top{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-dark) 100%);color:#fff;padding:26px 20px 20px;text-align:center;position:relative;overflow:hidden;}
header.top::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 20%, rgba(242,169,0,0.25), transparent 55%);pointer-events:none;}
.crest{width:56px;height:56px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;}
.crest-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,0.35));}
.crest-fallback{display:none;width:52px;height:52px;border-radius:50%;background:var(--gold);align-items:center;justify-content:center;font-size:26px;box-shadow:0 4px 14px rgba(0,0,0,0.25);}
header.top h1{margin:0;font-size:21px;letter-spacing:0.4px;}
header.top p{margin:6px 0 0;font-size:13px;color:#cdd6e8;}
main{max-width:920px;margin:0 auto;padding:16px 16px 0;}
.info-box{background:#eef2fb;border:1px solid #d7e0f4;color:#233054;font-size:12.5px;line-height:1.55;border-radius:12px;padding:12px 14px;margin-top:14px;}
.info-box b{color:#0b1f3a;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:14px;}
.card{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s ease, transform .15s ease;}
.card:hover{box-shadow:0 8px 20px rgba(11,31,58,0.08);transform:translateY(-2px);}
.card-img{height:140px;display:flex;align-items:center;justify-content:center;font-size:44px;color:#fff;position:relative;background-size:cover;background-position:center;}
.stock-pill{position:absolute;top:8px;left:8px;font-size:10.5px;font-weight:800;padding:3px 8px;border-radius:20px;background:rgba(255,255,255,0.92);color:var(--ok);}
.stock-pill.out{color:var(--danger);}
.card-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px;flex:1;}
.card-title{font-size:14.5px;font-weight:700;margin:0;}
.card-price{font-size:13.5px;font-weight:700;color:var(--gold-dark);display:flex;align-items:center;gap:6px;}
.flc-badge{background:var(--navy);color:var(--gold);font-size:10.5px;font-weight:800;padding:2px 6px;border-radius:6px;letter-spacing:0.4px;}
.row{display:flex;gap:8px;}
.field{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0;}
.field label{font-size:10.5px;text-transform:uppercase;letter-spacing:0.4px;color:var(--muted);font-weight:700;}
select, input[type=number], input[type=text], input[type=password], textarea{border:1px solid var(--border);border-radius:8px;padding:7px 8px;font-size:13.5px;background:#fbfcfe;color:var(--text);font-family:inherit;width:100%;}
select:focus, input:focus, textarea:focus{outline:2px solid var(--gold);outline-offset:1px;}
.add-btn{margin-top:2px;background:var(--navy);color:#fff;border:none;border-radius:9px;padding:9px 10px;font-size:13.5px;font-weight:700;cursor:pointer;}
.add-btn:hover{background:var(--navy-dark);}
.add-btn.added{background:var(--whatsapp-dark);}
.add-btn:disabled{background:#b9c2cf;cursor:not-allowed;}
.out-note{font-size:12.5px;color:var(--danger);font-weight:700;padding:8px 0 2px;text-align:center;}

.cart-bar{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--border);box-shadow:0 -6px 18px rgba(11,31,58,0.08);padding:12px 16px;z-index:50;}
.cart-inner{max-width:920px;margin:0 auto;display:flex;align-items:center;gap:12px;}
.cart-summary{flex:1;font-size:13.5px;color:var(--muted);}
.cart-summary b{color:var(--text);}
.cart-total{font-weight:800;color:var(--gold-dark);}
.cart-toggle{background:none;border:1px solid var(--border);border-radius:9px;padding:8px 12px;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer;}
.wa-btn{background:var(--whatsapp);color:#fff;border:none;border-radius:9px;padding:10px 16px;font-size:14px;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:8px;white-space:nowrap;}
.wa-btn:hover{background:var(--whatsapp-dark);}
.wa-btn:disabled{background:#b9c2cf;cursor:not-allowed;}

.cart-panel{position:fixed;left:0;right:0;bottom:64px;max-width:920px;margin:0 auto;max-height:46vh;overflow-y:auto;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 -10px 24px rgba(11,31,58,0.12);padding:10px 14px;display:none;z-index:49;}
.cart-panel.open{display:block;}
.cart-panel h3{margin:6px 4px 10px;font-size:14px;}
.cart-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 4px;border-bottom:1px solid var(--border);font-size:13.5px;}
.cart-item:last-child{border-bottom:none;}
.cart-item-name{font-weight:700;}
.cart-item-meta{color:var(--muted);font-size:12px;}
.remove-btn{background:none;border:none;color:var(--danger);font-size:12.5px;font-weight:700;cursor:pointer;padding:4px 6px;}
.empty-cart{color:var(--muted);font-size:13px;text-align:center;padding:14px 0;}

footer{max-width:920px;margin:26px auto 0;padding:14px 16px 20px;color:var(--muted);font-size:12px;text-align:center;}
.admin-link{display:inline-block;margin-top:8px;background:none;border:1px solid var(--border);color:var(--muted);border-radius:20px;padding:5px 12px;font-size:11.5px;text-decoration:none;}
.admin-link:hover{background:#eef1f6;}

.login-wrap{max-width:360px;margin:60px auto;background:#fff;border:1px solid var(--border);border-radius:14px;padding:24px;text-align:center;}
.login-wrap h2{margin:0 0 6px;font-size:18px;}
.login-wrap p{color:var(--muted);font-size:12.5px;margin:0 0 16px;}
.login-wrap input{margin-bottom:10px;text-align:center;}
.login-err{color:var(--danger);font-size:12.5px;margin-bottom:8px;}
.btn-primary{background:var(--navy);color:#fff;border:none;border-radius:9px;padding:10px 14px;font-size:13.5px;font-weight:700;cursor:pointer;width:100%;}
.btn-primary:hover{background:var(--navy-dark);}
.btn-secondary{background:none;border:1px solid var(--border);color:var(--navy);border-radius:9px;padding:8px 12px;font-size:12.5px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;}

.admin-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px;}
.admin-bar h2{margin:0;font-size:17px;}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;}
.settings-box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin-top:14px;}
.settings-box h3{margin:0 0 10px;font-size:14px;}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.settings-grid .field.full{grid-column:1/-1;}
.admin-product{background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin-top:12px;}
.admin-product-top{display:flex;gap:14px;}
.admin-thumb{width:76px;height:76px;border-radius:10px;flex-shrink:0;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;font-size:30px;color:#fff;}
.admin-fields{flex:1;display:flex;flex-direction:column;gap:8px;}
.admin-fields .row{gap:8px;}
.file-row{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);flex-wrap:wrap;}
.file-row input[type=file]{font-size:12px;}
.file-row label.chk{display:flex;align-items:center;gap:5px;}
.admin-product-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px;}
.del-product-btn{background:none;border:1px solid #f2c8c8;color:var(--danger);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;}
.save-product-btn{background:var(--navy);color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:12.5px;font-weight:700;cursor:pointer;}
.add-product-box{background:#fff;border:2px dashed var(--border);border-radius:14px;padding:14px 16px;margin-top:14px;}
.add-product-box h3{margin:0 0 10px;font-size:14px;}

.size-editor{display:flex;flex-direction:column;gap:6px;}
.size-row{display:flex;gap:6px;align-items:center;}
.size-row input[type=text]{flex:1;}
.size-row input[type=number]{width:80px;flex:none;}
.remove-size-row{background:none;border:1px solid var(--border);color:var(--danger);border-radius:8px;width:30px;height:32px;flex:none;cursor:pointer;font-size:13px;}
.remove-size-row:hover{background:#fdeaea;}
.add-size-row{align-self:flex-start;margin-top:2px;background:none;border:1px dashed var(--border);color:var(--navy);border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:700;cursor:pointer;}
.add-size-row:hover{background:#eef1f6;}

.flash{max-width:920px;margin:12px auto 0;padding:10px 14px;border-radius:10px;font-size:13px;font-weight:600;}
.flash.ok{background:#e5f6ec;color:var(--ok);border:1px solid #b9e6cb;}
.flash.err{background:#fdeaea;color:var(--danger);border:1px solid #f5c2c2;}
