.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.auth-container{width:100%;max-width:420px;padding:16px}.auth-header{text-align:center;margin-bottom:32px}.auth-header .logo{background:var(--primary);border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:inline-flex}.auth-header h1{color:var(--text);margin-bottom:6px;font-size:1.5em;font-weight:700}.auth-header p{color:var(--text-secondary);font-size:.95em}.auth-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border);padding:32px}.tab-row{border-bottom:2px solid var(--border);margin-bottom:24px;display:flex}.tab{text-align:center;color:var(--text-secondary);border-bottom:2px solid #0000;flex:1;margin-bottom:-2px;padding:12px;font-size:.95em;font-weight:600;transition:color .2s,border-color .2s}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.form-group{margin-bottom:18px}.field-label{color:var(--text-secondary);margin-bottom:6px;font-size:.88em;font-weight:600;display:block}.form-input{border:2px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);background:var(--surface);outline:none;padding:12px 14px;font-size:.95em;transition:border-color .2s}.form-input:focus{border-color:var(--primary)}.form-input::placeholder{color:var(--text-secondary);opacity:.7}textarea.form-input{resize:vertical;line-height:1.5}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-sm);border:none;width:100%;margin-top:4px;padding:14px;font-size:.95em;font-weight:600;transition:background .2s}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.divider{align-items:center;gap:12px;margin:24px 0;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.divider span{color:var(--text-secondary);font-size:.88em;font-weight:500}.btn-google{border:2px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);justify-content:center;align-items:center;padding:12px;font-size:.95em;font-weight:600;transition:border-color .2s,background .2s;display:flex}.btn-google:hover{border-color:var(--border-hover);background:#fafafa}.error-message{color:#dc2626;border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;margin-bottom:18px;padding:10px 14px;font-size:.9em}.dashboard{background:var(--bg);min-height:100vh}.header{text-align:center;background:linear-gradient(135deg,#166534 0%,#16a34a 50%,#22c55e 100%);padding:10px 20px 42px;position:relative;overflow:hidden}.header-pattern{opacity:.05;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-rule='evenodd'%3E%3Cpath d='M20 18h2v4h-2zM18 20h4v2h-4z'/%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.header-content{z-index:1;position:relative}.header-top{justify-content:flex-end;align-items:center;gap:12px;margin-bottom:16px;display:flex}.header-email{color:#ffffffd9;font-size:.88em}.btn-logout{color:#ffffffe6;background:#ffffff26;border-radius:8px;padding:6px 14px;font-size:.85em;font-weight:600;transition:background .2s}.btn-logout:hover{background:#ffffff40}.header h1{color:#fff;margin-bottom:6px;font-size:1.8em;font-weight:700}.header-subtitle{color:#ffffffd9;font-size:1em}.container{z-index:2;max-width:720px;margin:-32px auto 60px;padding:0 16px;position:relative}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border);margin-bottom:16px;padding:28px}.card h2{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin-bottom:16px;font-size:.82em;font-weight:700}.stores{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.store-btn{border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:var(--surface);text-align:center;padding:14px 16px;font-size:.92em;font-weight:500;transition:all .2s}.store-btn:hover{border-color:var(--border-hover)}.store-btn.selected{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:600;box-shadow:0 0 0 3px #16a34a1a}.store-count{color:var(--text-secondary);margin-top:12px;font-size:.85em}.checkbox-group{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.checkbox-label{color:var(--text);cursor:pointer;align-items:center;gap:10px;font-size:.93em;display:flex}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.number-row{gap:14px;display:flex}.number-field{flex:1}.number-field label{color:var(--text-secondary);margin-bottom:6px;font-size:.85em;font-weight:600;display:block}.number-field input{border:2px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:center;outline:none;padding:10px 12px;font-size:.95em;transition:border-color .2s}.number-field input:focus{border-color:var(--primary)}.gemini-row{gap:8px;margin-bottom:12px;display:flex}.gemini-row .form-input{flex:1}.btn-gemini-save{background:var(--primary);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;padding:10px 18px;font-size:.9em;font-weight:600;transition:background .2s}.btn-gemini-save:hover{background:var(--primary-hover)}.btn-gemini-delete{color:#fff;border-radius:var(--radius-sm);white-space:nowrap;background:#dc2626;padding:10px 18px;font-size:.9em;font-weight:600;transition:background .2s}.btn-gemini-delete:hover{background:#b91c1c}.gemini-status{color:var(--text-secondary);margin-bottom:10px;font-size:.88em}.gemini-info{color:#92400e;border-radius:var(--radius-sm);background:#fefce8;border:1px solid #fde68a;padding:10px 14px;font-size:.85em;line-height:1.5}.status-text{text-align:center;color:var(--text-secondary);padding:16px 0;font-size:.92em}.result{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--border);margin-bottom:16px;padding:32px;font-size:.95em;line-height:1.8}.result h1,.result h2{border-bottom:2px solid var(--primary-light);color:var(--text);margin:24px 0 12px;padding-bottom:8px}.result h1:first-child,.result h2:first-child{margin-top:0}.result h3{color:var(--primary);margin:20px 0 8px}.result strong{color:var(--primary)}.result table{border-collapse:collapse;width:100%;margin:16px 0}.result th,.result td{border:1px solid var(--border);text-align:left;padding:8px 12px}.result th{background:var(--primary-light);color:var(--primary);font-weight:600}.result ul,.result ol{margin:8px 0 8px 24px}.result li{margin:4px 0}.result p{margin:8px 0}.result hr{border:none;border-top:2px solid var(--border);margin:24px 0}.btn-pdf{border:2px solid var(--primary);width:100%;color:var(--primary);border-radius:var(--radius-sm);background:var(--surface);justify-content:center;align-items:center;margin-bottom:16px;padding:14px;font-size:.95em;font-weight:600;transition:background .2s,color .2s;display:flex}.btn-pdf:hover{background:var(--primary-light)}.fab-group{z-index:100;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.fab{color:#fff;box-shadow:var(--shadow-lg);border-radius:50px;justify-content:center;align-items:center;padding:14px 22px;font-size:.92em;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.fab:hover{transform:translateY(-1px);box-shadow:0 6px 30px #00000026}.fab:disabled{opacity:.7;cursor:not-allowed;transform:none}.fab-generate{background:#2563eb}.fab-generate:hover:not(:disabled){background:#1d4ed8}.fab-save{background:var(--primary)}.fab-save:hover:not(:disabled){background:var(--primary-hover)}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;margin-right:8px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.toast{color:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:200;white-space:nowrap;text-align:center;background:#dc2626;max-width:90vw;padding:14px 24px;font-size:.92em;font-weight:500;transition:top .3s;position:fixed;top:-80px;left:50%;transform:translate(-50%)}.toast-show{top:24px}@media (width<=520px){.header{padding:32px 16px 44px}.header h1{font-size:1.4em}.stores{grid-template-columns:1fr}.card,.result{padding:20px}.number-row{flex-direction:column;gap:10px}.fab-group{bottom:16px;right:16px}}:root{--bg:#f8faf9;--surface:#fff;--primary:#16a34a;--primary-hover:#15803d;--primary-light:#f0fdf4;--text:#1a1a2e;--text-secondary:#64748b;--border:#e2e8f0;--border-hover:#94a3b8;--radius:16px;--radius-sm:10px;--shadow:0 1px 3px #0000000a, 0 4px 16px #0000000f;--shadow-lg:0 4px 24px #0000001a}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}
