@font-face{font-family:Pecita;src:url(/fonts/Pecita.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--font-logo:"Pecita",cursive;--font-heading:"Bitter",serif;--font-body:"Raleway",sans-serif;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3rem;--font-size-6xl:3.5rem;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em}body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--text-primary)}h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5{font-size:var(--font-size-base)}h6{font-size:var(--font-size-sm)}@media (min-width:768px){h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}}@media (min-width:1024px){h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}}.font-logo{font-family:var(--font-logo);font-weight:var(--font-weight-regular)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:2rem;justify-content:center;align-items:center;gap:.7rem;height:44px;padding:.5rem 1.5rem;font-family:inherit;font-size:.85rem;font-weight:500;line-height:1.5;text-decoration:none;transition:all .3s;display:inline-flex}.btn-icon{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:0 0;border-radius:50%;padding:.625rem;transition:all .2s}.btn-icon:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-icon:active:not(:disabled){transform:translateY(0)}.btn-icon:disabled{opacity:.5;cursor:not-allowed;border-color:var(--border-color);color:var(--text-muted);transform:none}.btn-icon svg{width:20px;height:20px;display:block}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:0 0;transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:var(--shadow-lg)}.btn-secondary:active:not(:disabled){transform:translateY(0)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;border-color:var(--border-color);color:var(--text-muted);transform:none}@media (min-width:768px){.btn{height:44px;padding:.5rem 1.7rem;font-size:1rem}.btn-icon{width:44px;height:44px;padding:.625rem}}.btn-full{width:100%}.btn-group{flex-direction:column;gap:.5rem;display:flex}@media (min-width:768px){.btn-group{flex-direction:row;gap:.75rem}}.form-input,.form-textarea,.form-select{border:1px solid var(--border-color);color:var(--text-primary);background:#fff;border-radius:.5rem;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}select.form-input,.form-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:12px;padding-right:2.5rem}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #ff572226}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-secondary)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:100px}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-label{color:var(--text-primary);font-size:.9375rem;font-weight:500}.form-hint{color:var(--text-muted);font-size:.8125rem}.form-error{color:#ff6b6b;font-size:.875rem}.form-input-sm{padding:.5rem .75rem;font-size:.875rem}.form-input-lg{padding:1rem 1.25rem;font-size:1.125rem}@media (max-width:768px){.form-input,.form-textarea,.form-select{font-size:16px}}[data-theme=dark],body[data-theme=dark],html[data-theme=dark]{--bg-primary:#0d0d0d;--bg-secondary:#1a1a1a;--bg-tertiary:#262626;--text-primary:#fafafa;--text-secondary:#e5e5e5;--text-muted:#a3a3a3;--accent-primary:#a855f7;--accent-primary-rgb:168,85,247;--accent-secondary:#c084fc;--accent-warm:#d8b4fe;--accent-glow:#e9d5ff;--accent-gradient:linear-gradient(135deg,#a855f7 0%,#c084fc 50%,#d8b4fe 100%);--subtle-gradient:linear-gradient(180deg,#0d0d0d 0%,#1a1a1a 100%);--border-color:#333;--border-accent:#404040;--shadow-sm:0 1px 2px 0 #00000080;--shadow-md:0 4px 6px -1px #0009,0 2px 4px -1px #a855f71a;--shadow-lg:0 10px 15px -3px #000000b3,0 4px 6px -2px #a855f726;--shadow-xl:0 20px 25px -5px #000c,0 10px 10px -5px #a855f733}.section{width:100%;padding:4rem 1.5rem}.section-sm{width:100%;padding:2rem}.section-lg{width:100%;padding:6rem 1.5rem}.container{width:100%;max-width:1200px;margin:0 auto}.container-narrow{width:100%;max-width:900px;margin:0 auto}.container-wide{width:100%;max-width:1400px;margin:0 auto}@media (min-width:768px){.section{padding:5rem 2rem}.section-sm{padding:3rem 2rem}.section-lg{padding:8rem 2rem}}@media (min-width:1024px){.section{padding:6rem 2rem}.section-sm{padding:4rem 2rem}.section-lg{padding:10rem 2rem}}@media (max-width:768px){.section{padding:3rem 1rem}.section-sm{padding:1.5rem 2rem}.section-lg{padding:4rem 1rem}}:root{--bg-primary:#fef9f5;--bg-secondary:#fff4ed;--bg-tertiary:#ffede3;--text-primary:#2d1810;--text-secondary:#5c4033;--text-muted:#8b7066;--accent-primary:#ff5722;--accent-primary-rgb:255,87,34;--accent-secondary:#ff7043;--accent-warm:#ff8a65;--accent-glow:#ffab91;--accent-gradient:linear-gradient(135deg,#ff5722 0%,#ff6f40 50%,#ff8a65 100%);--subtle-gradient:linear-gradient(180deg,#fef9f5 0%,#fff4ed 100%);--border-color:#f3dfd6;--border-accent:#ffcdb3;--shadow-sm:0 1px 2px 0 #ff572214;--shadow-md:0 4px 6px -1px #ff57221f;--shadow-lg:0 10px 15px -3px #ff572226;--shadow-xl:0 20px 25px -5px #ff57222e;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);margin:0}#root{min-height:100vh}a{color:var(--accent-primary);text-decoration:none;transition:color .3s}a:hover{color:var(--accent-secondary)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-container{justify-content:center;align-items:center;display:flex}.loading-container-full{min-height:100vh}.loading-content{flex-direction:column;align-items:center;gap:1rem;animation:.3s fadeIn;display:flex}.loading-spinner{border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.loading-text{color:var(--text-secondary);font-size:1rem;animation:1.5s ease-in-out infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.language-selector{align-items:center;gap:.5rem;display:flex}.language-label{color:var(--color-text-secondary,#666);font-size:.875rem}.language-select{border:1px solid var(--color-border,#ddd);background-color:var(--color-background,#fff);color:var(--color-text,#333);cursor:pointer;border-radius:.25rem;padding:.375rem .75rem;font-size:.875rem;transition:border-color .2s}.language-select:hover{border-color:var(--color-primary,#007bff)}.language-select:focus{border-color:var(--color-primary,#007bff);outline:none;box-shadow:0 0 0 .2rem #007bff40}@media (max-width:768px){.language-selector{flex-direction:column;align-items:flex-start;gap:.25rem}.language-select{width:100%}}.footer{border-top:1px solid var(--border-color);background:var(--bg-primary);margin-top:4rem;padding:2rem 0}.footer-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex}.footer-copyright{color:var(--text-muted);font-size:.875rem}.footer-links{align-items:center;gap:2rem;display:flex}.footer-link{color:var(--text-secondary);font-size:.875rem;text-decoration:none;transition:color .3s}.footer-link:hover{color:var(--accent-primary)}.footer-contact{color:var(--text-muted);font-size:.875rem}@media (max-width:768px){.footer-content{text-align:center;flex-direction:column;padding:0 1rem}.footer-links{gap:1.5rem}}.app-wrapper{flex-direction:column;min-height:100vh;display:flex}.app-content{flex:1}.app{background:var(--bg-primary);min-height:100vh;color:var(--text-primary);padding:3rem}.app:has(.app-nav){padding:0}.container{max-width:900px;margin:0 auto}.app:has(.app-nav) .container{padding:2rem}.logo{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;padding:.5rem 2rem;font-size:3rem;font-weight:700;animation:.6s fadeInDown;display:inline-block}.tagline{color:var(--text-secondary);font-size:1.125rem;animation:.6s .2s both fadeInUp}@media (max-width:768px){.app{padding:1rem}.app:has(.app-nav) .container{padding:1rem}.logo{font-size:2.25rem}}
