/* Administration Kastor Africa — interface de type WordPress, rouge officiel du site */
:root{--forest:#8f1018;--forest-dark:#650b12;--gold:#8f1018;--canvas:#f5f6f4;--surface:#fff;--ink:#2a2e2b;--muted:#69736d;--line:#d9ddd8;--sidebar:248px;--topbar:62px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.6 'Segoe UI',Arial,sans-serif}a{color:var(--forest);text-decoration:none}a:hover{color:var(--forest-dark)}.nav-icon{display:inline-block;flex-shrink:0;vertical-align:middle}button,input,select,textarea{font:inherit}button,a,input,select,textarea{transition:border-color .15s,box-shadow .15s,background .15s,color .15s}
.admin-topbar{position:fixed;inset:0 0 auto;height:var(--topbar);z-index:100;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px 0 20px;gap:15px}.topbar-brand{font-size:20px;letter-spacing:.025em;font-weight:800;white-space:nowrap}.topbar-brand>span:last-child{color:var(--gold)}.brand-k{display:inline-grid;place-items:center;background:var(--forest);color:#fff;width:35px;height:35px;border-radius:7px;margin-right:6px}.topbar-right{display:flex;align-items:center;gap:22px}.topbar-right>a,.topbar-user{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.topbar-right a:hover{color:var(--forest)}.admin-sidebar{position:fixed;top:var(--topbar);bottom:0;left:0;width:var(--sidebar);z-index:90;display:flex;flex-direction:column;background:var(--forest-dark);color:#fff5f5;overflow-y:auto}.sidebar-heading{padding:28px 22px 12px;font-size:10px;font-weight:800;letter-spacing:.17em;color:#f0c3c6}.sidebar-nav{padding:0 10px}.sidebar-link{display:flex;align-items:center;gap:13px;min-height:44px;margin:3px 0;padding:10px 15px;color:#f9e7e8;border-radius:6px;font-size:14px;font-weight:550;position:relative}.sidebar-link:hover,.sidebar-link:focus-visible{background:#ffffff18;color:#fff}.sidebar-link.is-active{background:#ffffff1c;color:#fff;font-weight:700}.sidebar-link.is-active:before{content:'';position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:3px;background:var(--gold)}.sidebar-footer{margin-top:auto;padding:20px 10px 14px;border-top:1px solid #ffffff20}.sidebar-version{padding:12px 15px 0;font-size:11px;color:#edb9bc}.admin-main{margin:var(--topbar) 0 0 var(--sidebar);min-height:calc(100vh - var(--topbar));padding:33px clamp(20px,3.2vw,52px) 65px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;padding-bottom:19px;border-bottom:1px solid var(--line);margin-bottom:23px}.heading-kicker{font-size:11px;letter-spacing:.12em;color:var(--muted);font-weight:700;margin:0 0 4px}.page-heading h1{font-size:clamp(26px,2.6vw,34px);font-weight:750;line-height:1.2;color:var(--forest);margin:0}.heading-site-link{white-space:nowrap;font-size:13px}.admin-content{max-width:1350px}.admin-content>p:first-child{margin-top:0}.admin-content p{line-height:1.7}.admin-content h2{font-size:20px;color:var(--forest);margin:0 0 14px}.admin-content h3{color:var(--forest);margin-top:0}.panel{display:block;background:var(--surface);border:1px solid var(--line);padding:23px 25px;border-radius:9px;margin:18px 0;color:inherit;text-decoration:none;box-shadow:0 2px 9px #51050b08}.panel span{color:var(--forest);font-weight:600}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px;margin:25px 0}.cards .panel{margin:0;min-height:165px;position:relative;border-top:3px solid var(--forest);display:flex;flex-direction:column;justify-content:center}.cards .panel:hover{border-color:var(--gold);box-shadow:0 8px 22px #51050b14;transform:translateY(-2px)}.cards .panel h2{margin-bottom:8px}.cards .panel p{margin:0 0 12px;color:var(--muted)}.cards .panel span{margin-top:auto}label{display:block;font-size:14px;font-weight:650;margin:16px 0 7px}input:not([type=checkbox]):not([type=radio]),textarea,select{display:block;width:100%;padding:11px 12px;margin-top:6px;background:#fff;border:1px solid #bfc9c2;border-radius:6px;color:var(--ink)}textarea{resize:vertical;min-height:125px}input:focus,textarea:focus,select:focus{outline:2px solid #8f101866;outline-offset:1px;border-color:var(--forest)}button,.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--forest);border-radius:6px;padding:10px 19px;background:var(--forest);color:white;cursor:pointer;font-size:14px;font-weight:700;min-height:42px}button:hover,.button:hover{background:var(--forest-dark);color:#fff}button:focus-visible,a:focus-visible{outline:3px solid #c45159;outline-offset:2px}.notice,.success,.error{padding:14px 17px;margin:15px 0;border-radius:6px;background:#f9eded;border-left:4px solid var(--forest)}.error{background:#fff0f0;color:#9b2020;border-color:#b4232e}.success{color:#176343}.menu-toggle,.mobile-menu-button,.sidebar-overlay{display:none}.admin-login{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(145deg,#f5f6f4,#f4e4e5)}.admin-login .admin-main{margin:0;width:min(100%,540px);min-height:auto;padding:32px 20px}.admin-login .page-heading{justify-content:center;text-align:center}.admin-login .panel{padding:30px}.admin-login button{width:100%}
@media(min-width:1500px){.admin-main{padding-left:55px;padding-right:55px}}
@media(max-width:950px){:root{--sidebar:222px}.admin-main{padding:26px 22px 45px}.topbar-right{gap:12px}}
@media(max-width:760px){.mobile-menu-button{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:5px;cursor:pointer;color:var(--forest);font-size:24px}.admin-topbar{padding:0 14px;justify-content:flex-start}.topbar-brand{font-size:17px}.brand-k{width:30px;height:30px}.topbar-right{margin-left:auto}.topbar-right>a,.topbar-user{display:none}.admin-sidebar{transform:translateX(-100%);transition:transform .2s ease;width:270px;box-shadow:8px 0 30px #41070b1c}.menu-toggle:checked~.admin-sidebar{transform:translateX(0)}.sidebar-overlay{display:none}.menu-toggle:checked~.sidebar-overlay{display:block;position:fixed;inset:var(--topbar) 0 0;z-index:80;background:#0006;cursor:pointer}.admin-main{margin-left:0;padding:23px 16px 50px}.heading-site-link{display:none}.cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:13px}.panel{padding:20px 17px}.page-heading{margin-bottom:18px}}
@media(max-width:470px){.cards{grid-template-columns:1fr}.admin-main{padding-left:14px;padding-right:14px}.panel{overflow-wrap:anywhere}}




/* Écran de connexion amélioré */
.admin-login{background:linear-gradient(135deg,#fbf7f7 0%,#f2e6e7 55%,#efe4e4 100%);align-items:stretch}
.admin-login .admin-main{margin:0;width:100%;max-width:none;min-height:100vh;padding:0;display:flex;align-items:center;justify-content:center}
.admin-login .admin-content{max-width:none;width:100%}
.admin-login .page-heading{display:none}
.login-shell{width:min(1380px,calc(100% - 48px));margin:24px auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}
.login-form-card,.login-visual-card{min-height:760px;border-radius:32px;background:rgba(255,255,255,.72);border:1px solid rgba(143,16,24,.09);box-shadow:0 24px 60px rgba(101,11,18,.12);overflow:hidden;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.login-form-card{display:flex;align-items:center;justify-content:center;padding:38px 42px;background:rgba(255,255,255,.78)}
.login-form-wrap{width:min(100%,520px)}
.login-logo-block{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:18px}
.login-logo{width:110px;height:auto;display:block;filter:drop-shadow(0 8px 16px rgba(143,16,24,.14))}
.login-brand-meta{display:block}
.login-kicker{margin:0 0 8px;font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#9f4b52}
.login-title{margin:0;font-size:clamp(31px,2.8vw,42px);line-height:1.1;color:var(--forest-dark)}
.login-copy{margin:0 0 24px;color:#655f60;font-size:17px;line-height:1.75;max-width:46ch}
.login-form label{margin-top:0;margin-bottom:18px;font-size:15px}
.login-form input{height:54px;padding-inline:16px;margin-top:8px;background:rgba(248,250,255,.9);border:1px solid rgba(143,16,24,.15);border-radius:10px}
.login-form button{width:100%;margin-top:8px;min-height:54px;border-radius:10px;font-size:15px;letter-spacing:.01em;box-shadow:0 14px 28px rgba(101,11,18,.15)}
.login-footnote{margin:18px 0 0;font-size:13px;color:#7b7475}
.login-visual-card{padding:0;background:rgba(255,255,255,.82)}
.login-visual-frame{position:relative;width:100%;height:100%;min-height:760px;border-radius:32px;overflow:hidden}
.login-visual-image{width:100%;height:100%;display:block;object-fit:cover;object-position:58% center}
.login-visual-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.04) 55%,rgba(0,0,0,.16) 100%)}
.login-visual-note{position:absolute;left:26px;bottom:26px;right:26px;display:flex;justify-content:flex-start}
.login-visual-chip{display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;background:rgba(143,16,24,.82);color:#fff;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 12px 24px rgba(101,11,18,.18)}
@media(max-width:1180px){.login-shell{width:min(100%,calc(100% - 34px));gap:20px}.login-form-card,.login-visual-card,.login-visual-frame{min-height:700px}.login-form-card{padding:30px 28px}}
@media(max-width:980px){.login-shell{grid-template-columns:1fr}.login-form-card,.login-visual-card,.login-visual-frame{min-height:auto}.login-form-card{padding:28px 22px}.login-visual-frame{height:520px}.login-copy{max-width:none}}
@media(max-width:640px){.admin-login .admin-main{display:block}.login-shell{width:min(100%,calc(100% - 20px));margin:10px auto 18px;gap:14px}.login-form-card,.login-visual-card{border-radius:22px}.login-form-card{padding:22px 16px}.login-visual-frame{height:340px;border-radius:22px}.login-title{font-size:29px}.login-logo{width:90px}.login-copy{font-size:16px;line-height:1.65}.login-form input{height:50px}.login-form button{min-height:50px}}
/* Gestion des pages type WordPress */
.pages-header,.pages-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.pages-header p{margin-top:4px}.pages-search{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.pages-search label{flex:1;min-width:220px}.pages-search input{margin-bottom:0}.pages-table-scroll{overflow-x:auto}.pages-table{border-collapse:collapse;width:100%;min-width:700px}.pages-table th,.pages-table td{padding:15px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.pages-table th{background:#f7f5f5;color:#594f50}.pages-table tbody tr:hover{background:#fff8f8}.pages-actions{white-space:nowrap}.pages-actions a{margin-right:12px;font-weight:650}.pages-delete{display:inline}.pages-delete button{background:transparent;border:0;color:#aa2430;min-height:0;padding:0;font-weight:650}.pages-delete button:hover{background:transparent;color:#6f0e16;text-decoration:underline}.pages-source{font:14px/1.5 Consolas,monospace;min-height:560px;white-space:pre;tab-size:2}.pages-secondary{background:#fff;color:var(--forest)}.pages-count{color:var(--muted);font-size:13px}
/* Éditeur visuel des pages */
.pages-editor-tabs{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:22px 0 12px}
.pages-editor-tabs .pages-tab{background:#fff;color:#8f1018;border:1px solid #d5c4c6;padding:10px 17px}
.pages-editor-tabs .pages-tab.is-active{background:#8f1018;color:white;border-color:#8f1018}
.pages-editor-tabs .pages-tab:disabled{opacity:.45;cursor:not-allowed}
.pages-editor-tabs .button{margin-left:auto}
.pages-editor-actions{padding-top:18px}
#pages-source{font:14px/1.55 Consolas,monospace;min-height:620px;white-space:pre;tab-size:2}
#pages-source[hidden],#pages-visual[hidden],.tox-tinymce[hidden]{display:none!important}
.tox-tinymce{border-radius:9px!important;border-color:#d9ddd8!important}

/* V6 : lien vers le site sur l’écran de connexion, sans toucher au formulaire. */
.admin-login .login-return-site{display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;margin-top:16px;padding:10px 16px;box-sizing:border-box;border:1px solid rgba(143,16,24,.4);border-radius:10px;color:#8f1018;background:rgba(255,255,255,.72);text-decoration:none;font-size:15px;font-weight:750;transition:background .15s}
.admin-login .login-return-site:hover{background:#fcf0f2}
.admin-login .login-return-site:focus-visible{outline:3px solid #c9a227;outline-offset:3px}

/* Kastor V29 : sous-dossiers de l’espace Utilisateurs. */
.sidebar-sub-link{padding-left:36px;min-height:37px;font-size:12.5px;opacity:.93}.sidebar-sub-link .nav-icon{width:15px;height:15px;opacity:.8}
