:root{--color-primary:#1a73e8;--color-primary-light:#1a73e81a;--color-on-surface:#0d0d0d;--color-on-surface-muted:#514b48;--color-surface:#fff;--color-surface-container:#fff;--color-bg:#f5f4f4;--color-border:#00000014;--color-shadow:#0000000a;--radius-card:30px;--radius-pill:100px;--radius-bar:100px;--bar-padding-y:.75rem;--bar-padding-x:1.25rem;--bar-min-height:3rem;--bar-font-size:.82rem;--easing:cubic-bezier(.2, 0, 0, 1)}@media (prefers-color-scheme:dark){:root{--color-on-surface:#d1d5db;--color-on-surface-muted:#9ca3af;--color-surface:#1e1f26;--color-surface-container:#25262e;--color-bg:#16171d;--color-border:#ffffff1a;--color-shadow:#0003}}*{box-sizing:border-box}body{min-height:100vh;color:var(--color-on-surface);background:var(--color-bg);margin:0;padding:clamp(1rem,3vw,2rem);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;position:relative;overflow-x:hidden}img,svg,video,canvas,iframe{max-width:100%;height:auto}.skip-link{z-index:999;color:#fff;border-radius:var(--radius-pill);background:#1a73e8;padding:.55rem .8rem;font-weight:700;text-decoration:none;position:absolute;top:.75rem;left:-999px}.skip-link:focus-visible{left:.75rem}:focus-visible{outline-offset:2px;border-radius:4px;outline:3px solid #1a73e8}.bg-orb{z-index:-1;filter:blur(100px);opacity:.25;animation:float 14s var(--easing) infinite alternate;border-radius:999px;position:fixed}.orb-1{background:#1a73e8;width:24rem;height:24rem;top:-8rem;left:-7rem}.orb-2{background:#8ab4f8;width:28rem;height:28rem;bottom:-10rem;right:-8rem}.orb-3{opacity:.15;background:#1a73e8;width:21rem;height:21rem;top:42%;left:28%}@keyframes float{0%{transform:translate(0)scale(1)}to{transform:translate(12px,12px)scale(1.04)}}.layout{gap:1.5rem;width:min(960px,100%);margin:0 auto;display:grid}.md3-surface{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 1px 3px var(--color-shadow)}.hero{border-radius:var(--radius-bar);padding:var(--bar-padding-y) var(--bar-padding-x);min-height:var(--bar-min-height);font-size:var(--bar-font-size);justify-content:center;align-items:center;display:flex}.hero h1{letter-spacing:-.01em;text-align:center;overflow-wrap:anywhere;margin:0;font-size:1.1em;font-weight:600;line-height:1.25}.hero p{opacity:.7;max-width:68ch;margin:.8rem 0 0}.catalog{gap:.8rem;display:grid}.catalog h2{letter-spacing:.08em;text-transform:uppercase;color:var(--color-on-surface-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;font-size:.75rem;font-weight:500;line-height:1.3;display:flex}.status-dot{border-radius:50%;width:.6rem;height:.6rem;animation:1.8s infinite pulse;display:inline-block;box-shadow:0 0 #0003}.status-dot.restricted{background:#f43f5e}.status-dot.open{background:#10b981}@keyframes pulse{0%{box-shadow:0 0 #f43f5e61}to{box-shadow:0 0 0 8px #f43f5e00}}.card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.card{border-radius:var(--radius-card);min-height:196px;color:inherit;border:1px solid var(--color-border);background:var(--color-surface-container);-webkit-tap-highlight-color:#1a73e81f;touch-action:manipulation;gap:.7rem;padding:1.25rem;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid;position:relative;overflow:hidden}.card:hover,.card:focus-visible{border-color:#1a73e840;outline:none;transform:translateY(-3px);box-shadow:0 4px 16px #00000014}.card:focus-visible{outline-offset:2px;outline:3px solid #1a73e8}.card-icon{background:#1a73e814;border-radius:14px;flex-shrink:0;place-items:center;width:2.75rem;height:2.75rem;font-size:1.35rem;transition:transform .15s;display:grid}.card:hover .card-icon,.card:focus-visible .card-icon{transform:scale(1.06)}.card-title{letter-spacing:-.01em;margin:0;font-size:.95rem;font-weight:700}.card-desc{color:var(--color-on-surface-muted);margin:0;font-size:.85rem;line-height:1.5}.card-badge{border-radius:var(--radius-pill);letter-spacing:.06em;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;width:fit-content;max-width:100%;margin-top:auto;padding:.25rem .6rem;font-size:.7rem;font-weight:600;display:inline-flex}.card[data-level=restricted] .card-badge{color:#be123c;background:#f43f5e1a}.card[data-level=open] .card-badge{color:#047857;background:#10b9811a}.app-footer{border-radius:var(--radius-bar);width:min(960px,100%);padding:var(--bar-padding-y) var(--bar-padding-x);min-height:var(--bar-min-height);font-size:var(--bar-font-size);color:var(--color-on-surface-muted);flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.6rem;margin:1rem auto 0;display:flex}.app-footer p{white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.app-version{letter-spacing:.08em;border-radius:var(--radius-pill);border:1px solid var(--color-border);padding:.2rem .55rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem}.noscript-fallback{border-radius:var(--radius-card);padding:1rem}.noscript-fallback p{margin:0}.noscript-fallback ul{gap:.2rem;margin:.25rem 0 0;padding-left:1rem;display:grid}.noscript-fallback a{color:var(--color-primary);font-weight:600}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=720px){:root{--bar-padding-y:.7rem;--bar-padding-x:1rem;--bar-min-height:2.75rem}body{padding:.75rem}.layout{gap:1rem}.hero{padding:var(--bar-padding-y) var(--bar-padding-x);min-height:var(--bar-min-height)}.hero h1{line-height:1.25}.catalog h2{letter-spacing:.06em;font-size:.7rem}.card-grid{grid-template-columns:minmax(0,1fr);gap:.8rem;width:100%}.card{width:100%;min-width:0;max-width:100%;min-height:44px;padding:1rem}.card-title,.card-desc{overflow-wrap:anywhere}.app-footer{width:100%;padding:var(--bar-padding-y) var(--bar-padding-x);min-height:var(--bar-min-height);flex-direction:row;justify-content:space-between;align-items:center;gap:.45rem}.app-footer p{min-width:0}.app-version{flex-shrink:0}}@media (width<=420px){:root{--bar-padding-y:.65rem;--bar-padding-x:.85rem;--bar-min-height:2.6rem}.hero{padding:var(--bar-padding-y) var(--bar-padding-x);min-height:var(--bar-min-height)}.card-title{font-size:.92rem}.card-desc{font-size:.82rem}.app-version{letter-spacing:.06em;font-size:.7rem}}@media (width<=360px){body{padding:.6rem}.layout{gap:.85rem}.card{border-radius:20px;gap:.55rem;padding:.85rem}.card-icon{border-radius:10px;width:2.4rem;height:2.4rem;font-size:1.15rem}.card-title{font-size:.88rem}.card-desc{font-size:.78rem}.card-badge{padding:.2rem .45rem;font-size:.64rem}}
