/**  =====================
         Custom CSS
==========================  **/
@font-face {
	font-family: 'Norse';
	src: url('/assets/fonts/Norse.otf');
}
@font-face {
	font-family: 'Handwriting Style 1';
	src: url('/assets/fonts/HWS1.ttf');
}
@font-face {
	font-family: 'Handwriting Style 2';
	src: url('/assets/fonts/HWS2.ttf'), url('/assets/fonts/HWS2.otf');
}
@font-face {
	font-family: 'Help Me';
	src: url('/assets/fonts/HelpMe.ttf');
}
@font-face {
	font-family: 'Viking';
	src: url('/assets/fonts/VIKING-N.ttf');
}
.img-br {
	background-image: url("../images/Beyond-Ragnarok.jpg");
	background-size: cover;
	background-position: center;
	height: 100%;
	min-height: 150px;
}
.btn-add, .btn-remove, .count {
	min-width: 2rem !important;
	padding: 0;
}
.select2-container--default .select2-selection--single {
	border-radius: 0 !important;
	line-height: inherit !important;
	border: 1px solid #bec8d0 !important;
}
.select2-container--default .select2-selection--multiple {
	border-radius: 0 !important;
	line-height: inherit !important;
	border: 1px solid #bec8d0 !important;
}
.select2-selection--single {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.select2-selection--multiple {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.select2-selection__rendered {
	padding-top: 1.625rem !important;
	padding-bottom: 0.625rem !important;
	padding-left: 0.75rem !important;
}
#groupPane .select2-selection__rendered {
	padding-top: 0.625rem !important;
	padding-bottom: 0.625rem !important;
	padding-left: 0.75rem !important;
	border: none !important;
}
#groupPane .select2-container--default .select2-selection--single {
	border-radius: 0 !important;
	line-height: inherit !important;
	border: 0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: inherit !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
	line-height: inherit !important;
}
.select2-container .select2-selection--single {
	height: 100% !important;
}
.select2-container .select2-selection--multiple {
	height: 100% !important;
}
.select2-container {
	height: 100% !important;
	border-radius: 0;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 100% !important;
	right: 15px !important;
}
@keyframes onAutoFillStart {}
input:-webkit-autofill {
	animation-name: onAutoFillStart;
	animation-duration: 0.1s;
}
.skill-row > .input-group-text {
	font-size: 0.75rem !important;
}
.card-header {
	z-index: 3 !important;
}
/* Style Intro.js buttons with Bootstrap theme */
.introjs-button {
	border: none !important;
	border-radius: 0 !important;
	padding: 0.375rem 0.75rem !important;
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
	font-weight: 500 !important;
	box-shadow: none !important;
}
/* Primary "Next" button */
.introjs-nextbutton {
	background-color: var(--bs-success-bg-subtle) !important;
	color: #2ca87f !important;
}
.introjs-nextbutton:hover {
	background: #2ca87f !important;
	color: #fff !important;
	border-color: #2ca87f !important;
}
.introjs-nextbutton.focus, .introjs-nextbutton:focus {
	background: #2ca87f !important;
	color: #fff !important;
	border-color: #2ca87f !important;
	box-shadow: none !important;
}
/* "Back" button */
.introjs-prevbutton {
	background: #fce9e9 !important;
	color: #dc2626 !important;
	border-color: #fce9e9 !important;
	box-shadow: none !important;
}
.introjs-prevbutton:hover {
	background: #dc2626 !important;
	color: #fff !important;
	border-color: #dc2626 !important;
}
.introjs-prevbutton.focus, .introjs-prevbutton:focus {
	background: #dc2626 !important;
	color: #fff !important;
	border-color: #dc2626 !important;
	box-shadow: none !important;
}
/* "Skip" button */
.introjs-skipbutton {
	background-color: transparent !important;
	color: var(--bs-warning-bg-subtle) !important;
}
.introjs-skipbutton {
	background: transparent !important;
	color: #e58a00 !important;
	border-color: #fcf3e6 !important;
}
.introjs-skipbutton:hover {
	background: transparent !important;
	color: #fcf3e6 !important;
	border-color: #e58a00 !important;
}
.introjs-skipbutton.focus, .introjs-skipbutton:focus {
	background: transparent !important;
	color: #fcf3e6 !important;
	border-color: #e58a00 !important;
}
/* "Done" button */
.introjs-donebutton {
	background: #edf2ff !important;
	color: #4680ff !important;
	border-color: #edf2ff !important;
	box-shadow: none !important;
}
.introjs-donebutton:hover {
	background: #4680ff !important;
	color: #fff !important;
	border-color: #4680ff !important;
}
.introjs-donebutton.focus, .introjs-donebutton:focus {
	background: #4680ff !important;
	color: #fff !important;
	border-color: #4680ff !important;
	box-shadow: none !important;
}
@keyframes introPulse {
	0% {
		box-shadow: 0 0 0 5000px rgba(0, 0, 0, 0.5), inset 0 0 0 0 rgba(var(--bs-primary-rgb), 0.4);
	}
	50% {
		box-shadow: 0 0 0 5000px rgba(0, 0, 0, 0.5), inset 0 0 10px 6px rgba(var(--bs-primary-rgb), 0.6);
	}
	100% {
		box-shadow: 0 0 0 5000px rgba(0, 0, 0, 0.5), inset 0 0 0 0 rgba(var(--bs-primary-rgb), 0.4);
	}
}
.intro-bootstrap-style {
	border-radius: 0 !important;
	outline: solid 2px #4680ff !important;
	animation: introPulse 2s infinite ease-in-out !important;
	transition: all 0.3s ease-in-out !important;
}
.note-editor button {
	border-radius: 0 !important;
}
/* Restrict fullscreen mode to #appContent area */
#mainScreen .note-editor.note-frame.fullscreen {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1050;
}
.ft-sidebar {
	background: var(--ft-sidebar-background);
	width: 280px;
	position: fixed;
	top: 0;
	bottom: 0;
	z-index: 1026;
	overflow: hidden;
	box-shadow: var(--ft-sidebar-shadow);
	border-right: var(--ft-sidebar-border);
}
.ft-sidebar .navbar-wrapper {
	width: 280px;
}
.ft-sidebar ul {
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}
.ft-sidebar .ft-caption {
	color: var(--ft-sidebar-caption-color);
	display: block;
	padding: 24px 23px 8px !important;
	text-transform: uppercase;
	position: relative;
	line-height: 1.66;
	font-size: 11px;
	font-weight: 600;
}
.ft-sidebar .ft-caption:first-child {
	padding-top: 10px !important;
}
.ft-sidebar .ft-caption:first-child::after {
	display: none;
}
.ft-sidebar .ft-caption svg, .ft-sidebar .ft-caption i {
	display: none;
}
.ft-sidebar .ft-caption label {
	margin-bottom: 0;
}
.ft-sidebar .ft-caption span:not(.badge) {
	display: block;
	color: #67758a;
	font-size: 14px;
	font-weight: 500;
}
.ft-sidebar .ft-micon {
	margin-right: 15px;
	height: 24px;
	width: 24px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
.ft-sidebar .ft-micon i {
	font-size: 18px;
	vertical-align: super;
}
.ft-sidebar .ft-micon i.material-icons-two-tone {
	font-size: 22px;
	display: inline-block;
}
.ft-sidebar .ft-micon > svg {
	width: 22px;
	height: 22px;
	display: inline-block;
}
.ft-sidebar .ft-link {
	display: block;
	padding: 14px 20px;
	color: var(--ft-sidebar-color);
	position: relative;
	font-size: 14px;
	font-weight: 400;
}
.ft-sidebar .ft-link:focus, .ft-sidebar .ft-link.active, .ft-sidebar .ft-link:hover {
	text-decoration: none;
}
.ft-sidebar .ft-navbar > .ft-item {
	margin: 0 10px;
}
.ft-sidebar .ft-navbar > .ft-item > .ft-link::after {
	content: "";
	/*border-radius: var(--bs-border-radius);*/
	position: absolute;
	top: 2px;
	right: 2px;
	left: 2px;
	bottom: 2px;
	opacity: 0.1;
}
.ft-sidebar .ft-navbar > .ft-item.active > .ft-link {
	font-weight: 500;
	color: var(--ft-sidebar-active-color);
}
.ft-sidebar .ft-navbar > .ft-item.active > .ft-link:after {
	background: var(--ft-sidebar-active-color);
}
.ft-sidebar .ft-navbar > .ft-item:hover:not(.active) > .ft-link:after {
	background: var(--ft-sidebar-color);
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item > .ft-link:after {
	content: "";
	/*border-radius: 50%;*/
	position: absolute;
	top: 20px;
	width: 5px;
	height: 5px;
	background: var(--ft-sidebar-color);
	opacity: 0.5;
	transition: all 0.08s cubic-bezier(0.37, 0.24, 0.53, 0.99);
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item.ft-trigger > .ft-link, .ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item.active > .ft-link {
	font-weight: 500;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item.ft-trigger > .ft-link:after, .ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item.active > .ft-link:after {
	background: var(--ft-sidebar-active-color);
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item.ft-trigger > .ft-link:after, .ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item.active > .ft-link:after, .ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item:focus > .ft-link:after, .ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-item:hover > .ft-link:after {
	opacity: 1;
	transform: scale(1.2);
	background: var(--ft-sidebar-active-color);
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu:after {
	left: 30px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-link {
	padding: 12px 30px 12px 60px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-link:after {
	left: 28px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-submenu:after {
	left: 46px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-submenu .ft-link {
	padding: 12px 30px 12px 80px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-submenu .ft-link:after {
	left: 62px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-submenu .ft-submenu:after {
	left: 63px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-submenu .ft-submenu .ft-link {
	padding: 12px 30px 12px 95px;
}
.ft-sidebar .ft-navbar > .ft-item .ft-submenu .ft-submenu .ft-submenu .ft-link:after {
	left: 79px;
}
.ft-sidebar .ft-item.disabled a {
	cursor: not-allowed;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}
.ft-sidebar .ft-arrow {
	float: right;
	display: inline-block;
	transition: all 0.2s ease-in-out;
	position: relative;
}
.ft-sidebar .ft-arrow::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.ft-sidebar .ft-arrow > svg {
	width: 14px;
	height: 14px;
}
.ft-sidebar .ft-badge {
	margin-right: 5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	font-size: 10px;
	line-height: 1;
	float: right;
	background: var(--bs-primary);
}
.ft-sidebar .m-header {
	height: 74px;
	display: flex;
	align-items: center;
	padding: 16px 24px;
}
.ft-sidebar .m-header .logo-sm {
	display: none;
}
.ft-sidebar .m-header .logo-lg {
	height: 2rem;
}
.ft-h-item .logo-lg {
	width: 4rem;
}
.ft-sidebar .navbar-content {
	position: relative;
	height: calc(100vh - 74px);
	padding: 10px 0;
}
.ft-sidebar .card {
	box-shadow: var(--bs-card-box-shadow);
	margin: 15px;
}
.ft-sidebar .card.ft-user-card {
	margin: 0 15px 15px;
	box-shadow: none;
	background: var(--ft-sidebar-user-background);
}
.ft-sidebar .card.ft-user-card .card-body {
	padding: 20px;
}
.ft-sidebar .card.ft-user-card .ft-user-links a {
	display: flex;
	align-items: center;
	color: var(--ft-sidebar-color);
	padding: 8px 0px;
}
.ft-sidebar .card.ft-user-card .ft-user-links a i {
	font-size: 18px;
	margin-right: 10px;
}
.ft-sidebar .card.ft-user-card .ft-user-links a:focus, .ft-sidebar .card.ft-user-card .ft-user-links a:hover {
	color: var(--ft-sidebar-active-color);
}
.ft-sidebar .ft-hasmenu:not(.ft-trigger) > .ft-submenu {
	display: none;
}
.ft-sidebar .ft-hasmenu.ft-trigger > .ft-submenu {
	display: block;
}
.ft-sidebar .ft-hasmenu.ft-trigger > .ft-link > .ft-arrow {
	transform: rotate(90deg);
}
.ft-menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 1;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	background: rgba(0, 0, 0, 0.15);
}
[data-ft-sidebar-caption=false] .ft-sidebar .ft-caption {
	display: none;
}
@media (min-width: 1025px) {
	.navbar-overlay .ft-sidebar.ft-over-menu-active .navbar-wrapper {
		position: relative;
		z-index: 5;
	}
	.navbar-overlay .ft-sidebar:not(.ft-over-menu-active) {
		left: -280px;
		box-shadow: none;
	}
	.ft-sidebar {
		transition: width 0.2s ease;
	}
	.ft-sidebar ~ .ft-header {
		transition: left 0.2s ease;
	}
	.ft-sidebar ~ .ft-footer, .ft-sidebar ~ .ft-container {
		transition: margin-left 0.2s ease;
	}
	.ft-sidebar.ft-sidebar-hide {
		width: 0;
		--ft-sidebar-border: none;
	}
	.ft-sidebar.ft-sidebar-hide ~ .ft-header {
		left: 0;
	}
	.ft-sidebar.ft-sidebar-hide ~ .ft-footer, .ft-sidebar.ft-sidebar-hide ~ .ft-container {
		margin-left: 0px;
	}
	.ft-header .ft-h-item.ft-sidebar-popup {
		display: none;
	}
}
@media (max-width: 1024px) {
	.ft-header .ft-h-item.ft-sidebar-collapse {
		display: none;
	}
	.ft-sidebar {
		left: -280px;
		box-shadow: none;
		background: var(--bs-body-bg);
		top: 0;
		transition: all 0.2s ease-in-out;
	}
	.ft-sidebar.mob-sidebar-active {
		left: 0;
	}
	.ft-sidebar.mob-sidebar-active .navbar-wrapper {
		position: relative;
		z-index: 5;
		background: inherit;
	}
}
/* === FolderTree override styles === */
#folderTree.ft-sidebar {
	position: static; /* remove any fixed positioning from sidebar version */
	width: 100%; /* expand to parent card width */
	height: auto; /* let height fit content */
	background: transparent !important;
	box-shadow: none;
	overflow: visible;
	padding: 0;
}
/* Reduce indentation for nested folders inside the card */
#folderTree .ft-submenu {
	margin-left: 0.75rem !important; /* default sidebar uses more space; this reduces nesting */
}
/* Make nested links more compact */
#folderTree .ft-link {
	padding: 4px 0px !important;
	font-size: 0.95rem;
	background-color: #FFFFFF;
	transition: all ease-in-out 0.2s;
}
/* Submenu transition and border cleanup */
#folderTree .ft-submenu {
	border-left: 1px solid rgba(0, 0, 0, 0.05);
	padding-left: 0.5rem;
}
/* Optional: slightly adjust icons to align with text in a card */
#folderTree .ft-micon {
	margin-right: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
/* Optional: better hover feedback inside the card */
#folderTree .ft-link:hover {
	background-color: #edf2ff;
	transition: all ease-in-out 0.2s;
}
.input-group * {
	border-radius: 0 !important;
}
.note-editor.note-airframe.fullscreen, .note-editor.note-frame.fullscreen {
	top: 79px !important;
}
.s-file {
	background-color: #FFFFFF;
	transition: all ease-in-out 0.2s;
}
.s-file:hover {
	background-color: #edf2ff;
	transition: all ease-in-out 0.2s;
}
.input-group .spinner-border {
	border-radius: 50% !important;
}
#tblEncounter thead th {
	background: none !important;
	font-weight: 500 !important;
}
.tbl-logo {
	/*	max-height: 1.25cm !important; */
	max-height: 45px !important;
	height: 45px !important;
}
span[data-field="eOverview"] p, span[data-field="eProps"] p, span[data-field="eOverview"] p, div[data-field="mStats"] p, div[data-field="mBrief"] p {
	font-size: 12px !important;
	margin-bottom: 6px !important;
}
@media print {
	@page {
		size: A4 portrait;
	}
	.body {
		width: 100% !important;
	}
	.page-break {
		break-before: page;
		page-break-before: always;
	}
	.card {
		border: 0 !important;
	}
}
.plotlineTable th:first-child, .plotlineTable td:first-child {
	min-width: 400px !important;
}
.react-bounce {
	transform: scale(1.15);
	transition: transform 0.15s ease;
}
.directionView p, .resourceView p {
	font-size: 12px !important;
	margin-bottom: 3px !important;
}
/* Ensure each direction item can stretch */
.direction-item > .d-flex {
	align-items: stretch;
}
/* Icon + vertical line container */
.timeline-rail {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%; /* FULL HEIGHT of direction item */
	width: 28px; /* consistent column width */
}
/* Icon itself */
.timeline-icon {
	line-height: 1;
	z-index: 1;
}
/* Vertical connector line */
.timeline-line {
	flex: 1; /* fills remaining height */
	width: 2px;
	margin-top: 6px;
	background-color: rgba(0, 0, 0, 0.25);
}
.drag-handle {
	cursor: grab;
}
.sortable-chosen .drag-handle {
	cursor: grabbing;
}
.sortable-ghost {
	opacity: .35;
}
#previewPane p, .note-editor p {
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
/* Preview pane and Summernote content */
#previewPane .resource-ul, .note-editor .resource-ul {
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
/* If any <p> still sneak in, kill their margins inside list items */
#previewPane li p, .note-editor li p {
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
/* Summernote editable area */
.note-editable li > p {
	display: inline !important; /* stops the "new line under bullet" effect */
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
/* If Summernote wraps content in divs/spans inside li */
.note-editable li > div, .note-editable li > span {
	display: inline;
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
/* Keep nested lists indented 1 level, but separated nicely */
.note-editable li > ul, .note-editable li > ol {
	display: block;
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
.resource-item li {
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
.note-editable li {
	font-size: 12px !important;
	margin-bottom: 3px !important;
	margin-top: 3px !important;
}
.sensitive.masked {
	filter: blur(6px);
	user-select: none;
	cursor: pointer;
}
/* ============================
   A4 Print Preview (NO SCALE)
   Multi-page (#printPages > .print-page)
   Fixes:
   - no huge header gap
   - bottom breathing room
   - prevents blank extra page (rounding safety)
   ============================ */

/* Tweak these in one place */
:root{
  --page-pad: 12mm;          /* page padding */
  --header-gap: 4mm;         /* space under header */
  --bottom-safe: 4mm;        /* extra breathing room at bottom */
}

/* Scroll container (screen only) */
.printPreview-wrap{
  width: 100%;
  height: calc(100vh - 1rem);
  overflow: auto;
  padding: 1rem;
  background: #e9e9e9;
  box-sizing: border-box;
}

/* Pages container */
#printPages{ display:block; }

/* One A4 page */
.print-page{
  width: 210mm !important;
  height: 297mm !important;
  min-width: 210mm !important;
  min-height: 297mm !important;
  max-width: none !important;
  max-height: none !important;

  box-sizing: border-box !important;
  background: #fff;

  margin: 0 auto 12px auto;
  padding: var(--page-pad) !important;

  box-shadow: 0 0 12px rgba(0,0,0,0.2);
  flex: 0 0 auto !important;

  /* Helps stop margin-collapsing surprises */
  overflow: hidden;
}

/* Header (NO margin-bottom — we’ll handle spacing via content padding) */
.print-page .page-header,
.print-page .print-page-header{
  width: 100%;
  display: block;
  box-sizing: border-box;

  margin: 0 !important;              /* IMPORTANT */
  padding: 0 !important;

  text-align: right !important;
  color: #6c757d;
  font-size: 10px !important;
  line-height: 1.2;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*
  Content area
  - JS sets a height inline
  - We add top padding for header gap
  - We add bottom padding as safety/breathing room
*/
.print-page .page-content{
  overflow: hidden; /* critical for pagination */
  box-sizing: border-box;

  padding-top: var(--header-gap);
  padding-bottom: var(--bottom-safe);
}

/* Images */
.print-page img{
  max-width: 100% !important;
  height: auto !important;
  display: block;
}

/* Print rules */
@media print{
  *{
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  html, body{
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .printPreview-wrap{
    height: auto !important;
    overflow: visible !important;
    padding: 0 !important;
    background: transparent !important;
  }

  #printPages{
    margin: 0 !important;
    padding: 0 !important;
  }

  .print-page{
    margin: 0 !important;
    box-shadow: none !important;

    /* Page breaks */
    break-after: page;
    page-break-after: always;
  }

  .print-page:last-of-type{
    break-after: auto !important;
    page-break-after: auto !important;
  }

  @page{
    size: A4 portrait;
    margin: 0;
  }
}

/* Bootstrap backdrop is 1050; modal is 1055 */
.note-modal, .note-dialog, .note-popover, .note-tooltip, .note-dropdown-menu {
	z-index: 9999 !important;
}
/* ===============================
   Summernote — Plain text until focus
   Scoped to Ref Dashboard only
   =============================== */

.page-ref-dashboard .note-editor {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  transition: background-color 0.15s ease;
}

/* Editable area looks like text */
.page-ref-dashboard .note-editable {
  background: transparent !important;
  padding: 0 !important;
  min-height: auto !important;
  max-height: 120px;
  overflow-y: auto;
  cursor: text;
}

/* Hide resize bar */
.page-ref-dashboard .note-resizebar {
  display: none !important;
}

/* Remove focus chrome */
.page-ref-dashboard .note-editor *:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* 🔥 When focused: become an editor */
.page-ref-dashboard .note-editor:has(.note-editable:focus) {
  background: #ffffff !important;
  border: 1px solid #dee2e6 !important;
  padding: 6px !important;
  border-radius: 0;
}

/* Restore padding only when focused */
.page-ref-dashboard .note-editor:has(.note-editable:focus) .note-editable {
  padding: 6px 8px !important;
}
/* LAMMIES */ #archtype-lammie {
	display: flex;
	overflow-x: auto;
	overflow-y: hidden;
	justify-content: flex-start;
}
@media (min-width: 12cm) {
	#archtype-lammie {
		justify-content: center;
	}
}
#archtype-lammie .lammie {
	flex: 0 0 auto;
	min-width: 6cm;
	max-width: 6cm;
	min-height: 8.5cm;
	max-height: 8.5cm;
	background-color: white;
	display: flex;
	flex-direction: column;
}
#archtype-lammie .lammie:first-of-type {
	border-right: 1px solid black;
}
#archtype-lammie .lammie p {
	font-size: 11px;
	margin-bottom: 10px;
}
#archtype-lammie .lammie h5 {
	text-align: center;
	margin-bottom: 11px;
	font-size: 16px;
}
#archtype-lammie .lammie h6 {
	text-align: center;
	font-size: 14px;
}
#archtype-lammie .lammie-header {
	width: 100%;
	border-bottom: solid black 1pt;
	text-align: center;
	font-size: 10px;
	padding-bottom: 11px;
	padding-top: 11px;
	margin-bottom: 11px;
}
#archtype-lammie .lammie-body {
	width: 100%;
	height: 100%;
	padding: 0.25cm;
}
#archtype-lammie .lammie-watermark {
	position: relative;
	overflow: hidden;
}
#archtype-lammie .lammie-watermark::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url('../../assets/images/br-logo.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 150px auto;
	opacity: 0.05;
	pointer-events: none;
	z-index: 0;
}
#archtype-lammie .punch-box {
	padding: 0.5rem;
	border: solid 1px black;
	margin-top: 11px;
	font-size: 20px;
	display: inline-block;
	min-width: 1cm;
}
#archtype-lammie .punch-box:not(:last-child) {
	margin-right: 0.75cm;
}
@media print {
	body {
        zoom: 95%;  /* Shrink to 92% */
    }

    /* Standards-based fallback */
    body {
        transform: scale(0.95);
        transform-origin: top center;
    }
    @page {
        size: auto;              /* Keep default page size (A4, Letter, etc.) */
        margin: 2mm 0 0 0;       /* top right bottom left */
    }
}