@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary:#0a0f1d;--bg-secondary:#131c31;--bg-glass:#131c31bf;--border-glass:#ffffff14;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--accent-blue:#3b82f6;--accent-blue-hover:#2563eb;--accent-purple:#8b5cf6;--accent-purple-hover:#7c3aed;--accent-red:#ef4444;--accent-red-hover:#dc2626;--accent-green:#10b981;--accent-green-hover:#059669;--transition-smooth:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,sans-serif;line-height:1.5}.app-container{background:radial-gradient(circle at 100% 0,#3b82f614,#0000 40%),radial-gradient(circle at 0 100%,#8b5cf614,#0000 40%);flex-direction:column;min-height:100vh;display:flex;position:relative;overflow:hidden}.app-header{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-glass);z-index:10;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.brand{align-items:center;gap:.75rem;display:flex}.brand-icon{color:var(--accent-blue);filter:drop-shadow(0 0 8px #3b82f680)}.brand-title{letter-spacing:-.025em;background:linear-gradient(90deg,#3b82f6,#8b5cf6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.25rem;font-weight:800}.header-actions{gap:.75rem;display:flex}.btn{cursor:pointer;transition:var(--transition-smooth);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.btn-secondary{color:var(--text-primary);border-color:var(--border-glass);background:#ffffff0d}.btn-secondary:hover{background:#ffffff1a;transform:translateY(-1px)}.btn-danger{color:#f87171;background:#ef444433;border-color:#ef44444d}.btn-danger:hover{color:#fff;background:#ef44444d;transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg, var(--accent-blue), var(--accent-purple));color:#fff;box-shadow:0 4px 15px #3b82f633}.btn-primary:hover{transform:translateY(-1.5px);box-shadow:0 6px 20px #3b82f659}.toast{color:#fff;z-index:50;background:#10b981f2;border-radius:50px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;animation:.4s cubic-bezier(.16,1,.3,1) slide-down;display:flex;position:absolute;top:5rem;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #10b9814d}.error-banner{z-index:50;background:#ef444426;border:1px solid #ef44444d;border-radius:12px;align-items:flex-start;gap:.75rem;margin:1rem;padding:1rem;animation:.3s fade-in;display:flex}.error-text{color:#fca5a5;flex:1;font-size:.875rem}.error-close{color:#fca5a5;cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.error-close:hover{color:#fff}.main-content{background:#020617;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex;position:relative}.camera-view{flex-direction:column;width:100%;height:100%;display:flex;position:relative}.video-element{object-fit:cover;width:100%;height:100%}.camera-overlay{pointer-events:none;border:3px dashed #3b82f666;border-radius:24px;justify-content:center;align-items:center;margin:2.5rem;display:flex;position:absolute;inset:0;box-shadow:inset 0 0 100px #00000080}.camera-guide-text{color:var(--text-primary);letter-spacing:.075em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0f1dcc;border:1px solid #ffffff26;border-radius:50px;padding:.625rem 1.5rem;font-size:.75rem;font-weight:700}.camera-controls{background:linear-gradient(#0000,#020617f2);justify-content:center;width:100%;padding:3rem 2rem;display:flex;position:absolute;bottom:0}.capture-btn{cursor:pointer;width:5rem;height:5rem;transition:var(--transition-smooth);background:#fff;border:4px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 0 25px #ffffff40}.capture-btn:hover{transform:scale(1.05);box-shadow:0 0 35px #ffffff73}.capture-btn:active{transform:scale(.95)}.capture-inner{background:#f8fafc;border-radius:50%;width:3.5rem;height:3.5rem;box-shadow:inset 0 2px 4px #0000001a}.crop-view{touch-action:none;background:#020617;flex-direction:column;width:100%;height:100%;display:flex}.crop-header{border-bottom:1px solid var(--border-glass);background:#090d1a;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.crop-title{letter-spacing:-.01em;font-weight:700}.crop-btn-cancel{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;align-items:center;gap:.375rem;font-size:.9rem;font-weight:600;display:flex}.crop-btn-cancel:hover{color:#fff}.crop-btn-done{color:var(--accent-blue);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;align-items:center;gap:.25rem;font-size:.95rem;font-weight:700;display:flex}.crop-btn-done:hover{color:#60a5fa}.crop-btn-done:disabled{opacity:.5;cursor:not-allowed}.crop-workspace{-webkit-user-select:none;user-select:none;flex:1;justify-content:center;align-items:center;width:100%;padding:1.5rem;display:flex;position:relative;overflow:hidden}.crop-image-container{max-width:100%;max-height:100%;display:inline-block;position:relative}.crop-image{pointer-events:none;border-radius:8px;max-width:100%;max-height:60vh;display:block;box-shadow:0 20px 40px #0009}.crop-handle{cursor:move;z-index:20;touch-action:none;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;margin-top:-1.25rem;margin-left:-1.25rem;display:flex;position:absolute}.crop-handle-dot{background:var(--accent-blue);border:3px solid #fff;border-radius:50%;width:1.125rem;height:1.125rem;transition:transform .15s,background-color .15s;box-shadow:0 4px 12px #0006}.crop-handle:hover .crop-handle-dot{background:var(--accent-purple);transform:scale(1.25)}.crop-footer-guide{color:var(--text-secondary);text-align:center;border-top:1px solid var(--border-glass);background:#090d1a;padding:1rem;font-size:.75rem}.preview-view{background:#0b1120;flex-direction:column;width:100%;height:100%;display:flex}.preview-container{background:radial-gradient(circle,#1e293b,#090d1a);flex:1;justify-content:center;align-items:center;padding:2rem;display:flex;overflow:auto}.preview-paper{max-width:100%;transition:var(--transition-smooth);background:#fff;border:1px solid #ffffff0d;border-radius:12px;padding:.5rem;box-shadow:0 25px 50px -12px #000000b3}.preview-paper:hover{transform:translateY(-2px);box-shadow:0 30px 60px -10px #000c}.preview-image{object-fit:contain;border-radius:8px;max-height:50vh;margin:0 auto;display:block}.preview-control-panel{color:#0f172a;z-index:10;background:#fff;border-radius:24px 24px 0 0;flex-direction:column;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 -10px 40px #00000059}.format-section-title{color:#64748b;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;display:flex}.format-options{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.format-card{cursor:pointer;color:#475569;transition:var(--transition-smooth);background:#fff;border:2px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;gap:.75rem;padding:1rem;font-size:.95rem;font-weight:700;display:flex}.format-card:hover{color:#1e293b;border-color:#cbd5e1;transform:translateY(-1px)}.format-card.selected-pdf{border-color:var(--accent-red);color:#991b1b;background:#fef2f2}.format-card.selected-pdf .format-icon{color:var(--accent-red)}.format-card.selected-word{border-color:var(--accent-blue);color:#1e40af;background:#eff6ff}.format-card.selected-word .format-icon{color:var(--accent-blue)}.action-buttons{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.btn-export{letter-spacing:.01em;border-radius:16px;padding:1.125rem;font-size:1rem;font-weight:800}.btn-download{color:#fff;background:#0f172a}.btn-download:hover{background:#1e293b;transform:translateY(-2px);box-shadow:0 6px 20px #0f172a40}.btn-share{background:var(--accent-blue);color:#fff;box-shadow:0 6px 20px #3b82f640}.btn-share:hover{background:var(--accent-blue-hover);transform:translateY(-2px);box-shadow:0 8px 24px #3b82f659}.panel-footer-note{text-align:center;color:#94a3b8;font-size:.75rem;line-height:1.4}@keyframes slide-down{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (width<=640px){.preview-control-panel{gap:1.25rem;padding:1.5rem}.format-options,.action-buttons{gap:.75rem}}
