:root{
    --bg:#f6f7f9;--bg-card:#ffffff;--fg:#2c3038;--fg-soft:#5b616c;--line:#e7e9ee;
    --accent:#6f6cff;--accent-soft:#ecebff;--green:#2da44e;--yellow:#bf8700;--red:#cf222e;--blue:#4a9eff;
    --shadow-sm:0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 14px rgba(0,0,0,.06);
    --radius:10px;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
    background:var(--bg);color:var(--fg);line-height:1.7;-webkit-font-smoothing:antialiased;
    transition:background .25s,color .25s;position:relative;min-height:100vh;
  }
  .bg-layer{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:url("https://t.alcy.cc/ycy/");background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.3;}
  .wrap{position:relative;z-index:1;max-width:880px;margin:0 auto;padding:0 20px;}
  .navbar{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:56px;}
  .brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:16px;color:var(--fg);text-decoration:none;}
  .nav-links{display:flex;align-items:center;gap:14px;}
  .nav-links a{color:var(--fg-soft);text-decoration:none;font-size:14px;transition:color .2s;display:inline-flex;align-items:center;gap:6px;}
  .nav-links a:hover{color:var(--accent);}
  .hero{padding:48px 0 24px;text-align:center;}
  .hero h1{font-size:29px;line-height:1.35;font-weight:800;letter-spacing:.2px;}
  .hero h1 .hl{color:var(--accent);}
  .hero p{margin-top:12px;color:var(--fg-soft);font-size:15px;}
  .card{background:color-mix(in srgb,var(--bg-card) 94%,transparent);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:22px;}
  .card + .card{margin-top:18px;}
  .card-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;margin-bottom:14px;}
  .card-title .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);}
  label.f{display:block;font-size:13px;color:var(--fg-soft);margin-bottom:6px;font-weight:600;}
  .input-row{display:flex;gap:10px;}
  input[type="text"]{flex:1;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--fg);font-size:14px;font-family:var(--mono);transition:border-color .2s,box-shadow .2s;}
  input[type="text"]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);}

  /* —— 按钮样式统一 —— */
  .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    height:44px;
    padding:0 20px;
    border:none;
    border-radius:9px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:transform .12s,box-shadow .2s,background .2s;
    color:#fff;
    background:var(--accent);
    white-space:nowrap;
    flex-shrink:0;
  }
  .btn:hover{box-shadow:var(--shadow-md);transform:translateY(-1px);}
  .btn:active{transform:translateY(0);}
  .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none;}

  /* 次要按钮（幽灵/边框）保持相同高度与内边距 */
  .btn-ghost{
    background:transparent;
    color:var(--fg-soft);
    border:1px solid var(--line);
  }
  .btn-ghost:hover{background:var(--accent-soft);color:var(--accent);border-color:transparent;}

  /* 小尺寸按钮仅用于特殊场景，高度和内边距等比缩小 */
  .btn-sm{
    height:36px;
    padding:0 14px;
    font-size:13px;
  }

  .hint{font-size:12.5px;color:var(--fg-soft);margin-top:9px;}
  .hint code{background:var(--accent-soft);color:var(--accent);padding:1px 6px;border-radius:5px;font-family:var(--mono);font-size:12px;}
  .node-select-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
  .custom-select-wrapper{position:relative;flex:1;min-width:220px;}
  .custom-select-display{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--fg);font-size:13px;cursor:pointer;transition:border-color .2s,box-shadow .2s;user-select:none;}
  .custom-select-display:hover{border-color:var(--accent);}
  .custom-select-display .arrow{margin-left:8px;font-size:12px;color:var(--fg-soft);transition:transform .2s;}
  .custom-select-display.open .arrow{transform:rotate(180deg);}
  .custom-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-card);border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow-md);max-height:260px;overflow-y:auto;display:none;z-index:60;}
  .custom-select-dropdown.open{display:block;}
  .custom-select-dropdown .option{padding:9px 12px;cursor:pointer;font-size:13px;transition:background .15s;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);}
  .custom-select-dropdown .option:last-child{border-bottom:none;}
  .custom-select-dropdown .option:hover{background:var(--accent-soft);}
  .custom-select-dropdown .option.active{background:var(--accent-soft);color:var(--accent);}
  
  /* 延迟标签统一圆角 9px */
  .custom-select-dropdown .option .delay-badge,
  .custom-select-dropdown .option.active .delay-badge {
    font-size:12px;
    padding:1px 10px;
    border-radius:9px;
    font-weight:600;
  }
  
  .delay-green{color:var(--green);background:color-mix(in srgb,var(--green) 15%,transparent);}
  .delay-orange{color:var(--yellow);background:color-mix(in srgb,var(--yellow) 15%,transparent);}
  .delay-red{color:var(--red);background:color-mix(in srgb,var(--red) 15%,transparent);}
  .delay-blue{color:var(--blue);background:color-mix(in srgb,var(--blue) 15%,transparent);}
  .custom-select-dropdown::-webkit-scrollbar{width:5px;}
  .custom-select-dropdown::-webkit-scrollbar-track{background:var(--bg);border-radius:9px;}
  .custom-select-dropdown::-webkit-scrollbar-thumb{background:var(--line);border-radius:9px;}
  .node-info{font-size:12.5px;color:var(--fg-soft);margin-top:8px;}
  .node-info b{color:var(--fg);font-weight:700;}
  .res-list{display:flex;flex-direction:column;gap:12px;margin-top:16px;}
  .res-item{border:1px solid var(--line);border-radius:9px;padding:12px 14px;background:var(--bg);}
  .res-item.hidden{display:none;}
  .res-label{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--accent);margin-bottom:8px;}
  .res-label .tag{font-size:10.5px;font-weight:700;background:var(--accent-soft);color:var(--accent);padding:2px 8px;border-radius:99px;letter-spacing:.3px;}
  .res-row{display:flex;gap:8px;align-items:center;}
  .res-row input.res-input{flex:1;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg-card);color:var(--fg);font-size:13px;font-family:var(--mono);width:100%;}
  .res-row .btn{flex-shrink:0;}
  .plugin-box{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;}
  .plugin-text{flex:1;min-width:220px;}
  .plugin-text p{font-size:13.5px;color:var(--fg-soft);margin-bottom:14px;}
  .modal-mask{position:fixed;inset:0;z-index:90;background:rgba(20,22,28,.45);display:none;align-items:center;justify-content:center;padding:20px;}
  .modal-mask.show{display:flex;}
  .modal{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:24px;max-width:420px;width:100%;text-align:center;}
  .modal .ic{font-size:34px;color:var(--accent);margin-bottom:8px;}
  .modal h3{font-size:17px;margin-bottom:8px;}
  .modal p{font-size:13px;color:var(--fg-soft);margin-bottom:14px;}
  .pw{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--fg);background:var(--accent-soft);border:1px dashed var(--accent);padding:8px 14px;border-radius:9px;}
  .pw b{color:var(--accent);font-family:var(--mono);font-size:15px;letter-spacing:1px;}
  footer{margin-top:40px;border-top:2px solid var(--accent);padding:22px 0 30px;color:var(--fg-soft);font-size:13px;text-align:center;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--accent-soft) 35%,transparent));}
  footer a{color:var(--accent);text-decoration:none;}
  footer a:hover{text-decoration:underline;}
  .foot-icp{display:inline-flex;align-items:center;gap:7px;font-size:13px;}
  .foot-icp b{font-weight:800;}
  .toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--fg);color:var(--bg);padding:10px 18px;border-radius:9px;font-size:13px;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:all .25s;z-index:100;}
  .toast.show{opacity:1;transform:translateX(-50%) translateY(0);}
  @media(max-width:600px){
    .hero h1{font-size:23px;}
    .input-row{flex-direction:column;}
    .nav-links a{font-size:13px;}
    .res-row{flex-direction:column;align-items:stretch;}
    .res-row .btn{align-self:flex-start;}
  }