/* ============================================================
   KONVERTIO — Lodgify-inspired redesign
   Palette: sage green bg, yellow-green accents, soft cards
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root {
  /* ── Brand palette (Lodgify-style) ── */
  --bg:         #eef4f0;      /* sage green page background */
  --surface:    #ffffff;
  --surface-2:  #f4f9f6;      /* slightly tinted card bg */
  --accent:     #c8e44a;      /* yellow-green primary accent */
  --accent-dk:  #a8c435;
  --accent-lt:  #f2fadc;
  --primary:    #2d6a4f;      /* deep green for text/icons */
  --primary-dk: #1b4332;
  --primary-lt: #d8f3dc;
  --cta:        #c8e44a;      /* CTA button */
  --cta-text:   #1b4332;      /* text ON cta button */
  --red:        #e53e3e;
  --amber:      #d97706;
  --text:       #1a2e22;      /* very dark green-black */
  --muted:      #52735e;      /* medium green-gray */
  --muted-lt:   #8aab94;
  --border:     #d4e6da;
  --border-dk:  #b8d4bf;

  /* ── Shape ── */
  --radius-xs:  6px;
  --radius-sm:  10px;
  --radius:     14px;
  --radius-lg:  18px;
  --radius-xl:  24px;

  /* ── Shadow — very soft, Lodgify-style ── */
  --shadow-xs:  0 1px 3px rgba(30,70,40,.06);
  --shadow-sm:  0 2px 8px rgba(30,70,40,.08);
  --shadow:     0 4px 16px rgba(30,70,40,.10);
  --shadow-lg:  0 8px 32px rgba(30,70,40,.12);

  --font:   'Inter', -apple-system, sans-serif;
  --font-d: 'Plus Jakarta Sans', 'Inter', sans-serif;
  --tr:     .18s ease;
}

html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}
body{font-family:var(--font);background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.6}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{font-family:inherit}
.hidden{display:none!important}
.container{max-width:960px;margin:0 auto;padding:0 24px}

/* ── BANNER ── */
.banner{padding:11px 20px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.banner--warn{background:#fef9c3;border-bottom:1px solid #fde047;color:#713f12}
.banner--ok{background:var(--primary-lt);border-bottom:1px solid var(--border);color:var(--primary-dk)}
.banner code{background:rgba(0,0,0,.07);padding:2px 7px;border-radius:4px;font-size:11px}
.banner a{color:var(--primary);font-weight:600;text-decoration:underline}

/* ── NAV ── */
.nav{position:sticky;top:0;z-index:200;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs)}
.nav-inner{max-width:960px;margin:0 auto;padding:0 24px;height:58px;display:flex;align-items:center;justify-content:space-between}
.logo{font-family:var(--font-d);font-size:20px;font-weight:800;letter-spacing:-.4px;color:var(--primary)}
.logo span{color:var(--accent-dk)}

.hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:36px;height:36px;padding:6px;background:none;border:none;cursor:pointer;border-radius:8px}
.hamburger span{display:block;height:2px;background:var(--text);border-radius:2px;transition:all .25s;transform-origin:center}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.nav-links{display:none;gap:4px;align-items:center}
.nav-links.mobile-open{display:flex;flex-direction:column;align-items:flex-start;position:absolute;top:58px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);padding:16px 24px 20px;gap:12px;box-shadow:var(--shadow)}
.nav-link{font-size:14px;font-weight:500;color:var(--muted);padding:7px 12px;border-radius:var(--radius-sm);transition:all var(--tr)}
.nav-link:hover{color:var(--text);background:var(--surface-2)}
.nav-btn{background:var(--accent);color:var(--cta-text);padding:8px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:700;transition:background var(--tr)}
.nav-btn:hover{background:var(--accent-dk)}
.nav-cta-item{width:100%}
.nav-cta-item .nav-btn{display:block;text-align:center;padding:12px;width:100%;font-size:15px}

@media(min-width:768px){
  .hamburger{display:none}
  .nav-links{display:flex!important}
  .nav-links.mobile-open{position:static;box-shadow:none;border:none;padding:0;flex-direction:row}
  .nav-cta-item{width:auto}
  .nav-cta-item .nav-btn{display:inline-block;padding:8px 18px;width:auto;font-size:14px}
}

/* ── Nav Dropdown ── */
.nav-has-dropdown{position:relative}
.nav-dropdown-toggle{display:flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--muted);padding:7px 12px;border-radius:var(--radius-sm);font-family:inherit;transition:all var(--tr)}
.nav-dropdown-toggle:hover,.nav-dropdown-toggle.active{color:var(--text);background:var(--surface-2)}
.nav-dropdown-toggle svg{transition:transform .2s}
.nav-dropdown-toggle.active svg{transform:rotate(180deg)}

.nav-dropdown{display:none;position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:6px;min-width:288px;z-index:300}
.nav-dropdown::before{content:'';position:absolute;top:-6px;left:50%;width:12px;height:12px;background:var(--surface);border-left:1px solid var(--border);border-top:1px solid var(--border);transform:translateX(-50%) rotate(45deg)}
.nav-dropdown.open{display:block;animation:dropFade .15s ease}
@keyframes dropFade{from{opacity:0;transform:translateX(-50%) translateY(-4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

.nav-dropdown-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:var(--radius-sm);transition:background var(--tr);color:var(--text)}
.nav-dropdown-item:hover,.nav-dropdown-item--active{background:var(--accent-lt)}
.nav-dropdown-item--active strong{color:var(--primary)}
.ddi-icon{font-size:18px;flex-shrink:0;width:26px;text-align:center}
.ddi-text{display:flex;flex-direction:column;gap:1px}
.ddi-text strong{font-size:13px;font-weight:600;color:var(--text)}
.ddi-text span{font-size:11px;color:var(--muted)}

@media(max-width:767px){
  .nav-dropdown{position:static;transform:none;box-shadow:none;border:none;border-radius:0;padding:0;min-width:auto;background:transparent;margin-left:8px;border-left:2px solid var(--border);padding-left:12px}
  .nav-dropdown::before{display:none}
  .nav-dropdown.open{display:block;animation:none}
  .nav-has-dropdown{width:100%}
  .nav-dropdown-toggle{width:100%;justify-content:space-between;font-size:15px;color:var(--text);font-weight:600}
}

/* ── BREADCRUMB ── */
.breadcrumb{max-width:960px;margin:16px auto 0;padding:0 24px;font-size:12px;color:var(--muted-lt);display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.breadcrumb a{color:var(--muted-lt);transition:color var(--tr)}
.breadcrumb a:hover{color:var(--primary)}
.breadcrumb span:last-child{color:var(--muted);font-weight:500}
.sep{color:var(--border-dk)}

/* ── HERO ── */
.hero{padding:32px 0 56px}
.hero-inner{max-width:700px;margin:0 auto;padding:0 24px}
.hero-text{text-align:center;margin-bottom:32px}
.hero-text h1{font-family:var(--font-d);font-size:clamp(26px,6vw,44px);font-weight:800;letter-spacing:-.6px;margin-bottom:12px;line-height:1.12;color:var(--text)}
.hero-text p{font-size:15px;color:var(--muted);max-width:500px;margin:0 auto;line-height:1.7}

/* ── CONVERTER CARD ── */
.card{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow)}
.converter-card{padding:28px 24px;border:1px solid var(--border);position:relative;overflow:hidden;contain:layout style}
.converter-card::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 0% 0%,var(--accent-lt) 0%,transparent 60%);pointer-events:none;z-index:0}
.converter-card>*{position:relative;z-index:1}

/* Format row */
.format-selector-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.format-selector-group{display:flex;flex-direction:column;gap:5px;align-items:center}
.fs-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted-lt)}
.fs-badge{background:var(--primary);color:#fff;font-weight:700;font-size:15px;letter-spacing:1px;text-transform:uppercase;padding:9px 22px;border-radius:var(--radius-sm);min-width:72px;text-align:center}
.fs-select{background:var(--accent);color:var(--cta-text);font-weight:700;font-size:14px;padding:9px 30px 9px 14px;border-radius:var(--radius-sm);border:none;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%231b4332' d='M2 4l4 4 4-4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
.fs-select option{background:#1e3a2a;color:#fff}
.arrow{width:26px;height:26px;color:var(--muted-lt);flex-shrink:0}

/* Quality row */
.quality-row{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap;justify-content:center}
.quality-label{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap}
.quality-btns{display:flex;gap:6px;flex-wrap:wrap}
.qbtn{padding:6px 13px;border-radius:99px;border:1.5px solid var(--border);background:var(--surface);font-size:12px;font-weight:600;cursor:pointer;color:var(--muted);transition:all var(--tr)}
.qbtn:hover{border-color:var(--primary);color:var(--primary)}
.qbtn--active{background:var(--primary);color:#fff;border-color:var(--primary)}

/* Options grid */
.options-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:20px}
@media(min-width:540px){.options-grid{grid-template-columns:1fr 1fr}}
.option-group{display:flex;flex-direction:column;gap:6px}
.opt-label{font-size:11px;font-weight:700;color:var(--muted-lt);text-transform:uppercase;letter-spacing:.6px}
.opt-select{padding:9px 12px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);font-size:13px;font-family:inherit;cursor:pointer;color:var(--text);transition:border-color var(--tr)}
.opt-select:focus{outline:none;border-color:var(--primary)}

/* Drop zone */
.drop-zone{border:2px dashed var(--border-dk);border-radius:var(--radius-lg);padding:32px 20px 24px;text-align:center;background:var(--surface-2);cursor:pointer;transition:all var(--tr)}
.drop-zone.drag-over{border-color:var(--primary);background:var(--primary-lt)}
.drop-icon{margin-bottom:14px}
.drop-title{font-size:15px;font-weight:700;margin-bottom:4px;color:var(--text)}
.drop-sub{font-size:13px;color:var(--muted);margin-bottom:18px}
#fileInput{display:none}
.size-note{font-size:11px;color:var(--muted-lt);margin-top:12px;line-height:1.7}

/* File preview */
.file-preview{display:flex;align-items:center;gap:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;margin-bottom:14px}
.fp-icon,.fp-doc-icon,.fp-arc-icon,.fp-waveform{font-size:28px;flex-shrink:0}
.fp-info{flex:1;overflow:hidden}
.fp-name{font-weight:700;font-size:14px;color:var(--primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fp-meta{font-size:12px;color:var(--muted-lt);margin-top:2px}
.btn-remove-file{background:none;border:none;cursor:pointer;color:var(--red);font-size:20px;line-height:1;padding:4px 6px;border-radius:50%;transition:background var(--tr);flex-shrink:0}
.btn-remove-file:hover{background:#fee2e2}

/* Convert summary */
.convert-summary{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;color:var(--muted);margin-bottom:14px;text-align:center}
.convert-summary strong{color:var(--text)}

/* Progress */
.progress-header{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;margin-bottom:14px;justify-content:center;flex-wrap:wrap}
.progress-filename{color:var(--primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}
.progress-target,.prog-arrow{color:var(--muted)}
.progress-track-wrap{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.progress-track{flex:1;height:8px;background:var(--border);border-radius:99px;overflow:hidden}
.progress-fill{height:100%;width:0%;background:var(--accent);border-radius:99px;transition:width .4s ease;will-change:width}
.progress-pct{font-size:13px;font-weight:700;color:var(--primary);min-width:40px;text-align:right}
.progress-msg{font-size:13px;color:var(--muted);text-align:center;margin-bottom:16px}
.progress-steps{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.ps{font-size:11px;padding:4px 11px;border-radius:99px;background:var(--border);color:var(--muted);transition:all var(--tr)}
.ps.active{background:var(--primary);color:#fff}
.ps.done{background:var(--primary-lt);color:var(--primary)}

/* Done / Error */
.done-anim,.done-icon-wrap{font-size:48px;text-align:center;margin-bottom:10px}
.done-title{font-family:var(--font-d);font-size:20px;font-weight:800;text-align:center;margin-bottom:6px;color:var(--text)}
.done-meta,.done-sub{font-size:13px;color:var(--muted);text-align:center;margin-bottom:22px}
.error-icon{font-size:48px;text-align:center;margin-bottom:8px}
.error-title{font-size:18px;font-weight:700;text-align:center;color:var(--red);margin-bottom:8px}
.error-msg{font-size:13px;color:var(--muted);text-align:center;margin-bottom:20px;background:#fee2e2;padding:12px;border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--primary);color:#fff;padding:13px 28px;border-radius:var(--radius-sm);font-size:15px;font-weight:700;border:none;cursor:pointer;transition:all var(--tr)}
.btn-primary:hover{background:var(--primary-dk);transform:translateY(-1px)}

.btn-convert{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--accent);color:var(--cta-text);padding:15px;border-radius:var(--radius-sm);font-size:16px;font-weight:700;border:none;cursor:pointer;transition:all var(--tr);margin-bottom:10px}
.btn-convert:hover{background:var(--accent-dk);transform:translateY(-1px)}

.btn-download{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--primary);color:#fff;padding:15px;border-radius:var(--radius-sm);font-size:16px;font-weight:700;transition:all var(--tr);margin-bottom:10px}
.btn-download:hover{background:var(--primary-dk);transform:translateY(-1px)}

.btn-ghost{display:block;width:100%;background:none;border:1.5px solid var(--border-dk);border-radius:var(--radius-sm);padding:11px;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;transition:all var(--tr)}
.btn-ghost:hover{border-color:var(--primary);color:var(--primary);background:var(--surface-2)}

/* ── CLOUD BUTTONS (upload area) ── */
.cloud-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px}
.cloud-btn{border:1.5px solid var(--border-dk);background:var(--surface);border-radius:var(--radius-sm);padding:8px 14px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;color:var(--muted);transition:all var(--tr);flex:1 1 auto;justify-content:center}
.cloud-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}

/* ── SECTIONS ── */
.section{padding:52px 0}
.section:not(:first-of-type){content-visibility:auto;contain-intrinsic-size:0 400px}
.section-title{font-family:var(--font-d);font-size:clamp(20px,4vw,26px);font-weight:800;letter-spacing:-.3px;margin-bottom:24px;color:var(--text)}

/* Features */
.features-section,.formats-section,.conv-table-section{background:var(--surface)}
.features-grid{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:540px){.features-grid{grid-template-columns:1fr 1fr}}
@media(min-width:768px){.features-grid{grid-template-columns:repeat(4,1fr)}}
.feature-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;background:var(--surface-2);transition:box-shadow var(--tr)}
.feature-card:hover{box-shadow:var(--shadow)}
.feature-icon{font-size:26px;margin-bottom:10px;display:block}
.feature-card h3{font-size:14px;font-weight:700;margin-bottom:6px;color:var(--text)}
.feature-card p{font-size:13px;color:var(--muted);line-height:1.6}

/* Format cards */
.fmt-cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:640px){.fmt-cards-grid{grid-template-columns:repeat(4,1fr)}}
.fmt-info-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px;background:var(--surface-2);border-top:3px solid var(--border)}
.fmt-jpg{border-top-color:#f59e0b}.fmt-png{border-top-color:#3b82f6}.fmt-webp{border-top-color:#10b981}
.fmt-gif{border-top-color:#ec4899}.fmt-tiff{border-top-color:#8b5cf6}.fmt-bmp{border-top-color:#6b7280}
.fmt-ico{border-top-color:#f97316}.fmt-pdf{border-top-color:#ef4444}
.fic-name{font-family:var(--font-d);font-size:15px;font-weight:800;margin-bottom:4px;color:var(--text)}
.fic-type{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted-lt);margin-bottom:6px}
.fic-desc{font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:8px}
.fic-best{font-size:12px;font-weight:600;color:var(--primary)}

.formats-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:640px){.formats-grid{grid-template-columns:1fr 1fr}}
.fmt-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;background:var(--surface-2)}
.fmt-card-header{font-weight:700;font-size:13px;margin-bottom:14px;color:var(--text)}
.fmt-tags{display:flex;flex-wrap:wrap;gap:6px}
.fmt-tag{background:var(--bg);border:1px solid var(--border-dk);border-radius:var(--radius-xs);padding:4px 10px;font-size:12px;font-weight:600;color:var(--muted)}
.fmt-tag--out{display:flex;flex-direction:column;gap:1px;padding:6px 10px}
.fmt-tag-label{font-size:10px;font-weight:400;color:var(--muted-lt)}

/* How to */
.howto-section{background:var(--bg)}
.steps-row{display:flex;flex-direction:column;gap:14px}
.step-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;flex:1;transition:box-shadow var(--tr)}
.step-card:hover{box-shadow:var(--shadow)}
.step-num{width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--cta-text);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.step-card h3{font-size:14px;font-weight:700;margin-bottom:6px;color:var(--text)}
.step-card p{font-size:13px;color:var(--muted)}
.step-arrow{display:none;font-size:22px;color:var(--muted-lt)}
@media(min-width:640px){.steps-row{flex-direction:row;align-items:flex-start}.step-arrow{display:flex;align-items:center;padding-top:30px;flex-shrink:0}}

/* FAQ */
.faq-section{background:var(--surface)}
.faq-list{display:flex;flex-direction:column}
.faq-item{border-bottom:1px solid var(--border)}
.faq-item summary{padding:16px 0;font-size:15px;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;color:var(--text)}
.faq-item summary::after{content:'▾';font-size:17px;color:var(--muted-lt);transition:transform .2s;flex-shrink:0}
.faq-item[open] summary::after{transform:rotate(180deg)}
.faq-item p,.faq-item code{padding:0 0 16px;font-size:14px;color:var(--muted);line-height:1.7}
.faq-item code{background:var(--surface-2);padding:2px 6px;border-radius:4px;font-size:12px;display:inline}

/* ── STATUS SECTION ── */
.status-section{background:var(--bg)}
.status-grid{display:flex;flex-direction:column;gap:8px;max-width:800px;margin:0 auto}
.status-row{display:grid;grid-template-columns:28px 1fr auto auto auto auto;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;border-left:3px solid var(--sc,var(--border));transition:box-shadow var(--tr)}
.status-row:hover{box-shadow:var(--shadow-sm)}
.sr-emoji{font-size:16px}
.sr-name{font-size:14px;font-weight:600;color:var(--text)}
.sr-port{font-size:12px;color:var(--muted-lt);font-family:monospace;display:none}
@media(min-width:540px){.sr-port{display:block}}
.sr-engine{font-size:12px;color:var(--muted-lt);display:none}
@media(min-width:700px){.sr-engine{display:block}}
.sr-status{font-size:11px;font-weight:700;padding:3px 10px;border-radius:99px}
.sr-status--on{background:var(--primary-lt);color:var(--primary)}
.sr-status--off{background:#fee2e2;color:#b91c1c}
.sr-open{font-size:13px;font-weight:700;color:var(--primary);padding:5px 12px;border:1.5px solid var(--border-dk);border-radius:var(--radius-sm);transition:all var(--tr);white-space:nowrap}
.sr-open:hover{background:var(--accent-lt);border-color:var(--accent-dk)}
.btn-refresh{background:var(--surface);border:1.5px solid var(--border-dk);border-radius:var(--radius-sm);padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;color:var(--muted);transition:all var(--tr)}
.btn-refresh:hover{border-color:var(--primary);color:var(--primary)}

/* ── SERVICE CARDS (portal) ── */
.services-section{background:var(--bg)}
.services-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:540px){.services-grid{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.services-grid{grid-template-columns:repeat(3,1fr)}}
.service-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:22px;text-decoration:none;color:var(--text);transition:all var(--tr);position:relative;overflow:hidden}
.service-card::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 0% 0%,var(--accent-lt) 0%,transparent 55%);pointer-events:none;z-index:0;opacity:0;transition:opacity var(--tr)}
.service-card>*{position:relative;z-index:1}
.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--border-dk)}
.service-card:hover::before{opacity:1}
.service-card:hover .sc-arrow{opacity:1;transform:translateX(0)}
.sc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.sc-emoji{font-size:30px;line-height:1}
.sc-status{font-size:11px;font-weight:700;padding:3px 10px;border-radius:99px}
.sc-status--on{background:var(--primary-lt);color:var(--primary)}
.sc-status--off{background:#fee2e2;color:#b91c1c}
.sc-name{font-family:var(--font-d);font-size:17px;font-weight:800;letter-spacing:-.3px;margin-bottom:6px;color:var(--text)}
.sc-desc{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:16px;flex:1}
.sc-formats{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}
.sc-fmt{background:var(--bg);border:1px solid var(--border-dk);border-radius:var(--radius-xs);padding:3px 9px;font-size:11px;font-weight:700;color:var(--muted)}
.sc-footer{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted-lt);border-top:1px solid var(--border);padding-top:12px}
.sc-engine{font-weight:600}
.sc-port{font-weight:700;color:var(--primary)}
.sc-arrow{position:absolute;right:20px;bottom:20px;font-size:18px;font-weight:700;color:var(--primary);opacity:0;transform:translateX(-4px);transition:all var(--tr)}

/* ── FORMAT CLOUD (portal) ── */
.fmt-tabs{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}
.fmt-tab{background:var(--surface);border:1.5px solid var(--border);border-radius:99px;padding:7px 16px;font-size:13px;font-weight:600;cursor:pointer;color:var(--muted);transition:all var(--tr)}
.fmt-tab:hover{border-color:var(--primary);color:var(--primary)}
.fmt-tab--active{background:var(--primary-lt);border-color:var(--primary);color:var(--primary)}
.fmt-cloud{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.fc-tag{padding:7px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--border);font-size:13px;font-weight:700;color:var(--muted);background:var(--surface);transition:all var(--tr)}
.fc-tag:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.fc-tag[data-cat="video"]:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.fc-tag[data-cat="audio"]:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.fc-tag[data-cat="image"]:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.fc-tag[data-cat="doc"]:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.fc-tag[data-cat="archive"]:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.fc-tag.hidden{display:none}

/* ── HERO PORTAL ── */
.hero.portal-hero{padding:80px 0 100px;background:var(--bg)}
.hero-badge{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1.5px solid var(--border-dk);color:var(--primary);font-size:12px;font-weight:700;padding:6px 14px;border-radius:99px;margin-bottom:24px}
.hero-title{font-family:var(--font-d);font-size:clamp(34px,7vw,60px);font-weight:800;line-height:1.08;letter-spacing:-1.5px;color:var(--text);margin-bottom:18px}
.hero-gradient{color:var(--primary);background:none;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset}
.hero-sub{font-size:clamp(14px,2vw,17px);color:var(--muted);margin-bottom:32px;line-height:1.7;max-width:520px;margin-left:auto;margin-right:auto}
.btn-hero{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--cta-text);padding:15px 34px;border-radius:var(--radius);font-size:16px;font-weight:700;transition:all var(--tr)}
.btn-hero:hover{background:var(--accent-dk);transform:translateY(-2px);box-shadow:var(--shadow)}

.status-pill{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1.5px solid var(--border);padding:7px 16px;border-radius:99px;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:36px}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--border-dk)}
.status-dot--all{background:#22c55e}
.status-dot--part{background:#f59e0b}
.status-dot--none{background:#ef4444}

.float-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px}
.fb{padding:5px 14px;border-radius:99px;font-size:12px;font-weight:700;letter-spacing:.4px;border:1.5px solid var(--border-dk);background:var(--surface);color:var(--muted);animation:fbFloat 3s ease-in-out infinite}
.fb--1{animation-delay:0s}.fb--2{animation-delay:.3s}.fb--3{animation-delay:.6s}.fb--4{animation-delay:.9s}
.fb--5{animation-delay:1.2s}.fb--6{animation-delay:1.5s}.fb--7{animation-delay:1.8s}.fb--8{animation-delay:2.1s}
@keyframes fbFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}

/* ── HOW SECTION (portal) ── */
.how-section{background:var(--surface)}
.how-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:center;max-width:800px;margin:0 auto}
@media(min-width:640px){.how-grid{grid-template-columns:1fr auto 1fr auto 1fr}}
.how-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px 22px;text-align:center;position:relative;transition:box-shadow var(--tr)}
.how-card:hover{box-shadow:var(--shadow)}
.how-num{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--accent);color:var(--cta-text);width:26px;height:26px;border-radius:50%;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.how-icon{font-size:32px;margin-bottom:12px;display:block}
.how-card h3{font-size:14px;font-weight:700;margin-bottom:6px;color:var(--text)}
.how-card p{font-size:13px;color:var(--muted);line-height:1.6}
.how-connector{font-size:20px;color:var(--muted-lt);text-align:center;display:none}
@media(min-width:640px){.how-connector{display:block}}

/* ── FEATURES (portal) ── */
.features-section.portal-features{background:var(--bg)}
.feat-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;background:var(--surface);transition:box-shadow var(--tr)}
.feat-card:hover{box-shadow:var(--shadow-sm)}
.feat-icon{font-size:26px;margin-bottom:10px;display:block}
.feat-card h3{font-size:14px;font-weight:700;margin-bottom:6px;color:var(--text)}
.feat-card p{font-size:13px;color:var(--muted);line-height:1.5}

/* ── ARCHIVE: modes / file tree ── */
.mode-tabs{display:flex;gap:4px;margin-bottom:16px;background:var(--surface-2);border-radius:var(--radius-sm);padding:4px}
.mode-tab{flex:1;background:none;border:none;padding:9px 12px;font-size:13px;font-weight:600;cursor:pointer;color:var(--muted);border-radius:var(--radius-xs);transition:all var(--tr)}
.mode-tab:hover{color:var(--text)}
.mode-tab--active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-xs)}
.tools-bar{background:var(--primary);padding:8px 20px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}
.tb-label{color:#9fd4b8;font-weight:600;white-space:nowrap}
.tool-chip{padding:3px 10px;border-radius:99px;font-size:11px;font-weight:700}
.tool-chip--ok{background:rgba(255,255,255,.15);color:#e6f7ee}
.tool-chip--warn{background:rgba(255,255,255,.08);color:#fde68a}
.file-tree{max-height:320px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);margin-bottom:14px}
.ft-row{display:flex;align-items:center;gap:8px;padding:7px 12px;border-bottom:1px solid var(--border);font-size:13px}
.ft-row:last-child{border-bottom:none}
.ft-row:hover{background:var(--accent-lt)}
.ft-icon{flex-shrink:0;width:18px;text-align:center}
.ft-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.ft-dir .ft-name{font-weight:600;color:var(--primary)}
.ft-size{font-size:11px;color:var(--muted-lt);flex-shrink:0;min-width:52px;text-align:right}
.ft-empty{padding:20px;text-align:center;color:var(--muted);font-size:13px}
.listed-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.listed-title{font-family:var(--font-d);font-size:17px;font-weight:800;color:var(--text)}
.listed-meta{font-size:13px;color:var(--muted)}

/* ── IMAGE: advanced panel ── */
.adv-toggle-row{text-align:center;margin-bottom:12px}
.adv-toggle{background:none;border:1.5px solid var(--border-dk);border-radius:var(--radius-sm);padding:7px 16px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all var(--tr)}
.adv-toggle:hover,.adv-toggle.open{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.adv-chevron{transition:transform .2s;flex-shrink:0}
.adv-toggle.open .adv-chevron{transform:rotate(180deg)}
.adv-panel{display:none;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;margin-bottom:16px;gap:16px;flex-direction:column}
.adv-panel.open{display:flex}
.adv-section{display:flex;flex-direction:column;gap:8px}
.adv-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted-lt)}
.resize-presets{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.resize-btn{padding:5px 10px;border-radius:var(--radius-xs);border:1.5px solid var(--border);background:var(--surface);font-size:12px;font-weight:600;cursor:pointer;color:var(--muted);transition:all var(--tr)}
.resize-btn:hover{border-color:var(--primary);color:var(--primary)}
.resize-btn--active{background:var(--primary);color:#fff;border-color:var(--primary)}
.custom-size{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;background:var(--surface);border-radius:var(--radius-sm);border:1px solid var(--border)}
.custom-size input{width:110px;padding:7px 10px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:inherit}
.custom-size input:focus{outline:none;border-color:var(--primary)}
.size-x{font-weight:700;color:var(--muted)}
.keep-asp-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;cursor:pointer;color:var(--text)}
.transform-row{display:flex;gap:6px;flex-wrap:wrap}
.tx-btn{padding:7px 12px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);font-size:13px;font-weight:700;cursor:pointer;color:var(--text);transition:all var(--tr)}
.tx-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--accent-lt)}
.tx-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.rotate-display{font-size:12px;color:var(--muted-lt);margin-top:4px}
.filter-row{display:flex;gap:12px;flex-wrap:wrap}
.filter-toggle{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);transition:all var(--tr)}
.filter-toggle:hover{border-color:var(--primary);background:var(--accent-lt)}
.filter-toggle input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary);cursor:pointer}
.img-preview-wrap{display:flex;justify-content:center;margin-bottom:12px;background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border);overflow:hidden;height:140px;align-items:center}
.img-preview{max-width:100%;max-height:140px;object-fit:contain;border-radius:4px}
.img-preview-placeholder{font-size:48px;opacity:.3}

/* ── DOCUMENT: matrix table / cat tabs ── */
.cat-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1.5px solid var(--border);flex-wrap:wrap}
.cat-tab{background:none;border:none;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--tr)}
.cat-tab:hover{color:var(--text)}
.cat-tab--active{color:var(--primary);border-color:var(--primary)}
.matrix-wrap{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border)}
.matrix-table{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
.matrix-table th{background:var(--surface-2);padding:11px 14px;text-align:center;font-size:11px;font-weight:700;color:var(--muted-lt);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border)}
.matrix-table th:first-child{text-align:left}
.matrix-table td{padding:10px 14px;border-bottom:1px solid var(--border);text-align:center;color:var(--muted)}
.matrix-table td.row-head{text-align:left;font-weight:600;color:var(--text);background:var(--surface-2)}
.matrix-table td.y{color:var(--primary);font-weight:700}
.matrix-table tr:last-child td{border-bottom:none}
.matrix-table tr:hover td{background:var(--accent-lt)}

/* ── AUDIO: processing wave ── */
.processing-wave{display:flex;align-items:center;justify-content:center;gap:3px;height:48px;margin-bottom:16px}
.processing-wave span{display:block;width:4px;border-radius:3px;background:var(--primary);animation:audioWave 1s ease-in-out infinite}
.processing-wave span:nth-child(1){animation-delay:0s;height:12px}.processing-wave span:nth-child(2){animation-delay:.08s;height:20px}
.processing-wave span:nth-child(3){animation-delay:.16s;height:32px}.processing-wave span:nth-child(4){animation-delay:.24s;height:24px}
.processing-wave span:nth-child(5){animation-delay:.32s;height:40px}.processing-wave span:nth-child(6){animation-delay:.40s;height:48px}
.processing-wave span:nth-child(7){animation-delay:.48s;height:40px}.processing-wave span:nth-child(8){animation-delay:.56s;height:28px}
.processing-wave span:nth-child(9){animation-delay:.64s;height:36px}.processing-wave span:nth-child(10){animation-delay:.72s;height:20px}
.processing-wave span:nth-child(11){animation-delay:.80s;height:14px}.processing-wave span:nth-child(12){animation-delay:.88s;height:8px}
@keyframes audioWave{0%,100%{transform:scaleY(.4);opacity:.5}50%{transform:scaleY(1);opacity:1}}
.done-wave{display:flex;align-items:center;gap:3px}
.done-wave span{display:block;width:5px;border-radius:3px;background:var(--primary);animation:doneWave 1.5s ease-in-out infinite}
.done-wave span:nth-child(1){height:10px;animation-delay:0s}.done-wave span:nth-child(2){height:24px;animation-delay:.1s}
.done-wave span:nth-child(3){height:40px;animation-delay:.2s}.done-wave span:nth-child(4){height:30px;animation-delay:.3s}
.done-wave span:nth-child(5){height:48px;animation-delay:.4s}.done-wave span:nth-child(6){height:35px;animation-delay:.5s}
.done-wave span:nth-child(7){height:48px;animation-delay:.4s}.done-wave span:nth-child(8){height:20px;animation-delay:.3s}
@keyframes doneWave{0%,100%{transform:scaleY(.5);opacity:.7}50%{transform:scaleY(1);opacity:1}}
.done-anim{display:flex;align-items:center;justify-content:center;height:56px;margin-bottom:8px}

/* ── DOC PROCESSING ANIMATION ── */
.doc-processing{display:flex;justify-content:center;align-items:flex-end;gap:8px;height:56px;margin-bottom:20px}
.doc-page{width:36px;background:var(--surface);border:1.5px solid var(--border-dk);border-radius:3px;box-shadow:var(--shadow-xs)}
.doc-page--1{height:44px;animation:docFloat 1.4s ease-in-out infinite}
.doc-page--2{height:52px;animation:docFloat 1.4s ease-in-out .2s infinite}
.doc-page--3{height:44px;animation:docFloat 1.4s ease-in-out .4s infinite}
.doc-page::after{content:'';display:block;margin:6px 5px 4px;height:3px;background:var(--border);border-radius:2px;box-shadow:0 5px 0 var(--border),0 10px 0 var(--border)}
@keyframes docFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* ── ARC PROCESSING (archive) ── */
.arc-processing{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:20px;height:56px}
.arc-box{width:40px;background:var(--surface);border:1.5px solid var(--border-dk);border-radius:3px;overflow:hidden;box-shadow:var(--shadow-xs)}
.arc-lid{height:10px;background:var(--accent-lt);border-bottom:1px solid var(--border-dk)}
.arc-body{padding:5px 4px;display:flex;flex-direction:column;gap:3px}
.arc-line{height:3px;background:var(--border-dk);border-radius:2px}
.arc-line.short{width:60%}
.arc-box--out{animation:arcBounce 1s ease-in-out infinite .2s}
.arc-box:first-child{animation:arcBounce 1s ease-in-out infinite}
@keyframes arcBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.arc-dots{display:flex;gap:5px;align-items:center}
.arc-dots span{width:5px;height:5px;border-radius:50%;background:var(--primary);animation:dotBounce .8s ease-in-out infinite}
.arc-dots span:nth-child(2){animation-delay:.15s}
.arc-dots span:nth-child(3){animation-delay:.30s}
@keyframes dotBounce{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-5px);opacity:1}}

/* ── IMAGE SCAN ── */
.img-processing{display:flex;justify-content:center;margin-bottom:20px}
.img-proc-frame{position:relative;width:64px;height:48px;border-radius:4px;overflow:hidden}
.scan-line{position:absolute;left:0;right:0;height:2px;background:var(--primary);opacity:.8;animation:scanDown 1.2s linear infinite;top:0}
@keyframes scanDown{from{top:0}to{top:100%}}

/* ── FORMAT COMPARE (archive) ── */
.fmt-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:640px){.fmt-compare-grid{grid-template-columns:repeat(5,1fr)}}
.fmt-cmp-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px;background:var(--surface-2);border-top:3px solid var(--border)}
.fmt-zip{border-top-color:#3b82f6}.fmt-targz{border-top-color:#10b981}.fmt-tarbz2{border-top-color:#8b5cf6}
.fmt-tarxz{border-top-color:var(--accent-dk)}.fmt-7z{border-top-color:#ef4444}
.fcc-name{font-family:var(--font-d);font-size:15px;font-weight:800;margin-bottom:4px;color:var(--text)}
.fcc-badge{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted-lt);margin-bottom:10px}
.fcc-list{display:flex;flex-direction:column;gap:4px}
.fcc-list li{font-size:12px;color:var(--muted)}

/* ── SEO section ── */
.seo-section{background:var(--surface);padding:52px 0}
.seo-section h2{font-family:var(--font-d);font-size:clamp(20px,3vw,26px);font-weight:800;letter-spacing:-.3px;margin-bottom:14px;color:var(--text)}
.seo-section h3{font-size:16px;font-weight:700;margin:20px 0 10px;color:var(--text)}
.seo-section p{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:10px}
.seo-section a{color:var(--primary);font-weight:600;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .2s}
.seo-section a:hover{text-decoration-color:var(--primary)}
.seo-list{margin:10px 0 10px 20px;display:flex;flex-direction:column;gap:7px}
.seo-list li{font-size:14px;color:var(--muted);line-height:1.6}
.seo-list li strong{color:var(--text)}
.seo-list a{color:var(--primary);font-weight:700}

/* ── TRIAL BANNER ── */
.trial-banner{padding:10px 20px;font-size:14px}
.trial-banner--new{background:var(--primary);color:#fff}
.trial-banner--active{background:var(--primary-lt);border-bottom:1px solid var(--border-dk);color:var(--primary)}
.trial-banner--expired{background:#fee2e2;border-bottom:1px solid #fca5a5;color:#7f1d1d}
.tb-inner{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.tb-icon{font-size:18px;flex-shrink:0}
.tb-text{flex:1;min-width:200px}
.tb-btn{background:var(--accent);color:var(--cta-text);border:none;border-radius:var(--radius-xs);padding:6px 14px;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .2s}
.tb-btn:hover{background:var(--accent-dk)}
.trial-banner--active .tb-btn,.trial-banner--expired .tb-btn{background:var(--primary);color:#fff}
.tb-btn--upgrade{background:var(--accent)!important;color:var(--cta-text)!important;text-decoration:none;display:inline-block}
.tb-close{background:none;border:none;cursor:pointer;color:inherit;font-size:18px;opacity:.7;padding:2px 6px}
.tb-close:hover{opacity:1}

/* ── FOOTER ── */
.footer{background:var(--primary-dk);color:#8aab94;padding:48px 0 0}
.footer-grid{display:grid;grid-template-columns:1fr;gap:28px;margin-bottom:40px}
@media(min-width:480px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}
.footer-logo{font-family:var(--font-d);font-size:20px;font-weight:800;color:#fff;margin-bottom:8px}
.footer-logo span{color:var(--accent)}
.footer-tagline{font-size:13px;margin-bottom:10px}
.footer-stack{font-size:12px;color:#52735e;margin-top:6px}
.service-badge{display:inline-block;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xs);padding:4px 10px;font-size:12px;font-weight:600;color:var(--accent)}
.footer h4{font-size:11px;font-weight:700;color:#fff;margin-bottom:12px;text-transform:uppercase;letter-spacing:.7px}
.footer ul{display:flex;flex-direction:column;gap:8px}
.footer ul a{font-size:14px;color:#8aab94;transition:color var(--tr)}
.footer ul a:hover{color:#fff}
.footer-bottom,.footer-copy{border-top:1px solid rgba(255,255,255,.08);padding:20px 0;font-size:12px;text-align:center;color:#52735e}
.footer-links{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.footer-links a{font-size:13px;color:#52735e;transition:color var(--tr)}
.footer-links a:hover{color:#fff}
.footer-services ul a{display:flex;align-items:center;gap:6px}

/* ── TOAST ── */
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--primary-dk);color:#fff;padding:12px 22px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;box-shadow:var(--shadow-lg);z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease,bottom .3s ease;white-space:nowrap}
.toast.show{opacity:1;bottom:28px}

/* ── RESPONSIVE ── */
@media(min-width:640px){.converter-card{padding:32px 32px}}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}


/* Quota bar */
.quota-bar{background:var(--surface);border-bottom:1px solid var(--border);padding:7px 20px}
.qb-inner{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}
.qb-plan{font-weight:700;color:var(--primary);padding:2px 8px;background:var(--primary-lt);border-radius:99px;white-space:nowrap}
.qb-plan--warn{background:#fee2e2;color:var(--red)}
.qb-info{color:var(--muted);flex:1;min-width:80px}
.qb-info--warn{color:var(--red);font-weight:600}
.qb-track{flex:1;min-width:80px;max-width:160px;height:5px;background:var(--border);border-radius:99px;overflow:hidden}
.qb-fill{height:100%;background:var(--accent);border-radius:99px;transition:width .3s}
.qb-count{color:var(--muted);white-space:nowrap;font-weight:500}
.qb-btn{background:none;border:1.5px solid var(--border-dk);border-radius:var(--radius-xs);padding:3px 10px;font-size:11px;font-weight:700;cursor:pointer;color:var(--muted);transition:all var(--tr);text-decoration:none;white-space:nowrap}
.qb-btn:hover{border-color:var(--primary);color:var(--primary)}
.qb-btn--upgrade{background:var(--accent);color:var(--primary-dk);border-color:var(--accent)}
.qb-btn--upgrade:hover{background:var(--accent-dk);color:var(--primary-dk)}
