 


















   


  .support-fab{position:fixed;right:18px;bottom:18px;z-index:90;width:52px;height:52px;border-radius:14px;
    border:1px solid var(--accent-ring);background:var(--card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
    box-shadow:var(--glass-shadow);cursor:pointer;color:var(--accent);
    display:flex;align-items:center;justify-content:center;padding:0;transition:transform .15s,background .15s}
  .support-fab:hover{background:var(--soft);transform:translateY(-2px)}
  .support-fab svg{width:28px;height:28px}
  .support-fab .dot{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:999px;background:#e11d48;color:#fff;
    font-size:11px;font-weight:700;display:none;align-items:center;justify-content:center;padding:0 5px;border:2px solid var(--bg)}
  .support-fab .dot.show{display:flex}
   
  .support-pop{position:fixed;right:18px;bottom:82px;z-index:91;width:340px;max-width:94vw;max-height:70vh;
    background:var(--card-strong);border:1px solid var(--glass-line);border-radius:18px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow-lg);
    display:none;flex-direction:column;overflow:hidden}
  .support-pop.open{display:flex}
  .support-pop-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line)}
  .support-pop-head b{font-size:14px}
  .support-pop-close{background:none;border:none;cursor:pointer;color:var(--muted);font-size:18px;line-height:1;padding:2px 6px}
  .support-pop-body{flex:1;overflow-y:auto;padding:13px 14px;display:flex;flex-direction:column;gap:9px;min-height:140px}
  .support-msg{display:flex;flex-direction:column;max-width:82%}
  .support-msg .bub{padding:8px 12px;border-radius:12px;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}
  .support-msg .t{font-size:10.5px;color:var(--muted);margin-top:3px}
  .support-msg.user{align-self:flex-end;align-items:flex-end}
  .support-msg.user .bub{background:var(--accent);color:#fff;border-bottom-right-radius:4px}
  .support-msg.admin{align-self:flex-start;align-items:flex-start}
  .support-msg.admin .bub{background:var(--soft);color:var(--text);border:1px solid var(--line);border-bottom-left-radius:4px}
  .support-empty{color:var(--muted);font-size:12.5px;text-align:center;margin:auto}
  .support-pop-foot{display:flex;flex-direction:column;gap:8px;padding:11px 14px;border-top:1px solid var(--line)}
  .support-input{width:100%;resize:none;min-height:56px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;font-size:13px;
    font-family:inherit;outline:none;background:var(--card);color:var(--text);box-sizing:border-box}
  .support-send{display:flex;align-items:center;justify-content:space-between;gap:8px}
  .support-send .hint{font-size:11px;color:var(--muted)}
  .support-send button{background:var(--accent);color:#fff;border:none;border-radius:999px;padding:8px 20px;font-size:13px;font-weight:600;cursor:pointer}
  .support-send button:disabled{opacity:.6;cursor:not-allowed}
   



  .support-qq{display:none;align-items:baseline;gap:2px;font-size:11.5px;color:var(--muted);
    padding-top:9px;border-top:1px dashed var(--line);line-height:1.5}
  .support-qq.show{display:flex}
   
  .support-qq .v{color:var(--accent);font-weight:600;cursor:pointer;user-select:all;
    border-bottom:1px dashed var(--accent-ring)}
  .support-qq .v.copied{color:var(--muted);font-weight:400;cursor:default;border-bottom-color:transparent}
   


  .ann-fab{position:fixed;right:18px;bottom:80px;z-index:90;width:52px;height:52px;border-radius:14px;
    border:1px solid var(--accent-ring);background:var(--card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
    box-shadow:var(--glass-shadow);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;
    transition:transform .15s,background .15s;font-size:23px;line-height:1;color:var(--accent)}
  .ann-fab:hover{background:var(--soft);transform:translateY(-2px)}
  .ann-fab svg{width:28px;height:28px;display:block}
  .ann-fab .dot{position:absolute;top:-4px;right:-4px;width:11px;height:11px;border-radius:999px;background:#e11d48;
    border:2px solid var(--bg);display:none}
  .ann-fab .dot.show{display:block}
   
  .ann-box{max-width:880px;min-height:60vh}
  .ann-title{display:inline-flex;align-items:center;gap:6px}
   

  .ann-title .ann-ico{width:16px;height:16px;flex:none;display:block;color:var(--accent)}
  .ann-tools{display:flex;align-items:center;gap:8px}
  .ann-wrap{flex:1;min-height:0;display:flex;border-top:1px solid var(--line)}
  .ann-side{width:236px;flex:none;overflow-y:auto;border-right:1px solid var(--line);padding:6px 0}
  .ann-side-item{padding:9px 12px;cursor:pointer;border-left:3px solid transparent;transition:background .12s}
  .ann-side-item:hover{background:var(--soft)}
  .ann-side-item.on{background:var(--soft);border-left-color:var(--accent)}
  .ann-side-t{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--text);line-height:1.35}
  .ann-side-t .txt{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}
  .ann-side-m{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:11.5px;color:var(--muted)}
  .ann-main{flex:1;min-width:0;overflow-y:auto;padding:14px 2px 2px 18px}
  .ann-detail-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;padding-bottom:10px;
    border-bottom:1px solid var(--line)}
  .ann-detail-ttl{font-size:15px;font-weight:700;color:var(--text);word-break:break-word}
  .ann-detail-meta{font-size:11.5px;color:var(--muted);margin-left:auto;flex:none}
  .ann-back{display:none}
  .ann-ver{font-size:11.5px;font-weight:700;color:#fff;background:var(--accent);border-radius:6px;padding:1px 7px;flex:none}
  .ann-pin{font-size:12px;flex:none}
  .ann-new{font-size:10.5px;font-weight:700;color:#e11d48;border:1px solid #e11d48;border-radius:5px;padding:0 5px;flex:none}
  .ann-day{font-size:11.5px;color:var(--muted);flex:none}
  .ann-empty{color:var(--muted);font-size:13px;text-align:center;padding:30px 0}
   
  @media (max-width:700px){
    .ann-wrap{flex-direction:column}
    .ann-side{width:auto;flex:1;min-height:0;border-right:0}
    .ann-main{display:none;padding:0}
    .ann-box.mob-detail .ann-side{display:none}
    .ann-box.mob-detail .ann-main{display:block;flex:1;min-height:0;width:auto}
    .ann-back{display:inline-flex}
  }
   
  .md-body{font-size:13.5px;line-height:1.7;color:var(--text);word-break:break-word}
  .md-body p{margin:0 0 9px}
  .md-body p:last-child{margin-bottom:0}
  .md-body h3,.md-body h4,.md-body h5,.md-body h6{margin:13px 0 7px;font-size:14.5px;line-height:1.4;color:var(--text)}
  .md-body h3{font-size:15.5px}
  .md-body h3:first-child,.md-body h4:first-child{margin-top:0}
  .md-body ul,.md-body ol{margin:0 0 9px;padding-left:22px}
  .md-body li{margin:3px 0}
  .md-body code{background:var(--soft);border:1px solid var(--line);border-radius:5px;padding:1px 5px;
    font-family:ui-monospace,Menlo,monospace;font-size:12.5px}
  .md-body a{color:var(--accent);text-decoration:none}
  .md-body a:hover{text-decoration:underline}
  .md-body blockquote{margin:0 0 9px;padding:6px 12px;border-left:3px solid var(--accent);
    background:var(--soft);border-radius:0 8px 8px 0;color:var(--muted)}
  .md-body hr.md-hr{border:0;border-top:1px solid var(--line);margin:13px 0}

   
  .ann-pin .ic-pin{width:1em;height:1em;flex:none;display:inline-block;vertical-align:-0.12em;margin-right:4px}

   






  .due-fab{position:fixed;right:18px;bottom:142px;z-index:90;width:52px;height:52px;border-radius:14px;
    border:1px solid var(--accent-ring);background:var(--card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
    box-shadow:var(--glass-shadow);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;
    transition:transform .15s,background .15s;color:var(--accent)}
  .due-fab:hover{background:var(--soft);transform:translateY(-2px)}
  .due-fab svg{width:27px;height:27px;display:block}
   


  .due-fab .dot{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:999px;background:#e11d48;color:#fff;
    font-size:11px;font-weight:700;display:none;align-items:center;justify-content:center;padding:0 5px;border:2px solid var(--bg)}
  .due-fab .dot.show{display:flex}
   

  .due-pop{position:fixed;right:18px;bottom:204px;z-index:91;width:330px;max-width:94vw;max-height:60vh;
    background:var(--card-strong);border:1px solid var(--glass-line);border-radius:18px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow-lg);
    display:none;flex-direction:column;overflow:hidden}
  .due-pop.open{display:flex}
  .due-pop-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--line)}
  .due-pop-head b{font-size:14px}
  .due-pop-close{background:none;border:none;cursor:pointer;color:var(--muted);font-size:18px;line-height:1;padding:2px 6px}
   




  .due-pop-body{--due-row-h:34px;--due-gap:7px;flex:1;overflow-y:auto;padding:10px 12px;
    display:flex;flex-direction:column;gap:var(--due-gap);
    max-height:calc(5 * var(--due-row-h) + 4 * var(--due-gap) + 20px);min-height:var(--due-row-h)}
   
  .due-item{flex:none;height:var(--due-row-h);box-sizing:border-box;display:flex;align-items:center;gap:8px;
    padding:0 10px;border-radius:10px;background:var(--soft);font-size:13px}
  .due-item .n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:600}
  .due-item .t{flex:none;font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
   

  .due-item.over .t{color:var(--err-text);font-weight:700}
  .due-item.soon .t{color:var(--accent);font-weight:700}
  .due-empty{color:var(--muted);font-size:12.5px;text-align:center;padding:14px 0}
  .due-pop-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;border-top:1px solid var(--line)}
  .due-pop-foot .hint{font-size:11px;color:var(--muted)}
  .due-go{background:var(--accent);color:#fff;border:none;border-radius:999px;padding:8px 20px;font-size:13px;font-weight:600;cursor:pointer}
