/* ═══════════════════════════════════════════════════════════
   SentinelOS Phone — پوسته‌ی موبایل به سبک iOS
   فقط زیر ۸۶۰px فعال می‌شود و جای پوسته‌ی دسکتاپ را می‌گیرد.
   ═══════════════════════════════════════════════════════════ */

:root{
  --ph-status:48px;      /* نوار وضعیت بالا */
  --ph-ind:24px;         /* نوار خانه پایین */
  --ph-dock:88px;        /* داک */
  --ph-r:22px;           /* گردی آیکون‌ها */
  --ph-blur:blur(28px) saturate(180%);
}

/* در حالت دسکتاپ، کل پوسته‌ی موبایل مخفی است */
#phone{display:none}

@media (max-width:860px){

/* ───────── پنهان کردن اجزای دسکتاپ ───────── */
#taskbar,#mnav,#deskIcons,#snapPrev,#snap{display:none !important}
#start,#quick,#notifc,#widgets{display:none !important}

#phone{
  display:block;position:absolute;inset:0;z-index:850;pointer-events:none
}
#phone > *{pointer-events:auto}

/* ───────── نوار وضعیت ───────── */
#ph-status{
  position:absolute;top:0;left:0;right:0;height:var(--ph-status);z-index:60;
  display:flex;align-items:flex-end;justify-content:space-between;
  padding:0 22px 6px;color:#fff;font-size:14px;font-weight:600;
  padding-top:env(safe-area-inset-top);
  text-shadow:0 1px 3px rgba(0,0,0,.35);transition:color .25s
}
#ph-status.dark{color:#000;text-shadow:none}
.ph-st-r{display:flex;align-items:center;gap:6px;font-size:12.5px}
.ph-st-r .bat{
  width:24px;height:12px;border:1.4px solid currentColor;border-radius:3.5px;
  position:relative;opacity:.9
}
.ph-st-r .bat::after{
  content:'';position:absolute;right:-3.5px;top:3px;width:2px;height:6px;
  background:currentColor;border-radius:0 2px 2px 0;opacity:.6
}
.ph-st-r .bat i{
  position:absolute;inset:1.5px;background:currentColor;border-radius:1.5px;
  width:70%;display:block
}

/* ───────── صفحه‌ی خانه ───────── */
#ph-home{
  position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;
  padding-top:calc(var(--ph-status) + 14px);transition:.35s var(--ease)
}
#ph-home.hide{opacity:0;transform:scale(1.08);pointer-events:none}
.ph-grid{
  flex:1;display:grid;grid-template-columns:repeat(4,1fr);
  grid-auto-rows:min-content;gap:20px 8px;padding:8px 16px;align-content:start;overflow-y:auto
}
.ph-app{
  display:flex;flex-direction:column;align-items:center;gap:7px;
  transition:transform .12s
}
.ph-app:active{transform:scale(.9)}
.ph-app .ic{
  width:60px;height:60px;border-radius:var(--ph-r);display:grid;place-items:center;
  font-size:31px;position:relative;
  background:linear-gradient(160deg,rgba(255,255,255,.30),rgba(255,255,255,.12));
  border:.5px solid rgba(255,255,255,.35);
  box-shadow:0 6px 16px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.35);
  backdrop-filter:blur(12px)
}
.ph-app .nm{
  font-size:11px;color:#fff;text-align:center;line-height:1.35;max-width:74px;
  text-shadow:0 1px 3px rgba(0,0,0,.7);
  overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical
}
.ph-app .badge{
  position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;
  border-radius:99px;background:#ff3b30;color:#fff;font-size:11px;font-weight:700;
  display:grid;place-items:center;border:1.5px solid rgba(0,0,0,.15)
}

/* نقطه‌های صفحه */
.ph-dots{display:flex;justify-content:center;gap:7px;padding:6px 0 10px}
.ph-dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.4)}
.ph-dots i.on{background:#fff}

/* داک */
.ph-dock{
  margin:0 12px calc(var(--ph-ind) + 6px);padding:12px 10px;border-radius:32px;
  background:rgba(255,255,255,.18);backdrop-filter:var(--ph-blur);
  border:.5px solid rgba(255,255,255,.25);
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px
}
.ph-dock .ph-app .nm{display:none}

/* ───────── نوار خانه (Home Indicator) ───────── */
#ph-ind{
  position:absolute;left:0;right:0;bottom:0;height:var(--ph-ind);z-index:70;
  display:flex;align-items:center;justify-content:center;touch-action:none;
  padding-bottom:env(safe-area-inset-bottom)
}
#ph-ind::before{
  content:'';width:134px;height:5px;border-radius:99px;background:rgba(255,255,255,.75);
  transition:.2s
}
#ph-ind.dark::before{background:rgba(0,0,0,.45)}
#ph-ind:active::before{transform:scaleX(.9);opacity:.6}

/* ───────── پنجره‌ها به شکل اپ تمام‌صفحه ───────── */
body.phone .win{
  inset:0 !important;width:100% !important;height:100% !important;
  border-radius:0 !important;border:0 !important;transform:none !important;
  padding-top:var(--ph-status);padding-bottom:var(--ph-ind);
  background:var(--solid);z-index:40 !important;
  animation:phAppIn .34s cubic-bezier(.2,.9,.25,1)
}
@keyframes phAppIn{
  from{opacity:.4;transform:scale(.86) translateY(30px);border-radius:26px}
}
body.phone .win.min{display:none}
body.phone .win-cap{
  position:absolute;top:var(--ph-status);left:0;right:0;height:44px;
  background:var(--layer);border-bottom:.5px solid var(--divider);z-index:5;padding:0 8px
}
body.phone .win-body{padding-top:44px}
body.phone .win-ctl button.mi,body.phone .win-ctl button.mx{display:none}
body.phone .win-ctl button.cl{
  width:44px;height:44px;font-size:15px;border-radius:50%;color:var(--txt2)
}
body.phone .win-ttl{font-size:14px;font-weight:600;color:var(--txt);justify-content:center}
body.phone .rz{display:none}

/* ───────── جابه‌جاگر اپ‌ها (App Switcher) ───────── */
#ph-switch{
  position:absolute;inset:0;z-index:80;display:none;
  background:rgba(0,0,0,.55);backdrop-filter:blur(24px);
  padding:calc(var(--ph-status) + 20px) 0 calc(var(--ph-ind) + 20px);
  flex-direction:column
}
#ph-switch.on{display:flex;animation:fade .22s}
.ph-sw-t{text-align:center;color:rgba(255,255,255,.8);font-size:13px;margin-bottom:14px}
.ph-sw-scroll{
  flex:1;display:flex;gap:14px;overflow-x:auto;padding:0 24px;align-items:stretch;
  scroll-snap-type:x mandatory;scrollbar-width:none
}
.ph-sw-scroll::-webkit-scrollbar{display:none}
.ph-card{
  flex:0 0 76%;scroll-snap-align:center;border-radius:22px;overflow:hidden;
  background:var(--solid);border:.5px solid var(--stroke-s);
  box-shadow:0 18px 40px rgba(0,0,0,.45);display:flex;flex-direction:column;
  transition:transform .2s
}
.ph-card:active{transform:scale(.97)}
.ph-card-top{
  display:flex;align-items:center;gap:9px;padding:12px 14px;
  border-bottom:.5px solid var(--divider);font-size:13px;font-weight:600
}
.ph-card-top .x{margin-left:auto;width:26px;height:26px;border-radius:50%;
  background:var(--hover);display:grid;place-items:center;font-size:12px;color:var(--txt2)}
.ph-card-prev{
  flex:1;display:grid;place-items:center;font-size:56px;
  background:linear-gradient(160deg,rgba(0,120,212,.16),rgba(169,123,255,.12))
}
.ph-sw-empty{color:rgba(255,255,255,.65);text-align:center;padding:50px;font-size:14px}

/* ───────── مرکز کنترل ───────── */
#ph-cc{
  position:absolute;top:0;left:8px;right:8px;z-index:90;
  transform:translateY(-115%);transition:transform .38s cubic-bezier(.2,.9,.25,1);
  background:rgba(30,30,30,.55);backdrop-filter:var(--ph-blur);
  border:.5px solid rgba(255,255,255,.16);border-radius:0 0 30px 30px;
  padding:calc(var(--ph-status) + 10px) 14px 20px
}
[data-theme="light"] #ph-cc{background:rgba(250,250,250,.65)}
#ph-cc.on{transform:translateY(0)}
.cc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.cc-t{
  aspect-ratio:1;border-radius:20px;background:rgba(255,255,255,.14);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  font-size:10px;color:var(--txt);border:.5px solid rgba(255,255,255,.12)
}
[data-theme="light"] .cc-t{background:rgba(0,0,0,.06)}
.cc-t .i{font-size:20px}
.cc-t.on{background:var(--accent);color:#fff;border-color:transparent}
.cc-t.wide{grid-column:span 2;aspect-ratio:2.06}
.cc-sl{
  grid-column:span 4;height:56px;border-radius:20px;background:rgba(255,255,255,.14);
  display:flex;align-items:center;gap:12px;padding:0 16px;position:relative;overflow:hidden
}
[data-theme="light"] .cc-sl{background:rgba(0,0,0,.06)}
.cc-sl .fill{position:absolute;inset:0;background:rgba(255,255,255,.35);width:60%;pointer-events:none}
.cc-sl .i,.cc-sl input{position:relative;z-index:1}
.cc-sl input{flex:1;-webkit-appearance:none;height:4px;border-radius:9px;background:rgba(255,255,255,.35);outline:none}
.cc-sl input::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#fff}
.cc-handle{
  width:44px;height:4px;border-radius:99px;background:rgba(255,255,255,.4);
  margin:14px auto 0
}

/* ───────── صفحه قفل موبایل ───────── */
@media (max-width:860px){
  .lk-time .t{font-size:72px;font-weight:300;letter-spacing:-1px}
  .lk-time .d{font-size:17px}
  .lk-time{top:11vh}
  .lk-card,.lk-field{width:min(86vw,320px)}
  .lk-signin{padding:0 20px}
  .lk-av{width:88px;height:88px;font-size:42px}
  .lk-corner.r{bottom:calc(var(--ph-ind) + 14px)}
}

/* ───────── پنل مأموریت به شکل شیت پایین ───────── */
body.phone #hud{
  position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;z-index:95;
  max-height:72vh;border-radius:22px 22px 0 0;border-bottom:0;
  padding-bottom:calc(var(--ph-ind) + 4px);
  animation:sheetUp .32s cubic-bezier(.2,.9,.25,1)
}
@keyframes sheetUp{from{transform:translateY(100%)}}
body.phone #hud.collapsed{
  left:auto;right:10px;bottom:calc(var(--ph-ind) + 10px);border-radius:26px;
  max-height:none;padding-bottom:0
}
body.phone #hud::before{
  content:'';position:absolute;top:7px;left:50%;transform:translateX(-50%);
  width:40px;height:4px;border-radius:99px;background:var(--stroke-s)
}
body.phone .hud-top{padding-top:17px}
body.phone .hud-task{padding:13px 14px}
body.phone .hud-act button{height:36px;font-size:12.5px;padding:0 14px}
body.phone .hud-in input{height:38px;font-size:13px}
body.phone .hud-in button{height:38px;padding:0 16px}

/* دکمه‌ی شناور مأموریت وقتی شیت بسته است */
#ph-mission{
  position:absolute;left:14px;bottom:calc(var(--ph-ind) + 12px);z-index:75;
  height:46px;padding:0 17px;border-radius:99px;display:none;align-items:center;gap:9px;
  background:var(--accent);color:#fff;font-size:13px;font-weight:600;
  box-shadow:0 8px 22px rgba(0,120,212,.45);animation:hudIn .3s var(--ease)
}
#ph-mission.on{display:flex}
#ph-mission .n{
  background:rgba(255,255,255,.28);border-radius:99px;padding:1px 8px;font-size:11.5px
}

/* ───────── لمس بهتر در همه‌ی برنامه‌ها ───────── */
body.phone button,body.phone .opt,body.phone .les,body.phone .ob-opt{min-height:44px}
body.phone .ac-nav{min-height:44px;padding:11px 15px}
body.phone .term{font-size:13px}
body.phone .term-keys button{min-width:44px;height:42px;font-size:14px}
body.phone .term-fld{font-size:16px}   /* جلوگیری از زوم خودکار iOS */
body.phone input,body.phone select,body.phone textarea{font-size:16px}
body.phone .lp-body{padding:18px 15px 30px}
body.phone .lp-foot{padding:11px 14px calc(11px + env(safe-area-inset-bottom))}
body.phone .lp-foot .btn{min-height:44px;flex:1}
body.phone .les-grid{grid-template-columns:1fr}
body.phone .ob-opts.two{grid-template-columns:1fr}
body.phone .ex-grid{grid-template-columns:repeat(3,1fr)}
body.phone .ex-cmd{overflow-x:auto;scrollbar-width:none}
body.phone .ex-cmd::-webkit-scrollbar{display:none}
body.phone .br-view{-webkit-overflow-scrolling:touch}
body.phone .cert{aspect-ratio:auto;min-height:60vh;padding:8% 7%}

}  /* پایان media */

/* ───────── چیدمان چپ‌به‌راست موبایل ───────── */
@media (max-width:860px){
  [dir="ltr"] #ph-mission{left:auto;right:14px}
  [dir="ltr"] body.phone #hud.collapsed{right:auto;left:10px}
}
