:root{color-scheme:light;--bg: #f4f1ec;--text: #171511;--muted: #615d54;--panel: #fffdf8;--line: #dfd8cc;--accent: #156d64;--accent-dark: #0c4a45;--accent-soft: #d9eee9;--gold: #b87912;--rose: #a9445a;--shadow: 0 18px 50px rgba(29, 25, 18, .1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{min-height:100%;margin:0;color:var(--text)}body:before{position:fixed;inset:0;z-index:-1;content:"";background:linear-gradient(140deg,rgba(21,109,100,.14),transparent 34%),linear-gradient(320deg,rgba(184,121,18,.16),transparent 38%),radial-gradient(circle at 80% 10%,rgba(169,68,90,.12),transparent 32%)}button,input{font:inherit}.shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:22px 0 32px}.intro{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:center;padding:12px 0 14px}.brand-mark{display:grid;width:56px;height:56px;place-items:center;border:1px solid rgba(21,109,100,.22);border-radius:14px;background:linear-gradient(145deg,#156d64,#1f8a7f);box-shadow:var(--shadow);color:#fffdf8;font-size:1.65rem;font-weight:800}.intro-copy{min-width:0}.eyebrow{margin:0 0 5px;color:var(--accent-dark);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h1{max-width:680px;margin:0;font-size:clamp(1.65rem,3vw,2.8rem);line-height:1.05;letter-spacing:0}.summary{max-width:720px;margin:8px 0 0;color:var(--muted);font-size:.95rem;line-height:1.5}.toolbar{display:flex;gap:14px;align-items:center;justify-content:space-between;margin:14px 0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fffdf8d6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.search{display:flex;flex:1;min-width:0;align-items:center;gap:12px}.search svg{flex:0 0 auto;color:var(--muted)}.search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:1rem}.search input::placeholder{color:#8b857a}.result-count{flex:0 0 auto;margin:0;color:var(--muted);font-size:.92rem;font-weight:600}.utility-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.utility-card{display:flex;min-height:230px;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 12px 30px #1d191212}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.utility-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:var(--accent-soft);color:var(--accent-dark);font-weight:800}.utility-audience{min-width:0;overflow:hidden;padding:5px 8px;border:1px solid rgba(184,121,18,.3);border-radius:999px;color:#6f4808;font-size:.72rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.utility-card h2{margin:0;font-size:1.1rem;line-height:1.2}.utility-description{margin:0;color:var(--muted);font-size:.92rem;line-height:1.45}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.tag{padding:4px 7px;border-radius:6px;background:#eee7dc;color:#4f4a42;font-size:.72rem;font-weight:700}.utility-card a{display:inline-flex;width:fit-content;align-items:center;gap:8px;padding:8px 11px;border-radius:8px;background:var(--accent);color:#fff;font-size:.9rem;font-weight:800;text-decoration:none;transition:background-color .16s ease,transform .16s ease}.utility-card a:hover,.utility-card a:focus-visible{background:var(--accent-dark);transform:translateY(-1px)}.empty-state{padding:32px;border:1px dashed var(--line);border-radius:8px;background:#fffdf8b3;text-align:center}.empty-state h2{margin:0 0 8px;font-size:1.25rem}.empty-state p{margin:0;color:var(--muted)}.empty-state code{font-size:.95em}.error{border-color:#a9445a73}@media(max-width:680px){.shell{width:min(100% - 24px,1120px);padding:16px 0 24px}.intro{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:8px 0 10px}.brand-mark{width:44px;height:44px;border-radius:12px;font-size:1.35rem}h1{font-size:1.55rem}.summary{margin-top:6px;font-size:.88rem}.toolbar{align-items:stretch;flex-direction:column;gap:8px;margin:10px 0}.result-count{padding-left:32px}.utility-card{min-height:0}}
