:root{--mist-50:#f7fafd;--mist-100:#fff;--mist-200:#eef3fa;--mist-300:#dce5f1;--ink-900:#0c1a2e;--ink-700:#1b2a48;--ink-500:#3d4d6b;--ink-300:#6e7f9a;--ink-100:#a8b5ca;--ocean-50:#e8f0fb;--ocean-100:#c0d5f2;--ocean-500:#2a6fdb;--ocean-600:#1e58b8;--ocean-700:#133f84;--indigo-100:#d6d9ea;--indigo-500:#3d3a78;--indigo-700:#1f1d4d;--teal-100:#bfe0e0;--teal-500:#1c7d8c;--teal-700:#0e5662;--marigold-100:#f7e4b8;--marigold-500:#d9a441;--marigold-700:#97701f;--ember-100:#f7dad5;--ember-500:#c53a2c;--ember-700:#8a2418;--bg:var(--mist-100);--bg-elevated:var(--mist-50);--bg-sunken:var(--mist-200);--surface:#fdfeff;--border:var(--mist-300);--border-strong:var(--ink-500);--fg:var(--ink-900);--fg-muted:var(--ink-500);--fg-subtle:var(--ink-300);--fg-inverse:var(--mist-50);--accent:var(--ocean-500);--accent-hover:var(--ocean-600);--accent-press:var(--ocean-700);--accent-soft:var(--ocean-50);--success:var(--teal-500);--warning:var(--marigold-500);--danger:var(--ember-500);--deep-navy:var(--ink-900);--royal-blue:var(--ocean-500);--royal-blue-hover:var(--ocean-600);--ice-blue:var(--ocean-50);--warm-orange:var(--marigold-500);--warm-orange-hover:var(--marigold-700);--fresh-green:var(--teal-500);--golden-amber:var(--marigold-500);--alert-red:var(--ember-500);--white:#fff;--snow:var(--mist-50);--mist:var(--mist-200);--silver:var(--mist-300);--slate:var(--ink-300);--charcoal:var(--ink-500);--dark:var(--ink-900);--primary:var(--ocean-500);--primary-dark:var(--ink-900);--primary-light:var(--ocean-50);--bg-light:var(--mist-50);--text-dark:var(--ink-900);--font-display:var(--font-instrument),"Cormorant Garamond",Georgia,serif;--font-serif:var(--font-newsreader),"Source Serif Pro",Georgia,serif;--font-sans:var(--font-geist),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-heading:var(--font-display);--font-body:var(--font-sans);--text-xs:12px;--text-sm:14px;--text-base:16px;--text-md:18px;--text-lg:22px;--text-xl:28px;--text-2xl:36px;--text-3xl:48px;--text-4xl:64px;--text-5xl:88px;--text-6xl:120px;--leading-tight:1.05;--leading-snug:1.2;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.04em;--tracking-caps:.12em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--shadow-sm:0 1px 2px #0f1e3714;--shadow-md:0 4px 12px #0f1e371a,0 1px 2px #0f1e370f;--shadow-lg:0 12px 28px #0f1e3724,0 2px 6px #0f1e370f;--shadow-xl:0 24px 60px #0f1e372e;--shadow-hover:var(--shadow-lg);--shadow-book:8px 8px 0 #0c1a2e1a,16px 16px 0 #0c1a2e0a;--border-light:1px solid var(--mist-300);--radius-xs:2px;--radius-sm:4px;--radius:8px;--radius-md:8px;--radius-lg:14px;--radius-xl:24px;--radius-pill:999px;--ease-out:cubic-bezier(.22,1,.36,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--dur-1:.12s;--dur-2:.2s;--dur-3:.36s;--dur-4:.6s;--transition-fast:.12s var(--ease-out);--transition-base:.2s var(--ease-out);--transition-slow:.36s var(--ease-out)}body{font-family:var(--font-sans);color:var(--ink-900);background-color:var(--mist-100);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;font-weight:400;line-height:1.05}h1{font-size:2.5rem;font-style:italic}h2{font-size:2rem;font-style:italic}h3{font-size:1.5rem;font-style:italic}h4{font-family:var(--font-sans);letter-spacing:0;font-size:1.125rem;font-style:normal;font-weight:600}.h-display{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:var(--text-5xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--ink-900)}.eyebrow{font-family:var(--font-sans);font-weight:600;font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--ocean-500);line-height:1}.body-lead{font-family:var(--font-serif);font-weight:400;font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--ink-700)}.quote{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:var(--text-2xl);line-height:var(--leading-snug);color:var(--ink-700)}.container,.container-lg,.container-xl,.container-xxl{max-width:1280px!important}a{color:var(--ocean-600);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--ocean-700)}.btn{font-family:var(--font-sans);border-radius:var(--radius-md);transition:background var(--transition-base),color var(--transition-base),box-shadow var(--transition-base);letter-spacing:0;padding:.625rem 1.25rem;font-weight:500}.btn-primary{box-shadow:none;background-color:var(--ocean-500)!important;border-color:var(--ocean-500)!important;color:var(--mist-50)!important}.btn-primary:hover,.btn-primary:focus{box-shadow:none;transform:none;background-color:var(--ocean-600)!important;border-color:var(--ocean-600)!important}.btn-primary:active{transform:none;background-color:var(--ocean-700)!important;border-color:var(--ocean-700)!important}.btn-outline-primary{color:var(--ink-900)!important;border-color:var(--ink-700)!important;background:0 0!important}.btn-outline-primary:hover{box-shadow:none;background-color:var(--mist-200)!important;border-color:var(--ink-700)!important;color:var(--ink-900)!important}.btn-warning{box-shadow:none;background-color:var(--marigold-500)!important;border-color:var(--marigold-500)!important;color:var(--ink-900)!important}.btn-warning:hover{transform:none;background-color:var(--marigold-700)!important;border-color:var(--marigold-700)!important;color:var(--mist-50)!important}.btn-success{box-shadow:none;background-color:var(--teal-500)!important;border-color:var(--teal-500)!important;color:var(--mist-50)!important}.btn-success:hover{transform:none;background-color:var(--teal-700)!important;border-color:var(--teal-700)!important}.btn-danger{background-color:var(--ember-500)!important;border-color:var(--ember-500)!important}.btn-secondary{border:1.5px solid var(--ink-700)!important;color:var(--ink-900)!important;background-color:#0000!important}.btn-secondary:hover{background-color:var(--mist-200)!important;border-color:var(--ink-700)!important;color:var(--ink-900)!important}.bg-primary{background-color:var(--ocean-500)!important}.text-primary{color:var(--ocean-600)!important}.bg-light{background-color:var(--mist-50)!important}.card{border:1px solid var(--mist-300);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),transform var(--transition-base);background:var(--surface)}.form-control,.form-select{border:1px solid var(--mist-300);border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--ink-900);background:var(--surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);padding:.625rem .875rem}.form-control:focus,.form-select:focus{border-color:var(--ocean-500);box-shadow:0 0 0 3px #2a6fdb1f}.admin-panel .form-control,.admin-panel .form-select{border-width:2px;border-color:var(--mist-400,#9ca3af)}.admin-panel .form-control:focus,.admin-panel .form-select:focus{border-width:2px;border-color:var(--ocean-500)}.form-label{color:var(--ink-900);font-size:.875rem;font-weight:600;font-family:var(--font-sans);margin-bottom:.35rem}.site-header{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--mist-300);box-shadow:none;background:#ffffffd1;position:sticky;top:0}.top-bar{background-color:var(--mist-50);border-bottom:1px solid var(--mist-300);font-size:.75rem;font-family:var(--font-sans);padding:5px 0}.top-bar-item{color:var(--ink-500);align-items:center;gap:5px;display:inline-flex}.top-bar-divider{color:var(--ink-300);font-size:.7rem}.top-bar-link{font-size:.75rem;font-weight:500;color:var(--ink-500)!important}.top-bar-link:hover{color:var(--ocean-600)!important}.top-bar-user-toggle{align-items:center;font-size:.75rem;font-weight:500;display:inline-flex;color:var(--ink-500)!important;box-shadow:none!important;text-decoration:none!important}.top-bar-user-toggle:hover,.top-bar-user-toggle:focus{color:var(--ocean-600)!important}.top-bar .dropdown-menu{background-color:var(--surface);border:1px solid var(--mist-300);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:.85rem;font-family:var(--font-sans);padding:.35rem;margin-top:.35rem!important}.top-bar .dropdown-item{border-radius:var(--radius-sm);color:var(--ink-900)}.top-bar .dropdown-item:hover,.top-bar .dropdown-item:focus{background-color:var(--mist-200);color:var(--ink-900)}.top-bar .dropdown-link{text-decoration:none;display:block;color:var(--ink-900)!important}.main-header{background-color:#0000;border-bottom:none}.main-header-container{justify-content:center;position:relative}.main-header-center{flex:auto;justify-content:center}.main-header-icons{right:calc(var(--bs-gutter-x)/2);position:absolute}.header-logo{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.75rem;font-style:italic;font-weight:400;text-decoration:none;display:inline-flex;color:var(--ink-900)!important}.header-logo:hover{color:var(--ink-900)!important}.header-logo-img{object-fit:cover;border-radius:50%;width:44px;height:44px}.header-logo-dot{color:var(--ocean-500)}.header-icon{color:var(--ink-700);transition:color var(--transition-fast),background var(--transition-fast);border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.header-icon:hover{color:var(--ink-900);background:var(--mist-200)}.header-search .search-input-group{border:1px solid var(--mist-300);background:var(--surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);border-radius:999px}.header-search .search-input-group:focus-within{border-color:var(--ocean-500);box-shadow:0 0 0 3px #2a6fdb1a}.header-search .search-icon-btn{color:var(--ink-300);background:0 0;border:none;align-items:center;padding:.5rem .5rem .5rem .875rem;text-decoration:none;display:inline-flex}.header-search .search-icon-btn:hover{color:var(--ocean-600)}.header-search .form-control{color:var(--ink-900);background:0 0;border:none;border-radius:0 999px 999px 0;font-size:.875rem;box-shadow:none!important}.header-search .form-control:focus{box-shadow:none!important}.nav-row{border-bottom:1px solid var(--mist-300);background-color:#0000!important;padding:0!important}.nav-row .nav-link{font-family:var(--font-sans);transition:color var(--transition-base),background var(--transition-base);border-radius:0;font-size:.875rem;font-weight:500;color:var(--ink-700)!important;background:0 0!important;padding:.65rem 1.4rem!important}.nav-row .nav-link:hover{color:var(--ocean-600)!important;background:0 0!important}.nav-row .nav-link.active{text-underline-offset:6px;font-weight:600;text-decoration:underline;text-decoration-thickness:2px;color:var(--ocean-600)!important;background:0 0!important}.nav-row-toggle{padding:.3rem .6rem;border-color:var(--mist-300)!important}.lang-toggle{letter-spacing:.04em;font-family:var(--font-sans)!important;border-color:var(--mist-300)!important;color:var(--ink-500)!important;transition:all var(--transition-fast)!important;background:0 0!important;border-radius:999px!important;padding:.2rem .65rem!important;font-size:.7rem!important;font-weight:600!important}.lang-toggle:hover{background-color:var(--mist-200)!important;border-color:var(--ocean-500)!important;color:var(--ink-900)!important}.search-suggestions{border:1px solid var(--mist-300);background:var(--surface);box-shadow:var(--shadow-md);overflow:hidden;border-radius:var(--radius-md)!important}.search-suggestions .list-group-item{border-color:var(--mist-200);background:var(--surface);color:var(--ink-700);font-size:.88rem;font-family:var(--font-sans)}.search-suggestions .list-group-item:hover,.search-suggestions .list-group-item.active{border-color:var(--mist-200);background-color:var(--mist-200)!important;color:var(--ink-900)!important}.book-card{transition:transform var(--transition-base),box-shadow var(--transition-base);box-shadow:none;background:0 0;border-radius:0;overflow:visible;border:none!important}.book-card:hover{box-shadow:none;transform:translateY(-2px)}.book-card .book-card-cover{aspect-ratio:2/3;background:var(--mist-200);width:100%;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base);border-radius:0;position:relative;overflow:hidden}.book-card:hover .book-card-cover{box-shadow:var(--shadow-md)}.book-card .card-img-top{object-fit:cover;border-radius:0;width:100%;height:100%;display:block}.book-card .card-body{background:0 0;padding:14px 0 0!important}.book-card .card-title{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.01em;font-style:italic;font-weight:400;line-height:1.1;margin-bottom:2px!important;font-size:1.25rem!important}.book-card .card-text{font-family:var(--font-sans);color:var(--ink-500);margin-bottom:8px!important;font-size:.75rem!important}.book-card .book-card-eyebrow{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ocean-500);margin-bottom:4px;font-size:.6875rem;font-weight:600;display:block}.book-card .fw-bold.text-primary{font-family:var(--font-sans);font-feature-settings:"tnum";font-weight:600;color:var(--ink-900)!important;font-size:.95rem!important}.book-card .btn-sm{font-family:var(--font-sans);border-radius:var(--radius-md)!important;padding:6px 12px!important;font-size:.75rem!important}.price-tag{font-family:var(--font-sans);color:var(--ink-900);font-feature-settings:"tnum";font-size:1.05rem;font-weight:600}.price-compare{color:var(--ink-300);font-size:.8rem;font-family:var(--font-sans);text-decoration:line-through}.deal-badge{z-index:1;position:absolute;top:10px;left:10px}.badge{font-family:var(--font-sans);letter-spacing:.02em;border-radius:999px;padding:5px 11px;font-size:.7rem;font-weight:500}.badge.bg-danger{background-color:var(--marigold-500)!important;color:var(--ink-900)!important}.cart-badge{justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.65rem;font-weight:600;display:inline-flex;position:absolute;top:-2px;right:-8px;background-color:var(--ocean-500)!important;color:var(--mist-50)!important}.status-badge{border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:500}.whatsapp-btn{color:#fff;border-radius:var(--radius-md);font-size:1rem;font-weight:600;font-family:var(--font-sans);transition:background-color var(--transition-fast);background-color:#25d366;border:none;align-items:center;gap:8px;padding:12px 24px;display:inline-flex}.whatsapp-btn:hover{color:#fff;background-color:#128c7e}.hero-split{grid-template-columns:.78fr 1.22fr;align-items:stretch;gap:20px;display:grid}.hero-split-left{border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--mist-200)0%,var(--mist-100)100%);border:1px solid var(--mist-300);min-height:480px;position:relative;overflow:hidden}.hero-text-panel{height:100%;min-height:inherit;flex-direction:column;justify-content:space-between;padding:40px 36px 36px;display:flex;position:relative}.hero-text-panel-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-text-panel-wash{background:linear-gradient(#f7fafd8c 0%,#f7fafdb3 55%,#f7fafde0 100%);position:absolute;inset:0}.hero-main-carousel{position:absolute;inset:0}.hero-main-carousel .carousel-inner,.hero-main-carousel .carousel-item{height:100%}.hero-main-carousel .carousel-indicators{margin-bottom:14px}.hero-main-carousel .carousel-indicators [data-bs-target]{opacity:.55;background:#fff;border:0;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 1px #1c1e2659}.hero-main-carousel .carousel-indicators .active{opacity:1}.hero-main-slide{height:100%;display:block}.hero-main-slide img{object-fit:cover;width:100%;height:100%;display:block}.hero-split-left:before{content:"";opacity:.06;pointer-events:none;background-image:url(/design/paper-texture.svg);background-size:cover;position:absolute;inset:0}.hero-split-headline{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;max-width:360px;margin:0 0 16px;font-size:clamp(40px,4.4vw,64px);font-style:italic;font-weight:400;line-height:1;position:relative}.hero-split-tagline{font-family:var(--font-serif);color:var(--ink-700);max-width:320px;margin:0 0 24px;font-size:16px;line-height:1.5;position:relative}.hero-split-right{flex-direction:column;gap:20px;display:flex}.hero-promo-slot{border-radius:var(--radius-lg);background:var(--mist-200);border:1px solid var(--mist-300);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:230px;padding:24px;display:flex;position:relative;overflow:hidden}.hero-promo-slot .hero-promo-label{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500);margin-bottom:8px;font-size:.7rem;font-weight:600}.hero-promo-slot .hero-promo-title{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.01em;font-size:1.875rem;font-style:italic}.hero-promo-slot.has-image{padding:0}.hero-promo-slot.has-image img{object-fit:cover;width:100%;height:100%}.hero-promo-link{color:inherit;display:block;text-decoration:none!important}.hero-promo-link .hero-promo-slot{transition:border-color var(--transition-base),box-shadow var(--transition-base)}.hero-promo-link:hover .hero-promo-slot{border-color:var(--ocean-500);box-shadow:var(--shadow-md)}@media (max-width:991.98px){.hero-split{grid-template-columns:1fr}.hero-split-left{min-height:360px}.hero-promo-slot{min-height:180px}}@media (prefers-reduced-motion:no-preference){.reveal{opacity:0;animation:reveal-up var(--dur-4)var(--ease-out)forwards;transform:translateY(14px)}.reveal-d1{animation-delay:60ms}.reveal-d2{animation-delay:.16s}.reveal-d3{animation-delay:.28s}.reveal-d4{animation-delay:.4s}}@keyframes reveal-up{to{opacity:1;transform:translateY(0)}}.hero-carousel{border-radius:var(--radius-lg);width:100%;overflow:hidden}.hero-slide{width:100%;height:400px}.hero-carousel .carousel-control-prev,.hero-carousel .carousel-control-next{opacity:.6;width:5%}.hero-carousel .carousel-control-prev:hover,.hero-carousel .carousel-control-next:hover{opacity:1}.hero-carousel .carousel-indicators{margin-bottom:1rem}.hero-carousel .carousel-indicators button{opacity:.5;border-radius:50%;width:10px;height:10px}.hero-carousel .carousel-indicators button.active{opacity:1}@media (max-width:767.98px){.hero-slide{height:220px}}.ticker-strip{background:var(--ink-900);color:var(--mist-50);padding:18px 0;overflow:hidden}.ticker-track{font-family:var(--font-display);white-space:nowrap;gap:56px;font-size:1.5rem;font-style:italic;animation:60s linear infinite ticker-scroll;display:flex}.ticker-dot{color:var(--ocean-500);font-style:normal}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.editorial-feature{padding:96px 0 64px}.editorial-feature-grid{grid-template-columns:.85fr 1.15fr;align-items:center;gap:64px;display:grid}.editorial-feature-image{text-align:center;position:relative}.editorial-feature-image img{width:100%;max-width:320px;box-shadow:var(--shadow-book);margin:0 auto;display:block}.editorial-feature-headline{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;margin:12px 0 24px;font-size:clamp(36px,4vw,56px);font-style:italic;font-weight:400;line-height:1.05}.editorial-feature-body{font-family:var(--font-serif);color:var(--ink-700);margin-bottom:20px;font-size:1.125rem;line-height:1.6}@media (max-width:991.98px){.editorial-feature-grid{grid-template-columns:1fr;gap:32px}}.mood-section{background:var(--mist-50);border-top:1px solid var(--mist-300);border-bottom:1px solid var(--mist-300);padding:96px 0}.mood-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.mood-tile{cursor:pointer;border-radius:var(--radius-lg);min-height:160px;transition:transform var(--transition-base);border:1px solid #0000;flex-direction:column;justify-content:space-between;padding:32px 24px;display:flex;text-decoration:none!important}.mood-tile:hover{transform:translateY(-2px)}.mood-tile .mood-tile-count{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;opacity:.7;font-size:11px;font-weight:600}.mood-tile .mood-tile-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.875rem;font-style:italic;font-weight:400;line-height:1}.mood-tile .mood-tile-arrow{opacity:.7;font-style:normal}@media (max-width:991.98px){.mood-grid{grid-template-columns:repeat(2,1fr)}}.pull-quote-section{max-width:1280px;margin:0 auto;padding:128px 0}.pull-quote{max-width:720px;font-family:var(--font-display);color:var(--ink-900);text-align:center;letter-spacing:-.02em;margin:0 auto;font-size:clamp(32px,4vw,56px);font-style:italic;font-weight:400;line-height:1.15}.pull-quote-source{text-align:center;font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500);margin-top:24px;font-size:12px}.section-heading{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;border-bottom:none;padding-bottom:0;font-size:2rem;font-style:italic;font-weight:400;line-height:1.1;display:block}.section-eyebrow{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ocean-500);margin-bottom:8px;font-size:.6875rem;font-weight:600;display:block}.category-card{text-align:center;transition:transform var(--transition-base),box-shadow var(--transition-base);cursor:pointer;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--mist-300)}.category-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.filter-sidebar{position:sticky;top:80px}.filter-panel{background-color:var(--surface);border:1px solid var(--mist-300);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem}.filter-panel .filter-title{color:var(--ink-900);font-family:var(--font-display);font-size:1.125rem;font-style:italic}.filter-panel .accordion-button{color:var(--ink-900);font-family:var(--font-sans);padding:.6rem 0;font-size:.875rem;font-weight:500;box-shadow:none!important;background:0 0!important}.filter-panel .accordion-button:not(.collapsed){color:var(--ocean-600)}.filter-panel .accordion-button:after{background-size:.85rem;width:.85rem;height:.85rem}.filter-panel .accordion-item{border-color:var(--mist-200);background:0 0}.qty-control .btn{font-weight:600;border:1px solid var(--mist-300)!important;color:var(--ink-900)!important;background:var(--surface)!important}.qty-control .btn:hover{background-color:var(--mist-200)!important;color:var(--ink-900)!important}.qty-control .form-control{border-color:var(--mist-300);color:var(--ink-900);font-weight:600}.badge-new{letter-spacing:.04em;font-size:.65rem;font-weight:600;background-color:var(--teal-500)!important;color:var(--mist-50)!important}.badge-discount{font-size:.65rem;font-weight:600;background-color:var(--marigold-500)!important;color:var(--ink-900)!important}.badge-out-of-stock{font-size:.65rem;font-weight:600;background-color:var(--ember-500)!important}.badge-in-stock{color:var(--teal-500);font-size:.8rem;font-weight:600}.breadcrumb{font-family:var(--font-sans)}.breadcrumb-item+.breadcrumb-item:before{content:"›";color:var(--ink-300)}.breadcrumb-item a{color:var(--ink-500)}.breadcrumb-item.active{color:var(--ink-900);font-weight:500}.admin-sidebar{background-color:var(--ink-900);border-radius:var(--radius-lg);min-height:calc(100vh - 56px);padding:1rem .5rem}.admin-sidebar-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;margin-bottom:0;padding:.5rem 1rem .75rem;font-size:.7rem;font-weight:600;color:#f7fafd80!important}.admin-sidebar .nav-link{font-family:var(--font-sans);transition:all var(--transition-fast);align-items:center;gap:.6rem;margin:1px .25rem;font-size:.88rem;font-weight:500;display:flex;color:#f7fafdb3!important;border-radius:var(--radius-md)!important;padding:.55rem .85rem!important}.admin-sidebar .nav-link:hover{color:var(--mist-50)!important;background-color:#2a6fdb2e!important}.admin-sidebar .nav-link.active{box-shadow:0 2px 8px #2a6fdb4d;background-color:var(--ocean-500)!important;color:var(--mist-50)!important}.admin-sidebar-panel .nav-link{border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--ink-500);transition:all var(--transition-fast);align-items:center;gap:.6rem;margin-bottom:2px;padding:.55rem .85rem;font-size:.88rem;font-weight:500;display:flex}.admin-sidebar-panel .nav-link:hover{background-color:var(--mist-200);color:var(--ocean-600)}.admin-sidebar-panel .nav-link.active{background-color:var(--ocean-500);color:var(--mist-50)}.admin-panel h2{font-family:var(--font-roboto),"Helvetica Neue",Arial,sans-serif;letter-spacing:-.01em;font-style:normal}.admin-panel h6{font-family:var(--font-lato),"Helvetica Neue",Arial,sans-serif;letter-spacing:0;font-style:normal;font-weight:700}.admin-main-header .nav-link{font-family:var(--font-sans);white-space:nowrap;transition:color var(--transition-base);font-size:.875rem;font-weight:500;color:var(--ink-700)!important;padding:.4rem .9rem!important}.admin-main-header .nav-link:hover,.admin-main-header .nav-link.active{color:var(--ocean-600)!important}@media (max-width:991.98px){.admin-main-header #nav-main{flex-direction:column;align-items:stretch;margin-top:.75rem}.admin-main-header .header-search{max-width:100%!important}}.admin-page-eyebrow{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-300);margin-bottom:4px;font-size:.7rem;font-weight:600;display:block}.admin-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:var(--surface);border:1px solid var(--mist-300)!important}.admin-card-header{border-bottom:1px solid var(--mist-200);margin-bottom:.85rem;padding-bottom:.75rem}.low-stock-list{flex-direction:column;display:flex}.low-stock-item{border-bottom:1px solid var(--mist-200);justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem 0;display:flex}.low-stock-item:last-child{border-bottom:none}.low-stock-title{font-family:var(--font-sans);color:var(--ink-700);font-size:.85rem}.low-stock-badge{font-family:var(--font-sans);font-feature-settings:"tnum";border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:600}.low-stock-out{background:var(--ember-100);color:var(--ember-700)}.low-stock-low{background:var(--marigold-100);color:var(--marigold-700)}.banner-slot-section{background:var(--surface);border:1px solid var(--mist-300);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem 1.5rem}.banner-slot-empty{border:1.5px dashed var(--mist-300);border-radius:var(--radius-md);text-align:center;color:var(--ink-300);font-family:var(--font-sans);background:var(--mist-50);padding:1.5rem;font-size:.85rem}.banner-row-list{flex-direction:column;gap:10px;display:flex}.banner-row{border:1px solid var(--mist-300);border-radius:var(--radius-md);background:var(--bg-elevated);transition:box-shadow var(--transition-fast);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.banner-row:hover{box-shadow:var(--shadow-sm)}.banner-row-inactive{opacity:.55}.banner-row-order{flex-direction:column;align-items:center;gap:2px;display:flex}.banner-order-btn{color:var(--ink-300);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast);background:0 0;border:none;padding:4px 6px;font-size:.6rem;line-height:1}.banner-order-btn:hover:not(:disabled){color:var(--ocean-600);background:var(--mist-200)}.banner-order-btn:disabled{opacity:.3;cursor:default}.banner-order-num{font-family:var(--font-sans);color:var(--ink-500);font-feature-settings:"tnum";font-size:.72rem;font-weight:600}.banner-row-info{flex:1;min-width:0}.banner-row-title{font-family:var(--font-sans);color:var(--ink-900);font-size:.9rem;font-weight:600}.banner-row-subtitle{font-family:var(--font-sans);color:var(--ink-500);font-size:.8rem}.banner-row-link,.banner-row-schedule{font-family:var(--font-sans);color:var(--ink-300);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.banner-row-actions{text-align:right;font-family:var(--font-sans);white-space:nowrap;font-size:.8rem}.banner-preview{aspect-ratio:16/5;border-radius:var(--radius-lg);background:var(--mist-200);border:1px solid var(--mist-300);text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:16px;display:flex;position:relative;overflow:hidden}.banner-preview.has-image{padding:0}.banner-preview img{object-fit:cover;width:100%;height:100%}.banner-preview-label{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500);margin-bottom:6px;font-size:.65rem;font-weight:600}.banner-preview-title{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.01em;font-size:1.5rem;font-style:italic;line-height:1.1}.banner-preview-subtitle{font-family:var(--font-serif);color:var(--ink-500);margin-top:6px;font-size:.82rem}.banner-preview-compact{aspect-ratio:16/5;border-radius:var(--radius-md);width:200px;min-width:200px;padding:8px}.banner-preview-compact .banner-preview-title{font-size:.95rem}.banner-preview-compact .banner-preview-label{margin-bottom:2px;font-size:.5rem}.banner-preview-compact .banner-preview-subtitle{display:none}@media (max-width:767.98px){.banner-row{flex-wrap:wrap}.banner-preview-compact{width:140px;min-width:140px}}.stat-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:var(--surface);transition:box-shadow var(--transition-fast);border:1px solid var(--mist-300)!important}.stat-card:hover{box-shadow:var(--shadow-md)}.stat-card-icon{border-radius:var(--radius-lg);background:var(--ocean-50);width:48px;min-width:48px;height:48px;color:var(--ocean-600);justify-content:center;align-items:center;margin-right:.85rem;font-size:20px;display:flex}.stat-card-label{color:var(--ink-500);font-family:var(--font-sans);margin-bottom:2px;font-size:.78rem;font-weight:500}.stat-card-value{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;margin-bottom:0;font-style:italic;font-weight:400}.footer-main{background-color:var(--mist-200);color:var(--ink-700);border-top:1px solid var(--mist-300);margin-top:96px}.footer-brand{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.75rem;font-style:italic;font-weight:400;color:var(--ink-900)!important}.footer-heading{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600;color:var(--ink-500)!important}.footer-tagline{font-family:var(--font-serif);color:var(--ink-700);max-width:340px;font-size:.95rem;line-height:1.6}.footer-links li{margin-bottom:.5rem}.footer-links a{color:var(--ink-700);font-family:var(--font-sans);transition:color var(--transition-fast);font-size:.875rem;display:inline-block}.footer-links a:hover{color:var(--ocean-600)}.footer-bottom{border-top:1px solid var(--mist-300);font-family:var(--font-sans);color:var(--ink-500);font-size:.75rem}.footer-newsletter{gap:8px;max-width:340px;margin-top:16px;display:flex}.footer-newsletter .form-control{background:var(--surface);border:1px solid var(--mist-300);border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--ink-900);flex:1;padding:10px 14px;font-size:14px}.footer-newsletter .btn{padding:10px 18px;font-size:14px;font-weight:500;background:var(--ink-900)!important;color:var(--mist-50)!important;border:1px solid var(--ink-900)!important}.footer-newsletter .btn:hover{background:var(--ink-700)!important;border-color:var(--ink-700)!important}.footer-newsletter-note{font-family:var(--font-sans);color:var(--ink-500);margin-top:10px;font-size:.75rem}footer{background-color:var(--mist-200);color:var(--ink-700)}footer a{color:var(--ink-700);transition:color var(--transition-fast)}footer a:hover{color:var(--ocean-600)}.table{--bs-table-bg:var(--surface);font-family:var(--font-sans)}.table thead th{background-color:var(--mist-200);color:var(--ink-900);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--mist-300);font-size:.78rem;font-weight:600}.alert{border-radius:var(--radius-md);font-family:var(--font-sans);border-width:1px;font-size:.9rem;font-weight:500}.alert-success{background-color:var(--teal-100);border-color:var(--teal-500);color:var(--teal-700)}.alert-danger{background-color:var(--ember-100);border-color:var(--ember-500);color:var(--ember-700)}.alert-warning{background-color:var(--marigold-100);border-color:var(--marigold-500);color:var(--marigold-700)}.alert-info{background-color:var(--ocean-50);border-color:var(--ocean-500);color:var(--ocean-700)}.page-link{color:var(--ink-900);border-color:var(--mist-300);background:var(--surface);transition:all var(--transition-fast);font-family:var(--font-sans)}.page-link:hover{color:var(--mist-50);background-color:var(--ocean-500);border-color:var(--ocean-500)}.page-item.active .page-link{background-color:var(--ocean-500);border-color:var(--ocean-500)}.pagination{gap:4px}.page-item .page-link{text-align:center;min-width:36px;font-size:.88rem;font-weight:500;border-radius:var(--radius-md)!important}.text-warning{color:var(--marigold-500)!important}html{scroll-behavior:smooth}::selection{background-color:var(--ocean-50);color:var(--ink-900)}.page-header{background-color:var(--mist-200);border-radius:var(--radius-lg);border:1px solid var(--mist-300);margin-bottom:2rem;padding:2rem}.page-header h1{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;margin-bottom:0;font-size:2.25rem;font-style:italic}.page-header .breadcrumb{margin-bottom:.5rem;font-size:.85rem}.book-detail-image{box-shadow:var(--shadow-book);border-radius:0;overflow:hidden}.book-detail-image img{object-fit:cover;width:100%;max-height:540px;display:block}.book-detail-thumb{object-fit:cover;border:2px solid var(--mist-300);cursor:pointer;width:60px;height:80px;transition:border-color var(--transition-fast);border-radius:0}.book-detail-thumb:hover{border-color:var(--ocean-500)}.book-detail-price{font-family:var(--font-sans);color:var(--ink-900);font-feature-settings:"tnum";font-size:2rem;font-weight:600}.book-detail-compare-price{color:var(--ink-300);font-size:1.1rem;font-family:var(--font-sans);text-decoration:line-through}.book-detail-discount{background-color:var(--marigold-500);color:var(--ink-900);vertical-align:middle;font-size:.75rem;font-weight:600;font-family:var(--font-sans);letter-spacing:.04em;border-radius:999px;padding:4px 10px;display:inline-block}.book-detail-meta{background-color:var(--mist-50);border:1px solid var(--mist-300);border-radius:var(--radius-lg);padding:1.25rem 1.5rem}.book-detail-meta-label{color:var(--ink-500);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600}.book-detail-meta-value{color:var(--ink-900);font-family:var(--font-sans);font-size:.9rem;font-weight:500}.book-detail-section-title{font-family:var(--font-display);color:var(--ink-900);border-bottom:1px solid var(--mist-300);letter-spacing:-.02em;margin-bottom:1.25rem;padding-bottom:.75rem;font-size:1.5rem;font-style:italic;font-weight:400;display:block}.category-banner{background:var(--ink-900);border-radius:var(--radius-lg);margin-bottom:2rem;padding:2.5rem;position:relative;overflow:hidden}.category-banner:after{content:"";opacity:.05;pointer-events:none;background-image:url(/design/paper-texture.svg);background-size:cover;position:absolute;inset:0}.category-banner h1{color:var(--mist-50);font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.5rem;font-style:italic;font-weight:400;position:relative}.category-banner p{color:#f7fafdbf;font-family:var(--font-serif);margin-bottom:0;font-size:1rem;position:relative}.category-banner .breadcrumb-item a{color:#f7fafd99}.category-banner .breadcrumb-item.active{color:var(--mist-50)}.category-banner .breadcrumb-item+.breadcrumb-item:before{color:#f7fafd66}.category-count{background-color:var(--ocean-500);color:var(--mist-50);font-family:var(--font-sans);letter-spacing:.04em;border-radius:999px;padding:2px 10px;font-size:.7rem;font-weight:600;display:inline-block}.category-icon{border-radius:var(--radius-lg);background-color:var(--ocean-50);width:72px;height:72px;color:var(--ocean-600);justify-content:center;align-items:center;margin:0 auto .75rem;font-size:28px;display:flex}.cart-item{border-radius:var(--radius-lg);background:var(--surface);transition:box-shadow var(--transition-fast);border:1px solid var(--mist-300)!important}.cart-item:hover{box-shadow:var(--shadow-md)}.order-summary{background-color:var(--mist-50);border-radius:var(--radius-lg);border:1px solid var(--mist-300)!important}.order-total{font-family:var(--font-sans);color:var(--ink-900);font-feature-settings:"tnum";font-size:1.5rem;font-weight:600}.checkout-section-title{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;font-size:1.5rem;font-style:italic;font-weight:400}.payment-option{background:var(--surface);transition:all var(--transition-fast);cursor:pointer;border:1px solid var(--mist-300)!important;border-radius:var(--radius-md)!important;padding:1rem 1.25rem!important}.payment-option:hover,.payment-option.selected{background-color:var(--ocean-50);border-color:var(--ocean-500)!important}.success-icon{background-color:var(--teal-100);width:72px;height:72px;color:var(--teal-700);border-radius:50%;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:inline-flex}.auth-wrapper{align-items:center;min-height:calc(100vh - 300px);padding:3rem 0;display:flex}.auth-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:var(--surface);overflow:hidden;border:1px solid var(--mist-300)!important}.auth-card .card-body{padding:2.5rem!important}.auth-header{text-align:center;margin-bottom:2rem}.auth-icon{background-color:var(--ocean-50);width:56px;height:56px;color:var(--ocean-600);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1rem;font-size:24px;display:inline-flex}.auth-header h2{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;margin-bottom:.35rem;font-size:1.875rem;font-style:italic}.auth-header p{color:var(--ink-500);font-family:var(--font-sans);margin-bottom:0;font-size:.9rem}.auth-divider{color:var(--ink-500);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:1rem;margin:1.5rem 0;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background-color:var(--mist-300);flex:1;height:1px}.auth-footer{text-align:center;border-top:1px solid var(--mist-300);margin-top:1.5rem;padding-top:1.25rem}.auth-footer p{color:var(--ink-500);font-family:var(--font-sans);margin-bottom:0;font-size:.88rem}.auth-footer a{color:var(--ocean-600);font-weight:600}.auth-footer a:hover{color:var(--ocean-700)}.about-icon{border-radius:var(--radius-md);background-color:var(--ocean-50);width:44px;min-width:44px;height:44px;color:var(--ocean-600);justify-content:center;align-items:center;display:flex}.about-feature-icon{background-color:var(--ocean-50);width:60px;height:60px;color:var(--ocean-600);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;display:inline-flex}.contact-info-list{flex-direction:column;gap:1.25rem;display:flex}.contact-info-item{align-items:flex-start;gap:.85rem;display:flex}.contact-info-icon{border-radius:var(--radius-md);background-color:var(--ocean-50);width:38px;min-width:38px;height:38px;color:var(--ocean-600);justify-content:center;align-items:center;display:flex}.contact-info-label{font-family:var(--font-sans);color:var(--ink-900);text-transform:uppercase;letter-spacing:.12em;margin-bottom:2px;font-size:.7rem;font-weight:600}.contact-info-value{color:var(--ink-700);font-family:var(--font-sans);font-size:.9rem}.cart-toast{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-family:var(--font-sans);border:none;background-color:var(--ink-900)!important;color:var(--mist-50)!important}.cart-toast .toast-body{color:var(--mist-50);font-size:.9rem;font-weight:500}.cart-toast svg{color:var(--teal-500)}.account-sidebar{background-color:var(--surface);border:1px solid var(--mist-300);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1rem}.account-sidebar .nav-link{font-family:var(--font-sans);transition:all var(--transition-fast);align-items:center;gap:.6rem;margin-bottom:2px;font-size:.88rem;font-weight:500;display:flex;color:var(--ink-500)!important;border-radius:var(--radius-md)!important;padding:.55rem .85rem!important}.account-sidebar .nav-link:hover{background-color:var(--mist-200)!important;color:var(--ocean-600)!important}.account-sidebar .nav-link.active{box-shadow:0 2px 8px #2a6fdb40;background-color:var(--ocean-500)!important;color:var(--mist-50)!important}.account-page-title{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.02em;font-size:1.875rem;font-style:italic;font-weight:400}.account-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:var(--surface);border:1px solid var(--mist-300)!important}.account-card-header{font-family:var(--font-display);color:var(--ink-900);letter-spacing:-.01em;font-size:1.25rem;font-style:italic;font-weight:400}.account-empty{text-align:center;padding:3rem 1.5rem}.account-empty-icon{background-color:var(--ocean-50);width:64px;height:64px;color:var(--ink-500);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1rem;font-size:28px;display:inline-flex}.account-info-label{color:var(--ink-500);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.12em;margin-bottom:2px;font-size:.7rem;font-weight:600}.account-info-value{color:var(--ink-900);font-family:var(--font-sans);font-size:.9rem;font-weight:500}.address-card{border-radius:var(--radius-lg);background:var(--surface);transition:box-shadow var(--transition-fast);border:1px solid var(--mist-300)!important}.address-card:hover{box-shadow:var(--shadow-md)}.address-card.address-default{box-shadow:0 0 0 1px var(--ocean-500);border-color:var(--ocean-500)!important}.timeline-dot{border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-22px}.timeline-dot-active{background-color:var(--ocean-500);box-shadow:0 0 0 3px #2a6fdb33}.timeline-dot-inactive{background-color:var(--mist-300)}[lang=si] body,[lang=si]{font-family:"Noto Sans Sinhala","Iskoola Pota",var(--font-sans),system-ui,sans-serif}[lang=si] h1,[lang=si] h2,[lang=si] h3,[lang=si] h4,[lang=si] h5,[lang=si] h6,[lang=si] .section-heading,[lang=si] .footer-brand,[lang=si] .header-logo,[lang=si] .page-header h1{font-family:"Noto Sans Sinhala","Iskoola Pota",var(--font-display),Georgia,serif;font-style:normal}.pos-form input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pos-form input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pos-form input[type=number]{appearance:textfield}
