:root{--ink:var(--lb-text);--muted:var(--lb-text-secondary);--accent:var(--lb-text-strong);--line:var(--lb-divider);font-family:var(--lb-font-sans);background:var(--lb-bg);color:var(--ink)}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--accent)}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}input,textarea{display:block;width:100%;border:1px solid var(--lb-border);border-radius:8px;background:var(--lb-bg);color:var(--ink);padding:13px;line-height:1.8}textarea{resize:vertical}p{line-height:1.8;color:var(--muted)}h2{font-size:23px;font-weight:550}h3{font-weight:550}.button{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;color:var(--ink);border:1px solid var(--lb-border);border-radius:8px;background:var(--lb-surface-raised);padding:12px 16px;min-height:44px}.button:hover{border-color:var(--accent)}.button.lime{background:var(--lb-primary-fill);border-color:transparent;box-shadow:var(--lb-primary-shadow);color:var(--lb-primary-text);font-weight:var(--lb-weight-semibold)}.button.lime:hover{background:var(--lb-primary-fill-hover);border-color:transparent}.hint{font-size:var(--lb-text-xs);line-height:1.8}.eyebrow{font-size:var(--lb-text-xs);letter-spacing:2px;color:var(--muted)}.intro{padding:30px 0 16px}.app-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px max(24px,calc((100vw - 1320px)/2));border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:26px;letter-spacing:4px;white-space:nowrap}.brand span{font-size:var(--lb-text-xs);letter-spacing:1px;display:block;color:var(--muted);margin-top:6px}nav{display:flex;gap:10px}nav a{padding:12px;text-decoration:none;border-radius:8px;color:var(--muted)}nav a[aria-current=page]{color:var(--accent);background:var(--lb-surface-raised)}.local-badge{color:var(--muted);font-size:var(--lb-text-xs)}main{max-width:1368px;padding:24px;margin:auto}footer{max-width:1320px;margin:24px auto;padding:24px;border-top:1px solid var(--line);font-size:var(--lb-text-xs);color:var(--muted);display:flex;justify-content:space-between;gap:20px}[hidden]{display:none!important}@media(max-width:600px){.app-header{padding:18px;gap:10px;flex-wrap:wrap}.local-badge{display:none}nav a{padding:10px;font-size:13px}main{padding:16px}.brand{font-size:23px}footer{flex-direction:column}}
