/* ========== 通用弹窗 ========== */
.yct-popover{
    --yct-primary:#1677ff;--yct-danger:#ff4d4f;--yct-warning:#faad14;--yct-success:#52c41a;
    --yct-bg:#fff;--yct-header-bg:linear-gradient(135deg,#f0f7ff 0%,#e6f0ff 100%);--yct-border:#e1e9ff;
    font-family:inherit;position:fixed;inset:0;z-index:9990;display:flex;align-items:center;justify-content:center;
    background:rgba(15,23,42,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s ease;
    padding:40px 16px;box-sizing:border-box;
}
.yct-popover.active{opacity:1;visibility:visible}
.yct-popup{
    width:100%;max-width:540px;max-height:calc(100vh - 80px);
    background:var(--yct-bg);border-radius:16px;
    box-shadow:0 20px 60px -10px rgba(22,119,255,.25), 0 0 0 1px rgba(22,119,255,.08);
    display:flex;flex-direction:column;overflow:hidden;
    transform:scale(.92) translateY(10px);transition:transform .35s cubic-bezier(.34,1.56,.64,1);
}
.yct-popover.active .yct-popup{transform:scale(1) translateY(0)}
.yct-header{
    padding:20px 24px;background:var(--yct-header-bg);
    border-bottom:1px solid var(--yct-border);
    display:flex;align-items:center;justify-content:space-between;flex-shrink:0;
}
.yct-header h2{margin:0;font-size:19px;font-weight:700;color:var(--yct-primary);display:flex;align-items:center;gap:8px}
.yct-close-btn{
    width:32px;height:32px;display:flex;align-items:center;justify-content:center;
    font-size:20px;color:#6b7280;border:none;background:rgba(255,255,255,.6);
    border-radius:8px;cursor:pointer;transition:all .2s ease;
}
.yct-close-btn:hover{background:#ff4d4f;color:#fff;transform:rotate(90deg)}
.yct-content-wrap{padding:24px;overflow-y:auto;box-sizing:border-box;flex:1}
.yct-content{line-height:1.8;color:#1f2937;font-size:14px}
.yct-btn{
    display:flex;align-items:center;justify-content:space-between;
    width:100%;padding:12px 16px;border:1px solid var(--yct-border);
    border-radius:10px;background:#fafcff;color:#1677ff;
    margin-bottom:10px;transition:all .2s ease;text-decoration:none;font-size:14px;
}
.yct-btn:hover{background:#e6f2ff;border-color:#93c5ff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(22,119,255,.1)}
.yct-actions{
    padding:16px 24px;border-top:1px solid var(--yct-border);
    display:flex;justify-content:flex-end;gap:12px;flex-shrink:0;background:#fafbff;
}
.yct-close{background:#f0f7ff;color:#1677ff;border:none;padding:10px 22px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s ease}
.yct-close:hover{background:#e6f0ff}
.yct-primary-btn{
    background:linear-gradient(135deg,#1677ff 0%,#0066ff 100%);color:#fff;
    border:none;padding:10px 22px;border-radius:8px;cursor:pointer;
    font-size:14px;font-weight:500;transition:all .2s ease;box-shadow:0 4px 12px rgba(22,119,255,.2);
}
.yct-primary-btn:hover{background:linear-gradient(135deg,#0066ff 0%,#0052cc 100%);transform:translateY(-1px);box-shadow:0 6px 16px rgba(22,119,255,.3)}

/* 各弹窗独立层级 */
#yctNoticePopup.yct-popover{z-index:9990}
#addFavModal.yct-popover{z-index:8880}
#yezifModal.yct-popover{z-index:8850}

/* 深色模式适配 */
.io-black-mode .yct-popover{
    --yct-bg:#1f2937;--yct-header-bg:linear-gradient(135deg,#2e3a4a 0%,#283240 100%);--yct-border:#374151;
}
.io-black-mode .yct-popup{box-shadow:0 20px 60px -10px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.05)}
.io-black-mode .yct-content{color:#e5e7eb}
.io-black-mode .yct-btn{background:#2e3a4a;border-color:#374151;color:#7dd3fc}
.io-black-mode .yct-btn:hover{background:#374151;border-color:#4b5563}
.io-black-mode .yct-actions{background:#1e2735}
.io-black-mode .yct-close{background:#2e3a4a;color:#7dd3fc}
.io-black-mode .yct-close:hover{background:#374151}
