:root { --pd-blue:#071b8f; --pd-blue-deep:#040e56; --pd-red:#ed1717; --pd-soft:#f4f6ff; --pd-bg:#f4f6f9; --pd-surface:#fff; --pd-radius:16px; --pd-font:'DM Sans',sans-serif; }
body.admin-body { font-family:var(--pd-font); background:var(--pd-bg); }
.admin-body .app-main { background:linear-gradient(180deg,#f7f9ff 0,#f4f6f9 34%,#f4f6f9 100%); }
.admin-login { min-height:100vh; display:grid; place-items:center; background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.16),transparent 25%),linear-gradient(135deg,var(--pd-blue-deep),var(--pd-blue) 65%,var(--pd-red)); }
.admin-login-card { width:min(440px,calc(100% - 30px)); overflow:hidden; border:0; border-radius:24px; box-shadow:0 30px 90px rgba(0,0,0,.25); }
.admin-login-brand { padding:30px; text-align:center; background:#fff; }
.admin-login-brand img { width:92px; height:92px; object-fit:cover; border-radius:50%; box-shadow:0 12px 35px rgba(7,27,143,.18); }
.admin-login-brand h1 { margin:16px 0 3px; color:var(--pd-blue); font-family:'Playfair Display',serif; font-size:1.65rem; }
.admin-login-body { padding:28px; background:#fff; }
.admin-login-body label { font-weight:800; font-size:.8rem; color:#344054; }
.admin-login-body input { padding:.75rem .85rem; border-radius:10px; }
.btn-pd { color:#fff!important; background:var(--pd-blue)!important; border-color:var(--pd-blue)!important; }
.btn-pd:hover { background:var(--pd-blue-deep)!important; }
.btn-pd-red { color:#fff!important; background:var(--pd-red)!important; border-color:var(--pd-red)!important; }
.app-sidebar { background:linear-gradient(180deg,var(--pd-blue-deep),#071b8f); }
.app-sidebar .sidebar-brand { display:flex; align-items:center; gap:.65rem; padding:18px 16px; color:#fff; }
.app-sidebar .sidebar-brand img { width:40px; height:40px; border-radius:50%; object-fit:cover; }
.app-sidebar .sidebar-brand strong { font-family:'Playfair Display',serif; line-height:1.1; }
.app-sidebar .sidebar-brand small { display:block; color:#ffcdcd; font-size:.62rem; }
.app-sidebar .nav-link { margin:2px 10px; color:rgba(255,255,255,.75); border-radius:9px; }
.app-sidebar .nav-link:hover,.app-sidebar .nav-link.active { color:#fff; background:rgba(255,255,255,.14); }
.app-sidebar .nav-link .nav-icon { color:#fff; }
.app-header { border-bottom:1px solid #e5e7eb; }
.admin-content { min-height:calc(100vh - 57px); }
.admin-page-title { color:var(--pd-blue-deep); font-family:'Playfair Display',serif; font-size:1.85rem; }
.admin-subtitle { color:#667085; font-size:.86rem; }
.admin-stat { min-height:128px; border:0; border-radius:16px; overflow:hidden; box-shadow:0 8px 22px rgba(16,24,40,.06); }
.admin-stat .icon { display:grid; width:52px; height:52px; place-items:center; color:#fff; background:rgba(255,255,255,.18); border-radius:14px; font-size:1.25rem; }
.admin-stat h3 { margin:0; color:#fff; font-family:'Playfair Display',serif; font-size:2rem; }
.admin-stat p { margin:0; color:rgba(255,255,255,.76); font-size:.8rem; }
.admin-card { border:0; border-radius:var(--pd-radius); box-shadow:0 7px 20px rgba(16,24,40,.05); }
.admin-card { transition:transform .18s ease, box-shadow .18s ease; }
.admin-card:hover { box-shadow:0 12px 30px rgba(7,27,143,.08); }
.admin-card .card-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; border-bottom:1px solid #eef0f5; background:#fff; border-radius:16px 16px 0 0!important; }
.admin-card .card-title { color:var(--pd-blue-deep); font-weight:800; }
.admin-table th { color:#667085; font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; }
.admin-table td { vertical-align:middle; color:#344054; font-size:.86rem; }
.admin-thumb { width:50px; height:38px; object-fit:cover; border-radius:7px; background:#e9edff; }
.admin-form label { margin-bottom:.35rem; color:#344054; font-size:.78rem; font-weight:800; }
.admin-form .form-control,.admin-form .form-select { border-radius:9px; padding:.65rem .75rem; }
.admin-form .form-control:focus,.admin-form .form-select:focus { border-color:#7182d6; box-shadow:0 0 0 3px rgba(7,27,143,.10); }
.admin-form textarea { min-height:130px; }
.admin-help { color:#98a2b3; font-size:.75rem; }
.admin-badge { display:inline-flex; padding:.25rem .55rem; border-radius:50px; color:#fff; background:var(--pd-blue); font-size:.7rem; font-weight:800; }
.admin-badge-red { background:var(--pd-red); }
.admin-empty { padding:35px 20px; text-align:center; color:#98a2b3; }
.admin-content .breadcrumb { font-size:.78rem; }
.menu-tree-root { min-height:80px; padding:.25rem; background:#f8f9fc; border:1px dashed #d7dcf0; border-radius:12px; }
.menu-sortable { min-height:12px; padding-left:0; }
.menu-sortable .menu-sortable { margin:.3rem 0 .2rem 28px; padding-left:10px; border-left:2px solid #d9def6; }
.menu-sortable-item { margin:.35rem 0; }
.menu-item-row { display:flex; align-items:center; gap:.55rem; min-height:50px; padding:.55rem .65rem; background:#fff; border:1px solid #e4e7f1; border-radius:10px; box-shadow:0 3px 8px rgba(16,24,40,.03); }
.menu-item-row:hover { border-color:#9aa9e8; box-shadow:0 5px 16px rgba(7,27,143,.08); }
.menu-drag-handle { flex:0 0 22px; color:#98a2b3; cursor:grab; text-align:center; }
.menu-drag-handle:active { cursor:grabbing; }
.menu-item-main { min-width:0; flex:1; }
.menu-item-main strong { display:block; overflow:hidden; color:#344054; text-overflow:ellipsis; white-space:nowrap; }
.menu-item-main small { display:block; overflow:hidden; color:#98a2b3; font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.menu-sortable-item.sortable-ghost { opacity:.35; }
.menu-sortable-item.sortable-chosen .menu-item-row { border-color:var(--pd-blue); }
.menu-sortable-item.menu-dragging { opacity:.62; }
.pd-wp-editor-wrap { overflow:hidden; margin-top:.35rem; border:1px solid #d9dfea; border-radius:12px; background:#fff; box-shadow:0 5px 16px rgba(16,24,40,.04); }
.pd-wp-editor-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:4px; padding:8px 10px; border-bottom:1px solid #e7eaf1; background:linear-gradient(180deg,#fbfcff,#f3f5fb); font-family:'DM Sans',sans-serif; }
.pd-wp-editor-toolbar button.pd-wp-editor-button { appearance:none!important; -webkit-appearance:none!important; display:grid; width:32px; height:31px; place-items:center; padding:0; border:1px solid transparent!important; border-radius:7px; color:#475467; background:transparent!important; box-shadow:none!important; font-size:.78rem; line-height:1; }
.pd-wp-editor-toolbar button.pd-wp-editor-button:hover,.pd-wp-editor-toolbar button.pd-wp-editor-button:focus { color:var(--pd-blue); background:#e9edff!important; border-color:#ccd4fa!important; outline:0; }
.pd-wp-editor-select { height:30px; margin-right:4px; padding:0 7px; border:1px solid #d9dfea; border-radius:6px; color:#475467; background:#fff; font-size:.75rem; }
.pd-wp-editor-modes { display:flex; gap:4px; margin-left:auto; padding-left:8px; border-left:1px solid #e1e5ee; }
.pd-wp-editor-mode { appearance:none!important; -webkit-appearance:none!important; padding:.38rem .65rem; border:1px solid transparent!important; border-radius:7px; color:#667085; background:transparent!important; box-shadow:none!important; font-size:.73rem; font-weight:800; }
.pd-wp-editor-mode:hover,.pd-wp-editor-mode.active { color:var(--pd-blue); background:#e9edff; border-color:#ccd4fa; }
.pd-wp-editor-canvas { min-height:280px; padding:18px 20px; outline:0; color:#344054; background:#fff; font-family:Georgia,'Times New Roman',serif; font-size:1rem; line-height:1.8; }
.pd-wp-editor-canvas:focus { box-shadow:inset 0 0 0 2px rgba(7,27,143,.12); }
.pd-wp-editor-canvas:empty:before { content:attr(data-placeholder); color:#98a2b3; pointer-events:none; }
.pd-wp-editor-canvas h2,.pd-wp-editor-canvas h3 { color:var(--pd-blue-deep); font-family:'Playfair Display',serif; }
.pd-wp-editor-canvas blockquote { margin:1rem 0; padding:.65rem 1rem; color:var(--pd-blue-deep); border-left:4px solid var(--pd-red); background:#f0f3ff; }
.pd-wp-editor-canvas img { max-width:100%; height:auto; border-radius:8px; }
.pd-wp-editor-source { width:100%; min-height:280px!important; margin:0!important; padding:18px 20px!important; border:0!important; border-radius:0!important; outline:0!important; box-shadow:none!important; color:#344054; background:#fff; font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size:.86rem; line-height:1.65; resize:vertical; }
.settings-intro { display:flex; align-items:center; gap:14px; padding:16px 18px; color:#344054; background:linear-gradient(105deg,var(--pd-soft),#fff); border:1px solid rgba(7,27,143,.10); border-radius:var(--pd-radius); }
.settings-intro-icon { display:grid; width:46px; height:46px; flex:0 0 46px; place-items:center; color:#fff; background:linear-gradient(145deg,var(--pd-blue),var(--pd-blue-deep)); border-radius:14px; font-size:1.1rem; box-shadow:0 8px 18px rgba(7,27,143,.18); }
.settings-intro strong { display:block; color:var(--pd-blue-deep); font-size:.95rem; }
.settings-intro span { display:block; margin-top:3px; color:#667085; font-size:.78rem; }
.admin-settings-label { margin-bottom:8px; color:#667085; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.theme-preset-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; }
.theme-preset { display:flex; min-width:0; flex-direction:column; align-items:center; gap:6px; padding:9px 5px; border:1px solid #e5e7ef; border-radius:11px; color:#667085; background:#fff; font-size:.68rem; font-weight:800; transition:.18s ease; }
.theme-preset:hover,.theme-preset.active { color:var(--pd-blue); border-color:var(--pd-blue); background:var(--pd-soft); transform:translateY(-1px); }
.theme-preset-swatch { display:block; width:42px; height:18px; border-radius:99px; background:linear-gradient(90deg,var(--swatch-primary) 0 55%,var(--swatch-accent) 55%); box-shadow:inset 0 0 0 3px var(--swatch-deep); }
.theme-color-field { display:flex; align-items:center; gap:8px; }
.theme-color-field .form-control-color { width:43px; min-width:43px; height:39px; padding:4px; border-radius:9px; cursor:pointer; }
.theme-color-field .form-control { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; text-transform:lowercase; }
.theme-radius-output { min-width:49px; padding:6px 8px; color:var(--pd-blue); background:var(--pd-soft); border-radius:8px; font-size:.76rem; font-weight:800; text-align:center; }
.theme-preview { overflow:hidden; border:1px solid var(--pd-line); border-radius:var(--pd-radius); background:var(--pd-bg); box-shadow:0 12px 28px rgba(16,24,40,.08); }
.theme-preview-top { display:flex; align-items:center; justify-content:space-between; padding:9px 13px; color:#fff; background:var(--pd-blue-deep); font-size:.72rem; font-weight:800; }
.theme-preview-dot { width:9px; height:9px; background:var(--pd-red); border-radius:50%; box-shadow:0 0 0 4px rgba(255,255,255,.12); }
.theme-preview-body { padding:15px; }
.theme-preview-brand { display:flex; align-items:center; gap:9px; color:var(--pd-blue-deep); }
.theme-preview-logo { display:grid; width:34px; height:34px; place-items:center; color:#fff; background:var(--pd-blue); border-radius:11px; }
.theme-preview-brand strong { display:block; font-size:.8rem; }
.theme-preview-brand small { display:block; color:var(--pd-red); font-size:.61rem; font-weight:800; }
.theme-preview-nav { display:flex; align-items:center; gap:5px; margin-top:15px; padding:7px; background:var(--pd-surface); border:1px solid var(--pd-line); border-radius:10px; }
.theme-preview-nav span,.theme-preview-nav button { padding:5px 7px; border:0; border-radius:7px; color:var(--pd-muted); background:transparent; font-size:.62rem; font-weight:800; }
.theme-preview-nav span.active { color:var(--pd-blue); background:var(--pd-blue-soft); }
.theme-preview-nav button { margin-left:auto; color:#fff; background:var(--pd-red); }
.theme-preview-card { margin-top:11px; padding:13px; color:#fff; background:linear-gradient(135deg,var(--pd-blue),var(--pd-blue-deep)); border-radius:calc(var(--pd-radius) - 4px); }
.theme-preview-chip { display:inline-flex; padding:3px 7px; color:#fff; background:var(--pd-red); border-radius:99px; font-size:.57rem; font-weight:800; }
.theme-preview-card strong { display:block; margin-top:8px; font-family:'Playfair Display',serif; font-size:1rem; }
.theme-preview-card p { margin:3px 0 0; color:rgba(255,255,255,.72); font-size:.68rem; }
.settings-icon-note { display:flex; gap:9px; padding:12px; color:#667085; background:var(--pd-soft); border-radius:10px; font-size:.75rem; line-height:1.55; }
.settings-icon-note > i { color:var(--pd-blue); margin-top:2px; }
.settings-icon-note a { color:var(--pd-blue); font-weight:800; }
.pd-icon-picker { padding:8px; border:1px solid #e5e7ef; border-radius:10px; background:#fafbff; }
.pd-icon-picker-title { margin-bottom:7px; color:#667085; font-size:.68rem; font-weight:800; }
.pd-icon-picker-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
.pd-icon-picker-button { display:flex; min-height:42px; flex-direction:column; align-items:center; justify-content:center; gap:3px; padding:4px; border:1px solid transparent; border-radius:8px; color:#667085; background:#fff; font-size:.57rem; line-height:1; }
.pd-icon-picker-button i { color:var(--pd-blue); font-size:.86rem; }
.pd-icon-picker-button:hover,.pd-icon-picker-button.active { color:var(--pd-blue); border-color:#cbd3f5; background:var(--pd-blue-soft); }
@media (max-width:767px){.admin-page-title{font-size:1.55rem}.admin-card .card-header{align-items:flex-start;flex-direction:column}.admin-table{min-width:680px}.admin-table-wrap{overflow:auto}}
@media (max-width:767px){.theme-preset-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-intro{align-items:flex-start}.theme-preview-nav span:nth-child(3){display:none}}
