:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#24283f;background:#f5f6fa;font-synthesis:none;--accent:#7555db;--border:#eaebf1;--muted:#898da0}*{box-sizing:border-box}body{margin:0;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid #dedfe8;background:white;color:#45485e;border-radius:7px;padding:10px 16px}button:hover{border-color:var(--accent);color:var(--accent)}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:28px;letter-spacing:-.6px}h2{font-size:21px}h3{font-size:16px}p{line-height:1.8}small,.muted{color:var(--muted)}[hidden]{display:none!important}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.primary:hover{background:#6342c8;color:white}.eyebrow{font-size:11px;letter-spacing:2px;color:#9990b8}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-story{background:#171b32;color:white;padding:10vh 10%;position:relative;overflow:hidden}.login-story h1{font-size:46px;line-height:1.4;margin-top:55px}.login-story p{color:#aaacc9}.login-story small{position:absolute;bottom:40px}.orbit{margin:55px auto 0;width:230px;height:230px;border:1px solid #71619f;border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 40px #ffffff03,0 0 0 80px #ffffff03;transform:rotate(-12deg)}.orbit span{font-size:85px;font-weight:800;color:#ddccff;text-shadow:8px 8px #7655d3}.login-panel{display:grid;place-items:center;background:#fff;padding:35px}.login-panel form{width:min(100%,360px)}.login-panel h2{font-size:30px;margin:18px 0 10px}.login-panel p{color:var(--muted)}label{display:block;font-size:13px;margin-bottom:20px;color:#575b70}input,select,textarea{display:block;width:100%;border:1px solid #dfe1eb;border-radius:7px;padding:12px;margin-top:9px;background:#fff;color:#24283f}textarea{min-height:95px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #dcd1ff;border-color:var(--accent)}.login-panel .primary{width:100%;padding:14px}.login-panel small{display:block;text-align:center;margin-top:26px;line-height:1.9;font-size:11px}#login-error,#edit-error{color:#ba4260;font-size:13px;min-height:20px}aside{width:224px;position:fixed;inset:0 auto 0 0;background:#171b32;color:#a5a9c0;padding:32px 19px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;color:white;font-size:19px;font-weight:700;margin:0 10px 46px}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:6px;font-weight:400}.brand-mark{display:grid;place-items:center;background:#8865e6;width:38px;height:40px;border-radius:12px;font-size:23px}.nav-label{font-size:10px;letter-spacing:2px;padding:0 16px;margin-bottom:13px}nav a{display:flex;gap:13px;padding:13px 16px;margin-bottom:7px;border-radius:8px;font-size:13px}nav a.active{color:#fff;background:#7555db}nav a:hover{background:#ffffff12}nav a.active:hover{background:#7555db}.nav-icon{width:19px;text-align:center}.sidebar-bottom{margin-top:auto;font-size:11px;padding:20px 12px 0;border-top:1px solid #ffffff12}.sidebar-bottom small{display:block;margin:10px 14px;font-size:10px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#8cdaa6;margin-right:5px}.main{margin-left:224px}.topbar{background:#fff;min-height:76px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 36px;font-size:12px}.topbar>div{display:flex;align-items:center;gap:15px}.topbar a{color:#74788c}.avatar{border-radius:50%;background:#f0eafe;color:#7555db;padding:8px;font-size:12px;margin-left:12px}.text-button{border:0;background:none;padding:5px;font-size:12px;color:#85899a}main{padding:34px 36px;min-height:calc(100vh - 128px);max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.page-heading h1{margin-bottom:8px}.page-heading p{font-size:12px;color:var(--muted);margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.notice{padding:14px 18px;border:1px solid #e3dbf8;background:#f2edff;color:#786397;border-radius:8px;font-size:12px;line-height:1.7;margin-bottom:25px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:26px}.stat,.panel{background:#fff;border:1px solid var(--border);border-radius:10px}.stat{padding:23px}.stat .label{color:#797e91;font-size:12px}.stat strong{font-size:34px;display:block;margin:15px 0 10px;font-weight:650}.stat small{font-size:11px}.stat-icon{float:right;color:#8e70df;background:#f4efff;padding:8px;border-radius:8px}.panel{padding:24px;margin-bottom:23px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.panel-title h3{margin:0}.panel-title small{font-size:11px}.dashboard-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}.bar-row{display:grid;grid-template-columns:85px 1fr 30px;align-items:center;gap:15px;margin:22px 0;font-size:12px}.bar-track{height:9px;background:#f4f1fa;border-radius:10px;overflow:hidden}.bar-fill{height:100%;background:#9578e0;border-radius:10px}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quick-links a{padding:20px 15px;background:#faf9fd;border:1px solid #eeebf6;border-radius:8px}.quick-links b{display:block;margin-bottom:8px;font-size:13px}.quick-links small{font-size:11px}.toolbar{display:flex;gap:12px;margin-bottom:24px;align-items:center}.toolbar input{max-width:330px;margin:0}.toolbar select{max-width:180px;margin:0}.toolbar small{margin-left:auto;white-space:nowrap}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:12px}th{font-size:11px;font-weight:500;color:#9296a6;background:#f8f9fc;padding:14px 12px}td{padding:16px 12px;border-bottom:1px solid #f0f1f5}td:first-child{color:#999eac}td button{padding:5px 8px;border:0;font-size:12px;color:#7555db;background:transparent}.danger{color:#c5596d!important}.person{display:flex;gap:12px;align-items:center}.person img{width:38px;height:42px;object-fit:cover;border-radius:7px;background:#eee}.person small{display:block;margin-top:6px}.badge{font-size:10px;padding:5px 9px;border-radius:5px;color:#318f67;background:#eaf7f0}.badge.off{color:#9497a5;background:#f0f1f4}.pagination{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#9093a4;margin-top:22px}.pagination button{padding:7px 11px;margin-left:8px}.empty{text-align:center;padding:50px;color:#979baa}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.wide{grid-column:1/-1}footer{padding:18px 36px;color:#a0a3b2;font-size:10px;border-top:1px solid var(--border)}footer span{float:right}dialog{border:0;border-radius:14px;padding:28px;width:min(610px,calc(100% - 28px));max-height:90vh;box-shadow:0 30px 90px #171b3240}dialog::backdrop{background:#171b3280;backdrop-filter:blur(3px)}dialog header{display:flex;justify-content:space-between;margin-bottom:22px}dialog h2{margin:10px 0 0}.icon-button{font-size:25px;padding:0 8px;border:0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--border);padding-top:20px}.checkbox{display:flex;align-items:center;gap:10px}.checkbox input{width:auto;margin:0}.log{padding:15px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:20px;font-size:12px}.backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.backup-grid p{font-size:12px;color:#85899b;min-height:44px}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#252b44;color:#fff;padding:14px 24px;border-radius:8px;box-shadow:0 10px 40px #0002;z-index:10;max-width:90vw;font-size:13px}@media(min-width:1500px){main{padding-top:45px}}@media(max-width:1050px){aside{width:190px;padding:28px 12px}.main{margin-left:190px}main{padding:25px 22px}.topbar{padding:0 22px}.stats{gap:10px}.stat{padding:17px}.dashboard-grid{grid-template-columns:1fr}.topbar>div{gap:8px}}@media(max-width:700px){.login{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh}aside{position:static;width:100%;padding:18px}.brand{margin:0 0 18px;font-size:17px}.nav-label,.sidebar-bottom{display:none}nav{display:flex;overflow:auto;gap:6px}nav a{white-space:nowrap;padding:9px 11px;margin:0}.nav-icon{display:none}.main{margin:0}.topbar{min-height:60px;padding:12px 18px}.topbar>span,.avatar{display:none}.topbar>div{width:100%;justify-content:space-between}main{padding:24px 16px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:24px}.stats{grid-template-columns:1fr 1fr}.stat strong{font-size:28px}.panel{padding:18px}.form-grid,.backup-grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.toolbar input{max-width:none}.toolbar select{max-width:150px}.toolbar small{font-size:10px}footer{padding:18px}footer span{display:none}.log{flex-direction:column;gap:8px}}
.page-heading .eyebrow{display:block;margin-bottom:12px}.page-heading .actions button{font-size:12px}.current-qr{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 40px;background:linear-gradient(110deg,#fff,#f8f5ff)}.current-qr h2{font-size:24px;margin-top:15px;margin-bottom:12px}.current-qr p{font-size:13px;color:#838497}.current-qr>img{width:138px;height:138px;object-fit:contain;background:white;padding:8px;border:1px solid #eae6f3;border-radius:10px;image-rendering:auto}.qr-placeholder{font-size:90px;color:#b7a9db;padding:0 30px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:30px 0 20px}.section-title h3{margin:0}.section-title small{font-size:11px;padding-left:10px;font-weight:400}.section-title>span{font-size:11px;color:#999cac}.qr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.qr-card{padding:22px;margin:0}.qr-image{background:#f8f9fc;border:1px solid #f0f0f6;display:flex;justify-content:center;align-items:center;padding:25px;border-radius:8px;aspect-ratio:1.4}.qr-image img{width:100%;height:100%;max-height:180px;object-fit:contain}.qr-card-heading{display:flex;align-items:center;justify-content:space-between;margin:20px 0;gap:10px}.qr-card h3{margin:0;font-size:14px;overflow-wrap:anywhere}.qr-actions{display:flex;border-top:1px solid #f0f0f5;padding-top:14px;gap:5px;justify-content:space-between}.qr-actions button{font-size:11px;padding:6px;border:0;color:#8062bc}.qr-actions button:disabled{color:#a8a5b3}.post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.post-card{border:1px solid #ececf3;border-radius:10px;padding:20px;background:white;overflow:hidden}.post-card header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.post-avatar{width:42px;height:42px;object-fit:cover;border-radius:50%;flex-shrink:0}.post-card header>div{min-width:0;flex:1}.post-card header b{font-size:13px;overflow-wrap:anywhere}.post-card header small{display:block;font-size:10px;margin-top:7px}.post-text{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.post-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.post-images img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}.post-images[data-count="1"]{grid-template-columns:1fr;max-width:240px}.post-images[data-count="1"] img{aspect-ratio:auto;max-height:280px;object-fit:contain}.post-images[data-count="2"]{grid-template-columns:1fr 1fr}.post-card footer{display:flex;padding:15px 0 0;margin-top:18px;gap:10px}.post-card footer button{font-size:11px;border:0;padding:5px;color:#7f62bc}.post-card footer button:last-child{margin-left:auto}.upload-box{background:#faf9fe;border:1px dashed #d4c9ec;border-radius:8px;padding:18px}.upload-box input,.avatar-field input{font-size:11px;padding:9px;background:white}.upload-box small,.avatar-field small{display:block;font-size:10px;line-height:1.8;margin-top:7px}.upload-preview{min-height:100px;text-align:center;color:#a8a4b7;margin:15px 0 25px}.upload-preview img{width:190px;height:190px;object-fit:contain}.post-editor{width:min(980px,calc(100% - 28px))}.post-editor-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:28px}.avatar-field{display:flex;gap:18px;align-items:center;margin-bottom:20px}.avatar-field>img{width:62px;height:62px;object-fit:cover;border-radius:50%}.avatar-field label{flex:1;margin:0}.live-preview{padding:20px;background:#f6f6fa;border-radius:10px;align-self:start}.live-preview .eyebrow{display:block;margin-bottom:20px}.live-preview .post-card{padding:15px}.image-editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px}.image-editor-grid>div{border:1px solid #e9e5f1;border-radius:6px;overflow:hidden}.image-editor-grid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.image-editor-grid>div>div{display:flex;justify-content:space-between;background:#faf9fc}.image-editor-grid button{font-size:12px;border:0;background:none;padding:4px 8px}.image-editor-grid button:last-child{color:#bd576c}.post-editor textarea{min-height:130px}.post-editor .form-grid{gap:0 14px}.post-editor .form-grid label{min-width:0}.post-editor .checkbox{align-self:center;margin-top:20px}@media(min-width:1600px){.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1100px){.qr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:flex-start;flex-direction:column}.post-grid{grid-template-columns:1fr}}@media(max-width:700px){.qr-grid{grid-template-columns:1fr}.current-qr{padding:22px;gap:16px;align-items:flex-start}.current-qr h2{font-size:18px}.current-qr p{font-size:11px}.current-qr>img{width:90px;height:90px;margin-top:18px}.current-qr .badge{display:inline-block;font-size:9px}.post-editor-layout{grid-template-columns:1fr}.live-preview{display:none}.page-heading .actions{gap:7px}.page-heading .actions button{font-size:11px;padding:9px 10px}.section-title>span{font-size:10px}.qr-image{aspect-ratio:1.7}.post-grid .post-card{padding:14px}.post-editor{padding:20px}.post-editor .form-grid{grid-template-columns:1fr}.post-editor .checkbox{margin-top:0}.qr-card-heading h3{font-size:15px}}

.view-site{display:inline-flex;align-items:center;padding:10px 13px;border:1px solid #dedfe8;border-radius:7px;background:white;font-size:12px}.view-site:hover{border-color:var(--accent);color:var(--accent)}
