/* HealthHIT 1.2.36 Personal Training pages (pt.html, pt-import.html, pt-join.html, pt-checkin.html). Same look as Settings / Home. */
:root { --pt-red:#ff4757; --pt-green:#33d176; --pt-amber:#ffbe24; --pt-card:rgba(255,255,255,.05); --pt-line:rgba(255,255,255,.08); --pt-dim:#9aa0ac; }
html, body { margin:0; padding:0; min-height:100vh; font-family:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  background:linear-gradient(to bottom, rgba(15,15,18,.95) 0%, #0a0a0c 100%); background-color:#0a0a0c; color:#fff; -webkit-tap-highlight-color:transparent; }
* { box-sizing:border-box; }
button { font:inherit; color:inherit; }
.pt-wrap { max-width:480px; margin:0 auto; padding:12px 14px 24px; }
.pt-head { display:flex; align-items:center; gap:10px; margin:2px 0 10px; }
.pt-head .back { all:unset; cursor:pointer; width:36px; height:36px; border-radius:12px; display:flex; align-items:center; justify-content:center; background:var(--pt-card); border:1px solid var(--pt-line); font-size:18px; }
.pt-head h1 { font-size:1.25rem; font-weight:800; margin:0; line-height:1.15; }
.pt-head small { display:block; color:var(--pt-dim); font-size:.76rem; font-weight:600; }
.pt-tabs { position:sticky; top:0; z-index:20; display:grid; grid-template-columns:repeat(3,1fr); gap:4px; padding:4px; border-radius:14px; background:rgba(22,22,28,.96); border:1px solid var(--pt-line); margin-bottom:12px; backdrop-filter:blur(8px); }
.pt-tabs button { all:unset; cursor:pointer; text-align:center; padding:9px 4px; border-radius:10px; font-weight:800; font-size:.9rem; color:#c8c8d0; }
.pt-tabs button.on { background:var(--pt-red); color:#fff; }
/* 1.2.48: four tabs (This week first) on one row */
.pt-tabs { grid-template-columns:repeat(auto-fit,minmax(0,1fr)); }
.pt-tabs button { font-size:.86rem; white-space:nowrap; padding:9px 2px; }
.pt-card { background:var(--pt-card); border:1px solid var(--pt-line); border-radius:16px; padding:12px 13px; margin:0 0 10px; }
.pt-card h2 { font-size:.98rem; margin:0 0 4px; font-weight:800; }
.pt-card h3 { font-size:.74rem; letter-spacing:.08em; text-transform:uppercase; color:#ff8a94; margin:0 0 6px; font-weight:800; }
.pt-dim { color:var(--pt-dim); font-size:.8rem; }
.pt-row { display:flex; align-items:center; gap:10px; }
.pt-grow { flex:1; min-width:0; }
.pt-btn { all:unset; cursor:pointer; box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:11px 14px; border-radius:12px; background:var(--pt-red); color:#fff; font-weight:800; font-size:.95rem; text-align:center; min-height:44px; }
.pt-btn.sec { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); color:#eee; }
.pt-btn.green { background:var(--pt-green); color:#08210f; }
.pt-btn.block { display:flex; width:100%; }
.pt-btn[disabled], .pt-btn.dis { opacity:.45; pointer-events:none; }
.pt-chips { display:flex; gap:6px; overflow-x:auto; padding-bottom:2px; margin:0 0 10px; scrollbar-width:none; }
.pt-chips::-webkit-scrollbar { display:none; }
.pt-chip { all:unset; cursor:pointer; flex:none; padding:7px 11px; border-radius:999px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.04); font-weight:700; font-size:.82rem; white-space:nowrap; }
.pt-chip.on { background:#fff; color:#111; border-color:#fff; }
.pt-chip .t { color:var(--pt-amber); margin-left:4px; font-size:.7rem; }
/* timer */
.pt-timer { display:flex; align-items:center; gap:10px; }
.pt-timer .clock { font-variant-numeric:tabular-nums; font-size:1.45rem; font-weight:800; letter-spacing:.02em; }
.pt-bar { height:6px; border-radius:99px; background:rgba(255,255,255,.08); overflow:hidden; margin-top:8px; }
.pt-bar > i { display:block; height:100%; width:0; background:var(--pt-green); border-radius:99px; transition:width .25s; }
/* exercise */
.pt-ex .pt-exhead { display:flex; align-items:flex-start; gap:8px; margin-bottom:6px; }
.pt-ex .nm { font-weight:800; font-size:1rem; line-height:1.2; }
.pt-ex .rx { color:#ffd27a; font-weight:700; font-size:.84rem; margin-top:2px; }
.pt-ex .cn { color:var(--pt-dim); font-size:.78rem; margin-top:3px; white-space:pre-wrap; }
.pt-all { all:unset; cursor:pointer; flex:none; font-size:.78rem; font-weight:800; padding:6px 10px; border-radius:999px; border:1px solid rgba(51,209,118,.5); color:#7cf0ad; }
.pt-set { display:flex; align-items:center; gap:8px; padding:6px 0; border-top:1px solid rgba(255,255,255,.06); user-select:none; -webkit-user-select:none; }
.pt-set .n { width:44px; color:var(--pt-dim); font-size:.8rem; font-weight:700; }
.pt-set .v { flex:1; min-width:0; font-weight:700; font-variant-numeric:tabular-nums; }
.pt-set .v small { color:var(--pt-dim); font-weight:600; }
.pt-set.done .v { color:#7cf0ad; }
.pt-set.edited .v { color:var(--pt-amber); }
.pt-set .ed { all:unset; cursor:pointer; width:38px; height:38px; border-radius:11px; display:flex; align-items:center; justify-content:center; color:#bbb; font-size:16px; }
.pt-tick { all:unset; cursor:pointer; width:44px; height:44px; flex:none; border-radius:50%; border:2px solid rgba(255,255,255,.28); display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:900; color:transparent; transition:background .15s, border-color .15s, transform .1s; }
.pt-tick:active { transform:scale(.92); }
.pt-tick.on { background:var(--pt-green); border-color:var(--pt-green); color:#08210f; }
/* meals */
.pt-meal { display:flex; gap:10px; align-items:flex-start; }
.pt-meal .tm { font-weight:800; font-size:.82rem; color:var(--pt-amber); }
.pt-meal .mn { font-weight:800; font-size:1rem; }
.pt-meal ul { margin:4px 0 0; padding:0; list-style:none; color:#d6d6de; font-size:.82rem; line-height:1.45; }
.pt-meal .adj { display:inline-block; margin-top:4px; font-size:.72rem; font-weight:800; padding:2px 8px; border-radius:99px; background:rgba(255,190,36,.16); color:var(--pt-amber); }
.pt-meal .logged { display:inline-block; margin-top:4px; font-size:.72rem; font-weight:800; color:#7cf0ad; }
.pt-macros .big { font-size:1.35rem; font-weight:800; font-variant-numeric:tabular-nums; }
.pt-macros .three { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:8px; font-size:.75rem; color:#cfd0d8; }
.pt-macros .three b { display:block; color:#fff; font-size:.9rem; }
.pt-macros .pt-bar.p > i { background:#5c9dff; } .pt-macros .pt-bar.c > i { background:var(--pt-amber); } .pt-macros .pt-bar.f > i { background:#ff7a6b; }
.pt-bar.over > i { background:var(--pt-red) !important; }
/* sheet */
.pt-sheet-bg { position:fixed; inset:0; z-index:30000; background:rgba(0,0,0,.6); display:flex; align-items:flex-end; justify-content:center; }
.pt-sheet { width:100%; max-width:480px; max-height:88vh; overflow:auto; background:#17171d; border-radius:20px 20px 0 0; border:1px solid var(--pt-line); padding:14px 14px calc(16px + env(safe-area-inset-bottom)); }
.pt-sheet h2 { margin:0 0 10px; font-size:1.05rem; }
.pt-step { display:flex; align-items:center; gap:8px; margin:8px 0; }
.pt-step label { width:58px; color:var(--pt-dim); font-weight:700; font-size:.85rem; }
.pt-step button { all:unset; cursor:pointer; width:44px; height:44px; border-radius:12px; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:800; }
.pt-step input { flex:1; min-width:0; height:44px; text-align:center; font-size:1.2rem; font-weight:800; border-radius:12px; border:1px solid rgba(255,255,255,.16); background:#0e0e12; color:#fff; }
.pt-in, .pt-ta, .pt-sel { width:100%; padding:11px 12px; border-radius:12px; border:1px solid rgba(255,255,255,.16); background:#0e0e12; color:#fff; font:inherit; font-size:.95rem; }
.pt-ta { min-height:72px; resize:vertical; }
.pt-lbl { display:block; font-weight:700; font-size:.84rem; margin:10px 0 5px; color:#dcdce4; }
.pt-lbl small { color:var(--pt-dim); font-weight:600; }
.pt-err { outline:2px solid var(--pt-red); }
.pt-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.pt-mult { display:flex; gap:6px; flex-wrap:wrap; }
.pt-mult button { all:unset; cursor:pointer; padding:8px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.16); font-weight:800; font-size:.86rem; }
.pt-mult button.on { background:var(--pt-amber); color:#201500; border-color:var(--pt-amber); }
.pt-food { display:flex; align-items:center; gap:8px; padding:7px 0; border-top:1px solid rgba(255,255,255,.06); font-size:.86rem; }
.pt-food.off { opacity:.4; text-decoration:line-through; }
.pt-food button { all:unset; cursor:pointer; font-size:.78rem; font-weight:800; padding:5px 9px; border-radius:99px; background:rgba(255,255,255,.08); }
/* rest bar */
#ptRest { position:fixed; left:50%; transform:translateX(-50%); bottom:calc(var(--hh-tabs-h,64px) + 8px); z-index:25000; display:none; align-items:center; gap:10px; padding:8px 10px 8px 14px; border-radius:999px; background:rgba(30,31,38,.97); border:1px solid rgba(255,255,255,.14); box-shadow:0 6px 18px rgba(0,0,0,.5); font-weight:800; }
#ptRest.show { display:flex; }
#ptRest .c { font-variant-numeric:tabular-nums; font-size:1.05rem; min-width:46px; }
#ptRest button { all:unset; cursor:pointer; padding:6px 10px; border-radius:99px; background:rgba(255,255,255,.1); font-size:.8rem; }
#ptRest.done { background:var(--pt-green); color:#08210f; }
.pt-exp { display:flex; align-items:center; gap:10px; padding:9px 0; border-top:1px solid rgba(255,255,255,.06); }
.pt-exp:first-of-type { border-top:none; }
.pt-exp .ic { width:30px; text-align:center; font-size:18px; }
.pt-msg { white-space:pre-wrap; line-height:1.45; font-size:.93rem; }
.pt-badge { display:inline-block; font-size:.72rem; font-weight:800; padding:3px 9px; border-radius:99px; }
.pt-badge.ok { background:rgba(51,209,118,.18); color:#7cf0ad; } .pt-badge.warn { background:rgba(255,190,36,.16); color:var(--pt-amber); } .pt-badge.bad { background:rgba(255,71,87,.18); color:#ff8a94; }
.pt-empty { text-align:center; padding:26px 12px; color:var(--pt-dim); }
.pt-empty .e { font-size:2.2rem; }
.pt-sw { position:relative; width:50px; height:30px; flex:none; }
.pt-sw input { opacity:0; width:0; height:0; position:absolute; }
.pt-sw span { position:absolute; inset:0; border-radius:999px; background:#3a3b44; transition:background .2s; cursor:pointer; }
.pt-sw span::after { content:""; position:absolute; left:3px; top:3px; width:24px; height:24px; border-radius:50%; background:#fff; transition:transform .2s; }
.pt-sw input:checked + span { background:var(--pt-green); }
.pt-sw input:checked + span::after { transform:translateX(20px); }
.pt-days { display:flex; gap:5px; flex-wrap:wrap; }
.pt-days button { all:unset; cursor:pointer; padding:8px 0; width:calc((100% - 30px)/7); text-align:center; border-radius:10px; border:1px solid rgba(255,255,255,.16); font-weight:800; font-size:.8rem; }
.pt-days button.on { background:var(--pt-red); border-color:var(--pt-red); }
#ptRest button{white-space:nowrap}

/* 1.2.47 plan ahead: this-week strip */
.pt-week { display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
.pt-wk { all:unset; cursor:pointer; box-sizing:border-box; text-align:center; padding:7px 2px; border-radius:10px; background:rgba(255,255,255,.05); min-width:0; }
.pt-wk b { display:block; font-size:.72rem; color:var(--pt-dim); }
.pt-wk span { display:block; font-size:.7rem; font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#fff; }
.pt-wk.rest span { color:var(--pt-dim); font-weight:500; }
.pt-wk.on { background:#fff; } .pt-wk.on b, .pt-wk.on span { color:#111; }
/* 1.2.48: a way out of a session */
.pt-btn.red { background:#e53935; color:#fff; }
.pt-sx { display:flex; gap:8px; margin-top:10px; }
.pt-sx .pt-btn { flex:1; padding:9px 6px; font-size:.86rem; }
/* ---------- 1.4.0 workout player ---------- */
.pt-sec { margin:14px 2px 6px; font-weight:900; font-size:.82rem; letter-spacing:.04em; text-transform:uppercase; color:#ffb3ba; }
.pt-sec small { text-transform:none; color:var(--pt-dim); font-weight:600; letter-spacing:0; }
.pt-mob { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:9px 11px; }
.pt-mob .nm { font-weight:800; font-size:.92rem; }
.pt-mob .cn { color:var(--pt-dim); font-size:.76rem; }
.pt-mob.done { opacity:.7; } .pt-mob.done .nm { color:#7cf0ad; }
.pt-mob .pt-howbox { flex-basis:100%; }
.pt-exc { all:unset; box-sizing:border-box; cursor:pointer; display:flex; width:100%; align-items:center; gap:10px; background:var(--pt-card); border:1px solid var(--pt-line); border-radius:14px; padding:10px 12px; margin:0 0 8px; }
.pt-exc .ck { width:24px; text-align:center; font-weight:900; color:var(--pt-dim); }
.pt-exc.done .ck, .pt-exc.done .nm { color:#7cf0ad; }
.pt-exc .nm { font-weight:800; font-size:.92rem; }
.pt-ex.focus { border-color:rgba(255,71,87,.55); box-shadow:0 0 0 1px rgba(255,71,87,.18) inset; }
.pt-ex .ss, .pt-exc .ss { display:inline-block; padding:1px 6px; border-radius:6px; background:rgba(92,157,255,.2); color:#9cc3ff; font-size:.72rem; }
.pt-lastx { color:#cfd3dc; font-size:.78rem; margin-top:3px; }
.pt-exbtns { display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; }
.pt-how { all:unset; cursor:pointer; font-size:.76rem; font-weight:800; padding:5px 10px; border-radius:999px; border:1px solid rgba(255,71,87,.5); color:#ff8a94; white-space:nowrap; }
.pt-howbox { margin:8px 0; border-radius:12px; overflow:hidden; border:1px solid var(--pt-line); }
.pt-howbox iframe { display:block; width:100%; height:62vh; border:0; background:#111; }
.pt-set .n { width:30px; height:26px; border-radius:8px; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.06); color:#cfd3dc; }
.pt-set .n.w { background:rgba(255,190,36,.16); color:var(--pt-amber); }
.pt-set .n.t { background:rgba(255,71,87,.2); color:#ff8a94; }
.pt-set .n.dr { background:rgba(92,157,255,.2); color:#9cc3ff; }
.pt-set.warm .v { color:#cfc39a; font-weight:600; }
.pt-set button.v { all:unset; cursor:pointer; flex:1; min-width:0; font-weight:700; font-variant-numeric:tabular-nums; padding:8px 4px; border-radius:8px; }
.pt-set button.v:active { background:rgba(255,255,255,.06); }
.pt-set.done button.v { color:#7cf0ad; } .pt-set.edited button.v { color:var(--pt-amber); }
.pt-set .rp { color:#ffd27a; font-size:.8rem; } .pt-set .pr { color:#ffd27a; font-size:.78rem; }
.pt-set .v.pt-edv { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.pt-st { display:inline-flex; align-items:center; gap:3px; }
.pt-st button { all:unset; cursor:pointer; width:34px; height:34px; border-radius:9px; background:rgba(255,255,255,.08); text-align:center; line-height:34px; font-weight:900; font-size:1.1rem; }
.pt-st input { width:52px; height:34px; box-sizing:border-box; text-align:center; border-radius:9px; border:1px solid var(--pt-line); background:#101014; color:#fff; font-weight:800; font-size:.95rem; }
.pt-st i { font-style:normal; color:var(--pt-dim); font-size:.72rem; }
.pt-note { flex-basis:100%; height:32px; box-sizing:border-box; border-radius:9px; border:1px solid var(--pt-line); background:#101014; color:#fff; padding:0 9px; font-size:.85rem; }
.pt-edbar { display:flex; gap:8px; justify-content:flex-end; padding:0 0 6px 38px; }
.pt-edbar button { all:unset; cursor:pointer; font-size:.78rem; font-weight:800; color:var(--pt-dim); padding:4px 8px; }
.pt-last { padding:0 0 4px 38px; margin-top:-4px; color:var(--pt-dim); font-size:.74rem; }
.pt-pl { all:unset; cursor:pointer; width:30px; height:30px; text-align:center; line-height:30px; border-radius:8px; font-size:15px; opacity:.75; }
.pt-plates { padding:0 0 6px 38px; font-size:.78rem; color:#cfd3dc; }
.pt-plates button { all:unset; cursor:pointer; color:#ff8a94; font-weight:800; }
.pt-rpe { display:flex; align-items:center; gap:4px; padding:0 0 7px 38px; flex-wrap:wrap; }
.pt-rpe .l { color:var(--pt-dim); font-size:.72rem; font-weight:700; margin-right:2px; }
.pt-rpe button { all:unset; cursor:pointer; min-width:30px; height:28px; padding:0 4px; box-sizing:border-box; border-radius:8px; text-align:center; line-height:28px; font-weight:800; font-size:.82rem; background:rgba(255,255,255,.07); color:#e6e8ee; }
.pt-rpe button.on { background:var(--pt-red); color:#fff; }
.pt-rpe button.sm { min-width:24px; background:transparent; color:var(--pt-dim); border:1px solid var(--pt-line); }
.pt-rpehelp { margin:-2px 0 8px 38px; font-size:.74rem; color:#cfd3dc; background:rgba(255,255,255,.05); border-radius:8px; padding:6px 8px; }
.pt-next { margin:0 0 12px; }
.pt-ready { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-top:10px; }
.pt-ready button { all:unset; cursor:pointer; padding:5px 10px; border-radius:999px; border:1px solid var(--pt-line); font-size:.8rem; font-weight:700; }
.pt-ready button.on { background:rgba(255,71,87,.2); border-color:var(--pt-red); color:#fff; }
#ptRest.inl { position:static; transform:none; display:none; margin:0 0 10px; border-radius:14px; box-shadow:none; justify-content:flex-start; }
#ptRest.inl.show { display:flex; }
#ptRest .nx { flex:1; color:var(--pt-dim); font-size:.76rem; font-weight:700; }
#ptRest #ptRestMinus { all:unset; cursor:pointer; padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.08); font-size:.8rem; }

/* 1.4.16: bottom "Finish workout" + fixing a finished workout */
.pt-finbig { min-height:56px; font-size:1.1rem; margin:6px 0 12px; box-shadow:0 4px 14px rgba(230,57,70,.25); }
.pt-finbig[disabled] { opacity:.45; box-shadow:none; }
.pt-fix { all:unset; cursor:pointer; flex:none; min-height:44px; min-width:64px; padding:0 12px; box-sizing:border-box; border-radius:12px; border:1.5px solid rgba(230,57,70,.7); color:#ff8a94; font-weight:800; font-size:.9rem; display:inline-flex; align-items:center; justify-content:center; }
.pt-fixnote { margin-top:8px; padding:8px 10px; border-radius:10px; background:rgba(230,57,70,.10); border:1px solid rgba(230,57,70,.35); color:#ffd7da; font-size:.88rem; line-height:1.35; text-align:left; }
.pt-fxbar button { font-size:.85rem; padding:8px 10px; min-height:36px; }
.pt-fxbar button[data-act="fxdel"] { color:#ff8a94; }
/* 1.4.16: the set editor (and the fix row) fits a 277 px screen at 130 % text - note shrinks to the card, steppers a bit narrower */
.pt-set .v.pt-edv .pt-note { min-width:0; width:100%; max-width:100%; }
@media (max-width: 300px) { .pt-set:has(.pt-edv) { gap:4px; } .pt-set .v.pt-edv .pt-st button { width:30px; } .pt-set .v.pt-edv .pt-st input { width:44px; } .pt-set .v.pt-edv .pt-st { gap:2px; } .pt-set .v.pt-edv .pt-st i { font-size:.66rem; } }
.pt-set .v .pt-pend { color:var(--pt-red, #e53935); font-weight:600; }   /* 1.4.18 typed numbers kept, not logged yet */
/* 1.4.18 Extras + Busy? Swap */
.pt-xtag { display:inline-block; margin-left:6px; padding:1px 7px; border-radius:999px; background:rgba(255,77,79,.16); color:#ff8a80; font-size:11px; font-weight:800; letter-spacing:.3px; vertical-align:middle; }
.pt-xl { font-size:12px; color:#ffd76a; margin-top:2px; }
.pt-xcard { border-left:3px solid rgba(255,77,79,.55); }
.pt-xadd { margin:4px 0 12px; }
.pt-xpick { margin:4px 0 12px; }
.pt-xpick .pt-xh { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.pt-xsub { margin:12px 0 6px; font-size:12px; letter-spacing:.6px; text-transform:uppercase; color:#a0a5b5; font-weight:800; }
.pt-xsub small { text-transform:none; letter-spacing:0; font-weight:600; }
.pt-xrow { display:flex; flex-wrap:wrap; gap:6px; }
.pt-xrow .pt-xg { min-height:38px; padding:7px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.22); background:#1c1c20; color:#fff; font:700 14px/1.2 inherit; font-family:inherit; cursor:pointer; }
.pt-xrow .pt-xg.on { background:#e63946; border-color:#ff5a5f; }
.pt-xlist { display:flex; flex-direction:column; gap:6px; margin-top:6px; max-height:300px; overflow-y:auto; }
.pt-xlist .pt-xs { display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:100%; min-height:44px; padding:9px 12px; border-radius:12px; border:1px solid rgba(255,255,255,.14); background:#18181c; color:#fff; text-align:left; font:600 15px/1.25 inherit; font-family:inherit; cursor:pointer; }
.pt-xlist .pt-xs small { color:#a0a5b5; font-weight:500; font-size:12px; }
.pt-xcus { display:flex; gap:6px; align-items:center; }
.pt-xcus input { flex:1; min-width:0; min-height:44px; padding:10px 12px; border-radius:12px; border:1px solid rgba(255,255,255,.22); background:#141417; color:#fff; font:500 15px/1.3 inherit; font-family:inherit; }
.pt-xcus .pt-btn { flex:none; }
.pt-how.pt-arm { background:#e63946; color:#fff; }
.pt-busyl { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; width:100%; }
.pt-busyl .pt-dim { width:100%; font-size:12px; }
/* 1.4.18 weight/pin switch, RPE 10, alternatives, comments for your coach */
.pt-set .v.pt-edv .pt-lt { display:flex; gap:6px; width:100%; }
.pt-set .v.pt-edv .pt-lt button { flex:1; min-height:36px; padding:6px 4px; white-space:nowrap; border-radius:10px; border:1px solid rgba(255,255,255,.2); background:#1c1c20; color:#d8dbe4; font:700 12.5px/1.2 inherit; font-family:inherit; cursor:pointer; }
.pt-set .v.pt-edv .pt-lt button.on { background:#e63946; border-color:#ff5a5f; color:#fff; }
.pt-set .v.pt-edv .pt-lt.lock { font-size:12px; color:#ffd76a; font-weight:700; }
.pt-r10 { margin:6px 0 4px; padding:8px 10px; border-radius:10px; background:rgba(255,215,106,.1); border-left:3px solid #ffd76a; color:#ffe7a3; font-size:13px; line-height:1.35; }
.pt-set.nn .v { opacity:.55; }
.pt-set .v .pt-nnl { color:#ffd76a; font-weight:700; }
.pt-how.pt-alt[disabled] { opacity:.5; }
.pt-altl { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:6px; width:100%; padding:8px; border-radius:12px; background:rgba(255,255,255,.04); }
.pt-altl .pt-dim { width:100%; font-size:12px; }
.pt-cmt { margin:6px 0 12px; }
.pt-cmt .pt-cmth { display:block; font-weight:800; font-size:15px; margin-bottom:8px; }
.pt-cmt .pt-cmth small { font-weight:500; color:#a0a5b5; }
.pt-cmt textarea { width:100%; box-sizing:border-box; min-height:110px; padding:12px; border-radius:12px; border:1px solid rgba(255,255,255,.22); background:#141417; color:#fff; font:500 16px/1.45 inherit; font-family:inherit; resize:vertical; }
.pt-cmt .pt-cmtn { margin-top:6px; font-size:12px; }
.pt-lnk { background:none; border:0; padding:0; color:#ff8a80; font-weight:800; text-decoration:underline; font-size:12px; cursor:pointer; font-family:inherit; }
