/* Sandesh Art Marketplace (market.artarenastudio.com) — extends the main site's style.css + artful-theme.css */

.header nav a.active{text-decoration:underline;text-underline-offset:6px;color:var(--sun)}
.header nav a.nav-cta{background:var(--sun);color:var(--ink);padding:.5rem .9rem;border-radius:3px;font-weight:700}

.page-hero{padding:clamp(3.5rem,7vw,6rem) clamp(1.25rem,8vw,9rem) clamp(2rem,4vw,3rem);background:var(--paper)}
.page-hero h1{font-size:clamp(2.4rem,4.6vw,4.4rem);margin-bottom:.8rem}
.page-hero p{max-width:40rem;font-size:1.05rem;color:#4a463f}

.section-pad{padding:0 clamp(1.25rem,8vw,9rem) clamp(4rem,8vw,7rem)}

.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.4rem;margin-top:1rem}
.tile{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.tile:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,24,32,.1)}
.tile img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eee}
.tile .tile-body{padding:1.1rem 1.2rem 1.3rem}
.tile h3{font-size:1.25rem;margin-bottom:.4rem}
.tile p{margin:0;font-size:.92rem;color:#4a463f}
.tile .tag{display:inline-block;font:600 .62rem 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--purple);margin-bottom:.5rem}

form.site-form{max-width:38rem;display:flex;flex-direction:column;gap:1rem;margin-top:1rem}
form.site-form label{font:600 .72rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase;color:#4a463f;display:block;margin-bottom:.35rem}
form.site-form input,form.site-form select,form.site-form textarea{width:100%;padding:.75rem .85rem;border:1px solid var(--line);border-radius:6px;font:400 .95rem 'DM Sans',sans-serif;background:#fff}
form.site-form textarea{min-height:120px;resize:vertical}
form.site-form button{align-self:flex-start;border:0;cursor:pointer}
.form-note{font-size:.85rem;color:#615b56;margin-top:.4rem}
.flash{padding:.9rem 1.1rem;border-radius:8px;margin-bottom:1.2rem;font-size:.92rem}
.flash.ok{background:#e4f3ef;color:#1d6b5a;border:1px solid #bfe3d6}
.flash.err{background:#fdeceb;color:#9b2d22;border:1px solid #f4c3bd}

/* ===================== Admin: shared ===================== */
.admin-body{background:var(--paper, #f5f1ea);min-height:100vh}
.btn{display:inline-flex;align-items:center;gap:.35rem;border:0;background:var(--ink, #171820);color:#fff;padding:.62rem 1.1rem;border-radius:7px;cursor:pointer;font:600 .85rem 'DM Sans',Arial,sans-serif;text-decoration:none;transition:transform .15s,box-shadow .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(23,24,32,.18)}
.btn.primary{background:linear-gradient(120deg,var(--coral, #ef5f50),var(--purple, #302478))}
.btn.ghost{background:transparent;color:var(--ink, #171820);border:1.5px solid rgba(23,24,32,.18)}
.btn.ghost:hover{border-color:var(--coral,#ef5f50);color:var(--coral,#ef5f50)}
.btn.danger{background:#c23b2e}
.btn.secondary{background:#615b56}
.btn[type="submit"]{font-size:.85rem}

/* ----- top bar ----- */
.admin-topbar{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem clamp(1rem,3vw,2.2rem);background:linear-gradient(115deg,#1b1747 0%,#31257e 55%,#ec5c55 160%);color:#fff8ec;box-shadow:0 5px 0 var(--sun,#ffc857)}
.admin-topbar .brand{display:flex;align-items:center;gap:.6rem;color:#fff8ec;font:700 .8rem/1.1 'DM Mono',monospace;letter-spacing:.05em}
.admin-topbar .brand img{width:32px;height:32px;border-radius:6px;background:#fff8ec;border:2px solid var(--sun,#ffc857)}
.admin-topbar .brand i{font-style:normal;font-weight:400;opacity:.85}
.admin-topbar-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}

/* ----- layout: sidebar + content ----- */
.admin-shell{display:flex;align-items:flex-start;max-width:1300px;margin:0 auto}
.admin-side{width:220px;flex:0 0 220px;padding:1.6rem 1rem;position:sticky;top:0;align-self:flex-start}
.admin-side-group{font:700 .64rem 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#8a8478;margin:1.2rem 0 .4rem;padding-left:.6rem}
.admin-side-group:first-child{margin-top:0}
.admin-side a{display:block;padding:.55rem .6rem;border-radius:7px;font-size:.88rem;color:var(--ink,#171820);margin-bottom:.15rem}
.admin-side a:hover{background:rgba(23,24,32,.06)}
.admin-side a.active{background:#fff;font-weight:700;box-shadow:0 2px 8px rgba(23,24,32,.08);color:var(--coral,#ef5f50)}
.admin-wrap{flex:1;min-width:0;padding:2rem clamp(1rem,3vw,2.2rem) 4rem;font-family:'DM Sans',Arial,sans-serif}
.admin-wrap h1{font-family:'Playfair Display',serif;margin-bottom:1.3rem}
.admin-wrap h3{font-family:'Playfair Display',serif;font-size:1.3rem}
@media(max-width:860px){.admin-shell{flex-direction:column}.admin-side{position:static;width:100%;flex:none;display:flex;flex-wrap:wrap;gap:.3rem;padding:1rem}.admin-side-group{display:none}.admin-side a{margin-bottom:0}}

/* ----- dashboard cards ----- */
.admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:1.5rem 0}
.admin-card{background:#fff;border:1px solid var(--line, rgba(23,24,32,.12));border-left:4px solid var(--coral,#ef5f50);border-radius:10px;padding:1.2rem}
.admin-card-label{font:700 .64rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase;color:#8a8478;margin:0 0 .3rem}
.admin-card-value{font-size:2.1rem;font-family:'Playfair Display',serif;color:var(--ink,#171820);margin:0}

/* ----- tables ----- */
.admin-table{width:100%;border-collapse:collapse;background:#fff;font-size:.88rem;border-radius:10px;overflow:hidden;box-shadow:0 1px 0 rgba(23,24,32,.06)}
.admin-table th,.admin-table td{border-bottom:1px solid var(--line, rgba(23,24,32,.1));padding:.65rem .75rem;text-align:left}
.admin-table th{background:#f5f1ea;font:700 .66rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase;color:#4a463f}
.admin-table tr:hover td{background:#fbfaf7}
.status-pill{display:inline-block;padding:.22rem .65rem;border-radius:20px;font-size:.72rem;font-weight:700}
.status-pending,.status-placed{background:#fff3da;color:#8a5a00}
.status-paid,.status-confirmed,.status-delivered{background:#e4f3ef;color:#1d6b5a}
.status-failed,.status-cancelled{background:#fdeceb;color:#9b2d22}
.status-cod_pending,.status-shipped{background:#e6e8fb;color:#302478}
.status-approved{background:#e4f3ef;color:#1d6b5a}
.status-rejected{background:#fdeceb;color:#9b2d22}

/* ----- vendor forms: small helper text under file inputs ----- */
.admin-form .doc-link{font-size:.8rem;color:#302478;font-weight:600}

/* ----- content form ----- */
.admin-form{display:flex;flex-direction:column;gap:.9rem;max-width:620px;background:#fff;border:1px solid var(--line, rgba(23,24,32,.12));border-radius:10px;padding:1.4rem}
.admin-form label{font:700 .68rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase;color:#4a463f}
.admin-form input,.admin-form select,.admin-form textarea{display:block;width:100%;margin-top:.35rem;padding:.6rem .7rem;border:1px solid var(--line, rgba(23,24,32,.16));border-radius:6px;font:400 .92rem 'DM Sans',sans-serif;background:#fff}
.admin-actions a,.admin-actions button{font-size:.8rem;margin-right:.5rem}

/* ----- admin login page ----- */
.login-body{background:linear-gradient(135deg,#1b1747 0%,#31257e 55%,#ec5c55 160%);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}
.login-box{background:#fff8ec;padding:2.4rem 2.2rem;border-radius:14px;width:100%;max-width:380px;box-shadow:0 20px 60px rgba(0,0,0,.35);text-align:center}
.login-box h1{font-family:'Playfair Display',serif;font-size:1.65rem;margin:0 0 1.3rem}
.login-form{display:flex;flex-direction:column;gap:.3rem;text-align:left}
.login-form label{font:700 .66rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase;color:#4a463f;margin-top:.6rem}
.login-form input{width:100%;padding:.75rem .85rem;border:1px solid rgba(23,24,32,.18);border-radius:7px;font:400 .95rem 'DM Sans',sans-serif;background:#fff}
.login-submit{justify-content:center;width:100%;margin-top:1.2rem;padding:.8rem 1rem;font-size:.92rem}

/* ----- small utilities ----- */
.muted{color:#8a8478;font-size:.85rem}
.settings-section{background:#fff;border:1px solid var(--line, rgba(23,24,32,.12));border-radius:10px;padding:1.4rem;margin-bottom:1.4rem;max-width:680px}
.settings-section h3{font-family:'Playfair Display',serif;margin-bottom:.9rem}
.settings-section label{display:block;font:700 .68rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase;color:#4a463f;margin-top:.9rem}
.settings-section input,.settings-section textarea{width:100%;margin-top:.35rem;padding:.6rem .7rem;border:1px solid var(--line, rgba(23,24,32,.16));border-radius:6px;font:400 .92rem 'DM Sans',sans-serif}
.settings-section textarea{min-height:90px}

/* ===================== Marketplace-specific ===================== */
.category-chips{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0 0}
.category-chips a{padding:.5rem 1rem;border-radius:20px;border:1.5px solid var(--line, rgba(23,24,32,.16));font-size:.84rem;font-weight:600;color:#4a463f}
.category-chips a.active{border-color:var(--coral,#ef5f50);background:rgba(239,95,80,.1);color:var(--coral,#ef5f50)}

.product-card{background:#fff;border:1px solid var(--line, rgba(23,24,32,.12));border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.product-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,24,32,.1)}
.product-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eee}
.product-card .product-body{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.product-card h3{font-size:1.15rem;margin:0}
.product-card .price{font-weight:700;color:var(--coral,#ef5f50);font-size:1.2rem;margin-top:auto}
.product-card .stock-note{font-size:.78rem;color:#9b2d22}
.out-of-stock{opacity:.6}

.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}
@media(max-width:860px){.product-detail{grid-template-columns:1fr}}
.product-detail img{width:100%;border-radius:10px}
.product-detail .price{font-size:1.8rem;font-family:'Playfair Display',serif;color:var(--coral,#ef5f50);margin:.6rem 0}

.cart-table{width:100%;border-collapse:collapse;margin-top:1rem}
.cart-table th,.cart-table td{padding:.8rem .6rem;border-bottom:1px solid var(--line, rgba(23,24,32,.12));text-align:left;vertical-align:middle}
.cart-table img{width:60px;height:60px;object-fit:cover;border-radius:6px}
.cart-table input[type="number"]{width:64px;padding:.4rem;border:1px solid var(--line, rgba(23,24,32,.16));border-radius:6px}
.cart-summary{max-width:22rem;margin-left:auto;margin-top:1.5rem;text-align:right}
.cart-summary .total{font-size:1.6rem;font-family:'Playfair Display',serif;color:var(--coral,#ef5f50)}

.checkout-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:2.5rem;align-items:start}
@media(max-width:860px){.checkout-grid{grid-template-columns:1fr}}
.order-summary{background:#fff;border:1px solid var(--line, rgba(23,24,32,.12));border-radius:10px;padding:1.5rem}
.order-summary .line{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.9rem}
.order-summary .total{display:flex;justify-content:space-between;font-weight:700;font-size:1.1rem;border-top:1px solid var(--line, rgba(23,24,32,.12));margin-top:.6rem;padding-top:.6rem}
.method-tabs{display:flex;gap:.6rem;margin:1rem 0;flex-wrap:wrap}
.upi-box{text-align:center;padding:1.2rem;border:1px dashed var(--line, rgba(23,24,32,.25));border-radius:8px;margin:1rem 0}
.upi-box img{max-width:200px;margin-bottom:.6rem}

.receipt-card{max-width:36rem;margin:0 auto;background:#fff;border:1px solid var(--line, rgba(23,24,32,.12));border-radius:12px;padding:2rem}
.receipt-card h2{font-family:'Playfair Display',serif;margin-bottom:.2rem}
.receipt-row{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--line, rgba(23,24,32,.1));font-size:.92rem}
.receipt-amount{font-size:2rem;font-family:'Playfair Display',serif;color:var(--coral,#ef5f50);margin:.6rem 0}
@media print{.header,.admin-topbar,footer,.back-top,.no-print{display:none!important}}
