@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");*{margin:0;padding:0;box-sizing:border-box}:root{--primary:#ff6b35;--primary-dark:#e85a2a;--bg-dark:#0a0e27;--bg-darker:#060918;--bg-card:hsla(0,0%,100%,.03);--text-primary:#fff;--text-secondary:#a0aec0;--border:hsla(0,0%,100%,.08);--shadow:rgba(0,0,0,.2);--error:#ef4444;--accent-purple:#8b5cf6}[data-theme=light]{--bg-darker:#f8f9fa;--bg-card:#fff;--text-primary:#1a1a1a;--text-secondary:#4a5568;--border:#e2e8f0;--primary:#3b82f6;--success:#10b981;--error:#ef4444;--accent-purple:#8b5cf6}.tool-card{transition:transform .2s ease,border-color .2s ease}.tool-card:hover{transform:translateY(-5px);border-color:var(--primary)}.country-card{transition:transform .2s ease,border-color .2s ease}.country-card:hover{transform:translateY(-3px);border-color:var(--primary);background:hsla(0,0%,100%,.05)}body{font-family:Inter,sans-serif;background:var(--bg-darker);color:var(--text-primary);line-height:1.5;font-size:14px;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,107,53,.1) 0,transparent 60%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.1) 0,transparent 60%);pointer-events:none;z-index:0}.container{max-width:900px;margin:0 auto;padding:1.5rem;position:relative;z-index:1}h1{font-size:2.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem;background:linear-gradient(135deg,var(--text-primary) 0,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}h2{font-size:1.25rem;margin-bottom:1rem}h2,h3{font-weight:600}h3{font-size:1rem;margin-bottom:.5rem}p{color:var(--text-secondary)}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:12px;padding:1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-primary{background:var(--primary);color:#fff;font-weight:600;padding:.75rem 1.5rem;border-radius:8px;border:none;cursor:pointer;transition:all .2s;width:100%;font-size:.95rem}.btn-primary:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.upload-area{border:2px dashed var(--border);border-radius:10px;padding:2rem;text-align:center;transition:all .2s;cursor:pointer;background:hsla(0,0%,100%,.01)}.upload-area.drag-over,.upload-area:hover{border-color:var(--primary);background:rgba(255,107,53,.05)}.option-card{display:flex;align-items:center;gap:1rem;padding:.875rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);cursor:pointer;transition:all .2s}.option-card:hover{border-color:var(--primary);background:rgba(255,107,53,.05)}.option-card.selected{border-color:var(--primary);background:rgba(255,107,53,.1);box-shadow:0 0 0 1px var(--primary)}.grid-cols-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem}.grid-cols-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}@media (max-width:640px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}h1{font-size:2rem}.container{padding:1rem}}.animate-in{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.gradient-text{background:linear-gradient(135deg,var(--primary) 0,#ff8558 50%,var(--accent-purple) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}