.sheet-app { margin-top: 1.2rem; }
.sheet-state { color:#6b7280; font-style:italic; margin:.5rem 0 1rem; }
.sheet-grid { display:grid; gap:1rem; }
.sheet-card { background:#fff; border:1px solid #e5e7eb; border-radius:14px; padding:1rem 1.05rem; box-shadow:0 6px 18px rgba(17,24,39,.05); }
.sheet-card h3 { margin:0; font-size:1.08rem; line-height:1.35; }
.sheet-card p { margin:.45rem 0 0; line-height:1.55; }
.sheet-meta { color:#4b5563; font-size:.92rem; }
.sheet-chip { display:inline-flex; align-items:center; border:1px solid #d1d5db; border-radius:999px; padding:.15rem .55rem; font-size:.78rem; margin:0 .35rem .35rem 0; background:#f9fafb; color:#374151; }
.sheet-section { margin:1.6rem 0 0; }
.sheet-section > h2 { margin-bottom:.8rem; font-size:1.12rem; letter-spacing:.03em; text-transform:uppercase; color:#374151; border-left:4px solid #9ca3af; padding-left:.6rem; }
.sheet-links { display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.7rem; }
.sheet-links a { display:inline-flex; border:1px solid #d1d5db; border-radius:999px; padding:.2rem .62rem; font-size:.82rem; text-decoration:none; }
.sheet-kv { margin:.4rem 0 0; display:grid; grid-template-columns:minmax(90px,auto) 1fr; gap:.25rem .65rem; }
.sheet-kv dt { font-weight:600; }
.sheet-kv dd { margin:0; }
@media (max-width:640px) { .sheet-kv { grid-template-columns:1fr; gap:.1rem; } }