/* Media Cardinal Shop styles. Append to assets/css/style.css or link from includes/header.php. */
.shop-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.shop-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:30px}.shop-toolbar h2{font:800 32px var(--font-display);letter-spacing:-1.4px;margin:0}.shop-filters{display:flex;gap:8px;flex-wrap:wrap}.shop-filters input,.shop-filters select{padding:12px;border:1px solid #ddd;background:#fff;min-width:140px}.shop-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.shop-product-card{border:1px solid #eee;background:#fff;transition:transform .2s,box-shadow .2s}.shop-product-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px #0000}.shop-product-image{display:block;position:relative;aspect-ratio:4/3;background:#f1f0ed;overflow:hidden}.shop-product-image img{width:100%;height:100%;object-fit:cover;display:block}.product-type{position:absolute;left:10px;bottom:10px;background:#fff;padding:5px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.7px}.shop-product-info{padding:17px}.product-category{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#999;margin:0 0 5px}.shop-product-info h3{font:700 17px var(--font-display);margin:0 0 8px}.shop-product-info>p:not(.product-category){font-size:12px;color:#777;min-height:42px}.product-buy-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px}.product-buy-row strong{font-size:14px}.shop-image-placeholder{height:100%;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#171717,#333);color:#fff}.shop-image-placeholder span{font:800 65px var(--font-display);letter-spacing:-6px;color:#e21b35}.shop-image-placeholder small{font-size:10px;letter-spacing:2px}.shop-empty{padding:50px 20px;text-align:center;background:#f7f7f6}.shop-empty h2,.shop-empty h3{font:800 26px var(--font-display);margin-top:0}.shop-empty p{color:#777}.shop-alert{padding:13px 16px;margin-bottom:20px;font-size:13px}.shop-alert.success{background:#e9f5eb;color:#24582b}.shop-alert.error{background:#fce9e9;color:#8e1d1d}.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.product-detail-image{background:#f3f3f1;min-height:400px}.product-detail-image img{width:100%;height:100%;max-height:650px;object-fit:cover}.product-detail-copy h1{font:800 clamp(32px,4vw,48px)/1.1 var(--font-display);letter-spacing:-1.7px;margin:0 0 15px}.product-detail-price{font:800 26px var(--font-display);color:#c8102e}.product-detail-copy>p:not(.eyebrow){color:#666}.product-kind,.stock-note{font-size:12px}.add-cart-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:24px 0}.add-cart-form label{font-size:12px;font-weight:700}.add-cart-form input{width:70px;padding:12px;border:1px solid #ddd}.add-cart-form button:disabled{opacity:.5;cursor:not-allowed}.cart-layout{display:grid;grid-template-columns:1.5fr .8fr;gap:40px;align-items:start}.cart-item{display:flex;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #eee}.cart-item-image{width:90px;height:80px;background:#f1f1ef;display:grid;place-items:center;flex-shrink:0}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-image span{font:800 28px var(--font-display);color:#c8102e}.cart-item-main{flex:1}.cart-item-main h3{font:700 16px var(--font-display);margin:0}.cart-item-main p{font-size:12px;color:#777;margin:5px 0}.cart-item-main label{font-size:11px}.cart-item-main input{width:60px;padding:5px;border:1px solid #ddd}.cart-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.cart-summary{border:1px solid #e6e6e6;padding:24px;background:#fafafa}.cart-summary h2{font:800 22px var(--font-display);margin-top:0}.cart-summary>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid #e7e7e7;font-size:12px}.cart-summary p{font-size:11px;color:#777;line-height:1.7}.cart-summary .btn{width:100%;margin-top:12px}.btn-quiet-dark{border-color:#ccc;color:#333}.checkout-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:45px;align-items:start}.checkout-grid h2,.admin-create-product h2{font:800 25px var(--font-display);margin-top:0}.shop-checkout-form{display:grid;gap:16px}.shop-checkout-form>label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700}.shop-checkout-form input:not([type=checkbox]):not([type=radio]),.shop-checkout-form select,.shop-checkout-form textarea{width:100%;padding:12px;border:1px solid #d7d7d7;background:#fff;font:400 14px var(--font-body)}.shop-checkout-form input:focus,.shop-checkout-form select:focus,.shop-checkout-form textarea:focus{outline:1px solid #c8102e;border-color:#c8102e}.shop-checkout-form fieldset{border:1px solid #ddd;padding:16px}.shop-checkout-form legend{font-size:13px;font-weight:700;padding:0 5px}.payment-option{display:flex;align-items:center;gap:9px;padding:9px 0;font-size:12px}.payment-option small{color:#888}.order-confirmation{max-width:700px;margin:auto;text-align:center}.order-confirmation h1{font:800 38px var(--font-display);letter-spacing:-1.5px}.order-success-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#e6f4e9;color:#237a35;font-size:30px;margin:0 auto 20px}.order-confirmation>p{color:#777}.order-summary-box{border:1px solid #ddd;text-align:left;padding:22px;margin:25px 0}.order-summary-box>div{display:flex;justify-content:space-between;gap:15px;padding:9px 0;font-size:12px}.order-summary-box>div span{color:#777}.shop-small-hero{padding:60px 0}.admin-login{max-width:500px}.admin-login h1{font:800 36px var(--font-display);margin:0}.admin-login>p:not(.eyebrow){color:#777}.admin-top-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.admin-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0 35px}.admin-stat-grid>div{padding:22px;border:1px solid #eee;background:#fafafa;display:flex;flex-direction:column;gap:5px}.admin-stat-grid span{font-size:12px;color:#777}.admin-stat-grid strong{font:800 30px var(--font-display);color:#c8102e}.admin-table-wrap{width:100%;overflow-x:auto;margin:20px 0 40px}.admin-table{width:100%;border-collapse:collapse;font-size:12px;min-width:700px}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid #e5e5e5;text-align:left;vertical-align:top}.admin-table th{background:#f5f5f4;font-size:10px;text-transform:uppercase;letter-spacing:.7px}.admin-table small{color:#777}.btn-small{padding:8px 10px;font-size:11px}.admin-create-product{max-width:700px;padding:25px;background:#f8f8f7;margin-bottom:40px}.admin-status-form{display:grid;gap:7px;min-width:130px}.admin-status-form label{font-size:10px;display:grid;gap:3px}.admin-status-form select{padding:6px;border:1px solid #ddd}
@media(max-width:900px){.shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-toolbar{align-items:flex-start;flex-direction:column}.product-detail-grid,.cart-layout,.checkout-grid{grid-template-columns:1fr;gap:30px}.product-detail-image{min-height:260px}.cart-summary{order:-1}}
@media(max-width:520px){.shop-product-grid{grid-template-columns:1fr}.shop-filters{width:100%}.shop-filters input{min-width:0;flex:1;width:100%}.shop-filters select{flex:1}.shop-filters button{width:100%}.cart-item{align-items:flex-start;flex-wrap:wrap}.cart-item-image{width:70px;height:70px}.cart-item>strong{margin-left:88px}.admin-stat-grid{grid-template-columns:1fr}.shop-toolbar h2{font-size:27px}}
