
:root{
  --paper:#F7F7F3; --surface:#FFFFFF; --ink:#18231F; --muted:#66716C; --rule:#DCE1DC;
  --emerald:#1C574B; --emerald-deep:#0F3D34; --gold:#B08A45;
  --malachite:#0E332C; --malachite-2:#13423A; --gilt:#C3A15F; --gilt-pale:#E8D7AE; --ivory:#F3EFE3;
  --cloth-ar:#0F3E35; --cloth-en:#1D2945; --cloth-ta:#4F1828; --cloth-ml:#163C50;
  --serif:'Literata','Noto Serif Tamil','Noto Serif Malayalam','Noto Naskh Arabic',Georgia,serif;
  --display:'Marcellus','Noto Serif Tamil','Noto Serif Malayalam','Noto Naskh Arabic',Georgia,serif;
  --step--1:.875rem; --step-0:1rem; --step-1:1.25rem; --step-2:1.563rem; --step-3:1.953rem; --step-4:2.441rem; --step-5:3.052rem;
  --wrap:72rem;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:var(--step-0);line-height:1.6}
body:lang(ta),body:lang(ml){line-height:1.75}
:lang(ar){font-family:'Noto Naskh Arabic','Noto Naskh Arabic',var(--serif)}
body:lang(ar){line-height:1.8}
/* Mixed-script text keeps its own direction but follows the page's alignment */
html[dir=ltr] [dir=auto]{text-align:left}
html[dir=rtl] [dir=auto]{text-align:right}
.cover-made [dir=auto]{text-align:center!important}
img{max-width:100%;display:block}
a{color:var(--emerald)}
a:hover{color:var(--emerald-deep)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:2px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;inset-inline-start:1rem;top:-3rem;background:var(--ink);color:#fff;padding:.5rem 1rem;z-index:10}
.skip:focus{top:1rem}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:1rem}
@media (min-width:48rem){.wrap{padding-inline:2rem}}
h1,h2,h3{line-height:1.3;margin:0;font-weight:600}
h1:lang(ta),h1:lang(ml),h2:lang(ta),h2:lang(ml),h1:lang(ar),h2:lang(ar){line-height:1.45}
h2{font-size:var(--step-2);margin-block-end:1.25rem}
.section{padding-block:2.5rem}

/* Header */
.site-header{background:var(--surface);border-block-end:1px solid var(--rule)}
.header-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-block:.75rem}
.brand{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);text-decoration:none;font-weight:700;font-size:var(--step-1)}
.brand-star{width:1.4rem;height:1.4rem;fill:var(--gold);flex:none}
.header-search{flex:1 1 14rem;order:3;width:100%}
@media (min-width:48rem){.header-search{order:0;max-width:24rem}}
.langs{display:flex;gap:.25rem;margin-inline-start:auto}
.langs a{font-size:var(--step--1);text-decoration:none;color:var(--muted);padding:.25rem .5rem;border-radius:4px}
.langs a[aria-current]{color:var(--ink);background:var(--paper);font-weight:600}
.langs a:hover{color:var(--ink)}

/* Inputs and buttons */
input[type=search],select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:6px;padding:.6rem .75rem;width:100%;min-height:2.75rem}
input[type=search]:focus,select:focus{border-color:var(--emerald)}
.button{font:inherit;font-weight:600;display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.6rem 1.25rem;border-radius:6px;border:1px solid var(--emerald);background:var(--emerald);color:#fff;text-decoration:none;cursor:pointer}
.button:hover{background:var(--emerald-deep);color:#fff}
.button-quiet{background:transparent;color:var(--emerald)}
.button-quiet:hover{background:var(--surface);color:var(--emerald-deep)}
.button[disabled]{background:var(--rule);border-color:var(--rule);color:var(--muted);cursor:not-allowed}
.button-wide{width:100%}

/* Hero */
.hero{background:var(--surface);border-block-end:1px solid var(--rule);padding-block:3rem 2.5rem}
.hero-words{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .9rem;font-size:clamp(2rem,7vw,var(--step-5));font-weight:700;letter-spacing:-.01em}
.hero-words :lang(ar){font-size:1.12em}
.hero-star{width:.42em;height:.42em;fill:var(--gold);flex:none}
.hero-tagline{font-size:var(--step-1);color:var(--muted);max-width:38rem;margin-block:1rem 1.75rem}
.hero-search{display:flex;gap:.5rem;max-width:36rem}
.hero-search input{flex:1}

/* Language tiles */
.lang-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
@media (min-width:48rem){.lang-tiles{grid-template-columns:repeat(4,1fr)}}
.lang-tile{display:flex;flex-direction:column;gap:.25rem;padding:1.25rem 1rem;border-radius:8px;text-decoration:none;color:#fff;min-height:7rem;justify-content:flex-end;position:relative;overflow:hidden}
.lang-tile:hover{color:#fff;filter:brightness(1.08)}
.lang-tile-ar{background:var(--cloth-ar)} .lang-tile-en{background:var(--cloth-en)} .lang-tile-ta{background:var(--cloth-ta)} .lang-tile-ml{background:var(--cloth-ml)}
.lang-tile>span{align-self:flex-start}
.lang-tile-native{font-size:var(--step-2);font-weight:700;line-height:1.3}
.lang-tile-label{font-size:var(--step--1);opacity:.85}

/* Book grid */
.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1rem}
@media (min-width:40rem){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:60rem){.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem 1.5rem}}
.card{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.card-link{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:.6rem}
.card-link:hover .card-title{text-decoration:underline}
.card-title{font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.card-author,.card-pub{font-size:var(--step--1);color:var(--muted);overflow-wrap:anywhere}
.card .price{margin:.25rem 0 0}

/* Covers */
.cover{aspect-ratio:2/3;width:100%;height:auto;border-radius:3px 6px 6px 3px;object-fit:cover;box-shadow:inset 6px 0 0 rgba(0,0,0,.18)}
:dir(rtl) .cover{border-radius:6px 3px 3px 6px;box-shadow:inset -6px 0 0 rgba(0,0,0,.18)}
.cover-made{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:.6rem;padding:1rem .9rem 1rem 1.2rem;color:#F3EEDF}
:dir(rtl) .cover-made{padding:1rem 1.2rem 1rem .9rem}
.cover-ar{background:var(--cloth-ar)} .cover-en{background:var(--cloth-en)} .cover-ta{background:var(--cloth-ta)} .cover-ml{background:var(--cloth-ml)}
.cover-star{width:2rem;height:2rem;fill:none;stroke:#E2C27A;stroke-width:1.2}
.cover-title{font-weight:700;font-size:var(--step-0);line-height:1.35;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.cover-author{font-size:.75rem;opacity:.85}
.cover-large{max-width:13rem}
@media (min-width:48rem){.cover-large{max-width:20rem}}
.cover-large .cover-title{font-size:var(--step-2)}
.cover-large .cover-star{width:3rem;height:3rem}

/* Prices */
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .5rem}
.price-now{font-weight:700;font-size:var(--step-1);color:var(--ink)}
.price-mrp{color:var(--muted);font-size:var(--step--1)}
.price-off{color:var(--emerald);font-size:var(--step--1);font-weight:600}

/* Listing page */
.page-title{font-size:var(--step-3);margin-block-end:1.25rem}
.filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;padding:1rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;margin-block-end:1.5rem}
.field{display:flex;flex-direction:column;gap:.3rem;flex:1 1 10rem}
.field-grow{flex:3 1 16rem}
.field label{font-size:var(--step--1);color:var(--muted)}
.filters .button{flex:1 1 10rem}
@media (min-width:48rem){.filters .button{flex:0 0 auto}}
.count{color:var(--muted);margin:0 0 1rem}
.pager{display:flex;justify-content:space-between;align-items:center;margin-block-start:2rem}
.pager-count{color:var(--muted)}
.more{margin-block-start:2rem}

/* Book page */
.crumbs{margin-block-end:1.5rem;font-size:var(--step--1)}
.book{display:grid;gap:2rem;grid-template-columns:minmax(0,1fr)}
.book>*{min-width:0}
@media (min-width:48rem){.book{grid-template-columns:minmax(14rem,20rem) 1fr;gap:3rem}}
.book-title{font-size:var(--step-4);font-weight:700}
.book-subtitle{font-size:var(--step-1);color:var(--muted);margin:.5rem 0 0}
.book-author{font-size:var(--step-1);margin:.75rem 0 0}
.buy{margin-block:1.5rem;padding:1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;max-width:24rem}
.buy .price{margin:0 0 .25rem}
.stock{margin:0 0 1rem;font-size:var(--step--1);font-weight:600}
.stock-yes{color:var(--emerald)} .stock-no{color:var(--muted)}
.ships{margin:.75rem 0 0;font-size:var(--step--1);color:var(--muted)}
.book-description{max-width:38rem}
.book-description p{margin:0 0 1rem}
.details-heading{font-size:var(--step-1);margin-block:2rem .75rem}
.details{margin:0;display:grid;max-width:38rem}
.details div{display:grid;grid-template-columns:minmax(7rem,12rem) 1fr;gap:1rem;padding-block:.6rem;border-block-end:1px solid var(--rule)}
.details dt{color:var(--muted)}
.details dd{margin:0;overflow-wrap:anywhere}

/* Publishers */
.pubs{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.pubs a{display:inline-block;padding:.5rem .9rem;border:1px solid var(--rule);border-radius:999px;background:var(--surface);text-decoration:none;color:var(--ink)}
.pubs a:hover{border-color:var(--emerald);color:var(--emerald)}

/* Empty and error states */
.empty{max-width:32rem;padding-block:2rem}
.empty-star{width:2.5rem;height:2.5rem;fill:none;stroke:var(--gold);stroke-width:1.2;margin-block-end:1rem}
.empty h2{font-size:var(--step-2);margin-block-end:.5rem}
.empty p{color:var(--muted);margin:0 0 1.25rem}

/* Footer */
.site-footer{border-block-start:1px solid var(--rule);background:var(--surface);margin-block-start:3rem}
.footer-row{display:flex;flex-wrap:wrap;gap:.5rem 2rem;align-items:center;padding-block:1.5rem;color:var(--muted);font-size:var(--step--1)}
.footer-row p{margin:0}
.footer-links{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;flex-basis:100%}
.footer-company{flex-basis:100%;font-size:.8rem}
.legal{max-width:48rem}
.sell{max-width:48rem}
.sell-commit{background:var(--surface);border:1px solid var(--rule);border-inline-start:4px solid var(--emerald);border-radius:8px;padding:1rem 1.25rem;margin-block:1.5rem}
.sell-commit h2{font-size:var(--step-1);display:flex;gap:.5rem;align-items:center}
.sell-commit .hero-star{width:1.1rem;height:1.1rem}
.sell-commit p{margin:.5rem 0 0}
.sell-points li{margin-block:.4rem}
.check-row{display:flex;gap:.6rem;align-items:flex-start;margin-block:1rem}
.check-row input{margin-top:.35rem;flex:none;width:1.1rem;height:1.1rem}
.applications{list-style:none;padding:0;display:grid;gap:1rem}
.application{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:1rem}
.application p{margin:.25rem 0}
.application-about{white-space:pre-line}
.pub-list .inline-form{margin-top:.5rem}
.pub-more{margin-top:.4rem;font-size:var(--step--1)}
.pub-more summary{cursor:pointer;color:var(--muted)}
.legal h1{font-size:var(--step-3);margin-block-end:.25rem}
.legal-en{color:var(--muted);margin:0 0 .5rem}
.legal-note{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:.75rem 1rem;color:var(--muted);font-size:var(--step--1)}
.legal-body h2{font-size:var(--step-1);margin-block:1.75rem .5rem}
.legal-body ul{padding-inline-start:1.25rem}
.legal-body li{margin-block:.35rem}
.legal-date{color:var(--muted);font-size:var(--step--1);margin-block-start:2rem}
.footer-brand{display:inline-flex;align-items:center;gap:.4rem;color:var(--ink);font-weight:700}
.footer-row .brand-star{width:1rem;height:1rem}
/* Account link */
.account-link{font-size:var(--step--1);font-weight:600;text-decoration:none;color:var(--emerald);padding:.35rem .75rem;border:1px solid var(--rule);border-radius:6px}
.account-link:hover{border-color:var(--emerald)}

/* Dashboards */
.dash h2{font-size:var(--step-1);margin-block:2rem .75rem}
.dash-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem;margin-block-end:1.25rem}
.dash-head .page-title{margin:0}
.dash-actions{display:flex;flex-wrap:wrap;gap:.5rem}
.dash-section{margin-block-start:2.5rem}
.pub-name{color:var(--muted);margin:0 0 .25rem}
.muted{color:var(--muted)}
.lead{font-size:var(--step-1);max-width:38rem}
.crumbs{margin:0 0 1rem}
.notice{background:#E4F1EC;border:1px solid #B9D8CC;color:var(--emerald-deep);padding:.75rem 1rem;border-radius:6px;max-width:44rem}
.alert{background:#F7E7EA;border:1px solid #E3BFC7;color:#6E1E3A;padding:.75rem 1rem;border-radius:6px;max-width:44rem}
.alert-soft{background:#FBF4E4;border-color:#E9D6A8;color:#5E4813}
.help-block{color:var(--muted);max-width:44rem}
.status-line{margin:0 0 1rem}
.badge{display:inline-block;font-size:var(--step--1);font-weight:600;padding:.1rem .6rem;border-radius:999px;border:1px solid var(--rule);background:var(--surface);color:var(--muted);white-space:nowrap}
.badge-approved{background:#E4F1EC;border-color:#B9D8CC;color:var(--emerald-deep)}
.badge-submitted,.badge-in_review{background:#FBF4E4;border-color:#E9D6A8;color:#5E4813}
.badge-rejected,.badge-suspended{background:#F7E7EA;border-color:#E3BFC7;color:#6E1E3A}
.badge-withdrawn{background:#EEEDE8;border-color:#D6D3C8;color:#5B5A52}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.books-table td.row-actions{white-space:nowrap;text-align:end}
.row-actions-inner{display:inline-flex;align-items:center;gap:.9rem}
.row-pop{position:relative;display:inline-block}
.row-pop>summary{list-style:none;cursor:pointer}
.row-pop>summary::-webkit-details-marker{display:none}
.row-more>summary{font-size:1.15rem;line-height:1;padding:0 .2rem;text-decoration:none}
.row-pop[open]>summary{color:var(--emerald)}
.row-pop>.quick-form,.row-pop>.pop-menu{position:absolute;inset-inline-end:0;top:calc(100% + .4rem);z-index:20;background:var(--surface);border:1px solid var(--rule);border-radius:6px;box-shadow:0 12px 30px -12px rgba(24,35,31,.35);padding:.85rem;text-align:start;white-space:normal}
.quick-form{width:17rem;display:grid;gap:.6rem}
.quick-row{border:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.quick-row legend{font-weight:600;font-size:var(--step--1);margin-block-end:.25rem;padding:0}
.quick-row legend small{font-weight:400;color:var(--muted)}
.quick-row label{display:grid;gap:.2rem;font-size:var(--step--1);color:var(--muted)}
.quick-row input{width:100%;min-width:0;padding:.35rem .5rem;font:inherit;border:1px solid var(--rule);border-radius:4px;background:var(--paper)}
.pop-menu{min-width:12rem;display:grid;gap:.6rem;white-space:nowrap}
.table-wrap.books-wrap{overflow:visible}
.table.books-table{min-width:0;table-layout:auto}
.table.books-table td{vertical-align:middle}
.bt-book{display:flex;align-items:center;gap:.85rem;min-width:14rem}
.bt-cover{flex:none;width:2.5rem;height:3.75rem;object-fit:cover;border-radius:4px;background:var(--rule);box-shadow:0 1px 2px rgba(16,32,27,.12)}
.bt-cover-none{display:block;background:linear-gradient(160deg,#14A898,#00564C)}
.bt-text{display:grid;gap:.15rem;min-width:0}
.bt-text a{font-weight:700;text-decoration:none;color:var(--ink);line-height:1.35}
.bt-text a:hover{color:var(--emerald-deep);text-decoration:underline}
.bt-meta{font-size:.8125rem;color:var(--muted)}
.books-table .bt-price,.books-table .bt-stock{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}
.books-table .bt-status{white-space:nowrap}
.books-table td.row-actions{width:1%}
.row-actions-inner{gap:.4rem}
.row-actions-inner>a.link-button,.row-pop>summary.link-button{display:inline-flex;align-items:center;min-height:2rem;padding:.2rem .75rem;border:1px solid var(--rule-strong);border-radius:999px;text-decoration:none;font-weight:600;font-size:.8125rem;color:var(--emerald-deep);background:#fff}
.row-actions-inner>a.link-button:hover,.row-pop>summary.link-button:hover,.row-pop[open]>summary.link-button{background:var(--emerald-tint);border-color:var(--mint)}
.row-more>summary.link-button{padding:.2rem .6rem;font-size:1rem;letter-spacing:.05em}
@media (max-width:60rem){
  .table.books-table thead{display:none}
  .table.books-table,.table.books-table tbody{display:block}
  .table.books-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1rem;row-gap:.45rem;padding:.9rem 1rem;border-block-end:1px solid var(--rule)}
  .table.books-table tr:last-child{border-block-end:0}
  .table.books-table td{display:block;padding:0;border:0;text-align:start;grid-column:1}
  .table.books-table td.bt-title{grid-column:1/-1}
  .table.books-table td.bt-status{grid-column:1/-1}
  .table.books-table td.bt-price,.table.books-table td.bt-stock{display:inline;font-size:.875rem}
  .table.books-table td.bt-price::before,.table.books-table td.bt-stock::before{content:attr(data-label) " · ";color:var(--muted);font-weight:400}
  .table.books-table td.bt-stock{grid-column:2;grid-row:3;justify-self:end}
  .table.books-table td.bt-price{grid-row:3}
  .table.books-table td.row-actions{grid-column:1/-1;width:auto;white-space:normal}
  .bt-book{min-width:0}
  .row-pop>.quick-form,.row-more>.pop-menu{inset-inline-end:auto;inset-inline-start:0}
}
.pop-menu .link-button,.pop-menu a{text-align:start}
.inline-form{margin:0;display:inline}
.books-table .row-actions .link-button{color:var(--emerald)}
.books-table .row-actions .link-danger,.link-danger{color:#6E1E3A}
.confirm-card{max-width:34rem;padding:1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px}
.confirm-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-block-start:1rem}
.button-danger{background:#6E1E3A;border-color:#6E1E3A;color:#fff}
.button-danger:hover{background:#561630}
.table-wrap{overflow-x:auto;border:1px solid var(--rule);border-radius:8px;background:var(--surface)}
.table{width:100%;border-collapse:collapse;min-width:36rem}
.table th,.table td{padding:.7rem 1rem;text-align:start;border-block-end:1px solid var(--rule);vertical-align:top}
.table th{font-size:var(--step--1);color:var(--muted);font-weight:600}
.table tr:last-child td{border-block-end:0}
.table .num{text-align:end}
.dash-links,.addresses,.pub-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;max-width:44rem}
.dash-link{display:flex;flex-direction:column;gap:.15rem;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;text-decoration:none;color:var(--ink)}
.dash-link:hover{border-color:var(--emerald)}
.dash-link span{color:var(--muted)}
.address{padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px}
.address p{margin:0 0 .35rem}
.pub-list li{padding:.6rem 1rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;display:flex;flex-wrap:wrap;gap:.25rem .75rem;align-items:center}
.review-note{border-inline-start:4px solid #6E1E3A;background:var(--surface);padding:.75rem 1rem;margin-block-end:1.5rem;max-width:44rem}
.review-note h2{font-size:var(--step-0);margin:0 0 .25rem}
.review-note p{margin:0;white-space:pre-line}

/* Formats and media */
.format-block{border:1px solid var(--rule);border-radius:8px;padding:1rem;display:grid;gap:.75rem;background:var(--paper)}
.format-on{background:var(--surface);border-color:#B9D8CC}
.format-check{font-size:var(--step-0)}
.media-panel{padding:1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;margin-block-end:1.5rem;max-width:56rem;min-width:0;overflow-wrap:anywhere}
.media-panel h2{margin:0 0 .75rem;font-size:var(--step-1)}
.media-panel h3{font-size:var(--step-0);margin:1.25rem 0 .5rem}
.media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:1.5rem}
.media-slot{display:grid;grid-template-columns:7rem minmax(0,1fr);grid-template-areas:"h h" "pic form" "pic rm";column-gap:1rem;align-items:start;min-width:0}
.media-slot>h3{grid-area:h;margin-top:0}
.media-slot>.cover,.media-slot>.media-thumb,.media-slot>.media-empty,.media-slot>.pub-mark,.media-slot>.pub-banner-thumb{grid-area:pic}
.media-slot>.upload-form{grid-area:form;margin-block-start:0}
.media-slot>.inline-remove{grid-area:rm;margin-block-start:.5rem}
.media-slot .cover-thumb{width:7rem;max-width:7rem}
.media-thumb{display:block;width:7rem;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:3px 6px 6px 3px;border:1px solid var(--rule);background:var(--paper)}
.media-empty{width:7rem;aspect-ratio:2/3;border:1px dashed var(--rule);border-radius:6px;display:flex;align-items:center;justify-content:center;text-align:center;padding:.5rem;font-size:.75rem;color:var(--muted)}
.media-gallery{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-wrap:wrap;gap:.75rem}
.media-gallery li{display:grid;gap:.25rem;justify-items:start}
.upload-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-block-start:.5rem;min-width:0;max-width:34rem}
.upload-form .help{flex-basis:100%;margin:0}
.upload-form input[type=file]{flex:1 1 12rem;min-width:0;max-width:100%;font:inherit;font-size:var(--step--1);color:var(--muted);padding:.35rem;border:1px dashed var(--rule);border-radius:6px;background:var(--paper)}
.upload-form input[type=file]::file-selector-button{font:inherit;font-weight:600;font-size:var(--step--1);margin-inline-end:.6rem;padding:.35rem .8rem;border-radius:5px;border:1px solid var(--rule);background:var(--surface);color:var(--ink);cursor:pointer}
.upload-form input[type=file]::file-selector-button:hover{border-color:var(--emerald);color:var(--emerald)}
.upload-form .button-small{flex:none}
.button-small{min-height:2.25rem;padding:.35rem .9rem;font-size:var(--step--1)}
.inline-remove{margin:0}
.link-button{background:none;border:0;padding:0;font:inherit;font-size:var(--step--1);color:#6E1E3A;text-decoration:underline;cursor:pointer}
.thumbs{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-start:.75rem;max-width:20rem}
.thumbs .media-thumb{width:4.5rem}
.format-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.75rem}
.format-row{padding-block-end:.75rem;border-block-end:1px solid var(--rule)}
.format-row:last-child{border-block-end:0;padding-block-end:0}
.format-row-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem}
.format-name{font-weight:600}
.format-row .price{margin:0}
.format-row .stock{margin:.15rem 0 0}
.sample-link{margin:.75rem 0 0}
.cat-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem;max-width:56rem}
.cat-item{padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;display:grid;gap:1rem}
.cat-title{margin:0;display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:baseline}

/* Cover upload */
.cover-panel{display:grid;grid-template-columns:7rem 1fr;gap:1.25rem;align-items:start;padding:1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;margin-block-end:1.5rem;max-width:56rem}
.cover-panel h2{margin:0 0 .5rem;font-size:var(--step-1)}
.cover-thumb{max-width:7rem}
.cover-thumb .cover-title{font-size:.7rem;-webkit-line-clamp:4}
.cover-thumb .cover-author{display:none}
.cover-thumb .cover-star{width:1.25rem;height:1.25rem}
input[type=file]{font:inherit;max-width:100%}

/* Forms */
.auth-card{max-width:26rem}
.auth-switch{margin-block-start:1.25rem;color:var(--muted)}
.stack{display:grid;gap:1rem}
.book-form{display:grid;gap:1.5rem;max-width:56rem}
.book-form fieldset{border:1px solid var(--rule);border-radius:8px;padding:1.25rem;margin:0;background:var(--surface);display:grid;gap:1rem}
.book-form legend{font-weight:700;padding-inline:.4rem}
.fieldset-error{border-color:#C98A98!important}
.grid-2,.grid-3,.grid-4{display:grid;gap:1rem;grid-template-columns:1fr}
@media (min-width:40rem){.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:60rem){.grid-4{grid-template-columns:2fr 1fr 1fr 1fr}}
.dash .field,.auth-card .field,.book-form .field{flex:none}
.field label .req{color:#6E1E3A}
input[type=text],input[type=email],input[type=password],input[type=tel],textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:6px;padding:.6rem .75rem;width:100%;min-height:2.75rem}
input:focus,textarea:focus{border-color:var(--emerald)}
textarea{resize:vertical;min-height:7rem}
.help{font-size:var(--step--1);color:var(--muted);margin:0}
.error-text{font-size:var(--step--1);color:#6E1E3A;font-weight:600;margin:0}
.field-error input,.field-error select{border-color:#C98A98}
.form-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.check{display:flex;gap:.5rem;align-items:center}
.check input{width:1.1rem;height:1.1rem}
.panel{margin-block-start:1.25rem;max-width:56rem}
.panel summary{cursor:pointer;font-weight:600;color:var(--emerald);padding-block:.5rem}
.panel[open] summary{margin-block-end:1rem}
.inline-form{display:grid;gap:1rem;max-width:44rem}
.cart-lines{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.cart-line{display:grid;grid-template-columns:4.5rem 1fr auto;gap:1rem;align-items:start;padding:.75rem 0;border-block-end:1px solid var(--rule)}
.cart-line:last-child{border-block-end:0}
.cart-line .cart-info:first-child{grid-column:1/3}
.cart-cover .cover{width:4.5rem;height:auto;aspect-ratio:2/3;font-size:.55rem}
.cart-cover .cover-made{padding:.4rem}
.cart-title{font-weight:600;color:var(--ink);text-decoration:none}
.cart-title:hover{color:var(--emerald)}
.cart-info p{margin:.2rem 0}
.cart-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-start:.5rem}
.cart-form{display:flex;gap:.5rem;align-items:center}
.cart-form select{min-width:4rem}
.cart-amount{margin:0;font-weight:600;white-space:nowrap}
.parcel{margin-block:1.25rem;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--rule);border-radius:8px;max-width:48rem}
.parcel-head{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;font-size:var(--step-0);margin:0 0 .5rem}
.parcel-sum,.order-sum{display:grid;gap:.35rem;margin:.75rem 0 0;max-width:48rem}
.parcel-sum div,.order-sum div{display:flex;justify-content:space-between;gap:1rem}
.parcel-sum dt,.order-sum dt{color:var(--muted)}
.parcel-sum dd,.order-sum dd{margin:0;font-weight:600}
.order-sum{margin-block:1.25rem}
.order-total{border-block-start:1px solid var(--rule);padding-block-start:.5rem;font-size:var(--step-1)}
.order-total dt{color:var(--ink)!important}
.address-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.75rem;max-width:48rem}
.address-chosen{border-color:var(--emerald);box-shadow:0 0 0 1px var(--emerald)}
.check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.4rem}
fieldset.panel{border:1px solid var(--rule);border-radius:8px;padding:1rem 1.25rem}
fieldset.panel legend{font-weight:600;padding-inline:.25rem}
@media (max-width:30rem){.cart-line{grid-template-columns:3.5rem 1fr}.cart-amount{grid-column:2}.cart-cover .cover{width:3.5rem}}
@media (min-width:48rem){.inline-form{grid-template-columns:2fr 2fr auto;align-items:end}}
/* ---------- Qirthas house style: malachite, gilt and pearl ---------- */
body{background:var(--paper)}
h1,h2,.page-title,.book-title,.brand,.hero-words,.lang-tile-native{font-family:var(--display);font-weight:400;letter-spacing:.01em}
h1:lang(ar),h2:lang(ar),.page-title:lang(ar),.book-title:lang(ar){font-family:'Noto Naskh Arabic',serif;font-weight:700;letter-spacing:0}
h1:lang(ta),h1:lang(ml),h2:lang(ta),h2:lang(ml),.page-title:lang(ta),.page-title:lang(ml),.book-title:lang(ta),.book-title:lang(ml){font-weight:600;letter-spacing:0}
a{color:var(--emerald);text-underline-offset:.18em;text-decoration-thickness:1px}
:focus-visible{outline:2px solid var(--gilt);outline-offset:3px}

/* Utility strip */
.utility{background:var(--malachite);color:var(--gilt-pale);font-size:.8125rem}
.utility-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.25rem}
.utility .langs{margin:0;gap:.1rem}
.utility .langs a{color:rgba(243,239,227,.72);border-radius:0;padding:.35rem .6rem}
.utility .langs a:hover{color:var(--ivory)}
.utility .langs a[aria-current]{background:transparent;color:var(--gilt-pale);font-weight:600;box-shadow:inset 0 -1px 0 var(--gilt)}
.utility-note{margin:0;opacity:.8;display:none}
@media (min-width:48rem){.utility-note{display:block}}

/* Header */
.site-header{background:var(--surface);border-block-end:1px solid var(--rule);box-shadow:0 1px 0 rgba(195,161,95,.35)}
.header-row{padding-block:1rem;gap:1rem 2rem}
.brand{font-size:1.75rem;color:var(--malachite);gap:.6rem}
.brand:lang(ar){font-family:'Noto Naskh Arabic',serif;font-weight:700}
.brand-star{width:1.5rem;height:1.5rem;fill:var(--gilt)}
.header-search{max-width:none}
@media (min-width:48rem){.header-search{max-width:30rem;flex:1 1 20rem}}
.header-search input{border-radius:0;border-color:var(--rule);background:var(--paper)}
.header-search input:focus{border-color:var(--gilt);background:var(--surface)}
.header-actions{display:flex;gap:1.25rem;margin-inline-start:auto}
.account-link{border:0;border-radius:0;padding:.35rem 0;color:var(--ink);font-weight:500;font-size:.9375rem;box-shadow:inset 0 -1px 0 transparent}
.account-link:hover{color:var(--emerald);box-shadow:inset 0 -1px 0 var(--gilt)}

/* Buttons and inputs */
.button{border-radius:2px;background:var(--malachite);border-color:var(--malachite);font-weight:600;letter-spacing:.01em;padding-inline:1.5rem}
.button:hover{background:var(--malachite-2);border-color:var(--malachite-2)}
.button-quiet{background:transparent;color:var(--malachite);border-color:var(--gilt)}
.button-quiet:hover{background:rgba(195,161,95,.1);color:var(--malachite)}
input[type=search],select,input[type=text],input[type=email],input[type=password],input[type=tel],textarea{border-radius:2px}
input:focus,textarea:focus,select:focus{border-color:var(--gilt);outline:none;box-shadow:0 0 0 3px rgba(195,161,95,.22)}

/* Hero: a tooled-leather cover */
.hero{position:relative;background:var(--malachite);color:var(--ivory);border:0;padding-block:2.5rem;overflow:hidden;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cg fill='none' stroke='%23C3A15F' stroke-width='.6' opacity='.22'%3E%3Crect x='16' y='16' width='24' height='24'/%3E%3Crect x='16' y='16' width='24' height='24' transform='rotate(45 28 28)'/%3E%3Cpath d='M0 28h11M45 28h11M28 0v11M28 45v11'/%3E%3C/g%3E%3C/svg%3E");
  background-size:56px 56px}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,rgba(14,51,44,.2) 0%,rgba(14,51,44,.92) 70%);pointer-events:none}
.hero-frame{position:relative;z-index:1;text-align:center;padding-block:3.25rem 3rem;border:1px solid rgba(195,161,95,.7);outline:1px solid rgba(195,161,95,.35);outline-offset:-8px;max-width:calc(var(--wrap) - 2rem)}
@media (min-width:48rem){.hero{padding-block:3.5rem}.hero-frame{padding-block:4.5rem 4rem}}
.hero-words{justify-content:center;color:var(--gilt-pale);font-size:clamp(2.1rem,6.5vw,4.25rem);gap:.25rem 1.1rem;line-height:1.25}
.hero-words,.hero-words:lang(ar),.hero-words:lang(ta),.hero-words:lang(ml){font-family:var(--display);font-weight:400;letter-spacing:.01em}
.hero-words span:lang(en){font-family:var(--sans)}
.hero-words span:lang(ta),.hero-words span:lang(ml){font-weight:500}
.hero-words :lang(ar){font-family:'Noto Naskh Arabic',serif;font-weight:700;font-size:1.15em}
.hero-words :lang(ta),.hero-words :lang(ml){font-size:.86em}
.hero-star{fill:var(--gilt);width:.32em;height:.32em}
.hero-tagline{color:rgba(243,239,227,.86);margin-inline:auto;font-size:1.1875rem;max-width:34rem;margin-block:1.25rem 2rem}
.hero-search{margin-inline:auto;max-width:34rem;gap:0}
.hero-search input{border-radius:0;border:1px solid var(--gilt);background:rgba(255,255,255,.96);min-height:3.25rem;padding-inline:1rem}
.hero-search .button{border-radius:0;background:var(--gilt);border-color:var(--gilt);color:var(--malachite);min-height:3.25rem}
.hero-search .button:hover{background:var(--gilt-pale);border-color:var(--gilt-pale)}

/* Section headings: title then a gilt rule to the edge */
.section{padding-block:3.5rem 1rem}
.section>h2{display:flex;align-items:center;gap:1rem;font-size:clamp(1.5rem,3vw,2rem);color:var(--malachite);margin-block-end:1.75rem}
.section>h2::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--gilt),rgba(195,161,95,0))}
:dir(rtl) .section>h2::after{background:linear-gradient(270deg,var(--gilt),rgba(195,161,95,0))}

/* Language tiles as cloth book spines with gilt bands */
.lang-tile{border-radius:2px;min-height:9.5rem;padding:1.5rem 1.25rem;justify-content:space-between;box-shadow:inset 0 0 0 1px rgba(195,161,95,.25)}
.lang-tile::before,.lang-tile::after{content:"";position:absolute;inset-inline:0;height:3px;border-block:1px solid rgba(195,161,95,.75);opacity:.9}
.lang-tile::before{top:.75rem}.lang-tile::after{bottom:.75rem}
.lang-tile:hover{filter:none;box-shadow:inset 0 0 0 1px var(--gilt)}
.lang-tile[aria-current]{box-shadow:inset 0 0 0 2px var(--gilt)}
.lang-tile-native{color:var(--gilt-pale);font-size:1.75rem}
.lang-tile-native:lang(ar){font-family:'Noto Naskh Arabic',serif;font-weight:700;font-size:2rem}
.lang-tile-label{color:rgba(243,239,227,.82);opacity:1}

/* Books on the shelf */
.grid{gap:2.5rem 1.5rem}
@media (min-width:60rem){.grid{gap:3rem 2.25rem}}
.cover{border-radius:1px 3px 3px 1px;box-shadow:inset 4px 0 0 rgba(0,0,0,.18),inset 5px 0 0 rgba(255,255,255,.08),0 1px 1px rgba(24,35,31,.12),0 10px 22px -10px rgba(24,35,31,.45)}
:dir(rtl) .cover{border-radius:3px 1px 1px 3px;box-shadow:inset -4px 0 0 rgba(0,0,0,.18),inset -5px 0 0 rgba(255,255,255,.08),0 1px 1px rgba(24,35,31,.12),0 10px 22px -10px rgba(24,35,31,.45)}
.card-link .cover{transition:transform .25s ease,box-shadow .25s ease}
.card-link:hover .cover{transform:translateY(-3px)}
.card-link:hover .card-title{text-decoration:none;color:var(--emerald)}
.cover-made{color:var(--ivory);border:0;outline:1px solid rgba(195,161,95,.55);outline-offset:-7px}
.cover-star{stroke:var(--gilt)}
.card-title{font-size:1.0625rem;margin-block-start:.35rem}
.price-now{font-family:var(--display);font-weight:400;font-size:1.25rem;font-variant-numeric:lining-nums tabular-nums;color:var(--malachite)}
.price-off{color:var(--gold)}

/* Publisher names */
.pubs{gap:.75rem 2rem}
.pubs a{border:0;border-radius:0;background:none;padding:.25rem 0;font-family:var(--display);font-size:1.25rem;color:var(--malachite);box-shadow:inset 0 -1px 0 var(--rule)}
.pubs a:lang(ar){font-family:'Noto Naskh Arabic',serif}
.pubs a:hover{color:var(--emerald);box-shadow:inset 0 -1px 0 var(--gilt)}

/* Panels */
.filters,.buy,.table-wrap,.dash-link,.address,.parcel,.media-panel,.cat-item,.cover-panel,.book-form fieldset,.application,.sell-commit,.legal-note,.pub-list li{border-radius:2px}
.buy{border-color:var(--gilt);box-shadow:inset 0 0 0 4px var(--surface),inset 0 0 0 5px rgba(195,161,95,.35)}
.sell-commit{border-inline-start-color:var(--gilt)}
.book-title{color:var(--malachite);font-size:clamp(2rem,4.5vw,3rem);line-height:1.2}
.details div{border-block-end-color:var(--rule)}

/* Footer: the back cover */
.site-footer{background:var(--malachite);color:rgba(243,239,227,.78);border:0;margin-block-start:5rem;box-shadow:inset 0 1px 0 var(--gilt)}
.footer-row{color:inherit;padding-block:2.5rem 2rem;gap:1rem 2rem}
.site-footer a{color:var(--gilt-pale)}
.site-footer a:hover{color:var(--ivory)}
.footer-brand{color:var(--gilt-pale);font-family:var(--display);font-weight:400;font-size:1.375rem}
.footer-brand:lang(ar){font-family:'Noto Naskh Arabic',serif;font-weight:700}
.footer-links{padding-block-start:1rem;border-block-start:1px solid rgba(195,161,95,.3)}
.footer-company{color:rgba(243,239,227,.6)}

/* Publisher marks and pages */
.pub-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:50%;object-fit:cover;background:var(--surface);box-shadow:0 0 0 1px var(--gilt),0 0 0 4px var(--surface),0 0 0 5px rgba(195,161,95,.35)}
.pub-mark-sm{width:2.25rem;height:2.25rem;box-shadow:0 0 0 1px var(--gilt)}
.pub-mark-md{width:4.5rem;height:4.5rem}
.pub-mark-lg{width:7.5rem;height:7.5rem}
.pub-mark-made{background:var(--malachite);color:var(--gilt-pale);font-family:var(--display);font-size:1.5rem;letter-spacing:.04em}
.pub-mark-sm.pub-mark-made{font-size:.8rem}
.pub-mark-lg.pub-mark-made{font-size:2.5rem}
.pubs{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:2rem 1.5rem}
.pubs a.pub-tile{display:flex;flex-direction:column;align-items:center;gap:.9rem;text-align:center;box-shadow:none;padding:.5rem;font-size:1.0625rem;line-height:1.35}
.pubs a.pub-tile [dir=auto]{text-align:center}
.pubs a.pub-tile:hover{box-shadow:none;color:var(--emerald)}
.pubs a.pub-tile:hover .pub-mark{box-shadow:0 0 0 1px var(--gilt),0 0 0 4px var(--surface),0 0 0 5px var(--gilt)}
.sold-by{display:flex;align-items:center;gap:.6rem;margin-block-start:1rem;padding-block-start:1rem;border-block-start:1px solid var(--rule);color:var(--ink);text-decoration:none;font-size:var(--step--1)}
.sold-by:hover{color:var(--emerald)}
.pub-hero{position:relative;background:var(--malachite);color:var(--ivory);min-height:12rem;display:flex;align-items:flex-end;overflow:hidden;box-shadow:inset 0 -1px 0 var(--gilt)}
.pub-hero.has-banner{min-height:0}
.pub-hero.has-banner .pub-hero-row{padding-block:.85rem;align-items:center;gap:1rem}
.pub-hero.has-banner .pub-mark-lg{width:4.25rem;height:4.25rem}
.pub-hero.has-banner .pub-hero-name{font-size:clamp(1.3rem,2.6vw,1.9rem)}
.pub-banner{position:relative;overflow:hidden;background:var(--malachite);line-height:0}
/* Wide screens: the banner's own left and right edges, stretched out to the sides, so it runs on seamlessly. */
.pub-banner::before,.pub-banner::after{content:"";position:absolute;top:0;bottom:0;width:50%;background-image:var(--banner);background-repeat:no-repeat;background-size:6000% 100%;filter:blur(6px);transform:scaleY(1.04)}
.pub-banner::before{left:0;background-position:left center}
.pub-banner::after{right:0;background-position:right center}
.pub-banner-img{position:relative;z-index:1;display:block;width:auto;max-width:100%;height:auto;max-height:clamp(7rem,20vw,15rem);margin-inline:auto;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.pub-hero-row{position:relative;z-index:1;display:flex;align-items:flex-end;gap:1.5rem;padding-block:2rem;width:100%;min-width:0}
.pub-hero-text{min-width:0}
.pub-hero .pub-mark{box-shadow:0 0 0 1px var(--gilt),0 0 0 5px var(--malachite),0 0 0 6px var(--gilt)}
.pub-hero-name{font-family:var(--display);font-weight:400;color:var(--gilt-pale);font-size:clamp(1.6rem,4.5vw,3rem);line-height:1.25;margin:0;overflow-wrap:anywhere}
.pub-hero-name:lang(ar){font-family:'Noto Naskh Arabic',serif;font-weight:700}
.pub-hero-langs{margin:.5rem 0 0;color:rgba(243,239,227,.8);font-size:var(--step--1)}
.pub-hero-langs a{color:var(--gilt-pale);margin-inline-start:.5rem}
.pub-about{max-width:44rem;font-size:1.0625rem;margin-block-end:1rem}
@media (max-width:30rem){.media-slot{grid-template-columns:5.5rem minmax(0,1fr);column-gap:.85rem}.media-slot .cover-thumb,.media-thumb,.media-empty{width:5.5rem;max-width:5.5rem}.media-panel{padding:1rem}}
@media (max-width:40rem){.pub-hero-row{gap:.85rem}.pub-hero .pub-mark-lg,.pub-hero.has-banner .pub-mark-lg{width:3.5rem;height:3.5rem;flex:none}.pub-hero-name,.pub-hero.has-banner .pub-hero-name{font-size:1.25rem}}
.pub-banner-thumb{width:100%;max-width:22rem;aspect-ratio:8/3;object-fit:contain;background:var(--malachite);border:1px solid var(--rule);border-radius:2px}
.pub-banner-empty{background:var(--malachite)}
.pub-media-grid{grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr))}
.pub-media-grid .media-slot{display:block}
/* Orders */
.tabs{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;border-block-end:1px solid var(--rule);margin-block-end:1.5rem}
.tab{padding:.6rem 0;text-decoration:none;color:var(--muted);box-shadow:inset 0 -2px 0 transparent}
.tab:hover{color:var(--ink)}
.tab-on{color:var(--malachite);font-weight:600;box-shadow:inset 0 -2px 0 var(--gilt)}
.parcel-card{background:var(--surface);border:1px solid var(--rule);border-radius:2px;padding:1.25rem 1.5rem;margin-block-end:1.25rem;max-width:60rem}
.parcel-card-head h2{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;font-size:var(--step-1);margin:0}
.parcel-card-head p{margin:.25rem 0 1rem}
.parcel-cols{display:grid;gap:1.25rem}
@media (min-width:48rem){.parcel-cols{grid-template-columns:3fr 2fr}}
.parcel-cols h3{font-size:var(--step-0);color:var(--muted);font-weight:600;margin:0 0 .5rem}
.parcel-items{list-style:none;margin:0 0 .5rem;padding:0}
.parcel-items li{display:flex;gap:.5rem;align-items:baseline;padding-block:.35rem;border-block-end:1px solid var(--rule)}
.parcel-amt{margin-inline-start:auto;white-space:nowrap}
.parcel-address{margin:0;line-height:1.7}
.parcel-actions{border-block-start:1px solid var(--rule);margin-block-start:1rem;padding-block-start:1rem;display:grid;gap:.75rem}
.inline-actions{display:inline-block;margin-inline-end:.5rem}
.parcel-step summary{cursor:pointer;font-weight:600;color:var(--malachite)}
.parcel-step[open] summary{margin-block-end:.75rem}
.parcel-danger summary{color:#6E1E3A}
.parcel-form{display:grid;gap:.75rem;max-width:52rem}
.parcel-pub{font-size:var(--step-0);color:var(--muted);margin:1.5rem 0 .5rem}
.badge-ship-awaiting_pack,.badge-ship-ready_for_pickup{background:#FBF4E4;border-color:#E9D6A8;color:#5E4813}
.badge-ship-in_transit,.badge-ship-picked_up,.badge-ship-out_for_delivery{background:#E8EEF7;border-color:#C5D3E8;color:#1D2945}
.badge-ship-delivered{background:#E4F1EC;border-color:#B9D8CC;color:var(--emerald-deep)}
.badge-ship-cancelled,.badge-ship-undelivered,.badge-ship-rto_delivered{background:#F7E7EA;border-color:#E3BFC7;color:#6E1E3A}
.refund-list{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.5rem}
.refund-list li{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.inline-search{display:flex;gap:.5rem}
.inline-search input{min-width:14rem}
.slip{max-width:46rem}
.slip-cols{display:grid;gap:1.5rem;margin-block:1rem 1.5rem}
@media (min-width:40rem){.slip-cols{grid-template-columns:1fr 1fr}}
.slip-address{font-size:var(--step-1);line-height:1.6}
@media print{.utility,.site-header,.site-footer,.no-print{display:none!important}body{background:#fff}.slip .table-wrap,.slip .table{border-color:#999}}
/* Products */
.cover-square{aspect-ratio:1/1;border-radius:2px}
:dir(rtl) .cover-square{border-radius:2px}
.cover-square:not(.cover-made){box-shadow:0 1px 1px rgba(24,35,31,.1),0 12px 24px -14px rgba(24,35,31,.4)}
.cover-product{background:var(--malachite);padding:1rem}
.product .cover-large{max-width:26rem}
.product-thumb{aspect-ratio:1/1;width:4.5rem}
.variant-table{min-width:46rem}
.variant-table td{padding:.4rem .5rem}
.variant-table input{width:100%;min-width:4.5rem;font:inherit;padding:.45rem .5rem;border:1px solid var(--rule);border-radius:2px;background:var(--surface)}
.variant-table td:first-child input{min-width:12rem}
.variant-table .cell-error{border-color:#C98A98}
.variant-table .error-text{display:block;font-size:.75rem}
.header-actions{flex-wrap:wrap;gap:.25rem 1.25rem}
.pub-media-grid .pub-mark,.pub-media-grid .pub-banner-thumb{margin-block:.5rem 1rem}
/* ================= Fresh emerald (Nov 2026): bright, clean, sans ================= */
:root{
  --paper:#F6FAF8; --surface:#FFFFFF; --ink:#10201B; --muted:#5D6E67; --rule:#E2EBE7; --rule-strong:#CFDDD7;
  --emerald:#009688; --emerald-deep:#00695C; --emerald-tint:#E0F4F1; --mint:#B2E2DB;
  --gold:#E3A21A; --gilt:#F2B33D; --gilt-pale:#FFE6A8; --saffron-tint:#FFF4DA; --ivory:#FFFFFF;
  --malachite:#0B3B30; --malachite-2:#0F4A3C;
  --cloth-ar:#0E8A6B; --cloth-en:#2F5DD0; --cloth-ta:#C2410C; --cloth-ml:#0E7490;
  --sans:'Plus Jakarta Sans','Inter','Noto Sans Tamil','Noto Sans Malayalam','Noto Naskh Arabic',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --serif:var(--sans); --display:var(--sans);
  --radius:14px; --radius-sm:10px;
  --shadow:0 1px 2px rgba(16,32,27,.05),0 8px 24px -12px rgba(16,32,27,.18);
  --shadow-lift:0 2px 4px rgba(16,32,27,.06),0 18px 36px -16px rgba(16,32,27,.28);
}
body{font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
:lang(ar){font-family:'Noto Naskh Arabic','Plus Jakarta Sans',var(--sans)}
h1,h2,h3,.page-title,.book-title,.brand,.hero-words,.lang-tile-native,.pub-hero-name,.footer-brand,.price-now{font-family:var(--sans);letter-spacing:-.01em}
h1,h2,.page-title,.book-title{font-weight:800;color:var(--ink)}
h1:lang(ar),h2:lang(ar),.page-title:lang(ar),.book-title:lang(ar),.brand:lang(ar),.footer-brand:lang(ar),.pub-hero-name:lang(ar),.lang-tile-native:lang(ar){font-family:'Noto Naskh Arabic',var(--sans);font-weight:700;letter-spacing:0}
h1:lang(ta),h1:lang(ml),h2:lang(ta),h2:lang(ml),.page-title:lang(ta),.page-title:lang(ml),.book-title:lang(ta),.book-title:lang(ml){font-weight:700;letter-spacing:0}
h3{font-weight:700}
a{color:var(--emerald)}
a:hover{color:var(--emerald-deep)}
:focus-visible{outline:3px solid var(--gilt);outline-offset:2px;border-radius:6px}
::selection{background:var(--mint)}

/* Utility strip + header */
.utility{background:var(--malachite);color:#CFE9DF}
.utility .langs a{color:rgba(255,255,255,.72);border-radius:999px;padding:.25rem .7rem}
.utility .langs a:hover{color:#fff;background:rgba(255,255,255,.08)}
.utility .langs a[aria-current]{color:var(--malachite);background:var(--gilt);box-shadow:none;font-weight:700}
.site-header{background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(10px);border-block-end:1px solid var(--rule);box-shadow:0 1px 0 rgba(16,32,27,.02)}
.brand{color:var(--emerald-deep);font-weight:800;font-size:1.6rem}
.brand-star{fill:var(--gilt)}
.header-search input{border-radius:999px;background:var(--paper);border:1px solid var(--rule);padding-inline:1.1rem}
.header-search input:focus{background:#fff;border-color:var(--emerald);box-shadow:0 0 0 4px var(--emerald-tint)}
.account-link{color:var(--ink);font-weight:600;border-radius:999px;padding:.4rem .8rem;box-shadow:none}
.account-link:hover{color:var(--emerald-deep);background:var(--emerald-tint);box-shadow:none}
.header-actions{gap:.15rem .25rem}
@media (max-width:40rem){.header-row{gap:.6rem 1rem}.header-actions{margin-inline-start:-.8rem;width:100%;justify-content:space-between}.brand{font-size:1.4rem}}

/* Buttons and inputs */
.button{border-radius:999px;background:var(--emerald);border:1px solid var(--emerald);color:#fff;font-weight:700;letter-spacing:0;padding-inline:1.4rem;box-shadow:0 6px 16px -8px rgba(14,138,107,.6);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.button:hover{background:var(--emerald-deep);border-color:var(--emerald-deep);color:#fff;transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(14,138,107,.7)}
.button:active{transform:none}
.button-quiet{background:#fff;color:var(--emerald-deep);border-color:var(--rule-strong);box-shadow:none}
.button-quiet:hover{background:var(--emerald-tint);color:var(--emerald-deep);border-color:var(--mint);box-shadow:none}
.button[disabled]{background:var(--rule);border-color:var(--rule);color:var(--muted);box-shadow:none;transform:none}
.button-danger{background:#C2253D;border-color:#C2253D;box-shadow:0 6px 16px -8px rgba(194,37,61,.55)}
.button-danger:hover{background:#9F1C31;border-color:#9F1C31}
.button-small{min-height:2.25rem;padding-inline:1rem}
input[type=search],select,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input:not([type]),textarea{border-radius:var(--radius-sm);border:1px solid var(--rule-strong);background:#fff}
input:focus,textarea:focus,select:focus{border-color:var(--emerald);outline:none;box-shadow:0 0 0 4px var(--emerald-tint)}
.field label{font-weight:600;color:#3E4F48}
.link-button{color:var(--emerald-deep);text-decoration-thickness:1px;text-underline-offset:.2em}
.link-danger,.books-table .row-actions .link-danger{color:#C2253D}

/* Hero: bright emerald with a soft star lattice */
.hero{background:linear-gradient(135deg,#0E8A6B 0%,#0B6E58 45%,#0A4F43 100%);color:#fff;padding-block:2rem}
.hero{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='.7' opacity='.10'%3E%3Crect x='20' y='20' width='24' height='24'/%3E%3Crect x='20' y='20' width='24' height='24' transform='rotate(45 32 32)'/%3E%3C/g%3E%3C/svg%3E"),linear-gradient(135deg,#0E8A6B 0%,#0B6E58 45%,#0A4F43 100%);background-size:64px 64px,auto}
.hero::after{background:radial-gradient(ellipse at 80% -10%,rgba(242,179,61,.28) 0%,rgba(242,179,61,0) 45%),radial-gradient(ellipse at 0% 110%,rgba(255,255,255,.12) 0%,rgba(255,255,255,0) 45%)}
.hero-frame{border:0;outline:0;padding-block:3rem 2.75rem}
@media (min-width:48rem){.hero-frame{padding-block:4.25rem 3.75rem}}
.hero-words{color:#fff;font-weight:800;letter-spacing:-.02em}
.hero-words,.hero-words:lang(ar),.hero-words:lang(ta),.hero-words:lang(ml){font-family:var(--sans);font-weight:800}
.hero-words span:lang(en){font-family:var(--sans)}
.hero-words :lang(ar){font-family:'Noto Naskh Arabic',var(--sans);font-weight:700}
.hero-star{fill:var(--gilt)}
.hero-tagline{color:rgba(255,255,255,.88)}
.hero-search{gap:.5rem;background:#fff;border-radius:999px;padding:.35rem;box-shadow:0 20px 40px -20px rgba(0,0,0,.45)}
.hero-search input{border:0;border-radius:999px;background:transparent;min-height:3rem;box-shadow:none}
.hero-search input:focus{box-shadow:none}
.hero-search .button{border-radius:999px;background:var(--gilt);border-color:var(--gilt);color:#3B2A00;min-height:3rem;box-shadow:none}
.hero-search .button:hover{background:#F6C25F;border-color:#F6C25F;color:#3B2A00}

/* Section headings */
.section>h2{color:var(--ink);font-weight:800;font-size:clamp(1.4rem,2.6vw,1.85rem)}
.section>h2::after{height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gilt) 0,var(--gilt) 2.5rem,var(--rule) 2.5rem,rgba(226,235,231,0) 100%)}
:dir(rtl) .section>h2::after{background:linear-gradient(270deg,var(--gilt) 0,var(--gilt) 2.5rem,var(--rule) 2.5rem,rgba(226,235,231,0) 100%)}

/* Language tiles */
.lang-tile{border-radius:var(--radius);box-shadow:var(--shadow);min-height:8.5rem;transition:transform .2s ease,box-shadow .2s ease}
.lang-tile::before,.lang-tile::after{content:none}
.lang-tile::before{content:"";position:absolute;inset:auto -30% -55% auto;width:12rem;height:12rem;border-radius:50%;background:rgba(255,255,255,.12);border:0;opacity:1}
.lang-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}
.lang-tile[aria-current]{box-shadow:0 0 0 3px var(--gilt),var(--shadow)}
.lang-tile-ar{background:linear-gradient(140deg,#12A27E,#0A6A52)}
.lang-tile-en{background:linear-gradient(140deg,#4C7BEA,#2447A8)}
.lang-tile-ta{background:linear-gradient(140deg,#F08A2E,#C2410C)}
.lang-tile-ml{background:linear-gradient(140deg,#1BA3BF,#0E6177)}
.lang-tile-native{color:#fff;font-weight:800}
.lang-tile-label{color:rgba(255,255,255,.88)}

/* Book cards */
.grid{gap:2rem 1.25rem}
@media (min-width:60rem){.grid{gap:2.5rem 1.75rem}}
.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:.75rem .75rem 1rem;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}
.card-link:hover .cover{transform:none}
.cover,:dir(rtl) .cover{border-radius:8px;box-shadow:0 1px 2px rgba(16,32,27,.08),0 10px 20px -12px rgba(16,32,27,.35)}
.cover-made{outline:0;border-radius:8px;color:#fff}
.cover-ar{background:linear-gradient(160deg,#12A27E,#0A5A46)} .cover-en{background:linear-gradient(160deg,#4C7BEA,#1F3D91)}
.cover-ta{background:linear-gradient(160deg,#F08A2E,#A8380B)} .cover-ml{background:linear-gradient(160deg,#1BA3BF,#0B5466)}
.cover-star{stroke:#FFE6A8}
.card-title{font-weight:700;font-size:1rem;color:var(--ink)}
.card-link:hover .card-title{color:var(--emerald-deep)}
.price-now{font-weight:800;font-size:1.2rem;color:var(--ink);font-variant-numeric:tabular-nums}
.price-mrp{color:#8A9993}
.price-off{background:var(--saffron-tint);color:#9A5B00;border-radius:999px;padding:.05rem .5rem;font-weight:700;font-size:.78rem}

/* Panels and surfaces */
.filters,.buy,.table-wrap,.dash-link,.address,.parcel,.parcel-card,.media-panel,.cat-item,.cover-panel,.book-form fieldset,.application,.sell-commit,.legal-note,.pub-list li,.confirm-card,.format-block,fieldset.panel,.review-note{border-radius:var(--radius);border-color:var(--rule)}
.filters,.buy,.table-wrap,.dash-link,.address,.parcel,.parcel-card,.media-panel,.cat-item,.cover-panel,.book-form fieldset,.application,.confirm-card,.pub-list li{background:var(--surface);box-shadow:var(--shadow)}
.buy{border-color:var(--rule);box-shadow:var(--shadow-lift)}
.book-form legend{font-weight:800;color:var(--emerald-deep)}
.format-block{background:var(--paper)}
.format-on{background:#fff;border-color:var(--mint);box-shadow:0 0 0 3px var(--emerald-tint)}
.sell-commit{border-inline-start:4px solid var(--gilt);background:var(--saffron-tint);border-color:#F6DFA4}
.dash-link{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.dash-link:hover{border-color:var(--mint);transform:translateY(-2px);box-shadow:var(--shadow-lift)}
.book-title{color:var(--ink);font-weight:800}
.details div{border-block-end-color:var(--rule)}
.details dt{color:var(--muted);font-weight:600}

/* Notices and badges */
.notice{background:var(--emerald-tint);border:1px solid var(--mint);color:var(--emerald-deep);border-radius:12px;font-weight:600}
.alert{background:#FDECEE;border:1px solid #F6C7CF;color:#9F1C31;border-radius:12px}
.alert-soft{background:var(--saffron-tint);border-color:#F6DFA4;color:#7A4B00}
.badge{font-weight:700;font-size:.78rem;padding:.2rem .7rem;border-color:transparent;background:#EEF2F0;color:#4A5A54}
.badge-approved,.badge-ship-delivered{background:var(--emerald-tint);color:var(--emerald-deep);border-color:transparent}
.badge-submitted,.badge-in_review,.badge-ship-awaiting_pack,.badge-ship-ready_for_pickup{background:var(--saffron-tint);color:#8A5300;border-color:transparent}
.badge-rejected,.badge-suspended,.badge-ship-cancelled,.badge-ship-undelivered,.badge-ship-rto_delivered{background:#FDECEE;color:#9F1C31;border-color:transparent}
.badge-ship-in_transit,.badge-ship-picked_up,.badge-ship-out_for_delivery{background:#E8EFFD;color:#2447A8;border-color:transparent}
.badge-withdrawn{background:#EEF2F0;color:#5D6E67;border-color:transparent}

/* Tables (dashboards and admin) */
.table-wrap{overflow-x:auto}
.table th{background:#F3F8F6;color:#4A5A54;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.table th:first-child{border-start-start-radius:var(--radius)} .table th:last-child{border-start-end-radius:var(--radius)}
.table tbody tr{transition:background .12s ease}
.table tbody tr:hover{background:#FAFDFC}
.table td a{font-weight:600}

/* Dashboards */
.dash-head{padding-block-end:1rem;border-block-end:1px solid var(--rule)}
.dash .page-title{font-size:clamp(1.6rem,3vw,2.2rem)}
.pub-name{color:var(--emerald);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}
.tabs{border-block-end:1px solid var(--rule);gap:.25rem}
.tab{padding:.55rem .9rem;border-radius:10px 10px 0 0;font-weight:600}
.tab:hover{background:var(--emerald-tint);color:var(--emerald-deep)}
.tab-on{color:var(--emerald-deep);box-shadow:inset 0 -3px 0 var(--emerald)}
.row-pop>.quick-form,.row-pop>.pop-menu{border-radius:12px;box-shadow:var(--shadow-lift)}
.quick-row input{border-radius:8px}
.upload-form input[type=file]{border-radius:12px;border-color:var(--rule-strong);background:var(--paper)}
.upload-form input[type=file]::file-selector-button{border-radius:999px;background:var(--emerald-tint);border-color:var(--mint);color:var(--emerald-deep)}
.media-thumb,.media-empty{border-radius:8px}

/* Publishers */
.pub-mark{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--mint),var(--shadow)}
.pub-mark-sm{box-shadow:0 0 0 2px var(--mint)}
.pub-mark-made{background:linear-gradient(140deg,#12A27E,#0A5A46);color:#fff;font-family:var(--sans);font-weight:800}
.pubs a.pub-tile{border-radius:var(--radius);padding:1rem .75rem;transition:background .15s ease}
.pubs a.pub-tile:hover{background:#fff;box-shadow:var(--shadow)}
.pubs a.pub-tile:hover .pub-mark{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--gilt),var(--shadow)}
.sold-by{border-block-start-color:var(--rule)}
.pub-hero,.pub-banner{background:linear-gradient(135deg,#0E8A6B,#0A4F43)}
.pub-hero{box-shadow:none}
.pub-hero-name{color:#fff;font-weight:800}
.pub-hero .pub-mark{box-shadow:0 0 0 3px rgba(255,255,255,.9),0 0 0 6px rgba(242,179,61,.8)}
.pub-hero-langs{color:rgba(255,255,255,.85)}
.pub-hero-langs a{color:var(--gilt-pale)}

/* Footer */
.site-footer{background:var(--malachite);color:rgba(255,255,255,.72);box-shadow:none;border-block-start:4px solid var(--gilt)}
.site-footer a{color:#CFF0E3}
.site-footer a:hover{color:#fff}
.footer-brand{color:#fff;font-weight:800}
.footer-links{border-block-start-color:rgba(255,255,255,.12)}
.footer-company{color:rgba(255,255,255,.55)}

/* Cart, checkout */
.cart-line{border-block-end-color:var(--rule)}
.order-total{border-block-start-color:var(--rule-strong)}
.address-chosen{border-color:var(--emerald);box-shadow:0 0 0 3px var(--emerald-tint)}
@media (prefers-reduced-motion:reduce){.card:hover,.lang-tile:hover,.dash-link:hover,.button:hover{transform:none}}
.brand{line-height:0}
.brand-logo{display:block;height:4.25rem;width:auto}
@media (max-width:40rem){.brand-logo{height:3.5rem}}
.footer-brand{margin:0;line-height:0}
.footer-brand .brand-logo{height:3.75rem}
.hero{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='.7' opacity='.10'%3E%3Crect x='20' y='20' width='24' height='24'/%3E%3Crect x='20' y='20' width='24' height='24' transform='rotate(45 32 32)'/%3E%3C/g%3E%3C/svg%3E"),linear-gradient(135deg,#009688 0%,#00796B 45%,#004D40 100%)}
.pub-hero,.pub-banner{background:linear-gradient(135deg,#009688,#004D40)}
.lang-tile-ar{background:linear-gradient(140deg,#14A898,#00695C)}
.cover-ar{background:linear-gradient(160deg,#14A898,#00564C)}
.pub-mark-made{background:linear-gradient(140deg,#14A898,#00564C)}
.button{box-shadow:0 6px 16px -8px rgba(0,150,136,.6)}
/* Card hover tools, category label, quick view */
.card{position:relative}
.card-media{position:relative;border-radius:8px;overflow:hidden}
.card-cover{display:block;text-decoration:none}
.card-cover .cover{transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .3s ease}
.card:hover .card-cover .cover{transform:scale(1.05)}
.card-media::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.45));opacity:0;transition:opacity .25s ease;pointer-events:none}
.card:hover .card-media::after,.card:focus-within .card-media::after{opacity:1}
.card-tools{position:absolute;inset-inline:0;bottom:.6rem;display:flex;justify-content:center;gap:.45rem;z-index:2;opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}
.card:hover .card-tools,.card:focus-within .card-tools{opacity:1;transform:none}
.card-tools .tool:nth-child(2),.card-tools>:nth-child(2) .tool{transition-delay:.03s}
.tool-form{margin:0;display:inline-flex}
.tool{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:50%;border:0;background:#fff;color:var(--emerald-deep);box-shadow:0 6px 16px -6px rgba(0,0,0,.45);cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease;text-decoration:none}
.tool svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.tool:hover{background:var(--emerald);color:#fff;transform:translateY(-2px) scale(1.06)}
.tool-on,.tool-on:hover{color:#E0245E}
.tool-on svg{fill:currentColor}
@media (hover:none){.card-tools{opacity:1;transform:none;bottom:.45rem;gap:.35rem}.tool{width:2.1rem;height:2.1rem}.card-media::after{opacity:1;height:35%}}
.card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .5rem;margin-block-start:auto;padding-block-start:.4rem}
.card .card-foot .price{margin:0}
.card{display:flex;flex-direction:column}
.card-cat{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:700;letter-spacing:.02em;color:var(--emerald-deep);background:var(--emerald-tint);border:1px solid var(--mint);border-radius:999px;padding:.12rem .55rem}
.card-link{margin-block-start:.6rem}
.qv{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;padding:1rem}
.qv:target{display:flex;animation:qv-in .2s ease}
@keyframes qv-in{from{opacity:0}to{opacity:1}}
.qv-backdrop{position:absolute;inset:0;background:rgba(8,28,24,.55);backdrop-filter:blur(2px)}
.qv-panel{position:relative;z-index:1;display:grid;grid-template-columns:minmax(9rem,15rem) minmax(0,1fr);gap:1.5rem;width:min(46rem,100%);max-height:calc(100vh - 2rem);overflow:auto;background:#fff;border-radius:18px;padding:1.5rem;box-shadow:0 30px 70px -20px rgba(0,0,0,.5);animation:qv-pop .25s cubic-bezier(.2,.7,.2,1)}
@keyframes qv-pop{from{transform:translateY(16px) scale(.98)}to{transform:none}}
.qv-close{position:absolute;inset-inline-end:.75rem;top:.75rem;width:2.25rem;height:2.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--paper)}
.qv-close svg{width:1.1rem;height:1.1rem;stroke:currentColor;stroke-width:2;fill:none}
.qv-close:hover{background:var(--emerald-tint)}
.qv-body{display:grid;gap:.5rem;align-content:start;padding-inline-end:1.5rem}
.qv-body .card-cat{justify-self:start}
.qv-title{font-size:1.4rem;font-weight:800;line-height:1.3;margin:0}
.qv-author{margin:0;font-weight:600}
.qv-pub{margin:0;color:var(--muted);font-size:.9rem}
.qv-formats{list-style:none;margin:.5rem 0;padding:0;display:grid;gap:.5rem}
.qv-format{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;padding:.6rem .75rem;border:1px solid var(--rule);border-radius:12px}
.qv-format-name{font-weight:700;min-width:6.5rem}
.qv-format .price{margin:0}
.qv-format .tool-form{margin-inline-start:auto}
.qv-cart svg,.qv-wish svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2;margin-inline-end:.4rem}
.qv-wish.tool-on svg{fill:#E0245E;stroke:#E0245E}
.qv-note{margin-inline-start:auto;font-size:.8rem;color:var(--muted);font-weight:600}
.qv-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-start:.5rem}
@media (max-width:36rem){.qv-panel{grid-template-columns:1fr;padding:1.1rem}.qv-cover{max-width:9rem}.qv-body{padding-inline-end:0}}
.wish-note{margin-block-start:1.5rem}
@media (prefers-reduced-motion:reduce){.card:hover .card-cover .cover{transform:none}.qv:target,.qv-panel{animation:none}}
.su-mode{display:inline-flex;align-items:center;gap:.4rem;background:var(--saffron-tint);color:#8A5300;border:1px solid #F6DFA4;border-radius:999px;padding:.15rem .7rem}
.su-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;margin-block:1.25rem}
.su-stats>div{background:#fff;border:1px solid var(--rule);border-radius:var(--radius);padding:.9rem 1.1rem;box-shadow:var(--shadow);display:grid;gap:.1rem}
.su-stats strong{font-size:1.6rem;font-weight:800;color:var(--emerald-deep)}
.su-stats span{color:var(--muted);font-size:.85rem;font-weight:600}
.tab-count{display:inline-block;min-width:1.4rem;padding:0 .4rem;margin-inline-start:.25rem;border-radius:999px;background:var(--emerald-tint);color:var(--emerald-deep);font-size:.75rem;text-align:center}
.su-person{display:grid;gap:.15rem;justify-items:start;min-width:0}
.su-email{overflow-wrap:anywhere}
.table.su-table{min-width:0}
.su-access{display:flex;flex-wrap:wrap;gap:.3rem}
.su-access .badge{white-space:normal;text-align:start}
.su-person .muted{font-size:.8125rem}
.su-when{font-size:.875rem}
.su-when>span{display:block;white-space:nowrap}
.su-when .muted{font-size:.75rem;display:block}
.su-table td{vertical-align:middle}
.su-actions{text-align:end;width:1%;white-space:nowrap}
.su-actions .inline-form{display:inline-flex;margin-inline-end:.4rem}
.su-auth .quick-form{width:19rem}
.su-auth .field{gap:.25rem}
@media (max-width:60rem){.su-table thead{display:none}.su-table,.su-table tbody{display:block}.su-table tr{display:grid;gap:.4rem;padding:.9rem 1rem;border-block-end:1px solid var(--rule)}.su-table td{display:block;padding:0;border:0;text-align:start}.su-actions{white-space:normal}.su-auth .quick-form{inset-inline-end:auto;inset-inline-start:0}}
/* Publisher-logo watermark (an overlay; stored pictures are untouched) */
.wm{position:relative;display:block;line-height:0}
.wm::after{content:"";position:absolute;width:var(--wm-s,24%);aspect-ratio:1;background:var(--wm) center/contain no-repeat;opacity:var(--wm-o,.35);pointer-events:none;z-index:1}
.wm-br::after{right:5%;bottom:4%}.wm-bl::after{left:5%;bottom:4%}.wm-tr::after{right:5%;top:4%}.wm-tl::after{left:5%;top:4%}.wm-c::after{left:50%;top:50%;transform:translate(-50%,-50%)}
.wm-large{max-width:13rem}@media (min-width:48rem){.wm-large{max-width:20rem}}
.product .wm-large{max-width:26rem}
.wm-thumb{display:inline-block}
.thumbs>a{display:inline-block;line-height:0}
.lb{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;padding:1rem}
.lb:target{display:flex;animation:qv-in .2s ease}
.lb-bg{position:absolute;inset:0;background:rgba(8,28,24,.75)}
.lb-fig{position:relative;z-index:1;margin:0;display:grid;gap:.5rem;justify-items:center;max-width:min(92vw,46rem)}
.lb-fig .wm{display:inline-block}
.lb-fig img{max-height:84vh;width:auto;max-width:100%;border-radius:8px;box-shadow:0 30px 70px -20px rgba(0,0,0,.6)}
.lb-fig figcaption{color:#fff;font-size:.875rem}
.lb-close{position:absolute;top:1rem;inset-inline-end:1rem;z-index:2}
.wm-admin{display:grid;gap:1.5rem;align-items:start}
@media (min-width:60rem){.wm-admin{grid-template-columns:minmax(0,1fr) 15rem}}
.wm-preview{position:sticky;top:1rem;display:grid;gap:.5rem}
.wm-demo{display:block;width:100%;aspect-ratio:2/3;border-radius:8px;background:linear-gradient(160deg,#14A898,#00564C)}
.field-label{font-weight:600;color:#3E4F48;font-size:var(--step--1)}
.wm-switch{font-size:1.05rem}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* ---- Audit pass (Nov 2026): navigation, sharing, related titles, sorting ---- */
.lb-fig img{max-width:min(92vw,46rem);height:auto}
.header-actions .account-link{display:inline-flex;align-items:center;gap:.4rem}
.header-actions svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.header-actions .account-link[aria-current="page"]{color:var(--emerald)}
.nav-home{display:none!important}
@media (max-width:47.99rem){
  body{padding-bottom:calc(4.25rem + env(safe-area-inset-bottom))}
  .site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transform:none!important;filter:none!important}
  .header-actions{position:fixed;inset-inline:0;bottom:0;z-index:150;margin:0;display:grid!important;grid-template-columns:repeat(6,1fr);gap:0!important;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--rule);box-shadow:0 -6px 24px -12px rgba(16,32,27,.25);padding:.3rem .25rem calc(.3rem + env(safe-area-inset-bottom))}
  .header-actions .account-link,.nav-home{display:flex!important;flex-direction:column;gap:.15rem;padding:.35rem .1rem!important;font-size:.6875rem!important;line-height:1.15;text-align:center;color:var(--ink-soft,#4b5a55);box-shadow:none!important;min-height:3rem;justify-content:center;border-radius:10px}
  .header-actions .account-link span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .header-actions svg{width:1.35rem;height:1.35rem}
  .header-actions .account-link[aria-current="page"]{color:var(--emerald);background:var(--emerald-tint,#e6f4f1)}
  .header-row{flex-wrap:nowrap}
  .header-search{order:0;flex:1 1 auto;min-width:0}
  .brand-logo{width:7.5rem;height:auto}
  .qv,.lb{z-index:400}
}
@media print{.header-actions{display:none!important}body{padding-bottom:0}}
.share{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--rule)}
.share-label{font-size:.875rem;font-weight:600;margin-inline-end:.25rem}
.share-link{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid var(--rule);color:var(--ink);background:var(--surface);transition:background .15s,color .15s,border-color .15s}
.share-link svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.share-link:hover{color:#fff;border-color:transparent}
.share-whatsapp:hover{background:#25d366}.share-telegram:hover{background:#229ed9}.share-facebook:hover{background:#1877f2}.share-x:hover{background:#111}.share-email:hover{background:var(--emerald)}
.related{margin-top:3rem}
.related-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}
.related-head h2{margin:0}
.related-more{font-weight:600;font-size:.9375rem}
@media (max-width:39.99rem){
  .grid-row{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:46%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.75rem;-webkit-overflow-scrolling:touch}
  .grid-row>.card{scroll-snap-align:start}
}
.table-wrap,.book .table{max-width:100%}
.book-main .table{display:block;overflow-x:auto}
@media screen{.slip .table{display:block;overflow-x:auto}}
.filter-check{align-self:end;padding-bottom:.6rem;white-space:nowrap}
.crumbs{font-size:.875rem;color:var(--muted,#6b7a75)}
.crumbs a{color:inherit}
@media (max-width:30rem){.row-pop>.pop-menu,.row-pop>.quick-form{max-width:calc(100vw - 2rem);white-space:normal}}

.stat-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:.75rem;margin:0 0 1rem}
.stat{background:var(--surface);border:1px solid var(--rule);border-radius:14px;padding:.9rem 1rem}
.stat dt{font-size:.8125rem;color:var(--muted,#6b7a75);font-weight:600}
.stat dd{margin:.2rem 0 0;font-size:1.35rem;font-weight:800;color:var(--ink)}
.stat p{margin:.15rem 0 0;font-size:.8125rem;color:var(--muted,#6b7a75)}
.stat-accent{background:var(--emerald);border-color:var(--emerald)}.stat-accent dt,.stat-accent dd,.stat-accent p{color:#fff}
.stat-warn{border-color:#e0a930;background:#fff8e6}
.table-money td,.table-money th{white-space:nowrap}
.payout-form{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));align-items:end;margin-top:.5rem}
.account-tiles{list-style:none;padding:0;margin:1.5rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.75rem}
.account-tiles a{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--rule);border-radius:14px;background:var(--surface);text-decoration:none;color:var(--ink);font-weight:600;min-height:5.5rem}
.account-tiles a:hover{border-color:var(--emerald);color:var(--emerald)}
.account-tiles svg{width:1.5rem;height:1.5rem;fill:none;stroke:var(--emerald);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.address-list{list-style:none;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr))}
.address-card{border:1px solid var(--rule);border-radius:14px;padding:1rem;background:var(--surface);display:grid;gap:.75rem}
.address-card address{font-style:normal;line-height:1.5}
.address-default{border-color:var(--emerald)}
.address-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.link-danger{color:#b42318}
.narrow-form{max-width:32rem}

.golive summary{display:flex;align-items:center;gap:.75rem;cursor:pointer;list-style:none}
.golive summary h2{margin:0}
.checklist{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.5rem}
.checklist li{display:flex;gap:.6rem;align-items:baseline}
.check-mark{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:999px;font-weight:800;font-size:.8rem;flex:none}
.check-ok .check-mark{background:var(--emerald);color:#fff}
.check-todo .check-mark{background:#e0a930;color:#1b1b1b}

/* ---- Books list (Nov 2026): category chips, compact filters, active filters, tidy cards ---- */
.listing-head{margin-bottom:1rem}
@media (max-width:47.99rem){.section.listing{padding-block-start:1.25rem}}
.listing-head .page-title{margin-bottom:.25rem}
.listing-lead{color:var(--muted,#6b7a75);margin:0}
.chips{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem 0 .75rem;margin:0 0 .5rem;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.chip{flex:none;display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border:1px solid var(--rule);border-radius:999px;background:var(--surface);color:var(--ink);text-decoration:none;font-weight:600;font-size:.875rem;white-space:nowrap;scroll-snap-align:start;transition:border-color .15s,background .15s,color .15s}
.chip:hover{border-color:var(--emerald);color:var(--emerald)}
.chip[aria-current="page"]{background:var(--emerald);border-color:var(--emerald);color:#fff}
.chip-n{font-size:.75rem;font-weight:700;padding:.05rem .45rem;border-radius:999px;background:var(--emerald-tint,#e6f4f1);color:var(--emerald-deep,#0b5d4f)}
.chip[aria-current="page"] .chip-n{background:rgba(255,255,255,.22);color:#fff}
.filters-compact{gap:.6rem .75rem;padding:.85rem 1rem}
.filters-compact .field label{font-size:.8125rem}
@media (max-width:47.99rem){
  .filters-compact{display:grid;grid-template-columns:1fr 1fr;padding:.75rem}
  .filters-compact .field-search{grid-column:1/-1}
  .filters-compact .filter-check{padding:0;align-self:center;white-space:normal;font-size:.875rem}
  .filters-compact .field select{width:100%;min-width:0}
  .filters-compact .field{min-width:0}
  .filters-compact .button{padding-inline:.75rem}
  .filters-compact label{margin-bottom:.2rem}
}
.active-filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:-.5rem 0 1rem}
.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .5rem .3rem .75rem;border-radius:999px;background:var(--emerald-tint,#e6f4f1);color:var(--emerald-deep,#0b5d4f);font-size:.8125rem;font-weight:600;text-decoration:none}
.pill svg{width:.9rem;height:.9rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.pill:hover{background:var(--mint,#cdeee6)}
.pill-clear{font-size:.8125rem;font-weight:600;color:var(--muted,#6b7a75)}
.card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.card-author,.card-pub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;overflow:hidden}
.card-badge{position:absolute;top:.5rem;inset-inline-start:.5rem;z-index:2;font-size:.6875rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;pointer-events:none}
.card-badge-oos{background:rgba(255,255,255,.92);color:#8a4b00;border:1px solid #f0c66b}
.card-foot .price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .4rem}
@media (max-width:39.99rem){
  .grid{gap:1rem .75rem}
  .card{padding:.5rem .5rem .75rem}
  .card-title{font-size:.9375rem}
  .card-pub{display:none}
  .card-foot .card-cat{display:none}
  .price-off{font-size:.6875rem}
}
@media (min-width:64rem){
  .header-row{flex-wrap:nowrap}
  .header-search{flex:1 1 16rem;max-width:none;min-width:12rem}
  .header-actions{flex-wrap:nowrap;gap:1.1rem;flex:none}
}

/* ---- Header and books-list polish ---- */
.brand{flex:none}
.brand-logo{max-width:none;flex:none}
@media (min-width:48rem){
  .brand-logo{height:4.25rem;width:auto}
  .header-row{gap:1rem 1.5rem}
}
@media (min-width:64rem){
  .header-search{flex:1 1 22rem}
  .header-actions{gap:1.25rem}
}
@media (min-width:48rem){
  .header-row{flex-wrap:nowrap}
  .header-search{flex:1 1 auto;min-width:10rem;max-width:none}
  .header-actions{flex:none;flex-wrap:nowrap;gap:.25rem;margin-inline-start:0}
  .header-actions .account-link{flex-direction:column;gap:.2rem;font-size:.75rem;font-weight:600;padding:.35rem .55rem;border-radius:10px;min-width:3.5rem;text-align:center;box-shadow:none}
  .header-actions .account-link:hover{background:var(--emerald-tint,#e6f4f1);box-shadow:none}
  .header-actions .account-link[aria-current="page"]{background:var(--emerald-tint,#e6f4f1)}
  .header-actions svg{width:1.35rem;height:1.35rem}
}
.chips{scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 3rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 3rem),transparent);padding-inline-end:2.5rem}
[dir="rtl"] .chips{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 3rem),transparent);mask-image:linear-gradient(270deg,#000 calc(100% - 3rem),transparent)}
.chips::-webkit-scrollbar{display:none}
@media (min-width:48rem){
  .filters-compact{display:grid;gap:.75rem 1rem;align-items:end;
    grid-template-columns:repeat(4,minmax(0,1fr)) auto;
    grid-template-areas:"search search search price go" "cat pub sort stock stock"}
  .filters-compact:not(:has(#fp)){grid-template-areas:"search search search price go" "cat sort stock stock stock"}
  .filters-compact .field-search{grid-area:search}
  .filters-compact .field-cat{grid-area:cat}
  .filters-compact .field-pub{grid-area:pub}
  .filters-compact .field:has(#fs){grid-area:sort}
  .filters-compact .price-range{grid-area:price}
  .filters-compact .filter-check{grid-area:stock}
  .filters-compact .button{grid-area:go}
  .filters-compact .field{margin:0;min-width:0}
  .filters-compact .field select,.filters-compact .field input{width:100%;min-width:0;height:2.9rem;box-sizing:border-box}
  .filters-compact .filter-check{margin:0;align-self:end;min-height:2.9rem;display:flex;align-items:center;gap:.6rem;padding:0;white-space:normal;line-height:1.3}
  .filters-compact .button{align-self:end;height:2.9rem;white-space:nowrap;padding-inline:1.5rem}
}
.price-range{border:0;padding:0;margin:0;min-width:0}
.price-range legend{font-size:.8125rem;font-weight:600;padding:0;margin-bottom:.35rem}
.price-inputs{display:flex;align-items:center;gap:.5rem}
.price-inputs input{flex:1 1 0;min-width:0;height:2.9rem;box-sizing:border-box}
.price-inputs span{color:var(--muted,#6b7a75)}
.price-inputs input{padding-inline:.85rem}
@media (min-width:48rem) and (max-width:71.99rem){
  .filters-compact{grid-template-areas:"search search price price go" "cat pub sort stock stock"}
  .filters-compact:not(:has(#fp)){grid-template-areas:"search search price price go" "cat sort stock stock stock"}
}
@media (max-width:47.99rem){
  .filters-compact .price-range{grid-column:1/-1}
  .filters-compact .button{grid-column:1/-1}
}
.listing .empty{max-width:none;margin:1rem 0;padding:2.5rem 1.5rem;text-align:center;background:var(--surface);border:1px dashed var(--rule);border-radius:16px}
.listing .empty .empty-star{margin-inline:auto}
.listing .empty p{max-width:32rem;margin-inline:auto}
.listing .empty + .more{margin-top:-.25rem;text-align:center}

/* Category row: arrow buttons on hover (browser-native scroll buttons, no script); browsers without them wrap the row on computers. */
.chips{scroll-behavior:smooth;anchor-name:--chips}
@supports selector(::scroll-button(*)){
  .chips::scroll-button(*){position:absolute;position-anchor:--chips;top:calc(anchor(center) - 1.4rem);width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid var(--rule);background:#fff;color:var(--emerald-deep,#0b5d4f);font:700 1.35rem/1 system-ui,sans-serif;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px -8px rgba(16,32,27,.45);opacity:0;transition:opacity .2s,background .15s,color .15s;z-index:3}
  .chips::scroll-button(left){content:'‹' / 'Previous';left:calc(anchor(left) - .5rem)}
  .chips::scroll-button(right){content:'›' / 'Next';right:calc(anchor(right) - .5rem)}
  .chips:hover::scroll-button(*),.chips:focus-within::scroll-button(*){opacity:1}
  .chips::scroll-button(*):hover{background:var(--emerald);color:#fff;border-color:var(--emerald)}
  .chips::scroll-button(*):disabled{opacity:0;pointer-events:none}
  @media (hover:none){.chips::scroll-button(*){display:none}}
}
@supports not selector(::scroll-button(*)){
  @media (hover:hover) and (min-width:48rem){.chips{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none;padding-inline-end:0}}
}

/* ---- Site-wide polish (Nov 2026) ---- */
html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body{-webkit-font-smoothing:antialiased}
h1,h2,h3{text-wrap:balance}
p,li,dd{text-wrap:pretty}
:focus-visible{outline:3px solid var(--gilt,#e0a930);outline-offset:2px;border-radius:6px}
::selection{background:var(--emerald-tint,#cdeee6)}
/* Hero: four words on one line on computers, a tidy 2 × 2 on phones */
.hero-words{font-size:clamp(1.9rem,4.4vw,3.4rem);gap:.25rem .9rem;flex-wrap:wrap}
.hero-words>span{white-space:nowrap}
@media (max-width:47.99rem){
  .hero-words{display:grid;grid-template-columns:repeat(2,auto);justify-content:center;gap:.1rem 1.25rem;font-size:clamp(1.7rem,8vw,2.4rem)}
  .hero-words .hero-star{display:none}
}
/* Cart and checkout: items on the left, a sticky summary on the right */
.buy-layout{display:grid;gap:1.5rem;align-items:start;margin-top:1rem}
@media (min-width:60rem){.buy-layout{grid-template-columns:minmax(0,1fr) 22rem;gap:2rem}}
.buy-main{min-width:0}
.buy-main>.dash-section:first-child{margin-top:0}
.buy-summary{background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:1.25rem;box-shadow:var(--shadow,0 10px 30px -18px rgba(16,32,27,.35));display:grid;gap:1rem}
@media (min-width:60rem){.buy-summary{position:sticky;top:1rem}}
.buy-summary h2{margin:0;font-size:1.15rem}
.buy-summary .order-sum{margin:0}
.buy-summary form{display:grid;gap:.5rem;margin:0}
.buy-more{margin:0;text-align:center;font-size:.9375rem}
/* Sign-in and sign-up: a centred card */
.auth-card{max-width:28rem;margin-inline:auto;background:var(--surface);border:1px solid var(--rule);border-radius:18px;padding:clamp(1.25rem,4vw,2.25rem);box-shadow:var(--shadow,0 10px 30px -18px rgba(16,32,27,.35))}
.auth-card .page-title{margin-top:0}
.auth-card input{width:100%}
/* File pickers match the buttons */
input[type=file]{font:inherit;font-size:.875rem;color:var(--muted,#6b7a75);max-width:100%}
input[type=file]::file-selector-button{font:inherit;font-weight:600;font-size:.875rem;margin-inline-end:.75rem;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--emerald);background:#fff;color:var(--emerald);cursor:pointer;transition:background .15s,color .15s}
input[type=file]::file-selector-button:hover{background:var(--emerald);color:#fff}
/* Notices and alerts: full width of their column, softer */
.notice,.alert{border-radius:12px}
.dash .notice,.dash .alert{max-width:none}
/* Tables: comfortable rows and a hover tint */
.table tbody tr{transition:background .12s}
.table tbody tr:hover{background:rgba(0,150,136,.04)}
/* Dashboard pages use the full width, with a readable cap */
.dash{max-width:76rem}
/* Footer links and small print */
.site-footer a{text-underline-offset:3px}
.site-footer a:hover{color:var(--gilt-pale,#f4d58d)}

.parcel{border-radius:16px;max-width:none}
.parcel>.parcel-head,.parcel>h2:first-child{margin-top:0!important}
.cart-cover .cover-made .cover-title,.cart-cover .cover-made .cover-author{display:none}
.cart-cover .cover-made .cover-star{width:55%;height:auto}

.buy{max-width:28rem;border-radius:16px}
.order-sum{max-width:28rem}
.buy-summary .order-sum{max-width:none}
.book-description{max-width:46rem;line-height:1.8}
.details{max-width:46rem}

