:root{--bg-primary: #f4ecd0;--bg-secondary: #e8dfc0;--bg-card: #fcf6e0;--bg-card-hover: #f7efd2;--bg-input: #e8dfc0;--bg-input-focus: #f0e9d2;--text-primary: #150d08;--text-secondary: #6a4522;--text-muted: #8e6e4e;--accent: #c59645;--accent-hover: #b58520;--accent-active: #9a7018;--accent-glow: rgba(197, 150, 69, .15);--accent-gradient: linear-gradient(135deg, #c59645, #a38660);--border-color: #cbb796;--border-focus: #c59645;--success: #22c55e;--success-bg: rgba(34, 197, 94, .1);--warning: #ff495c;--warning-bg: rgba(212, 135, 28, .1);--error: #c44536;--error-bg: rgba(196, 69, 54, .1);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 2px rgba(21, 13, 8, .06);--shadow-md: 0 4px 12px rgba(21, 13, 8, .08);--shadow-lg: 0 8px 32px rgba(21, 13, 8, .1);--shadow-glow: 0 0 30px rgba(197, 150, 69, .12);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 5rem;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", monospace}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}input,textarea,select,button{font-family:inherit;font-size:inherit}::selection{background:var(--accent);color:#fff}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.app-main{flex:1;display:flex;flex-direction:column}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;width:100%;max-width:480px;margin:0 auto}.card-header{padding:var(--space-xl) var(--space-md);text-align:center}.card-header--centered{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.card-header--centered h3{font-size:1.1rem;font-weight:600}.card-header--centered svg{stroke:var(--accent);width:32px;height:32px}.card-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-xs)}.card-subtitle{color:var(--text-muted);font-size:.85rem}.btn-primary{padding:var(--space-md) var(--space-lg);background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);transition:all .15s;box-shadow:0 2px 8px #c596454d}.btn-primary:hover:not(:disabled){box-shadow:0 4px 16px #c5964566;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:var(--space-md) var(--space-lg);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);transition:all .15s}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.btn-row{display:flex;gap:var(--space-sm);padding:var(--space-md)}.error-banner{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--error-bg);border:1px solid rgba(196,69,54,.2);border-radius:var(--radius-md);color:var(--error);font-size:.85rem;margin:var(--space-md)}.form-group{margin-bottom:var(--space-md);padding:0 var(--space-md)}label{display:block;color:var(--text-secondary);font-size:.8rem;font-weight:500;margin-bottom:var(--space-sm);text-align:left}.input{width:100%;padding:var(--space-md);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;outline:none;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow)}.input::placeholder{color:var(--text-muted)}.spinner{animation:svelte-12qhfyh-spin 1s linear infinite;width:18px;height:18px}@keyframes svelte-12qhfyh-spin{to{transform:rotate(360deg)}}
