:root{font-family:Arial,Helvetica,sans-serif;color:var(--foreground);background:var(--background);color-scheme:dark;--border:#343644;--accent:#b4a0ff}*{box-sizing:border-box}body{margin:0}a{color:var(--brand-text);text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid transparent;border-radius:8px;background:var(--primary);color:var(--primary-foreground);padding:10px 16px;font-weight:650}button:disabled{opacity:.5;cursor:wait}button.secondary{background:var(--secondary);color:var(--secondary-foreground);border-color:var(--border)}input,textarea,select{display:block;width:100%;margin-top:7px;padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--background);color:var(--foreground)}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--ring);outline-offset:2px}label{display:block;font-size:14px;margin:16px 0}small,.hint{color:var(--muted-foreground);font-size:13px}h1{font-size:30px;letter-spacing:-.03em}h2{font-size:18px}.brand{font-size:19px;font-weight:750;color:var(--foreground);white-space:nowrap}.login-body{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,var(--cosmic-glow),var(--background) 65%)}.login-card{max-width:560px;width:100%;padding:36px;background:var(--card);border:1px solid var(--border);border-radius:18px}.login-card p{color:var(--muted-foreground);line-height:1.6}.login-card button{width:100%;margin-top:12px}.notice{padding:12px;border:1px solid #ce8d82;border-radius:8px}.topbar{min-height:76px;display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--card)}.topbar>span{margin-left:auto}.topbar form{margin:0}.topbar input{max-width:560px;margin:0 auto 0 0}.dashboard{max-width:1150px;margin:auto;padding:40px 24px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.page-heading h1{margin:8px 0}.eyebrow{color:var(--brand-text);text-transform:uppercase;font-size:12px;letter-spacing:.15em}.panel{padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--card);margin-bottom:24px}.create-page{display:flex;align-items:end;gap:18px}.create-page label{flex:1;margin:0}.page-row{display:flex;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--border);color:inherit}.page-row>span:first-child{flex:1}.page-row small{display:block;margin-top:6px}.badge{background:var(--brand-soft);border-radius:20px;padding:5px 12px;font-size:12px}.editor-layout{display:grid;grid-template-columns:300px minmax(0,1fr);height:calc(100dvh - 76px)}.inspector{padding:20px;overflow:auto;border-right:1px solid var(--border);background:var(--card)}.inspector h1{font-size:22px}.inspector h2{margin-top:26px}.inspector details{margin-top:30px}.inspector details button{margin-top:14px}.canvas{padding:20px;overflow:auto;background:var(--background)}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-toolbar button{font-size:12px;padding:8px}#preview{display:block;width:100%;height:calc(100% - 90px);min-height:500px;border:0;background:white;margin:0 auto;transition:width .2s;max-width:100%}#editor-status{min-height:20px;font-size:14px;color:var(--brand-text)}.block-row{display:flex;gap:4px;margin:8px 0}.block-row button:first-child{flex:1;text-align:left}.block-row button{padding:7px;font-size:12px}.selection-actions{display:flex;gap:10px}#revision-list{font-size:12px;line-height:1.8}@media(max-width:800px){.topbar{flex-wrap:wrap;padding:12px;gap:8px}.topbar input{order:2;max-width:none}.topbar>span{font-size:12px}.editor-layout{display:flex;flex-direction:column;height:auto}.inspector{max-height:45dvh;border-bottom:1px solid var(--border)}.canvas{min-height:650px;padding:12px}#preview{height:600px}.create-page{display:block}.create-page label{margin-bottom:16px}.page-row{gap:10px;font-size:13px}.preview-toolbar{flex-wrap:wrap}.page-heading{align-items:start}.login-card{padding:24px}}

/* Native shell aligned with app.n3xai.ca: 16rem navigation, shared design tokens. */
[hidden]{display:none!important}body{background:radial-gradient(ellipse at 80% 0,var(--cosmic-glow),transparent 60%),var(--background);color:var(--foreground)}.cms-shell{--nav-width:256px}.cms-main{margin-left:var(--nav-width);min-width:0;min-height:100dvh}.cms-sidebar{position:fixed;inset:0 auto 0 0;width:var(--nav-width);display:flex;flex-direction:column;background:var(--sidebar);border-right:1px solid var(--sidebar-border);z-index:40;color:var(--sidebar-foreground);overflow:auto}.sidebar-heading{padding:24px 22px 20px;display:flex;align-items:center}.brand{display:block;line-height:0}.brand img{display:block;width:100%;max-width:192px;height:auto}.sidebar-heading .brand{flex:1}.workspace-card{margin:0 16px 24px;padding:12px;display:flex;gap:10px;align-items:center;border:1px solid var(--sidebar-border);border-radius:9px;font-size:13px;color:var(--foreground)}.workspace-symbol{display:grid;place-items:center;width:34px;height:34px;background:var(--secondary);border-radius:7px;color:var(--brand-text)}.workspace-card small{display:block;margin-top:4px;font-size:11px}.cms-sidebar nav{padding:0 16px;flex:1}.nav-label{font-size:10px;letter-spacing:1.5px;margin:0 12px 12px;color:var(--muted-foreground)}.nav-label-spaced{margin-top:30px}.nav-link{display:flex;align-items:center;gap:12px;min-height:43px;padding:10px 12px;margin:6px 0;border-radius:8px;color:var(--sidebar-foreground);font-size:14px}.nav-link svg{flex-shrink:0}.nav-link:hover{background:var(--secondary);color:var(--foreground)}.nav-link.active{background:var(--sidebar-accent);color:var(--sidebar-accent-foreground)}.external-mark{margin-left:auto;font-size:13px}.sidebar-account{padding:18px 16px;border-top:1px solid var(--sidebar-border);margin-top:32px}.account-row{display:flex;gap:10px;align-items:center;margin-bottom:16px}.account-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--brand-soft);color:var(--brand-text);flex-shrink:0;font-size:14px}.account-row>div{min-width:0}.account-row b{font-size:13px;font-weight:500;color:var(--foreground)}.account-row small{display:block;font-size:11px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:170px;margin-top:4px}.logout-button{width:100%;font-size:13px}.sidebar-close{display:none}.sidebar-overlay{position:fixed;inset:0;z-index:39;background:#0009;border:0;border-radius:0;padding:0;cursor:default}.sidebar-collapsed .cms-sidebar{display:none}.sidebar-collapsed .cms-main{margin-left:0}.topbar{height:76px;min-height:76px;padding:14px 28px;background:var(--sidebar);gap:12px}.breadcrumb{display:flex;gap:14px;align-items:center;font-size:14px}.breadcrumb>span{color:var(--muted-foreground)}.breadcrumb b{font-weight:500}.theme-toggle{margin-left:auto;font-size:12px}.menu-toggle{font-size:18px;padding:7px 11px}.dashboard{padding:38px 32px;max-width:1600px}.page-heading h1{font-weight:500;letter-spacing:-.8px}.panel{box-shadow:var(--panel-shadow);border-radius:14px}.page-row:hover{color:var(--brand-text)}.page-row>span:first-child{min-width:0;overflow-wrap:anywhere}.eyebrow{font-size:10px;letter-spacing:1.8px}.badge{color:var(--brand-text);white-space:nowrap}.editor-layout{grid-template-columns:260px minmax(0,1fr)}.inspector{background:var(--sidebar);font-size:13px;padding:18px}.inspector h1{font-weight:500}.topbar input{font-size:14px;min-width:120px;flex:1;width:auto}.topbar button{font-size:13px;padding:9px 12px}.topbar .menu-toggle{font-size:18px}.back-link{font-size:13px;white-space:nowrap}.canvas{background:var(--background)}.login-card{box-shadow:var(--panel-shadow)}.login-card .brand img{width:190px}.preview-toolbar>span{font-size:13px}.preview-toolbar>div{display:flex;gap:5px}.preview-toolbar button{font-size:11px}.login-body{color-scheme:dark}.create-page button{white-space:nowrap}.page-heading p{color:var(--muted-foreground)}
@media(max-width:1100px){.topbar{padding:12px 16px;gap:8px}.topbar input{max-width:none}.dashboard{padding:28px 20px}.create-page{flex-wrap:wrap}.create-page label{min-width:180px}.preview-toolbar{flex-wrap:wrap}}
@media(max-width:900px){.cms-main{margin-left:0}.cms-sidebar{display:none;width:min(290px,85vw);box-shadow:12px 0 45px #0005}.sidebar-open .cms-sidebar{display:flex}.sidebar-open{overflow:hidden}.sidebar-close{display:block;padding:5px 10px!important;font-size:23px!important;margin-left:10px}.sidebar-heading{padding:20px 16px}.breadcrumb{gap:9px}.theme-toggle{padding:8px!important}.topbar{height:auto;min-height:68px}.editor-layout{height:calc(100dvh - 76px)}.sidebar-heading .brand img{max-width:180px}}
@media(max-width:800px){.editor-layout{height:auto}.topbar input{flex-basis:100%;order:2}.editor-body .topbar .back-link{margin-right:auto}.topbar button{padding:8px;font-size:12px}.editor-body .topbar{gap:7px}.dashboard{padding:24px 16px}.page-heading{gap:12px}.page-heading>a{font-size:12px;white-space:nowrap}.panel{padding:18px}.page-row{flex-wrap:wrap}.page-row>span:first-child{flex-basis:60%}.page-row>span:last-child{font-size:12px}.preview-toolbar>div{flex-wrap:wrap}.breadcrumb>span{display:none}.login-card{max-width:560px}}

/* Groupes exclusifs du menu CMS. */
.nav-group{margin:0 0 10px}.nav-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 10px;min-height:44px;list-style:none;cursor:pointer;color:var(--muted-foreground);font-size:10px;font-weight:600;letter-spacing:1px;border-radius:8px}.nav-group-toggle::-webkit-details-marker{display:none}.nav-group-toggle:hover{background:var(--secondary);color:var(--foreground)}.nav-group-toggle:focus-visible{outline:2px solid var(--sidebar-ring);outline-offset:2px}.nav-chevron{flex-shrink:0;transition:transform .15s ease}.nav-group[open]>.nav-group-toggle .nav-chevron{transform:rotate(90deg)}.nav-group-links{margin-left:10px;padding-left:8px;border-left:1px solid var(--sidebar-border)}.nav-group-note{font-size:12px;line-height:1.6;padding:10px;color:var(--muted-foreground)}
@media(prefers-reduced-motion:reduce){.nav-chevron{transition:none}}
.page-list-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--sidebar-border)}.page-list-row .page-row{flex:1;min-width:0;border-bottom:0}.page-delete-button{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;padding:10px;color:#f87171}.page-delete-button:hover{background:#ef444422;color:#fca5a5}.delete-page-dialog{width:min(520px,calc(100vw - 32px));border:1px solid var(--sidebar-border);border-radius:14px;padding:24px;background:var(--sidebar);color:var(--foreground)}.delete-page-dialog::backdrop{background:#000a}.delete-page-dialog p{line-height:1.6;overflow-wrap:anywhere}.delete-page-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.page-delete-confirm{background:#b91c1c;color:#fff}.page-delete-confirm:hover{background:#991b1b}

/* Choix du thème : mêmes icônes et dimensions que l’application. */
.topbar .theme-toggle{width:40px;height:40px;min-width:40px;min-height:40px;padding:9px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--card);border:1px solid var(--border);color:var(--brand-text);flex-shrink:0}
.theme-toggle:hover{background:var(--accent);color:var(--foreground)}
.theme-toggle:focus-visible{outline:2px solid var(--brand-text);outline-offset:3px}
.theme-toggle svg{flex-shrink:0}.theme-toggle .theme-moon{display:none}
[data-theme="light"] .theme-toggle .theme-sun{display:none}
[data-theme="light"] .theme-toggle .theme-moon{display:block}
