:root{--sim-forest:#1a3020;--sim-green:#2d6a4f;--sim-green-hover:#245c43;--sim-green-light:#e8f3ee;--sim-mint:#7dd4a8;--sim-amber:#c8a035;--sim-amber-light:#fdf6e3;--sim-red:#dc2626;--sim-red-light:#fef2f2;--sim-bg:#f7f3ed;--sim-bg-card:#fff;--sim-bg-muted:#f2ece4;--sim-bg-hover:var(--sim-bg-card,#f5f0e8);--sim-bg-input:#fff9;--sim-border:#00000014;--sim-border-light:#0000000a;--sim-border-focus:#2d6a4f;--sim-text:#1a1a0a;--sim-text-sec:#3a3020;--sim-text-muted:#6b5e45;--sim-text-hint:#9a8a6a;--sim-text-label:#5a7060;--sim-font-sans:var(--font-geist-sans),"Geist",system-ui,-apple-system,sans-serif;--sim-font-serif:"Cormorant Garamond",Georgia,serif;--sim-text-xs:12px;--sim-text-sm:13px;--sim-text-base:14px;--sim-text-md:15px;--sim-text-lg:17px;--sim-text-xl:20px;--sim-text-2xl:24px;--sim-r-xs:6px;--sim-r-sm:8px;--sim-r-md:100px;--sim-r-lg:16px;--sim-r-xl:20px;--sim-r-full:9999px;--sim-shadow-xs:0 1px 3px #0000000a;--sim-shadow-sm:0 2px 8px #0000000f;--sim-shadow-md:0 4px 20px #00000014;--sim-shadow-lg:0 8px 40px #0000001a;--sim-ai:#6366f1;--sim-ai-hover:#4f46e5;--sim-ai-light:#eef2ff;--sim-ai-dark:#1e1b4b;--sim-ai-glow:#6366f166;--sim-ai-glass:#6366f10f;--sim-ai-glass-border:#6366f126;--color-bg:var(--sim-bg);--color-card:var(--sim-bg-muted);--color-muted-bg:var(--sim-bg-muted);--color-border:var(--sim-border);--color-border-light:var(--sim-border-light);--color-input-bg:var(--sim-bg-input);--color-sidebar:var(--sim-forest);--color-primary:var(--sim-green);--color-amber:var(--sim-amber);--font-display:var(--sim-font-serif)}.heading-serif{font-family:var(--sim-font-serif)}body{background-color:var(--sim-bg);color:var(--sim-text);font-family:var(--sim-font-sans);font-size:var(--sim-text-base);-webkit-font-smoothing:antialiased;line-height:1.6}.btn{height:36px;font-family:var(--sim-font-sans);font-size:var(--sim-text-sm);border-radius:var(--sim-r-md);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:500;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex}.btn-primary:hover:not(:disabled){box-shadow:var(--sim-shadow-md);transform:translateY(-1px)}.btn:disabled,.btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-primary{background-color:var(--sim-green);color:#fff;border-color:var(--sim-green);box-shadow:var(--sim-shadow-xs)}.btn-primary:hover{background-color:var(--sim-green-hover);border-color:var(--sim-green-hover)}.btn-primary:active{background-color:var(--sim-forest)}.btn-secondary{color:var(--sim-green);border-color:var(--sim-border);background-color:#0000}.btn-secondary:hover{background-color:var(--sim-green-light);border-color:var(--sim-green)}.btn-ghost{color:var(--sim-text-muted);background-color:#0000;border-color:#0000}.btn-ghost:hover{background-color:var(--sim-bg-hover);color:var(--sim-text)}.btn-sm{height:28px;font-size:var(--sim-text-xs);border-radius:var(--sim-r-md);padding:0 12px}.btn-lg{height:44px;font-size:var(--sim-text-md);border-radius:var(--sim-r-md);padding:0 20px;font-weight:600}.input{width:100%;height:36px;font-family:var(--sim-font-sans);font-size:var(--sim-text-base);color:var(--sim-text);background-color:var(--sim-bg-input);border:1px solid var(--sim-border);border-radius:var(--sim-r-md);outline:none;padding:0 12px;line-height:1;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--sim-text-hint)}.input:focus{border-color:var(--sim-border-focus);box-shadow:0 0 0 3px #2d6a4f1a}.input:disabled{opacity:.5;cursor:not-allowed}.input-sm{height:28px;font-size:var(--sim-text-xs);padding:0 8px}textarea.input{resize:none;height:auto;padding:10px 12px;line-height:1.6}.card{background-color:var(--sim-bg-card);border-radius:var(--sim-r-lg);box-shadow:var(--sim-shadow-sm);padding:20px;transition:box-shadow .2s,transform .2s}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--sim-bg-muted)}::-webkit-scrollbar-thumb{background:var(--sim-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--sim-text-hint)}*{scrollbar-width:thin;scrollbar-color:var(--sim-border)var(--sim-bg-muted)}.btn{touch-action:manipulation}@media (hover:none) and (pointer:coarse){.btn{height:40px;min-height:40px}.btn-sm{height:36px;min-height:36px}.btn-lg{height:48px;min-height:48px}.input,.input-sm,textarea.input{font-size:16px}}input,textarea,select{border-radius:12px!important}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[role=switch]:focus-visible{outline:2px solid var(--sim-green,#2d6a4f);outline-offset:2px}.btn-ai{background:linear-gradient(135deg,var(--sim-ai)0%,#818cf8 100%);color:#fff;border:none;position:relative;overflow:hidden;box-shadow:0 2px 4px #6366f14d,0 4px 16px #6366f133,inset 0 1px #ffffff26}.btn-ai:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #6366f159,0 8px 24px #6366f140,inset 0 1px #fff3}.btn-ai:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #6366f14d,inset 0 1px 3px #0000001a}.btn-ai:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffff26 45%,#ffffff0d 55%,#0000 60%);position:absolute;inset:0}.btn-ai-outline{color:var(--sim-ai);border:1px solid var(--sim-ai-glass-border);background:0 0}.btn-ai-outline:hover:not(:disabled){background:var(--sim-ai-glass);border-color:var(--sim-ai);transform:translateY(-1px)}.ai-glass{background:var(--sim-ai-glass);border:1px solid var(--sim-ai-glass-border);-webkit-backdrop-filter:blur(12px);border-radius:var(--sim-r-xl)}.ai-card-dark{background:linear-gradient(135deg,var(--sim-ai-dark)0%,#312e81 100%);border-radius:var(--sim-r-xl);color:#fff;border:1px solid #6366f14d;position:relative;overflow:hidden}.ai-card-dark:before{content:"";border-radius:inherit;z-index:-1;opacity:.5;background:linear-gradient(135deg,#6366f166 0%,#0000 50%,#818cf833 100%);position:absolute;inset:-1px}.ai-glow{box-shadow:0 0 20px var(--sim-ai-glow),0 0 40px #6366f126}@keyframes aiPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.ai-pulse{animation:2s ease-in-out infinite aiPulse}@keyframes aiFadeIn{0%{opacity:0}to{opacity:1}}.ai-fade-in{animation:.4s both aiFadeIn}@keyframes aiSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.ai-slide-up{animation:.5s both aiSlideUp}@keyframes aiProgress{0%{background-position:200% 0}to{background-position:-200% 0}}.ai-progress{background:linear-gradient(90deg,var(--sim-ai)0%,#818cf8 25%,var(--sim-ai)50%,#818cf8 75%,var(--sim-ai)100%);background-size:200% 100%;animation:2s linear infinite aiProgress}@keyframes aiShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ai-shimmer{position:relative;overflow:hidden}.ai-shimmer:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:1.5s ease-in-out infinite aiShimmer;position:absolute;inset:0}@keyframes aiLensFill{0%{width:0}}.ai-lens-bar{animation:.8s both aiLensFill}@keyframes aiCountUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ai-counter{font-variant-numeric:tabular-nums;animation:.3s both aiCountUp}@keyframes aiOnboardFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ai-onboard-slide{animation:.4s both aiOnboardFadeIn}@media (hover:none) and (pointer:coarse){.btn-ai,.btn-ai-outline{height:44px;min-height:44px;font-size:var(--sim-text-md)}}
