/*
Theme Name: Galantarul
Theme URI: https://galantarul.ro
Author: Silvia
Description: Director de branduri romanesti de moda - haine, incaltaminte, accesorii si port traditional. Tema construita pentru Galantarul.ro.
Version: 1.0.0
Text Domain: galantarul
Requires PHP: 7.4
*/


  :root{
    --paper:#F3EEE3; --paper-raised:#FBF8EF; --paper-sunk:#EAE3D2;
    --ink:#221D17; --ink-soft:#5B5044; --ink-faint:#8A7F6D;
    --crimson:#AD1F2C; --crimson-ink:#7A1520; --crimson-soft:#F3D9D5;
    --indigo:#2C3A66; --indigo-soft:#DCE1EF;
    --ochre:#8C5F14; --ochre-soft:#F1E3C2;
    --line:#DDD3BC; --ring:#AD1F2C;
    --good:#3E6B4A; --good-soft:#DCE9DE;
    --overlay:rgba(34,29,23,.55);
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --paper:#17130E; --paper-raised:#221C14; --paper-sunk:#0F0C08;
      --ink:#F1EBDC; --ink-soft:#BBAF9B; --ink-faint:#8A7F6D;
      --crimson:#E2626C; --crimson-ink:#F2939B; --crimson-soft:#3A2020;
      --indigo:#8C9BD4; --indigo-soft:#242A3E;
      --ochre:#E0B15B; --ochre-soft:#332918;
      --line:#3A3222; --ring:#E2626C; --good:#7FBE8E; --good-soft:#1E2E22;
      --overlay:rgba(0,0,0,.7);
    }
  }
  :root[data-theme="dark"]{
    --paper:#17130E; --paper-raised:#221C14; --paper-sunk:#0F0C08;
    --ink:#F1EBDC; --ink-soft:#BBAF9B; --ink-faint:#8A7F6D;
    --crimson:#E2626C; --crimson-ink:#F2939B; --crimson-soft:#3A2020;
    --indigo:#8C9BD4; --indigo-soft:#242A3E;
    --ochre:#E0B15B; --ochre-soft:#332918;
    --line:#3A3222; --ring:#E2626C; --good:#7FBE8E; --good-soft:#1E2E22;
    --overlay:rgba(0,0,0,.7);
  }

  *{box-sizing:border-box;}
  body{background:var(--paper);color:var(--ink);font-family:'Archivo',system-ui,sans-serif;-webkit-font-smoothing:antialiased;}
  ::selection{background:var(--crimson-soft);}
  a{color:inherit;}
  button{font-family:inherit;}
  h1,h2,h3{font-family:'Fraunces',Georgia,serif;font-weight:600;text-wrap:balance;margin:0;}
  .eyebrow{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);}
  .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
  [hidden]{display:none!important;}

  /* ---------- header ---------- */
  header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:color-mix(in srgb, var(--paper) 94%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
  .topbar{max-width:1180px;margin-inline:auto;padding:10px 18px 0;display:flex;align-items:center;gap:12px;}
  .wordmark{font-family:'Fraunces',serif;font-weight:600;font-size:19px;letter-spacing:-.01em;white-space:nowrap;flex-shrink:0;}
  .wordmark .dot{color:var(--crimson);}

  .gender-toggle{display:flex;gap:2px;background:var(--paper-sunk);border-radius:100px;padding:2px;flex-shrink:0;}
  .gpill{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.03em;text-transform:uppercase;border:none;background:transparent;color:var(--ink-soft);padding:6px 10px;border-radius:100px;cursor:pointer;}
  .gpill[aria-pressed="true"]{background:var(--paper-raised);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08);}

  .search-wrap{flex-grow:1;position:relative;min-width:80px;}
  .search-wrap input{width:100%;padding:9px 14px 9px 34px;border-radius:9px;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font-size:14px;font-family:'Archivo',sans-serif;}
  .search-wrap input:focus{outline:2px solid var(--ring);outline-offset:1px;}
  .search-wrap svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);opacity:.5;pointer-events:none;}

  .icon-row{display:flex;align-items:center;gap:4px;flex-shrink:0;}
  .icon-btn{width:34px;height:34px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;}
  .icon-btn:hover{background:var(--paper-sunk);}
  .icon-btn .dot-badge{position:absolute;top:5px;right:5px;width:6px;height:6px;border-radius:50%;background:var(--crimson);}
  .fav-count{font-family:'Space Mono',monospace;font-size:9px;position:absolute;top:1px;right:0px;background:var(--crimson);color:#fff;border-radius:100px;min-width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0 3px;}
  .acct-btn{font-family:'Space Mono',monospace;font-size:11.5px;letter-spacing:.02em;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);padding:8px 13px;border-radius:9px;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px;}
  .acct-btn .av{width:18px;height:18px;border-radius:50%;background:var(--crimson);color:#fff;font-size:9px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;}

  /* mega menu */
  .megabar{max-width:1180px;margin-inline:auto;padding:9px 18px 10px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;position:relative;}
  .megabar::-webkit-scrollbar{display:none;}
  .cat-item{position:relative;flex-shrink:0;}
  .cat-trigger{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.03em;border:1px solid var(--line);border-radius:100px;padding:7px 12px;background:var(--paper-raised);color:var(--ink-soft);cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:5px;}
  .cat-trigger[aria-expanded="true"], .cat-trigger.active{background:var(--crimson);border-color:var(--crimson);color:#FBF3E9;}
  .cat-trigger svg{width:10px;height:10px;flex-shrink:0;}
  .dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:210px;background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 28px rgba(20,15,10,.16);padding:6px;z-index:40;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease, transform .12s ease;}
  .dropdown.open{opacity:1;pointer-events:auto;transform:translateY(0);}
  .dropdown a{display:block;font-size:13.5px;padding:8px 10px;border-radius:7px;text-decoration:none;color:var(--ink);}
  .dropdown a:hover, .dropdown a:focus-visible{background:var(--paper-sunk);}
  .dropdown a.all-link{font-weight:600;color:var(--crimson-ink);border-bottom:1px solid var(--line);border-radius:0;margin-bottom:4px;padding-bottom:9px;}

  .stitch{height:9px;width:100%;background-image:linear-gradient(45deg, transparent 46%, var(--crimson) 46%, var(--crimson) 54%, transparent 54%),linear-gradient(-45deg, transparent 46%, var(--ochre) 46%, var(--ochre) 54%, transparent 54%);background-size:13px 13px;background-repeat:repeat-x;opacity:.5;}

  /* ---------- home hero ---------- */
  .hero{max-width:1180px;margin-inline:auto;padding:26px 18px 6px;}
  .hero h1{font-size:clamp(28px,7vw,44px);}
  .hero h1 em{font-style:normal;color:var(--crimson);}
  .hero p.lede{font-size:14.5px;line-height:1.6;color:var(--ink-soft);max-width:60ch;margin-top:9px;}

  /* promo sections on home */
  .promo{max-width:1180px;margin-inline:auto;padding:22px 18px 4px;}
  .promo-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px;}
  .promo-head h2{font-size:19px;}
  .promo-head .sub{font-size:11.5px;color:var(--ink-faint);font-family:'Space Mono',monospace;}
  .promo-head a.more{font-size:12.5px;font-weight:600;color:var(--indigo);text-decoration:none;flex-shrink:0;white-space:nowrap;}
  .promo-row{display:flex;gap:11px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:none;}
  .promo-row::-webkit-scrollbar{display:none;}
  .promo-row .card{min-width:150px;max-width:150px;scroll-snap-align:start;}
  @media (min-width:640px){ .promo-row .card{min-width:180px;max-width:180px;} }

  /* ---------- product-style grid (shared home + PLP) ---------- */
  main{max-width:1180px;margin-inline:auto;}
  .empty{display:none;text-align:center;padding:60px 20px;color:var(--ink-soft);font-size:14.5px;}
  .empty.show{display:block;}
  .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;}

  .card{background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;overflow:hidden;cursor:pointer;text-align:left;padding:0;display:flex;flex-direction:column;position:relative;}
  .card:focus-visible{outline:2px solid var(--ring);outline-offset:2px;}
  .card .art{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
  .card .art .mono{font-family:'Fraunces',serif;font-weight:600;font-size:15vw;line-height:1;opacity:.92;}
  .card .art .verified{position:absolute;top:8px;left:8px;font-family:'Space Mono',monospace;font-size:9px;letter-spacing:.03em;text-transform:uppercase;color:var(--good);background:var(--good-soft);border-radius:5px;padding:3px 6px;}
  .heart-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;border:none;background:color-mix(in srgb, var(--paper-raised) 82%, transparent);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);z-index:2;}
  .heart-btn svg{width:15px;height:15px;}
  .heart-btn[aria-pressed="true"]{color:var(--crimson);}
  .heart-btn[aria-pressed="true"] svg{fill:var(--crimson);}
  .card .body{padding:10px 11px 12px;display:flex;flex-direction:column;gap:3px;flex-grow:1;}
  .card h3{font-size:14px;font-weight:600;font-family:'Archivo',sans-serif;}
  .card .cat{font-family:'Space Mono',monospace;font-size:10px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.02em;}
  .card .desc{font-size:11.5px;color:var(--ink-soft);line-height:1.45;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  @media (prefers-reduced-motion: no-preference){
    .card{transition:transform .15s ease, border-color .15s ease;}
    .card:hover{transform:translateY(-2px);border-color:var(--ink-faint);}
  }

  /* ---------- PLP (category) view ---------- */
  .plp-head{padding:18px 18px 4px;}
  .plp-head .crumb{font-family:'Space Mono',monospace;font-size:11px;color:var(--ink-faint);}
  .plp-head .crumb button{background:none;border:none;color:var(--indigo);font-family:inherit;font-size:inherit;cursor:pointer;padding:0;text-decoration:underline;}
  .plp-head h1{font-size:26px;margin-top:6px;}
  .plp-head .count{font-size:12.5px;color:var(--ink-faint);margin-top:4px;font-family:'Space Mono',monospace;}
  .plp-subchips{display:flex;gap:7px;flex-wrap:wrap;padding:12px 18px 0;}
  .subchip{font-family:'Space Mono',monospace;font-size:11.5px;border:1px solid var(--line);border-radius:100px;padding:6px 12px;background:var(--paper-raised);color:var(--ink-soft);cursor:pointer;}
  .subchip[aria-pressed="true"]{background:var(--indigo);border-color:var(--indigo);color:var(--paper-raised);}

  .plp-body{display:flex;gap:20px;padding:16px 18px 8px;align-items:flex-start;}
  .filters-toggle{display:flex;align-items:center;gap:6px;font-family:'Space Mono',monospace;font-size:12px;border:1px solid var(--line);border-radius:9px;padding:8px 12px;background:var(--paper-raised);cursor:pointer;margin:0 18px 10px;}
  .plp-sidebar{width:220px;flex-shrink:0;display:none;}
  .plp-sidebar.open{display:block;}
  @media (min-width:860px){
    .plp-sidebar{display:block;}
    .filters-toggle{display:none;}
  }
  .filter-group{border-bottom:1px solid var(--line);padding:14px 0;}
  .filter-group:first-child{padding-top:0;}
  .filter-group h4{font-family:'Space Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin-bottom:10px;}
  .filter-opt{display:flex;align-items:center;gap:8px;font-size:13px;padding:5px 0;cursor:pointer;color:var(--ink-soft);}
  .filter-opt input{accent-color:var(--crimson);width:15px;height:15px;}
  .filter-opt:hover{color:var(--ink);}
  .size-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;}
  .size-opt{border:1px solid var(--line);border-radius:7px;padding:7px 0;text-align:center;font-size:12px;background:var(--paper-raised);cursor:pointer;color:var(--ink-soft);}
  .size-opt.checked{border-color:var(--ink);color:var(--ink);font-weight:600;}
  .color-grid{display:flex;flex-wrap:wrap;gap:7px;}
  .color-dot{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);cursor:pointer;}
  .color-dot.checked{outline:2px solid var(--ink);outline-offset:2px;}
  .price-range{font-size:12px;color:var(--ink-faint);display:flex;justify-content:space-between;margin-top:8px;}

  .plp-grid-wrap{flex-grow:1;min-width:0;}

  /* ---------- add-brand / cta strip ---------- */
  .cta-strip{max-width:1180px;margin:26px auto 0;padding:20px 18px;background:var(--indigo-soft);border-radius:14px;margin-inline:18px;display:flex;flex-direction:column;gap:10px;}
  .cta-strip h2{font-size:19px;color:var(--indigo);}
  .cta-strip p{font-size:13.5px;color:var(--ink-soft);margin:4px 0 0;max-width:46ch;}
  .cta-strip a.btn{flex-shrink:0;font-size:13.5px;font-weight:600;text-decoration:none;background:var(--indigo);color:var(--paper-raised);padding:10px 18px;border-radius:9px;white-space:nowrap;display:inline-block;}

  /* ---------- footer ---------- */
  footer{max-width:1180px;margin-inline:auto;padding:32px 18px 48px;border-top:1px solid var(--line);margin-top:30px;}
  footer .cols{display:grid;grid-template-columns:1fr;gap:20px;font-size:12.5px;color:var(--ink-soft);line-height:1.65;}
  footer h4{font-family:'Space Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);margin-bottom:8px;}
  footer a{text-decoration:underline;text-decoration-color:var(--line);}
  footer .meta{margin-top:22px;font-size:11.5px;color:var(--ink-faint);}

  /* ---------- product modal ---------- */
  .modal-backdrop{position:fixed;inset:0;background:var(--overlay);z-index:100;display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity .18s ease;}
  .modal-backdrop.open{opacity:1;pointer-events:auto;}
  .modal{background:var(--paper);width:100%;max-width:760px;max-height:92vh;overflow-y:auto;border-radius:16px 16px 0 0;position:relative;transform:translateY(16px);transition:transform .2s ease;padding-bottom:env(safe-area-inset-bottom,0px);}
  .modal.small{max-width:420px;border-radius:16px;}
  .modal-backdrop.open .modal{transform:translateY(0);}
  .modal .close{position:sticky;top:10px;margin-left:auto;margin-right:10px;display:flex;width:32px;height:32px;border-radius:50%;background:var(--paper-raised);border:1px solid var(--line);align-items:center;justify-content:center;cursor:pointer;z-index:2;color:var(--ink);}
  .modal .close:focus-visible{outline:2px solid var(--ring);}
  .modal .art{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;margin-top:-42px;position:relative;}
  .modal .art .mono{font-family:'Fraunces',serif;font-weight:600;font-size:80px;opacity:.92;}
  .modal .content{padding:6px 22px 26px;}
  .modal .cat-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;}
  .modal h2{font-size:26px;}
  .modal .verified-line{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-family:'Space Mono',monospace;font-size:11px;color:var(--good);background:var(--good-soft);border-radius:6px;padding:4px 9px;}
  .modal p.story{font-size:14.5px;line-height:1.65;color:var(--ink-soft);margin-top:14px;max-width:60ch;}
  .modal .buy-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;}
  .modal .buy{display:inline-flex;align-items:center;gap:8px;background:var(--crimson);color:#FBF3E9;text-decoration:none;font-weight:600;font-size:14.5px;padding:12px 20px;border-radius:10px;}
  .modal .heart-inline{width:44px;height:44px;border-radius:10px;border:1px solid var(--line);background:var(--paper-raised);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);flex-shrink:0;}
  .modal .heart-inline[aria-pressed="true"]{color:var(--crimson);border-color:var(--crimson-soft);background:var(--crimson-soft);}
  .modal .note{font-size:12px;color:var(--ink-faint);margin-top:10px;max-width:52ch;line-height:1.55;}
  .alert-box{margin-top:20px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper-sunk);}
  .alert-box h4{font-family:'Space Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);margin-bottom:10px;}
  .alert-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;}
  .alert-row span{font-size:13px;color:var(--ink-soft);}
  .switch{width:38px;height:22px;border-radius:100px;background:var(--line);border:none;position:relative;cursor:pointer;flex-shrink:0;}
  .switch::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--paper-raised);transition:transform .15s ease;}
  .switch[aria-pressed="true"]{background:var(--crimson);}
  .switch[aria-pressed="true"]::after{transform:translateX(16px);}
  .modal .similar{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);}
  .modal .similar h3{font-size:15px;margin-bottom:12px;}
  .similar-row{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;}
  .similar-row .mini{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper-raised);cursor:pointer;text-align:left;}
  .similar-row .mini .art{aspect-ratio:1/1;margin-top:0;}
  .similar-row .mini .art .mono{font-size:34px;}
  .similar-row .mini .mini-body{padding:8px 9px 9px;}
  .similar-row .mini h4{font-size:12.5px;font-family:'Archivo',sans-serif;font-weight:600;}
  .similar-row .mini .cat{font-family:'Space Mono',monospace;font-size:9.5px;color:var(--ink-faint);text-transform:uppercase;}

  .tag{font-family:'Space Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.03em;padding:3px 8px;border-radius:5px;}
  .tag.haine{background:var(--crimson-soft);color:var(--crimson-ink);}
  .tag.incaltaminte{background:var(--indigo-soft);color:var(--indigo);}
  .tag.accesorii{background:var(--ochre-soft);color:var(--ochre);}
  .tag.traditional{background:var(--line);color:var(--ink-soft);}

  /* account modal */
  .acct-tabs{display:flex;gap:4px;background:var(--paper-sunk);border-radius:10px;padding:3px;margin-top:16px;}
  .acct-tab{flex:1;border:none;background:transparent;padding:9px;border-radius:8px;font-size:13px;font-weight:600;color:var(--ink-soft);cursor:pointer;}
  .acct-tab[aria-selected="true"]{background:var(--paper-raised);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08);}
  .acct-form{margin-top:16px;display:flex;flex-direction:column;gap:11px;}
  .acct-form label{font-size:12.5px;color:var(--ink-soft);display:flex;flex-direction:column;gap:5px;}
  .acct-form input{padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font-size:14px;font-family:inherit;}
  .acct-form input:focus{outline:2px solid var(--ring);outline-offset:1px;}
  .acct-submit{margin-top:4px;background:var(--ink);color:var(--paper-raised);border:none;padding:12px;border-radius:9px;font-weight:600;font-size:14px;cursor:pointer;}
  .acct-note{font-size:11.5px;color:var(--ink-faint);margin-top:12px;line-height:1.5;}

  /* toast */
  .toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(12px);background:var(--ink);color:var(--paper);font-size:13px;padding:11px 18px;border-radius:100px;z-index:200;opacity:0;pointer-events:none;transition:opacity .18s ease, transform .18s ease;max-width:90vw;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.25);}
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

  @media (min-width:640px){
    .grid{grid-template-columns:repeat(3,1fr);}
    .modal-backdrop{align-items:center;padding:24px;}
    .modal{border-radius:16px;max-height:88vh;}
    .modal.small{border-radius:16px;}
    .topbar{padding-top:12px;}
  }
  @media (min-width:900px){
    .grid{grid-template-columns:repeat(4,1fr);}
    footer .cols{grid-template-columns:1.3fr 1fr 1fr;}
    .similar-row{grid-template-columns:repeat(4,1fr);}
  }
  @media (min-width:1150px){
    .grid{grid-template-columns:repeat(5,1fr);}
  }

/* ---------- WP-specific additions ---------- */
.admin-bar header.top{ top: 32px; }
@media (max-width: 782px){ .admin-bar header.top{ top: 46px; } }

.auth-required-note{font-size:12px;color:var(--ink-faint);margin-top:8px;}
.acct-form .form-error{font-size:12.5px;color:var(--crimson);margin-top:-4px;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:10px 16px;z-index:999;border-radius:0 0 8px 0;}
.skip-link:focus{left:0;}
