/* Nasze Wydruki v17 – jasny marketplace inspirowany ergonomią platform zakupowych.
   Własna identyfikacja marki; żadne logotypy, ikony czy zasoby Allegro nie są używane.
   Ten plik ładuje się po style.css, by nie zmieniać obsługi formularzy i panelu. */
:root {
  --bg:#f3f4f6; --surface:#fff; --text:#202124; --muted:#666b73;
  --line:#e0e2e6; --accent:#ff5a00; --accent-dark:#db4b00;
  --accent-light:#fff1e8; --green:#168456;
  --shadow:0 6px 24px rgba(15,23,42,.055);
}
html { -webkit-text-size-adjust:100%; }
body { background:var(--bg); color:var(--text); font-family:'DM Sans',Arial,sans-serif; }
img { max-width:100%; }
h1,h2,h3,h4 {color:#202124;letter-spacing:-.035em;}
.container { width:min(1440px,calc(100% - 64px)); }
a:hover { color:var(--accent-dark); }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline:3px solid #ffba91;outline-offset:2px;}

/* Pas zaufania + wyszukiwarka + nawigacja, rozciągnięte jak w serwisie zakupowym. */
.topline {background:#262626;color:#f2f2f2;font-size:11px;letter-spacing:0;}
.topline-inner {min-height:32px;}
.topline-sep{color:#fca66c;padding:0 9px;}
.topline i {background:#ffad7c;}
.header {border-bottom:1px solid #eaecef;box-shadow:0 2px 5px rgba(0,0,0,.025);}
.header-inner { min-height:88px; gap:30px; }
.brand {min-width:224px;gap:10px;}
.brand-mark{width:49px;height:49px;border-radius:10px;background:#fff3e9;object-fit:contain;}
.brand-wordmark{color:#292929;font-size:23px;letter-spacing:-1.3px;}
.brand-wordmark>span{color:#f05a00;}
.brand-wordmark small{letter-spacing:2.1px;color:#6b7078;font-size:8px;}
.header-search {height:49px;background:#fff;border:2px solid var(--accent);border-radius:5px;box-shadow:none;color:#747980;padding-left:15px;}
.header-search:focus-within {border-color:var(--accent-dark);box-shadow:0 0 0 3px #ff5a001a;}
.header-search input{font-size:14px;color:#282b30;padding-left:13px;}
.header-search input::placeholder {color:#91959b;}
.header-search button{font-size:14px;background:var(--accent);padding:0 31px;border-radius:0;}
.header-search button:hover{background:var(--accent-dark);}
.header-actions {gap:21px;}
.account-link{gap:10px;color:#272b31;}
.account-link strong{font-size:12px;}
.account-link small{color:#72767c;font-size:11px;}
.action-icon{border:0;background:#f4f4f4;color:#333;border-radius:50%;width:38px;height:38px;}
.cart-link{font-size:12px;color:#2a2a2a;}
.cart-badge{background:var(--accent);border-color:#fff;}
.nav-bar {border-bottom:1px solid #e5e6e8;}
.nav-categories {height:47px;gap:26px;}
.nav-categories a,.nav-logout{font-size:12px;color:#50535a;font-weight:700;}
.nav-categories a:first-child{font-weight:800;}
.nav-categories a.current:after{height:2px;background:var(--accent);bottom:-15px;}
.nav-logout{color:#bd4b33;}
.main-content{padding-top:24px;}

/* Przyciski: kontrast, większy obszar klikania, bez ozdobnych efektów. */
.button{border-radius:5px;background:var(--accent);border-color:var(--accent);font-weight:800;min-height:43px;padding:10px 17px;transition:background .15s,box-shadow .15s;}
.button:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:none;box-shadow:0 4px 12px rgba(255,90,0,.18);}
.button.secondary{background:#fff;border-color:#cdd0d6;color:#25282e!important;}
.button.secondary:hover{background:#f8f8f8;border-color:#aeb2bb;}
.button-light{background:#fff;border-color:#fff;color:#db4b00!important;}
.button-light:hover{background:#fff7f1;border-color:#fff7f1;}
.eyebrow{color:var(--accent-dark);letter-spacing:1.3px;}
.heading-spark{color:var(--accent);}
.text-arrow{color:var(--accent-dark);}

/* Strona główna: kategorie + reklama graficzna + panel informacyjny. */
.market-entry-grid{display:grid;grid-template-columns:210px minmax(0,1fr) 234px;gap:16px;align-items:stretch;}
.market-category-menu{background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;padding-bottom:10px;min-width:0;}
.market-category-title{display:flex;align-items:center;gap:10px;padding:18px 16px 12px;border-bottom:1px solid var(--line);font-size:14px;font-weight:800;color:#30333a;}
.market-category-title span{font-size:20px;color:var(--accent);}
.market-category-menu>a{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:12px 16px;font-size:12px;font-weight:700;color:#4b5159;line-height:1.3;}
.market-category-menu>a:hover{color:var(--accent-dark);background:var(--accent-light);}
.market-category-menu>a>span:last-child{color:#aaa;}
.market-category-menu>a.all-categories{font-weight:800;color:var(--accent-dark);border-top:1px solid var(--line);margin-top:6px;padding-top:14px;}
.hero-banner{min-height:385px;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);border-radius:7px;box-shadow:none;background:#ffeadf;}
.hero-banner:before{background:radial-gradient(circle at 80% 13%,#ffd2b2 0,transparent 46%),linear-gradient(115deg,#ffefe4,#ffd9c5);}
.hero-text{padding:37px 6px 37px 37px;}
.hero-kicker{color:#ab3d08;font-size:10px;letter-spacing:1px;}
.kicker-dot{background:var(--accent);}
.hero-text h1{font-size:clamp(30px,2.55vw,42px);line-height:1.12;color:#202024;margin:18px 0;}
.hero-text h1 em{color:#e0500b;}
.hero-text p{font-size:13px;color:#5d473c;line-height:1.65;max-width:420px;margin-bottom:20px;}
.hero-button{min-width:0;background:var(--accent);border-color:var(--accent);}
.hero-button:hover{background:var(--accent-dark);border-color:var(--accent-dark);}
.hero-secondary{color:#813b17;font-size:12px;}
.hero-secondary:hover{color:var(--accent-dark);}
.hero-actions{gap:18px;flex-wrap:wrap;}
.hero-highlights{margin-top:25px;gap:10px 16px;color:#864f35;font-size:10px;}
.hero-highlights b{color:var(--accent-dark);}
.hero-image{min-height:385px;overflow:hidden;}
.hero-image:before{background:linear-gradient(90deg,#ffeadf 0%,rgba(255,234,223,.15) 55%,transparent 75%);}
.hero-image img{width:100%;height:100%;object-fit:contain;object-position:center center;filter:none;padding:24px 10px 16px 0;}
.hero-corner{display:none;}
.market-side-promo{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:14px;}
.market-side-top{background:#fff;border:1px solid var(--line);border-radius:7px;padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start;}
.market-side-icon{width:47px;height:47px;display:grid;place-items:center;color:var(--accent);background:var(--accent-light);border-radius:50%;font-size:26px;margin-bottom:14px;}
.market-side-eyebrow{font-size:10px;color:var(--accent-dark);font-weight:800;letter-spacing:1.1px;}
.market-side-top h2{font-size:19px;line-height:1.28;margin:10px 0;}
.market-side-top p{font-size:12px;color:#73777e;line-height:1.65;margin-bottom:15px;}
.market-side-top a{font-weight:800;font-size:12px;margin-top:auto;color:var(--accent-dark);}
.market-side-bottom{display:flex;flex-direction:column;gap:6px;border:1px solid #ffd7ba;background:#fff3e9;border-radius:7px;padding:17px 19px;}
.market-side-bottom strong{font-size:12px;}
.market-side-bottom span{font-size:11px;color:#8c684e;line-height:1.5;}
.market-side-bottom a{color:#c44d0a;font-weight:800;font-size:11px;}
.trust-row{background:#fff;border:1px solid var(--line);border-radius:7px;padding:18px 24px;margin-top:20px;gap:14px;}
.trust-item{gap:10px;}
.trust-icon{width:39px;height:39px;background:#fff2ea;border-radius:50%;color:var(--accent);font-size:19px;}
.trust-item strong{color:#363940;font-size:12px;}
.trust-item small{color:#747982;}
.section-wrap{margin-top:39px;}
.section-head{margin-bottom:18px;}
.section-head h2{font-size:24px;letter-spacing:-.6px;}
.section-subtitle{color:#747b84;}
.category-cards{gap:13px;}
.category-card{min-height:138px;border:1px solid var(--line);border-radius:7px;padding:18px;box-shadow:none;}
.category-card:hover{border-color:#ff8c51;transform:none;box-shadow:0 5px 16px rgba(0,0,0,.055);}
.category-symbol{color:var(--accent);}
.category-title{font-size:13px;color:#34373b;}
.category-count{font-size:10px;color:#747982;}
.category-count span{color:var(--accent-dark);}
.join-banner{border-radius:7px;margin-top:36px;background:#293039;padding:32px 39px;color:white;}
.join-banner h2{color:#fff;}
.join-banner p{color:#dddfe3;}
.join-banner .eyebrow{color:#ffbc98;}

/* Karty produktów: jednolity kwadrat na dowolne proporcje zdjęć.
   object-fit:contain gwarantuje brak kadrowania, także dla wysokich/wąskich zdjęć. */
.offer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.offer-card{border:1px solid #e0e2e6;border-radius:7px;background:white;box-shadow:none;min-width:0;overflow:hidden;}
.offer-card:hover{transform:none;border-color:#ffb383;box-shadow:0 5px 17px rgba(32,35,42,.085);}
.offer-photo{display:grid;place-items:center;width:100%;height:auto;aspect-ratio:1/1;min-width:0;min-height:0;overflow:hidden;background:#fff;border-bottom:1px solid #f3f3f3;padding:14px;}
.offer-photo img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center center;aspect-ratio:1/1;transition:transform .2s ease;}
.offer-card:hover .offer-photo img{transform:scale(1.025);}
.image-placeholder{font-size:60px;color:#ffbb96;}
.photo-overlay{display:none;}
.offer-content{padding:15px 15px 14px;min-width:0;gap:0;}
.offer-category{font-size:10px;letter-spacing:.6px;text-transform:none;color:#656d78;font-weight:600;}
.offer-title{font-size:14px;line-height:1.45;letter-spacing:0;min-height:41px;margin:7px 0 11px;font-weight:650;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
.offer-title a{color:#262a2e;}
.offer-title a:hover{color:var(--accent-dark);text-decoration:underline;}
.offer-price{margin-top:auto;display:flex;flex-direction:column;gap:0;}
.offer-price strong{font-family:'DM Sans',system-ui,sans-serif;font-size:25px;line-height:1.2;letter-spacing:-.6px;color:#191c20;font-weight:800;white-space:normal;overflow-wrap:anywhere;}
.offer-price small{font-size:10px;margin-top:3px;color:#798088;}
.offer-price .price-pending{font-size:12px;line-height:1.45;}
.offer-meta{margin:11px 0;min-height:15px;}
.availability{font-size:10px;color:#11865b;}
.availability.not-available{color:#a46a57;}
.offer-bottom{display:flex;align-items:center;gap:9px;margin-top:0;padding-top:12px;border-top:1px solid #edf0f2;}
.offer-details{flex:0 0 auto;font-size:11px;color:#5a6068;font-weight:700;}
.offer-details:hover{color:var(--accent-dark);}
.quick-buy{margin-left:auto;max-width:100%;}
.offer-add-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:37px;padding:7px 12px;border:0;border-radius:5px;background:var(--accent);color:#fff;font-size:11px;font-weight:800;white-space:nowrap;}
.offer-add-button:hover{background:var(--accent-dark);}
.offer-add-button:disabled{opacity:.5;cursor:not-allowed;}
.offer-add-button svg{flex:none;}

/* Katalog: wybor kategorii. */
.breadcrumb{margin:4px 0 17px;color:#717782;font-size:12px;}
.breadcrumb a{color:#6b7077;}
.catalog-intro{margin:9px 0 25px;}
.catalog-intro h1{font-size:31px;margin:8px 0;}
.catalog-intro p{font-size:13px;color:#686e76;}
.catalog-number{border-radius:5px;background:#fff1e8;color:#bd4c0e;padding:9px 13px;font-weight:800;}
.shop-layout{grid-template-columns:230px minmax(0,1fr);gap:18px;}
.filters-panel{padding:0;overflow:hidden;border-radius:7px;border:1px solid var(--line);}
.filter-categories{padding:20px 12px 18px;}
.filter-heading{margin:0 10px 12px;color:#272b31;font-size:15px;}
.filter-heading span{color:var(--accent);}
.filter-option{padding:10px 11px;color:#505760;border-radius:4px;font-size:12px;}
.filter-option:hover,.filter-option.active{background:#fff1e8;color:#c84b00;}
.filter-option small{color:#838891;}
.filter-help{margin:0 12px 14px;padding:15px 14px;border-radius:5px;background:#fff5ee;}
.filter-help>span{font-size:19px;color:var(--accent);}
.filter-help p{color:#946a57;}
.catalog-toolbar{background:#fff;border:1px solid var(--line);border-radius:6px;padding:9px 14px;min-height:57px;margin-bottom:13px;}
.sort-form select{border:1px solid #d5d8dc;border-radius:4px;font-size:12px;}
.chip{background:#fff0e6;border-color:#ffd2b3;color:#a6420d;border-radius:4px;}
.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;}
.empty-state{border:1px solid var(--line);border-radius:7px;background:white;}
.empty-icon{color:var(--accent);}

/* Szczegóły: galeria nie obcina zdjęć niezależnie od formatu. */
.detail-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:26px;}
.detail-gallery{min-width:0;}
.detail-photo-stage{height:auto;aspect-ratio:1/1;min-width:0;min-height:0;max-height:unset;border:1px solid var(--line);border-radius:7px;background:#fff;padding:22px;overflow:hidden;display:grid;place-items:center;}
.detail-photo-stage img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center;}
.detail-no-image{color:#ffc09c;}
.photo-expand{font-size:11px;border:1px solid var(--line);border-radius:4px;}
.detail-thumbnails{grid-template-columns:repeat(auto-fill,minmax(66px,80px));gap:9px;}
.detail-thumbnail{display:grid;place-items:center;width:100%;height:auto;aspect-ratio:1/1;padding:6px;overflow:hidden;border:1px solid var(--line);border-radius:4px;background:#fff;}
.detail-thumbnail.is-selected{border:2px solid var(--accent);}
.detail-thumbnail img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center;}
.detail-information{padding:7px 0;min-width:0;}
.detail-information h1{font-size:clamp(25px,2.8vw,37px);}
.detail-price{font-family:'DM Sans',system-ui,sans-serif;font-size:37px;letter-spacing:-.7px;}
.detail-order-box{background:#fff;border:1px solid var(--line);border-radius:7px;padding:24px;box-shadow:none;}
.detail-order-title{font-size:17px;}
.order-assurance{color:#21895f;}
.detail-description{color:#4e5660;line-height:1.75;}

/* Logowanie i rejestracja są publiczne, zdjęcia oferty – nie. */
.auth-layout{background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:none;}
.auth-aside{background:linear-gradient(148deg,#242833,#343941);}
.auth-aside .eyebrow{color:#ffb184;}
.auth-aside h1 em{color:#ffad75;}
.auth-aside>p{color:#e5e5e7;}
.auth-benefits span{color:#ffad75;}
.auth-benefits div{color:#fff;}
.welcome-tabs .active{color:var(--accent-dark);border-color:var(--accent);}
.welcome-tabs a:hover{color:var(--accent-dark);}
.auth-card h2{color:#25282c;}
.auth-card .eyebrow{color:#c84b00;}
.form-note a{color:var(--accent-dark);}

/* Koszyk, miniatury administratora i historia zamówień. */
.panel{border-color:var(--line);border-radius:7px;box-shadow:none;}
.cart-item-image{display:grid;place-items:center;background:#fff;overflow:hidden;border:1px solid var(--line);border-radius:5px;min-width:0;}
.cart-item-image img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center;}
.ordered-item img{display:block;width:60px;height:60px;min-width:60px;object-fit:contain;object-position:center;background:#fff;border:1px solid var(--line);border-radius:5px;}
.gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;object-position:center;background:#fff;border-color:var(--line);border-radius:5px;}
.checkout-note{background:#fff6ef;color:#8c5e42;}
.pill{background:#fff0e6;color:#c7500e;}
.filter-tab{border-color:var(--line);border-radius:5px;}
.filter-tab.selected{background:#fff1e8;border-color:#ffbf95;color:#c85010;}
.mail-message-body{background:#f7f8f9;}
label{color:#3c424a;}
input:not([type=checkbox]):not([type=hidden]),textarea,select{border-color:#d7dade;border-radius:5px;}
footer{background:#272a30;color:#d0d2d7;padding:38px 0;}
.footer-brand span{color:#ff995f;}
.footer-links a{color:#eaebed;}

@media(max-width:1320px){
 .market-entry-grid{grid-template-columns:190px minmax(0,1fr);}
 .market-side-promo{display:none;}
 .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 .hero-text h1{font-size:clamp(32px,3.2vw,44px);}
}
@media(max-width:1100px){
 .container{width:min(100% - 38px,1440px);}
 .market-entry-grid{grid-template-columns:180px minmax(0,1fr);gap:13px;}
 .offer-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 .shop-layout{grid-template-columns:210px minmax(0,1fr);gap:14px;}
 .header-inner{gap:19px;}
 .brand{min-width:194px;}
 .hero-text{padding:27px 0 28px 26px;}
 .hero-image{min-height:340px;}
 .hero-banner{min-height:340px;}
 .hero-highlights{gap:8px;}
 .offer-price strong{font-size:22px;}
}
@media(max-width:850px){
 .market-entry-grid{display:flex;flex-direction:column;}
 .market-category-menu{order:2;display:flex;gap:0;align-items:center;overflow-x:auto;white-space:nowrap;padding:4px 9px;scrollbar-width:none;}
 .market-category-title{padding:7px 12px;border-bottom:0;white-space:nowrap;}
 .market-category-title span{font-size:16px;}
 .market-category-menu>a{flex:none;padding:9px 12px;}
 .market-category-menu>a>span:last-child{display:none;}
 .market-category-menu>a.all-categories{margin:0;border-top:0;padding:9px 12px;}
 .hero-banner{order:1;}
 .shop-layout{display:block;}
 .filters-panel{display:block;overflow:visible;margin-bottom:16px;}
 .filter-categories{display:flex;align-items:center;overflow-x:auto;padding:7px;gap:7px;scrollbar-width:none;}
 .filter-categories .filter-heading{white-space:nowrap;margin:0 6px;font-size:13px;}
 .filter-categories .filter-option{flex:none;border:1px solid var(--line);white-space:nowrap;border-radius:4px;}
 .filter-help{display:none;}
 .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
 .container{width:calc(100% - 28px);}
 .topline-inner{min-height:29px;}
 .topline-inner span:last-child{display:none;}
 .header-inner{min-height:117px;gap:0 9px;grid-template-rows:54px 48px;}
 .header-search{height:43px;border-width:2px;}
 .header-search button{padding:0 17px;font-size:12px;}
 .brand-mark{width:38px;height:38px;}
 .brand-wordmark{font-size:18px;}
 .brand-wordmark small{font-size:6px;letter-spacing:1.9px;}
 .account-link strong,.account-link small{display:none;}
 .action-icon{width:34px;height:34px;}
 .header-actions{gap:12px;}
 .nav-categories{gap:17px;height:43px;}
 .main-content{padding-top:18px;}
 .hero-banner{min-height:0;grid-template-columns:1fr;}
 .hero-text{padding:32px 26px;}
 .hero-text h1{font-size:clamp(30px,6.8vw,42px);}
 .hero-image{min-height:235px;max-height:280px;}
 .hero-image:before{background:linear-gradient(180deg,#ffeadf,rgba(255,234,223,.1) 45%,transparent);}
 .hero-image img{padding:5px 28px 15px;}
 .hero-highlights{margin-top:24px;}
 .trust-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px;gap:18px 9px;}
 .section-wrap{margin-top:32px;}
 .section-head h2{font-size:21px;}
 .category-cards{grid-template-columns:repeat(3,minmax(0,1fr));}
 .offer-grid,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
 .offer-photo{padding:10px;}
 .offer-content{padding:12px;}
 .offer-title{font-size:13px;min-height:38px;}
 .offer-price strong{font-size:21px;}
 .offer-meta{margin:10px 0;}
 .offer-add-button{min-height:34px;font-size:10px;padding:7px 9px;}
 .offer-add-button svg{width:16px;height:16px;}
 .detail-layout{grid-template-columns:1fr;gap:19px;}
 .detail-photo-stage{max-height:unset;padding:14px;}
 .detail-information h1{font-size:28px;}
 .auth-aside{background:linear-gradient(145deg,#272b32,#42464c);}
 .auth-aside h1{font-size:29px;}
 .auth-content{padding:27px 21px;}
 .join-banner{padding:26px;}
 .footer-inner,.footer-bottom{gap:14px;}
}
@media(max-width:470px){
 .brand-wordmark{font-size:16px;}
 .header-search input{font-size:12px;}
 .market-category-menu{font-size:11px;}
 .market-category-title{font-size:11px;}
 .market-category-menu>a{font-size:11px;}
 .hero-text{padding:27px 21px;}
 .hero-text h1{font-size:34px;}
 .hero-text p{font-size:12px;}
 .hero-image{min-height:180px;max-height:225px;}
 .hero-actions{gap:13px;}
 .hero-secondary{font-size:11px;}
 .trust-item{gap:7px;}
 .trust-item strong{font-size:10px;}
 .trust-item small{font-size:9px;}
 .trust-icon{width:32px;height:32px;font-size:17px;}
 .category-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
 .category-card{min-height:127px;padding:13px;}
 .offer-content{padding:10px;}
 .offer-title{font-size:12px;}
 .offer-category{font-size:9px;}
 .offer-price strong{font-size:18px;}
 .offer-price small{font-size:9px;}
 .offer-details{display:none;}
 .offer-add-button{width:100%;}
 .quick-buy{width:100%;}
 .offer-bottom{gap:0;}
 .availability{font-size:9px;}
 .catalog-toolbar{padding:11px;}
 .sort-form select{width:155px;}
 .catalog-intro h1{font-size:27px;}
 .detail-thumbnails{grid-template-columns:repeat(auto-fill,minmax(58px,68px));}
}
@media(prefers-reduced-motion:reduce){
 .offer-card,.offer-photo img,.button{transition:none!important;}
}

/* Na stronach publicznych nie pokazujemy fotografii produktów. */
.auth-aside{isolation:isolate;}
.auth-aside-decor{position:absolute;left:0;right:0;bottom:0;height:265px;overflow:hidden;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 90%,rgba(255,137,70,.25),transparent 65%);}
.auth-aside-decor span{position:absolute;left:50%;bottom:-88px;transform:translateX(-50%) rotate(-9deg);font-size:230px;line-height:1;font-weight:800;letter-spacing:-25px;color:rgba(255,255,255,.05);}
.auth-aside-decor i,.auth-aside-decor b{display:block;position:absolute;width:155px;height:155px;transform:rotate(25deg) skew(-8deg);border:18px solid rgba(255,135,74,.2);border-radius:20px;bottom:31px;right:47px;}
.auth-aside-decor b{width:80px;height:80px;bottom:145px;right:145px;border-width:11px;border-color:rgba(255,255,255,.14);}
@media(max-width:760px){.auth-aside-decor{height:100%;opacity:.5}.auth-aside-decor span{font-size:150px;bottom:-55px;left:78%;}.auth-aside-decor i{right:-40px;bottom:-80px}.auth-aside-decor b{right:25px;bottom:60px}}

/* v18 — katalog od razu po zalogowaniu, bez wyszukiwarki i strony głównej. */
.header-inner{justify-content:space-between;min-height:78px;}
.header-actions{margin-left:auto;}
.nav-categories a.current{color:var(--accent-dark);}
.catalog-intro{margin-top:3px;}

/* Publiczne logowanie i rejestracja: wyłącznie jeden formularz na środku ekranu. */
.auth-only-page{min-height:100vh;display:flex;flex-direction:column;background:#f3f4f6;}
.auth-only-main{width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px 16px;}
.auth-only-main .alert{margin:0;width:min(100%,440px);}
.auth-only-layout{width:min(100%,440px);}
.auth-only-card{background:#fff;border:1px solid #e3e6eb;border-top:4px solid var(--accent);border-radius:10px;padding:37px 36px 34px;box-shadow:0 14px 45px rgba(23,28,40,.08);}
.auth-only-form h1{margin:0 0 28px;text-align:center;font-size:29px;line-height:1.2;letter-spacing:-.8px;font-weight:800;}
.auth-only-form label{font-size:13px;font-weight:750;color:#373d45;margin-bottom:19px;}
.auth-only-form label small{font-size:11px;font-weight:500;color:#858a91;}
.auth-only-form input{height:48px;margin-top:8px;padding:10px 14px;background:#fff;border:1px solid #ccd2da;border-radius:6px;color:#22272e;font-size:14px;}
.auth-only-form input:focus{outline:3px solid #ffbb92;border-color:var(--accent);}
.auth-only-form .button{min-height:48px;margin-top:5px;font-size:14px;}
.auth-only-form .form-note{text-align:center;margin:15px 0 0;font-size:11px;}
.auth-switch{margin:20px 0 0;font-size:12px;text-align:center;color:#717880;line-height:1.6;}
.auth-switch a{color:var(--accent-dark);font-weight:800;text-decoration:underline;text-underline-offset:2px;}

/* Administrator: wygodna lista ze zdjęciem produktu, ceną i stanem. */
.admin-products-heading{margin-bottom:14px;}
.admin-products-stats{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:19px;}
.admin-products-stats>span{background:#fff;border:1px solid var(--line);padding:11px 16px;border-radius:7px;color:#626b75;font-size:12px;}
.admin-products-stats strong{display:inline-block;font-size:17px;color:#222933;margin-left:5px;}
.admin-page .admin-columns{grid-template-columns:minmax(295px,.69fr) minmax(0,1.6fr);gap:20px;align-items:start;}
.admin-product-editor{min-width:0;}
.admin-edit-preview{display:flex;align-items:center;gap:13px;background:#f7f8fa;border:1px solid #e5e7eb;border-radius:7px;padding:11px;margin:14px 0 18px;}
.admin-edit-preview img{width:78px;height:78px;object-fit:contain;flex:none;background:#fff;border:1px solid #e1e3e8;border-radius:6px;padding:5px;}
.admin-edit-preview span{color:#6b747f;font-weight:700;font-size:12px;}
.panel.admin-product-list{min-width:0;padding:0;overflow:hidden;}
.admin-list-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:22px 22px 18px;border-bottom:1px solid #e8eaee;}
.admin-list-heading h2{font-size:20px;line-height:1.2;margin:0 0 5px;}
.admin-list-heading p{font-size:12px;margin:0;}
.admin-count{white-space:nowrap;border-radius:30px;padding:6px 10px;background:#fff1e8;color:#c54c0a;font-weight:800;font-size:11px;}
.admin-product-scroll{overflow-x:auto;}
.admin-product-table{width:100%;min-width:650px;table-layout:auto;}
.admin-product-table th{font-size:10px;text-transform:uppercase;letter-spacing:.45px;background:#fafbfc;color:#777f8b;padding:13px 12px;white-space:nowrap;}
.admin-product-table th:first-child,.admin-product-table td:first-child{padding-left:21px;}
.admin-product-table th:last-child,.admin-product-table td:last-child{padding-right:17px;}
.admin-product-table td{padding:13px 12px;border-bottom:1px solid #eef0f3;vertical-align:middle;font-size:12px;}
.admin-product-table tbody tr:hover{background:#fffaf6;}
.admin-product-table tbody tr.row-edited{background:#fff5ee;}
.admin-product-table tbody tr:last-child td{border-bottom:0;}
.admin-product-identity{display:flex;align-items:center;gap:12px;min-width:185px;max-width:330px;}
.admin-product-thumb{display:grid;place-items:center;width:76px;height:76px;min-width:76px;padding:6px;border:1px solid #e4e7eb;border-radius:7px;background:#fff;overflow:hidden;}
.admin-product-thumb img{width:100%;height:100%;max-width:100%;max-height:100%;display:block;object-fit:contain;object-position:center;}
.admin-product-thumb span{font-size:27px;color:#d4d7dc;}
.admin-product-copy{display:flex;flex-direction:column;gap:6px;min-width:0;}
.admin-product-name{font-size:12px;font-weight:800;color:#242930;line-height:1.4;overflow-wrap:anywhere;}
.admin-product-name:hover{text-decoration:underline;}
.admin-product-copy span{font-size:10px;color:#828891;overflow-wrap:anywhere;}
.admin-product-table .admin-price{font-size:13px;white-space:nowrap;font-weight:800;color:#272c32;}
.admin-stock{font-size:11px;font-weight:750;color:#277151;white-space:nowrap;}
.admin-stock.no-stock{color:#ba5f43;}
.admin-status{display:inline-block;border-radius:30px;padding:6px 9px;white-space:nowrap;font-size:10px;font-weight:800;}
.admin-status.is-active{color:#19754f;background:#e7f7ef;}
.admin-status.is-hidden{color:#737984;background:#eceef1;}
.admin-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.admin-row-actions .button{font-size:11px!important;white-space:nowrap;}
.admin-row-actions form{margin:0;}
.admin-row-actions .trash-button{border:1px solid #f2d1cd;border-radius:4px;background:#fff7f6;color:#aa403a;font-size:11px;font-weight:750;padding:9px 10px;}
.admin-row-actions .trash-button:hover{background:#fff0ed;}
.admin-list-empty{padding:40px 25px;color:#7b8189;text-align:center;font-size:13px;}
@media(max-width:1150px){.admin-page .admin-columns{grid-template-columns:1fr;}.admin-product-editor{max-width:760px;}}
@media(max-width:760px){
 .header-inner{display:flex;grid-template-columns:none;grid-template-rows:none;align-items:center;justify-content:space-between;min-height:70px;gap:10px;}
 .brand{min-width:0;}
 .header-actions{margin-left:auto;gap:12px;}
 .nav-bar{overflow-x:auto;scrollbar-width:thin;}
 .nav-categories{width:max-content;min-width:calc(100% - 28px);white-space:nowrap;}
 .auth-only-card{padding:30px 23px 28px;}
 .auth-only-form h1{font-size:26px;}
 .admin-products-stats>span{flex:1 1 auto;}
 .admin-list-heading{padding:17px 14px;}
 .admin-product-table{display:block;min-width:0;}
 .admin-product-table thead{display:none;}
 .admin-product-table tbody{display:block;}
 .admin-product-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:15px;border-bottom:1px solid #e9ecf0;}
 .admin-product-table tbody tr:last-child{border-bottom:none;}
 .admin-product-table td,.admin-product-table td:first-child,.admin-product-table td:last-child{border:0;padding:0;}
 .admin-product-table td:first-child{grid-column:1 / -1;}
 .admin-product-table td:nth-child(2){grid-column:1;}
 .admin-product-table td:nth-child(3){grid-column:2;text-align:right;}
 .admin-product-table td:nth-child(4){grid-column:1;}
 .admin-product-table td:nth-child(5){grid-column:2;justify-self:end;}
 .admin-product-thumb{width:68px;height:68px;min-width:68px;}
 .admin-product-identity{max-width:none;}
 .admin-row-actions{justify-content:flex-end;}
}
@media(max-width:420px){.auth-only-main{padding:17px 12px;}.auth-only-card{padding:27px 18px;}.admin-product-table tbody tr{padding:12px 10px;}.admin-product-thumb{width:62px;height:62px;min-width:62px;}.admin-row-actions .trash-button{padding:9px 7px;}.admin-row-actions{gap:5px;}}
@media(max-width:1150px){
 .admin-page .admin-product-list{order:-1;}
 .admin-product-editor{scroll-margin-top:18px;}
}

/* v19: katalog paginowany; oszczędne wyświetlanie kolejnych kart */
.catalog-pages{display:flex;justify-content:center;align-items:center;gap:15px;flex-wrap:wrap;margin:25px 0 8px;font-size:13px;color:var(--muted)}
.catalog-pages a{display:inline-block;background:#fff;border:1px solid var(--line);padding:10px 15px;border-radius:5px;font-weight:750;color:var(--accent-dark)}
.catalog-pages a:hover{border-color:var(--accent);background:var(--accent-light)}

/* v21 — nowoczesny katalog bez bocznego panelu i bez dodatkowych bibliotek.
   Jedynym filtrem pozostaje kategoria; sortowanie jest osobną kontrolką. */
:root{
 --bg:#f6f7f9;--surface:#fff;--text:#1c232b;--muted:#757e8a;
 --line:#e7ebef;--accent:#f46724;--accent-dark:#db5113;
 --accent-light:#fff2e9;--green:#187c59;
 --shadow:0 14px 38px rgba(22,35,52,.065);
}
body{background:var(--bg);font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--text)}
h1,h2,h3,h4{font-family:inherit;color:var(--text);letter-spacing:-.045em}
.container{width:min(1376px,calc(100% - 56px))}
.header{position:relative;z-index:20;background:#fff;border-color:#edf0f3;box-shadow:0 1px 3px rgba(20,32,50,.025)}
.header-inner{min-height:84px}
.brand-mark{width:46px;height:46px;border-radius:14px;background:#fff4ec}
.brand-wordmark{font-family:inherit;font-size:23px;letter-spacing:-1.45px;color:#1d252e}
.brand-wordmark>span{color:#e96623}
.brand-wordmark small{font-size:8px;letter-spacing:2px;color:#89909b}
.header-actions{gap:23px}
.action-icon{width:42px;height:42px;border:1px solid #edf0f2;background:#f7f8fa;border-radius:14px;color:#35404c}
.account-link{gap:12px}
.account-link strong{font-size:12px;color:#242b35}
.account-link small{color:#9299a3;font-size:11px}
.cart-link{font-size:12px;gap:12px;color:#29313a}
.cart-link>svg{width:24px;height:24px}
.cart-badge{background:var(--accent)}
.nav-bar{background:#fff;border-bottom:1px solid #edf0f2}
.nav-categories{height:52px;gap:26px}
.nav-categories a,.nav-logout{font-size:12px;font-weight:700;color:#66707c;transition:color .15s}
.nav-categories a:hover,.nav-logout:hover{color:var(--accent-dark)}
.nav-categories a.current{color:#202933}
.nav-categories a.current:after{height:3px;bottom:-18px;border-radius:5px;background:var(--accent)}
.nav-push{min-width:8px}
.main-content{padding-top:37px;min-height:65vh;padding-bottom:85px}
.button{border-radius:11px;background:var(--accent);border-color:var(--accent);font-size:12px;min-height:44px;padding:11px 18px;transition:background .18s,box-shadow .18s}
.button:hover{background:var(--accent-dark);border-color:var(--accent-dark);box-shadow:0 7px 18px rgba(237,104,39,.16)}
.button.secondary{border-color:#e4e7eb}
.button.secondary:hover{background:#f8f9fa}
/* Nagłówek katalogu */
.catalog-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 25px}
.catalog-eyebrow{display:flex;align-items:center;gap:9px;color:#b75325;font-size:10px;letter-spacing:2px}
.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#ed7e45;box-shadow:0 0 0 4px #fff0e7}
.catalog-intro h1{font-size:clamp(34px,3.6vw,49px);line-height:1.12;margin:13px 0 8px;font-weight:800;letter-spacing:-1.9px}
.catalog-intro p{font-size:13px;margin:0;color:#8a929b}
.catalog-number{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:115px;padding:15px 20px;background:#fff;border:1px solid var(--line);border-radius:17px;color:#7c8590;box-shadow:0 2px 12px rgba(28,42,58,.025)}
.catalog-number strong{font-size:28px;line-height:1;font-weight:800;letter-spacing:-1px;color:#222c36}
.catalog-number span{font-size:11px;font-weight:650}
/* Jedna zwarta belka filtrów, bez sidebaru. */
.shop-layout{display:block}
.catalog-main{min-width:0}
.catalog-toolbar{position:relative;z-index:8;min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 17px;margin:0 0 19px;border:1px solid #e8ebef;border-radius:17px;background:#fff;box-shadow:0 5px 28px rgba(25,37,55,.028)}
.catalog-controls{display:flex;align-items:center;gap:12px;min-width:0}
.category-dropdown{position:relative;flex:none;min-width:238px;max-width:min(340px,100%)}
.category-dropdown summary{list-style:none}
.category-dropdown summary::-webkit-details-marker{display:none}
.category-toggle{user-select:none;cursor:pointer;display:flex;align-items:center;gap:13px;min-height:54px;padding:8px 14px;border:1px solid #e7e9ee;border-radius:12px;background:#f9fafb;color:#27323c;transition:border-color .16s,background .16s,box-shadow .16s}
.category-toggle:hover,.category-dropdown[open] .category-toggle{border-color:#ffb28a;background:#fff9f5}
.category-toggle:focus-visible{outline:3px solid #ffb58f;outline-offset:3px}
.category-toggle-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none;color:#e26020;background:#fff0e8}
.category-toggle-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.category-toggle-text small,.sort-form label{color:#89929d;font-size:10px;font-weight:650;line-height:1.35}
.category-toggle-text strong{color:#222d39;line-height:1.35;font-size:12px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dropdown-chevron{flex:none;color:#687481;transition:transform .16s}
.category-dropdown[open] .dropdown-chevron{transform:rotate(180deg)}
.category-popover{position:absolute;z-index:50;left:0;top:calc(100% + 9px);width:min(340px,calc(100vw - 34px));max-height:min(410px,70vh);overflow-y:auto;background:#fff;padding:9px;border:1px solid #e8ebef;border-radius:15px;box-shadow:0 20px 45px rgba(20,31,48,.15)}
.category-popover-heading{font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:#96a0aa;font-weight:800;padding:12px 12px 8px}
.category-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:43px;padding:10px 12px;color:#465360;font-size:12px;font-weight:650;border-radius:10px;transition:background .12s,color .12s}
.category-choice:hover{background:#f7f8fa;color:#222b35}
.category-choice.is-selected{background:#fff1e8;color:#c44f1b;font-weight:800}
.category-choice-trailing{font-size:11px;color:#a1a9b1;min-width:14px;text-align:right}
.category-choice.is-selected .category-choice-trailing{color:#d45f24;font-size:14px}
.sort-form{display:flex;align-items:center;gap:12px;min-width:0;margin:0}
.sort-form label{font-size:11px;white-space:nowrap;color:#89929e}
.sort-control{position:relative;display:flex;align-items:center;min-width:190px}
.sort-form select{width:100%;height:54px;appearance:none;-webkit-appearance:none;border:1px solid #e7e9ee;border-radius:12px;background:#f9fafb;color:#25303b;font-size:12px;font-weight:700;padding:0 39px 0 15px;cursor:pointer;transition:background .16s,border-color .16s}
.sort-form select:hover,.sort-form select:focus{border-color:#ffb28a;background:#fff9f5}
.sort-form select:focus-visible{outline:3px solid #ffb58f;outline-offset:2px}
.sort-control>svg{position:absolute;right:15px;pointer-events:none;color:#65717d}
.catalog-toolbar-right{display:flex;align-items:center;justify-content:flex-end;gap:13px;margin-left:auto;flex-wrap:wrap}
.catalog-results{font-size:12px;font-weight:700;color:#848d99;white-space:nowrap}
.catalog-reset{display:inline-flex;gap:8px;align-items:center;padding:7px 10px;border-radius:8px;background:#fff1e8;color:#ad4c1f;font-size:11px;font-weight:750;white-space:nowrap}
.catalog-reset:hover{background:#ffe6d5;color:#a93b0a}
.catalog-reset span{font-size:18px;line-height:12px}
/* Karty: więcej powietrza, przyjemny kontrast i spokojne interakcje. */
.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.offer-card{border:1px solid #e9ecf0;border-radius:18px;box-shadow:0 2px 9px rgba(23,37,56,.025);transition:border-color .18s,box-shadow .18s,transform .18s}
.offer-card:hover{transform:translateY(-3px);border-color:#f7d3be;box-shadow:0 13px 32px rgba(28,38,55,.095)}
.offer-photo{aspect-ratio:1/1;padding:20px;background:#fafbfc;border:0;border-bottom:1px solid #f1f2f5}
.offer-photo img{object-fit:contain;transition:transform .25s ease}
.offer-card:hover .offer-photo img{transform:scale(1.035)}
.offer-content{padding:17px 18px 18px}
.offer-category{align-self:flex-start;display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #edf0f2;background:#f7f8fa;border-radius:999px;color:#747e8a;text-transform:none;letter-spacing:0;font-size:10px;font-weight:750}
.offer-title{font-size:15px;line-height:1.4;letter-spacing:-.25px;font-weight:750;min-height:42px;margin:10px 0 12px}
.offer-title a{color:#27313d}
.offer-title a:hover{color:var(--accent-dark);text-decoration:none}
.offer-price strong{font-family:inherit;font-size:26px;letter-spacing:-.95px;color:#1e2732}
.offer-price small{font-size:10px;color:#a0a7b0;margin-top:3px}
.offer-meta{margin:12px 0 14px;min-height:15px}
.availability{font-weight:700;font-size:10px;color:#278667}
.status-dot{background:#2dba83}
.availability.not-available .status-dot{background:#d9a081}
.offer-bottom{margin-top:auto;padding-top:14px;border-color:#eef0f2;gap:12px}
.offer-details{font-size:12px;font-weight:750;color:#697581}
.offer-add-button{min-height:40px;border-radius:10px;font-size:11px;font-weight:750;padding:10px 13px;gap:7px;transition:background .16s,box-shadow .16s}
.offer-add-button:hover{box-shadow:0 6px 14px rgba(229,103,37,.16)}
/* Pozostałe ekrany otrzymują spójne delikatne wykończenie. */
.panel,.empty-state,.detail-order-box{border-radius:16px}
.detail-photo-stage{border-radius:18px;background:#fff}
.detail-thumbnail{border-radius:10px}
.auth-only-card{border-radius:18px;box-shadow:0 18px 45px rgba(22,34,50,.08)}
footer{background:#222a33}
.catalog-pages a{border-radius:10px;padding:10px 17px}
@media(max-width:1170px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-toolbar-right{display:none}}
@media(max-width:800px){
 .container{width:calc(100% - 32px)}
 .header-inner{min-height:74px}
 .nav-categories{gap:21px;height:47px}
 .nav-categories a.current:after{bottom:-15px}
 .main-content{padding-top:26px}
 .catalog-intro{margin-bottom:18px}
 .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
 .catalog-toolbar{padding:11px;min-height:0}
 .catalog-controls{width:100%;gap:10px}
 .category-dropdown{flex:1 1 50%;min-width:0;max-width:none}
 .sort-form{flex:1 1 50%;min-width:0}
 .sort-form label{display:none}
 .sort-control{min-width:0;width:100%}
 .category-toggle,.sort-form select{height:52px;min-height:52px}
 .category-toggle{padding:7px 9px;gap:9px}
 .category-toggle-icon{width:33px;height:33px}
 .category-toggle-text strong{font-size:11px}
 .sort-form select{padding-left:12px;padding-right:26px;font-size:11px}
 .sort-control>svg{right:9px}
 .catalog-results{display:none}
 .catalog-toolbar-right{display:flex;margin:0}
 .catalog-toolbar{flex-wrap:wrap}
 .catalog-toolbar-right:has(.catalog-reset){margin-top:-4px}
 .offer-price strong{font-size:22px}
}
@media(max-width:510px){
 .header-inner{min-height:69px}
 .brand-mark{width:39px;height:39px;border-radius:11px}
 .brand-wordmark{font-size:19px}
 .header-actions{gap:12px}
 .account-link{gap:0}
 .action-icon{width:36px;height:36px;border-radius:11px}
 .cart-link>svg{width:22px;height:22px}
 .cart-label{display:none}
 .catalog-intro h1{font-size:36px}
 .catalog-intro p{font-size:11px}
 .catalog-number{min-width:77px;padding:11px 12px;border-radius:12px}
 .catalog-number strong{font-size:23px}
 .catalog-number span{font-size:9px}
 .offer-photo{padding:9px}
 .offer-content{padding:12px 11px 12px}
 .offer-category{font-size:9px;padding:4px 7px}
 .offer-title{font-size:12px;min-height:35px;margin:8px 0 9px;line-height:1.4}
 .offer-price strong{font-size:20px}
 .offer-price small{font-size:9px}
 .offer-meta{margin:10px 0 11px}
 .availability{font-size:9px}
 .offer-details{display:none}
 .quick-buy{width:100%}
 .offer-add-button{width:100%;justify-content:center;font-size:10px;min-height:37px;padding:8px 7px}
 .offer-bottom{padding-top:11px}
 .catalog-grid{gap:10px}
 .offer-card{border-radius:13px}
}
@media(max-width:370px){.category-toggle-icon{display:none}.sort-form select{font-size:10px}.catalog-number{display:none}.catalog-intro{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.offer-card,.offer-photo img,.dropdown-chevron,.category-toggle,.category-choice,.sort-form select,.offer-add-button{transition:none!important}}

/* v22 – wyrazisty przycisk powrotu do zakupów w koszyku. */
.page-heading .cart-continue-shopping{
 display:inline-flex;align-items:center;justify-content:center;gap:10px;
 flex-shrink:0;min-height:48px;padding:12px 21px;
 background:linear-gradient(135deg,#ff7a2b 0%,#f46724 65%,#e75616 100%);
 border:1px solid #eb5c1b;border-radius:13px;color:#fff!important;
 font-size:13px;font-weight:800;line-height:1.2;text-decoration:none;
 box-shadow:0 5px 14px rgba(244,103,36,.21);
 transition:box-shadow .18s ease,transform .18s ease,filter .18s ease;
}
.page-heading .cart-continue-shopping svg{flex:none;transition:transform .18s ease}
.page-heading .cart-continue-shopping:hover{
 background:linear-gradient(135deg,#fa6920,#e75716);
 border-color:#df5115;filter:saturate(1.05);
 box-shadow:0 8px 19px rgba(224,82,19,.26);transform:translateY(-2px);
}
.page-heading .cart-continue-shopping:hover svg{transform:translateX(-3px)}
.page-heading .cart-continue-shopping:focus-visible{outline:3px solid #ffb27c;outline-offset:3px}
@media(max-width:420px){
 .page-heading .cart-continue-shopping{width:100%;min-height:48px;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
 .page-heading .cart-continue-shopping,.page-heading .cart-continue-shopping svg{transition:none!important}
 .page-heading .cart-continue-shopping:hover{transform:none}
}

/* v23 – branding KrisPrint.pl oraz dopasowanie kolorystyki do logo. */
:root{
 --brand-blue:#19a8ff;
 --brand-blue-dark:#0f6fda;
 --brand-blue-soft:#ebf7ff;
 --accent:#ff7a12;
 --accent-dark:#e85f00;
 --accent-light:#fff2e8;
}
a{color:var(--brand-blue-dark)}
a:hover{color:var(--accent-dark)}
.header{box-shadow:0 1px 3px rgba(16,24,40,.04),0 10px 28px rgba(15,23,42,.035)}
.header-inner{min-height:88px}
.brand{min-width:0;gap:0}
.brand-logo-full{display:block;height:66px;width:auto;max-width:min(240px,48vw);object-fit:contain;filter:drop-shadow(0 10px 16px rgba(15,111,218,.10))}
.nav-categories a.current{color:var(--brand-blue-dark)}
.nav-categories a.current:after{background:linear-gradient(90deg,var(--brand-blue),var(--accent))}
.action-icon{background:linear-gradient(180deg,#f4fbff,#fff8f2);border-color:#e7edf5;color:var(--brand-blue-dark)}
.account-link:hover strong,.cart-link:hover,.admin-product-name:hover{color:var(--brand-blue-dark)}
.cart-badge{background:linear-gradient(135deg,var(--brand-blue-dark),var(--brand-blue))}
.button.secondary{color:var(--brand-blue-dark)!important}
.button.secondary:hover{border-color:#cfe5ff;background:#f7fbff}
.catalog-number{background:var(--brand-blue-soft);color:var(--brand-blue-dark)}
.category-toggle-icon,.offer-category,.admin-count{background:var(--brand-blue-soft);color:var(--brand-blue-dark);border-color:#d8ebff}
.category-toggle:hover,.category-dropdown[open] .category-toggle,.sort-form select:hover,.sort-form select:focus{border-color:#cfe4ff;background:#fdfefe}
.category-choice.is-selected{background:var(--brand-blue-soft);color:var(--brand-blue-dark)}
.category-choice.is-selected .category-choice-trailing{color:var(--brand-blue-dark)}
.catalog-reset{background:var(--brand-blue-soft);color:var(--brand-blue-dark)}
.offer-title a:hover,.offer-details:hover{color:var(--brand-blue-dark)}
.status-dot{background:var(--brand-blue)}
.photo-overlay{border:1px solid #edf1f5}
.detail-thumbnail.is-selected{border-color:var(--brand-blue)}
.page-heading .cart-continue-shopping,.offer-add-button,.auth-only-form .button,.button:not(.secondary){background:linear-gradient(135deg,#ff871d 0%,#ff7300 58%,#eb5d00 100%);border-color:#eb6305;color:#fff!important;box-shadow:0 7px 18px rgba(235,93,0,.14)}
.page-heading .cart-continue-shopping:hover,.offer-add-button:hover,.auth-only-form .button:hover,.button:not(.secondary):hover{background:linear-gradient(135deg,#ff7d0d 0%,#ec6500 100%);border-color:#df5b00;box-shadow:0 10px 22px rgba(223,91,0,.18)}
.auth-only-page{background:radial-gradient(circle at top left,rgba(25,168,255,.11),transparent 32%),radial-gradient(circle at bottom right,rgba(255,122,18,.12),transparent 30%),#f6f8fb}
.auth-only-card{position:relative;border:1px solid #e5ecf4;border-top:0;padding-top:28px}
.auth-only-card::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;border-radius:18px 18px 0 0;background:linear-gradient(90deg,var(--brand-blue),var(--accent))}
.auth-brand{display:flex;flex-direction:column;align-items:center;gap:12px;margin:0 0 22px;text-align:center}
.auth-brand img{display:block;width:min(220px,72%);height:auto;filter:drop-shadow(0 12px 20px rgba(15,111,218,.10))}
.auth-brand p{margin:0;font-size:12px;line-height:1.55;color:#7b8591;max-width:320px}
.auth-only-form h1{margin-bottom:24px}
.auth-only-form .button{margin-top:8px}
.footer-brand{display:flex;align-items:center;gap:14px;color:#fff}
.footer-brand img{display:block;width:132px;height:auto;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(22,168,255,.12))}
.footer-brand strong{font-size:16px;letter-spacing:-.02em}
.footer-bottom span{opacity:.95}
@media(max-width:800px){
 .brand-logo-full{height:58px;max-width:190px}
 .header-inner{min-height:76px}
}
@media(max-width:510px){
 .brand-logo-full{height:50px;max-width:158px}
 .auth-brand img{width:min(188px,78%)}
 .footer-brand{gap:10px}
 .footer-brand img{width:112px}
 .footer-brand strong{font-size:14px}
}

/* v24 — rzeczywiste logo użytkownika KrissPrint.pl, bez wczytywania oryginału 1,7 MB. */
.brand-logo-full{height:74px;width:auto;max-width:min(240px,48vw);object-fit:contain}
.auth-brand img{width:min(250px,82%);height:auto}
.footer-brand img{width:124px;height:auto}
@media(max-width:800px){.brand-logo-full{height:62px;max-width:190px}}
@media(max-width:510px){.brand-logo-full{height:52px;max-width:158px}.auth-brand img{width:min(214px,80%)}}

/* Czytelne oznaczenie marki w nagłówku, ilustracja z przesłanego logo. */
.brand-krissprint{display:flex;align-items:center;gap:9px;white-space:nowrap}
.brand-symbol{display:block;width:90px;height:58px;max-width:none;object-fit:contain;filter:drop-shadow(0 4px 9px rgba(9,125,240,.11))}
.brand-name{font-size:23px;letter-spacing:-1.1px;font-weight:850;line-height:1;color:#1c2c44}
.brand-name>span{color:#0394ec}
.brand-name small{font-size:.8em;font-weight:800;color:#1c2c44}
@media(max-width:800px){.brand-symbol{width:72px;height:51px}.brand-name{font-size:20px}.brand-krissprint{gap:6px}}
@media(max-width:510px){.brand-symbol{width:59px;height:42px}.brand-name{font-size:17px;letter-spacing:-.7px}.brand-krissprint{gap:3px}}
@media(max-width:370px){.brand-symbol{width:47px}.brand-name{font-size:15px}}
