/* Mood status page (#/status) — AGENT-T3 — ตาม demo/mood-status.html
 * prefix .st- ทั้งหมด | หน้า light: หมึก #1f3350 / จาง #7d92ad / มิ้นต์ #4ade80 */

.st-top .st-title{font-size:16.5px;color:var(--card-ink)}
.st-iconbtn{background:var(--card-glass);border:1px solid var(--card-brd);color:var(--card-ink);
  transition:background .15s, transform .12s}
.st-iconbtn:active{transform:scale(.9)}
.st-iconbtn:hover{background:var(--card-glass)}

.st-wrap{flex:1;display:flex;flex-direction:column;gap:14px;
  padding:4px 12px calc(28px + env(safe-area-inset-bottom))}

/* ---- การ์ดกระจกขาว + เงาหรูซ้อนชั้น ---- */
.st-card{background:var(--card-glass);border:1px solid var(--card-brd);
  border-radius:26px;padding:14px;
  backdrop-filter:blur(16px) saturate(165%);-webkit-backdrop-filter:blur(16px) saturate(165%);
  box-shadow:0 18px 44px rgba(47,139,255,.2), 0 4px 12px rgba(9,30,60,.18),
    inset 0 1px 0 rgba(255,255,255,.85)}
.st-h{font-size:13.5px;font-weight:700;color:var(--card-ink);margin-bottom:12px}
.st-sub{font-size:11.5px;color:var(--card-ink-dim);margin:14px 0 6px;padding:0 2px}
.st-sub-h{font-size:12px;font-weight:600;color:var(--card-ink-dim)}
.st-sec-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 8px;margin-bottom:6px}

/* ---- การ์ดสถานะปัจจุบัน (เรืองเขียว + shimmer) ---- */
.st-current{position:relative;border-color:rgba(167,243,208,.8);overflow:hidden;
  box-shadow:0 0 34px rgba(74,222,128,.3), 0 18px 44px rgba(47,139,255,.14),
    0 4px 12px rgba(9,30,60,.16), inset 0 1px 0 rgba(255,255,255,.85)}
.st-current::before{content:'';position:absolute;top:-10%;bottom:-10%;left:0;width:42%;
  background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.22) 40%,rgba(170,215,255,.3) 52%,transparent 100%);
  transform:translateX(-140%) skewX(-18deg);
  animation:stShimmer 7.5s ease-in-out infinite;pointer-events:none;z-index:1}
@keyframes stShimmer{0%{transform:translateX(-140%) skewX(-18deg)}
  28%,100%{transform:translateX(340%) skewX(-18deg)}}
.st-cur-row{display:flex;align-items:flex-start;gap:14px}
.st-cur-icon-wrap{flex:none;width:64px;height:64px;border-radius:50%;
  background:linear-gradient(135deg,#d1fae5,#a7f3d0);
  border:2px solid #fff;box-shadow:0 0 18px rgba(74,222,128,.45);
  display:flex;align-items:center;justify-content:center}
.st-cur-icon{font-size:34px;line-height:1;user-select:none}
.st-swap{transition:opacity .22s ease, transform .22s ease}
.st-swap.out{opacity:0;transform:translateY(6px) scale(.9)}
.st-cur-body{min-width:0}
.st-cur-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.st-cur-name{font-size:20px;font-weight:700;color:var(--card-ink);line-height:1.2;padding-top:4px;min-width:0}
.st-cur-expire{flex:none;font-size:11px;color:var(--card-ink-dim);padding-top:6px;white-space:nowrap}
.st-cur-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:10px}
.st-cur-live{display:flex;align-items:center;gap:6px;min-width:0;
  font-size:11.5px;font-weight:500;color:#059669}
.st-live-dot{flex:none;width:8px;height:8px;border-radius:50%;background:#4ade80;
  box-shadow:0 0 18px rgba(74,222,128,.45);animation:stPulse 1.4s infinite}
@keyframes stPulse{0%,100%{opacity:1}50%{opacity:.35}}
.st-end{flex:none;padding:8px 14px;border-radius:999px;font-size:12px;font-weight:700;color:var(--card-ink-dim);
  border:1px solid rgba(203,213,225,.9);background:var(--card-glass);
  transition:background .15s, color .15s, transform .15s}
.st-end:hover{background:#fff;color:var(--card-ink);transform:scale(1.05)}
.st-end:active{transform:scale(.95)}
.st-cur-sync{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:12px;
  border-top:1px solid var(--card-brd);font-size:11.5px;color:var(--card-ink-dim)}
.st-cur-sync svg{width:16px;height:16px;flex:none;color:#10b981}

/* ---- เพื่อน 5 การ์ด (เลื่อนแนวนอน) ---- */
.st-viewall{font-size:11.5px;font-weight:600;color:#2f8bff;transition:transform .12s}
.st-viewall:hover{text-decoration:underline}
.st-viewall:active{transform:scale(.95)}
.st-friends{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 6px;scrollbar-width:none}
.st-friends::-webkit-scrollbar{display:none}
.st-friend{flex:none;width:104px;display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:12px 8px;border-radius:20px;
  background:rgba(255,255,255,.38);border:1px solid var(--card-brd);
  backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);
  box-shadow:0 4px 12px rgba(9,30,60,.12), inset 0 1px 0 rgba(255,255,255,.85);
  transition:transform .15s}
.st-friend:hover{transform:scale(1.05)}
.st-friend:active{transform:scale(.95)}
.st-friend-av{position:relative;flex:none}
.st-friend-ico{position:absolute;right:-4px;bottom:-4px;width:24px;height:24px;border-radius:50%;
  background:#fff;box-shadow:0 1px 4px rgba(9,30,60,.25);
  display:flex;align-items:center;justify-content:center;font-size:13px}
.st-friend-st{font-size:11px;color:var(--card-ink-dim);line-height:1.25;text-align:center;min-height:27px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.st-friend-name{max-width:100%;font-size:12px;font-weight:600;color:var(--card-ink)}

/* ---- ชิปหมวด / ชิประยะเวลา ---- */
.st-chip-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.st-chip-row::-webkit-scrollbar{display:none}
.st-chip{flex:none;padding:8px 16px;border-radius:999px;font-size:12.5px;font-weight:500;color:var(--card-ink);
  border:1px solid var(--card-brd);background:var(--card-glass);
  transition:all .25s ease}
.st-chip:hover{transform:scale(1.05)}
.st-chip:active{transform:scale(.95)}
.st-chip.on{border-color:transparent;color:#065f46;font-weight:700;
  background:linear-gradient(90deg,#6ee7b7,#4ade80);
  box-shadow:0 0 16px rgba(74,222,128,.45)}

/* ---- กริดสถานะ 3 คอลัมน์ ---- */
.st-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;transition:opacity .22s ease}
.st-grid.fading{opacity:0}
.st-status{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;
  border-radius:20px;border:1px solid var(--card-brd);background:rgba(255,255,255,.45);
  transition:transform .2s, border-color .25s, background .25s, box-shadow .25s}
.st-status:hover{transform:scale(1.04)}
.st-status:active{transform:scale(.95)}
.st-status.on{border-color:rgba(74,222,128,.9);background:rgba(236,253,245,.85);
  box-shadow:0 0 16px rgba(74,222,128,.45), inset 0 0 0 1px rgba(74,222,128,.35)}
.st-status.hidden{display:none}
.st-status-ico{width:44px;height:44px;border-radius:50%;font-size:20px;line-height:1;user-select:none;
  background:var(--card-glass);border:1px solid #fff;
  box-shadow:0 6px 20px rgba(80,140,220,.15);
  display:flex;align-items:center;justify-content:center}
.st-status-name{font-size:11px;font-weight:500;color:var(--card-ink);line-height:1.25;text-align:center;
  min-height:28px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ---- กำหนดเอง ---- */
.st-custom{overflow:visible}
.st-custom-row{position:relative;display:flex;gap:8px}
.st-input{flex:1;min-width:0;padding:12px 16px;border-radius:20px;font-size:13.5px;color:var(--card-ink);
  background:var(--card-glass);border:1px solid #fff;
  transition:border-color .15s, box-shadow .15s}
.st-input::placeholder{color:rgba(125,146,173,.6)}
.st-input:focus{border-color:#6ee7b7;box-shadow:0 0 0 2px rgba(167,243,208,.6)}
.st-icon-btn{flex:none;width:48px;height:48px;border-radius:20px;font-size:22px;line-height:1;
  background:var(--card-glass);border:1px solid #fff;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s, transform .15s}
.st-icon-btn:hover{background:#fff;transform:scale(1.05)}
.st-icon-btn:active{transform:scale(.95)}
.st-icon-pop{position:absolute;right:0;bottom:calc(100% + 8px);z-index:20;width:196px;
  display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:10px;border-radius:20px;
  background:var(--card-glass);border:1px solid var(--card-brd);
  backdrop-filter:blur(22px) saturate(170%);-webkit-backdrop-filter:blur(22px) saturate(170%);
  box-shadow:0 18px 44px rgba(47,139,255,.2), 0 4px 12px rgba(9,30,60,.18);
  transform-origin:bottom right;
  transition:opacity .2s ease, transform .2s ease}
.st-icon-pop.hidden{opacity:0;transform:scale(.85) translateY(6px);pointer-events:none}
.st-icon-choice{width:40px;height:40px;border-radius:12px;font-size:20px;line-height:1;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s, transform .15s}
.st-icon-choice:hover{background:rgba(209,250,229,.8);transform:scale(1.1)}
.st-icon-choice:active{transform:scale(.9)}
.st-durs{display:flex;flex-wrap:wrap;gap:8px}
.st-durs .st-chip{padding:6px 14px;font-size:12px}
.st-save{display:block;width:100%;margin-top:16px;padding:12px;border-radius:20px;
  font-size:13.5px;font-weight:700;color:#fff;
  background:linear-gradient(90deg,#34d399,#4ade80);
  box-shadow:0 0 18px rgba(74,222,128,.45);
  transition:filter .15s, transform .15s}
.st-save:hover{filter:brightness(1.05);transform:scale(1.01)}
.st-save:active{transform:scale(.98)}

/* ---- ความเป็นส่วนตัว 3 รายการ ---- */
.st-privacy-h{padding:0 8px;margin-bottom:6px;display:block}
.st-privacy{padding:0;overflow:hidden}
.st-pv-row{width:100%;display:flex;align-items:center;gap:12px;padding:14px 16px;text-align:left;
  transition:background .15s}
button.st-pv-row:hover{background:var(--card-glass)}
button.st-pv-row:active{background:var(--card-glass)}
.st-pv-div{border-top:1px solid var(--card-brd);margin:0 16px}
.st-pv-ico{flex:none;width:32px;height:32px;border-radius:10px;color:#fff;
  display:flex;align-items:center;justify-content:center}
.st-pv-ico svg{width:16px;height:16px}
.st-pv-ico.blue{background:linear-gradient(135deg,#38bdf8,#2f8bff)}
.st-pv-ico.green{background:linear-gradient(135deg,#6ee7b7,#4ade80)}
.st-pv-ico.violet{background:linear-gradient(135deg,#a78bfa,#6366f1)}
.st-pv-t{font-size:13px;font-weight:500;color:var(--card-ink);min-width:0}
.st-pv-v{flex:none;font-size:11px;color:var(--card-ink-dim);max-width:40%;text-align:right}
.st-pv-chev{flex:none;width:16px;height:16px;color:var(--card-ink-dim);display:flex}
.st-pv-chev svg{width:16px;height:16px}

/* สวิตช์ */
.st-switch{position:relative;flex:none;width:46px;height:26px;border-radius:999px;
  background:rgba(148,163,184,.6);
  transition:background .25s ease, box-shadow .25s ease}
.st-switch .st-knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;
  background:#fff;box-shadow:0 1px 4px rgba(9,30,60,.3);
  transition:transform .25s cubic-bezier(.4,0,.2,1)}
.st-switch.on{background:linear-gradient(90deg,#6ee7b7,#4ade80);
  box-shadow:0 0 18px rgba(74,222,128,.45)}
.st-switch.on .st-knob{transform:translateX(20px)}

/* ---- Modal เพื่อน ---- */
.st-modal{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;
  padding:0 24px;background:rgba(7,20,41,.6);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  opacity:0;transition:opacity .3s ease}
.st-modal.open{display:flex}
.st-modal.show{opacity:1}
.st-modal-card{position:relative;width:100%;max-width:320px;padding:20px;border-radius:26px;text-align:center;
  background:var(--card-glass);border:1px solid var(--card-brd);
  backdrop-filter:blur(22px) saturate(170%);-webkit-backdrop-filter:blur(22px) saturate(170%);
  box-shadow:0 18px 44px rgba(47,139,255,.2), 0 4px 12px rgba(9,30,60,.18);
  transform:translateY(16px) scale(.97);
  transition:transform .3s cubic-bezier(.32,.72,.22,1)}
.st-modal.show .st-modal-card{transform:none}
.st-modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:50%;
  background:var(--card-glass);color:var(--card-ink);
  display:flex;align-items:center;justify-content:center;
  transition:background .15s, transform .12s}
.st-modal-close:hover{background:#fff}
.st-modal-close:active{transform:scale(.9)}
.st-modal-close svg{width:16px;height:16px}
.st-modal-av{position:relative;display:inline-block;margin-top:6px}
.st-modal-av .avatar{border:3px solid #fff;box-shadow:0 6px 20px rgba(80,140,220,.15)}
.st-modal-ico{position:absolute;right:-4px;bottom:-4px;width:32px;height:32px;border-radius:50%;
  background:#fff;box-shadow:0 1px 4px rgba(9,30,60,.25);
  display:flex;align-items:center;justify-content:center;font-size:16px}
.st-modal-name{font-size:17px;font-weight:700;color:var(--card-ink);margin-top:10px}
.st-modal-status{font-size:12.5px;color:var(--card-ink-dim);margin-top:4px}
.st-modal-chat{display:block;width:100%;margin-top:16px;padding:12px;border-radius:20px;
  font-size:13.5px;font-weight:700;color:#fff;
  background:linear-gradient(90deg,#34d399,#4ade80);
  box-shadow:0 0 18px rgba(74,222,128,.45);
  transition:filter .15s, transform .15s}
.st-modal-chat:hover{filter:brightness(1.05);transform:scale(1.02)}
.st-modal-chat:active{transform:scale(.97)}

/* จอแคบมาก */
@media (max-width:380px){
  .st-cur-name{font-size:18px}
  .st-cur-expire{font-size:10px}
  .st-chip{padding:7px 13px;font-size:12px}
  .st-pv-v{display:none}
}

/* ===== Sheet: ประวัติสถานะ / เพื่อนทั้งหมด / ช่วงการมองเห็น ===== */
.st-sheet{position:fixed;inset:0;z-index:130;display:none}
.st-sheet.open{display:block}
.st-sheet-bd{position:absolute;inset:0;background:rgba(10,26,48,.45);opacity:0;transition:opacity .25s}
.st-sheet.show .st-sheet-bd{opacity:1}
.st-sheet-card{position:absolute;left:50%;bottom:0;width:min(460px,100%);max-height:80vh;
  transform:translate(-50%,16px);opacity:0;transition:opacity .25s,transform .25s;
  display:flex;flex-direction:column;background:#f2f7fd;border-radius:24px 24px 0 0;
  box-shadow:0 -12px 36px rgba(20,50,90,.26)}
.st-sheet.show .st-sheet-card{opacity:1;transform:translate(-50%,0)}
.st-sheet-head{display:flex;align-items:center;gap:10px;padding:16px 16px 8px;flex:none}
.st-sheet-head h3{flex:1;font-size:14.5px;font-weight:800;color:var(--card-ink)}
.st-sheet-x{width:30px;height:30px;border-radius:50%;flex:none;display:flex;align-items:center;
  justify-content:center;color:var(--card-ink-dim);background:rgba(120,170,230,.16)}
.st-sheet-x svg{width:15px;height:15px}
.st-sheet-body{flex:1;overflow-y:auto;padding:0 16px calc(18px + env(safe-area-inset-bottom))}
.st-empty{padding:20px 4px;font-size:12px;color:var(--card-ink-dim);text-align:center}
.st-hist-list{display:flex;flex-direction:column;gap:7px}
.st-hist-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:14px;background:#fff}
.st-hist-ico{width:34px;height:34px;border-radius:12px;flex:none;display:flex;align-items:center;
  justify-content:center;font-size:17px;background:rgba(120,170,230,.16)}
.st-hist-info{min-width:0;display:flex;flex-direction:column}
.st-hist-info b{font-size:12.5px;font-weight:700;color:var(--card-ink)}
.st-hist-info small{font-size:10.5px;color:var(--card-ink-dim)}
.st-hist-reuse{flex:none;padding:6px 12px;border-radius:999px;font-size:11px;font-weight:700;
  color:#2f8bff;background:rgba(47,139,255,.12)}
.st-hist-reuse:active{transform:scale(.95)}
.st-sheet-danger{width:100%;margin-top:12px;padding:10px;border-radius:999px;font-size:12.5px;
  font-weight:700;color:#d2453f;background:rgba(210,69,63,.1)}
.st-pv-opt{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;background:#fff;
  text-align:left;border:1.5px solid transparent}
.st-pv-opt.on{border-color:#2f8bff;background:rgba(47,139,255,.08)}
.st-pv-opt .grow{min-width:0;display:flex;flex-direction:column}
.st-pv-opt b{font-size:13px;font-weight:700;color:var(--card-ink)}
.st-pv-opt small{font-size:10.5px;color:var(--card-ink-dim)}
.st-pv-check{flex:none;width:20px;text-align:center;font-size:14px;font-weight:800;color:#2f8bff}
