/* "新增教程" section on the static homepages. Uses each site's own theme variables, with fallbacks. */
.cms-tutorial-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.cms-tutorial { display: grid; gap: 7px; align-content: start; padding: 18px; color: var(--ink, #14221f); text-decoration: none; background: var(--panel-strong, #fff); border: 1px solid var(--line, #dce8e3); border-radius: var(--radius, 8px); }
.cms-tutorial:hover, .cms-tutorial:focus-visible { border-color: var(--green, #0f8a78); }
.cms-tutorial-category { font-size: 12px; font-weight: 700; color: var(--green, #0f8a78); }
.cms-tutorial strong { font-size: 17px; line-height: 1.35; }
.cms-tutorial-summary { font-size: 14px; line-height: 1.6; color: var(--muted, #62736d); }
/* Published titles can be longer than the original hand-written shortcuts. */
.hero .hero-actions a[data-cms-guide] { min-width: 0; white-space: normal; }
.hero .hero-actions a[data-cms-guide] .btn-stack { display: grid; min-width: 0; max-width: 100%; gap: 3px; }
.hero .hero-actions a[data-cms-guide] .btn-stack > * { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.quick-nav a[data-cms-guide] { max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
