.hd{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.ey{font-size:13px;color:#5C5F66;letter-spacing:.02em}
.ban{position:relative;isolation:isolate;display:inline-flex;align-items:center;min-height:46px;padding:2px 30px;font-family:'Baloo 2','Be Vietnam Pro','Segoe UI',Roboto,sans-serif;font-weight:700;font-size:22px;line-height:1.25;letter-spacing:.02em;color:#fff;text-transform:uppercase;filter:drop-shadow(3px 3px 0 #BFC8D5)}
.ban::before{content:"";position:absolute;inset:0;z-index:-2;background:#1E1E24;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 50%,100% 100%,0 100%,14px 50%)}
.ban::after{content:"";position:absolute;inset:2.5px 3px;z-index:-1;background:#1F5FA8;clip-path:polygon(0 0,100% 0,calc(100% - 13px) 50%,100% 100%,0 100%,13px 50%)}
.ban.ink::after{background:#1E1E24}
.ban.red::after{background:#C93A22}
.h2{font-family:'Baloo 2','Be Vietnam Pro','Segoe UI',Roboto,sans-serif;font-weight:700;font-size:18px;line-height:1.3;margin:0}
.sh{align-self:flex-start;font-family:'Baloo 2','Be Vietnam Pro','Segoe UI',Roboto,sans-serif;font-weight:700;font-size:14px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(transparent 62%,#FFD84D 62%);padding:0 3px;margin-top:2px}
.sub{color:#5C5F66;font-size:13px;line-height:1.45}
.b{font-weight:600}
.hw{font-family:'Patrick Hand','Be Vietnam Pro','Segoe UI',sans-serif;font-size:17px;line-height:1.3;color:#1F5FA8}
.row{display:flex;align-items:center;gap:10px}
.between{justify-content:space-between}
.grow{flex-grow:1;min-width:0}
.col{display:flex;flex-direction:column;gap:8px}
.box{position:relative;background:#FFFFFF;border:2.5px solid #1E1E24;border-radius:10px;padding:12px 14px;box-shadow:4px 4px 0 #BFC8D5;display:flex;flex-direction:column;gap:8px}
.box.lab{margin-top:8px;padding-top:16px}
.box.blue{background:#E4EEF9}
.box.yel{background:#FFF1B3}
.box.red{background:#FCE4DE}
.box.grn{background:#E1F2E7}
.box.dash{border-style:dashed;box-shadow:none;background:#FFFFFF}
.box.hl{border-color:#1F5FA8;box-shadow:4px 4px 0 #1F5FA8}
.cl{position:absolute;top:-13px;left:12px;background:#1E1E24;color:#fff;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;padding:0 10px;border-radius:5px}
.cl.blue{background:#1F5FA8}
.cl.red{background:#C93A22}
.st{position:relative;background:#FFF1B3;padding:12px 14px;box-shadow:2px 4px 0 rgba(30,30,36,.16);transform:rotate(-.8deg);display:flex;flex-direction:column;gap:8px}
.st .tp{position:absolute;top:-9px;left:50%;width:64px;height:18px;margin-left:-32px;background:rgba(160,166,178,.55);transform:rotate(2deg)}
.tg{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;font-size:12.5px;font-weight:600;line-height:1.3;color:#1E1E24;background:#FFFFFF;border:2px solid #1E1E24;border-radius:999px;white-space:nowrap}
.tg.blue{background:#CFE1F6}
.tg.grn{background:#CDEBD8}
.tg.amb{background:#FFE08A}
.tg.red{background:#F9CFC6}
.tg.gry{background:#E3E8EF}
.bt{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 16px;font-family:'Baloo 2','Be Vietnam Pro','Segoe UI',Roboto,sans-serif;font-weight:700;font-size:17px;line-height:1.2;color:#1E1E24;background:#FFD84D;border:2.5px solid #1E1E24;border-radius:10px;box-shadow:3px 3px 0 #1E1E24;text-decoration:none;text-align:center}
.bt.blue{background:#1F5FA8;color:#fff}
.bt.gh{background:#FFFFFF;box-shadow:3px 3px 0 #BFC8D5}
.bt.gn{background:#CDEBD8}
.bt.sm{min-height:44px;padding:0 12px;font-size:15px}
.bt.full{width:100%}
.ck{width:24px;height:24px;flex-shrink:0;border:2.5px solid #1E1E24;border-radius:6px;background:#FFFFFF;display:flex;align-items:center;justify-content:center}
.ck.on{background:#CDEBD8}
.ck svg{width:16px;height:16px}
.ra{width:22px;height:22px;flex-shrink:0;border:2.5px solid #1E1E24;border-radius:50%;background:#FFFFFF;position:relative;margin-top:1px}
.ra.on::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#1F5FA8}
.pb{height:16px;border:2.5px solid #1E1E24;border-radius:8px;background:#FFFFFF;overflow:hidden}
.pb i{display:block;height:100%;background:repeating-linear-gradient(-45deg,#1F5FA8 0 6px,#5F92CF 6px 12px)}
.fd{min-height:44px;padding:9px 12px;color:#5C5F66;background:#FFFFFF;border:2px solid #1E1E24;border-radius:8px;display:flex;align-items:center}
.sp{height:0;border-top:2px dashed #A5B0C0}
.av{width:34px;height:34px;flex-shrink:0}
.circ{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;border:2.5px solid #C93A22;border-radius:50%;font-family:'Baloo 2','Be Vietnam Pro',sans-serif;font-weight:700;font-size:15px;line-height:1;color:#C93A22;background:#FFFFFF}
.back{display:flex;align-items:center;gap:6px;min-height:44px;font-family:'Baloo 2','Be Vietnam Pro','Segoe UI',sans-serif;font-weight:700;font-size:16px;color:#1F5FA8;text-decoration:none}
.quote{font-family:'Patrick Hand','Be Vietnam Pro','Segoe UI',sans-serif;font-size:21px;line-height:1.3}
.lockrow{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#1F5FA8}
.hi{background:linear-gradient(transparent 58%,#FFE27A 58%);padding:0 2px}
.stamp{display:inline-block;font-family:'Baloo 2','Be Vietnam Pro',sans-serif;font-weight:700;font-size:14px;line-height:1.3;color:#C93A22;border:2.5px solid #C93A22;border-radius:6px;padding:0 8px;transform:rotate(-4deg);text-transform:uppercase;letter-spacing:.04em}
/* ---------- Ứng dụng thật ---------- */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Be Vietnam Pro','Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.5;color:#1E1E24;background-color:#EDF1F6;background-image:radial-gradient(#C4CDDA 1px,transparent 1.3px);background-size:20px 20px;min-height:100vh}
a{color:#1F5FA8}
.wrap{max-width:760px;margin:0 auto;padding:18px 16px 60px;display:flex;flex-direction:column;gap:14px}
.top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.nav{display:flex;gap:6px;flex-wrap:wrap}
.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:2px solid transparent;border-radius:8px;font-weight:600;color:#5C5F66;text-decoration:none}
.nav a.on{color:#1E1E24;background:#FFF1B3;border-color:#1E1E24}
.login{max-width:420px;margin:8vh auto 0}
input,select,textarea{font:inherit;color:#1E1E24;width:100%;min-height:46px;padding:9px 12px;background:#fff;border:2px solid #1E1E24;border-radius:8px}
textarea{min-height:84px;resize:vertical}
input[type=checkbox],input[type=radio]{width:22px;min-height:22px;height:22px;accent-color:#1F5FA8;flex-shrink:0}
label.f{display:flex;flex-direction:column;gap:4px;font-weight:600}
label.f small{font-weight:400;color:#5C5F66}
label.rd{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
button.bt{cursor:pointer;font-family:'Baloo 2','Be Vietnam Pro','Segoe UI',Roboto,sans-serif}
button.bt:disabled{opacity:.5;cursor:default}
button.lk{background:none;border:0;padding:0;font:inherit;color:#1F5FA8;text-decoration:underline;cursor:pointer;min-height:44px}
details.dt>summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center}
details.dt>summary::-webkit-details-marker{display:none}
.card{cursor:pointer;text-decoration:none;color:inherit}
.toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);max-width:90vw;background:#1E1E24;color:#fff;padding:10px 16px;border-radius:8px;font-weight:600;z-index:9}
.toast.err{background:#C93A22}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (max-width:520px){.two{grid-template-columns:1fr}}
.cnt{display:flex;flex-direction:column}
.mut{color:#5C5F66;font-size:14px}
.clip{overflow-wrap:anywhere}

/* ---------- Khẩu hiệu, hướng dẫn, danh sách bước ---------- */
.tag{font-family:'Patrick Hand','Be Vietnam Pro',sans-serif;font-size:15px;color:#1F5FA8;margin-top:2px;letter-spacing:.01em}
.circ.ok{border-color:#2E8B57;color:#fff;background:#2E8B57}
#tour{position:fixed;inset:0;z-index:9000;pointer-events:none}
#tour .tb{position:fixed;background:rgba(30,30,36,.66);pointer-events:auto}
#tour .tr{position:fixed;border:3px solid #FFD84D;border-radius:12px;pointer-events:none;box-shadow:0 0 0 2px #1E1E24}
#tour .tbub{position:fixed;pointer-events:auto;max-width:calc(100vw - 24px);background:#fff;border:2.5px solid #1E1E24;border-radius:12px;box-shadow:4px 4px 0 #1E1E24;padding:14px;display:flex;flex-direction:column;gap:8px}
#tour .tbub.mid{width:min(360px,calc(100vw - 24px))}
#tour .tn{font-size:12px;color:#5C5F66;font-weight:600}
#tour .tt{font-family:'Baloo 2','Be Vietnam Pro',sans-serif;font-weight:700;font-size:19px;line-height:1.2}
#tour .tx{font-size:15px;line-height:1.45}
#tour .th{font-size:13px;color:#1F5FA8;font-weight:600}
#tour .tcta{display:flex;gap:8px;flex-wrap:wrap}
#tour .tcta .bt{flex:1 1 130px}
#tour .tsk{align-self:flex-start}
.chain{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:2px 0 8px}
.chain span{padding:4px 8px;border:2px solid #1E1E24;border-radius:8px;background:#FFF1B3;font-weight:600;font-size:14px}
.chain i{font-style:normal;color:#5C5F66}

/* ---------- Việc dạng danh sách ---------- */
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{min-height:40px;padding:0 14px;font:600 15px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;color:#1E1E24;background:#fff;border:2px solid #BFC8D5;border-radius:999px;cursor:pointer}
.chip.on{background:#FFF1B3;border-color:#1E1E24}
.tl{background:#fff;border:2.5px solid #1E1E24;border-radius:10px;box-shadow:4px 4px 0 #BFC8D5;overflow:hidden}
.trow{border-bottom:1.5px solid #D5DBE5}
.trow:last-child{border-bottom:0}
.trow.hasfu{box-shadow:inset 5px 0 0 #C93A22}
.thead{display:flex;align-items:center;gap:10px;width:100%;min-height:58px;padding:8px 12px;background:none;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.tc{flex:none;width:26px;height:26px;border:2.5px solid #1E1E24;border-radius:50%;background:#fff;position:relative}
.tc.rep{background:linear-gradient(90deg,#FFD84D 50%,#fff 50%)}
.tc.ok{background:#2E8B57;border-color:#2E8B57}
.tc.ok::after{content:"";position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid #fff;border-width:0 3px 3px 0;transform:rotate(45deg)}
.tc.late{border-color:#C93A22}
.tm{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.tn{font-weight:600;font-size:16px}
.ts{font-size:13px;color:#5C5F66;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trow.late .ts{color:#C93A22}
.cnt{flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#1F5FA8;color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.tbody{display:flex;flex-direction:column;gap:10px;padding:4px 12px 14px 48px}
.fub{gap:6px}
.fumsg{padding:8px 10px;background:#FFF1B3;border:2px dashed #1E1E24;border-radius:8px}
.thr{display:flex;flex-direction:column;gap:8px}
.cm{padding:8px 10px;border:2px solid #D5DBE5;border-radius:8px;background:#F7F9FC;display:flex;flex-direction:column;gap:4px;font-size:15px}
.cm.fu{border-color:#C93A22;background:#FCE4DE}
.heart{min-height:36px;font-size:16px;color:#C93A22}
.heart.on{font-weight:700}
@media (max-width:420px){.tbody{padding-left:12px}}

/* ---------- Bình luận và follow up kiểu mạng xã hội ---------- */
.ic{flex:none;vertical-align:-3px}
.av{flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:700;font-family:'Baloo 2','Be Vietnam Pro',sans-serif;line-height:1;border:2px solid #1E1E24}
.cnt{gap:3px}.cnt .ic{width:12px;height:12px}
.soc{display:flex;flex-direction:column;gap:10px;border-top:1.5px solid #D5DBE5;padding-top:8px}
.abar{display:flex;gap:6px}
.ab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 10px;font:600 15px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;color:#3B3F47;background:#fff;border:2px solid transparent;border-radius:10px;cursor:pointer}
.ab:hover,.ab:active{background:#EEF2F7}
.ab.fu{color:#C93A22}
.ab.fu.on{background:#FCE4DE;border-color:#C93A22}
.fuq{display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:#FFF1B3;border:2px dashed #1E1E24;border-radius:10px}
.fuline{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:#5C5F66}
.thr{gap:12px}
.cm2{display:flex;gap:8px;align-items:flex-start}
.cmr{flex:1;min-width:0}
.bub{position:relative;background:#EEF2F7;border-radius:4px 16px 16px 16px;padding:8px 12px 9px;display:flex;flex-direction:column;gap:2px}
.bub.fu{background:#FCE4DE;box-shadow:inset 0 0 0 2px #C93A22}
.bub.pg{background:#E4EEF9}
.bn{font-weight:700;font-size:14px}
.bk{display:inline-flex;align-items:center;gap:3px;margin-left:4px;padding:1px 8px;border-radius:999px;background:#fff;border:1.5px solid currentColor;font-size:12px;font-weight:700;color:#C93A22}
.bub.pg .bk{color:#1F5FA8}
.bt2{font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.rx{position:absolute;right:8px;bottom:-11px;display:inline-flex;align-items:center;gap:3px;padding:1px 7px;background:#fff;border:1.5px solid #D5DBE5;border-radius:999px;font-size:12px;font-weight:700;color:#C93A22;box-shadow:0 1px 2px rgba(0,0,0,.08)}
.rx .ic{width:12px;height:12px}
.bm{display:flex;gap:12px;align-items:center;margin:4px 0 0 10px;font-size:12px;color:#5C5F66;min-height:28px}
.lk2{min-height:32px;padding:0 4px;background:none;border:0;font:700 13px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;color:#5C5F66;cursor:pointer}
.lk2.on{color:#C93A22}
.comp{display:flex;align-items:center;gap:8px}
.comp input{flex:1;min-width:0;min-height:44px;padding:0 16px;border:2px solid #BFC8D5;border-radius:22px;background:#F7F9FC;font:16px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif}
.comp input:focus{outline:none;border-color:#1F5FA8;background:#fff}
.send{flex:none;width:44px;height:44px;border-radius:50%;border:2.5px solid #1E1E24;background:#FFD84D;color:#1E1E24;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:2px 2px 0 #1E1E24}
.trow .thead .av{width:28px;height:28px}
.thead .cnt{display:inline-flex;flex-direction:row;flex-wrap:nowrap;white-space:nowrap;width:auto;min-width:0;padding:0 8px;gap:4px;font-size:12px}
.thead .cnt svg{width:12px;height:12px;flex:none}

.soc.flat{border-top:0;padding-top:0}
.soc.flat .abar{background:#fff;border:2.5px solid #1E1E24;border-radius:10px;padding:4px;box-shadow:3px 3px 0 #BFC8D5}
.ab.on{background:#E4EEF9;border-color:#1F5FA8}

/* ---------- Luồng thảo luận kiểu X (kế hoạch) ---------- */
.xact{display:flex;gap:6px;justify-content:space-between;border-top:1.5px solid #D5DBE5;padding-top:6px;margin-top:2px}
.xa{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 10px;background:none;border:0;border-radius:999px;font:600 14px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;color:#5C5F66;cursor:pointer}
.xa:hover,.xa:active{background:#E4EEF9;color:#1F5FA8}
.xa.fu{color:#C93A22}.xa.fu:hover,.xa.fu.on{background:#FCE4DE;color:#C93A22}
.xa.heart:hover{background:#FCE4DE;color:#C93A22}
.xa.heart.on{color:#C93A22}
.xa .ic{width:19px;height:19px}
.xt{background:#fff;border:2.5px solid #1E1E24;border-radius:10px;box-shadow:4px 4px 0 #BFC8D5;overflow:hidden}
.xt .fuq{border-radius:0;border-width:0 0 2px 0}
.xcomp{display:flex;gap:10px;padding:12px 12px 8px;border-bottom:1.5px solid #D5DBE5}
.xcc{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.xcc input{width:100%;min-height:44px;padding:0 4px;border:0;border-bottom:2px solid #D5DBE5;background:none;font:17px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;border-radius:0}
.xcc input:focus{outline:none;border-bottom-color:#1F5FA8}
.xsend{display:flex;justify-content:flex-end}
.xsend .bt{border-radius:999px;min-height:40px;padding:0 22px}
.xto{font-size:13px;color:#5C5F66}
.xm{color:#1F5FA8;font-weight:600}
.xg{border-bottom:1.5px solid #D5DBE5}
.xg:last-child{border-bottom:0}
.xr{display:flex;gap:10px;padding:12px 12px 4px}
.xr.fu{box-shadow:inset 4px 0 0 #C93A22;background:#FFF6F3}
.xr.kid{padding-top:0}
.xr.cn{padding-bottom:0}
.xr.cn .xl::after{content:"";flex:1;width:2px;margin:4px 0 0;background:#CFD9DE;border-radius:2px;min-height:12px}
.xr.cn .xb{padding-bottom:10px}
.xr.kid:not(.cn) .xb{padding-bottom:2px}
.xl{flex:none;display:flex;flex-direction:column;align-items:center}
.xb{flex:1;min-width:0}
.xh{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:15px}
.xh .mut{font-size:13px}
.xt2{font-size:16px;line-height:1.45;margin:2px 0 0;overflow-wrap:anywhere}
.xrow{display:flex;gap:18px;margin:2px 0 4px -10px}

/* Luồng thảo luận nằm trong hộp kế hoạch */
.pbox{overflow:hidden}
.pbox .xt{border:0;box-shadow:none;border-radius:0;background:none;margin:0 -14px -12px;border-top:1.5px solid #D5DBE5}
.pbox .fub{margin:2px 0}
.pbox .fuline{margin-top:2px}
.pbox .xact{border-top:1.5px solid #D5DBE5}
.pbox .xt .xcomp{padding-top:10px}
.pbox .xt .fuq{border-width:0 0 2px 0;margin:0}

/* Đầu trang: nút ? và Thoát luôn nằm cùng hàng với logo */
.top{flex-wrap:nowrap}
.top>a{flex:1 1 0;min-width:0}
.topr{flex:none;flex-wrap:nowrap}
.topr .bt.sm{min-height:40px;font-size:15px}
.ell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .ban{padding:2px 22px;font-size:18px}
/* Ô trả lời nằm ngay dưới bình luận được trả lời */
.xcomp.inl{border-bottom:0;background:#F4F8FC;padding:8px 12px 10px}
.xcomp.inl .xl{align-items:center}
.xcomp.cn .xl::after{content:"";flex:1;width:2px;margin:4px 0 0;background:#CFD9DE;border-radius:2px;min-height:12px}
.bk.pgb{color:#1F5FA8}
.tpb{padding:12px 14px;gap:0}

/* Chọn dấu hiệu và ngăn kéo xem dấu hiệu khi lập kế hoạch */
.sgw{display:flex;flex-direction:column;gap:8px}
.sgw[hidden],.pkw[hidden]{display:none}
.sgo{display:flex;gap:10px;align-items:flex-start;padding:6px 2px;cursor:pointer}
.sgo input{flex:none;width:22px;height:22px;min-height:0;margin:2px 0 0;padding:0;accent-color:#1F5FA8}
.sgo span{flex:1;min-width:0;overflow-wrap:anywhere}
.pktab{position:fixed;right:0;top:40%;z-index:40;padding:12px 5px;writing-mode:vertical-rl;background:#FFD84D;color:#1E1E24;border:2.5px solid #1E1E24;border-right:0;border-radius:10px 0 0 10px;box-shadow:-3px 3px 0 #1E1E24;font:700 14px/1 'Baloo 2','Be Vietnam Pro',sans-serif;cursor:pointer;letter-spacing:.04em}
.peek{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(84vw,340px);background:#fff;border-left:2.5px solid #1E1E24;box-shadow:-6px 0 0 rgba(30,30,36,.18);padding:14px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;transform:translateX(105%);transition:transform .2s ease;visibility:hidden}
.peek.on{transform:none;visibility:visible}
.pkh{display:flex;justify-content:space-between;align-items:center;font-family:'Baloo 2','Be Vietnam Pro',sans-serif;font-size:17px}
.pkw{display:flex;flex-direction:column;gap:10px}
.pkt2{font-weight:600;padding-bottom:8px;border-bottom:1.5px solid #D5DBE5;user-select:text;-webkit-user-select:text}
.pks{display:flex;flex-direction:column;gap:6px;padding:10px;background:#F7F9FC;border:2px solid #D5DBE5;border-radius:8px}
.pkt{user-select:text;-webkit-user-select:text;overflow-wrap:anywhere}
@media (prefers-reduced-motion:reduce){.peek{transition:none}}

/* Menu tài khoản và không gian */
.smb{position:fixed;inset:0;z-index:70;background:rgba(30,30,36,.35)}
.smenu{position:fixed;z-index:71;top:84px;left:12px;right:12px;max-width:380px;margin-left:auto;max-height:calc(100vh - 100px);overflow-y:auto;background:#fff;border:2.5px solid #1E1E24;border-radius:12px;box-shadow:5px 5px 0 #1E1E24;padding:14px;display:flex;flex-direction:column;gap:8px}
.smh{display:flex;align-items:center;gap:10px;padding-bottom:8px;border-bottom:1.5px solid #D5DBE5}
.spr{display:flex;align-items:center;gap:10px;min-height:48px;width:100%;padding:0 12px;background:#fff;border:2px solid #D5DBE5;border-radius:10px;font:600 16px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;color:#1E1E24;text-align:left;text-decoration:none;cursor:pointer}
.spr.on{border-color:#1E1E24;background:#FFF1B3}
.spr.add{color:#1F5FA8;border-style:dashed}
.spd{flex:none;width:10px;height:10px;border-radius:50%;background:#1F5FA8}

/* Màn hình khóa sinh trắc học */
#lock{position:fixed;inset:0;z-index:9500;background:#EDF1F6;background-image:radial-gradient(#C4CDDA 1px,transparent 1.3px);background-size:20px 20px;display:flex;align-items:center;justify-content:center;padding:24px}
#lock .lkc{width:min(360px,100%);display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}
html.locked #app{visibility:hidden}
.swrow{display:flex;align-items:center;gap:10px;min-height:48px;width:100%;padding:0 12px;background:#fff;border:2px solid #D5DBE5;border-radius:10px;font:600 16px 'Be Vietnam Pro','Segoe UI',Roboto,sans-serif;color:#1E1E24;text-align:left;cursor:pointer}
.swrow[disabled]{opacity:.55;cursor:default}
.swt{flex:none;width:44px;height:26px;border-radius:13px;background:#BFC8D5;position:relative;border:2px solid #1E1E24}
.swt::after{content:"";position:absolute;top:1px;left:1px;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid #1E1E24;box-sizing:border-box;transition:left .15s}
.swt.on{background:#2E8B57}.swt.on::after{left:19px}
