:root{--purple:#5e1ad1;--purple2:#7c3aed;--ink:#182033;--muted:#778198;--line:#e7e8ef;--bg:#f5f6fa;--green:#16a768;--red:#d84949}*{box-sizing:border-box}body{margin:0;font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}.login-layer{position:fixed;inset:0;z-index:99;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% 20%,#7c3aed55,transparent 30%),linear-gradient(145deg,#130725,#2e1065)}.login-card{width:min(430px,100%);padding:38px;border-radius:24px;background:#fff;box-shadow:0 30px 80px #09030f88;text-align:center}.logo{width:58px;height:58px;margin:auto;display:grid;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(135deg,#9c6bfa,var(--purple));font-size:27px;font-weight:900;box-shadow:0 12px 30px #5e1ad155}.eyebrow{margin:22px 0 7px;color:var(--purple);font-size:10px;font-weight:900;letter-spacing:.2em}.login-card h1{margin:0;font-size:26px}.login-desc{margin:10px auto 24px;color:var(--muted);font-size:13px;line-height:1.7}.login-card label{text-align:left;display:block}.login-card label span{display:block;margin:0 0 7px;color:#586276;font-size:12px;font-weight:700}.login-card input{width:100%;padding:13px;border:1px solid var(--line);border-radius:11px;outline:none}.login-card input:focus{border-color:#a87fea;box-shadow:0 0 0 4px #7c3aed12}.login-card button{width:100%;margin-top:14px;padding:13px;border:0;border-radius:11px;color:#fff;background:linear-gradient(135deg,var(--purple2),var(--purple));font-weight:800;cursor:pointer}.login-card>a{display:inline-block;margin-top:18px;color:var(--muted);font-size:11px;text-decoration:none}.login-error{min-height:17px;margin:10px 0 0;color:var(--red);font-size:11px}.admin-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.side{position:sticky;top:0;height:100vh;padding:24px 16px;display:flex;flex-direction:column;color:#fff;background:linear-gradient(180deg,#28104f,#10091e)}.side-brand{display:flex;align-items:center;gap:11px;padding:0 8px 26px}.side-brand>b{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#a879ff,var(--purple));font-size:20px;box-shadow:0 10px 28px #7c3aed55}.side-brand strong,.side-brand small{display:block}.side-brand small{margin-top:4px;color:#bbaed0;font-size:10px}.side nav{display:grid;gap:6px}.side nav button,.side nav a{display:flex;align-items:center;gap:11px;width:100%;padding:12px 13px;border:0;border-radius:10px;color:#c9bfd8;background:transparent;text-decoration:none;text-align:left;cursor:pointer}.side nav button:hover,.side nav button.active,.side nav a:hover{color:#fff;background:#ffffff14}.side nav button.active{box-shadow:inset 3px 0 #a978ff}.side nav i{width:21px;font-style:normal;text-align:center}.side-tip{margin-top:auto;padding:15px;border:1px solid #ffffff17;border-radius:13px;background:#ffffff0b}.side-tip span,.side-tip strong,.side-tip em{display:block}.side-tip span{color:#a99bbd;font-size:9px}.side-tip strong{margin:8px 0;color:#d9c5ff;font-size:12px}.side-tip em{margin-top:5px;color:#9e92ae;font-size:10px;font-style:normal}.logout{margin-top:10px;padding:10px;border:1px solid #ffffff17;border-radius:9px;color:#bbaed0;background:transparent;cursor:pointer;font-size:10px}.admin-shell main{min-width:0}.admin-shell header{height:90px;padding:17px 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#ffffffd9;backdrop-filter:blur(12px)}header p{margin:0;color:var(--muted);font-size:10px}header h1{margin:6px 0 0;font-size:21px}.status{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.status>i{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px #16a76818}.status strong,.status small{display:block}.status strong{font-size:10px}.status small{margin-top:3px;color:var(--muted);font-size:9px}.page-section{display:none;padding:23px 30px 50px}.page-section.active{display:block}.hero{min-height:155px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;border-radius:20px;color:#fff;background:radial-gradient(circle at 85% 25%,#a879ff55,transparent 27%),linear-gradient(135deg,#641fd0,#311068);box-shadow:0 18px 40px #4f1b9d25}.hero.compact{min-height:130px}.hero span{color:#d6c1fb;font-size:9px;font-weight:900;letter-spacing:.18em}.hero h2{margin:8px 0;font-size:22px}.hero p{max-width:680px;margin:0;color:#d5cae5;font-size:12px;line-height:1.7}.hero-badge{width:105px;height:105px;display:grid;place-content:center;text-align:center;border:1px solid #ffffff2d;border-radius:50%;background:#ffffff0d}.hero-badge b{font-size:30px}.hero-badge span{margin-top:4px;letter-spacing:0}.new-button{padding:11px 16px;border:1px solid #ffffff33;border-radius:10px;color:#fff;background:#ffffff12;cursor:pointer;font-weight:800}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.panel{padding:19px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 10px 28px #24344b08}.panel.wide,.save-bar.wide{grid-column:1/-1}.primary-panel{border-top:3px solid var(--purple)}.safe-panel{border-top:3px solid var(--green)}.danger-panel{border-top:3px solid var(--red)}.panel-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:13px}.panel-title span{color:var(--purple);font-size:8px;font-weight:900;letter-spacing:.16em}.panel-title h3{margin:4px 0 0;font-size:15px}.panel-title small{color:var(--muted);font-size:9px}.panel textarea,.panel input,.panel select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:9px;outline:none;resize:vertical}.panel textarea:focus,.panel input:focus{border-color:#a679ed;box-shadow:0 0 0 3px #7c3aed10}.field-help{margin:8px 0 0;color:var(--muted);font-size:9px}.range-row{display:flex;align-items:center;gap:18px}.range-row input{padding:0;border:0}.range-row strong{min-width:58px;color:var(--purple)}.save-bar{position:sticky;bottom:15px;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border:1px solid #dcd5e8;border-radius:14px;background:#fffffff2;box-shadow:0 15px 40px #29125122;backdrop-filter:blur(12px)}.save-bar strong,.save-bar span{display:block}.save-bar strong{font-size:12px}.save-bar span{margin-top:4px;color:var(--muted);font-size:9px}.save-bar button,.save-source{padding:11px 18px;border:0;border-radius:9px;color:#fff;background:linear-gradient(135deg,var(--purple2),var(--purple));font-weight:800;cursor:pointer}.source-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px;margin-top:14px}.source-list{display:grid;gap:8px}.source-item{width:100%;display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;text-align:left}.source-item.active{border-color:#a979ef;background:#f6f0ff}.source-item>b{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;color:#fff;background:var(--purple)}.source-item strong,.source-item small{display:block}.source-item strong{font-size:11px}.source-item small{margin-top:4px;color:var(--muted);font-size:9px}.source-item em{margin-left:auto;padding:4px 7px;border-radius:99px;color:var(--green);background:#eaf9f2;font-size:8px;font-style:normal}.source-item em.off{color:#9a5c07;background:#fff3da}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-two .full{grid-column:1/-1}.form-two label>span{display:block;margin-bottom:6px;color:#566075;font-size:10px;font-weight:800}.form-two label>small{display:block;margin-top:5px;color:var(--muted);font-size:9px}.inline-input{display:flex}.inline-input input{border-radius:9px 0 0 9px}.inline-input button{border:0;padding:0 12px;color:#fff;background:var(--purple);border-radius:0 9px 9px 0;cursor:pointer}.toggle{display:flex!important;align-items:center;gap:8px}.toggle input{display:none}.toggle i{position:relative;width:39px;height:22px;border-radius:99px;background:#c7cad2}.toggle i:after{content:"";position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}.toggle input:checked+i{background:var(--purple)}.toggle input:checked+i:after{transform:translateX(17px)}.toggle span{margin:0!important}.connection-preview{margin-top:14px;padding:13px;border-radius:11px;color:#d5c5ec;background:#1e1036}.connection-preview span,.connection-preview code{display:block}.connection-preview span{margin-bottom:7px;color:#a99abf;font-size:9px}.connection-preview code{margin-top:4px;overflow:hidden;text-overflow:ellipsis;font-size:10px}.save-source{width:100%;margin-top:14px}.toast{position:fixed;z-index:120;left:50%;bottom:25px;transform:translate(-50%,25px);padding:11px 16px;border-radius:9px;color:#fff;background:#172033;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.error{background:var(--red)}@media(max-width:950px){.admin-shell{grid-template-columns:80px 1fr}.side-brand div,.side nav button,.side nav a,.side-tip,.logout{font-size:0}.side nav i{font-size:16px}.policy-grid,.source-layout{grid-template-columns:1fr}.source-list-panel{max-height:300px;overflow:auto}}@media(max-width:680px){.admin-shell{display:block}.side{position:static;width:100%;height:auto;padding:12px}.side-brand{padding:0}.side nav,.side-tip,.logout{display:none}.admin-shell header{height:auto;padding:14px}.status{display:none}.page-section{padding:12px}.hero{padding:22px;min-height:0}.hero h2{font-size:18px}.hero-badge{display:none}.policy-grid,.form-two{grid-template-columns:1fr}.panel.wide,.save-bar.wide,.form-two .full{grid-column:auto}.save-bar{position:static;align-items:flex-start;gap:12px}.save-bar span{display:none}}
