:root{--color-bg:#f8f6f1;--color-surface:#fff;--color-primary:#b8860b;--color-primary-dark:#8b6508;--color-primary-light:#d4a017;--color-text:#2d2410;--color-text-muted:#7a6f55;--color-border:#e5dfd0;--color-success:#2d7a3e;--color-error:#c0392b;--color-accent:#c9a227;--shadow-sm:0 1px 3px #2d241014;--shadow-md:0 4px 12px #2d24101a;--shadow-lg:0 8px 24px #2d241026;--radius-sm:8px;--radius-md:12px;--radius-lg:20px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}#root{min-height:100vh}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}.app{max-width:1100px;margin:0 auto;padding:20px 16px 60px}.app-header{text-align:center;padding:32px 0 24px;position:relative}.app-header h1{color:var(--color-primary-dark);justify-content:center;align-items:center;gap:10px;font-size:1.75rem;font-weight:700;display:flex}.app-header p{color:var(--color-text-muted);margin-top:6px;font-size:.95rem}.auth-out{padding:8px 14px;font-size:.8rem;position:absolute;top:32px;right:0}.tabs{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);gap:8px;max-width:400px;margin-bottom:24px;margin-left:auto;margin-right:auto;padding:6px;display:flex}.tab{border-radius:var(--radius-sm);color:var(--color-text-muted);flex:1;justify-content:center;align-items:center;gap:6px;padding:12px 16px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.tab.active{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.tab:hover:not(.active){background:var(--color-bg);color:var(--color-text)}.auth-tabs{background:var(--color-bg);border-radius:var(--radius-md);gap:8px;margin-bottom:24px;padding:6px;display:flex}.auth-form{flex-direction:column;gap:14px;display:flex}.input-group{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:0 14px;transition:border-color .2s;display:flex}.input-group:focus-within{border-color:var(--color-primary)}.input-group svg{color:var(--color-text-muted);flex-shrink:0}.input-group input{color:var(--color-text);background:0 0;border:none;outline:none;flex:1;padding:12px 0;font-size:.95rem}.auth-submit{justify-content:center;width:100%;margin-top:4px}.auth-divider{text-align:center;color:var(--color-text-muted);margin:20px 0;font-size:.85rem;position:relative}.auth-divider:before,.auth-divider:after{content:"";background:var(--color-border);width:40%;height:1px;position:absolute;top:50%}.auth-divider:before{left:0}.auth-divider:after{right:0}.btn-google{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 24px;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-google:hover{border-color:var(--color-primary-light);background:#f8f6f1}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:28px}.btn{border-radius:var(--radius-sm);align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{border-color:var(--color-primary-light);background:#faf8f0}.btn-danger{color:var(--color-error);padding:6px 10px;font-size:.85rem}.btn-danger:hover{border-radius:var(--radius-sm);background:#fdf0ee}.loading{text-align:center;padding:40px 20px}.spinner{border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:48px;height:48px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading p{color:var(--color-text-muted);font-size:.95rem}.upload-pair{grid-template-columns:1fr 1fr;gap:16px;display:grid}.upload-slot{border:2px dashed var(--color-border);border-radius:var(--radius-md);text-align:center;cursor:pointer;background:var(--color-bg);padding:32px 16px;transition:all .3s}.upload-slot:hover{border-color:var(--color-primary-light);background:#faf8f0}.upload-slot .icon{color:var(--color-primary);margin-bottom:10px}.upload-slot h3{margin-bottom:4px;font-size:1rem;font-weight:600}.upload-slot p{color:var(--color-text-muted);font-size:.8rem}.preview-pair{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;display:grid}.preview-slot{position:relative}.preview-slot img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-md);background:var(--color-bg);width:100%}.preview-empty{aspect-ratio:1;border:2px dashed var(--color-border);border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-muted);background:var(--color-bg);flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:all .2s;display:flex}.preview-empty:hover{border-color:var(--color-primary-light);color:var(--color-primary)}.preview-empty span{font-size:.8rem;font-weight:500}.preview-label{text-align:center;color:var(--color-text-muted);margin-top:6px;font-size:.8rem;font-weight:600}.preview-remove{color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;top:8px;right:8px}.preview-remove:hover{background:#000c}.result{margin-top:24px;animation:.4s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-images{justify-content:center;gap:12px;margin-bottom:20px;display:flex}.result-side-img{object-fit:cover;border-radius:var(--radius-md);width:140px;height:140px;box-shadow:var(--shadow-md)}.result-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.result-item{background:var(--color-bg);border-radius:var(--radius-sm);padding:14px 16px}.result-item .label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:4px;font-size:.75rem;font-weight:600}.result-item .value{color:var(--color-text);font-size:1rem;font-weight:600}.result-description{background:var(--color-bg);border-radius:var(--radius-sm);margin-bottom:16px;padding:16px;font-size:.95rem;line-height:1.6}.result-value-box{border-radius:var(--radius-md);text-align:center;border:1px solid var(--color-primary-light);background:linear-gradient(135deg,#f9f0d8,#fdf6e3);margin-bottom:20px;padding:18px}.result-value-box .label{color:var(--color-text-muted);margin-bottom:4px;font-size:.8rem;font-weight:600}.result-value-box .value{color:var(--color-primary-dark);font-size:1.5rem;font-weight:700}.confidence-badge{border-radius:100px;margin-bottom:16px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-block}.confidence-hoch{color:#155724;background:#d4edda}.confidence-mittel{color:#856404;background:#fff3cd}.confidence-niedrig{color:#721c24;background:#f8d7da}.result-actions{flex-wrap:wrap;gap:12px;display:flex}.error-box{border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);background:#fdf0ee;margin-top:20px;padding:16px;font-size:.9rem}.collection-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.collection-header h2{color:var(--color-primary-dark);font-size:1.3rem;font-weight:700}.collection-count{background:var(--color-primary);color:#fff;border-radius:100px;padding:4px 14px;font-size:.85rem;font-weight:600}.coin-list{flex-direction:column;gap:12px;display:flex}.coin-row{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;align-items:stretch;transition:all .2s;display:flex;overflow:hidden}.coin-row:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.coin-row-images{flex-shrink:0;display:flex}.coin-row-img{object-fit:cover;background:var(--color-bg);width:90px;height:90px}.coin-row-body{flex-direction:column;flex:1;justify-content:center;padding:14px 18px;display:flex}.coin-row-body h3{margin-bottom:4px;font-size:1rem;font-weight:600}.coin-card-meta{color:var(--color-text-muted);margin-bottom:6px;font-size:.8rem}.coin-card-value{color:var(--color-primary-dark);font-size:.9rem;font-weight:600}.empty-state{text-align:center;color:var(--color-text-muted);padding:60px 20px}.empty-state .icon{opacity:.4;margin-bottom:16px}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-lg);overflow-y:auto}.modal-images{gap:0;display:flex}.modal-side-img{object-fit:cover;width:50%;max-height:200px}.modal-body{padding:24px}.modal-body h2{color:var(--color-primary-dark);margin-bottom:12px;font-size:1.3rem;font-weight:700}.modal-meta{flex-wrap:wrap;gap:16px;margin-bottom:16px;display:flex}.modal-meta div{font-size:.85rem}.modal-meta .label{color:var(--color-text-muted);font-size:.75rem;display:block}.modal-description{background:var(--color-bg);border-radius:var(--radius-sm);margin-bottom:16px;padding:14px;font-size:.9rem;line-height:1.6}.modal-value{border-radius:var(--radius-sm);text-align:center;border:1px solid var(--color-primary-light);background:linear-gradient(135deg,#f9f0d8,#fdf6e3);margin-bottom:16px;padding:14px}.modal-value .label{color:var(--color-text-muted);font-size:.75rem}.modal-value .value{color:var(--color-primary-dark);font-size:1.3rem;font-weight:700}.modal-notes{border:1px solid var(--color-border);border-radius:var(--radius-sm);resize:vertical;width:100%;min-height:60px;margin-bottom:16px;padding:10px 12px;font-size:.9rem}.modal-actions{justify-content:flex-end;gap:12px;display:flex}@media (width<=600px){.app-header h1{font-size:1.4rem}.card{padding:20px}.result-grid,.upload-pair{grid-template-columns:1fr}.preview-pair{grid-template-columns:1fr 1fr}.coin-row-img{width:70px;height:70px}.result-side-img{width:110px;height:110px}.auth-out{margin-top:12px;position:static}}
