/* katalog.pomocniczy.pl – wygląd spójny ze stroną pomocniczy.pl (ciemny motyw, limonkowy akcent, krój Archivo + JetBrains Mono) */
:root,:root[data-theme="dark"]{
  --bg:#111214; --bg2:#16171a; --bg-soft:#16171a; --card:#18191c; --line:#26282d; --line2:#35373d;
  --text:#f4f4f1; --fg:#f4f4f1; --muted:#8b8d93; --dim:#55575e; --acc:#d6ff3d; --ink:#0d0d0e; --navc:#c9cacd;
  --input-bg:#0f1012; --tag-bg:#1d1f23; --tag-text:#d6ff3d;
  --primary:#d6ff3d; --primary-dark:#c0e62e; --grad:#d6ff3d; --grad-warm:#d6ff3d; --hero-bg:#16171a;
  --ok-bg:#1c2a12; --ok-text:#d6ff3d; --err-bg:#2c1517; --err-text:#ffb4b4;
  --tint:rgba(255,255,255,.07); --tint2:rgba(255,255,255,.11); --tickm:#6b6e75; --rw:112px;
  --shadow:none; --shadow-hover:none; --radius:0;
  --hh:72px; --sub:40px;
  --sans:'Archivo',system-ui,sans-serif; --serif:'Instrument Serif',Georgia,serif; --mono:'JetBrains Mono',ui-monospace,monospace;
  --side:#16171a; --side2:#1d1f23; --amber:#d6ff3d;
  color-scheme:dark;
}
:root[data-theme="light"]{
  --bg:#f3f2ed; --bg2:#e9e8e2; --bg-soft:#e9e8e2; --card:#fbfaf7; --line:#d9d7cf; --line2:#c4c2b9;
  --text:#141416; --fg:#141416; --muted:#65676d; --dim:#a4a59f; --acc:#5f8f00; --ink:#f6f5f1; --navc:#3c3e44;
  --input-bg:#fbfaf7; --tag-bg:#e9e8e2; --tag-text:#3d5a00;
  --primary:#5f8f00; --primary-dark:#4a7000; --grad:#5f8f00; --grad-warm:#5f8f00; --hero-bg:#e9e8e2;
  --ok-bg:#e6f0cf; --ok-text:#3d5a00; --err-bg:#fdeceb; --err-text:#a4262c;
  --tint:rgba(0,0,0,.06); --tint2:rgba(0,0,0,.1); --tickm:#8f9096;
  --side:#e9e8e2; --side2:#dedcd3; --amber:#5f8f00;
  color-scheme:light;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;padding-top:calc(var(--hh) + var(--sub))}
h1,h2,h3,h4,.intro h1{font-family:var(--sans);font-weight:800;letter-spacing:-.03em}
a{color:inherit}
em.s,.intro h1 em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase}

/* ===== nagłówek – te same wymiary i style co na pomocniczy.pl ===== */
.pp-head{position:fixed;top:0;left:0;right:0;height:var(--hh);z-index:60;background:var(--bg);border-bottom:1px solid var(--line);display:flex;align-items:stretch}
.pp-logo{display:flex;align-items:center;gap:10px;padding:0 30px 0 24px;border-right:1px solid var(--line);font-weight:800;font-size:23px;letter-spacing:-.035em;color:var(--text);text-decoration:none;flex:none}
.pp-logo .worker,.pp-flogo .worker{width:40px;height:40px;flex:none;overflow:visible}
.worker .arm{transform-box:view-box;transform-origin:30px 31px}
.pp-logo:hover .arm,.pp-flogo:hover .arm{animation:ppwave .9s ease-in-out 2}
@keyframes ppwave{25%{transform:rotate(-22deg)}75%{transform:rotate(14deg)}}
.worker [fill="#f4f4f1"]{fill:var(--fg)} .worker [stroke="#f4f4f1"]{stroke:var(--fg)}
.worker path[d^="M15 28.5"]{stroke:var(--bg)} .worker rect[fill="#111214"]{fill:var(--bg)}
.pp-nav{display:flex;align-items:center;gap:6px;padding:0 22px;border-right:1px solid var(--line)}
.pp-nav a{font-family:var(--mono);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--navc);padding:8px 12px;text-decoration:none;transition:.15s;white-space:nowrap}
.pp-nav a:hover,.pp-nav a.on{background:var(--fg);color:var(--ink)}
.pp-sp{flex:1}
.pp-theme{width:var(--hh);flex:none;display:grid;place-items:center;background:none;color:var(--text);cursor:pointer;transition:background .2s}
.pp-theme:hover{background:var(--bg2)}
.pp-theme svg{width:22px;height:22px;transition:transform .6s cubic-bezier(.2,.9,.3,1.2)}
.pp-theme:hover svg{transform:rotate(45deg)}
.pp-theme .moon{display:none} :root[data-theme="light"] .pp-theme .sun{display:none} :root[data-theme="light"] .pp-theme .moon{display:block}
.pp-cell{display:flex;align-items:center;padding:0 30px;border-left:1px solid var(--line);font-family:var(--mono);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--navc);text-decoration:none;white-space:nowrap;transition:.2s}
.pp-cell:hover{background:var(--bg2);color:var(--fg)}
.pp-cta{display:flex;align-items:center;padding:0 38px;background:var(--fg);color:var(--ink);font-family:var(--mono);font-weight:500;font-size:13px;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:.2s}
.pp-cta:hover{background:var(--acc);color:var(--ink)}
.pp-burger{display:none;width:var(--hh);flex:none;border-left:1px solid var(--line);background:none;cursor:pointer}
.pp-burger i{display:block;width:20px;height:2px;background:var(--fg);margin:4px auto}
.pp-mnav{display:none;position:fixed;inset:var(--hh) 0 0;background:var(--bg);z-index:59;flex-direction:column;overflow-y:auto}
.pp-mnav.open{display:flex}
.pp-mnav a{font-size:26px;font-weight:800;letter-spacing:-.03em;padding:18px 24px;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}

/* pasek katalogu pod menu (w miejscu paska ze zleceniami na pomocniczy.pl) */
.pp-sub{position:fixed;top:var(--hh);left:0;right:0;z-index:55;height:40px;background:var(--bg);border-bottom:1px solid var(--line);display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:none}
.pp-sub::-webkit-scrollbar{display:none}
.pp-sub .k{display:flex;align-items:center;padding:0 28px;border-right:1px solid var(--line);font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--acc);white-space:nowrap}
.pp-sub a{display:flex;align-items:center;padding:0 28px;border-right:1px solid var(--line);font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text);text-decoration:none;white-space:nowrap;transition:background .2s}
.pp-sub a:hover,.pp-sub a.on{background:var(--bg2)}
.pp-sub a.on{color:var(--acc)}

/* ===== układ: panel kategorii ===== */
.shell{grid-template-columns:272px minmax(0,1fr)}
.side{top:calc(var(--hh) + var(--sub))!important;height:calc(100vh - var(--hh) - var(--sub))!important;background:var(--bg)!important;border-right:1px solid var(--line)!important;padding:22px 18px}
.side a{color:var(--navc)}
.side .logo{display:none}
.side-head{display:none}
.side-search input{background:var(--input-bg);color:var(--text);border:1px solid var(--line2);border-radius:0;font-family:var(--sans)}
.side-search button{background:var(--fg);color:var(--ink);border-radius:0;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.side-add{background:var(--fg)!important;color:var(--ink)!important;border-radius:0!important;font-family:var(--mono);font-weight:500;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase}
.side-add:hover{background:var(--acc)!important}
.side-h{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--muted);font-weight:400}
.side-cats a{border-radius:0;color:var(--navc);border-left:2px solid transparent}
.side-cats a:hover{background:var(--bg2);border-left-color:var(--acc);color:var(--text)}
.side-cats em{background:var(--tint,var(--bg2));color:var(--muted);font-family:var(--mono);border-radius:0}
.side-tools{border-top:1px solid var(--line)}
.side .fs-switch button,.side .theme-toggle{background:var(--bg2);color:var(--text);border-radius:0;border:1px solid var(--line)}
.side .fs-switch button[aria-pressed=true]{background:var(--acc);color:var(--ink)}
main#main{max-width:1100px}

/* ===== treść ===== */
.intro{border-bottom:1px solid var(--line)}
.intro h1{font-size:clamp(34px,5vw,60px);line-height:1.02}
.intro p{color:var(--muted)}
.stats{border-color:var(--line);background:var(--card)}
.stats div{border-color:var(--line)}
.stats dt{font-family:var(--sans);font-weight:800;color:var(--acc)}
.stats dd{font-family:var(--mono);letter-spacing:.14em}
.block>h2{font-family:var(--mono);font-weight:400;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.entry-card{border-color:var(--line)!important}
.entry-card h3{font-family:var(--sans);font-weight:700}
.entry-card h3 a:hover{color:var(--acc)}
.entry-card .host{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--acc)}
.entry-card .media,.entry-card .media img,.entry-card .media-initial,.entry-card .media-icon{border-radius:0}
.more-row a{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc)}

/* przyciski */
.btn-flat,.btn-pill,.btn-pill.solid,.cta-band .btn-pill{border-radius:0!important;box-shadow:none!important;font-family:var(--mono)!important;font-size:12.5px!important;letter-spacing:.18em!important;text-transform:uppercase;font-weight:500!important;background:var(--fg)!important;color:var(--ink)!important;border:1px solid var(--fg)!important}
.btn-flat:hover,.btn-pill:hover,.cta-band .btn-pill:hover{background:var(--acc)!important;border-color:var(--acc)!important;transform:none}
.btn-flat.ghost,.btn-pill.ghost,.btn-pill.ghost-dark,.cta-band .btn-pill.ghost{background:transparent!important;color:var(--text)!important;border:1px solid var(--line2)!important}
.btn-flat.ghost:hover,.btn-pill.ghost:hover,.btn-pill.ghost-dark:hover{border-color:var(--acc)!important;color:var(--acc)!important;background:transparent!important}
.cta-band{background:var(--bg2)!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 0!important;padding:34px clamp(18px,4vw,56px)!important}
.cta-band h2{font-size:clamp(24px,3vw,34px)}
.cats a.active,.tabs-row a.active,.tabs a.active,.pager .current,.steps li::before,.city-bubble span,.city-list em{background:var(--acc)!important;color:var(--ink)!important}
.alert{border-radius:0}

/* formularze i karty z style.css */
input,select,textarea{font-family:var(--sans);color:var(--text);background:var(--input-bg);border-color:var(--line2);border-radius:0}
input:focus,select:focus,textarea:focus{outline:2px solid var(--acc);outline-offset:0;border-color:var(--acc)}
.card,.form,.box,.panel,.pill,.badge,.tag,.chip,.cats a,.tabs a,.tabs-row a,.pager a,.pager span{border-radius:0}
.card,.box{background:var(--card);border-color:var(--line);box-shadow:none}
.form label,.form legend{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase}
.form label.switch input:checked{background:var(--acc)}

/* ===== stopka – ta sama siatka co na pomocniczy.pl ===== */
.site-foot{background:var(--bg)!important;color:var(--muted)!important;padding:0!important;border-top:1px solid var(--line);font-family:var(--sans);margin-top:0}
.pp-fin{margin:0 144px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.pp-fgrid{display:grid;grid-template-columns:1.5fr repeat(3,1fr)}
.pp-fgrid>div{padding:50px 40px;border-right:1px solid var(--line)}
.pp-fgrid>div:first-child{padding-left:72px}
.pp-fgrid>div:last-child{border:0}
.pp-fgrid h5{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:400;margin:0 0 18px}
.pp-fgrid a{display:block;padding:5px 0;margin:0;color:var(--navc);text-decoration:none;transition:.15s;font-size:16px}
.pp-fgrid a:hover{color:var(--fg);transform:translateX(4px)}
.pp-fgrid p{max-width:320px;color:var(--muted);margin:0;font-size:16px}
.pp-flogo{display:inline-flex!important;align-items:center;gap:12px;font-weight:800;font-size:22px;letter-spacing:-.02em;margin-bottom:18px;color:var(--text)!important;padding:0!important}
.pp-flogo:hover{transform:none!important}
.pp-huge{font-size:clamp(56px,10.4vw,196px);font-weight:800;letter-spacing:-.05em;line-height:.85;padding:50px 72px 30px;border-top:1px solid var(--line);white-space:nowrap;overflow:hidden;color:var(--text)}
.pp-huge em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--text)}
.site-foot .foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:22px 72px!important;border:0!important;border-top:1px solid var(--line)!important;color:var(--muted)!important;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;max-width:none!important;margin:0!important}
.foot-links{display:none}

/* ===== telefon / wąskie ekrany (te same progi co na pomocniczy.pl) ===== */
@media(max-width:1600px){.pp-nav{padding:0 12px;gap:2px}.pp-nav a{padding:8px 9px;font-size:12px;letter-spacing:.16em}.pp-cell.zal{display:none}.pp-cell{padding:0 22px;font-size:12px}.pp-cta{padding:0 26px;font-size:12px}}
@media(max-width:1400px){.pp-fin{margin:0 56px}}
@media(max-width:1380px){.pp-cell{display:none}}
@media(max-width:1180px){
  .pp-nav{display:none}
  .pp-burger{display:block}
  .pp-sp{flex:1}
}
@media(max-width:980px){
  .shell{display:block}
  .side{position:static!important;height:auto!important;border-right:0!important;border-bottom:1px solid var(--line)!important;padding:12px 16px}
  .side-head{display:flex;justify-content:space-between;align-items:center}
  .side .menu-btn{display:block;color:var(--text);width:40px;height:40px}
}
@media(max-width:860px){
  :root{--hh:60px}
  .pp-fin{margin:0;border:0}
  .pp-logo{padding:0 10px;font-size:18px;gap:7px}
  .pp-logo .worker{width:32px;height:32px}
  .pp-cta{padding:0 12px;font-size:10px;letter-spacing:.08em}
  .pp-theme{width:46px}
  .pp-burger{width:50px}
  .pp-fgrid{grid-template-columns:1fr}
  .pp-fgrid>div,.pp-fgrid>div:first-child{padding:36px 24px;border-right:0;border-bottom:1px solid var(--line)}
  .pp-huge{padding-left:24px;padding-right:24px}
  .site-foot .foot-bottom{padding-left:24px!important;padding-right:24px!important}
  .pp-sub .k{padding:0 14px}.pp-sub a{padding:0 16px}
}

/* ===== przyciski, oznaczenia, drobiazgi ===== */
button:not(.pp-theme):not(.pp-burger):not(.menu-btn):not(.theme-toggle):not([data-fs]):not(.sch-btn):not(.x):not(.secondary):not(.danger){
  background:var(--fg);color:var(--ink);border:1px solid var(--fg);border-radius:0;box-shadow:none;
  font-family:var(--mono);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
button:not(.pp-theme):not(.pp-burger):not(.menu-btn):not(.theme-toggle):not([data-fs]):not(.sch-btn):not(.x):not(.secondary):not(.danger):hover{background:var(--acc);border-color:var(--acc);transform:none}
button.secondary{background:transparent;color:var(--text);border:1px solid var(--line2);border-radius:0;box-shadow:none}
button.danger{border-radius:0}
.pp-theme{background:none!important;color:var(--text)!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
.pp-theme:hover{background:var(--bg2)!important}
.pp-burger{background:none!important;border:0!important;border-left:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
.badge{border-radius:0;font-family:var(--mono);font-size:.68rem;font-weight:500;letter-spacing:.16em;padding:3px 10px;background:transparent;color:var(--navc);border:1px solid var(--line2)}
.badge-site,.badge-article,.badge-company{background:transparent;color:var(--navc)}
.badge-featured,.badge-verified{background:transparent;color:var(--acc);border-color:var(--acc)}
.pill{border-radius:0;font-family:var(--mono);font-weight:500;letter-spacing:.1em}
.lr-when{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lr-when.fresh{background:transparent!important;color:var(--acc)!important;border:1px solid var(--acc);padding:0 8px;font-weight:500}
.ssl-ok{color:var(--acc)}
.rating-mini{color:var(--acc);font-family:var(--mono)}
.entry-card .lr-visit,.lr-visit{background:var(--bg2);color:var(--text);border:1px solid var(--line2);border-radius:0;font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
.lr-h:hover .lr-visit{background:var(--acc);color:var(--ink);border-color:var(--acc)}
.side-search select{background:var(--input-bg);color:var(--text);border:1px solid var(--line2);border-radius:0;font-family:var(--sans)}
.site-foot .online-now{color:var(--muted)}
.site-foot .online-dot{background:var(--acc)}

.pp-sub a.fach{display:none}
@media(max-width:1380px){.pp-sub a.fach{display:flex}}


/* ===== linijka przewijania po prawej (jak na pomocniczy.pl) ===== */
body{padding-right:var(--rw)}
.ruler{position:fixed;top:var(--hh);right:0;bottom:0;width:var(--rw);z-index:58;border-left:1px solid var(--line);background:var(--bg);cursor:ns-resize;user-select:none;touch-action:none}
.scale{position:absolute;top:18px;bottom:18px;left:0;right:0}
.thumb{position:absolute;left:0;right:0;background:var(--tint);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);transition:background .2s}
.ruler:hover .thumb,.ruler.drag .thumb{background:var(--tint2)}
.needle{position:absolute;left:0;right:0;height:2px;background:var(--fg);box-shadow:0 0 12px rgba(255,255,255,.5)}
:root[data-theme="light"] .needle{box-shadow:none}
.needle b{position:absolute;right:calc(100% + 8px);top:-9px;font-family:var(--mono);font-size:10.5px;font-weight:400;color:var(--ink);background:var(--fg);padding:1px 6px;opacity:0;transition:opacity .2s;letter-spacing:.05em;white-space:nowrap}
.ruler:hover .needle b,.ruler.drag .needle b{opacity:1}
.tick{position:absolute;right:0;height:1px;width:12px;background:var(--line2)}
.tick.m{width:28px;background:var(--tickm)}
.tick span{position:absolute;right:calc(100% + 10px);top:-8px;font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.04em;line-height:16px}
.tick.hot{background:var(--fg)} .tick.hot span{color:var(--fg)}
.pp-sub{right:var(--rw)}
@media(max-width:860px){.ruler{display:none}body{padding-right:0}.pp-sub{right:0}}

/* ===== hero ze zdjęciem ekipy na stronie głównej katalogu ===== */
@keyframes ppfloat{50%{transform:translateY(-6px)}}
.hero-cat{padding-bottom:0!important}
.hero-cat .hero-text{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:end;padding-bottom:30px}
.hero-cat h1{font-size:clamp(40px,5vw,84px);line-height:1;margin:0}
.hero-cat .lead{margin:0;color:var(--muted);font-size:18px;max-width:none}
.hero-cat .hero-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-art{position:relative;padding:10px 40px 0;overflow:hidden;background:radial-gradient(ellipse 60% 70% at 50% 85%,rgba(214,255,61,.09),transparent 70%)}
:root[data-theme="light"] .hero-art{background:radial-gradient(ellipse 60% 70% at 50% 85%,rgba(95,143,0,.12),transparent 70%)}
.hero-art img{display:block;width:100%;height:auto;position:relative;z-index:1;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.hero-art::after{content:"";position:absolute;left:0;right:0;bottom:0;height:38%;z-index:2;pointer-events:none;background:linear-gradient(180deg,transparent,var(--bg) 88%)}
.hero-word{position:absolute;left:0;right:0;bottom:-.06em;z-index:3;text-align:center;font-weight:800;font-size:clamp(40px,8vw,150px);letter-spacing:-.055em;line-height:.9;color:var(--fg);white-space:nowrap;pointer-events:none;text-shadow:0 10px 40px rgba(0,0,0,.35)}
:root[data-theme="light"] .hero-word{text-shadow:none}
.hero-word em.s{font-weight:400;color:var(--acc);letter-spacing:-.02em}
.hero-art .tag{position:absolute;z-index:4;background:var(--bg);border:1px solid var(--line2);padding:10px 14px;display:flex;flex-direction:column;gap:2px;animation:ppfloat 5s ease-in-out infinite}
.hero-art .tag .mono{font-size:9.5px;color:var(--muted)}
.hero-art .tag b{font-size:17px;font-weight:700}
.hero-art .t1{top:4px;left:40px}.hero-art .t1 b{color:var(--acc)}
.hero-art .t2{top:4px;right:40px;animation-delay:-1.5s}
.hero-cat .stats{margin-top:0;width:100%;border-left:0;border-right:0;border-bottom:0}
@media(max-width:860px){.hero-cat .hero-text{grid-template-columns:1fr;gap:20px}.hero-art{padding:0 8px}.hero-art .tag{display:none}}
@media(prefers-reduced-motion:reduce){.hero-art .tag{animation:none}}
