  :root { --pf-accent: var(--pf-orange); --pf-accent-tint: var(--pf-orange-tint); }
  html { scroll-behavior: smooth; }
  body { background: var(--surface-page); }
  a { color: var(--pf-orange); }
  a:hover { color: var(--pf-red); }
  a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--pf-orange); outline-offset: 3px; border-radius: 4px; }
  .cs-wrap { position:relative; }
  .cs-btn { display:flex; align-items:center; justify-content:space-between; gap:0.75rem; text-align:left; cursor:pointer; }
  .cs-btn.cs-placeholder { color:var(--text-muted); }
  .cs-caret { display:inline-flex; color:var(--pf-orange); transition:transform var(--dur-base) var(--ease-out); flex:none; }
  .cs-caret--open { transform:rotate(180deg); }
  .cs-panel { position:absolute; z-index:40; top:calc(100% + 0.45rem); left:0; right:0; margin:0; padding:0.4rem; list-style:none; background:var(--surface-card); border:1.5px solid var(--border-subtle); border-radius:var(--radius-lg); box-shadow:0 18px 44px rgba(21,19,26,0.16); max-height:16rem; overflow-y:auto; }
  .cs-opt { padding:0.72rem 1rem; border-radius:var(--radius-pill); font-family:var(--font-body); font-size:var(--fs-body); color:var(--text-strong); cursor:pointer; transition:background var(--dur-fast, var(--dur-base)) var(--ease-out); }
  .cs-opt:hover, .cs-opt--active { background:var(--pf-orange-tint); }
  .kf-label { display:block; color:var(--pf-orange); margin-bottom:0.5rem; }
  .kf-hint { font-family:var(--font-body); font-size:var(--fs-caption); color:var(--text-muted); line-height:1.5; margin-top:0.4rem; }
  .kf-err { display:flex; align-items:flex-start; gap:0.4rem; font-family:var(--font-body); font-size:var(--fs-caption); font-weight:600; color:var(--pf-red); line-height:1.45; margin-top:0.45rem; }
  .kf-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-5); }
  @media (max-width:720px) { .kf-grid2 { grid-template-columns:1fr; } }
  @keyframes kf-rot { to { transform:rotate(360deg); } }
  .kf-direct-link { display:inline-flex; align-items:center; gap:0.6rem; min-height:44px; font-family:var(--font-body); font-size:var(--fs-body); font-weight:600; color:var(--text-strong); text-decoration:none; }
  .kf-direct-link:hover { color:var(--pf-orange); }
  @media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } }
