/* sign-tools.css v1-0 — extras on top of taskframer-base.css */
.st-nav a { font-size:0.78rem; color:var(--text-muted); text-decoration:none; margin-left:1rem; }
.st-nav a:hover { color:var(--accent); }
.st-row { display:grid; grid-template-columns:1fr 1fr; gap:0.8rem; margin-bottom:0.9rem; }
@media (max-width:520px){ .st-row { grid-template-columns:1fr; } }
.st-results { display:grid; grid-template-columns:repeat(2,1fr); gap:0.65rem; margin-top:1rem; padding-top:1rem; border-top:1px solid var(--border); }
@media (max-width:480px){ .st-results { grid-template-columns:1fr; } }
.st-block { padding:0.75rem 0.85rem; border:1px solid var(--border); background:#fcfcfc; }
.st-block.primary { border-color:rgba(37,99,235,0.3); background:var(--accent-soft); }
.st-block.wide { grid-column:1 / -1; }
.st-block-label { font-size:0.7rem; text-transform:uppercase; letter-spacing:0.14em; color:var(--text-muted); margin-bottom:0.3rem; }
.st-block-value { font-size:1.8rem; font-weight:700; letter-spacing:-0.02em; line-height:1.05; margin-bottom:0.2rem; }
.st-block-note { font-size:0.74rem; color:var(--text-muted); line-height:1.45; }
.st-verdict { padding:0.8rem 0.9rem; border:1px solid; font-weight:700; font-size:1rem; }
.st-verdict small { display:block; font-weight:400; font-size:0.78rem; margin-top:0.25rem; }
.st-good { background:#ecfdf3; border-color:#86efac; color:#166534; }
.st-ok   { background:#fffbeb; border-color:#fcd34d; color:#92400e; }
.st-bad  { background:#fef2f2; border-color:#fca5a5; color:#991b1b; }
.st-cta { margin-top:1.1rem; padding:1rem; border:1px solid var(--border); background:var(--bg-alt); }
.st-cta-label { font-size:0.65rem; text-transform:uppercase; letter-spacing:0.15em; color:var(--accent); margin-bottom:0.3rem; }
.st-cta p { font-size:0.82rem; color:var(--text-muted); margin:0 0 0.7rem; line-height:1.5; }
.st-cta-btn { display:inline-block; text-decoration:none; }
.st-table { width:100%; border-collapse:collapse; font-size:0.8rem; }
.st-table th, .st-table td { padding:0.35rem 0.4rem; border-bottom:1px solid var(--border); text-align:left; }
.st-table th { font-size:0.68rem; text-transform:uppercase; letter-spacing:0.1em; color:var(--text-muted); font-weight:600; }
.st-article { max-width:760px; margin:2rem auto 0; font-size:0.92rem; line-height:1.7; color:var(--text); }
.st-article h2 { font-size:1.15rem; margin:1.6rem 0 0.5rem; }
.st-article h3 { font-size:0.98rem; margin:1.1rem 0 0.3rem; }
.st-article p, .st-article li { color:var(--text-muted); }
.st-drop { display:block; border:2px dashed var(--border); padding:1.6rem 1rem; text-align:center; cursor:pointer; background:var(--bg-alt); transition:border-color .15s; }
.st-drop.drag, .st-drop:hover { border-color:var(--accent); }
.st-drop strong { display:block; font-size:0.95rem; margin-bottom:0.25rem; }
.st-drop span { font-size:0.76rem; color:var(--text-muted); }
.st-preview { margin-top:0.9rem; background:repeating-conic-gradient(#eee 0 25%, #fff 0 50%) 0 0/16px 16px; border:1px solid var(--border); overflow:hidden; display:flex; align-items:center; justify-content:center; }
.st-preview img { width:100%; height:100%; object-fit:cover; display:block; }
.st-preview-cap { font-size:0.72rem; color:var(--text-muted); margin-top:0.3rem; }
.st-hidden { display:none !important; }
.st-hub { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1rem; margin-top:1.2rem; }
.st-hub a { display:block; padding:1.1rem; border:1px solid var(--border); background:var(--bg-alt); text-decoration:none; color:var(--text); }
.st-hub a:hover { border-color:var(--accent); }
.st-hub h2 { font-size:1rem; margin:0 0 0.35rem; }
.st-hub p { font-size:0.82rem; color:var(--text-muted); margin:0; line-height:1.5; }
[data-theme="dark"] .st-block { background:#252836; }
[data-theme="dark"] .st-good { background:#0f2a1a; color:#86efac; }
[data-theme="dark"] .st-ok   { background:#2a2210; color:#fcd34d; }
[data-theme="dark"] .st-bad  { background:#2a1212; color:#fca5a5; }
