/* -------------------------- assets/css/publiconion-auth.css -------------------------- */

/* Minimal, modern modal + graphical controls */
.poa-modal { display:none; position:fixed; inset:0; z-index:9999; pointer-events:none; }
.poa-modal-backdrop { position:absolute; inset:0; background:rgba(0,0,0,0.45); cursor:pointer; pointer-events:auto; }
.poa-modal-panel { position:relative; width:480px; max-width:94%; margin:6vh auto; background:#fff; border-radius:12px; padding:18px; box-shadow:0 10px 30px rgba(0,0,0,0.25); transform:translateY(-20px); opacity:0; transition:all .25s ease; z-index:2; pointer-events:auto; }
.poa-panel--visible { transform:translateY(0); opacity:1; }
.poa-close { position:absolute; right:12px; top:12px; border:none; background:transparent; font-size:18px; cursor:pointer; z-index:15; }
.poa-tabs { display:flex; gap:8px; margin-bottom:12px; }
.poa-tab { padding:8px 12px; border-radius:8px; border:none; cursor:pointer; background:#f0f0f0; display:inline-flex; align-items:center; gap:6px; font-weight:500; }
.poa-tab .poa-tab-icon-svg { display:none; }
.poa-tab--active { /* Active tab uses theme palette color 3 */ background:var(--theme-palette-color-3, #111); color:#fff; position:relative; }
.poa-tab--active .poa-tab-icon-svg { display:inline-block; }
.poa-tab--active:hover { background:var(--theme-palette-color-1, #111); }
.poa-form label { display:block; margin-bottom:10px; font-size:14px; }
.poa-form input, .poa-form select { width:100%; padding:8px 10px; border-radius:8px; border:1px solid #ddd; box-sizing:border-box; }
.poa-form-actions { margin-top:12px; text-align:right; }
.poa-btn { padding:8px 14px; border-radius:10px; border:none; background:#111; color:#fff; cursor:pointer; }
.poa-field-group { margin:10px 0; }
.poa-field-label { font-size:13px; margin-bottom:6px; }
.poa-gender, .poa-age { display:flex; gap:8px; }
.poa-graphic-option { padding:10px; border-radius:8px; border:1px solid #ddd; background:#fff; cursor:pointer; font-size:16px; }
.poa-graphic-option.active { 
	/* Active gender/age option uses theme palette color 2 */
	border-color:var(--theme-palette-color-2, #111); 
	background:var(--theme-palette-color-2, #111); 
	color:#fff; 
	box-shadow:0 2px 6px rgba(0,0,0,0.18); 
}
/* Subtle logout link styling */
.poa-logout-link { 
	display:inline-block; 
	font-size:13px; 
	color:var(--theme-palette-color-3, #555); 
	text-decoration:none; 
	padding:6px 10px; 
	border-radius:6px; 
	transition:background .2s ease, color .2s ease; 
}
.poa-logout-link:hover { 
	background:rgba(0,0,0,0.05); 
	color:var(--theme-palette-color-3, #000); 
}
.poa-form-msg { margin-top:8px; color:#b00020; }
.poa-form-msg.success { color:#0c7a32; }
.poa-form-msg.error { color:#b00020; }
.poa-invalid input,
.poa-invalid select,
.poa-invalid textarea { border-color:#c0392b !important; box-shadow:0 0 0 1px #c0392b inset; }
.poa-invalid .poa-field-label { color:#c0392b; }
.poa-invalid .poa-graphic-option { border-color:#c0392b; }
.poa-field-group .poa-graphic-option.poa-invalid-choice { outline:2px solid #c0392b; }

/* Account menu icon */
.poa-account-icon { display:inline-flex; align-items:center; justify-content:center; padding:6px 10px; gap:4px; }
.poa-account-icon__inner { display:inline-flex; width:20px; height:20px; line-height:1; }
.menu-item-account-icon > a { text-decoration:none; }
.menu-item-account-icon > a:hover .poa-account-icon__inner { color:var(--theme-palette-color-1, #111); }

/* Account view */
.poa-account-summary { font-size:14px; line-height:1.5; }
.poa-account-summary p { margin:4px 0; }
.poa-account-actions { display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.poa-btn--outline { background:#fff; color:#111; border:1px solid #111; }
.poa-btn--outline:hover { background:#111; color:#fff; }
.poa-btn--danger { background:#c0392b; }
.poa-btn--danger:hover { background:#962d22; }
.poa-account-icon-inline { display:inline-flex; align-items:center; justify-content:center; color:inherit; text-decoration:none; }
.poa-account-icon-inline svg { display:block; }
.poa-floating-login:hover { filter:brightness(1.15); }

/* Icône dans le menu - style original adapté */
.menu-item-account-icon {
    display: flex;
    align-items: center;
}
.poa-menu-trigger { 
    display: inline-flex; 
    width: 42px; 
    height: 42px; 
    align-items: center; 
    justify-content: center; 
    border-radius: 50%; 
    background: #000; 
    color: #fff; 
    text-decoration: none; 
    border: 1px solid rgba(255,255,255,0.08); 
    box-shadow: 0 4px 14px rgba(0,0,0,0.25); 
    transition: color .25s ease, transform .2s ease, box-shadow .25s ease; 
}
.poa-menu-trigger:hover, 
.poa-menu-trigger:focus-visible { 
    background: #000; 
    color: var(--theme-palette-color-1, #ff6600); 
    transform: translateY(-2px); 
    box-shadow: 0 0 0 2px rgba(255,255,255,0.15); 
}
.poa-menu-trigger svg path, 
.poa-menu-trigger svg circle, 
.poa-menu-trigger svg line, 
.poa-menu-trigger svg rect { 
    stroke: currentColor; 
}
.poa-menu-trigger svg { 
    display: block; 
}

/* small responsive tweak */
@media (max-width:520px){ .poa-modal-panel{ margin:4vh 12px; } }
