.btn{display:inline-flex;align-items:center;gap:10px;font-family:'Inter',sans-serif;font-size:10.5px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;padding:14px 24px;border:3px solid var(--ink);background:transparent;color:var(--ink);transition:all .15s;cursor:pointer;text-decoration:none;line-height:1;}
.btn:hover{background:var(--ink);color:var(--cream);}
.btn.primary{background:var(--bata);color:var(--cream);border-color:var(--bata);}
.btn.primary:hover{background:var(--ink);border-color:var(--ink);}
.btn.danger{color:var(--bata);border-color:var(--bata);}
.btn.danger:hover{background:var(--bata);color:var(--cream);}
.btn.sm{padding:8px 14px;font-size:9.5px;letter-spacing:.18em;border-width:2px;}
.admin-shell{max-width:1300px;margin:0 auto;padding:48px 40px 80px;}
.admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:32px;margin-bottom:48px;border-bottom:4px solid var(--ink);}
.admin-head h1{font-size:clamp(32px,4vw,64px);line-height:.95;letter-spacing:-.04em;font-weight:900;margin-bottom:8px;text-transform:uppercase;}
.admin-head h1 em{color:var(--bata);font-style:italic;}
.admin-head p{font-family:'Lora',serif;font-style:italic;font-size:16px;color:var(--ink-3);}
.admin-head .acts{display:flex;gap:10px;flex-wrap:wrap;}
.admin-grid{display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start;}
.admin-side{position:sticky;top:150px;border-top:3px solid var(--ink);}
.admin-side a{display:block;padding:16px 20px 16px 24px;font-family:'Inter',sans-serif;font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3);border-left:5px solid transparent;border-bottom:1px solid var(--line);transition:all .15s;text-decoration:none;}
.admin-side a:hover{color:var(--ink);background:var(--cream-2);padding-left:28px;}
.admin-side a.on{color:var(--bata);border-left-color:var(--bata);background:var(--cream-2);}
.admin-main{min-width:0;}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));border-top:4px solid var(--ink);border-bottom:4px solid var(--ink);margin-bottom:48px;}
.stat{padding:32px 24px;border-right:1px solid var(--line-2);}
.stat:last-child{border-right:none;}
.stat .n{font-family:'Fraunces',serif;font-size:64px;font-weight:900;line-height:.95;letter-spacing:-.04em;color:var(--ink);margin-bottom:10px;}
.stat .n.copper{color:var(--bata);}
.stat .l{font-family:'Inter',sans-serif;font-size:10px;font-weight:800;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-3);}
.badge{display:inline-block;font-family:'Inter',sans-serif;font-size:9.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;padding:6px 14px;line-height:1;}
.badge.draft{background:var(--cream-3);color:var(--ink-3);}
.badge.pending{background:#E8C77B;color:var(--ink);}
.badge.published{background:#3F6B3F;color:var(--cream);}
.badge.admin{background:var(--bata);color:var(--cream);}
.badge.editor{background:#E8C77B;color:var(--ink);}
.badge.kontributor{background:var(--ink);color:var(--cream);}
.badge.pembaca{background:var(--cream-3);color:var(--ink-3);}
.table-wrap{overflow-x:auto;border:3px solid var(--ink);background:var(--cream);}
.data-table{width:100%;border-collapse:collapse;font-family:'Inter',sans-serif;}
.data-table thead{background:var(--ink);color:var(--cream);}
.data-table thead th{padding:18px 20px;text-align:left;font-size:10px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;border-right:1px solid rgba(242,235,223,.15);white-space:nowrap;}
.data-table thead th:last-child{border-right:none;}
.data-table tbody tr{border-bottom:1px solid var(--line);transition:background .15s;}
.data-table tbody tr:last-child{border-bottom:none;}
.data-table tbody tr:hover{background:var(--cream-2);}
.data-table tbody td{padding:20px;font-size:14px;color:var(--ink-2);vertical-align:middle;border-right:1px solid var(--line);}
.data-table tbody td:last-child{border-right:none;}
.data-table .td-name{font-family:'Fraunces',serif;font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--ink);text-transform:uppercase;}
.data-table .td-username{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;color:var(--ink-3);}
.data-table .td-email{font-family:'Inter',sans-serif;font-size:13px;color:var(--ink-2);}
.data-table .td-actions{text-align:right;white-space:nowrap;}
.form-card{background:var(--cream-2);border:3px solid var(--ink);padding:44px;}
.form-field{margin-bottom:24px;}
.form-field label{display:block;font-family:'Inter',sans-serif;font-size:10px;font-weight:800;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px;}
.form-field input,.form-field select,.form-field textarea{width:100%;padding:16px 18px;background:var(--cream);border:3px solid var(--ink);font-family:'Lora',serif;font-size:16px;color:var(--ink);outline:none;transition:border-color .15s;}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--bata);}
.form-field textarea{resize:vertical;min-height:100px;line-height:1.6;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;}
.modal-backdrop{display:none;position:fixed;inset:0;background:rgba(15,10,8,.7);z-index:500;padding:40px 20px;overflow-y:auto;}
.modal-backdrop.on{display:block;}
.modal{max-width:640px;margin:0 auto;background:var(--cream-2);border:4px solid var(--ink);padding:48px 44px;position:relative;}
.modal-close{position:absolute;top:18px;right:18px;width:40px;height:40px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;background:none;font-size:18px;line-height:1;color:var(--ink);}
.modal-close:hover{background:var(--bata);border-color:var(--bata);color:var(--cream);}
.modal h2{font-size:36px;line-height:1;letter-spacing:-.04em;margin-bottom:8px;text-transform:uppercase;font-weight:900;}
.modal h2 em{color:var(--bata);font-style:italic;}
.modal .modal-kicker{font-family:'Inter',sans-serif;font-size:10px;font-weight:800;letter-spacing:.32em;text-transform:uppercase;color:var(--bata);margin-bottom:16px;}
.alert{padding:18px 24px;margin-bottom:24px;font-family:'Inter',sans-serif;font-size:12px;font-weight:700;border:3px solid transparent;}
.alert-danger{background:var(--bata);color:var(--cream);border-color:var(--bata);}
.alert-success{background:#3F6B3F;color:var(--cream);border-color:#3F6B3F;}
.alert a{color:var(--cream);text-decoration:underline;}
.empty-state{padding:80px 24px;text-align:center;font-family:'Lora',serif;font-style:italic;color:var(--ink-3);border:3px dashed var(--line-2);}
.empty-state strong{display:block;font-family:'Fraunces',serif;font-style:normal;font-weight:900;font-size:28px;color:var(--ink);margin-bottom:12px;letter-spacing:-.02em;text-transform:uppercase;}
.info-box{background:var(--cream-2);border-left:6px solid var(--bata);padding:28px 32px;margin-bottom:32px;}
.info-box p{font-family:'Lora',serif;font-size:16px;line-height:1.7;color:var(--ink-2);margin-bottom:10px;}
.info-box p:last-child{margin-bottom:0;}
.info-box strong{color:var(--ink);}
@media(max-width:1024px){
.admin-grid{grid-template-columns:1fr;gap:32px;}
.admin-side{position:static;display:flex;overflow-x:auto;gap:0;border-top:3px solid var(--ink);padding-top:0;}
.admin-side a{border-left:none;border-bottom:5px solid transparent;white-space:nowrap;padding:16px 20px;}
.admin-side a:hover{padding-left:20px;}
.admin-side a.on{border-left:none;border-bottom-color:var(--bata);}
.stat-row{grid-template-columns:1fr 1fr;}
.stat:nth-child(2n){border-right:none;}
.stat:nth-child(1),.stat:nth-child(2){border-bottom:1px solid var(--line-2);}
.form-grid{grid-template-columns:1fr;}
}
@media(max-width:720px){
.admin-shell{padding:32px 20px 60px;}
.admin-head h1{font-size:32px;}
.stat .n{font-size:44px;}
.form-card,.modal{padding:32px 24px;}
.data-table thead th{padding:14px 12px;font-size:9px;}
.data-table tbody td{padding:16px 12px;font-size:13px;}
.data-table .td-name{font-size:16px;}
}