/*!
 * 4n6 Online Pegasus Mail Viewer - app styles
 * https://forensiksoft.com/online/pegasus-file-viewer.html
 * (c) 2013-2026 4n6 Inc. (ForensikSoft) All rights reserved.
 *
 * Colour language
 *   blue    = something the user does inside the viewer
 *   amber   = something that leads to the paid converter
 *   green   = privacy and trust only
 *   neutral = information, never a control
 */

/* ---------- tokens ---------- */
#pvapp{
  --pv-blue:#1669c4;
  --pv-blue-2:#1b74cc;
  --pv-blue-l:#64b5f6;
  --pv-blue-d:#10508f;
  --pv-navy:#0d2847;

  --pv-ink:#12263f;
  --pv-ink-2:#4b6076;
  --pv-mut:#5d7290;

  --pv-line:#e2ecf7;
  --pv-line-2:#cfdff0;
  --pv-rail:#f5f9fe;
  --pv-tint:#eaf4ff;
  --pv-sel:#e2f0ff;

  --pv-amber:#a05c08;
  --pv-amber-bg:#fff7e9;
  --pv-amber-line:#f3cf92;
  --pv-green:#0f7a45;

  --pv-ring:0 0 0 3px rgba(22,105,196,.28);
  --pv-r:14px;

  position:relative;
  padding-top:4px;
  background:#fff;
  border:1px solid var(--pv-line-2);
  border-radius:18px;
  box-shadow:0 18px 46px rgba(13,40,71,.13),0 2px 6px rgba(13,40,71,.05);
  overflow:hidden;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--pv-ink);
  -webkit-font-smoothing:antialiased;
}
/* bright accent edge so the card reads as a tool, not a page block */
#pvapp::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;z-index:6;
  background:linear-gradient(90deg,#1669c4,#2b8ae8,#64b5f6,#2b8ae8)
}
#pvapp *{box-sizing:border-box}
#pvapp button{font-family:inherit}
#pvapp button:focus-visible,
#pvapp a:focus-visible,
#pvapp input:focus-visible,
#pvapp select:focus-visible{outline:none;box-shadow:var(--pv-ring)}
#pvapp .hidden{display:none!important}
.pv-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- privacy notice ---------- */
#notice{
  display:flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,#effaf3,#e4f6ec);
  border-bottom:1px solid #c9e9d8;
  padding:10px 16px;font-size:.87rem;color:#12643c;line-height:1.5
}
#notice svg{width:18px;height:18px;flex-shrink:0;stroke:var(--pv-green);fill:none}
#notice b{font-weight:700;color:#0b4d2e}
#noticeX{
  margin-left:auto;background:transparent;border:0;color:#4f7a63;
  font-size:1.2rem;line-height:1;cursor:pointer;padding:2px 8px;border-radius:8px
}
#noticeX:hover{background:rgba(15,122,69,.12);color:#0b4d2e}

/* ---------- toolbar ---------- */
.pv-bar{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:12px 14px;
  background:linear-gradient(180deg,#ffffff,#f4f9ff);
  border-bottom:1px solid var(--pv-line)
}
.pv-bar-l,.pv-bar-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pv-bar-r{margin-left:auto}

/* base control: white, real border, clearly pressable */
.pv-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:38px;
  background:#fff;
  border:1px solid var(--pv-line-2);
  color:#25405e;
  font-size:.875rem;font-weight:600;
  padding:0 15px;border-radius:10px;cursor:pointer;
  box-shadow:0 1px 2px rgba(13,40,71,.06);
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s ease
}
.pv-btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
.pv-btn:hover{background:var(--pv-tint);border-color:#a9cef1;color:var(--pv-blue-d)}
.pv-btn:active{transform:translateY(1px)}
.pv-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.pv-btn:disabled:hover{background:#fff;border-color:var(--pv-line-2);color:#25405e}

/* primary: the one control a first time visitor should press */
.pv-btn-p{
  background:linear-gradient(135deg,var(--pv-blue),var(--pv-blue-2));
  border-color:transparent;color:#fff;
  box-shadow:0 3px 10px rgba(22,105,196,.32)
}
.pv-btn-p:hover{
  background:linear-gradient(135deg,var(--pv-blue-d),#1f7ad6);
  border-color:transparent;color:#fff;
  box-shadow:0 5px 16px rgba(22,105,196,.38);transform:translateY(-1px)
}
.pv-btn-p:active{transform:translateY(0)}

/* secondary: same intent, lighter ink */
.pv-btn-o{background:#fff;border:2px solid var(--pv-blue);color:var(--pv-blue);padding:0 14px}
.pv-btn-o:hover{background:var(--pv-tint);border-color:var(--pv-blue-d);color:var(--pv-blue-d)}

/* leads to the paid converter, so it wears the converter colour */
.pv-btn-save{background:var(--pv-amber-bg);border-color:var(--pv-amber-line);color:var(--pv-amber)}
.pv-btn-save:hover{background:#fff1d8;border-color:#e8b463;color:#8f5209}
.pv-btn-save:disabled:hover{background:var(--pv-amber-bg);border-color:var(--pv-amber-line);color:var(--pv-amber)}

.pv-icon{
  display:none;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:10px;cursor:pointer;
  background:#fff;border:1px solid var(--pv-line-2);color:var(--pv-blue);
  box-shadow:0 1px 2px rgba(13,40,71,.06)
}
.pv-icon svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2}
.pv-icon:hover{background:var(--pv-tint);border-color:#a9cef1}

#fileSel{
  max-width:230px;min-height:38px;
  background:#fff;color:var(--pv-ink);
  border:1px solid var(--pv-line-2);border-radius:10px;
  padding:0 10px;font-size:.86rem;font-weight:600;cursor:pointer;
  box-shadow:0 1px 2px rgba(13,40,71,.06)
}
#fileSel:hover{border-color:#a9cef1}
#fileSel option{color:var(--pv-ink);background:#fff}

.pv-fileinfo{display:flex;flex-direction:column;line-height:1.3;padding-left:6px}
.pv-fileinfo b{color:var(--pv-ink);font-size:.87rem;font-weight:700;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pv-fileinfo span{color:var(--pv-mut);font-size:.78rem}

/* search */
.pv-search{position:relative;display:flex;align-items:center}
.pv-search>svg{position:absolute;left:12px;width:15px;height:15px;stroke:var(--pv-mut);fill:none;stroke-width:2;pointer-events:none}
.pv-search:focus-within>svg{stroke:var(--pv-blue)}
#search{
  width:236px;min-height:38px;
  background:#fff;border:1px solid var(--pv-line-2);border-radius:10px;
  color:var(--pv-ink);font-size:.875rem;padding:0 32px 0 34px;
  box-shadow:0 1px 2px rgba(13,40,71,.06);
  -webkit-appearance:none;appearance:none
}
#search::placeholder{color:var(--pv-mut)}
#search:focus{outline:none;border-color:var(--pv-blue);box-shadow:var(--pv-ring)}
#search::-webkit-search-cancel-button{display:none}
#searchX{
  display:none;position:absolute;right:7px;
  background:transparent;border:0;color:var(--pv-mut);
  font-size:1.1rem;line-height:1;cursor:pointer;padding:3px 7px;border-radius:8px
}
.pv-search.has #searchX{display:block}
#searchX:hover{background:var(--pv-tint);color:var(--pv-blue)}

/* save panel: the viewer does not export, the converter does */
.pv-dl{position:relative}
#dlMenu{
  display:none;position:absolute;right:0;top:calc(100% + 8px);z-index:30;
  width:340px;max-width:calc(100vw - 40px);
  background:#fff;border:1px solid var(--pv-line-2);
  border-radius:14px;padding:18px;box-shadow:0 18px 44px rgba(13,40,71,.24)
}
#dlMenu.open{display:block}
#dlMenu .pv-up-h{display:flex;align-items:center;gap:11px;margin-bottom:12px}
#dlMenu .pv-up-h svg{
  width:36px;height:36px;padding:8px;flex-shrink:0;
  background:var(--pv-amber-bg);border:1px solid var(--pv-amber-line);border-radius:10px;
  stroke:var(--pv-amber);fill:none;stroke-width:2
}
#dlMenu .pv-up-h b{font-size:.97rem;font-weight:800;color:var(--pv-ink);line-height:1.3}
#dlMenu p{margin:0 0 9px;font-size:.86rem;line-height:1.65;color:var(--pv-ink-2)}
#dlMenu p:last-of-type{margin-bottom:0}
#dlMenu .pv-up-cta{
  display:flex;align-items:center;justify-content:center;gap:8px;margin-top:15px;
  background:linear-gradient(135deg,#f39c12,#e67e22);
  border-radius:10px;color:#fff;font-size:.9rem;font-weight:700;
  padding:12px 14px;text-decoration:none;
  box-shadow:0 4px 12px rgba(230,126,34,.32);
  transition:box-shadow .15s ease,transform .12s ease
}
#dlMenu .pv-up-cta svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.5}
#dlMenu .pv-up-cta:hover{color:#fff;box-shadow:0 7px 18px rgba(230,126,34,.4);transform:translateY(-1px)}

/* progress hairline */
.pv-prog{height:3px;background:#eaf1f8}
.pv-prog i{display:block;height:3px;width:0;background:linear-gradient(90deg,var(--pv-blue),var(--pv-blue-l));transition:width .18s ease}

/* ---------- workspace ---------- */
.pv-work{display:grid;grid-template-columns:auto 372px 1fr;height:710px;background:#fff}
body.landing .pv-work{display:none}
body:not(.landing) .pv-drop{display:none}

.pv-pane-h{
  display:flex;align-items:center;gap:8px;
  height:46px;padding:0 12px;flex-shrink:0;
  background:linear-gradient(180deg,#fbfdff,#f2f8ff);
  border-bottom:1px solid var(--pv-line);
  font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#5d7290
}
.pv-pane-h .ttl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:700;color:var(--pv-ink)}
.pv-pane-h button{
  background:#fff;border:1px solid var(--pv-line-2);
  border-radius:8px;color:#25405e;cursor:pointer;
  display:inline-flex;align-items:center;gap:5px;
  font-size:.75rem;font-weight:700;padding:6px 10px;letter-spacing:.02em;
  transition:background .15s ease,border-color .15s ease,color .15s ease
}
.pv-pane-h button svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2}
.pv-pane-h button:hover{background:var(--pv-tint);color:var(--pv-blue-d);border-color:#a9cef1}
.pv-pane-h .sp{margin-left:auto}

/* folders */
.pv-folders{display:flex;flex-direction:column;width:250px;border-right:1px solid var(--pv-line);background:var(--pv-rail);min-width:0}
.pv-folders.collapsed{display:none}
#foldersBody{flex:1;overflow-y:auto;padding:8px 8px 12px;min-height:0}
#foldersBody .fh{
  font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;
  color:#5d7290;padding:13px 8px 5px
}
#foldersBody .fld{
  display:flex;align-items:center;gap:9px;width:100%;
  background:transparent;border:1px solid transparent;cursor:pointer;text-align:left;
  padding:9px 10px;border-radius:10px;color:#3d556e;
  font-size:.875rem;line-height:1.3;
  transition:background .14s ease,border-color .14s ease,color .14s ease
}
#foldersBody .fld svg{width:17px;height:17px;flex-shrink:0;color:#7f9ab5}
#foldersBody .fld .n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#foldersBody .fld .c{
  flex-shrink:0;font-size:.72rem;font-weight:800;
  background:#e6eef7;color:#4a6a8c;border-radius:20px;padding:2px 9px
}
#foldersBody .fld:hover{background:#fff;border-color:var(--pv-line);color:var(--pv-ink)}
#foldersBody .fld:hover svg{color:var(--pv-blue)}
#foldersBody .fld.on{
  background:linear-gradient(135deg,var(--pv-blue),var(--pv-blue-2));
  border-color:transparent;color:#fff;
  box-shadow:0 4px 12px rgba(22,105,196,.3)
}
#foldersBody .fld.on svg{color:#fff}
#foldersBody .fld.on .c{background:rgba(255,255,255,.26);color:#fff}
#foldersBody .fld.sub{padding-left:24px}
#foldersBody .fld.sub2{padding-left:36px}

#fstats{
  flex-shrink:0;border-top:1px solid var(--pv-line);
  padding:14px;background:#fff;max-height:270px;overflow-y:auto;font-size:.8rem
}
#fstats:empty{display:none}
#fstats .kv{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;margin:0}
#fstats dt{color:var(--pv-mut);font-weight:600}
#fstats dd{margin:0;color:var(--pv-ink);font-weight:700;overflow-wrap:anywhere}
#fstats .top{margin-top:13px;padding-top:11px;border-top:1px dashed var(--pv-line-2)}
#fstats .top b{display:block;color:var(--pv-mut);font-weight:800;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}
#fstats .top div{display:flex;justify-content:space-between;gap:10px;padding:3px 0;color:var(--pv-ink-2)}
#fstats .top div span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#fstats .top div span:last-child{color:var(--pv-blue);font-weight:800}

/* message list */
.pv-list{position:relative;display:flex;flex-direction:column;border-right:1px solid var(--pv-line);min-width:0;background:#fff}
.pv-list.busy{opacity:.55}
#listBody{flex:1;overflow-y:auto;position:relative;min-height:0}
#listInner{position:relative;width:100%}
#listInner .row{
  position:absolute;left:0;right:0;
  display:flex;flex-direction:column;justify-content:center;gap:2px;
  height:78px;margin:0;padding:9px 16px;
  border-bottom:1px solid #eef4fb;cursor:pointer;overflow:hidden;
  font-size:14px;transition:background .12s ease
}
#listInner .row:hover{background:var(--pv-rail)}
#listInner .row.on{background:var(--pv-sel);box-shadow:inset 4px 0 0 var(--pv-blue)}
#listInner .row.on .fr{color:var(--pv-blue-d)}
#listInner .row .r1{
  display:flex;align-items:baseline;gap:8px;
  height:18px;line-height:18px;flex:0 0 18px
}
#listInner .row .fr{
  flex:1;min-width:0;font-size:14px;line-height:18px;font-weight:700;color:var(--pv-ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
#listInner .row .dt{flex-shrink:0;font-size:12px;line-height:18px;color:var(--pv-mut)}
#listInner .row .sj{
  display:flex;align-items:center;gap:6px;margin:0;
  height:18px;line-height:18px;flex:0 0 18px
}
#listInner .row .sj svg{width:12px;height:12px;flex-shrink:0;color:#d98613}
#listInner .row .sj span{
  min-width:0;font-size:13px;line-height:18px;color:var(--pv-ink-2);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
#listInner .row .lb{
  display:flex;gap:8px;margin:0;overflow:hidden;
  height:16px;line-height:16px;flex:0 0 16px
}
#listInner .row .lb i{
  font-style:normal;font-size:11px;line-height:16px;color:#647890;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
#listInner .row .lb i.sys{flex-shrink:0;color:#647890}
#listEmpty{
  display:none;position:absolute;left:0;right:0;top:46px;bottom:0;
  align-items:center;justify-content:center;text-align:center;
  padding:28px;color:var(--pv-mut);font-size:.9rem;line-height:1.6;background:#fff
}
.pv-list.empty #listEmpty{display:flex}

/* reader */
.pv-reader{display:flex;flex-direction:column;min-width:0;background:var(--pv-rail)}
.pv-rhead{gap:6px;overflow-x:auto}
#backBtn{display:none}
#rtabs{display:flex;gap:5px}
#rtabs button{
  background:transparent;border:1px solid transparent;border-radius:9px;
  color:#4f6884;cursor:pointer;font-size:.82rem;font-weight:700;
  padding:7px 14px;white-space:nowrap;letter-spacing:.01em;text-transform:none;
  transition:background .14s ease,color .14s ease,box-shadow .14s ease
}
#rtabs button:hover{background:#fff;color:var(--pv-blue-d);border-color:var(--pv-line)}
#rtabs button.on{
  background:linear-gradient(135deg,var(--pv-blue),var(--pv-blue-2));
  border-color:transparent;color:#fff;
  box-shadow:0 3px 10px rgba(22,105,196,.32)
}
#rtabs #attN{
  display:inline-block;margin-left:6px;font-size:.7rem;font-weight:800;
  background:#e0eaf5;color:#4a6a8c;border-radius:20px;padding:1px 7px
}
#rtabs button.on #attN{background:rgba(255,255,255,.28);color:#fff}
#rbody{flex:1;overflow-y:auto;padding:18px;min-height:0}
#rempty{
  display:flex;align-items:center;justify-content:center;height:100%;
  color:var(--pv-mut);font-size:.92rem;text-align:center;padding:24px
}
.card-m{background:#fff;border:1px solid var(--pv-line);border-radius:var(--pv-r);overflow:hidden;box-shadow:0 3px 14px rgba(13,40,71,.07)}
.card-m .mh{padding:18px 20px;border-bottom:1px solid var(--pv-line);background:linear-gradient(180deg,#f4faff,#fff)}
.card-m .mh h2{font-size:1.15rem;font-weight:800;color:var(--pv-ink);margin:0 0 11px;line-height:1.35;overflow-wrap:anywhere}
.card-m .mh .kv{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;margin:0;font-size:.86rem}
.card-m .mh dt{color:var(--pv-mut);font-weight:700}
.card-m .mh dd{margin:0;color:var(--pv-ink-2);overflow-wrap:anywhere}
.card-m .mh .em{color:#647890;font-weight:400}
.card-m .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.card-m .chips button{
  display:inline-flex;align-items:center;gap:6px;max-width:100%;
  background:var(--pv-tint);border:1px solid #bcd9f5;border-radius:20px;
  color:var(--pv-blue-d);cursor:pointer;font-size:.79rem;font-weight:700;padding:6px 13px;
  transition:background .14s ease,border-color .14s ease
}
.card-m .chips button svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.9;flex-shrink:0}
.card-m .chips button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card-m .chips button:hover{background:#d9ecff;border-color:#94c4ee}
.card-m .mbody{padding:0}
.card-m .mbody iframe{display:block;width:100%;height:560px;border:0;background:#fff}
.card-m .plain{
  padding:18px 20px;font-size:.91rem;line-height:1.7;color:#1c2c3e;
  white-space:pre-wrap;overflow-wrap:anywhere
}
.card-m .plain a{color:var(--pv-blue)}
.card-m .raw{
  padding:18px 20px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.79rem;line-height:1.7;color:#2b3a4a;white-space:pre-wrap;overflow-wrap:anywhere
}
.card-m .raw b{color:var(--pv-blue);font-weight:700}
.card-m .remote{
  display:flex;align-items:center;gap:11px;flex-wrap:wrap;
  background:var(--pv-amber-bg);border-bottom:1px solid var(--pv-amber-line);
  padding:11px 18px;font-size:.84rem;color:#8f5209
}
.card-m .remote button{
  background:#fff;border:1px solid #e0b95e;border-radius:9px;color:#8f5209;
  cursor:pointer;font-size:.81rem;font-weight:700;padding:7px 14px
}
.card-m .remote button:hover{background:#fff1d8;border-color:#cf9f42}
.card-m .cmp{border-collapse:collapse;font-size:.86rem}
.card-m .cmp th{text-align:left;background:#f2f8ff;color:var(--pv-ink);font-weight:800;padding:9px 12px;border-bottom:1px solid var(--pv-line)}
.card-m .cmp td{padding:8px 12px;border-bottom:1px solid #eef4fb;color:var(--pv-ink-2);overflow-wrap:anywhere}

/* attachments tab */
.atts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;padding:18px}
.att{
  border:1px solid var(--pv-line);border-radius:13px;padding:13px;text-align:center;background:#fff;
  transition:border-color .15s ease,box-shadow .15s ease
}
.att:hover{border-color:#bcd9f5;box-shadow:0 6px 18px rgba(22,105,196,.12)}
.att .pv{
  display:flex;align-items:center;justify-content:center;
  height:112px;background:linear-gradient(160deg,#f4faff,#e9f2fb);border-radius:10px;overflow:hidden;margin-bottom:10px
}
.att .pv img{max-width:100%;max-height:112px;object-fit:contain}
.att .pv svg{width:34px;height:34px;stroke:#7f9ab5;fill:none;stroke-width:1.7}
.att .nm{font-size:.83rem;font-weight:700;color:var(--pv-ink);overflow-wrap:anywhere;line-height:1.35}
.att .mt{font-size:.73rem;color:var(--pv-mut);margin:4px 0 10px;overflow-wrap:anywhere}
.att .dl{
  display:inline-flex;align-items:center;gap:6px;
  background:linear-gradient(135deg,var(--pv-blue),var(--pv-blue-2));
  border:0;border-radius:9px;color:#fff;cursor:pointer;
  font-size:.79rem;font-weight:700;padding:8px 16px;
  box-shadow:0 3px 9px rgba(22,105,196,.3);
  transition:box-shadow .15s ease,transform .12s ease
}
.att .dl svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2}
.att .dl:hover{box-shadow:0 6px 15px rgba(22,105,196,.38);transform:translateY(-1px)}

/* ---------- landing drop card ---------- */
.pv-drop{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:52px 24px;min-height:440px;
  background:
    radial-gradient(680px 340px at 50% 0%,rgba(43,138,232,.09),transparent 66%),
    radial-gradient(520px 300px at 90% 100%,rgba(100,181,246,.09),transparent 66%),
    linear-gradient(rgba(13,40,71,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(13,40,71,.028) 1px,transparent 1px),#fff;
  background-size:auto,auto,42px 42px,42px 42px,auto;
  transition:background-color .15s ease,box-shadow .15s ease
}
.pv-drop.hover{box-shadow:inset 0 0 0 3px var(--pv-blue);background-color:#eef7ff}
.pv-drop .dz{
  width:80px;height:80px;border-radius:24px;
  background:linear-gradient(135deg,var(--pv-blue),var(--pv-blue-2));
  display:flex;align-items:center;justify-content:center;margin-bottom:20px;
  box-shadow:0 10px 26px rgba(22,105,196,.34)
}
.pv-drop .dz svg{width:36px;height:36px;stroke:#fff;fill:none;stroke-width:1.9}
.pv-drop h2{font-size:1.6rem;font-weight:800;color:var(--pv-ink);margin:0 0 9px;letter-spacing:-.3px}
.pv-drop p{color:var(--pv-ink-2);font-size:.98rem;max-width:540px;margin:0 auto 22px;line-height:1.65}
.pv-drop .acts{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.pv-drop .big{
  display:inline-flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,var(--pv-blue),var(--pv-blue-2));
  border:0;border-radius:12px;color:#fff;cursor:pointer;
  font-size:1.02rem;font-weight:700;padding:15px 30px;
  box-shadow:0 8px 22px rgba(22,105,196,.34);
  transition:box-shadow .15s ease,transform .12s ease
}
.pv-drop .big:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(22,105,196,.42)}
.pv-drop .big:active{transform:translateY(0)}
.pv-drop .big svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2}
.pv-drop .alt{
  display:inline-flex;align-items:center;gap:9px;
  background:#fff;border:2px solid var(--pv-blue);border-radius:12px;
  color:var(--pv-blue);cursor:pointer;font-size:.98rem;font-weight:700;padding:13px 28px;
  transition:background .15s ease,border-color .15s ease,transform .12s ease
}
.pv-drop .alt svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2}
.pv-drop .alt:hover{background:var(--pv-tint);border-color:var(--pv-blue-d);color:var(--pv-blue-d);transform:translateY(-2px)}
.pv-drop .exts{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-top:26px;max-width:640px}
.pv-drop .exts span{
  background:#fff;border:1px solid #bcd9f5;border-radius:20px;
  color:var(--pv-blue-d);font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:5px 12px
}
.pv-drop .fine{margin-top:22px;color:var(--pv-mut);font-size:.83rem;max-width:560px}

/* busy overlay */
.pv-busy{
  display:none;position:absolute;inset:0;z-index:20;
  flex-direction:column;align-items:center;justify-content:center;gap:15px;
  background:rgba(255,255,255,.95);padding:24px;text-align:center
}
#drop.busy ~ .pv-busy{display:flex}
.pv-busy .sp{
  width:40px;height:40px;border-radius:50%;
  border:3px solid #dbe9f7;border-top-color:var(--pv-blue);
  animation:pvspin .8s linear infinite
}
@keyframes pvspin{to{transform:rotate(360deg)}}
#busyTxt{font-size:.95rem;font-weight:700;color:var(--pv-blue-d)}
.pv-busy .track{width:min(320px,80%);height:7px;background:#e6eef7;border-radius:20px;overflow:hidden}
#busyBar{display:block;height:7px;width:0;background:linear-gradient(90deg,var(--pv-blue),var(--pv-blue-l));transition:width .18s ease}

/* ---------- responsive ---------- */
@media (max-width:1200px){
  .pv-work{grid-template-columns:auto 330px 1fr}
  .pv-folders{width:220px}
  #search{width:186px}
}
@media (max-width:991px){
  .pv-work{grid-template-columns:1fr 1fr;height:660px}
  .pv-folders{display:none}
  .pv-icon{display:none!important}
}
@media (max-width:900px){
  .pv-work{grid-template-columns:1fr;height:600px;position:relative}
  .pv-reader{
    position:absolute;inset:0;z-index:15;background:#fff;
    transform:translateX(101%);transition:transform .22s ease
  }
  body.mreader .pv-reader{transform:translateX(0)}
  #backBtn{
    display:inline-flex;align-items:center;gap:5px;
    background:#fff;border:1px solid var(--pv-line-2);border-radius:9px;
    color:var(--pv-blue-d);font-size:.78rem;font-weight:700;padding:7px 12px;cursor:pointer
  }
  .card-m .mbody iframe{height:440px}
}
@media (max-width:600px){
  #pvapp{border-radius:14px}
  .pv-bar{padding:10px}
  .pv-bar-r{margin-left:0;width:100%}
  .pv-btn,.pv-icon,#search,#fileSel{min-height:42px}
  .pv-search{flex:1}
  #search{width:100%}
  .pv-fileinfo{display:none}
  #fileSel{max-width:100%;flex:1}
  .pv-drop{padding:36px 16px;min-height:380px}
  .pv-drop h2{font-size:1.3rem}
  .pv-drop .dz{width:68px;height:68px;border-radius:20px}
  .pv-drop .big,.pv-drop .alt{width:100%;justify-content:center}
  .atts{grid-template-columns:1fr 1fr;padding:14px}
  #rbody{padding:12px}
  .card-m .mbody iframe{height:400px}
}
