@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap";.status-badge-wrapper{position:relative;display:inline-flex}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:99px;border:1px solid transparent;font-size:.75rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all .18s ease;white-space:nowrap;letter-spacing:.01em}.badge--checking{background:#f3f4f6;border-color:#e5e7eb;color:#6b7280}.badge--online{background:#d1fae5;border-color:#05966940;color:#065f46}.badge--online:hover{background:#a7f3d0;border-color:#05966966}.badge--offline{background:#fee2e2;border-color:#dc262640;color:#991b1b}.badge--offline:hover{background:#fecaca;border-color:#dc262666}.status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot--pulse{background:#9ca3af;animation:blink 1.4s ease-in-out infinite}.dot--online{background:#10b981;box-shadow:0 0 #10b98180;animation:ping 1.8s ease-in-out infinite}.dot--offline{background:#ef4444}@keyframes ping{0%{box-shadow:0 0 #10b98180}70%{box-shadow:0 0 0 6px #10b98100}to{box-shadow:0 0 #10b98100}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.status-popover-backdrop{position:fixed;inset:0;z-index:299;display:none}.status-popover{position:absolute;top:calc(100% + 10px);right:0;width:300px;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 12px 32px #0000001f,0 2px 8px #0000000f;padding:1.125rem;z-index:300;animation:popIn .18s ease both}@keyframes popIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.status-popover:before{content:"";position:absolute;top:-6px;right:18px;width:11px;height:11px;background:#fff;border-left:1px solid #e5e7eb;border-top:1px solid #e5e7eb;transform:rotate(45deg)}.status-popover__header{display:flex;align-items:center;gap:8px;margin-bottom:.625rem}.status-popover__header strong{font-size:.92rem;font-weight:700;color:#111827}.status-popover__body{font-size:.84rem;color:#4b5563;line-height:1.65;margin-bottom:.875rem}.status-popover__notice{display:flex;gap:8px;align-items:flex-start;background:#fffbeb;border:1px solid #fde68a;border-radius:.625rem;padding:.625rem .75rem;font-size:.8rem;color:#92400e;line-height:1.55}.notice-icon{font-size:.9rem;flex-shrink:0;margin-top:1px}.status-popover__notice strong{display:block;font-weight:700;margin-bottom:2px;color:#78350f}@media(max-width:768px){.status-popover-backdrop{display:block;background:#0f0c2380;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.status-popover{position:fixed;top:50%;left:50%;right:auto;transform:translate(-50%,-50%);width:min(320px,88vw);z-index:1000;max-height:80vh;overflow-y:auto;border-radius:1.25rem;box-shadow:0 24px 60px #00000040,0 8px 24px #0000001f}.status-popover:before{display:none}}.landing-page{width:100%;overflow:hidden}.hero-section{position:relative;min-height:94vh;display:flex;align-items:center;justify-content:center;padding:7rem 1.5rem 5rem;background:linear-gradient(155deg,#080514,#130d30 35%,#1e0f52 65%,#2d1070);overflow:hidden}.hero-orb{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;animation:orbFloat 10s ease-in-out infinite alternate}.hero-orb--1{width:650px;height:650px;background:radial-gradient(circle,rgba(124,58,237,.32) 0%,transparent 70%);top:-12%;left:-12%;animation-delay:0s}.hero-orb--2{width:500px;height:500px;background:radial-gradient(circle,rgba(79,70,229,.22) 0%,transparent 70%);bottom:-18%;right:-6%;animation-delay:-4s}.hero-orb--3{width:320px;height:320px;background:radial-gradient(circle,rgba(167,139,250,.18) 0%,transparent 70%);top:28%;left:58%;animation-delay:-7s}@keyframes orbFloat{0%{transform:scale(1) translate(0);opacity:.7}to{transform:scale(1.2) translate(28px,-22px);opacity:1}}.floating-badges{position:absolute;inset:0;pointer-events:none;overflow:hidden}.floating-badge{position:absolute;display:flex;align-items:center;gap:8px;padding:8px 18px 8px 12px;border-radius:999px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#140a3273;border:1px solid rgba(255,255,255,.07);animation:floatBadge 14s ease-in-out infinite alternate;animation-delay:calc(var(--i) * -1.7s);box-shadow:0 4px 24px #0000004d,0 1px #ffffff0d inset}.floating-badge:nth-child(1){top:13%;left:5%;--accent: #ef4444}.floating-badge:nth-child(2){top:20%;right:7%;--accent: #8b5cf6}.floating-badge:nth-child(3){top:62%;left:4%;--accent: #3b82f6}.floating-badge:nth-child(4){top:76%;right:9%;--accent: #f59e0b}.floating-badge:nth-child(5){top:7%;right:21%;--accent: #ec4899}.floating-badge:nth-child(6){top:84%;left:17%;--accent: #10b981}.floating-badge:nth-child(7){top:42%;left:2%;--accent: #06b6d4}.floating-badge:nth-child(8){top:50%;right:3%;--accent: #a78bfa}.floating-badge-icon{display:flex;align-items:center;font-size:1.15rem;color:var(--accent, #c4b5fd);filter:drop-shadow(0 0 6px var(--accent, rgba(196,181,253,.5)));flex-shrink:0}.floating-badge-label{font-size:.73rem;font-weight:800;letter-spacing:.08em;color:#ffffffbf;text-transform:uppercase}@keyframes floatBadge{0%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-10px) rotate(.5deg)}to{transform:translateY(-20px) rotate(1.5deg)}}.hero-content{position:relative;text-align:center;max-width:740px;z-index:1}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;color:#c4b5fdd9;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.75rem}.eyebrow-dot{width:6px;height:6px;border-radius:50%;background:#a78bfa;box-shadow:0 0 8px #a78bfab3;animation:dotPulse 2s ease-in-out infinite}@keyframes dotPulse{0%,to{box-shadow:0 0 6px #a78bfa99}50%{box-shadow:0 0 14px #a78bfae6}}.hero-title{font-size:clamp(3.2rem,8vw,5.5rem);font-weight:800;color:#fff;line-height:1.06;letter-spacing:-.03em;margin-bottom:1.5rem}.hero-title--accent{background:linear-gradient(135deg,#a78bfa,#818cf8,#67e8f9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.1rem;color:#c4b5fdbf;line-height:1.75;margin-bottom:2.75rem;max-width:520px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:3.5rem}.btn-primary-hero{display:inline-flex;align-items:center;gap:.5rem;padding:.95rem 2.2rem;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;border-radius:14px;font-weight:700;font-size:1rem;text-decoration:none;box-shadow:0 0 0 1px #7c3aed66,0 10px 32px #6d28d973;transition:all .28s ease}.btn-primary-hero:hover{color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 0 0 1px #7c3aed99,0 16px 40px #6d28d98c}.btn-ghost-hero{display:inline-flex;align-items:center;gap:.5rem;padding:.95rem 2.2rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.16);color:#ffffffd1;border-radius:14px;font-weight:600;font-size:1rem;text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .28s ease}.btn-ghost-hero:hover{color:#fff;text-decoration:none;background:#ffffff1c;border-color:#ffffff47}.hero-stats{display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap}.hero-stat{text-align:center}.hero-stat strong{display:block;font-size:1.75rem;font-weight:800;color:#fff;letter-spacing:-.02em}.hero-stat span{font-size:.78rem;color:#c4b5fda6;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.hero-stat-divider{width:1px;height:40px;background:#ffffff1a}.features-section{padding:7rem 2rem;text-align:center;background:#faf9ff}.section-title{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;color:#0f0a1e;line-height:1.16;margin-bottom:1rem;letter-spacing:-.025em}.section-subtitle{font-size:1.05rem;color:#6b7280;max-width:500px;margin:0 auto 4rem;line-height:1.75}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.5rem;max-width:1100px;margin:0 auto;text-align:left}.feature-card{background:#fff;padding:2rem;border-radius:1.5rem;border:1px solid #ede9fe;box-shadow:0 2px 12px #7c3aed0d;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;animation:fadeUp .5s ease both;animation-delay:var(--delay, 0s)}.feature-card:hover{transform:translateY(-7px);box-shadow:0 20px 48px #7c3aed21;border-color:#c4b5fd}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.feature-icon-bg{width:54px;height:54px;background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-radius:16px;display:flex;align-items:center;justify-content:center;color:#7c3aed;margin-bottom:1.25rem;box-shadow:0 4px 12px #7c3aed1f;transition:transform .22s ease}.feature-card:hover .feature-icon-bg{transform:scale(1.08) rotate(-3deg)}.feature-card h3{font-size:1rem;font-weight:700;color:#0f0a1e;margin-bottom:.5rem}.feature-card p{font-size:.88rem;color:#6b7280;line-height:1.72}.cta-section{padding:6rem 2rem;background:#faf9ff}.cta-card{position:relative;max-width:680px;margin:0 auto;background:linear-gradient(148deg,#130d30,#1e0f52,#2d1070);border-radius:2.25rem;padding:5rem 3rem;text-align:center;overflow:hidden;box-shadow:0 40px 90px #6d28d961;border:1px solid rgba(167,139,250,.15)}.cta-orb{position:absolute;width:450px;height:450px;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.38) 0%,transparent 70%);top:-120px;left:-100px;filter:blur(70px);pointer-events:none}.cta-card h2{font-size:2.5rem;font-weight:800;color:#fff;margin-bottom:.75rem;position:relative;letter-spacing:-.025em}.cta-card p{color:#c4b5fdbf;font-size:1.05rem;margin-bottom:2.25rem;position:relative}@media(max-width:640px){.hero-section{padding:5rem 1.25rem 4rem;min-height:auto}.hero-subtitle{font-size:1rem}.features-section,.cta-section{padding:4.5rem 1.25rem}.cta-card{padding:3rem 1.75rem;border-radius:1.5rem}.cta-card h2{font-size:1.9rem}.hero-actions{flex-direction:column;align-items:center}.btn-primary-hero,.btn-ghost-hero{width:100%;justify-content:center}.floating-badge{display:none}.hero-stats{gap:1.25rem}}.spinner{border-radius:50%;animation:spin .85s linear infinite;margin:0 auto;flex-shrink:0}.spinner--md{width:40px;height:40px;border:3px solid rgba(109,40,217,.15);border-top-color:var(--primary-color);margin:2rem auto}.spinner--sm{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;display:inline-block}.format-grid-section{width:100%;max-width:960px;padding:0 1rem}.format-grid-header{text-align:center;margin-bottom:2rem}.format-grid-header h2{font-size:1.5rem;font-weight:700;color:#0f0a1e;margin-bottom:.4rem}.format-grid-header p{font-size:.9rem;color:#6b7280}.format-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.875rem}.format-card{display:flex;align-items:center;gap:.75rem;padding:1rem 1.125rem;background:#fff;border:1.5px solid #f0ebff;border-radius:1rem;text-decoration:none;transition:all .2s ease;position:relative;overflow:hidden}.format-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent);opacity:0;transition:opacity .2s}.format-card:hover{text-decoration:none;border-color:var(--accent);transform:translateY(-3px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 20%,transparent)}.format-card:hover:before{opacity:1}.format-card__from,.format-card__to{position:relative}.format-badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:3px 8px;border-radius:5px;background:color-mix(in srgb,var(--c) 12%,white);color:var(--c);border:1px solid color-mix(in srgb,var(--c) 25%,transparent)}.format-badge--to{background:color-mix(in srgb,var(--c) 18%,white);border-color:color-mix(in srgb,var(--c) 35%,transparent)}.format-card__arrow{color:#9ca3af;flex-shrink:0;position:relative;transition:transform .2s,color .2s}.format-card:hover .format-card__arrow{color:var(--accent);transform:translate(3px)}.format-card__label{font-size:.82rem;font-weight:600;color:#374151;margin-left:auto;position:relative}@media(max-width:600px){.format-grid{grid-template-columns:1fr 1fr;gap:.625rem}.format-card{padding:.75rem}.format-card__label{display:none}}.file-type-icon-container{position:relative;width:52px;height:44px;flex-shrink:0}.file-type-icon-folder{width:100%;height:100%;background-color:color-mix(in srgb,var(--folder-color, #6B7280) 15%,transparent);border-radius:6px;position:relative}.file-type-icon-folder:before{content:"";position:absolute;top:-4px;left:10px;width:20px;height:8px;background-color:color-mix(in srgb,var(--folder-color, #6B7280) 15%,transparent);border-top-left-radius:4px;border-top-right-radius:4px}.file-type-icon-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--folder-color, #6B7280);font-size:1.3rem;display:flex}.file-type-format-tag{position:absolute;bottom:-6px;left:50%;transform:translate(-50%);color:#fff;font-size:.6rem;font-weight:700;padding:2px 5px;border-radius:4px;white-space:nowrap;letter-spacing:.03em}.history-col-icon{width:72px}.history-col-thumb{width:90px}.history-col-action{width:120px;text-align:right}.history-icon-wrap{display:inline-block}.history-icon-wrap--clickable{cursor:pointer;transition:transform .15s,filter .15s}.history-icon-wrap--clickable:hover{transform:scale(1.08);filter:brightness(1.1)}.history-thumb{width:68px;height:50px;object-fit:cover;border-radius:6px;border:1px solid var(--border);cursor:pointer;transition:transform .15s,box-shadow .15s;display:block}.history-thumb:hover{transform:scale(1.06);box-shadow:0 4px 14px #00000026}.history-media-play{width:50px;height:50px;border-radius:8px;border:1px solid var(--border);background:#f9fafb;font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.history-media-play:hover{background:#ede9fe;transform:scale(1.06)}.btn-download-table{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .85rem;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;border:1.5px solid var(--purple, #6d28d9);background:var(--purple, #6d28d9);color:#fff;transition:background .15s,border-color .15s;white-space:nowrap}.btn-download-table:hover{background:var(--purple-dark, #5b21b6);border-color:var(--purple-dark, #5b21b6)}.preview-overlay{position:fixed;inset:0;background:#000000c7;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.preview-modal{background:#fff;border-radius:16px;box-shadow:0 24px 64px #00000059;max-width:880px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .18s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid #e5e7eb;gap:1rem}.preview-filename{font-weight:600;font-size:.9rem;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.preview-download-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#f3f4f6;color:#374151;text-decoration:none;transition:background .15s}.preview-download-btn:hover{background:#e5e7eb}.preview-close-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#f3f4f6;color:#374151;border:none;cursor:pointer;transition:background .15s}.preview-close-btn:hover{background:#fee2e2;color:#dc2626}.preview-body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#f9fafb;min-height:200px}.preview-image{max-width:100%;max-height:72vh;object-fit:contain;border-radius:8px;box-shadow:0 4px 24px #0000001f}.preview-video{max-width:100%;max-height:72vh;border-radius:8px}.preview-audio-wrapper{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem}.preview-audio-icon{font-size:4rem}.preview-audio-name{font-weight:600;font-size:.95rem;color:#374151;text-align:center}.preview-audio{width:100%;max-width:400px}@media(max-width:640px){.history-col-thumb{display:none}.history-col-action{width:90px}.preview-modal{border-radius:12px}}:root{--purple: #7c3aed;--purple-dark: #6d28d9;--purple-deep: #4c1d95;--purple-mid: #8b5cf6;--purple-light: #ede9fe;--purple-xlight: #f5f3ff;--purple-glow: rgba(124,58,237,.18);--indigo: #4f46e5;--text: #0f0a1e;--text-2: #64748b;--text-3: #94a3b8;--border: #e2e8f0;--border-soft: #ede9fe;--surface: #ffffff;--bg: #f8f7ff;--bg-2: #f1f0fa;--success: #059669;--success-bg: #d1fae5;--success-border:#a7f3d0;--error: #dc2626;--error-bg: #fef2f2;--error-border: #fecaca;--warning-bg: #fffbeb;--warning: #92400e;--sh-xs: 0 1px 2px rgba(0,0,0,.05);--sh-sm: 0 2px 8px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--sh-md: 0 4px 16px rgba(0,0,0,.08), 0 2px 4px rgba(0,0,0,.04);--sh-lg: 0 12px 32px rgba(0,0,0,.09), 0 4px 8px rgba(0,0,0,.04);--sh-xl: 0 24px 56px rgba(0,0,0,.12), 0 8px 16px rgba(0,0,0,.06);--sh-purple: 0 8px 28px rgba(124,58,237,.28);--sh-purple-lg: 0 16px 48px rgba(124,58,237,.35);--r-xs: .375rem;--r-sm: .625rem;--r-md: .875rem;--r-lg: 1.25rem;--r-xl: 1.75rem;--r-2xl: 2.25rem;--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--t-fast: .15s;--t-base: .22s;--t-slow: .35s}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:15px;scroll-behavior:smooth}body{font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);overflow-x:hidden;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root,.app-container{display:flex;flex-direction:column;min-height:100vh}main{flex-grow:1;display:flex;flex-direction:column;align-items:center;padding:3rem 1rem}a{color:var(--purple);font-weight:500;text-decoration:none;transition:color var(--t-fast)}a:hover{color:var(--purple-dark);text-decoration:underline}img,svg{max-width:100%}.header{display:flex;justify-content:space-between;align-items:center;padding:0 2rem;height:62px;background:#ffffffe6;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(124,58,237,.08);position:sticky;top:0;z-index:200;box-shadow:0 1px #7c3aed0f,0 4px 20px #4c1d950a}.logo{font-size:1.2rem;font-weight:800;color:var(--text);display:flex;align-items:center;gap:8px;text-decoration:none;letter-spacing:-.02em}.logo:hover{text-decoration:none}.logo-image{width:32px;height:32px;object-fit:contain}.logo-text{background:linear-gradient(135deg,var(--purple),var(--indigo));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.main-nav{display:flex;align-items:center;gap:.15rem}.main-nav a{color:var(--text-2);font-weight:500;font-size:.875rem;padding:.4rem .8rem;border-radius:var(--r-sm);transition:all var(--t-base);text-decoration:none}.main-nav a:hover,.main-nav a.active{color:var(--purple);background:var(--purple-light);text-decoration:none}.nav-divider{width:1px;height:20px;background:#7c3aed1a;margin:0 .5rem}.main-nav .btn-login{border:none;background:transparent;color:var(--text-2);font-weight:500;font-size:.875rem;padding:.4rem .8rem;border-radius:var(--r-sm);cursor:pointer;transition:all var(--t-base);font-family:inherit}.main-nav .btn-login:hover{color:var(--purple);background:var(--purple-light)}.main-nav .btn-signup{background:linear-gradient(135deg,var(--purple),var(--indigo));color:#fff;border:none;padding:.48rem 1.1rem;border-radius:var(--r-sm);font-size:.875rem;font-weight:700;cursor:pointer;text-decoration:none;transition:all var(--t-base);font-family:inherit;box-shadow:0 2px 10px #7c3aed4d;display:inline-block}.main-nav .btn-signup:hover{text-decoration:none;color:#fff;transform:translateY(-1px);box-shadow:0 4px 16px #7c3aed66}.btn-logout{background:none;border:none;color:var(--text-2);font-size:.875rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:var(--r-sm);transition:all var(--t-base);font-family:inherit}.btn-logout:hover{color:var(--error);background:var(--error-bg)}.mobile-nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:.4rem;border-radius:var(--r-sm);z-index:20}.mobile-nav-toggle .icon-bar{display:block;width:22px;height:2px;background:var(--text);margin:5px 0;border-radius:2px;transition:all .28s}.status-badge-wrapper{display:flex;align-items:center}.status-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;padding:.3rem .75rem;border-radius:99px;border:1px solid;cursor:pointer;transition:all var(--t-base)}.status-badge.online{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.status-badge.offline{background:var(--error-bg);color:#991b1b;border-color:var(--error-border)}.status-dot{width:7px;height:7px;border-radius:50%}.status-dot.online{background:#10b981;box-shadow:0 0 0 2px #10b98140}.status-dot.offline{background:var(--error)}.footer{text-align:center;padding:1.25rem 2rem;background:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid rgba(124,58,237,.06);color:var(--text-3);font-size:.82rem}.footer nav{margin-top:.4rem;display:flex;justify-content:center;gap:1.5rem}.footer nav a{color:var(--text-3);font-weight:400}.footer nav a:hover{color:var(--purple);text-decoration:none}.auth-form-container{width:100%;max-width:420px;background:var(--surface);padding:2.75rem 2.5rem;border-radius:var(--r-xl);border:1px solid var(--border-soft);box-shadow:var(--sh-xl),0 0 0 1px #7c3aed0a;text-align:center}.auth-form-container h2{font-size:1.8rem;font-weight:800;letter-spacing:-.025em;margin-bottom:.4rem;background:linear-gradient(135deg,var(--purple),var(--indigo));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-subtitle{color:var(--text-2);font-size:.9rem;margin-bottom:2rem}.auth-form{display:flex;flex-direction:column;gap:1rem;text-align:left}.auth-switch{margin-top:1.5rem;color:var(--text-2);font-size:.875rem}.password-field{position:relative;display:flex;align-items:center}.password-field .custom-input{padding-right:2.8rem}.password-toggle-icon{position:absolute;right:.875rem;top:50%;transform:translateY(-50%);cursor:pointer;color:var(--text-3);display:flex;transition:color var(--t-fast)}.password-toggle-icon:hover{color:var(--purple)}.input-wrapper{position:relative;width:100%;display:flex;flex-direction:column}.custom-input{width:100%;font-size:.92rem;padding:.78rem .95rem;border-radius:var(--r-md);border:1.5px solid var(--border);background:#fafafa;color:var(--text);transition:border-color var(--t-base),box-shadow var(--t-base),background var(--t-base);font-family:inherit}.custom-input::placeholder{color:var(--text-3)}.custom-input:hover{border-color:#c4b5fd;background:#fff}.custom-input:focus{outline:none;border-color:var(--purple);background:#fff;box-shadow:0 0 0 3.5px #7c3aed1f}.custom-input.has-icon{padding-left:2.6rem}.input-icon{position:absolute;top:50%;left:.9rem;transform:translateY(-50%);color:var(--text-3);pointer-events:none;font-size:1rem;display:flex}.auth-button,.convert-button,.download-button,.reset-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.95rem;padding:.85rem 1.25rem;border-radius:var(--r-md);border:none;font-weight:700;cursor:pointer;transition:all var(--t-base) var(--ease);font-family:inherit;letter-spacing:.01em}.auth-button,.reset-button,.convert-button{background:linear-gradient(135deg,var(--purple),var(--indigo));color:#fff;box-shadow:0 2px 10px #7c3aed4d}.auth-button:hover,.reset-button:hover,.convert-button:hover{transform:translateY(-2px);box-shadow:var(--sh-purple-lg)}.auth-button:active,.convert-button:active{transform:translateY(0)}.auth-button:disabled,.convert-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.download-button{background:linear-gradient(135deg,#059669,#047857);color:#fff;box-shadow:0 2px 10px #0596694d}.download-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #05966966}.convert-another-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1.25rem;background:transparent;border:1.5px solid var(--border);border-radius:var(--r-md);color:var(--text-2);font-size:.9rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all var(--t-base)}.convert-another-button:hover{border-color:var(--purple);color:var(--purple);background:var(--purple-xlight)}.error-message{color:var(--error);font-size:.85rem;background:var(--error-bg);border-radius:var(--r-sm);padding:.65rem .9rem;border:1px solid var(--error-border)}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1.25rem;border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--surface);color:var(--text);font-size:.92rem;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;transition:border-color var(--t-base),box-shadow var(--t-base),background var(--t-base)}.btn-google:hover{border-color:#c4b5fd;background:#fdfcff;box-shadow:0 0 0 3.5px #7c3aed14;text-decoration:none;color:var(--text)}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:1.1rem 0;color:var(--text-3);font-size:.82rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.dashboard-page{display:flex;flex-direction:column;align-items:center;gap:3.5rem;width:100%}.dashboard-container{width:100%;max-width:580px;background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border-soft);box-shadow:var(--sh-xl)}.uploader-card{padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px}.conversion-hint{display:flex;align-items:center;gap:.5rem;width:100%;background:var(--purple-light);color:var(--purple-dark);font-size:.84rem;font-weight:500;padding:.6rem 1rem;border-radius:var(--r-sm);border:1px solid rgba(124,58,237,.15);margin-bottom:1.25rem}.dropzone{border:2px dashed #d1c4fe;border-radius:var(--r-lg);width:100%;cursor:pointer;transition:all var(--t-base) var(--ease);background:var(--bg)}.dropzone:hover,.dropzone.active{border-color:var(--purple);background:var(--purple-xlight);box-shadow:0 0 0 5px #7c3aed12}.dropzone-inner{padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center}.dropzone-icon{width:76px;height:76px;background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-radius:22px;display:flex;align-items:center;justify-content:center;color:var(--purple);margin-bottom:1.5rem;transition:transform var(--t-base),background var(--t-base);box-shadow:0 4px 16px #7c3aed26}.dropzone:hover .dropzone-icon,.dropzone.active .dropzone-icon{background:linear-gradient(135deg,#ddd6fe,#c4b5fd);transform:scale(1.05) rotate(-2deg)}.dropzone-inner h2{font-size:1.2rem;font-weight:700;color:var(--text);margin-bottom:.35rem}.dropzone-inner p{font-size:.9rem;color:var(--text-2)}.browse-link{color:var(--purple);font-weight:600;text-decoration:underline;cursor:pointer}.dropzone-hint{margin-top:1rem;font-size:.78rem;color:var(--text-3);background:#fff;padding:3px 14px;border-radius:99px;border:1px solid var(--border)}.file-preview-container{display:flex;flex-direction:column;align-items:center;gap:1.25rem;width:100%}.file-preview-header{display:flex;align-items:center;width:100%;background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r-md);padding:.875rem 1rem;gap:.75rem}.file-icon{color:var(--text-2);display:flex}.file-info{display:flex;flex-direction:column;flex:1;min-width:0}.file-info strong{color:var(--text);font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-info span{font-size:.78rem;color:var(--text-3);margin-top:2px}.remove-btn{background:none;border:none;color:var(--text-3);cursor:pointer;padding:.35rem;border-radius:var(--r-sm);display:flex;transition:all var(--t-fast);flex-shrink:0}.remove-btn:hover{color:var(--error);background:var(--error-bg)}.remove-btn:disabled{opacity:.35;cursor:not-allowed}.upload-progress{width:100%;text-align:center}.progress-bar-container{width:100%;height:38px;background:var(--purple-light);border-radius:99px;overflow:hidden;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,var(--purple),var(--indigo));border-radius:99px;transition:width .3s ease}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--purple-deep);font-weight:700;font-size:.85rem}.progress-label{font-size:.82rem;color:var(--text-2);margin-top:.6rem}.conversion-form{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%}.conversion-form .convert-button{width:auto;padding:.8rem 1.5rem;flex-shrink:0}.format-selector{display:flex;align-items:center;gap:.6rem}.format-selector label{font-weight:600;color:var(--text-2);font-size:.85rem;flex-shrink:0}.select-wrapper{position:relative}.format-selector select{-webkit-appearance:none;appearance:none;background:#fff;border:1.5px solid var(--border);border-radius:var(--r-sm);padding:.68rem 2.4rem .68rem .9rem;font-size:.92rem;font-weight:600;color:var(--text);cursor:pointer;transition:all var(--t-base);min-width:100px;font-family:inherit}.format-selector select:hover{border-color:var(--purple-mid)}.format-selector select:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3.5px #7c3aed1a}.select-icon{position:absolute;top:50%;right:.7rem;transform:translateY(-50%);color:var(--text-3);pointer-events:none}.job-status-card{padding:3rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.job-status-card h3{font-size:1.35rem;font-weight:800;letter-spacing:-.01em}.job-status-card p{color:var(--text-2);font-size:.9rem}.status-icon{display:block;margin-bottom:.25rem}.status-icon.success{color:var(--success)}.status-icon.error{color:var(--error)}.status-icon.pending{color:#d97706}.status-leave-note{font-size:.8rem!important;color:var(--text-3)!important;background:var(--purple-xlight);border-radius:var(--r-sm);padding:.4rem .85rem;border:1px solid rgba(124,58,237,.1);margin-top:-.25rem}.spinner{border-radius:50%;animation:spin .75s linear infinite;flex-shrink:0}.spinner--md{width:44px;height:44px;border:3px solid rgba(124,58,237,.1);border-top-color:var(--purple);margin:1.5rem auto}.spinner--sm{width:15px;height:15px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.formats-page-wrapper{width:100%;max-width:1100px}.formats-page-hero{text-align:center;margin-bottom:3rem;padding:0 1rem}.formats-page-hero h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;color:var(--text);margin:.75rem 0;letter-spacing:-.025em}.formats-page-hero p{color:var(--text-2);font-size:1rem}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.category-card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border-soft);box-shadow:var(--sh-sm);overflow:hidden;transition:transform var(--t-base),box-shadow var(--t-base)}.category-card:hover{transform:translateY(-3px);box-shadow:var(--sh-md)}.category-header{display:flex;align-items:center;gap:.75rem;background:linear-gradient(135deg,var(--purple),var(--indigo));color:#fff;padding:1rem 1.25rem}.category-icon{font-size:1.3rem}.category-header h2{font-size:.95rem;font-weight:700;margin:0}.category-body{padding:1.25rem;display:flex;flex-wrap:wrap;gap:.5rem}.format-tag{background:var(--purple-light);border:1px solid rgba(124,58,237,.15);color:var(--purple-dark);font-weight:600;font-size:.78rem;padding:.28rem .7rem;border-radius:99px;transition:background var(--t-fast)}.format-tag:hover{background:#ddd6fe}.history-page-wrapper{width:100%;max-width:980px}.history-hero{text-align:center;margin-bottom:2rem}.history-hero h1{font-size:2rem;font-weight:800;letter-spacing:-.025em}.history-hero p{color:var(--text-2);margin-top:.4rem}.history-card{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border-soft);box-shadow:var(--sh-xl);overflow:hidden}.history-table{width:100%;border-collapse:collapse}.history-table th{text-align:left;padding:.8rem 1.25rem;color:var(--text-3);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border);background:var(--bg);font-weight:700}.history-table td{padding:1rem 1.25rem;border-bottom:1px solid #f1f0fa;vertical-align:middle}.history-table tr:last-child td{border-bottom:none}.history-table tr:hover td{background:var(--purple-xlight)}.history-table tr{transition:background var(--t-fast)}.filename{font-weight:600;font-size:.9rem;color:var(--text)}.date{font-size:.78rem;color:var(--text-3);margin-top:2px}.history-status-badge{display:inline-block;margin-top:.35rem;padding:.18rem .6rem;border-radius:99px;font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.status-badge--done{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.status-badge--failed{background:var(--error-bg);color:#991b1b;border:1px solid var(--error-border)}.status-badge--pending{background:var(--warning-bg);color:var(--warning);border:1px solid #fde68a}.history-failed-icon{color:var(--error);display:flex}.history-pending-icon{color:#d97706;display:flex}.section-label{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);background:var(--purple-light);padding:4px 14px;border-radius:99px;margin-bottom:1rem}.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.6rem;z-index:9999;max-width:360px;width:calc(100vw - 3rem)}.toast{display:flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border-radius:var(--r-md);box-shadow:var(--sh-lg);font-size:.88rem;font-weight:500;animation:toast-in .22s var(--ease-out);border:1px solid}.toast--success{background:#f0fdf4;color:#14532d;border-color:var(--success-border)}.toast--error{background:var(--error-bg);color:#7f1d1d;border-color:var(--error-border)}.toast--clickable:hover{filter:brightness(.97)}.toast-icon{display:flex;flex-shrink:0}.toast-msg{flex:1;line-height:1.4}.toast-close{background:none;border:none;cursor:pointer;display:flex;padding:.2rem;opacity:.4;transition:opacity var(--t-fast);color:inherit;flex-shrink:0}.toast-close:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.history-col-preview{width:64px}.history-col-format{width:90px}.history-col-action{width:130px;text-align:right}.history-format-tag{display:inline-block;background:var(--purple-light);color:var(--purple-dark);border:1px solid rgba(124,58,237,.15);font-size:.74rem;font-weight:700;padding:.2rem .65rem;border-radius:99px;letter-spacing:.04em}@media(max-width:768px){.mobile-nav-toggle{display:block}.header{padding:0 1rem}.header .main-nav{position:absolute;top:61px;left:0;width:100%;background:#fff;border-top:1px solid rgba(124,58,237,.07);border-bottom:1px solid rgba(124,58,237,.07);border-radius:0 0 var(--r-lg) var(--r-lg);flex-direction:column;align-items:stretch;padding:.6rem .85rem 1rem;gap:.15rem;transform:translateY(-8px);opacity:0;visibility:hidden;transition:transform .22s var(--ease),opacity .22s,visibility .22s;box-shadow:0 16px 40px #4c1d951f,0 4px 12px #0000000f}.header .main-nav.is-open{transform:translateY(0);opacity:1;visibility:visible}.main-nav a,.main-nav .btn-login,.main-nav .btn-logout{width:100%;padding:.8rem .9rem;border-radius:var(--r-sm);font-size:.95rem}.main-nav .nav-divider{width:100%;height:1px;margin:.45rem 0 .55rem;background:#7c3aed14}.main-nav .btn-signup{width:100%;text-align:center;padding:.85rem;margin-top:.35rem;font-size:.95rem}.status-badge-wrapper{width:100%;padding:.3rem .1rem}.status-badge{width:100%;justify-content:flex-start;padding:.6rem .9rem}}@media(max-width:600px){main{padding:1.75rem .875rem}.auth-form-container{padding:2rem 1.5rem;border-radius:var(--r-lg)}.uploader-card{padding:1.5rem 1.25rem}.dashboard-container{border-radius:var(--r-lg)}.history-table{display:block;overflow-x:auto}.conversion-form{flex-direction:column}.conversion-form .convert-button{width:100%}.categories-grid{grid-template-columns:1fr}.job-status-card{padding:2rem 1.25rem}.toast-container{bottom:1rem;right:.75rem;left:.75rem;width:auto;max-width:none}.history-col-format{display:none}.history-col-action{width:100px}.history-table th,.history-table td{padding:.75rem}}h1,h2,h3,h4,h5,h6,p,span,label,li,td,th,div,section,header,footer,nav,main,article,aside{cursor:default}a,button,[role=button],.format-card,.status-badge,.feature-card,.category-card,.remove-btn,.dropzone,select,input[type=checkbox],input[type=radio]{cursor:pointer}input[type=text],input[type=password],input[type=email],input[type=search],textarea{cursor:text}
