/* Scoped styling: does not change Astra, Elementor, or other page content. */
.s77pr { --s77-bg:#10130f; --s77-card:#1a1e18; --s77-ink:#f4f6ef; --s77-muted:#b1baaa; --s77-line:#353e30; --s77-lime:#c2f45b; --s77-error:#ffb4a4; --s77-radius:18px; box-sizing:border-box; width:100%; max-width:1440px; margin:24px auto; padding:28px clamp(16px,3vw,42px) 22px; color:var(--s77-ink); background:var(--s77-bg); border:1px solid #293124; border-radius:24px; font:400 16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-align:left; color-scheme:dark; isolation:isolate; }
.s77pr *, .s77pr *::before, .s77pr *::after { box-sizing:border-box; }
.s77pr { container-type:inline-size; }
.s77pr [hidden] { display:none !important; }
.s77pr h2,.s77pr h3,.s77pr p,.s77pr ul { margin:0; padding:0; color:inherit; font-family:inherit; }
.s77pr h2,.s77pr h3 { text-transform:none; }
.s77pr h3 { font-size:17px; font-weight:650; line-height:1.3; letter-spacing:-.3px; }
.s77pr button,.s77pr input,.s77pr select,.s77pr a { font-family:inherit; }
.s77pr button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; margin:0; padding:10px 14px; border:1px solid var(--s77-line); border-radius:10px; background:transparent; color:var(--s77-ink); font-size:14px; font-weight:600; line-height:1.3; text-decoration:none; text-transform:none; letter-spacing:0; box-shadow:none; cursor:pointer; transition:border-color .15s,background .15s; }
.s77pr button:hover { background:#2b3325; border-color:#758866; color:var(--s77-ink); }
.s77pr button:disabled { opacity:.5; cursor:not-allowed; }
.s77pr :is(button,input,select,a,summary):focus-visible { outline:3px solid var(--s77-lime); outline-offset:4px; }
.s77pr a { color:var(--s77-lime); text-decoration:underline; text-underline-offset:4px; }
.s77pr-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:24px; border-bottom:1px solid var(--s77-line); }
.s77pr .s77pr-wordmark { display:flex; align-items:center; gap:12px; color:var(--s77-ink); font-size:23px; font-weight:800; line-height:1.05; text-decoration:none; min-width:0; overflow-wrap:anywhere; }
.s77pr-wordmark small { display:block; font-size:9px; letter-spacing:2.8px; font-weight:500; margin-top:7px; color:var(--s77-muted); }
.s77pr-emblem { display:grid; place-items:center; width:44px; height:44px; flex:0 0 44px; color:#17220c; background:var(--s77-lime); border-radius:11px 3px 11px 3px; font-size:25px; font-style:italic; letter-spacing:-4px; padding-right:4px; }
.s77pr-head-right { display:flex; align-items:center; gap:18px; flex-shrink:0; }
.s77pr-private { color:var(--s77-muted); font-size:12px; }
.s77pr-private::before { content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--s77-lime); margin-right:7px; vertical-align:middle; }
.s77pr .s77pr-lang { min-width:44px; font-size:12px; }
.s77pr-intro { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:38px 0 30px; }
.s77pr-eyebrow { display:block; color:var(--s77-lime); font-size:10px; font-weight:650; letter-spacing:2.3px; margin-bottom:12px; }
.s77pr h2 { font-size:clamp(32px,4vw,54px); font-weight:750; line-height:1.06; letter-spacing:-2px; margin:0 0 16px; }
.s77pr h2 em { color:var(--s77-lime); font-weight:600; }
.s77pr-intro p { color:var(--s77-muted); max-width:590px; font-size:15px; }
.s77pr-tag { font-size:10px; font-weight:650; letter-spacing:2px; display:flex; align-items:center; gap:14px; padding:12px 14px; white-space:nowrap; border:1px solid var(--s77-line); border-radius:4px; transform:rotate(-4deg); }
.s77pr-tag span { font-size:28px; color:var(--s77-lime); line-height:1; }
.s77pr-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); max-width:640px; gap:8px; margin-bottom:24px; }
.s77pr-products button { padding:12px 10px; border-radius:10px; color:var(--s77-muted); }
.s77pr-products button span { font-size:19px; line-height:1; }
.s77pr-products button[aria-pressed="true"] { color:#17200c; background:var(--s77-lime); border-color:var(--s77-lime); }
.s77pr-workspace { display:grid; grid-template-columns:minmax(260px,.85fr) minmax(0,1.45fr); gap:20px; align-items:start; }
.s77pr-left,.s77pr-main { display:grid; gap:18px; min-width:0; }
.s77pr-card { padding:22px; border:1px solid var(--s77-line); border-radius:var(--s77-radius); background:var(--s77-card); min-width:0; }
.s77pr-card-heading { display:flex; align-items:center; gap:10px; margin-bottom:20px; }
.s77pr-step { display:grid; place-items:center; width:27px; height:27px; flex:0 0 27px; font-size:10px; font-weight:600; border:1px solid #4d5b40; border-radius:50%; color:var(--s77-lime); }
.s77pr-local-dot { width:6px; height:6px; border-radius:50%; background:var(--s77-lime); margin-left:auto; }
.s77pr-upload { border-style:dashed; border-color:#718354; background:linear-gradient(145deg,#222b1b,#191d17 75%); transition:background .15s,border-color .15s; }
.s77pr-dragging .s77pr-upload { background:#31451a; border-color:var(--s77-lime); outline:2px solid var(--s77-lime); }
.s77pr-upload>p { font-size:14px; color:var(--s77-muted); }
.s77pr .s77pr-startup { margin-top:14px; padding:12px; border:1px solid #916d36; border-radius:8px; background:#3e321d; color:#ffe0a8; font-size:12px; }
.s77pr label { display:flex; flex-direction:column; gap:7px; color:var(--s77-muted); font-size:12px; font-weight:500; line-height:1.4; margin:0; min-width:0; }
.s77pr .s77pr-file-label { margin:20px 0 8px; gap:9px; }
.s77pr input[type="file"] { position:static !important; display:block !important; visibility:visible !important; opacity:1 !important; width:100%; min-width:0; max-width:100%; height:auto; min-height:50px; margin:0; padding:5px; color:#dbe3d2; background:#10170b; border:1px solid #546643; border-radius:10px; font-size:12px; line-height:38px; cursor:pointer; clip:auto !important; clip-path:none !important; }
.s77pr input[type="file"]::file-selector-button { background:var(--s77-lime); color:#17200c; font:650 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; padding:11px 12px; border:0; border-radius:6px; margin:0 8px 0 0; cursor:pointer; }
.s77pr input[type="file"]::-webkit-file-upload-button { background:var(--s77-lime); color:#17200c; font:650 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; padding:11px 12px; border:0; border-radius:6px; margin:0 8px 0 0; cursor:pointer; }
.s77pr-alternative { font-size:12px; margin:12px 0 16px; }
.s77pr-alternative summary { cursor:pointer; padding:8px 0; color:#dde6d3; line-height:1.7; }
.s77pr-alternative .s77pr-file-label { margin-top:8px; }
.s77pr .s77pr-file-hint { font-size:11px; line-height:1.65; color:#9fab93; }
.s77pr .s77pr-link-button { padding:10px 0; border:0; border-radius:4px; font-size:12px; color:var(--s77-lime); text-align:left; justify-content:flex-start; background:transparent; text-decoration:underline; text-underline-offset:4px; }
.s77pr-upload>.s77pr-link-button { margin-top:12px; }
.s77pr-queue-heading { display:flex; gap:10px; align-items:center; margin-bottom:10px; }
.s77pr-queue-heading>span { color:var(--s77-muted); font-size:11px; margin-left:auto; }
.s77pr-queue-heading>.s77pr-link-button { padding:8px; font-size:11px; }
.s77pr-muted { color:var(--s77-muted) !important; font-size:13px; }
.s77pr ul.s77pr-queue { list-style:none; display:grid; gap:9px; }
.s77pr-queue-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0 6px; padding:6px; border:1px solid var(--s77-line); border-radius:11px; margin:0; }
.s77pr-queue-item[data-selected="true"] { border-color:#8da859; background:#252d1e; }
.s77pr .s77pr-item-main { border:0; padding:3px; justify-content:flex-start; text-align:left; min-width:0; gap:10px; background:transparent; }
.s77pr .s77pr-item-main:disabled { opacity:1; }
.s77pr-item-main img,.s77pr-item-icon { width:40px; height:44px; flex:0 0 40px; object-fit:contain; border-radius:5px; background:#0e120b; }
.s77pr-item-icon { display:grid; place-items:center; font-size:26px; color:var(--s77-muted); }
.s77pr-item-info { min-width:0; }
.s77pr-item-info strong { display:block; font-size:12px; font-weight:600; overflow-wrap:anywhere; line-height:1.4; }
.s77pr-item-info small { display:block; font-size:10px; color:var(--s77-muted); margin-top:4px; }
.s77pr-item-actions { display:flex; align-items:center; gap:3px; }
.s77pr-item-actions button { min-width:40px; padding:8px 6px; font-size:11px; border:0; }
.s77pr-item-actions button[data-remove] { font-size:23px; }
.s77pr .s77pr-item-error { grid-column:1/-1; color:var(--s77-error); font-size:12px; line-height:1.6; padding:10px 6px 6px; overflow-wrap:anywhere; }
.s77pr-notice { padding:14px 16px; border:1px solid #596f3f; background:#25301d; color:#e2edce; font-size:13px; border-radius:12px; overflow-wrap:anywhere; }
.s77pr-notice[data-type="error"] { background:#35221d; border-color:#855246; color:var(--s77-error); }
.s77pr-preview-card { padding-bottom:14px; }
.s77pr-preview-label { color:var(--s77-muted); font-size:9px; letter-spacing:1px; margin-left:auto; text-align:right; }
.s77pr-preview { position:relative; display:grid; place-items:center; min-height:280px; height:clamp(260px,28vw,380px); border:1px solid #424a3c; border-radius:11px; background-color:#c4c7be; background-image:conic-gradient(#dce0d5 25%,transparent 0 50%,#dce0d5 0 75%,transparent 0); background-size:22px 22px; overflow:hidden; padding:18px; }
.s77pr-preview img { width:100%; height:100%; min-height:0; max-width:100%; max-height:100%; object-fit:contain; border:0; box-shadow:none; margin:0; }
.s77pr-empty-art { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:10px; padding:20px; text-align:center; background:radial-gradient(ellipse at 50% 10%,#35452a 0,transparent 65%),#151a12; }
.s77pr-empty-art .s77pr-art-mark { display:grid; place-items:center; width:88px; height:88px; margin-bottom:8px; color:var(--s77-lime); font-size:58px; border:1px solid #60784a; border-radius:23px; transform:rotate(-7deg); line-height:1; font-weight:300; }
.s77pr-empty-art strong { font-size:19px; letter-spacing:-.6px; }
.s77pr-empty-art>span:last-child { font-size:12px; color:var(--s77-muted); }
.s77pr-preview-footer { display:flex; justify-content:space-between; gap:12px; margin-top:12px; font-size:11px; align-items:flex-start; }
.s77pr-preview-footer strong { max-width:65%; overflow-wrap:anywhere; font-weight:500; }
.s77pr-preview-footer>span { color:var(--s77-muted); text-align:right; }
.s77pr-fields { display:grid; grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr) 72px; gap:10px; align-items:end; }
.s77pr input[type="number"],.s77pr select { appearance:auto; width:100%; min-width:0; height:46px; padding:9px 10px; border:1px solid #46523c; border-radius:9px; margin:0; color:var(--s77-ink); background:#11170e; font-size:16px; font-weight:500; line-height:1.4; box-shadow:none; }
.s77pr .s77pr-lock { padding:8px 0; height:46px; min-width:38px; font-size:18px; }
.s77pr-lock[aria-pressed="true"] { color:var(--s77-lime); border-color:#7c994f; background:#26351a; }
.s77pr-fields-secondary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; align-items:end; margin-top:16px; }
.s77pr .s77pr-small { color:var(--s77-muted); font-size:11px; line-height:1.65; margin-top:14px; }
.s77pr-field-error { color:var(--s77-error) !important; font-size:12px; padding:12px 0 0 !important; }
.s77pr-results { border-top:1px solid var(--s77-line); margin-top:22px; padding-top:20px; }
.s77pr-check-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.s77pr-check-head>span:last-child { font-size:10px; color:var(--s77-muted); }
.s77pr-status-pill { color:var(--s77-lime); background:#2a3a1a; padding:6px 10px; font-size:11px; border-radius:6px; font-weight:600; }
.s77pr-status-pill[data-level="low"] { color:var(--s77-error); background:#4a2d24; }
.s77pr-status-pill[data-level="review"],.s77pr-status-pill[data-level="vector"] { color:#f3d999; background:#3e351f; }
.s77pr-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.s77pr-metrics>div { min-width:0; }
.s77pr-metrics span { display:block; font-size:10px; color:var(--s77-muted); margin-bottom:5px; }
.s77pr-metrics strong { display:block; font-size:clamp(14px,1.5vw,19px); line-height:1.35; font-weight:600; overflow-wrap:anywhere; }
.s77pr ul.s77pr-checks { list-style:none; display:grid; gap:10px; font-size:11px; line-height:1.6; color:#c0c9b7; }
.s77pr-checks li { position:relative; padding-left:14px; margin:0; }
.s77pr-checks li::before { content:""; position:absolute; left:0; top:.65em; width:4px; height:4px; border-radius:50%; background:#8aa363; }
.s77pr-panel-plan { padding:12px; border:1px solid #576c3f; border-radius:8px; color:#e1eccd; font-size:12px; margin-top:14px; background:#27341d; }
.s77pr-export-actions { display:grid; grid-template-columns:1.5fr 1fr; gap:10px; margin-top:22px; }
.s77pr .s77pr-button { min-height:48px; font-size:12px; padding:12px; }
.s77pr .s77pr-primary { background:var(--s77-lime); border-color:var(--s77-lime); color:#18220c; justify-content:space-between; }
.s77pr .s77pr-primary:hover { background:#d4ff83; color:#18220c; }
.s77pr-primary>span:last-child { font-size:21px; line-height:1; }
.s77pr-downloads { display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
.s77pr-downloads:empty { display:none; }
.s77pr-downloads p { width:100%; font-size:11px; color:#d0ddbf; }
.s77pr .s77pr-download { display:inline-flex; align-items:center; min-height:44px; padding:10px 14px; background:#26341b; border:1px solid #6c8946; border-radius:8px; font-size:12px; font-weight:600; }
.s77pr-footer { display:flex; justify-content:space-between; gap:16px; padding-top:22px; margin-top:26px; border-top:1px solid var(--s77-line); color:var(--s77-muted); font-size:10px; }
@media (max-width:900px) {
  .s77pr { padding:24px; }
  .s77pr-workspace { grid-template-columns:minmax(235px,.9fr) minmax(0,1.2fr); gap:16px; }
  .s77pr-card { padding:17px; }
  .s77pr-fields { gap:7px; grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 63px; }
  .s77pr .s77pr-lock { min-width:34px; }
  .s77pr-tag { display:none; }
  .s77pr-metrics { gap:8px; }
  .s77pr-preview-label { font-size:8px; }
}
@media (max-width:700px) {
  .s77pr { padding:20px 16px; margin:12px auto; border-radius:18px; }
  .s77pr-header { padding-bottom:18px; }
  .s77pr-wordmark small { font-size:8px; }
  .s77pr-head-right { gap:8px; }
  .s77pr-private { display:none; }
  .s77pr-intro { padding:28px 0 24px; }
  .s77pr h2 { font-size:40px; letter-spacing:-1.8px; }
  .s77pr-intro p { font-size:14px; }
  .s77pr-products { gap:6px; margin-bottom:18px; }
  .s77pr-products button { flex-direction:column; gap:6px; font-size:12px; padding:12px 4px; }
  .s77pr-products button span { font-size:20px; }
  .s77pr-workspace { grid-template-columns:minmax(0,1fr); gap:18px; }
  .s77pr-left,.s77pr-main { gap:18px; }
  .s77pr-card { padding:18px; }
  .s77pr-card-heading { margin-bottom:16px; }
  .s77pr-preview { height:300px; min-height:240px; }
  .s77pr-fields { grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 64px; gap:7px; }
  .s77pr-fields-secondary { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
  .s77pr-metrics strong { font-size:16px; }
  .s77pr-footer { flex-direction:column; gap:7px; }
}
@media (prefers-reduced-motion:reduce) { .s77pr * { transition:none !important; animation:none !important; } }
@container (max-width:640px) {
  .s77pr-workspace { grid-template-columns:minmax(0,1fr); }
  .s77pr-tag,.s77pr-private { display:none; }
  .s77pr-products button { flex-direction:column; }
  .s77pr-footer { flex-direction:column; gap:7px; }
  .s77pr-intro h2 { font-size:40px; letter-spacing:-1.8px; }
}
