/* 理想活动清单 · 带登录的网页版
   基础样式与群发版完全一致，末尾追加了「登录 / 记录投稿 / 我的记录」相关样式 */

:root{
  --primary:#165DFF; --primary-dark:#0E42D2; --primary-light:#E8F0FF;
  --bg:#F2F4F7; --card:#FFFFFF; --text:#1D2129; --text-2:#4E5969; --text-3:#86909C;
  --line:#E5E8EF; --amber:#FF7D00; --amber-bg:#FFF3E8;
  --green:#00B42A; --green-bg:#E8FFEA; --red:#F53F3F; --red-bg:#FFECE8;
  --radius:14px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
body{
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Helvetica Neue",sans-serif;
  background:var(--bg); color:var(--text); font-size:15px; line-height:1.6;
  padding-bottom:32px; -webkit-font-smoothing:antialiased;
}
.wrap{max-width:680px;margin:0 auto;padding:0 14px}

/* 顶部 */
header{
  background:linear-gradient(160deg,#165DFF 0%,#0E42D2 100%);
  color:#fff;padding:26px 0 22px;position:relative;overflow:hidden;
}
header::after{
  content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;
  border-radius:50%;background:rgba(255,255,255,.08);
}
header::before{
  content:"";position:absolute;right:20px;bottom:-70px;width:140px;height:140px;
  border-radius:50%;background:rgba(255,255,255,.06);
}
.hd-tag{
  display:inline-block;font-size:12px;letter-spacing:.5px;
  background:rgba(255,255,255,.18);border-radius:20px;padding:3px 12px;margin-bottom:10px;
}
h1{margin:0;font-size:22px;font-weight:700;letter-spacing:.3px;position:relative;z-index:1}
.hd-sub{margin:8px 0 0;font-size:13px;opacity:.88;position:relative;z-index:1}
.hd-author{
  display:inline-flex;align-items:center;gap:7px;margin:14px 0 0;font-size:12.5px;
  background:rgba(255,255,255,.16);border-radius:20px;padding:4px 13px 4px 5px;
  position:relative;z-index:1;
}
.hd-author .av{
  width:21px;height:21px;border-radius:50%;background:#fff;color:var(--primary);
  font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;
}
.hd-author b{font-weight:700}
.hd-stats{display:flex;gap:10px;margin-top:16px;position:relative;z-index:1}
.stat{
  flex:1;background:rgba(255,255,255,.14);border-radius:10px;padding:9px 12px;
  backdrop-filter:blur(4px);
}
.stat b{display:block;font-size:19px;font-weight:700;line-height:1.25}
.stat span{font-size:11px;opacity:.85}

/* 登录条（在筛选上方） */
.mebar{
  display:flex;align-items:center;gap:10px;margin:12px 0 10px;padding:12px 14px;
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:0 1px 3px rgba(16,24,40,.05);
}
.mebar.on{border-color:var(--primary-light);background:linear-gradient(180deg,#F5F8FF 0%,#fff 100%)}
.mb-l{flex:1;min-width:0}
.mb-t{font-size:14.5px;font-weight:600;color:var(--text);line-height:1.4}
.mb-t b{color:var(--primary)}
.mb-tag{
  display:inline-block;font-style:normal;font-size:11px;font-weight:600;margin-left:6px;
  background:var(--primary-light);color:var(--primary);border-radius:20px;padding:1px 8px;
}
.mb-s{font-size:12.5px;color:var(--text-3);line-height:1.55;margin-top:2px}
.mb-s b{color:var(--text-2);font-weight:600}
.mb-r{flex:0 0 auto;display:flex;flex-direction:column;gap:6px}
.mb-r button{
  border:0;background:var(--primary);color:#fff;font-family:inherit;font-size:13px;font-weight:600;
  padding:8px 14px;border-radius:9px;cursor:pointer;white-space:nowrap;min-height:36px;
}
.mb-r button.ghost{background:#F2F3F5;color:var(--text-2);font-weight:500;padding:6px 14px;min-height:32px}
.mb-r button:active{opacity:.85}

/* 工具条 */
.toolbar{
  display:flex;align-items:center;gap:8px;margin:12px 0 8px;
}
.toolbar .lbl{flex:0 0 auto;font-size:12.5px;color:var(--text-3);width:30px}
.sorts{display:flex;background:#fff;border-radius:9px;padding:3px;border:1px solid var(--line);flex:1;min-width:0}
.sorts button{
  flex:1;border:0;background:transparent;font-size:12.5px;color:var(--text-2);
  padding:6px 4px;border-radius:7px;font-family:inherit;cursor:pointer;transition:.18s;white-space:nowrap;
}
.sorts button.on{background:var(--primary);color:#fff;font-weight:600}
.sorts.sort-btns button.on{background:var(--primary-dark)}
.tb-hint{font-size:12.5px;color:var(--text-3);margin:0 0 10px;padding-left:38px}

/* 空状态 */
.empty{
  text-align:center;color:var(--text-3);font-size:14px;padding:36px 0;
  background:#fff;border-radius:var(--radius);box-shadow:0 1px 3px rgba(16,24,40,.05);
}

/* 已结束活动收纳抽屉 */
.expired-box{
  margin-top:14px;background:#fff;border-radius:var(--radius);
  box-shadow:0 1px 3px rgba(16,24,40,.05);overflow:hidden;
}
.expired-box summary{
  list-style:none;padding:13px 15px;font-size:13.5px;color:var(--text-2);
  font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
}
.expired-box summary::-webkit-details-marker{display:none}
.expired-box summary::after{content:"展开 ▾";font-size:12px;font-weight:400;color:var(--text-3)}
.expired-box[open] summary::after{content:"收起 ▴"}
.ex-card{display:flex;align-items:center;gap:9px;padding:11px 15px;border-top:1px solid var(--line)}
.ex-mark{flex:0 0 auto;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;white-space:nowrap}
.ex-mark.y{background:var(--green-bg);color:var(--green)}
.ex-mark.n{background:#F2F3F5;color:var(--text-3)}
.ex-title{flex:1;min-width:0;font-size:13.5px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ex-title b{color:var(--text);font-weight:600}
.ex-date{flex:0 0 auto;font-size:12px;color:var(--text-3);white-space:nowrap}
.ex-card a{flex:0 0 auto;font-size:12.5px;color:var(--primary);text-decoration:none;font-weight:600}

/* 卡片 */
.card{
  background:var(--card);border-radius:var(--radius);margin-bottom:12px;
  box-shadow:0 1px 3px rgba(16,24,40,.05);overflow:hidden;position:relative;
}
.card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--primary);
}
.card.c5::before{background:var(--amber)}
.card-head{padding:14px 15px 0 19px;display:flex;align-items:flex-start;gap:9px}
.no{
  flex:0 0 auto;width:22px;height:22px;border-radius:7px;background:var(--primary-light);
  color:var(--primary-dark);font-size:12px;font-weight:700;
  display:flex;align-items:center;justify-content:center;margin-top:2px;
}
.card.c5 .no{background:var(--amber-bg);color:#C25E00}
.card-title{flex:1;font-size:16.5px;font-weight:700;line-height:1.35}
.badge{
  flex:0 0 auto;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;
  white-space:nowrap;margin-top:3px;
}
.badge.doing{background:var(--green-bg);color:var(--green)}
.badge.soon{background:var(--red-bg);color:var(--red)}
.badge.done{background:#F2F3F5;color:var(--text-3)}

.card-body{padding:9px 15px 0 19px}
.kv{display:flex;font-size:13.5px;margin-bottom:5px;align-items:flex-start}
.kv .k{flex:0 0 58px;color:var(--text-3);font-size:13px}
.kv .v{flex:1;color:var(--text-2);word-break:break-word}

.points{
  display:flex;gap:8px;margin:11px 0 0;
}
.pt{
  flex:1;background:var(--amber-bg);border-radius:10px;padding:8px 9px;
}
.pt .n{font-size:19px;font-weight:700;color:var(--amber);line-height:1.2}
.pt .n small{font-size:12px;font-weight:600;margin-left:1px}
.pt .t{font-size:11px;color:#A85800;margin-top:1px;line-height:1.3}
.pt.bonus{background:var(--green-bg)}
.pt.bonus .n{color:var(--green)}
.pt.bonus .n small{color:var(--green)}
.pt.bonus .t{color:#0E7A1E}
.pt.none{background:#F2F3F5}
.pt.none .n{color:var(--text-3)}
.pt.none .n small{color:var(--text-3)}
.pt.none .t{color:var(--text-3)}
.pt.top{background:linear-gradient(135deg,#FFF3E8,#FFE8D1)}
.pt.top .n::after{content:" 最高";font-size:10px;font-weight:600;color:#fff;background:var(--amber);
  padding:1px 5px;border-radius:6px;vertical-align:2px;margin-left:4px}
/* 多赛道活动：每个赛道积分不同，单列一张小表 */
.tiers{margin:8px 0 0;background:#F7F8FA;border-radius:10px;padding:7px 10px}
.tier{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;line-height:2;color:var(--text-2)}
.tier .tn{color:var(--text);font-weight:600;white-space:nowrap}
.tier .tv{color:var(--text-3);text-align:right}

.chips{display:flex;flex-wrap:wrap;gap:6px;margin:11px 0 0}
.chip{
  font-size:12.5px;color:var(--primary-dark);background:var(--primary-light);
  border-radius:7px;padding:4px 9px;cursor:pointer;user-select:none;border:0;font-family:inherit;
}
.chip:active{background:#D6E4FF}
.chip.copied{background:var(--green-bg);color:var(--green)}

details{border-top:1px solid var(--line);margin-top:13px}
summary{
  list-style:none;padding:11px 15px 11px 19px;font-size:13.5px;color:var(--primary);
  font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
}
summary::-webkit-details-marker{display:none}
summary::after{content:"展开 ▾";font-size:12px;font-weight:400;color:var(--text-3)}
details[open] summary::after{content:"收起 ▴"}
.detail-inner{padding:0 15px 14px 19px}
.d-sec{margin-bottom:11px}
.d-sec:last-child{margin-bottom:0}
.d-h{font-size:12.5px;color:var(--text-3);margin-bottom:5px}
.d-li{font-size:13.5px;color:var(--text-2);padding-left:14px;position:relative;line-height:1.55;margin-bottom:3px}
.d-li::before{content:"";position:absolute;left:2px;top:9px;width:4px;height:4px;border-radius:50%;background:#C9CDD4}
.d-li.copyable{cursor:pointer;user-select:none;padding-right:56px;border-radius:6px;transition:background .18s}
.d-li.copyable:active{background:#F2F3F5}
.d-li.copyable::after{content:"复制";position:absolute;right:2px;top:1px;font-size:11px;color:#C9CDD4}
.d-li.copyable.copied::after{content:"已复制 ✓";color:var(--green);font-weight:600}
.d-note{font-size:13.5px;color:var(--text-2);background:#F7F8FA;border-radius:9px;padding:9px 11px;line-height:1.55}
.d-note a{color:var(--primary);text-decoration:none;word-break:break-all}

.acts{display:flex;gap:9px;padding:0 15px 15px 19px}
.acts a{
  flex:1;text-align:center;font-size:14px;font-weight:600;text-decoration:none;
  padding:10px 0;border-radius:10px;font-family:inherit;
}
.acts a.p{background:var(--primary);color:#fff}
.acts a.s{background:#F2F3F5;color:var(--text-2)}

/* 打卡 */
.card.done{opacity:.62}
.card.done::before{background:#00B42A}
.card.done .card-title{color:var(--text-3);text-decoration:line-through;text-decoration-thickness:1.5px}
.card.done .no{background:#E8FFEA;color:#008A20}
.check-btn{
  display:block;width:calc(100% - 34px);margin:0 15px 15px 19px;padding:11px 0;
  border:0;border-radius:11px;font-family:inherit;font-size:15px;font-weight:700;
  cursor:pointer;transition:.18s;
  background:#00B42A;color:#fff;
}
.check-btn:active{transform:scale(.98)}
.card.done .check-btn{background:#F2F3F5;color:var(--text-3);font-weight:600}
.toast{
  position:fixed;left:50%;bottom:40px;transform:translateX(-50%) translateY(20px);
  background:rgba(29,33,41,.92);color:#fff;font-size:13.5px;
  padding:9px 18px;border-radius:20px;opacity:0;pointer-events:none;transition:.25s;z-index:99;
  max-width:82vw;text-align:center;
}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* 底部 */
.foot{
  background:#fff;border-radius:var(--radius);padding:2px 15px 4px;margin-top:16px;
  box-shadow:0 1px 3px rgba(16,24,40,.05);
}
.foot summary{padding:14px 0;color:var(--text);font-size:14.5px}
.foot .detail-inner{padding:0 0 14px}
.foot li{font-size:13.5px;color:var(--text-2);margin-bottom:7px;line-height:1.55}
.foot ul{margin:0;padding-left:19px}
/* 打卡说明卡 */
.note-box{
  background:#fff;border-radius:var(--radius);padding:14px 16px;margin:16px 0 0;
  box-shadow:0 1px 3px rgba(16,24,40,.05);border-left:4px solid var(--amber);
}
.note-box h3{
  margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text);
  display:flex;align-items:center;gap:6px;
}
.note-box h3 span{
  font-size:11px;font-weight:600;color:#C25E00;background:var(--amber-bg);
  border-radius:20px;padding:2px 8px;
}
.note-box ul{margin:0;padding-left:17px}
.note-box li{font-size:13px;color:var(--text-2);line-height:1.65;margin-bottom:5px}
.note-box li:last-child{margin-bottom:0}
.note-box li b{color:var(--text)}
.tip{
  font-size:12.5px;color:var(--text-3);text-align:center;line-height:1.7;
  margin:16px 0 0;padding:0 10px;
}
/* 进度条 */
.bar-wrap{margin-top:16px;position:relative;z-index:1}
.bar{height:10px;background:rgba(255,255,255,.25);border-radius:6px;overflow:hidden}
.bar i{display:block;height:100%;width:0;background:#fff;border-radius:6px;transition:width .45s ease}
.bar-lbl{font-size:12px;margin-top:7px;opacity:.92;position:relative;z-index:1}


/* ============================================================
   以下是这一版新增：登录状态条 / 记录投稿 / 弹层 / 表格
   ============================================================ */

/* 顶部右上角：登录状态 */
.hd-user{position:absolute;top:16px;right:14px;z-index:3;display:flex;gap:6px;align-items:center}
.hd-user button{
  border:0;cursor:pointer;font-family:inherit;
  background:rgba(255,255,255,.22);color:#fff;
  border-radius:20px;padding:6px 13px;font-size:12.5px;font-weight:600;
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
}
.hd-user button:active{background:rgba(255,255,255,.32)}
/* 顶部左上/右上角的「回主页」链接：跟登录按钮同一套观感 */
.hd-user a,.hd-home{
  border:0;text-decoration:none;font-family:inherit;white-space:nowrap;
  background:rgba(255,255,255,.22);color:#fff;
  border-radius:20px;padding:6px 13px;font-size:12.5px;font-weight:600;
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
}
.hd-user a:active,.hd-home:active{background:rgba(255,255,255,.32)}
.hd-user .who{
  background:rgba(255,255,255,.16);border-radius:20px;padding:5px 12px;
  font-size:12.5px;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.hd-user .who b{font-weight:700}

/* 卡片上的第二排按钮：记录投稿 */
.acts2{display:flex;gap:9px;padding:0 15px 0 19px;margin:0 0 12px}
.acts2 button{
  flex:1;border:0;border-radius:10px;padding:10px 0;font-size:14px;font-weight:600;
  font-family:inherit;cursor:pointer;
  background:var(--primary-light);color:var(--primary-dark);
}
.acts2 button:active{background:#D6E4FF}
.acts2 button.g{background:#F2F3F5;color:var(--text-2)}
.mine-tag{
  display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;
  background:var(--primary-light);color:var(--primary-dark);margin-left:6px;vertical-align:2px;
}

/* 弹层 */
.mask{
  position:fixed;inset:0;left:0;right:0;top:0;bottom:0;
  background:rgba(0,0,0,.45);z-index:50;display:none;
  align-items:flex-end;justify-content:center;
  -webkit-overflow-scrolling:touch;
}
.mask.on{display:flex}
.sheet{
  background:#fff;width:100%;max-width:520px;border-radius:18px 18px 0 0;
  padding:20px 18px 22px;max-height:88vh;overflow:auto;
  animation:lh-up .22s ease;
}
@keyframes lh-up{from{transform:translateY(28px);opacity:.5}to{transform:translateY(0);opacity:1}}
@media(min-width:560px){
  .mask{align-items:center}
  .sheet{border-radius:18px;padding-bottom:24px}
}
.sheet h2{margin:0 0 4px;font-size:18px;display:flex;align-items:center;justify-content:space-between}
.sheet h2 .x{border:0;background:#F2F3F5;color:var(--text-3);width:28px;height:28px;border-radius:50%;
  font-size:16px;line-height:1;cursor:pointer;font-family:inherit}
.sheet p.sub{margin:0 0 16px;font-size:12.5px;color:var(--text-3)}
.fld{margin-bottom:12px}
.fld label{display:block;font-size:12.5px;color:var(--text-3);margin-bottom:5px}
.fld label i{color:var(--red);font-style:normal}
.fld input,.fld textarea,.fld select{
  width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;
  font-size:15px;font-family:inherit;background:#fff;color:var(--text);
}
.fld input:focus,.fld textarea:focus,.fld select:focus{
  outline:0;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)
}
.fld textarea{min-height:72px;resize:vertical}
.btn{
  display:block;width:100%;border:0;border-radius:11px;padding:13px 0;
  font-size:16px;font-weight:700;font-family:inherit;background:var(--primary);color:#fff;cursor:pointer;
}
.btn:active{opacity:.9}
.btn[disabled]{opacity:.55;cursor:default}
.btn.ghost{background:#F2F3F5;color:var(--text-2);font-weight:600;font-size:15px;padding:12px 0}
.btn2{display:flex;gap:10px;margin-top:10px}
.err{
  background:var(--red-bg);color:var(--red);font-size:13px;border-radius:9px;
  padding:9px 11px;margin-bottom:12px;display:none;line-height:1.5;
}
.err.on{display:block}
.tabs{display:flex;gap:6px;background:#F2F3F5;border-radius:10px;padding:4px;margin-bottom:16px}
.tabs button{
  flex:1;border:0;background:transparent;border-radius:8px;padding:9px 0;font-size:14px;
  font-family:inherit;color:var(--text-2);cursor:pointer;font-weight:600;
}
.tabs button.on{background:#fff;color:var(--primary);box-shadow:0 1px 3px rgba(0,0,0,.08)}

/* 我的记录 / 后台 */
.sub-nav{display:flex;align-items:center;gap:10px;margin:12px 0}
.sub-nav a{
  font-size:13.5px;color:var(--primary);text-decoration:none;font-weight:600;
  background:#fff;border-radius:9px;padding:8px 13px;border:1px solid var(--line);
}
.sec-title{
  font-size:13.5px;font-weight:700;color:var(--text);margin:18px 0 9px;
  display:flex;align-items:center;justify-content:space-between;
}
.sec-title span{font-weight:400;font-size:12.5px;color:var(--text-3)}
.rec{
  background:#fff;border-radius:12px;padding:12px 14px;margin-bottom:10px;
  box-shadow:0 1px 3px rgba(16,24,40,.05);border-left:4px solid var(--primary);
}
.rec .r-top{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px}
.rec .r-t{flex:1;font-size:14.5px;font-weight:700;line-height:1.4}
.rec .r-x{
  flex:0 0 auto;border:0;background:#F2F3F5;color:var(--text-3);border-radius:8px;
  font-size:12px;padding:4px 9px;cursor:pointer;font-family:inherit;
}
.rec .r-x:active{background:var(--red-bg);color:var(--red)}
.rec .r-li{font-size:13px;color:var(--text-2);line-height:1.6;word-break:break-all}
.rec .r-li b{color:var(--text-3);font-weight:400}
.rec .r-li a{color:var(--primary);text-decoration:none}
.rec .r-time{font-size:11.5px;color:var(--text-3);margin-top:6px}
.rec.ck{border-left-color:var(--green)}
.tag-plat{
  display:inline-block;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px;
  background:var(--primary-light);color:var(--primary-dark);margin-right:5px;
}
.tag-plat.g{background:var(--green-bg);color:#0E7A1E}

/* 表格（群主后台） */
.tbl-wrap{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 3px rgba(16,24,40,.05);margin-bottom:14px}
.tbl-wrap .t-h{padding:12px 15px;font-size:14px;font-weight:700;border-bottom:1px solid var(--line)}
.tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;min-width:520px;font-size:13px}
th,td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
th{background:#FAFBFC;color:var(--text-3);font-weight:600;font-size:12.5px}
td.wrapok{white-space:normal;min-width:180px;word-break:break-all}
tbody tr:last-child td{border-bottom:0}
.num{text-align:right;font-variant-numeric:tabular-nums}
.mini-note{font-size:12.5px;color:var(--text-3);line-height:1.7;margin:0 0 12px;padding:0 2px}
.stat-row{display:flex;gap:10px;margin:14px 0}
.stat-row .s{
  flex:1;background:#fff;border-radius:12px;padding:12px 14px;
  box-shadow:0 1px 3px rgba(16,24,40,.05);
}
.stat-row .s b{display:block;font-size:22px;font-weight:700;color:var(--primary);line-height:1.2}
.stat-row .s span{font-size:12px;color:var(--text-3)}
.foot-note{text-align:center;font-size:12px;color:var(--text-3);margin:22px 0 0;line-height:1.8}

/* 已结束的活动：灰显，但不隐藏、照常留在列表里 */
.card.expired{opacity:.55;filter:grayscale(.55)}
.card.expired .badge{background:#F2F3F5;color:var(--text-3)}
.card.expired .card-title{color:var(--text-3)}
.card.expired:hover,.card.expired:active{opacity:.8;filter:none}

/* 到账积分标记 */
.mine-tag.paid{background:var(--green-bg);color:#008A20}

/* 积分弹层的快捷档位 */
.quick{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.quick .q{
  border:1px solid var(--line);background:#fff;border-radius:20px;
  padding:7px 14px;font-size:14px;font-weight:600;color:var(--primary-dark);
  font-family:inherit;cursor:pointer;
}
.quick .q:active{background:var(--primary-light)}
.tip2{font-size:12.5px;color:var(--text-3);margin:10px 0 0;line-height:1.6}

/* ===== 后台 · 活动管理 ===== */
.act-row{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:10px 0;border-bottom:1px solid var(--line);
}
.act-row:last-child{border-bottom:0}
.act-i{flex:1;min-width:150px}
.act-t{font-size:14.5px;font-weight:700;line-height:1.4;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.act-m{font-size:12px;color:var(--text-3);margin-top:3px}
.tag-off{
  font-size:11px;font-weight:600;background:var(--red-bg);color:var(--red);
  border-radius:20px;padding:1px 7px;
}
.tag-new{
  font-size:11px;font-weight:600;background:var(--primary-light);color:var(--primary);
  border-radius:20px;padding:1px 7px;
}
.act-b{flex:0 0 auto;display:flex;gap:6px;flex-wrap:wrap}
.act-b .ab,.act-b form button{
  display:inline-block;border:0;border-radius:8px;padding:7px 11px;
  font-size:12.5px;font-family:inherit;font-weight:600;cursor:pointer;
  background:#F2F3F5;color:var(--text-2);text-decoration:none;min-height:32px;
}
.act-b .ab.pri{background:var(--primary);color:#fff}
.act-b form button.del{background:var(--red-bg);color:var(--red)}
.act-b form{display:inline;margin:0}
.act-b .ab:active,.act-b form button:active{opacity:.8}

.adm-bar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.adm-bar a,.adm-bar form button{
  flex:0 0 auto;border:0;border-radius:9px;padding:9px 13px;
  font-size:13.5px;font-weight:600;font-family:inherit;cursor:pointer;
  background:var(--primary);color:#fff;text-decoration:none;min-height:38px;
}
.adm-bar .ghost,.adm-bar form.ghost button{background:#F2F3F5;color:var(--text-2)}
.adm-bar form{display:inline;margin:0}
.adm-bar a:active,.adm-bar form button:active{opacity:.85}

.hint-box{
  background:var(--amber-bg);border-left:4px solid var(--amber);border-radius:10px;
  padding:10px 12px;font-size:13px;line-height:1.7;margin:0 0 12px;
}
.hint-box.ok{background:var(--green-bg);border-left-color:var(--green)}
.hint-box.bad{background:var(--red-bg);border-left-color:var(--red);color:var(--red)}
.hint-box b{font-weight:700}
.fld-grid{display:flex;gap:10px;flex-wrap:wrap}
.fld-grid .fld{flex:1;min-width:130px}
.chk{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--text-2);margin:0 0 12px}
.chk input{width:18px;height:18px}
