/* 三马AI · 三才模块平台样式（国风低饱和） */
:root{
  --ink:#2f3a36; --ink2:#5d6b64; --ink3:#8b988f;
  --paper:#fbf8f1; --paper2:#f5f0e6; --paper3:#efe8da;
  --celadon:#7d9384; --celadon2:#e8efe9; --gold:#b08d57; --gold2:#f3ead9;
  --day:#6f8f9c; --day2:#eaf1f4; --ren:#a8846e; --ren2:#f4ece6; --earth:#8a9a6b; --earth2:#eef2e5;
}
body{background:var(--paper)}

/* ---------- 主视觉 ---------- */
.hub-hero{padding:30px 0 8px}
.hub-hero .kicker{font-size:12px;letter-spacing:2px;color:var(--gold);font-weight:600}
.hub-hero h1{font-size:32px;line-height:1.3;margin-top:10px;color:var(--ink);letter-spacing:.5px}
.hub-hero h1 i{font-style:normal;color:var(--celadon)}
.hub-hero p{margin-top:12px;max-width:720px;color:var(--ink2);font-size:15px;line-height:1.9}
.hub-hero .slogan{margin-top:14px;font-size:13px;color:var(--ink3);letter-spacing:1px}
.hub-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.stat{flex:1 1 140px;background:#fff;border:1px solid var(--paper3);border-radius:12px;padding:13px 15px}
.stat b{display:block;font-size:22px;color:var(--ink);line-height:1.2}
.stat span{font-size:12px;color:var(--ink3)}

/* ---------- 板块切换 ---------- */
.boards{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 6px}
.boards a{padding:9px 18px;border-radius:999px;background:#fff;border:1px solid var(--paper3);
  font-size:14px;color:var(--ink2)}
.boards a:hover{border-color:var(--celadon);color:var(--celadon);opacity:1}
.boards a.on{background:var(--ink);border-color:var(--ink);color:#fdfbf6;font-weight:600}
.board-intro{margin:14px 0 4px;font-size:14px;color:var(--ink2);line-height:1.9}
.board-intro b{color:var(--ink)}

/* ---------- 模块卡 ---------- */
.mgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.mcard{display:block;position:relative;background:#fff;border:1px solid var(--paper3);border-radius:14px;
  padding:18px 18px 15px;transition:.16s;overflow:hidden}
.mcard:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(84,73,52,.10);border-color:#d9cdb8;opacity:1}
.mcard .no{position:absolute;right:14px;top:12px;font-size:11px;color:#c9bda6;letter-spacing:.5px}
.mcard h3{font-size:16.5px;line-height:1.5;color:var(--ink);padding-right:28px}
.mcard p{margin-top:8px;font-size:13px;line-height:1.72;color:var(--ink2);
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mcard .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.mcard .tags span{font-size:11px;color:var(--ink3);background:var(--paper2);border-radius:5px;padding:2px 7px}
.mcard .go{display:inline-block;margin-top:11px;font-size:12.5px;color:var(--gold)}
.mcard.day{border-top:3px solid var(--day)}
.mcard.ren{border-top:3px solid var(--ren)}
.mcard.earth{border-top:3px solid var(--earth)}
.mcard.plain{border-top:3px solid var(--paper3)}
.phase-label{margin:26px 0 0;font-size:12px;letter-spacing:1px;color:var(--ink3)}

/* ---------- 表单 ---------- */
.formcard{background:#fff;border:1px solid var(--paper3);border-radius:16px;padding:24px;margin-top:18px}
.formcard h2{font-size:20px;color:var(--ink)}
.formcard .brief{margin-top:8px;font-size:13.5px;color:var(--ink2);line-height:1.8}
.field{margin-top:18px}
.field label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:7px}
.field label em{font-style:normal;color:#b4553f;font-size:12px;margin-left:4px}
.field .hint{font-size:12px;color:var(--ink3);margin-top:6px;line-height:1.7}
.field input,.field select,.field textarea{width:100%;background:var(--paper);border:1px solid var(--paper3);
  border-radius:10px;padding:12px 13px;font-size:14.5px;color:var(--ink);outline:none;transition:.14s}
.field textarea{min-height:110px;resize:vertical;line-height:1.8}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--celadon);
  box-shadow:0 0 0 3px rgba(125,147,132,.14);background:#fff}
.frow{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;align-items:center}
.frow .btn{background:var(--ink);color:#fdfbf6}
.frow .btn:hover{filter:brightness(1.12)}
.frow .btn.ghost{background:#fff;color:var(--ink2);border:1px solid var(--paper3)}
.opt{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink2)}
.opt input{width:auto}
.checkline{display:flex;align-items:flex-start;gap:8px;margin-top:14px;font-size:12.5px;color:var(--ink2);line-height:1.7}
.checkline input{margin-top:3px}

/* ---------- 结果 ---------- */
.res-head{background:linear-gradient(180deg,#fff,#fdfaf3);border:1px solid var(--paper3);
  border-radius:16px;padding:24px;margin-top:18px}
.res-head .tagline{font-size:12px;color:var(--gold);letter-spacing:1px}
.res-head h1{font-size:24px;line-height:1.45;color:var(--ink);margin-top:9px}
.res-head .summary{margin-top:12px;font-size:14.5px;line-height:1.9;color:var(--ink2)}
.res-head .date{margin-top:12px;font-size:12px;color:var(--ink3)}
.paradigm{margin-top:16px;padding:14px 16px;border:1px dashed #d9cbb2;border-radius:12px;background:var(--gold2)}
.paradigm b{display:block;font-size:15px;color:#7a5c2e;letter-spacing:.5px}
.paradigm p{font-size:13px;color:#8a6c3f;margin-top:5px;line-height:1.7}
.att{margin-top:18px;background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:18px}
.att .head{display:flex;justify-content:space-between;font-size:13px;color:var(--ink2)}
.att .bar3{display:flex;height:12px;border-radius:8px;overflow:hidden;margin-top:10px;background:var(--paper2)}
.att .bar3 i{display:block;height:100%}
.att .bar3 .t{background:#9bb6c0}
.att .bar3 .r{background:#c9a58d}
.att .bar3 .d{background:#a8b78a}
.att .legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:9px;font-size:12px;color:var(--ink3)}
.att .legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px}
.layers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.layer{background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:19px}
.layer .lt{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;color:var(--ink)}
.layer .lt i{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;
  font-style:normal;font-size:14px;font-weight:600}
.layer.tian{border-top:3px solid var(--day)} .layer.tian .lt i{background:var(--day2);color:var(--day)}
.layer.ren{border-top:3px solid var(--ren)} .layer.ren .lt i{background:var(--ren2);color:var(--ren)}
.layer.di{border-top:3px solid var(--earth)} .layer.di .lt i{background:var(--earth2);color:#72824f}
.layer ul{margin-top:12px;padding-left:18px}
.layer li{font-size:13.5px;line-height:1.85;color:var(--ink2);margin:7px 0}
.layer .ask{margin-top:13px;padding-top:12px;border-top:1px dashed var(--paper3);font-size:12.5px;color:var(--gold);line-height:1.7}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:13px}
.panel{background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:19px}
.panel h3{font-size:15px;color:var(--ink);margin-bottom:10px}
.panel ol,.panel ul{padding-left:19px}
.panel li{font-size:13.5px;line-height:1.85;color:var(--ink2);margin:6px 0}
.panel.warn{background:#fdf7ea;border-color:#efe0c2}
.panel.warn h3{color:#8a5a12}
.panel.warn li{color:#8a6a39}
.selfcheck{margin-top:13px;background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:19px}
.selfcheck .score{display:flex;align-items:center;gap:14px}
.selfcheck .score b{font-size:30px;color:var(--celadon)}
.selfcheck .score span{font-size:12.5px;color:var(--ink3);line-height:1.7}
.selfcheck ul{margin-top:10px;padding-left:19px}
.selfcheck li{font-size:13px;color:var(--ink2);line-height:1.8}

/* ---------- 树木 ---------- */
.trees{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.tree{background:#fff;border:1px solid var(--paper3);border-radius:16px;padding:20px 18px;position:relative;overflow:hidden}
.tree .emblem{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:19px;font-weight:700;color:#fff;margin-bottom:11px}
.tree.day .emblem{background:linear-gradient(135deg,#88a7b3,#5f808e)}
.tree.human .emblem{background:linear-gradient(135deg,#c4a28c,#a07a5f)}
.tree.earth .emblem{background:linear-gradient(135deg,#a9b98a,#7f905f)}
.tree h3{font-size:16px;color:var(--ink);line-height:1.5}
.tree .kind{font-size:12px;color:var(--ink3);margin-top:4px}
.tree .note{font-size:13px;color:var(--ink2);line-height:1.75;margin-top:9px;min-height:44px}
.tree .grow{margin-top:13px}
.tree .grow .bar{height:7px;background:var(--paper2);border-radius:5px;overflow:hidden}
.tree .grow .bar i{display:block;height:100%;background:var(--celadon)}
.tree .grow .lbl{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink3);margin-top:5px}
.tree .foot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:11.5px;color:var(--ink3)}
.tree .del{color:#b4553f;background:none;border:0;font-size:11.5px;cursor:pointer}

/* ---------- 胶囊 ---------- */
.caps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:16px}
.cap{background:#fff;border:1px solid var(--paper3);border-radius:16px;padding:20px;position:relative}
.cap .state{position:absolute;right:16px;top:15px;font-size:11px;padding:3px 8px;border-radius:6px;background:var(--paper2);color:var(--ink2)}
.cap h3{font-size:17px;color:var(--ink);padding-right:60px;line-height:1.5}
.cap .meta{font-size:12px;color:var(--ink3);margin-top:7px}
.cap .body{margin-top:11px;font-size:13.5px;color:var(--ink2);line-height:1.8;white-space:pre-wrap;word-break:break-word}
.cap.locked .body{filter:blur(5px);user-select:none;color:#a9a396}
.cap .act{margin-top:13px;display:flex;gap:8px;flex-wrap:wrap}
.cap .btn{height:36px;padding:0 15px;font-size:12.5px;background:var(--ink);color:#fff;border-radius:8px}
.cap .btn.ghost{background:#fff;color:var(--ink2);border:1px solid var(--paper3)}

/* ---------- 对照镜 ---------- */
.mirror-pick{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:16px}
.mirror-pick .panel select{width:100%}
.mirror-head{text-align:center;margin-top:22px}
.mirror-head h1{font-size:24px;color:var(--ink)}
.mirror-head p{font-size:13px;color:var(--ink3);margin-top:8px}
.mirror-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.mcol{background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:18px}
.mcol .lt{font-size:15px;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;align-items:center}
.mcol .lt span{font-size:11.5px;color:var(--ink3);font-weight:400}
.mcol .box{margin-top:11px;padding:11px 12px;border-radius:9px;font-size:13px;line-height:1.8}
.mcol .old{background:var(--paper2);color:#7c7568}
.mcol .new{background:var(--celadon2);color:#4d6357}
.mcol .note{margin-top:10px;font-size:12px;color:var(--ink2);line-height:1.75}
.mcol .note li{margin:3px 0}
.mirror-sum{background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:20px;margin-top:14px;
  font-size:14px;line-height:1.9;color:var(--ink2)}
.mirror-sum b{color:var(--ink)}

/* ---------- 个人中心 ---------- */
.me-hero{background:linear-gradient(135deg,#f7f2e7,#eef2ea);border:1px solid var(--paper3);
  border-radius:16px;padding:26px;margin-top:18px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.me-hero .who{font-size:24px;color:var(--ink);font-weight:700}
.me-hero .meta{font-size:13px;color:var(--ink2);margin-top:7px;line-height:1.8}
.me-hero .pts{text-align:right}
.me-hero .pts b{display:block;font-size:36px;color:var(--gold);line-height:1}
.me-hero .pts span{font-size:12px;color:var(--ink3)}
.metabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
.metabs a{padding:8px 16px;border-radius:999px;background:#fff;border:1px solid var(--paper3);font-size:13.5px;color:var(--ink2)}
.metabs a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ledger{background:#fff;border:1px solid var(--paper3);border-radius:14px;padding:18px;margin-top:14px}
.ledger .row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--paper2);font-size:13px;color:var(--ink2)}
.ledger .row:last-child{border-bottom:0}
.ledger .row b{color:var(--celadon)}
.ledger .row b.minus{color:#b4553f}
.recs{margin-top:16px}
.rec{display:block;background:#fff;border:1px solid var(--paper3);border-radius:12px;padding:15px 17px;margin-bottom:9px}
.rec:hover{border-color:#d9cdb8;opacity:1}
.rec h3{font-size:15px;color:var(--ink);line-height:1.5}
.rec .meta{font-size:12px;color:var(--ink3);margin-top:6px;display:flex;gap:10px;flex-wrap:wrap}
.rec .meta .st{color:var(--gold)}
.timeline{border-left:2px solid var(--paper3);margin:18px 0 0 8px;padding-left:22px}
.tl{position:relative;padding-bottom:20px}
.tl::before{content:"";position:absolute;left:-28px;top:5px;width:10px;height:10px;border-radius:50%;
  background:var(--celadon);border:2px solid #fff;box-shadow:0 0 0 2px var(--paper3)}
.tl b{font-size:14px;color:var(--ink)}
.tl p{font-size:13px;color:var(--ink2);margin-top:4px;line-height:1.75}
.tl span{font-size:11.5px;color:var(--ink3)}

/* ---------- 证书 ---------- */
.certs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.cert{background:linear-gradient(180deg,#fffdf7,#f7f1e3);border:1px solid #ddceb2;border-radius:14px;
  padding:20px;text-align:center;position:relative}
.cert::after{content:"";position:absolute;inset:7px;border:1px solid rgba(176,141,87,.28);border-radius:10px;pointer-events:none}
.cert .seal{width:46px;height:46px;margin:0 auto 10px;border-radius:50%;border:2px solid var(--gold);
  display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:15px;font-weight:700}
.cert h3{font-size:16px;color:#6f5527}
.cert p{font-size:12px;color:#8a7550;margin-top:7px;line-height:1.7}
.cert .link{display:inline-block;margin-top:11px;font-size:12px;color:var(--gold)}
.cert.locked{opacity:.55;filter:grayscale(.4)}
.cert.locked .seal{border-color:#b9b3a8;color:#b9b3a8}

/* ---------- 见证碑 ---------- */
.stele-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.stele-tabs a{padding:8px 16px;border-radius:8px;background:#fff;border:1px solid var(--paper3);font-size:13.5px;color:var(--ink2)}
.stele-tabs a.on{background:var(--ink);border-color:var(--ink);color:#fff}
.steles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:16px}
.stone{background:linear-gradient(180deg,#f8f5ec,#eee7d6);border:1px solid #d9cdb2;border-radius:8px;
  padding:24px 20px;position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
.stone::before{content:"";position:absolute;left:12px;right:12px;top:10px;bottom:10px;
  border:1px solid rgba(176,141,87,.22);border-radius:4px;pointer-events:none}
.stone .q{font-size:16px;line-height:1.9;color:#4f4633;letter-spacing:.5px;font-weight:600}
.stone .by{margin-top:13px;font-size:12px;color:#8a7550;display:flex;justify-content:space-between;align-items:center}
.stone .type{font-size:11px;padding:2px 7px;border-radius:4px;background:rgba(176,141,87,.14);color:#8a6c3f}

/* ---------- 刻度盘 ---------- */
.wheel-wrap{display:flex;flex-direction:column;align-items:center;padding:20px 0 10px}
.wheel{position:relative;width:320px;height:320px;max-width:86vw;max-height:86vw}
.ring{position:absolute;border-radius:50%;border:2px solid var(--paper3);transition:transform 2.6s cubic-bezier(.16,.84,.28,1)}
.ring.r1{inset:0;background:conic-gradient(from 0deg,#eaf1f4,#f7f9fa,#eaf1f4,#f7f9fa,#eaf1f4)}
.ring.r2{inset:30px;background:conic-gradient(from 45deg,#f4ece6,#fbf8f3,#f4ece6,#fbf8f3,#f4ece6)}
.ring.r3{inset:60px;background:conic-gradient(from 90deg,#eef2e5,#f8faf3,#eef2e5,#f8faf3,#eef2e5)}
.ring .lab{position:absolute;left:50%;top:12px;transform:translateX(-50%);font-size:12px;color:var(--ink3);letter-spacing:1px}
.ring.r2 .lab{top:9px}.ring.r3 .lab{top:8px}
.wheel .hubdot{position:absolute;inset:96px;border-radius:50%;background:#fff;border:1px solid var(--paper3);
  display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:10px;z-index:2}
.wheel .hubdot b{font-size:20px;color:var(--ink);letter-spacing:1px}
.wheel .hubdot span{font-size:11px;color:var(--ink3);margin-top:5px}
.wheel-result{margin-top:20px;max-width:620px;text-align:center}
.wheel-result .pname{font-size:18px;color:var(--ink);font-weight:700}
.wheel-result p{font-size:14px;color:var(--ink2);line-height:1.9;margin-top:9px}
.wheel-btns{display:flex;gap:10px;justify-content:center;margin-top:16px;flex-wrap:wrap}

/* ---------- 邀约卡 ---------- */
.invite-card{max-width:420px;margin:20px auto;background:linear-gradient(160deg,#fdfaf2,#f2ecdd);
  border:1px solid #ddceb2;border-radius:16px;padding:30px 26px;text-align:center;position:relative}
.invite-card .brand{font-size:13px;letter-spacing:3px;color:var(--gold)}
.invite-card h2{font-size:22px;color:var(--ink);margin-top:14px;line-height:1.5}
.invite-card .quote{margin-top:14px;font-size:14px;color:#6d6350;line-height:1.9}
.invite-card .tree{margin-top:16px;font-size:12.5px;color:var(--ink3)}
.invite-card .slogan{margin-top:20px;padding-top:14px;border-top:1px dashed #d9cbb2;font-size:12px;color:var(--gold);letter-spacing:1px}

/* ---------- 悬浮向导 ---------- */
.sm-guide{position:fixed;right:18px;bottom:20px;z-index:80;font-size:14px}
.sm-guide .gbtn{width:52px;height:52px;border-radius:50%;border:1px solid #d9cbb2;background:var(--paper);
  color:#6f5527;font-size:17px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(84,73,52,.18);
  display:flex;align-items:center;justify-content:center}
.sm-guide .gbtn:hover{background:#fff}
.sm-guide .gpanel{display:none;position:absolute;right:0;bottom:64px;width:300px;background:#fff;
  border:1px solid var(--paper3);border-radius:14px;padding:16px;box-shadow:0 16px 40px rgba(84,73,52,.18)}
.sm-guide.open .gpanel{display:block}
.sm-guide .gpanel b{font-size:14px;color:var(--ink);display:block}
.sm-guide .gpanel p{font-size:12.5px;color:var(--ink3);line-height:1.7;margin-top:6px}
.sm-guide .gpanel textarea{width:100%;height:66px;margin-top:9px;border:1px solid var(--paper3);
  border-radius:9px;padding:9px;font-size:13px;color:var(--ink);background:var(--paper);resize:none;outline:none}
.sm-guide .gpanel .gbtns{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.sm-guide .gpanel .gbtns a,.sm-guide .gpanel .gbtns button{flex:1 1 auto;text-align:center;padding:7px 9px;
  border-radius:8px;background:var(--paper2);border:1px solid var(--paper3);font-size:12px;color:var(--ink2);cursor:pointer}
.sm-guide .gpanel .gbtns .pri{background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- 合规条 ---------- */
.compliance{margin-top:18px;padding:13px 16px;background:#faf7ef;border:1px solid #eadfc8;border-radius:11px;
  font-size:12px;color:#8a7550;line-height:1.8}

/* ---------- 分享卡弹层 ---------- */
.cardmodal{position:fixed;inset:0;background:rgba(24,26,24,.55);z-index:120;display:none;
  align-items:center;justify-content:center;padding:20px}
.cardmodal.show{display:flex}
.cardmodal .box{background:#fff;border-radius:14px;padding:16px;max-width:min(92vw,380px);text-align:center}
.cardmodal img{width:100%;border-radius:8px;display:block}
.cardmodal .acts{display:flex;gap:8px;margin-top:12px}
.cardmodal .acts a,.cardmodal .acts button{flex:1;padding:10px;border-radius:8px;border:1px solid var(--paper3);
  background:#fff;font-size:13px;color:var(--ink2);cursor:pointer;text-align:center}
.cardmodal .acts .pri{background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- 响应式 ---------- */
@media(max-width:900px){
  .mgrid,.trees,.layers,.certs,.steles,.mirror-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .caps{grid-template-columns:1fr}
  .hub-hero h1{font-size:25px}
}
@media(max-width:640px){
  .mgrid,.trees,.layers,.certs,.steles,.mirror-grid,.twocol,.mirror-pick{grid-template-columns:1fr}
  .hub-hero{padding-top:20px}
  .hub-hero h1{font-size:22px}
  .hub-hero p{font-size:14px}
  .me-hero{padding:20px}
  .me-hero .pts{text-align:left}
  .formcard,.res-head,.panel,.selfcheck{padding:17px}
  .res-head h1{font-size:20px}
  .boards a{padding:8px 14px;font-size:13px}
  .wheel .hubdot{inset:78px}
  .wheel .hubdot b{font-size:17px}
  .sm-guide{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
  .sm-guide .gbtn{width:44px;height:44px;font-size:13px}
  .sm-guide .gpanel{width:min(calc(100vw - 24px),330px);right:0;bottom:54px}
  .sm-guide .gpanel textarea{height:60px}
}
