/* AIC Editor Notices — banner pinned to the top of the screen (brand dark #101820, gold #F0D351). */
.aicn {
	position: fixed; z-index: 99980;
	top: 16px; left: 50%;
	width: min(560px, calc(100vw - 24px));
	display: flex; align-items: flex-start; gap: 12px;
	padding: 14px 44px 14px 16px;
	box-sizing: border-box;
	background: var(--aic-fg, #101820); color: #F3F3F3;
	border-top: 3px solid var(--aic-gold, #F0D351);
	box-shadow: 0 14px 40px rgba(16, 24, 32, .32);
	font-family: Manrope, system-ui, -apple-system, "Segoe UI", sans-serif;
	opacity: 0; transform: translate(-50%, -10px);
	transition: opacity .2s ease, transform .2s ease;
}
.aicn[hidden] { display: none; }
.aicn.is-in { opacity: 1; transform: translate(-50%, 0); }
.aicn__msg { margin: 1px 0 0; font-size: 15px; line-height: 1.45; }
.aicn__close {
	position: absolute; top: 6px; right: 6px;
	width: 34px; height: 34px; padding: 0;
	display: inline-flex; align-items: center; justify-content: center;
	background: none; border: 0; border-radius: 0; color: #9DA3AB;
	font-size: 22px; line-height: 1; cursor: pointer;
}
.aicn__close:focus-visible { outline: 2px solid var(--aic-gold, #F0D351); outline-offset: 1px; }
@media (hover: hover) { .aicn__close:hover { color: #fff; } }

.aicn__icon { flex: none; width: 20px; height: 20px; margin-top: 1px; box-sizing: border-box; }
.aicn--info .aicn__icon {
	border: 2px solid rgba(243, 243, 243, .25); border-top-color: var(--aic-gold, #F0D351); border-radius: 50%;
	animation: aicn-spin .8s linear infinite;
}
.aicn--success .aicn__icon {
	background: var(--aic-gold, #F0D351);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.5l4 4 8-9' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='square'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.5l4 4 8-9' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='square'/%3E%3C/svg%3E") center / contain no-repeat;
}
.aicn--error { background: #fff; color: #3A1410; border-top-color: #B32D2E; }
.aicn--error .aicn__icon { background: #B32D2E; border-radius: 50%; position: relative; }
.aicn--error .aicn__icon::after { content: "!"; position: absolute; inset: 0; color: #fff; font: 700 13px/20px Manrope, system-ui, sans-serif; text-align: center; }
.aicn--error .aicn__close { color: #7A746A; }
@media (hover: hover) { .aicn--error .aicn__close:hover { color: #101820; } }

@keyframes aicn-spin { to { transform: rotate(360deg); } }
@media (max-width: 600px) { .aicn { top: 10px; padding: 12px 42px 12px 14px; } .aicn__msg { font-size: 14px; } }
@media (prefers-reduced-motion: reduce) { .aicn { transition: none; } .aicn--info .aicn__icon { animation-duration: 2.4s; } }
