*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Microsoft Yahei,sans-serif;background:#f5f6f8;color:#1b2a4a}.loading-screen,.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:#fff;padding:40px;border-radius:12px;box-shadow:0 8px 30px #00000014;width:320px;display:flex;flex-direction:column;gap:16px}.login-card h1{font-size:18px;margin:0 0 8px;text-align:center}.login-card label{display:flex;flex-direction:column;gap:6px;font-size:14px}.login-card input,.editor-form input,.editor-form select,.editor-form textarea{padding:8px 10px;border:1px solid #d8dce3;border-radius:6px;font-size:14px;font-family:inherit}.login-card button,.btn-primary{background:#1e6fd9;color:#fff;border:none;border-radius:6px;padding:10px 16px;font-size:14px;cursor:pointer;text-decoration:none;display:inline-block;text-align:center}.login-card button:disabled{opacity:.6;cursor:default}.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;background:#1b2a4a;color:#fff;display:flex;flex-direction:column;padding:24px 16px}.sidebar-title{font-size:18px;font-weight:700;margin-bottom:24px}.sidebar-nav{display:flex;flex-direction:column;gap:8px;flex:1}.sidebar-nav a{color:#cdd6e8;text-decoration:none;padding:10px 12px;border-radius:6px}.sidebar-nav a.active,.sidebar-nav a:hover{background:#ffffff1a;color:#fff}.sidebar-footer{display:flex;flex-direction:column;gap:8px;font-size:13px;border-top:1px solid rgba(255,255,255,.15);padding-top:16px}.sidebar-user{color:#cdd6e8}.btn-link{background:none;border:none;color:#8fb4e8;cursor:pointer;padding:0;font-size:13px;text-align:left}.btn-link.danger{color:#c0392b}.main-content{flex:1;padding:32px 40px;max-width:960px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-header h1{font-size:22px;margin:0}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{padding:6px 16px;border-radius:999px;border:1px solid #d8dce3;background:#fff;cursor:pointer;font-size:13px}.tabs button.active{background:#1e6fd9;color:#fff;border-color:#1e6fd9}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eef0f3;font-size:14px}.table-actions{display:flex;gap:12px}.empty-row{text-align:center;color:#8a93a6}.panel{background:#fff;padding:24px;border-radius:8px;max-width:720px;margin-bottom:24px}.panel h2{font-size:16px;margin:0 0 16px}.panel h3{font-size:14px;margin:24px 0 12px;color:#4a5468}.panel .editor-form{padding:0;max-width:none}.badge-me{color:#8a93a6;font-size:12px;margin-left:6px}.editor-form{display:flex;flex-direction:column;gap:16px;background:#fff;padding:24px;border-radius:8px;max-width:720px}.editor-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#4a5468}.checkbox-label{flex-direction:row!important;align-items:center;gap:8px!important}.form-row{display:flex;gap:16px}.form-row label{flex:1}.image-preview{max-width:240px;border-radius:6px;border:1px solid #eef0f3}.form-error{color:#c0392b;font-size:13px}.form-actions{display:flex;justify-content:flex-end}.char-counter{align-self:flex-end;font-size:12px;color:#8a93a6}.rich-text-editor{border:1px solid #d8dce3;border-radius:6px;overflow:hidden}.rich-text-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px;background:#f7f8fa;border-bottom:1px solid #d8dce3}.rich-text-toolbar button{padding:5px 10px;border:1px solid transparent;border-radius:4px;background:transparent;font-size:13px;color:#333;cursor:pointer}.rich-text-toolbar button:hover{background:#eef0f3}.rich-text-toolbar button.active{background:#e3ecfd;border-color:#b9cdfb;color:#2054c9}.rich-text-toolbar button:disabled{opacity:.6;cursor:default}.toolbar-divider{width:1px;height:20px;background:#d8dce3;margin:0 4px}.rich-text-content{padding:12px 14px;min-height:320px;font-size:14px;line-height:1.7}.rich-text-content:focus{outline:none}.rich-text-content p{margin:0 0 12px}.rich-text-content h2{font-size:20px;margin:20px 0 10px}.rich-text-content h3{font-size:17px;margin:18px 0 8px}.rich-text-content ul,.rich-text-content ol{padding-left:24px;margin:0 0 12px}.rich-text-content blockquote{margin:0 0 12px;padding-left:12px;border-left:3px solid #d8dce3;color:#4a5468}.rich-text-content pre{background:#1f2430;color:#eee;padding:12px;border-radius:6px;overflow-x:auto;margin:0 0 12px}.rich-text-content img{max-width:100%;border-radius:6px;margin:8px 0}.rich-text-content a{color:#2054c9}
