@font-face{font-family:Vaz;src:url(f/v-400.woff2)format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Vaz;src:url(f/v-600.woff2)format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Vaz;src:url(f/v-700.woff2)format('woff2');font-weight:700;font-display:swap}
[hidden]{display:none!important}

:root{
  --bg:#090C1E;--s1:#131735;--s2:#1A1F44;
  --fg:#F2F5FF;--dim:#9AA7CC;
  --b1:#4338CA;--b2:#2563EB;--b3:#06B6D4;
  --grad:linear-gradient(120deg,#4338CA,#2563EB,#06B6D4);
  --glass:rgba(255,255,255,.05);--gline:rgba(255,255,255,.1);
  --r:22px;--rs:16px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);position:relative;
  font-family:Vaz,'Segoe UI',Tahoma,system-ui,sans-serif;
  font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased;
  padding:16px 15px calc(112px + env(safe-area-inset-bottom))}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.3px}
h2{font-size:18px}p{margin:2px 0}
.dim{color:var(--dim)}.sm{font-size:12.5px}.mid{text-align:center}
.hgrow{flex:1;min-width:0}
svg{fill:none;stroke:currentColor;stroke-width:1.9;
  stroke-linecap:round;stroke-linejoin:round}
.ic18{width:18px;height:18px}.ic20{width:20px;height:20px}
.ic24{width:24px;height:24px}
.glass{background:var(--glass);backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);border:1px solid var(--gline)}
.stage{display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:18px;min-height:74vh;text-align:center}
.mark{width:132px;height:132px}
.spin-slow{animation:spin 22s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* هاله پس‌زمینه */
.aura{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.aura i{position:absolute;display:block;border-radius:50%;filter:blur(70px);
  opacity:.2;animation:float 9s ease-in-out infinite}
.aura i:nth-child(1){width:260px;height:260px;background:#3b82f6;
  inset-block-start:-70px;inset-inline-end:-60px}
.aura i:nth-child(2){width:230px;height:230px;background:#8b5cf6;
  inset-block-start:38%;inset-inline-start:-90px;animation-delay:3s}
.aura i:nth-child(3){width:200px;height:200px;background:#ec4899;
  inset-block-end:-60px;inset-inline-end:-50px;animation-delay:5s;opacity:.14}
@keyframes float{50%{transform:translateY(-24px)}}

/* سرصفحه */
.hero{margin-bottom:18px}
.hrow{display:flex;align-items:center;gap:11px}
.logo{width:40px;height:40px;flex:0 0 auto}
.brand{font-size:25px;background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.quota{display:flex;flex-direction:column;align-items:center;min-width:60px;
  padding:8px 13px;border-radius:var(--rs);color:var(--fg);font:inherit;
  line-height:1.2;cursor:pointer}
.quota b{font-size:17px;background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.quota small{font-size:10px;color:var(--dim)}
.notice{border-radius:var(--rs);padding:11px 14px;font-size:13px;
  margin-bottom:14px;border-inline-start:3px solid var(--b2)}

/* جست‌وجو */
.find{position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:9px;
  border-radius:999px;padding:0 17px;min-height:52px;color:var(--dim)}
.find:focus-within{border-color:rgba(59,130,246,.5)}
.find input{flex:1;border:0;background:transparent;color:var(--fg);
  font:inherit;min-height:50px;outline:none}
.find input::-webkit-search-cancel-button{display:none}

/* دسته */
.segs{display:flex;gap:8px;overflow-x:auto;padding:15px 0 5px;scrollbar-width:none}
.segs.wrap{flex-wrap:wrap;overflow:visible}
.segs::-webkit-scrollbar{display:none}
.seg{flex:0 0 auto;min-height:42px;padding:0 16px;border:1px solid var(--gline);
  border-radius:999px;background:var(--glass);color:var(--dim);font:inherit;
  font-size:13.5px;cursor:pointer;display:flex;align-items:center;
  transition:all .25s cubic-bezier(.4,0,.2,1)}
.seg[aria-pressed="true"]{background:var(--grad);color:#fff;
  border-color:transparent;font-weight:600;
  box-shadow:0 8px 22px -8px rgba(139,92,246,.6)}

/* کارت */
.grid{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:11px}
@media(min-width:560px){.grid{grid-template-columns:repeat(3,1fr)}}
.card{position:relative;overflow:hidden;display:flex;flex-direction:column;
  gap:10px;padding:15px 14px;min-height:134px;text-align:start;cursor:pointer;
  border:1px solid var(--gline);border-radius:var(--r);color:var(--fg);
  background:var(--glass);backdrop-filter:blur(18px);font:inherit;
  transition:transform .3s cubic-bezier(.4,0,.2,1),border-color .3s;
  animation:up .4s cubic-bezier(.2,.75,.3,1) both;
  animation-delay:calc(var(--i,0)*26ms)}
@keyframes up{from{opacity:0;transform:translateY(16px)}}
.card:active{transform:scale(.97)}
.card::before{content:"";position:absolute;inset-block-start:-45%;
  inset-inline-end:-32%;width:120px;height:120px;border-radius:50%;
  background:var(--g);opacity:.2;filter:blur(22px)}
.tile{position:relative;width:42px;height:42px;border-radius:13px;
  display:grid;place-items:center;background:var(--g,var(--grad));color:#fff;
  flex:0 0 auto;box-shadow:0 8px 20px -8px rgba(0,0,0,.6)}
.tile.lg{width:48px;height:48px;border-radius:15px}
.card b{font-size:14px;font-weight:600;line-height:1.45}
.card small{color:var(--dim);font-size:11.5px;line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card .pin{position:absolute;inset-block-start:13px;inset-inline-end:13px;
  font-size:9.5px;font-weight:600;border-radius:999px;padding:2px 9px;
  background:var(--g);color:#fff}
.card[data-off="1"]{opacity:.45}
.card[data-off="1"] .pin{background:var(--s2)}
.g-pdf{--g:linear-gradient(135deg,#f87171,#dc2626)}
.g-img{--g:linear-gradient(135deg,#a78bfa,#7c3aed)}
.g-media{--g:linear-gradient(135deg,#f472b6,#db2777)}
.g-priv{--g:linear-gradient(135deg,#34d399,#059669)}
.g-other{--g:linear-gradient(135deg,#60a5fa,#2563eb)}

/* نوار عنوان */
.bar{display:flex;align-items:center;gap:11px;margin-bottom:20px}
.rnd{flex:0 0 auto;width:46px;height:46px;display:grid;place-items:center;
  border-radius:50%;color:var(--fg);cursor:pointer;font:inherit}
.rnd.sm{width:36px;height:36px;font-size:16px}

/* انتخاب فایل */
.drop{display:flex;flex-direction:column;align-items:center;gap:8px;
  border-style:dashed!important;border-width:1.7px!important;
  border-radius:var(--r);padding:32px 16px;cursor:pointer;text-align:center;
  transition:border-color .3s}
.drop:active{border-color:rgba(139,92,246,.7)!important}
.dropic{display:grid;place-items:center;width:52px;height:52px;
  border-radius:50%;background:var(--grad);color:#fff;
  box-shadow:0 10px 26px -8px rgba(139,92,246,.7)}
.files{list-style:none;margin:13px 0 0;padding:0;display:flex;
  flex-direction:column;gap:8px}
.files li{display:flex;align-items:center;gap:10px;background:var(--glass);
  border:1px solid var(--gline);border-radius:var(--rs);padding:11px 14px;
  font-size:13px;animation:up .3s both}
.files li span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.files li button{width:32px;height:32px;border:0;border-radius:50%;
  background:transparent;color:var(--dim);cursor:pointer;display:grid;place-items:center}
.lbl{font-size:12.5px;color:var(--dim);margin:22px 0 2px;font-weight:600}
.txt{width:100%;min-height:52px;border-radius:var(--rs);color:var(--fg);
  padding:0 16px;font:inherit;outline:none;margin-top:9px}
.txt:focus{border-color:rgba(59,130,246,.55)}

/* دکمه */
.dock{position:fixed;inset-inline:0;inset-block-end:0;z-index:9;
  padding:14px 15px calc(14px + env(safe-area-inset-bottom));
  background:linear-gradient(to top,var(--bg) 58%,transparent)}
.dock.col{display:flex;flex-direction:column;gap:9px}
.dock .row{display:flex;gap:9px}
.cta,.flat{min-height:54px;border-radius:var(--r);font:inherit;font-weight:600;
  font-size:15px;cursor:pointer;display:flex;align-items:center;
  justify-content:center;gap:8px;width:100%;
  transition:transform .2s,box-shadow .3s}
.cta{border:0;background:var(--grad);color:#fff;
  box-shadow:0 12px 30px -10px rgba(139,92,246,.75)}
.cta:disabled{opacity:.35;box-shadow:none}
.cta:active,.flat:active{transform:scale(.98)}
.flat{background:var(--glass);color:var(--fg);border:1px solid var(--gline);
  backdrop-filter:blur(18px)}
.flat.sq{width:58px;flex:0 0 auto}
#cancel{width:auto;padding:0 28px;min-height:48px}

/* حلقه */
.ring{position:relative;width:120px;height:120px}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:2.6}
.rb{stroke:var(--s1)}
.rf{stroke:url(#gA);stroke-linecap:round;stroke-dasharray:106.8;
  stroke-dashoffset:106.8;transition:stroke-dashoffset .3s ease}
#r-pct{position:absolute;inset:0;display:grid;place-items:center;
  font-size:18px;font-weight:700}

/* نتیجه */
#r-img{width:100%;border-radius:var(--r);background:var(--s1);
  border:1px solid var(--gline)}
.txtbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.txtbar span{margin-inline-start:auto}
#r-text{border-radius:var(--r);padding:16px;margin:0;max-height:54vh;
  overflow:auto;white-space:pre-wrap;word-break:break-word;
  font-family:inherit;font-size:var(--ts,14.5px);line-height:2.15}
.fcard{display:flex;align-items:center;gap:14px;border-radius:var(--r);padding:17px}
.err{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.3);
  border-inline-start-width:3px;border-radius:var(--rs);padding:12px 14px;
  font-size:13px;white-space:pre-wrap;margin-top:15px}

.toast{position:fixed;inset-inline:0;z-index:30;margin:0 auto;
  inset-block-end:calc(96px + env(safe-area-inset-bottom));
  width:max-content;max-width:86%;background:var(--grad);color:#fff;
  border-radius:999px;padding:12px 22px;font-size:13.5px;font-weight:600;
  box-shadow:0 14px 34px -10px rgba(0,0,0,.7);animation:tin .26s ease both}
@keyframes tin{from{opacity:0;transform:translateY(14px)}}

::-webkit-scrollbar{width:7px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--s2);border-radius:4px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;
  transition:none!important}}

.hintline{margin:14px 3px 0;line-height:1.8}
