/* Shared hierarchy uses the platform's existing local font and color tokens. */
:root{--hw-font:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--hw-heading-1:clamp(1.5rem,1.25rem + .8vw,2rem);--hw-heading-2:clamp(1.125rem,1.02rem + .35vw,1.375rem);--hw-heading-3:1rem}
h1,.page-head h1,.kp-skin h1,.kp-skin .kp-top h1{font-size:var(--hw-heading-1);line-height:1.2;font-weight:700;letter-spacing:-.025em;overflow-wrap:anywhere}
h2,.kp-skin h2{font-size:var(--hw-heading-2);line-height:1.3;font-weight:700;letter-spacing:-.015em;overflow-wrap:anywhere}
h3,.kp-skin h3{font-size:var(--hw-heading-3);line-height:1.4;font-weight:650;overflow-wrap:anywhere}
button,input,select,textarea{font-family:inherit}
.avatar,.kp-avatar{width:36px;height:36px;min-width:36px;font-size:.8125rem;line-height:1;flex-shrink:0}
.kp-side-user strong{font-size:.875rem;line-height:1.35;overflow-wrap:anywhere}
.kp-side-user .kp-usub{display:block;font-size:.75rem;line-height:1.4;overflow-wrap:anywhere}
.kp-skin .hwp-user-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px}
.kp-skin .hwp-user-card .kp-row-main{min-width:0;grid-column:1;grid-row:1}
.kp-skin .hwp-user-card .kp-row-title{font-size:1rem;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
.kp-skin .hwp-user-card .kp-row-meta{font-size:.8125rem;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
.kp-skin .hwp-user-card .kp-row-side{grid-column:2;grid-row:1;max-width:16rem;justify-content:flex-end;gap:6px}
.kp-skin .hwp-user-card .kp-chip{white-space:normal;line-height:1.4;max-width:100%;overflow-wrap:anywhere}
.kp-skin .hwp-user-card .hw-actions{display:flex;flex-wrap:wrap;gap:8px}
.kp-skin .hwp-user-card .hw-actions .btn{white-space:normal;text-align:left;line-height:1.4;max-width:100%}
.kp-skin .hwp-user-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:20px}
.kp-skin .hwp-user-actions .btn{font-size:.8125rem;line-height:1.4;padding:10px 12px;min-height:42px;white-space:normal;text-align:left;max-width:100%}
.kp-skin .hwp-user-actions .btn-primary{color:var(--kp-accent-ink,#1a2830)}
.kp-skin .hwp-user-filters{background:var(--kp-surface2);border-color:var(--kp-border)}
.kp-skin .hwp-user-card .kp-username{background:var(--kp-surface3);color:var(--kp-ink2);padding:2px 4px;border-radius:4px}
.kp-skin .hwp-user-card[hidden]{display:none!important}
.kp-catalogue-nav{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:16px 0}
.kp-catalogue-nav h2{margin:0;flex:1 1 14rem;min-width:0}
.kp-catalogue-nav a{font-size:.875rem;color:var(--kp-link,var(--hw-info));text-underline-offset:3px}
.kp-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.kp-category-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--kp-border,var(--hw-border));border-radius:var(--kp-radius,12px);background:var(--kp-surface,var(--hw-surface));color:var(--kp-ink,var(--hw-ink));text-decoration:none;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.kp-category-card:hover{border-color:var(--kp-brand,var(--hw-brand));box-shadow:var(--hw-shadow-sm)}
.kp-category-card:focus-visible{outline:3px solid var(--hw-focus-color);outline-offset:3px}
.kp-category-photo{height:180px;display:flex;align-items:center;justify-content:center;background:#fff;padding:16px}
.kp-category-photo img{display:block;max-height:100%;max-width:100%;height:100%;width:100%;object-fit:contain}
.kp-category-label{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1}
.kp-category-label h3{margin:0;font-size:1rem;line-height:1.4;hyphens:auto;overflow-wrap:anywhere}
.kp-category-label span{font-size:.8125rem;color:var(--kp-ink2,var(--hw-muted))}
.kp-category-label .kp-category-open{margin-top:auto;font-weight:650;color:var(--kp-link,var(--hw-info))}
@media(max-width:1000px){.kp-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .kp-skin .hwp-user-card{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px}
 .kp-skin .hwp-user-card .kp-row-side{grid-column:1;grid-row:2;justify-content:flex-start;max-width:none}
 .kp-skin .hwp-user-actions{align-items:flex-start}
 .kp-category-grid{gap:12px}
 .kp-category-photo{height:116px;padding:10px}
 .kp-category-label{padding:12px;gap:6px}
 .kp-category-label h3{font-size:.875rem}
 .kp-category-label span{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){.kp-category-card{transition:none}}

.kp-catalogue-nav a{flex:0 1 auto;max-width:100%;overflow-wrap:anywhere}.kp-skin .hwp-user-actions #hwp-cu-create{flex-direction:column;align-items:flex-start;gap:2px}.hwp-user-action-detail{font-size:.85em;font-weight:500;line-height:1.4}
@media(max-width:600px){.kp-category-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr))}}
.modal [hidden]{display:none!important}
