:root{color:#e8f0ff;font-synthesis:none;text-rendering:optimizelegibility;background:#070a17;font-family:Inter,Segoe UI,Microsoft YaHei,PingFang SC,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:#070a17;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{color:#dce5ff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#141c3fb8;border:1px solid #97a9ff52;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:84px;min-height:40px;padding:0 16px;transition:border-color .16s,background .16s,color .16s,opacity .16s,transform .16s;display:inline-flex}select{color:#edf2ff;width:100%;font:inherit;background:#0d1330;border:1px solid #97a9ff4d;border-radius:8px;padding:11px 12px}.clash-workspace{overflow:auto}.toolbar.clash-toolbar{justify-content:flex-start;align-items:center;gap:20px;padding-inline:22px;display:flex}.draft-state{color:#8cf0d5;align-items:center;gap:7px;font-size:.9rem;display:inline-flex}.draft-state.dirty{color:#ffd092}.config-tabs{flex-wrap:wrap;gap:8px;margin-top:12px;padding:0 22px 18px;display:flex}.config-tabs button{min-width:0;min-height:34px;padding:0 13px;font-size:.88rem}.config-tabs button.active{color:#071420;background:#8cefd6;border-color:#7ef2d3bf}.diagnostics{color:#ffd49a;background:#55361738;border:1px solid #ffca7552;border-radius:12px;gap:5px;margin:0 22px 16px;padding:12px 14px;display:grid}.diagnostics p{margin:0;font-size:.84rem}.diagnostics p.error-diagnostic{color:#ffaaa9}.diagnostics code{color:#c4d0ff;margin-right:7px}.editor-loading{color:#aebcf1;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.config-panel{gap:18px;padding:0 22px 24px;display:grid}.section-heading,.config-card-title,.row-actions{align-items:center;display:flex}.section-heading,.config-card-title{justify-content:space-between;gap:14px}.section-heading h2,.section-heading p{margin:0}.section-heading p{color:#9eacd7;margin-top:5px;font-size:.9rem}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.form-grid label,.advanced-row label{color:#aebbea;align-content:start;gap:6px;font-size:.84rem;display:grid}.form-grid small{color:#7f8db8;line-height:1.45}.form-grid .wide-field{grid-column:span 2}.toggle-label{background:#0b112b94;border:1px solid #97a9ff33;border-radius:9px;align-self:end;align-items:center;min-height:43px;padding:0 12px;display:flex!important}.toggle-label input,.member-selector input{width:auto}.config-card-list{gap:14px;display:grid}.config-card{background:linear-gradient(145deg,#19224cb8,#090f28d1);border:1px solid #8b9ef73b;border-radius:14px;gap:16px;padding:16px;display:grid}.summary-card{gap:0;padding:14px 16px}.summary-card .config-card-title>div:first-child{min-width:0}.summary-meta{color:#aab7df;flex-wrap:wrap;gap:6px 10px;margin-top:7px;font-size:.82rem;display:flex}.summary-meta span{text-overflow:ellipsis;white-space:nowrap;max-width:420px;overflow:hidden}.summary-meta span+span:before{color:#556391;content:"·";margin-right:10px}.summary-rule code{color:#c9f8eb;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.policy-chip{color:#9cebd7;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#3b807924;border:1px solid #8cefd63d;border-radius:999px;padding:6px 10px;font-size:.8rem;overflow:hidden}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.row-actions button{min-width:34px;min-height:32px;padding:0 10px;font-size:.8rem}button.danger,.row-actions button.danger{color:#ffaaa9}.config-card details{border-top:1px solid #8b9ef72e;padding-top:12px}.config-card summary{color:#a8f7df;cursor:pointer}.member-selector{border:1px solid #8b9ef733;border-radius:10px;flex-wrap:wrap;gap:8px 16px;padding:12px;display:flex}.member-selector legend{color:#aebbea;padding:0 6px;font-size:.84rem}.member-selector label{align-items:center;gap:6px;font-size:.84rem;display:inline-flex}.advanced-fields{gap:10px;margin-top:12px;display:grid}.advanced-row{grid-template-columns:minmax(130px,.8fr) 120px minmax(220px,2fr) auto;align-items:end;gap:10px;display:grid}.advanced-row .icon-button{margin-bottom:4px}.field-error{color:#ffaaa9}.rule-list{gap:9px;display:grid}.rule-row{grid-template-columns:36px minmax(260px,1fr) minmax(150px,.35fr) auto;align-items:center;gap:8px;display:grid}.rule-index{color:#8cefd6;background:#4d6baa42;border-radius:50%;place-items:center;width:32px;height:32px;font-size:.8rem;display:grid}.yaml-preview{color:#b9f6e7;white-space:pre-wrap;background:#070b1d;border:1px solid #97a9ff4d;border-radius:8px;min-height:480px;margin:0;padding:14px;font-family:Cascadia Code,JetBrains Mono,Consolas,monospace;line-height:1.55;overflow:auto}.yaml-editor{background:#070b1d;border:1px solid #97a9ff4d;border-radius:8px;overflow:hidden}.yaml-editor:focus-within{border-color:#8cf0d5;box-shadow:0 0 0 2px #8cf0d529}.yaml-editor-error{color:#ffaaa9;background:#631f263d;border:1px solid #ff808052;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;display:flex}.clash-dialog-frame{z-index:100}.clash-dialog{width:min(900px,100%);max-height:calc(100vh - 40px);padding:0;overflow:hidden}.dialog-heading{padding:20px 22px 0}.dialog-heading h2,.dialog-heading p{margin:0}.dialog-heading p{color:#aab7df;margin-top:5px;font-size:.88rem}.dialog-content{gap:18px;padding:2px 22px;display:grid;overflow:auto}.clash-dialog details{border-top:1px solid #8b9ef733;padding-top:12px}.clash-dialog summary{color:#a8f7df;cursor:pointer}.clash-dialog .dialog-actions{border-top:1px solid #8b9ef733;padding:14px 22px 20px}.rule-dialog-grid{grid-template-columns:minmax(0,2fr) minmax(180px,.7fr)}@media (width<=900px){.form-grid,.advanced-row,.rule-row,.rule-dialog-grid{grid-template-columns:1fr}.form-grid .wide-field{grid-column:auto}.rule-index{display:none}.section-heading,.config-card-title,.clash-toolbar{flex-direction:column;align-items:stretch}.row-actions{justify-content:flex-start}.summary-card .row-actions{margin-top:12px}}button:hover:not(:disabled){background:#303e7eb8;border-color:#81f0d2c7}button:disabled{cursor:not-allowed}button.primary{color:#061521;background:linear-gradient(110deg,#85efd3,#91aaff);border-color:#7ef2d3b8;box-shadow:0 10px 26px #3dc5b733}button.tonal{color:#cbd7ff;background:#5b6dd12e;border-color:#899dff61}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid #8cf0d5}button svg{flex:none}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}input,textarea{color:#edf2ff;resize:vertical;background:#090e25c7;border:1px solid #97a9ff4d;border-radius:8px;outline:none;width:100%;padding:11px 12px}input:focus,textarea:focus{border-color:#86efd4;box-shadow:0 0 0 3px #69dfce29}input:disabled{color:#7886ad;background:#080c1f8f}label{gap:7px;display:grid}label span{color:#b7c4e7;font-size:.87rem;font-weight:700}.page-shell{background:radial-gradient(circle at 15% 10%,#475bff52,#0000 35%),radial-gradient(circle at 85% 80%,#00e0b433,#0000 32%),#070a17;min-height:100vh;padding:24px;position:relative;overflow:hidden}.workspace{flex-direction:column;width:min(1120px,100%);height:calc(100vh - 48px);min-height:calc(100vh - 48px);margin:0 auto;display:flex}.header{display:block}.header h1,.header p,.list-title h2,.warning{margin:0}.header h1{color:#f5f7ff;font-size:2rem;font-weight:800;line-height:1.12}.header p{color:#aab7d4;margin-top:8px;font-size:1.125rem}.counter{white-space:nowrap;color:#aebbe3}.editor-header{gap:16px;display:grid}.back-button{color:#cbd5ff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f142fa6;border-color:#96a5ff5c;width:fit-content;min-width:0}.back-button:hover:not(:disabled){color:#fff;background:#4456c46b;border-color:#8b9dff}.landing,.placeholder-page{isolation:isolate;place-items:center;min-height:calc(100vh - 48px);display:grid;position:relative}.landing-kicker{color:#7ce6d1;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;font-size:.78rem;font-weight:800;display:inline-flex}.placeholder-page h1{color:#f8f9ff;letter-spacing:-.06em;max-width:800px;margin:18px auto 0;font-size:clamp(3rem,8vw,6.5rem);line-height:.95}.placeholder-page>p{color:#aab7d4;max-width:600px;margin:24px auto 0;font-size:1.08rem;line-height:1.8}.product-cards{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:min(1040px,100%);display:grid}button.product-card{color:#f7f8ff;text-align:left;background:linear-gradient(145deg,#1d244ed1,#0c1027e0);border:1px solid #9badff40;border-radius:28px;grid-template-columns:auto 1fr auto;gap:18px;min-height:190px;padding:28px;transition:transform .28s cubic-bezier(.2,.8,.2,1),border-color .28s,box-shadow .28s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 22px 50px #0000003d}button.product-card:before{content:"";filter:blur(18px);opacity:.65;border-radius:50%;width:260px;height:260px;transition:transform .35s,opacity .35s;position:absolute;inset:-35% 42% auto -24%}button.v2ray-card:before{background:#6379ff}button.clash-card:before{background:#00dcb1}button.product-card:hover{border-color:#aec0ffc7;transform:translateY(-9px)scale(1.012);box-shadow:inset 0 1px #ffffff24,0 34px 76px #21379152}button.product-card:hover:before{opacity:.94;transform:translate(36px,24px)scale(1.18)}.card-icon,.card-copy,.card-arrow{z-index:1;position:relative}.card-icon{color:#dbe3ff;background:#ffffff14;border:1px solid #e1e9ff38;border-radius:18px;place-items:center;width:60px;height:60px;transition:transform .28s;display:grid}button.product-card:hover .card-icon{transform:rotate(-8deg)scale(1.08)}.card-copy{align-content:center;gap:5px;display:grid}.card-copy strong{letter-spacing:-.03em;font-size:1.55rem}.card-copy small{color:#aebbe3;letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;font-weight:700}.card-copy em{color:#d0d8f7;margin-top:9px;font-size:.94rem;font-style:normal}.card-arrow{color:#c6d1ff;align-self:center;transition:transform .28s}button.product-card:hover .card-arrow{transform:translate(7px)}.placeholder-page{text-align:center;align-content:center;overflow:hidden}.placeholder-page>:not(.placeholder-orbit){z-index:1;position:relative}.placeholder-icon{color:#8cf0d5;filter:drop-shadow(0 0 24px #4af0cca3);margin-bottom:26px}.placeholder-page h1{letter-spacing:-.05em;font-size:clamp(2.5rem,6vw,4.5rem)}.placeholder-orbit{aspect-ratio:1;border:1px solid #7de7d033;border-radius:50%;width:min(76vw,720px);animation:5s ease-in-out infinite orbit-pulse;position:absolute}.orbit-two{border-color:#8294ff3d;width:min(50vw,460px);animation-delay:-2.5s}@keyframes orbit-pulse{50%{opacity:.35;transform:scale(1.08)}}.toolbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin-top:20px;display:grid}.toolbar-group{flex-wrap:wrap;gap:12px;display:flex}.toolbar-left{justify-content:flex-start}.toolbar-center{justify-content:center}.toolbar-right{justify-content:flex-end}.file-input{display:none}.toast{z-index:20;text-align:center;color:#c8ffed;background:#0d4145eb;border:1px solid #83efd36b;border-radius:999px;min-width:min(420px,100vw - 32px);max-width:calc(100vw - 32px);padding:12px 18px;animation:.22s ease-out toast-slide-in;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #02061761}.toast.error{color:#ffd1d0;background:#5e1e2ef0;border-color:#ff979485}@keyframes toast-slide-in{0%{opacity:0;transform:translate(-50%,-18px)}to{opacity:1;transform:translate(-50%)}}.list-panel{flex:1;grid-template-rows:auto minmax(0,1fr);min-height:0;margin-top:16px;display:grid;overflow:hidden}.list-title{justify-content:space-between;align-items:center;gap:16px;padding:2px 2px 12px;display:flex}.list-title h2{color:#f1f4ff;font-size:1.375rem;font-weight:700}.list-body{min-height:0;overflow:auto}.empty-state{color:#9caad0;place-items:center;min-height:100%;font-size:1.125rem;display:grid}.protocol{color:#9af4da;background:#259d8b2e;border-radius:999px;justify-content:center;align-items:center;padding:5px 9px;font-size:.84rem;font-weight:800;display:inline-flex}.node-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-auto-rows:min-content;align-content:start;gap:12px;height:100%;padding:2px;display:grid;overflow:auto}.status-pill,.warning-pill{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;padding:4px 9px;font-size:.82rem;font-weight:700;display:inline-flex;overflow:hidden}.status-pill{color:#a8f7df;background:#19897533}.warning-pill{color:#ffd69b;background:#9d611d38}.node-card{background:linear-gradient(145deg,#1d244ed1,#0c1027e0);border:1px solid #9badff40;border-radius:20px;align-self:start;gap:12px;padding:18px;transition:transform .28s cubic-bezier(.2,.8,.2,1),border-color .28s,box-shadow .28s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 16px 36px #0003}.node-card:before{content:"";filter:blur(20px);opacity:.22;background:#6379ff;border-radius:50%;width:180px;height:180px;transition:transform .35s,opacity .35s;position:absolute;inset:-70% auto auto -24%}.node-card>*{z-index:1;position:relative}.node-card:hover{border-color:#aec0ffb8;transform:translateY(-5px);box-shadow:inset 0 1px #ffffff24,0 24px 52px #21379147}.node-card:hover:before{opacity:.52;transform:translate(28px,20px)scale(1.18)}.node-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.node-title{gap:6px;display:grid}.node-title span{color:#98a7ce;font-size:.82rem;font-weight:700}.node-title strong{color:#edf2ff;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:1rem;font-weight:800;overflow:hidden}.node-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.compact-button{white-space:nowrap;min-width:76px;min-height:34px;padding:0 12px}.icon-button{color:#a8f7df;width:40px;min-width:40px;min-height:34px;padding:0}.icon-button.danger{color:#ffaaa9}.warning{color:#ffd69b;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:.9rem;overflow:hidden}.dialog-frame{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020514b3;border:0;place-items:center;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:20px;display:grid;position:fixed;inset:0}.dialog{color:#eef2ff;background:linear-gradient(150deg,#202a5a,#0d1330);border:1px solid #95a8ff52;border-radius:18px;gap:16px;width:min(560px,100%);padding:20px;display:grid;box-shadow:0 24px 80px #0104149e}.dialog h2{margin:0;font-size:1.25rem}.dialog-actions{justify-content:flex-end;gap:12px;display:flex}@media (width<=680px){.page-shell{padding:16px}.workspace{height:calc(100vh - 32px);min-height:calc(100vh - 32px)}.landing,.placeholder-page{min-height:calc(100vh - 32px)}.landing h1{font-size:clamp(2.8rem,15vw,4.2rem)}.product-cards{grid-template-columns:1fr;margin-top:36px}button.product-card{min-height:162px;padding:22px}.toolbar{grid-template-columns:1fr;display:grid}.toolbar-group,.dialog-actions{justify-content:stretch;display:grid}.dialog-actions{display:grid}.toolbar-group button,.dialog-actions button{width:100%}}
