:root { --bg:#07110f; --side:#081713; --panel:#0d1d19; --panel2:#10241e; --line:rgba(153,218,196,.13); --text:#edf8f4; --muted:#82978f; --green:#39e79c; --cyan:#55d8fa; --purple:#a98cff; --red:#ff766d; --radius:16px; }
* { box-sizing:border-box; }
body { margin:0; color:var(--text); background:#07110f; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif; -webkit-font-smoothing:antialiased; }
body::before { content:""; position:fixed; inset:0; z-index:-1; background:radial-gradient(circle at 70% 0,rgba(39,208,151,.07),transparent 34%),linear-gradient(rgba(68,206,163,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(68,206,163,.025) 1px,transparent 1px); background-size:auto,45px 45px,45px 45px; }
a { color:inherit; text-decoration:none; } img { display:block; max-width:100%; } button,input,textarea,select { font:inherit; }
.admin-sidebar { position:fixed; inset:0 auto 0 0; z-index:20; width:248px; padding:25px 18px; display:flex; flex-direction:column; border-right:1px solid var(--line); background:rgba(7,22,18,.95); backdrop-filter:blur(20px); }
.admin-brand { padding:0 8px 27px; display:flex; align-items:center; gap:11px; border-bottom:1px solid var(--line); }.admin-brand>span { width:37px; height:37px; overflow:hidden; border-radius:10px; box-shadow:0 0 22px rgba(57,231,156,.15); }.admin-brand>span img { width:100%; height:100%; object-fit:cover; }.admin-brand strong,.admin-brand small { display:block; }.admin-brand strong { font-size:16px; }.admin-brand small { color:#6e867d; font-size:10px; letter-spacing:.08em; }
.admin-sidebar nav { margin-top:25px; display:grid; gap:6px; }.admin-sidebar nav a { padding:11px 13px; display:flex; align-items:center; gap:11px; color:#849a91; border:1px solid transparent; border-radius:10px; font-size:13px; font-weight:650; transition:.2s ease; }.admin-sidebar nav a i { width:22px; color:#678078; font-style:normal; text-align:center; }.admin-sidebar nav a:hover { color:#dbeae4; background:rgba(57,231,156,.04); }.admin-sidebar nav a.active { color:#dffbef; border-color:rgba(57,231,156,.16); background:rgba(57,231,156,.09); }.admin-sidebar nav a.active i { color:var(--green); }
.sidebar-footer { margin-top:auto; padding:17px 8px 0; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); }.sidebar-footer>a { color:#667e75; font-size:11px; }.sidebar-footer>a:hover { color:var(--red); }.admin-user { display:flex; align-items:center; gap:9px; }.admin-user>span { width:31px; height:31px; display:grid; place-items:center; color:#092017; border-radius:9px; background:var(--green); font-size:12px; font-weight:900; }.admin-user strong,.admin-user small { display:block; }.admin-user strong { font-size:11px; }.admin-user small { color:#657c73; font-size:9px; }
.admin-shell { min-height:100vh; margin-left:248px; }.admin-topbar { height:86px; padding:0 38px; display:flex; align-items:center; border-bottom:1px solid var(--line); background:rgba(7,18,15,.65); backdrop-filter:blur(16px); }.admin-topbar h1 { margin:0; font-size:19px; }.admin-topbar p { margin:2px 0 0; color:#657d74; font-size:10px; }.system-status { margin-left:auto; display:flex; align-items:center; gap:7px; color:#6e887e; font-size:10px; }.system-status i { width:6px; height:6px; border-radius:50%; background:var(--green); box-shadow:0 0 9px var(--green); }.sidebar-toggle { display:none; margin-right:12px; color:#fff; border:1px solid var(--line); border-radius:8px; background:var(--panel); }
.admin-main { width:min(100% - 56px,1120px); margin:0 auto; padding:34px 0 70px; }.admin-alert { position:relative; margin-bottom:20px; padding:13px 45px 13px 15px; border:1px solid var(--line); border-radius:10px; font-size:12px; }.admin-alert.success { color:#aff1d4; border-color:rgba(57,231,156,.24); background:rgba(57,231,156,.08); }.admin-alert.error { color:#ffc2bd; border-color:rgba(255,118,109,.24); background:rgba(255,118,109,.08); }.admin-alert button { position:absolute; right:12px; top:8px; color:inherit; border:0; background:none; font-size:20px; cursor:pointer; }
.admin-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:22px; }.admin-stats article { position:relative; padding:20px; display:flex; align-items:center; gap:13px; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius); background:rgba(13,29,25,.84); }.admin-stats article>b { position:absolute; right:14px; bottom:-4px; color:rgba(189,225,213,.06); font:900 32px ui-monospace,monospace; }.stat-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:11px; font-weight:800; }.stat-icon.green { color:var(--green); background:rgba(57,231,156,.09); }.stat-icon.cyan { color:var(--cyan); background:rgba(85,216,250,.09); }.stat-icon.purple { color:var(--purple); background:rgba(169,140,255,.09); }.admin-stats small,.admin-stats strong { display:block; }.admin-stats small { color:#6e857c; font-size:10px; }.admin-stats strong { margin-top:2px; font-size:16px; }
.admin-panel { margin-bottom:22px; border:1px solid var(--line); border-radius:var(--radius); background:rgba(12,28,24,.88); box-shadow:0 20px 55px rgba(0,0,0,.13); }.panel-head { min-height:79px; padding:18px 24px; display:flex; align-items:center; justify-content:space-between; gap:18px; border-bottom:1px solid var(--line); }.panel-head h2 { margin:0; font-size:15px; }.panel-head p { margin:3px 0 0; color:#698178; font-size:10px; }.panel-tag { padding:4px 7px; color:var(--green); border:1px solid rgba(57,231,156,.17); border-radius:5px; background:rgba(57,231,156,.06); font:800 8px ui-monospace,monospace; letter-spacing:.08em; }.panel-tag.danger { color:var(--red); border-color:rgba(255,118,109,.17); background:rgba(255,118,109,.06); }
.admin-form { padding:25px; }.admin-form label { display:block; margin-bottom:19px; }.admin-form label>span { display:block; margin-bottom:7px; color:#acbdb7; font-size:11px; font-weight:650; }.admin-form label>span b { color:var(--green); }.admin-form input:not([type=checkbox]):not([type=file]),.admin-form textarea,.admin-form select { width:100%; padding:11px 13px; color:#e8f5f0; border:1px solid rgba(146,216,193,.14); outline:0; border-radius:9px; background:#091713; transition:.2s ease; }.admin-form input:focus,.admin-form textarea:focus { border-color:rgba(57,231,156,.55)!important; box-shadow:0 0 0 3px rgba(57,231,156,.06); }.admin-form textarea { resize:vertical; }.admin-form label>small { display:block; margin-top:6px; color:#60776e; font-size:9px; }.form-grid { display:grid; gap:17px; }.form-grid.two { grid-template-columns:repeat(2,1fr); }.form-actions { padding-top:5px; display:flex; justify-content:flex-end; }
.admin-button { min-height:38px; padding:0 16px; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:8px; cursor:pointer; font-size:11px; font-weight:750; transition:.2s ease; }.admin-button.primary { color:#072218; background:var(--green); }.admin-button.primary:hover { transform:translateY(-1px); background:#67efb5; }.admin-button.secondary { color:#a9bcb5; border-color:var(--line); background:#0b1916; }.admin-button.secondary:hover { color:#fff; border-color:rgba(57,231,156,.3); }
.media-upload-grid { display:grid; grid-template-columns:1fr 1.5fr; gap:17px; }.media-field { padding:18px; display:grid; grid-template-columns:95px 1fr; gap:17px; border:1px solid var(--line); border-radius:12px; background:#091813; }.hero-media-field { grid-template-columns:190px 1fr; }.media-preview { overflow:hidden; border:1px solid rgba(134,213,186,.18); border-radius:11px; background:#050e0c; }.media-preview img { width:100%; height:100%; object-fit:cover; }.logo-preview { width:95px; height:95px; }.hero-preview { width:190px; height:110px; }.media-field h3 { margin:1px 0 5px; font-size:13px; }.media-field p { margin:0 0 11px; color:#647c73; font-size:9px; line-height:1.55; }.file-picker { display:inline-block!important; margin:0!important; }.file-picker input { position:absolute; width:1px; height:1px; opacity:0; }.file-picker span { margin:0!important; padding:7px 10px; color:#b8cbc4!important; border:1px solid rgba(150,217,195,.16); border-radius:7px; background:#10241e; cursor:pointer; font-size:9px!important; }.check-label { margin:10px 0 0!important; display:flex!important; align-items:center; gap:6px; color:#688078; font-size:9px; }.check-label input { accent-color:var(--green); }
.document-drop { min-height:150px; margin-top:4px!important; display:flex!important; flex-direction:column; align-items:center; justify-content:center; text-align:center; border:1px dashed rgba(75,222,173,.26); border-radius:12px; background:rgba(57,231,156,.025); cursor:pointer; }.document-drop:hover { border-color:var(--green); background:rgba(57,231,156,.045); }.document-drop input { position:absolute; width:1px; height:1px; opacity:0; }.document-drop strong { font-size:12px; }.document-drop small { color:#637a72; font-size:9px; }.drop-icon { margin-bottom:8px!important; color:var(--green)!important; font-size:26px!important; }
.document-table-wrap { overflow-x:auto; }.document-table { width:100%; border-collapse:collapse; white-space:nowrap; }.document-table th,.document-table td { padding:15px 18px; text-align:left; border-bottom:1px solid var(--line); font-size:10px; }.document-table th { color:#617970; font-size:8px; text-transform:uppercase; letter-spacing:.08em; }.document-table tbody tr:last-child td { border-bottom:0; }.document-table td { color:#7e948b; }.table-title { display:flex; align-items:center; gap:11px; max-width:390px; white-space:normal; }.table-title strong,.table-title small { display:block; }.table-title strong { color:#d9e8e2; font-size:11px; }.table-title small { margin-top:3px; overflow:hidden; color:#60766e; font-size:8px; text-overflow:ellipsis; white-space:nowrap; }.file-badge { flex:0 0 auto; width:37px; height:37px; display:grid; place-items:center; color:var(--green); border-radius:9px; background:rgba(57,231,156,.08); font:800 8px ui-monospace,monospace; }.file-badge.pdf { color:#ff8b81; background:rgba(255,118,109,.08); }.table-actions { display:flex; align-items:center; gap:6px; }.table-actions a,.table-actions button { width:28px; height:28px; display:grid; place-items:center; color:#718980; border:1px solid var(--line); border-radius:6px; background:#0a1814; cursor:pointer; }.table-actions button:hover { color:var(--red); border-color:rgba(255,118,109,.28); }.table-actions form { display:inline; }.admin-empty { padding:60px 20px; color:#657d74; text-align:center; font-size:12px; }

.login-page { min-height:100vh; display:grid; place-items:center; overflow:hidden; background:#050d0b; }.login-page::before { opacity:.7; }.login-ambient { position:fixed; border-radius:50%; filter:blur(10px); }.login-ambient.one { width:450px; height:450px; left:-200px; top:-180px; background:radial-gradient(circle,rgba(57,231,156,.13),transparent 70%); }.login-ambient.two { width:500px; height:500px; right:-180px; bottom:-250px; background:radial-gradient(circle,rgba(61,172,240,.09),transparent 70%); }.login-card { position:relative; z-index:1; width:min(calc(100% - 30px),420px); padding:38px; border:1px solid rgba(121,216,184,.16); border-radius:20px; background:rgba(10,26,21,.9); box-shadow:0 35px 100px rgba(0,0,0,.38); backdrop-filter:blur(18px); }.login-brand { display:flex; align-items:center; gap:10px; }.login-brand span { width:35px; height:35px; overflow:hidden; border-radius:9px; }.login-brand span img { width:100%; height:100%; object-fit:cover; }.login-heading { margin:45px 0 28px; }.login-heading p { margin:0 0 9px; color:var(--green); font:800 9px ui-monospace,monospace; letter-spacing:.16em; }.login-heading h1 { margin:0 0 6px; font-size:34px; letter-spacing:-.04em; }.login-heading>span { color:#748a82; font-size:11px; }.login-error { margin-bottom:15px; padding:10px 12px; color:#ffc0ba; border:1px solid rgba(255,118,109,.2); border-radius:8px; background:rgba(255,118,109,.07); font-size:10px; }.login-form label { display:block; margin-bottom:16px; }.login-form label>span { display:block; margin-bottom:7px; color:#9dafaa; font-size:10px; }.login-form input { width:100%; height:45px; padding:0 13px; color:#fff; border:1px solid var(--line); outline:0; border-radius:9px; background:#071511; }.login-form input:focus { border-color:rgba(57,231,156,.55); box-shadow:0 0 0 3px rgba(57,231,156,.06); }.login-form button { width:100%; height:47px; margin-top:6px; padding:0 16px; display:flex; align-items:center; justify-content:space-between; color:#062118; border:0; border-radius:9px; background:var(--green); cursor:pointer; font-weight:800; }.login-form button:hover { background:#65efb4; }.login-back { display:block; margin-top:22px; color:#657d74; text-align:center; font-size:10px; }.login-back:hover { color:var(--green); }

@media(max-width:950px){.media-upload-grid{grid-template-columns:1fr}.admin-stats{grid-template-columns:1fr}.admin-sidebar{transform:translateX(-100%);transition:.22s ease}.admin-sidebar.open{transform:none;box-shadow:30px 0 80px rgba(0,0,0,.42)}.admin-shell{margin-left:0}.sidebar-toggle{display:block}.admin-topbar{padding:0 22px}.admin-main{width:min(100% - 30px,1120px)}}
@media(max-width:680px){.form-grid.two{grid-template-columns:1fr}.media-field,.hero-media-field{grid-template-columns:1fr}.hero-preview{width:100%;height:180px}.panel-head{align-items:flex-start;flex-direction:column}.admin-form{padding:18px}.admin-topbar{height:76px}.system-status{display:none}.login-card{padding:28px}.document-table th,.document-table td{padding:12px}}

