:root{font-family:Arial,sans-serif;color:#171717;background:#f3f0e9}*{box-sizing:border-box}body{margin:0}header{height:72px;padding:12px 28px;background:#fff;border-bottom:1px solid #ddd8cf;display:flex;align-items:center;gap:20px}header img{width:110px}header span{font-weight:bold}header button{margin-left:auto}button{border:0;border-radius:999px;background:#171717;color:white;padding:12px 18px;font:inherit;font-weight:bold;cursor:pointer}input,textarea,select{width:100%;border:1px solid #c9c4ba;background:#fff;padding:11px;font:inherit;border-radius:6px}textarea{min-height:85px}label{display:grid;gap:6px;font-size:13px;font-weight:bold}main{max-width:1250px;margin:auto;padding:35px 24px 90px}.card{background:#fff;border:1px solid #ded9d0;border-radius:12px;padding:25px;margin-bottom:25px}.login{max-width:440px;margin:10vh auto}.login form{display:grid;gap:16px}.intro{padding:30px 0}.intro p:first-child{text-transform:uppercase;letter-spacing:.15em;font-weight:bold}.intro h1{font-size:clamp(40px,7vw,85px);letter-spacing:-.06em;margin:10px 0}.profile{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wide{grid-column:1/-1}.catalog-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.catalog-head input{max-width:360px}.catalogue{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.product{background:#fff;padding:12px;border-radius:9px}.product img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;background:#f3f0e9}.product h3{font-size:14px;min-height:34px}.product .price{display:block;font-weight:bold;margin:10px 0}.product .buy{display:grid;grid-template-columns:1fr 85px;gap:7px}.product button{grid-column:1/-1}.order{position:sticky;bottom:10px;margin-top:30px;box-shadow:0 12px 45px #0002}.order-line,.total-line{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid #ddd}.order-line button{padding:3px 8px;background:#eee;color:#111}.totals{margin:16px 0}.grand{font-size:20px;font-weight:bold}.status{color:#a32b25;min-height:1em}dialog{width:min(900px,95vw);border:0;padding:0}#invoice-content{padding:45px}.invoice-head{display:flex;justify-content:space-between}.invoice-table{width:100%;border-collapse:collapse;margin:30px 0}.invoice-table th,.invoice-table td{padding:10px;border-bottom:1px solid #ccc;text-align:right}.invoice-table th:first-child,.invoice-table td:first-child{text-align:left}.invoice-actions{padding:15px;background:#eee;display:flex;gap:10px;justify-content:flex-end}@media(max-width:850px){.catalogue{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.profile{grid-template-columns:1fr}.wide{grid-column:auto}.catalogue{grid-template-columns:1fr 1fr}.catalog-head{display:block}.product .buy{display:block}.product .buy>*{margin-top:6px}}@media print{body>*{display:none!important}dialog[open]{display:block!important;position:static;width:100%;max-width:none}.invoice-actions{display:none}#invoice-content{padding:0}}

.password-toggle{width:max-content;background:#e6e2d9;color:#171717;padding:7px 12px;font-size:12px}
.product-image{display:grid;place-items:center;width:100%;aspect-ratio:2/3;overflow:hidden;background:#f3f0e9}.product-image img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}.product-image.horizontal-product img{object-fit:contain}
.product-artist strong{font-family:Georgia,'Times New Roman',serif;font-size:17px;font-weight:400}
.product h3{margin:10px 0 4px;min-height:0;line-height:1.25}.product-artist{margin:2px 0 8px;line-height:1.25}.product .price{margin:7px 0}.product{padding:10px}

/* Panneau de commande professionnel */
@media(min-width:851px){#space{padding-right:calc(25vw + 18px)}.order{position:fixed;top:72px;right:0;bottom:0;width:25vw;margin:0;border-radius:12px 0 0 0;overflow:auto;z-index:20;box-shadow:-12px 0 45px #0002}}
@media(max-width:850px){.order{position:fixed;top:auto;right:0;bottom:0;width:100%;max-height:55vh;margin:0;border-radius:12px 12px 0 0;overflow:auto;z-index:20;box-shadow:0 -12px 45px #0002}}

.product button.product-image{position:relative;display:grid;width:100%;padding:0;border:0;border-radius:0;background:#f3f0e9;color:inherit;cursor:zoom-in;overflow:hidden}.product button.product-image:hover{opacity:.9}.product button.product-image:focus-visible{outline:3px solid #171717;outline-offset:3px}#visual-dialog{width:min(92vw,900px);max-width:900px;padding:54px 24px 22px;border:0;border-radius:12px;background:#f3f0e9;box-shadow:0 22px 80px #0008}#visual-dialog::backdrop{background:#000c}#visual-dialog img{display:block;width:100%;max-height:78vh;object-fit:contain;background:#f3f0e9}#visual-dialog h2{margin:18px 0 0;text-align:center;font-size:20px}.visual-close{position:absolute;right:12px;top:10px;width:38px;height:38px;padding:0;background:#171717;color:#fff;font-size:28px;line-height:1}
.vat-note{font-size:12px;line-height:1.5}.shipping-label-page{margin:40px auto 0;width:7cm;min-height:12cm;padding:7mm;border:1px dashed #aaa;background:#fff}.shipping-label-brand{font-size:20px;font-weight:800;letter-spacing:.08em}.shipping-label-reference{font-size:10px;border-bottom:2px solid #111;padding-bottom:8px}.shipping-label-address{margin-top:20mm}.shipping-label-address>span{display:block;font-size:8px;letter-spacing:.14em;margin-bottom:4mm}.shipping-label-address strong,.shipping-label-address b{display:block;font-size:14px;margin-bottom:2mm}.shipping-label-address p{font-size:13px;line-height:1.45;margin:5mm 0}.shipping-label-address small{font-size:9px;line-height:1.5}@page{size:A4;margin:14mm}@page shipping-label{size:70mm 120mm;margin:0}@media print{.invoice-print-page{page:auto}.shipping-label-page{page:shipping-label;break-before:page;width:70mm;min-height:120mm;margin:0;padding:7mm;border:0}}

/* Le catalogue professionnel utilise davantage de la largeur disponible. */
main{max-width:1680px;padding-left:clamp(18px,2.5vw,42px);padding-right:clamp(18px,2.5vw,42px)}

.catalog-tabs{display:flex;gap:9px;margin-top:12px}.catalog-tabs button{padding:9px 16px;background:#ded9d0;color:#171717}.catalog-tabs button.selected{background:#171717;color:#fff}.catalogue-empty{grid-column:1/-1;margin:0;padding:35px;background:#fff;border-radius:9px;text-align:center;color:#666}@media(max-width:600px){.catalog-head>div{margin-bottom:16px}.catalog-tabs{flex-wrap:wrap}}

.catalog-note{max-width:720px;margin:12px 0 0;color:#5d5a54;font-size:14px;line-height:1.45}

#pro-login-dialog{border:1px solid #ddd9d0;border-radius:18px;padding:36px;max-width:480px;width:calc(100% - 32px)}#pro-login-dialog::backdrop{background:#0008}#pro-login-dialog form,.login form{display:grid;gap:16px}#pro-login-dialog label{display:grid;gap:8px}#pro-login-dialog input{width:100%}#pro-login-dialog>button:not(.visual-close){margin-top:16px}.pro-honey{position:absolute;left:-10000px}summary{cursor:pointer;font-weight:bold}#checkout-review-page{max-width:1100px;margin:2rem auto;padding:clamp(18px,4vw,48px)}#checkout-review-page details{margin:24px 0;padding:16px;border:1px solid #ccc;border-radius:12px}#checkout-review-page button{margin:12px 12px 12px 0;white-space:normal}#checkout-review-page input[type=checkbox]{width:auto}

.catalogue{gap:64px 52px}@media(max-width:600px){.catalogue{gap:44px 28px}}

.admin-preview-notice{padding:16px 24px;background:#fff1cc;color:#171717;border-bottom:1px solid #dbbd6a;font-size:14px;line-height:1.5}.admin-preview-notice a{margin-left:12px;color:inherit;font-weight:700}

.catalogue{grid-template-columns:repeat(3,minmax(0,1fr))}.product .buy button[data-add]{grid-column:1/-1;justify-self:center;width:auto;padding:7px 14px;font-size:12px;line-height:1.2}@media(max-width:850px){.catalogue{grid-template-columns:repeat(2,minmax(0,1fr))}}
