:root{--db-bg:#f6f8fb;--db-card:#fff;--db-text:#14213d;--db-muted:#536176;--db-line:#dbe3ee;--db-primary:#315ea8;--db-primary-dark:#203f76;--db-soft:#edf3ff;--db-shadow:0 14px 34px rgba(20,33,61,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--db-bg);color:var(--db-text);font-family:Arial,Helvetica,sans-serif}.database-wrap{width:min(1180px,calc(100% - 36px));margin:0 auto}
.database-hero{padding:58px 0 54px;background:linear-gradient(180deg,#fff 0%,#eef3f9 100%);border-bottom:1px solid var(--db-line)}.database-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:44px;align-items:center}.database-badge{display:inline-flex;padding:8px 12px;border:1px solid #cbd7e8;border-radius:999px;background:#fff;color:var(--db-primary);font-size:13px;font-weight:900}.database-hero h1{max-width:800px;margin:18px 0 14px;font-size:clamp(38px,5vw,58px);line-height:1.06;letter-spacing:-1.3px}.database-lead{max-width:760px;margin:0;color:var(--db-muted);font-size:19px;line-height:1.6}.database-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.database-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border:1px solid transparent;border-radius:11px;text-decoration:none;font-weight:900;transition:.18s}.database-button:hover{transform:translateY(-2px)}.database-button-primary{background:var(--db-primary);color:#fff}.database-button-light{background:#fff;border-color:#bdcbe0;color:var(--db-primary)}
.database-summary-card{display:flex;align-items:center;gap:16px;padding:25px;border:1px solid var(--db-line);border-radius:22px;background:#fff;box-shadow:var(--db-shadow)}.summary-icon{display:grid;width:62px;height:62px;place-items:center;border-radius:18px;background:var(--db-soft);font-size:32px}.database-summary-card strong{display:block;font-size:22px}.database-summary-card span{display:block;margin-top:6px;color:var(--db-muted);font-weight:700}
.database-main{padding:34px 0 72px}.database-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:-3px}.database-stat{padding:18px 14px;text-align:center;border:1px solid var(--db-line);border-radius:18px;background:#fff;box-shadow:var(--db-shadow)}.database-stat strong{display:block;color:var(--db-primary);font-size:30px}.database-stat span{display:block;margin-top:4px;color:var(--db-muted);font-size:14px;font-weight:800}
.database-search-panel{margin:24px 0 30px;padding:21px;border:1px solid var(--db-line);border-radius:20px;background:#fff;box-shadow:var(--db-shadow)}.database-search-panel label{display:block;margin-bottom:11px;font-size:19px;font-weight:900}.database-search-panel input{width:100%;padding:15px 17px;border:1px solid #c5d0df;border-radius:14px;background:#fbfcfe;color:var(--db-text);font-size:17px;outline:none}.database-search-panel input:focus{border-color:var(--db-primary);box-shadow:0 0 0 4px rgba(49,94,168,.12)}.database-search-panel p{margin:10px 0 0;color:var(--db-muted);font-size:14px;line-height:1.5}.search-empty{display:none;margin-top:14px;padding:13px 15px;border-left:5px solid #d39221;border-radius:12px;background:#fff7e8;color:#744d12;font-weight:800}
.database-heading-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.database-eyebrow{margin:0 0 7px;color:var(--db-primary);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.database-heading-row h2{margin:0;font-size:32px}.database-total{margin:0;color:var(--db-muted);font-weight:800}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.category-tile{display:grid;grid-template-columns:54px 1fr;gap:14px;min-height:112px;padding:17px 18px;border:1px solid var(--db-line);border-radius:19px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 5px 16px rgba(31,45,75,.045);transition:.17s}.category-tile:hover{transform:translateY(-3px);border-color:#aac0df;box-shadow:0 14px 30px rgba(31,45,75,.11)}.category-tile[hidden]{display:none}.category-icon{display:grid;width:50px;height:50px;place-items:center;border-radius:15px;background:var(--db-soft);color:var(--db-primary);font-size:17px;font-weight:900;text-align:center}.category-content{display:flex;min-width:0;flex-direction:column;justify-content:space-between}.category-tile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.category-tile h3{margin:2px 0 0;font-size:19px;line-height:1.25}.category-arrow{color:var(--db-primary);font-size:22px;font-weight:900}.category-tile-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding-top:10px;border-top:1px solid #edf0f5;color:var(--db-primary-dark);font-size:13px;font-weight:900}.category-tile-footer small{color:var(--db-muted);font-weight:700}.category-tile-empty{opacity:.72}
.database-bottom-box{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;margin-top:34px;padding:28px 30px;border-radius:24px;background:#263d66;color:#fff}.database-bottom-box h2{margin:0 0 7px;font-size:28px}.database-bottom-box p{margin:0;color:#e2e9f3;line-height:1.5}.database-bottom-box .database-actions{margin:0}.database-bottom-box .database-button-light{border-color:#fff}
@media(max-width:960px){.database-hero-grid{grid-template-columns:1fr}.database-summary-card{max-width:520px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.database-stats{grid-template-columns:repeat(2,1fr)}.database-heading-row{align-items:flex-start;flex-direction:column}.database-bottom-box{grid-template-columns:1fr}.database-bottom-box .database-actions{margin-top:4px}}
@media(max-width:580px){.database-wrap{width:min(100% - 22px,1180px)}.database-hero{padding:42px 0}.database-hero h1{font-size:36px}.database-lead{font-size:17px}.category-grid{grid-template-columns:1fr}.category-tile{min-height:0;grid-template-columns:48px 1fr;padding:15px 16px}.category-icon{width:46px;height:46px;font-size:15px}.database-button{width:100%}.database-bottom-box{padding:24px 20px}}

.database-breadcrumb{display:flex;gap:7px;align-items:center;padding-top:22px;color:#536176;font-size:14px}.database-breadcrumb a{color:#315ea8;text-decoration:none;font-weight:800}.database-breadcrumb strong{color:#14213d}.database-hero{padding:34px 0 32px}.database-hero h1{font-size:clamp(34px,4vw,48px)}.database-main{padding-top:24px}.category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.category-tile{grid-template-columns:42px 1fr;gap:11px;min-height:82px;padding:12px 13px;border-radius:15px}.category-icon{width:40px;height:40px;border-radius:12px;font-size:14px}.category-tile h3{font-size:16px;line-height:1.2}.category-arrow{font-size:18px}.category-tile-footer{margin-top:7px;padding-top:6px;font-size:12px}.category-tile:hover{transform:translateY(-2px)}@media(max-width:1100px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.category-grid{grid-template-columns:1fr}.category-tile{min-height:72px}}

/* v2.1.2: kompaktowy katalog i poprawny breadcrumb */
.database-breadcrumb{display:flex!important;flex-wrap:wrap;gap:8px!important;align-items:center;padding:22px 0 0!important;color:#536176!important;font-size:14px!important}
.database-breadcrumb a{color:#315ea8!important;text-decoration:none!important;font-weight:800!important}
.database-breadcrumb strong{color:#14213d!important}
.database-hero{padding:26px 0 24px!important}
.database-hero h1{margin-top:14px!important;font-size:clamp(32px,3.5vw,46px)!important}
.database-lead{font-size:17px!important;line-height:1.45!important}
.database-actions{margin-top:18px!important}
.database-main{padding-top:20px!important}
.category-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
.category-tile{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto 20px!important;align-items:center!important;gap:10px!important;min-height:64px!important;padding:10px 12px!important;border-radius:14px!important}
.category-icon{width:38px!important;height:38px!important;border-radius:11px!important;font-size:13px!important}
.category-tile h3{margin:0!important;font-size:15px!important;line-height:1.15!important}
.category-count{white-space:nowrap;color:#203f76;font-size:12px;font-weight:900}
.category-arrow{font-size:17px!important}
@media(max-width:1100px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:820px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:580px){.category-grid{grid-template-columns:1fr!important}.category-tile{grid-template-columns:38px minmax(0,1fr) auto 18px!important;min-height:60px!important}}

/* Wyszukiwarka działów — musi być po regule .category-tile{display:grid!important}. */
#category-grid .category-tile[aria-hidden="true"] {
    display: none !important;
}


/* v2.1.3 — długie nazwy działów bez nachodzenia na liczbę zadań */
#category-grid .category-tile {
    grid-template-columns: 38px minmax(0, 1fr) minmax(62px, max-content) 18px !important;
    column-gap: 7px !important;
}
#category-grid .category-tile h3 {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    hyphens: auto !important;
}
#category-grid .category-count {
    position: static !important;
    min-width: 62px !important;
    white-space: nowrap !important;
    text-align: right !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
}
#category-grid .category-arrow {
    position: static !important;
    width: 18px !important;
    text-align: right !important;
}
@media (max-width: 580px) {
    #category-grid .category-tile {
        grid-template-columns: 38px minmax(0, 1fr) minmax(58px, max-content) 18px !important;
    }
}


/* v2.1.4: czytelne kafelki — bez dzielenia wyrazów w przypadkowych miejscach. */
.category-tile {
    grid-template-columns: 38px minmax(0, 1fr) 18px !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
        "icon title arrow"
        "icon count arrow" !important;
    column-gap: 10px !important;
    row-gap: 3px !important;
    min-height: 72px !important;
}
.category-icon { grid-area: icon !important; align-self: center !important; }
.category-tile h3 {
    grid-area: title !important;
    align-self: end !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
.category-count {
    grid-area: count !important;
    align-self: start !important;
    white-space: nowrap !important;
    font-size: 12px !important;
}
.category-arrow { grid-area: arrow !important; align-self: center !important; }
@media(max-width:580px){
    .category-tile {
        grid-template-columns:38px minmax(0,1fr) 18px !important;
        min-height:68px !important;
    }
}

/* v2.1.5: kafelki w jednym poziomym wierszu: ikona | nazwa | liczba zadań | strzałka. */
#category-grid .category-tile {
    grid-template-columns: 38px minmax(0, 1fr) max-content 18px !important;
    grid-template-rows: 1fr !important;
    grid-template-areas: "icon title count arrow" !important;
    align-items: center !important;
    column-gap: 9px !important;
    row-gap: 0 !important;
    min-height: 64px !important;
    padding: 10px 12px !important;
}
#category-grid .category-icon {
    grid-area: icon !important;
    align-self: center !important;
}
#category-grid .category-tile h3 {
    grid-area: title !important;
    align-self: center !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
#category-grid .category-count {
    grid-area: count !important;
    align-self: center !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    text-align: right !important;
    font-size: 11px !important;
    line-height: 1 !important;
}
#category-grid .category-arrow {
    grid-area: arrow !important;
    align-self: center !important;
    width: 18px !important;
    text-align: right !important;
}
@media(max-width:580px){
    #category-grid .category-tile {
        grid-template-columns: 38px minmax(0, 1fr) max-content 18px !important;
        min-height: 60px !important;
    }
    #category-grid .category-tile h3 { font-size: 13px !important; }
    #category-grid .category-count { font-size: 10px !important; }
}

/* v2.1.6: tytuł na całej szerokości, pod nim liczba zadań i strzałka. */
#category-grid .category-tile {
    grid-template-columns: 38px minmax(0, 1fr) 18px !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
        "icon title title"
        "icon count arrow" !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 4px !important;
    min-height: 72px !important;
    padding: 10px 12px !important;
}
#category-grid .category-icon {
    grid-area: icon !important;
    align-self: center !important;
}
#category-grid .category-tile h3 {
    grid-area: title !important;
    align-self: end !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.18 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
#category-grid .category-count {
    grid-area: count !important;
    align-self: start !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    text-align: left !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
}
#category-grid .category-arrow {
    grid-area: arrow !important;
    align-self: start !important;
    justify-self: end !important;
    width: 18px !important;
    text-align: right !important;
}
@media(max-width:580px){
    #category-grid .category-tile {
        grid-template-columns: 38px minmax(0, 1fr) 18px !important;
        min-height: 68px !important;
    }
    #category-grid .category-tile h3 { font-size: 14px !important; }
    #category-grid .category-count { font-size: 11px !important; }
}
