button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:var(--radius-pill);padding:0 var(--space-5);font-weight:var(--fw-semibold);cursor:pointer;text-align:center;text-decoration:none;transition:transform var(--dur-fast) var(--ease-soft),opacity var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft),filter var(--dur-fast) var(--ease-soft)}
.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}
.btn:hover{filter:saturate(1.04) brightness(1.01);box-shadow:var(--shadow-md)}
.btn--primary{width:100%;height:56px;background:linear-gradient(90deg,var(--accent-orange),#FFA570,var(--accent-orange));background-size:200% 100%;color:var(--text-on-dark);font-size:17px;box-shadow:0 12px 30px var(--glow-warm);border:none}
.btn--primary:not(:disabled){animation:cta-glow 3s linear infinite}
.btn--primary:hover{box-shadow:0 16px 40px rgba(255,138,76,.38);transform:translateY(-1px)}
.btn--secondary{background:var(--bg-surface);color:var(--accent-orange);border:1.5px solid var(--accent-orange);box-shadow:0 4px 12px rgba(255,138,76,.12)}
.btn--secondary:hover{background:var(--accent-orange);color:var(--text-on-dark);box-shadow:0 8px 20px rgba(255,138,76,.24)}
.btn--text{background:transparent;color:var(--accent-orange);padding:0;min-height:32px}
.chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;border-radius:var(--radius-pill);padding:var(--space-2) var(--space-3);background:var(--accent-mint);color:var(--text-primary);font-size:var(--fs-small);font-weight:var(--fw-medium)}
.chip--outline{background:var(--bg-surface);border:1px solid var(--border-soft)}.chip button{background:transparent;color:inherit;min-width:24px;min-height:24px}
.card{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}
@keyframes input-active-glow{0%{box-shadow:0 0 0 3px rgba(255,138,76,.25)}50%{box-shadow:0 0 0 6px rgba(255,138,76,.45),0 0 16px rgba(255,138,76,.25)}100%{box-shadow:0 0 0 3px rgba(255,138,76,.25)}}
.input{width:100%;height:56px;border-radius:var(--radius-md);background:var(--bg-surface);border:1.5px solid var(--border-soft);padding:0 var(--space-4);color:var(--text-primary);transition:border-color var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft)}
.input:hover{border-color:rgba(255,138,76,.4);background:#FFF5F0}
.input:focus,.input:focus-visible{outline:none;border-color:var(--accent-orange);background:var(--bg-surface);animation:input-active-glow 2s ease-in-out infinite}
.textarea{width:100%;min-height:72px;border-radius:var(--radius-md);background:var(--bg-surface);border:1.5px solid var(--border-soft);padding:var(--space-3) var(--space-4);resize:vertical}
.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-pill);background:rgba(26,26,26,.06);box-shadow:inset 0 0 0 1px var(--glass-border)}
.tab{min-height:44px;border-radius:var(--radius-pill);background:transparent;color:var(--text-secondary);font-weight:var(--fw-semibold)}
.tab[aria-selected=true]{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}
@supports ((backdrop-filter: blur(18px)) or (-webkit-backdrop-filter: blur(18px))){
  .card,.btn--secondary{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
}
@media (prefers-reduced-motion:reduce){
  .input:focus,.input:focus-visible{animation:none}
}
