/* Shared tool links and personal notebook. */
.ve-tools{margin:40px 0 64px;padding:clamp(22px,4vw,38px);border:1px solid var(--ve-border);border-radius:24px;background:var(--ve-bg-soft)}
.ve-tools-heading{max-width:680px;margin-bottom:26px}
.ve-tools-heading h2{font-size:clamp(30px,4vw,46px);line-height:1.12;margin:12px 0}
.ve-tools-heading p{color:var(--ve-muted)}
.ve-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ve-tool-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid var(--ve-border);border-radius:16px;background:var(--ve-panel-solid);color:var(--ve-text);text-decoration:none}
.ve-tool-card h3{font-size:25px;line-height:1.15;margin:20px 0 12px}
.ve-tool-card p{font-size:15px;color:var(--ve-muted);margin:0 0 22px}
.ve-tool-card .text-link{margin-top:auto;white-space:normal}
.ve-tool-index{font-size:11px;letter-spacing:.1em;color:var(--ve-cyan)}
.ve-tool-card--featured{border-color:var(--ve-pink);background:linear-gradient(145deg,rgba(244,63,143,.12),var(--ve-panel-solid))}
.ve-tool-card:hover{border-color:var(--ve-cyan)}
.ve-tool-card:focus-visible,.ve-notebook :is(input,select,textarea,button,a):focus-visible{outline:3px solid var(--ve-cyan);outline-offset:4px}
.ve-notebook{margin:32px 0 54px;padding:clamp(20px,4vw,36px);border:1px solid var(--ve-pink);border-radius:24px;background:radial-gradient(ellipse at top right,rgba(244,63,143,.13),transparent 65%),var(--ve-bg-soft)}
.ve-notebook [hidden]{display:none!important}
.ve-notebook h2{font-size:clamp(30px,4vw,42px);margin:12px 0 18px;line-height:1.1}
.ve-notebook h3{font-size:22px;margin:0 0 10px}
.ve-notebook p{font-size:15px}
.ve-notebook .ve-notebook-storage,.ve-notebook .ve-notebook-footnote{font-size:13px;color:var(--ve-muted)}
.ve-notebook-progress{display:grid;gap:9px;margin:26px 0}
.ve-notebook-progress label{font-weight:700}
.ve-notebook-progress progress{width:100%;height:12px;accent-color:var(--ve-pink)}
.ve-notebook-progress progress::-webkit-progress-bar{background:#302538;border-radius:12px}
.ve-notebook-progress progress::-webkit-progress-value{background:var(--ve-pink);border-radius:12px}
.ve-notebook-progress span{font-size:13px;color:var(--ve-muted)}
.ve-notebook-checks{padding:0;margin:28px 0;border:0;min-width:0}
.ve-notebook-checks legend{font-weight:700;font-size:18px;margin-bottom:12px}
.ve-notebook-checks label{display:flex;gap:14px;align-items:flex-start;padding:15px 0;border-bottom:1px solid var(--ve-border);cursor:pointer;font-size:15px;line-height:1.5}
.ve-notebook-checks input{flex:0 0 20px;width:20px;height:20px;margin:2px 0 0;accent-color:var(--ve-pink);cursor:pointer}
.ve-notebook-checks input:checked+span{color:var(--ve-muted)}
.ve-notebook-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ve-notebook-fields>div{min-width:0}
.ve-notebook-field-wide{grid-column:1/-1}
.ve-notebook :is(.ve-notebook-fields,[data-notebook-manual]) label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}
.ve-notebook :is(input[type=text],select,textarea){box-sizing:border-box;width:100%;min-width:0;border:1px solid var(--ve-border-strong);border-radius:12px;background:var(--ve-panel-solid);color:var(--ve-text);font:inherit;font-size:15px;padding:13px 14px;color-scheme:dark}
.ve-notebook input[type=text],.ve-notebook select{min-height:50px}
.ve-notebook textarea{resize:vertical}
.ve-notebook-favorites{margin-top:26px;padding:22px;border:1px solid var(--ve-border);border-radius:14px;background:var(--ve-panel-solid)}
.ve-notebook-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0 16px}
.ve-notebook-actions .button{font-size:13px}
.ve-notebook-reset{border:0;background:transparent;color:var(--ve-muted);font:inherit;font-size:13px;cursor:pointer;min-height:44px;padding:10px}
.ve-notebook-confirm{padding:20px;margin:20px 0;border:1px solid var(--ve-pink);border-radius:14px}
.ve-notebook-confirm button{margin:4px 8px 0 0}
.ve-notebook .ve-notebook-status{color:var(--ve-cyan);font-size:14px}
.ve-related{margin:48px 0}
.ve-related>.guide-results{margin:24px 0}
.ve-related-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:24px}
@media(max-width:850px){.ve-tools-grid{grid-template-columns:1fr}.ve-tool-card{padding:22px}.ve-tool-card h3{margin-top:12px}.ve-tool-card p{margin-bottom:16px}}
@media(max-width:620px){.ve-notebook-fields{grid-template-columns:1fr}.ve-notebook{border-radius:18px}.ve-notebook-actions{align-items:stretch;flex-direction:column}.ve-notebook-actions .button{white-space:normal;text-align:center}.ve-tools{padding:20px}}
