:root{--bg:#0b0c10;--surface:#111218;--text:#eaf0f1;--muted:#b7c3cc;--accent:#7bdff2;--accent-2:#b2f7ef;--danger:#ff6b6b;--success:#51cf66;--shadow:0 6px 20px rgba(0,0,0,.25);}body:not(.theme-dark){--bg:#f7f9fc;--surface:#fff;--text:#101827;--muted:#4b5563;--accent:#2563eb;--accent-2:#93c5fd;--danger:#dc2626;--success:#059669;--shadow:0 6px 18px rgba(0,0,0,.08);}*{box-sizing:border-box;}html,body{height:100%;}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica Neue,Arial,Apple Color Emoji,Segoe UI Emoji;background:var(--bg);color:var(--text);} .skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;} .skip-link:focus{position:static;width:auto;height:auto;padding:.5rem 1rem;background:var(--accent);color:#fff;display:inline-block;} .site-header,.site-footer{padding:1rem clamp(1rem,3vw,2rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--surface);box-shadow:var(--shadow);} .site-header h1,.site-footer p{margin:.25rem 0;} .header-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;} .header-actions nav a{color:var(--text);text-decoration:none;margin-right:.75rem;opacity:.8;} .header-actions nav a:hover{opacity:1;text-decoration:underline;} .container{max-width:960px;margin:1.5rem auto;padding:0 1rem;} .card{background:var(--surface);padding:1.25rem;border-radius:16px;box-shadow:var(--shadow);margin-bottom:1rem;} .muted{color:var(--muted);} .btn{border:0;padding:.6rem 1rem;border-radius:999px;cursor:pointer;background:var(--accent);color:#fff;font-weight:600;} .btn:hover{filter:brightness(1.08);} .btn:active{transform:translateY(1px);} .btn[aria-pressed="true"]{outline:2px solid var(--accent-2);} .btn-secondary{background:transparent;color:var(--text);border:2px solid var(--accent);} .counter{display:grid;grid-template-columns:1fr;justify-items:center;gap:1rem;} #count{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;letter-spacing:.02em;} .btn-row{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;} .faq-list{list-style:none;margin:0;padding:0;} .faq-item{border-top:1px solid rgba(255,255,255,.08);} .faq-item:first-child{border-top:0;} .faq-question{display:block;width:100%;text-align:left;background:none;color:var(--text);border:0;padding:.9rem 0;font-weight:700;cursor:pointer;} .faq-answer{padding:.25rem 0 1rem;color:var(--muted);} .form-field{margin-bottom:1rem;} .form-field.checkbox{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center;} .form-field label{display:block;font-weight:600;margin-bottom:.25rem;} .form-field input{width:100%;padding:.6rem .75rem;border-radius:10px;border:2px solid transparent;background:rgba(0,0,0,.08);color:var(--text);} body:not(.theme-dark) .form-field input{background:rgba(0,0,0,.05);} .form-field input:focus{outline:none;border-color:var(--accent);} .message{display:block;min-height:1.25rem;font-size:.9rem;} .message.error{color:var(--danger);} .message.ok{color:var(--success);} .form-field.checkbox .message{flex-basis:100%;text-align:center;margin-top:.25rem;} .form-actions{display:flex;justify-content:center;} .status{margin-top:.75rem;padding:.75rem 1rem;border-radius:10px;background:rgba(0,0,0,.06);} .site-footer{font-size:.95rem;} [aria-invalid="true"]{border-color:var(--danger)!important;} @media (prefers-reduced-motion:no-preference){.faq-answer[hidden]{display:block;max-height:0;overflow:hidden;transition:max-height .25s ease;} .faq-answer:not([hidden]){max-height:400px;}}