	:root {
		--ctw-navy: #17233f;
		--ctw-navy-2: #253451;
		--ctw-paper: #f4f0e4;
		--ctw-ivory: #fcfaf4;
		--ctw-gold: #b99a4a;
		--ctw-gold-light: #d7c17a;
		--ctw-text: #252629;
		--ctw-muted: #697087;
		--ctw-shadow: 0 24px 70px rgba(9, 18, 38, .22);
	}

	* {
		box-sizing: border-box;
	}

	.ctw-cabinet-standalone {
		margin: 0 !important;
		min-width: 320px;
		background: var(--ctw-navy);
		overflow-x: hidden;
	}

	.ctw-cabinet-root,
	.ctw-cabinet-root button,
	.ctw-cabinet-root input,
	.ctw-cabinet-root select {
		font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	}

	.ctw-cabinet-root {
		position: relative;
		isolation: isolate;
		min-height: 100dvh;
		color: var(--ctw-text);
		background: var(--ctw-paper);
		overflow: hidden;
	}

	.ctw-cabinet-root::before {
		content: "";
		position: fixed;
		inset: 0;
		z-index: -2;
		background: radial-gradient(circle at 20% 8%, rgba(215, 193, 122, .22), transparent 32%), radial-gradient(circle at 85% 75%, rgba(23, 35, 63, .13), transparent 38%), linear-gradient(135deg, #f8f4e9, #ebe4d2);
	}

	.ctw-cabinet-root::after {
		content: "";
		position: fixed;
		inset: 0;
		z-index: -1;
		pointer-events: none;
		opacity: .34;
		background-image: repeating-linear-gradient(0deg, rgba(23, 35, 63, .025) 0, rgba(23, 35, 63, .025) 1px, transparent 1px, transparent 5px), radial-gradient(rgba(23, 35, 63, .07) .65px, transparent .65px);
		background-size: auto, 8px 8px;
	}

	.ctw-cabinet-noscript {
		padding: 40px;
		text-align: center;
	}

	.ctw-cabinet-app {
		min-height: 100dvh;
		display: flex;
		flex-direction: column;
	}

	.ctw-topbar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		min-height: 66px;
		padding: 12px max(22px, env(safe-area-inset-left));
		border-bottom: 1px solid rgba(23, 35, 63, .12);
		background: rgba(252, 250, 244, .82);
		backdrop-filter: blur(14px);
		position: relative;
		z-index: 20;
	}

	.ctw-brand {
		display: flex;
		align-items: center;
		gap: 10px;
		color: var(--ctw-navy);
		font-weight: 700;
		letter-spacing: .02em;
	}

	.ctw-brand small {
		display: block;
		color: #7c7157;
		font-size: 9px;
		letter-spacing: .13em;
		text-transform: uppercase;
	}

	.ctw-topbar__meta {
		font-size: 11px;
		font-weight: 700;
		color: #79715f;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.ctw-main {
		flex: 1;
		display: grid;
		place-items: stretch;
		min-height: 0;
	}

	.ctw-screen {
		display: none;
		min-height: calc(100dvh - 66px);
		animation: ctwFade .38s ease both;
	}

	.ctw-screen.is-active {
		display: grid;
	}

	.ctw-shell {
		width: min(1180px, 100%);
		margin: auto;
		padding: clamp(20px, 4vw, 54px) max(20px, env(safe-area-inset-left)) max(24px, calc(env(safe-area-inset-bottom) + 24px));
	}

	.ctw-shell--center {
		display: grid;
		place-items: center;
		text-align: center;
	}

	.ctw-eyebrow {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		margin-bottom: 14px;
		color: #7b6428;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .16em;
		text-transform: uppercase;
	}

	.ctw-eyebrow::before,
	.ctw-eyebrow::after {
		content: "";
		width: 28px;
		height: 1px;
		background: var(--ctw-gold);
	}

	.ctw-title {
		margin: 0;
		color: var(--ctw-navy);
		font: 700 clamp(40px, 6vw, 78px)/.98 Georgia, "Times New Roman", serif;
		letter-spacing: -.035em;
		text-wrap: balance;
	}

	.ctw-lead {
		max-width: 760px;
		margin: 20px auto 0;
		color: #545b6c;
		font-size: clamp(16px, 2vw, 21px);
		line-height: 1.65;
		text-wrap: balance;
	}

	.ctw-actions {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
		margin-top: 30px;
	}

	.ctw-btn {
		min-height: 48px;
		padding: 0 20px;
		border: 1px solid transparent;
		border-radius: 999px;
		background: var(--ctw-navy);
		color: #fff;
		cursor: pointer;
		font-size: 14px;
		font-weight: 750;
		letter-spacing: .01em;
		transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
	}

	.ctw-btn:hover {
		transform: translateY(-2px);
		box-shadow: 0 12px 28px rgba(23, 35, 63, .22);
	}

	.ctw-btn:focus-visible,
	.ctw-option:focus-visible,
	.ctw-flip-control:focus-visible {
		outline: 3px solid var(--ctw-gold-light);
		outline-offset: 3px;
	}

	.ctw-btn--gold {
		background: linear-gradient(135deg, var(--ctw-gold-light), var(--ctw-gold));
		color: var(--ctw-navy);
		box-shadow: 0 14px 34px rgba(185, 154, 74, .24);
	}

	.ctw-btn--ghost {
		border-color: rgba(23, 35, 63, .22);
		background: transparent;
		color: var(--ctw-navy);
	}

	.ctw-btn--light {
		background: var(--ctw-ivory);
		color: var(--ctw-navy);
	}

	.ctw-hero {
		display: grid;
		grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
		align-items: center;
		gap: clamp(30px, 5vw, 70px);
	}

	.ctw-hero__copy {
		text-align: left;
	}

	.ctw-hero__copy .ctw-title {
		max-width: 760px;
	}

	.ctw-hero__copy .ctw-lead {
		margin-left: 0;
	}

	.ctw-hero__copy .ctw-actions {
		justify-content: flex-start;
	}

	.ctw-hero-art {
		position: relative;
		min-height: 480px;
		border-radius: 28px;
		overflow: hidden;
		background: linear-gradient(145deg, var(--ctw-navy), #314261);
		box-shadow: var(--ctw-shadow);
	}

	.ctw-hero-art::before {
		content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(180deg, transparent 45%, rgba(8, 17, 35, .72)), radial-gradient(circle at 50% 10%, rgba(215, 193, 122, .22), transparent 40%);
	}

	.ctw-room {
		position: absolute;
		inset: 0;
	}

	.ctw-room__window {
		position: absolute;
		left: 10%;
		right: 10%;
		top: 8%;
		height: 36%;
		border: 8px solid rgba(244, 240, 228, .08);
		background: linear-gradient(180deg, #2c3d5c, #1d2c47);
		box-shadow: inset 0 0 0 2px rgba(215, 193, 122, .3);
	}

	.ctw-room__flag {
		position: absolute;
		top: 14%;
		left: 50%;
		width: 8px;
		height: 110px;
		background: var(--ctw-gold);
		transform: translateX(-50%);
	}

	.ctw-room__flag::before {
		content: "C";
		position: absolute;
		top: 4px;
		left: 8px;
		display: grid;
		place-items: center;
		width: 64px;
		height: 48px;
		background: #f0e7cc;
		color: var(--ctw-navy);
		font: 800 22px Georgia, serif;
		clip-path: polygon(0 0, 100% 0, 82% 100%, 0 85%);
	}

	.ctw-room__table {
		position: absolute;
		left: 4%;
		right: 4%;
		bottom: 13%;
		height: 30%;
		border-radius: 50% 50% 16% 16%;
		background: linear-gradient(180deg, #c2a15b, #806025);
		box-shadow: 0 28px 50px rgba(0, 0, 0, .35), inset 0 6px rgba(255, 255, 255, .14);
		transform: perspective(500px) rotateX(57deg);
	}

	.ctw-room__people {
		position: absolute;
		left: 9%;
		right: 9%;
		bottom: 25%;
		display: flex;
		justify-content: space-between;
	}

	.ctw-person {
		position: relative;
		width: 54px;
		height: 78px;
		border-radius: 28px 28px 10px 10px;
		background: #e8dcc0;
		box-shadow: 0 8px 18px rgba(0, 0, 0, .18);
	}

	.ctw-person::before {
		content: "";
		position: absolute;
		left: 11px;
		top: -23px;
		width: 32px;
		height: 32px;
		border-radius: 50%;
		background: #d8af86;
		border: 4px solid rgba(23, 35, 63, .75);
	}

	.ctw-person:nth-child(even) {
		background: #566988;
	}

	.ctw-person:nth-child(3n) {
		background: #a9854b;
	}

	.ctw-hero-card {
		position: absolute;
		right: 7%;
		bottom: 6%;
		width: 58%;
		padding: 18px;
		border: 1px solid rgba(215, 193, 122, .42);
		border-radius: 18px;
		background: rgba(252, 250, 244, .94);
		color: var(--ctw-navy);
		box-shadow: 0 18px 42px rgba(0, 0, 0, .3);
		transform: rotate(-2deg);
	}

	.ctw-hero-card small {
		display: block;
		color: #8a7135;
		font-size: 9px;
		font-weight: 800;
		letter-spacing: .12em;
		text-transform: uppercase;
	}

	.ctw-hero-card strong {
		display: block;
		margin-top: 5px;
		font: 700 21px Georgia, serif;
	}

	.ctw-modal {
		position: fixed;
		inset: 0;
		z-index: 100;
		display: none;
		place-items: center;
		padding: 20px;
		background: rgba(9, 18, 38, .62);
		backdrop-filter: blur(8px);
	}

	.ctw-modal.is-open {
		display: grid;
	}

	.ctw-modal__dialog {
		width: min(520px, 100%);
		padding: 28px;
		border: 1px solid rgba(185, 154, 74, .45);
		border-radius: 22px;
		background: var(--ctw-ivory);
		box-shadow: var(--ctw-shadow);
	}

	.ctw-modal__dialog h2 {
		margin: 0 0 10px;
		color: var(--ctw-navy);
		font: 700 28px Georgia, serif;
	}

	.ctw-modal__dialog p {
		color: #5f6678;
		line-height: 1.6;
	}

	.ctw-profile-card {
		width: min(880px, 100%);
		display: grid;
		grid-template-columns: 300px minmax(0, 1fr);
		gap: 28px;
		padding: 28px;
		border: 1px solid rgba(23, 35, 63, .14);
		border-radius: 24px;
		background: rgba(252, 250, 244, .93);
		box-shadow: var(--ctw-shadow);
	}

	.ctw-profile-preview {
		display: grid;
		place-items: center;
		min-height: 360px;
		border-radius: 18px;
		background: linear-gradient(145deg, var(--ctw-navy), var(--ctw-navy-2));
		overflow: hidden;
		position: relative;
	}

	.ctw-profile-preview::after {
		content: "CANDIDATE";
		position: absolute;
		right: -34px;
		bottom: 30px;
		padding: 5px 42px;
		background: var(--ctw-gold);
		color: var(--ctw-navy);
		font-size: 10px;
		font-weight: 900;
		letter-spacing: .12em;
		transform: rotate(-38deg);
	}

	.ctw-profile-preview img {
		width: 72%;
		max-height: 88%;
		object-fit: contain;
		filter: drop-shadow(0 20px 24px rgba(0, 0, 0, .28));
	}

	.ctw-profile-form {
		text-align: left;
	}

	.ctw-profile-form h1 {
		margin: 0 0 8px;
		color: var(--ctw-navy);
		font: 700 38px Georgia, serif;
	}

	.ctw-profile-form p {
		color: #667083;
		line-height: 1.55;
	}

	.ctw-field {
		display: block;
		margin: 18px 0;
	}

	.ctw-field span {
		display: block;
		margin-bottom: 7px;
		color: var(--ctw-navy);
		font-size: 13px;
		font-weight: 750;
	}

	.ctw-field input[type=text],
	.ctw-field input[type=file] {
		width: 100%;
		min-height: 48px;
		padding: 10px 13px;
		border: 1px solid rgba(23, 35, 63, .2);
		border-radius: 12px;
		background: #fff;
		color: var(--ctw-text);
		font-size: 15px;
	}

	.ctw-avatar-options {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
	}

	.ctw-avatar-choice {
		position: relative;
	}

	.ctw-avatar-choice input {
		position: absolute;
		opacity: 0;
	}

	.ctw-avatar-choice label {
		display: grid;
		place-items: center;
		gap: 5px;
		min-height: 84px;
		border: 1px solid rgba(23, 35, 63, .18);
		border-radius: 13px;
		background: #fff;
		cursor: pointer;
		color: var(--ctw-navy);
		font-size: 12px;
		font-weight: 700;
		transition: .2s ease;
	}

	.ctw-avatar-choice input:checked+label {
		border-color: var(--ctw-gold);
		box-shadow: 0 0 0 3px rgba(185, 154, 74, .16);
		background: #fffaf0;
	}

	.ctw-avatar-choice img {
		width: 45px;
		height: 45px;
	}

	.ctw-story-card {
		position: relative;
		width: min(980px, 100%);
		padding: clamp(26px, 5vw, 58px);
		border: 1px solid rgba(185, 154, 74, .5);
		border-radius: 26px;
		background: rgba(252, 250, 244, .96);
		box-shadow: var(--ctw-shadow);
		text-align: left;
		overflow: hidden;
	}

	.ctw-story-card::before {
		content: "";
		position: absolute;
		inset: 14px;
		border: 1px solid rgba(23, 35, 63, .14);
		border-radius: 16px;
		pointer-events: none;
	}

	.ctw-story-card__seal {
		float: right;
		margin: 0 0 20px 25px;
		display: grid;
		place-items: center;
		width: 104px;
		height: 104px;
		border-radius: 50%;
		border: 2px solid var(--ctw-gold);
		background: radial-gradient(circle, #f8eab7, var(--ctw-gold));
		color: var(--ctw-navy);
		font: 800 46px Georgia, serif;
		box-shadow: inset 0 0 0 9px rgba(255, 255, 255, .22);
	}

	.ctw-story-card h1 {
		margin: 4px 0 16px;
		color: var(--ctw-navy);
		font: 700 clamp(34px, 5vw, 56px)/1.05 Georgia, serif;
	}

	.ctw-story-card p {
		max-width: 760px;
		color: #525a6c;
		font: 400 clamp(17px, 2vw, 22px)/1.75 Georgia, serif;
	}

	.ctw-story-card .ctw-actions {
		justify-content: flex-start;
	}

	.ctw-quiz-layout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 300px;
		gap: 30px;
		align-items: start;
	}

	.ctw-question-card {
		padding: clamp(24px, 4vw, 48px);
		border: 1px solid rgba(23, 35, 63, .14);
		border-radius: 24px;
		background: rgba(252, 250, 244, .96);
		box-shadow: var(--ctw-shadow);
	}

	.ctw-question-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
	}

	.ctw-question-number {
		color: var(--ctw-navy);
		font: 700 15px Georgia, serif;
	}

	.ctw-question-category {
		padding: 6px 10px;
		border-radius: 999px;
		background: #eee7d6;
		color: #776024;
		font-size: 10px;
		font-weight: 850;
		letter-spacing: .09em;
		text-transform: uppercase;
	}

	.ctw-progress {
		height: 8px;
		margin: 18px 0 34px;
		border-radius: 999px;
		background: #e5dfd0;
		overflow: hidden;
	}

	.ctw-progress__bar {
		height: 100%;
		width: 0;
		border-radius: inherit;
		background: linear-gradient(90deg, var(--ctw-gold), var(--ctw-gold-light));
		transition: width .35s ease;
	}

	.ctw-question-title {
		max-width: 850px;
		margin: 0 0 28px;
		color: var(--ctw-navy);
		font: 700 clamp(30px, 4vw, 50px)/1.14 Georgia, serif;
		letter-spacing: -.02em;
	}

	.ctw-options {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.ctw-option {
		display: flex;
		align-items: center;
		gap: 14px;
		min-height: 78px;
		padding: 14px 16px;
		border: 1px solid rgba(23, 35, 63, .15);
		border-radius: 15px;
		background: #fff;
		color: var(--ctw-navy);
		cursor: pointer;
		text-align: left;
		font-size: 15px;
		font-weight: 650;
		transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
	}

	.ctw-option:hover {
		transform: translateY(-2px);
		border-color: var(--ctw-gold);
		box-shadow: 0 10px 22px rgba(23, 35, 63, .08);
	}

	.ctw-option.is-selected {
		border-color: var(--ctw-gold);
		background: #fffbf2;
		box-shadow: 0 0 0 3px rgba(185, 154, 74, .14);
	}

	.ctw-option__key {
		display: grid;
		place-items: center;
		flex: 0 0 38px;
		width: 38px;
		height: 38px;
		border-radius: 50%;
		background: var(--ctw-navy);
		color: #fff;
		font: 700 15px Georgia, serif;
	}

	.ctw-question-footer {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-top: 24px;
	}

	.ctw-back {
		min-height: 42px;
		padding: 0 14px;
		border: 0;
		background: transparent;
		color: var(--ctw-navy);
		cursor: pointer;
		font-weight: 750;
	}

	.ctw-back[disabled] {
		opacity: .32;
		cursor: not-allowed;
	}

	.ctw-question-count {
		color: #777d8b;
		font-size: 12px;
		font-weight: 700;
	}

	.ctw-dossier {
		position: sticky;
		top: 88px;
		padding: 20px;
		border-radius: 18px;
		background: linear-gradient(155deg, var(--ctw-navy), var(--ctw-navy-2));
		color: #fff;
		box-shadow: var(--ctw-shadow);
	}

	.ctw-dossier__seal {
		display: grid;
		place-items: center;
		width: 58px;
		height: 58px;
		margin-bottom: 18px;
		border-radius: 50%;
		border: 1px solid var(--ctw-gold-light);
		background: var(--ctw-gold);
		color: var(--ctw-navy);
		font: 800 28px Georgia, serif;
	}

	.ctw-dossier h3 {
		margin: 0 0 8px;
		color: #fff;
		font: 700 22px Georgia, serif;
	}

	.ctw-dossier p {
		color: rgba(255, 255, 255, .65);
		font-size: 13px;
		line-height: 1.55;
	}

	.ctw-dossier dl {
		margin: 18px 0 0;
	}

	.ctw-dossier dl div {
		display: flex;
		justify-content: space-between;
		gap: 10px;
		padding: 8px 0;
		border-top: 1px solid rgba(255, 255, 255, .12);
		font-size: 12px;
	}

	.ctw-dossier dt {
		color: rgba(255, 255, 255, .58);
	}

	.ctw-dossier dd {
		margin: 0;
		font-weight: 700;
	}

	.ctw-processing {
		width: min(760px, 100%);
		padding: clamp(26px, 5vw, 52px);
		border-radius: 26px;
		background: var(--ctw-navy);
		color: #fff;
		box-shadow: var(--ctw-shadow);
		text-align: center;
	}

	.ctw-processing__folder {
		position: relative;
		width: 180px;
		height: 126px;
		margin: 0 auto 28px;
		border-radius: 8px 16px 12px 12px;
		background: linear-gradient(145deg, #d7c17a, #9b7d34);
		box-shadow: 0 16px 30px rgba(0, 0, 0, .26);
	}

	.ctw-processing__folder::before {
		content: "";
		position: absolute;
		left: 14px;
		top: -16px;
		width: 76px;
		height: 22px;
		border-radius: 8px 8px 0 0;
		background: #c4a652;
	}

	.ctw-processing__paper {
		position: absolute;
		left: 20px;
		right: 20px;
		top: 15px;
		height: 92px;
		border-radius: 6px;
		background: var(--ctw-ivory);
		box-shadow: 0 4px 10px rgba(0, 0, 0, .18);
		overflow: hidden;
	}

	.ctw-processing__paper::before {
		content: "";
		position: absolute;
		left: 16px;
		right: 16px;
		top: 22px;
		height: 40px;
		background: repeating-linear-gradient(180deg, #c9c3b5 0, #c9c3b5 2px, transparent 2px, transparent 10px);
	}

	.ctw-scanner {
		position: absolute;
		left: 10px;
		right: 10px;
		top: 0;
		height: 3px;
		background: #85e4ff;
		box-shadow: 0 0 14px #85e4ff;
		animation: ctwScan 1.3s ease-in-out infinite alternate;
	}

	.ctw-processing h1 {
		margin: 0;
		color: #fff;
		font: 700 clamp(30px, 5vw, 48px)/1.12 Georgia, serif;
	}

	.ctw-processing-list {
		max-width: 520px;
		margin: 28px auto 0;
		padding: 0;
		list-style: none;
		text-align: left;
	}

	.ctw-processing-list li {
		position: relative;
		margin: 10px 0;
		padding: 13px 16px 13px 48px;
		border: 1px solid rgba(255, 255, 255, .1);
		border-radius: 12px;
		background: rgba(255, 255, 255, .05);
		color: rgba(255, 255, 255, .48);
		transition: .25s ease;
	}

	.ctw-processing-list li::before {
		content: "";
		position: absolute;
		left: 17px;
		top: 50%;
		width: 15px;
		height: 15px;
		border: 2px solid rgba(255, 255, 255, .28);
		border-radius: 50%;
		transform: translateY(-50%);
	}

	.ctw-processing-list li.is-active {
		color: #fff;
		border-color: rgba(215, 193, 122, .35);
		background: rgba(215, 193, 122, .09);
	}

	.ctw-processing-list li.is-active::before {
		border-color: var(--ctw-gold-light);
		border-top-color: transparent;
		animation: ctwSpin .7s linear infinite;
	}

	.ctw-processing-list li.is-done {
		color: #e7dbb6;
	}

	.ctw-processing-list li.is-done::before {
		content: "✓";
		display: grid;
		place-items: center;
		border: 0;
		background: var(--ctw-gold);
		color: var(--ctw-navy);
		font-size: 10px;
		font-weight: 900;
	}

	.ctw-processing__ready {
		display: none;
		margin-top: 28px;
	}

	.ctw-processing__ready.is-visible {
		display: block;
		animation: ctwFade .4s ease;
	}

	.ctw-result-shell {
		width: min(1280px, 100%);
		margin: auto;
		padding: 28px max(16px, env(safe-area-inset-left)) max(30px, calc(env(safe-area-inset-bottom) + 30px));
	}

	.ctw-result-head {
		display: flex;
		align-items: end;
		justify-content: space-between;
		gap: 20px;
		margin-bottom: 20px;
	}

	.ctw-result-head h1 {
		margin: 0;
		color: var(--ctw-navy);
		font: 700 clamp(30px, 4vw, 52px)/1 Georgia, serif;
	}

	.ctw-result-head p {
		margin: 7px 0 0;
		color: #686f7f;
	}

	.ctw-result-badge {
		padding: 9px 13px;
		border-radius: 999px;
		background: var(--ctw-navy);
		color: #fff;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.ctw-result-grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 340px;
		gap: 24px;
		align-items: start;
	}

	.ctw-license-card.is-flipped {
		transform: rotateY(180deg);
	}

	.ctw-license-side {
		position: absolute;
		inset: 0;
		backface-visibility: hidden;
		border-radius: 22px;
		overflow: hidden;
		box-shadow: 0 26px 72px rgba(23, 35, 63, .24);
	}

	.ctw-license-side--back {
		transform: rotateY(180deg);
	}

	.ctw-license-front,
	.ctw-license-back {
		position: absolute;
		inset: 0;
		padding: 2.7%;
		border: 1px solid rgba(23, 35, 63, .28);
		background: var(--ctw-paper);
		color: var(--ctw-text);
		overflow: hidden;
	}

	.ctw-license-front::before,
	.ctw-license-back::before {
		content: "";
		position: absolute;
		inset: 1.4%;
		border: 1px solid var(--ctw-navy);
		border-radius: 14px;
		pointer-events: none;
	}

	.ctw-license-front::after,
	.ctw-license-back::after {
		content: "";
		position: absolute;
		inset: 2.2%;
		border: 1px solid rgba(185, 154, 74, .7);
		border-radius: 10px;
		pointer-events: none;
	}

	.ctw-security-pattern {
		position: absolute;
		inset: 0;
		opacity: .2;
		background-image: repeating-radial-gradient(circle at 0 0, transparent 0, transparent 8px, rgba(23, 35, 63, .18) 9px, transparent 10px), repeating-linear-gradient(42deg, transparent 0, transparent 10px, rgba(185, 154, 74, .18) 11px, transparent 12px);
	}

	.ctw-watermark {
		position: absolute;
		left: 50%;
		top: 54%;
		display: grid;
		place-items: center;
		width: 34%;
		aspect-ratio: 1;
		border: 2px solid rgba(23, 35, 63, .12);
		border-radius: 50%;
		color: rgba(23, 35, 63, .11);
		font: 800 clamp(74px, 10vw, 150px) Georgia, serif;
		transform: translate(-50%, -50%) rotate(-9deg);
	}

	.ctw-license-header {
		position: relative;
		z-index: 2;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 2%;
		height: 18%;
		text-align: center;
	}

	.ctw-license-emblem {
		display: grid;
		place-items: center;
		width: 8%;
		aspect-ratio: 1;
		border-radius: 50%;
		background: var(--ctw-navy);
		color: var(--ctw-gold-light);
		font: 800 clamp(12px, 2vw, 26px) Georgia, serif;
	}

	.ctw-license-header small {
		display: block;
		font-size: clamp(6px, .75vw, 11px);
		letter-spacing: .12em;
	}

	.ctw-signature {
		color: var(--ctw-navy);
		font: italic 700 clamp(9px, 1.3vw, 20px) Georgia, serif;
	}

	.ctw-signature small {
		display: block;
		padding-top: 2px;
		border-top: 1px solid rgba(23, 35, 63, .4);
		font: 600 clamp(5px, .65vw, 9px) sans-serif;
		text-transform: uppercase;
	}

	.ctw-back-grid {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: 1.08fr .92fr;
		gap: 3%;
		height: 70%;
		padding: 1% 3.5%;
	}

	.ctw-assessment h3,
	.ctw-notes h3 {
		margin: 0 0 2%;
		color: var(--ctw-navy);
		font: 800 clamp(7px, 1vw, 14px) Georgia, serif;
		text-transform: uppercase;
	}

	.ctw-score-row {
		display: grid;
		grid-template-columns: 38% 1fr 9%;
		gap: 2%;
		align-items: center;
		margin: 2.5% 0;
		font-size: clamp(5px, .72vw, 10px);
	}

	.ctw-score-track {
		height: 7px;
		background: #d7d0c0;
	}

	.ctw-score-fill {
		display: block;
		height: 100%;
		background: linear-gradient(90deg, var(--ctw-navy-2), var(--ctw-gold));
	}

	.ctw-notes ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.ctw-notes li {
		position: relative;
		margin: 2.8% 0;
		padding-left: 12px;
		font-size: clamp(5px, .76vw, 11px);
		line-height: 1.25;
	}

	.ctw-notes li::before {
		content: "✓";
		position: absolute;
		left: 0;
		color: #7a642a;
		font-weight: 900;
	}

	.ctw-classification {
		margin-top: 5%;
		padding-top: 3%;
		border-top: 1px solid rgba(23, 35, 63, .25);
	}

	.ctw-badges {
		display: flex;
		flex-wrap: wrap;
		gap: 4px;
	}

	.ctw-mini-badge {
		padding: 2.2% 3%;
		border: 1px solid rgba(23, 35, 63, .3);
		border-radius: 999px;
		background: #ebe1c8;
		color: var(--ctw-navy);
		font-size: clamp(5px, .7vw, 10px);
		font-weight: 800;
		text-transform: uppercase;
	}

	.ctw-official-remark {
		margin-top: 5%;
		padding: 4%;
		border-left: 3px solid var(--ctw-gold);
		background: rgba(255, 255, 255, .36);
		font: italic 700 clamp(7px, 1vw, 14px)/1.3 Georgia, serif;
	}

	.ctw-microtext {
		font-size: clamp(4px, .48vw, 7px);
		line-height: 1.15;
		color: #6d6658;
	}

	.ctw-result-panel {
		padding: 24px;
		border-radius: 20px;
		background: var(--ctw-navy);
		color: #fff;
		box-shadow: var(--ctw-shadow);
	}

	.ctw-result-panel small {
		color: var(--ctw-gold-light);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .12em;
		text-transform: uppercase;
	}

	.ctw-result-panel h2 {
		margin: 8px 0 5px;
		color: #fff;
		font: 700 29px/1.08 Georgia, serif;
	}

	.ctw-result-panel>p {
		color: rgba(255, 255, 255, .67);
		font-size: 13px;
		line-height: 1.55;
	}

	.ctw-result-meta {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
		margin: 18px 0;
	}

	.ctw-result-meta div {
		padding: 10px;
		border: 1px solid rgba(255, 255, 255, .11);
		border-radius: 11px;
		background: rgba(255, 255, 255, .05);
	}

	.ctw-result-meta span {
		display: block;
		color: rgba(255, 255, 255, .5);
		font-size: 9px;
		text-transform: uppercase;
	}

	.ctw-result-meta strong {
		display: block;
		margin-top: 3px;
		font-size: 10px;
	}

	.ctw-result-actions {
		display: grid;
		gap: 9px;
	}

	.ctw-result-actions .ctw-btn {
		width: 100%;
	}

	.ctw-result-tip {
		margin-top: 12px;
		color: rgba(255, 255, 255, .46);
		font-size: 10px;
		text-align: center;
	}

	.ctw-articles {
		margin-top: 30px;
	}

	.ctw-articles h2 {
		margin: 0 0 14px;
		color: var(--ctw-navy);
		font: 700 30px Georgia, serif;
	}

	.ctw-article-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 14px;
	}

	.ctw-article-card {
		display: block;
		overflow: hidden;
		border: 1px solid rgba(23, 35, 63, .12);
		border-radius: 16px;
		background: rgba(252, 250, 244, .94);
		color: var(--ctw-text);
		text-decoration: none;
		box-shadow: 0 10px 24px rgba(23, 35, 63, .07);
		transition: transform .2s ease;
	}

	.ctw-article-card:hover {
		transform: translateY(-3px);
	}

	.ctw-article-card img {
		display: block;
		width: 100%;
		aspect-ratio: 16/9;
		object-fit: cover;
		background: #d8d0bf;
	}

	.ctw-article-card div {
		padding: 14px;
	}

	.ctw-article-card h3 {
		margin: 0 0 6px;
		color: var(--ctw-navy);
		font: 700 18px/1.2 Georgia, serif;
	}

	.ctw-article-card p {
		margin: 0;
		color: #6b7281;
		font-size: 12px;
		line-height: 1.45;
	}

	.ctw-download-options {
		display: grid;
		gap: 9px;
		margin-top: 18px;
	}

	.ctw-download-options button {
		width: 100%;
	}

	.ctw-toast {
		position: fixed;
		left: 50%;
		bottom: max(20px, calc(env(safe-area-inset-bottom) + 14px));
		z-index: 200;
		max-width: 90vw;
		padding: 12px 16px;
		border-radius: 999px;
		background: #17233f;
		color: #fff;
		box-shadow: 0 12px 32px rgba(0, 0, 0, .25);
		font-size: 13px;
		font-weight: 700;
		opacity: 0;
		transform: translate(-50%, 18px);
		pointer-events: none;
		transition: .25s ease;
	}

	.ctw-toast.is-visible {
		opacity: 1;
		transform: translate(-50%, 0);
	}

	@keyframes ctwFade {
		from {
			opacity: 0;
			transform: translateY(8px)
		}

		to {
			opacity: 1;
			transform: none
		}
	}

	@keyframes ctwScan {
		to {
			top: calc(100% - 3px)
		}
	}

	@keyframes ctwSpin {
		to {
			transform: translateY(-50%) rotate(360deg)
		}
	}

	@media (max-width:980px) {
		.ctw-hero {
			grid-template-columns: 1fr;
		}

		.ctw-hero__copy {
			text-align: center;
		}

		.ctw-hero__copy .ctw-lead {
			margin-left: auto;
		}

		.ctw-hero__copy .ctw-actions {
			justify-content: center;
		}

		.ctw-hero-art {
			min-height: 390px;
		}

		.ctw-profile-card {
			grid-template-columns: 220px 1fr;
		}

		.ctw-quiz-layout {
			grid-template-columns: 1fr;
		}

		.ctw-dossier {
			display: none;
		}

		.ctw-result-grid {
			grid-template-columns: 1fr;
		}

		.ctw-result-panel {
			max-width: none;
		}

		.ctw-result-actions {
			grid-template-columns: 1fr 1fr;
		}

		.ctw-article-grid {
			grid-template-columns: 1fr 1fr;
		}

		.ctw-license-header small {
			font-size: clamp(5px, .95vw, 10px);
		}
	}

	@media (max-width:700px) {
		.ctw-topbar {
			min-height: 58px;
			padding: 10px 14px;
		}

		.ctw-topbar__meta {
			display: none;
		}

		.ctw-screen {
			min-height: calc(100dvh - 58px);
		}

		.ctw-shell {
			padding: 20px 14px max(20px, calc(env(safe-area-inset-bottom) + 20px));
		}

		.ctw-title {
			font-size: clamp(38px, 12vw, 58px);
		}

		.ctw-hero-art {
			min-height: 330px;
			border-radius: 20px;
		}

		.ctw-person {
			width: 40px;
			height: 58px;
		}

		.ctw-person::before {
			left: 8px;
			width: 24px;
			height: 24px;
		}

		.ctw-profile-card {
			grid-template-columns: 1fr;
			padding: 18px;
		}

		.ctw-profile-preview {
			min-height: 250px;
		}

		.ctw-profile-preview img {
			width: 54%;
			max-height: 230px;
		}

		.ctw-profile-form h1 {
			font-size: 32px;
		}

		.ctw-story-card {
			padding: 32px 24px;
		}

		.ctw-story-card__seal {
			float: none;
			width: 72px;
			height: 72px;
			margin: 0 0 18px;
			font-size: 30px;
		}

		.ctw-options {
			grid-template-columns: 1fr;
		}

		.ctw-question-card {
			padding: 22px 17px;
		}

		.ctw-question-title {
			font-size: clamp(28px, 9vw, 40px);
		}

		.ctw-option {
			min-height: 66px;
		}

		.ctw-result-shell {
			padding: 18px 10px max(24px, calc(env(safe-area-inset-bottom) + 24px));
		}

		.ctw-result-head {
			align-items: flex-start;
			flex-direction: column;
		}

		.ctw-license-side {
			border-radius: 14px;
		}

		.ctw-license-front,
		.ctw-license-back {
			padding: 2.2%;
		}

		.ctw-license-front::before,
		.ctw-license-back::before {
			border-radius: 9px;
		}

		.ctw-license-front::after,
		.ctw-license-back::after {
			display: none;
		}

		.ctw-license-header small {
			font-size: clamp(4px, 1.2vw, 7px);
		}

		.ctw-license-emblem {
			font-size: clamp(8px, 2vw, 13px);
		}

		.ctw-back-grid {
			grid-template-columns: 1fr .95fr;
			padding-left: 2.5%;
			padding-right: 2.5%;
		}

		.ctw-score-row {
			font-size: clamp(4px, 1.25vw, 7px);
		}

		.ctw-score-track {
			height: 4px;
		}

		.ctw-notes li {
			padding-left: 7px;
			font-size: clamp(4px, 1.2vw, 7px);
		}

		.ctw-mini-badge {
			font-size: clamp(4px, 1.1vw, 6px);
		}

		.ctw-official-remark {
			font-size: clamp(5px, 1.4vw, 8px);
		}

		.ctw-microtext {
			font-size: clamp(3px, .9vw, 5px);
		}

		.ctw-result-actions {
			grid-template-columns: 1fr;
		}

		.ctw-article-grid {
			grid-template-columns: 1fr;
		}

		.ctw-modal__dialog {
			padding: 22px;
		}

		.ctw-actions .ctw-btn {
			width: 100%;
		}
	}

	@media (prefers-reduced-motion:reduce) {

		*,
		*::before,
		*::after {
			scroll-behavior: auto !important;
			animation-duration: .01ms !important;
			animation-iteration-count: 1 !important;
			transition-duration: .01ms !important;
		}

		.ctw-license-card {
			transition: none;
		}
	}

	.ctw-card-stage {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 12px;
		perspective: 1400px;
	}

	.ctw-license-card {
		position: relative;
		width: 100%;
		aspect-ratio: 1.586;
		transform-style: preserve-3d;
		transition: transform .72s cubic-bezier(.2, .7, .1, 1);
		cursor: pointer;
		flex: 0 0 auto;
	}

	.ctw-flip-control {
		display: flex;
		align-items: center;
		gap: 7px;
		border: 1px solid rgba(255, 255, 255, .3);
		border-radius: 999px;
		color: #fff;
		cursor: pointer;
		font-size: 11px;
		font-weight: 750;
		position: static;
		right: auto;
		bottom: auto;
		z-index: 5;
		align-self: center;
		min-height: 40px;
		padding: 0 16px;
		border-color: rgba(23, 35, 63, .18);
		background: var(--ctw-navy);
		box-shadow: 0 10px 24px rgba(23, 35, 63, .16);
		backdrop-filter: none;
	}

	.ctw-license-heading,
	.ctw-license-info,
	.ctw-license-row,
	.ctw-license-row strong {
		min-width: 0;
	}

	.ctw-license-heading {
		max-width: 84%;
	}

	.ctw-license-photo img {
		display: block;
		width: 100%;
		height: 100%;
		max-width: 100%;
		object-fit: cover;
		object-position: center center;
	}

	.ctw-license-position {
		font-size: inherit !important;
	}

	.ctw-license-position strong {
		font-size: clamp(7px, 1.03vw, 14px);
		line-height: 1.06;
	}

	.ctw-signature-block {
		min-width: 0;
	}

	.ctw-barcode {
		display: flex;
		align-items: flex-end;
		min-width: 0;
		height: auto;
		min-height: 0;
		background: none;
		overflow: hidden;
	}

	.ctw-barcode-svg {
		display: block;
		width: 100%;
		height: clamp(28px, 5.2vw, 58px);
		background: #fff;
	}

	.ctw-qr {
		display: grid;
		align-content: end;
		justify-items: center;
		gap: 2px;
		min-width: 0;
		aspect-ratio: auto;
		background: none;
		border: 0;
		box-shadow: none;
	}

	.ctw-qr-svg {
		display: block;
		width: 100%;
		max-width: 100%;
		height: auto;
		aspect-ratio: 1;
		background: #fff;
		image-rendering: pixelated;
	}

	.ctw-qr small {
		color: var(--ctw-navy);
		font-size: clamp(4px, .48vw, 7px);
		font-weight: 900;
		letter-spacing: .08em;
		white-space: nowrap;
	}

	.ctw-code-error {
		display: grid;
		place-items: center;
		width: 100%;
		aspect-ratio: 1;
		background: #fff;
		color: var(--ctw-navy);
		font-weight: 900;
	}

	.ctw-back-footer .ctw-barcode-svg {
		height: clamp(24px, 4.2vw, 44px);
	}

	.ctw-qr--back {
		align-self: end;
	}

	@media (max-width:980px) {
		.ctw-license-heading {
			max-width: 86%;
		}

		.ctw-license-position strong {
			font-size: clamp(6px, 1.35vw, 13px);
		}
	}

	@media (max-width:700px) {
		.ctw-card-stage {
			gap: 9px;
		}

		.ctw-license-position strong {
			font-size: clamp(5px, 1.55vw, 9px);
		}

		.ctw-barcode-svg {
			height: clamp(20px, 6vw, 34px);
		}

		.ctw-qr small {
			display: none;
		}

		.ctw-flip-control {
			min-height: 36px;
			padding: 0 13px;
			font-size: 10px;
		}
	}

	.ctw-brand__seal {
		display: grid;
		place-items: center;
		width: 36px;
		height: 36px;
		border: 1px solid var(--ctw-gold);
		border-radius: 50%;
		color: var(--ctw-navy);
		font: 800 17px Georgia, serif;
		box-shadow: inset 0 0 0 4px rgba(255, 255, 255, .22);
		overflow: hidden;
		background: #f7f0dc;
		padding: 4px;
	}

	.ctw-brand__logo {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: contain;
	}

	.ctw-document-card {
		padding: 0 !important;
		background: var(--ctw-paper) !important;
		color: #282828;
	}

	.ctw-document-card::before {
		inset: 1.35% !important;
		border: 3px solid var(--ctw-navy) !important;
		border-radius: 14px !important;
		box-shadow: 0 0 0 5px rgba(252, 250, 244, .92), 0 0 0 7px rgba(185, 154, 74, .75) !important;
	}

	.ctw-document-card::after {
		inset: 2.65% !important;
		border: 1px solid rgba(23, 35, 63, .72) !important;
		border-radius: 9px !important;
	}

	.ctw-security-band {
		position: absolute;
		inset: 2.7%;
		z-index: 0;
		border-radius: 8px;
		pointer-events: none;
		opacity: .54;
		background: linear-gradient(90deg, rgba(23, 35, 63, .76), rgba(185, 154, 74, .72), rgba(23, 35, 63, .76)) top/100% 2.4% no-repeat, linear-gradient(90deg, rgba(23, 35, 63, .76), rgba(185, 154, 74, .72), rgba(23, 35, 63, .76)) bottom/100% 2.4% no-repeat, repeating-linear-gradient(135deg, rgba(23, 35, 63, .08) 0 1px, transparent 1px 8px);
	}

	.ctw-card-watermark {
		position: absolute;
		inset: 12% 25% 16%;
		z-index: 0;
		display: grid;
		place-items: center;
		opacity: .065;
		pointer-events: none;
	}

	.ctw-card-watermark .ctw-doc-logo {
		width: 100%;
		height: 100%;
		object-fit: contain;
		filter: grayscale(1);
	}

	.ctw-doc-logo {
		display: block;
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
	}

	.ctw-front-header {
		position: absolute;
		z-index: 2;
		left: 40.5%;
		right: 5%;
		top: 7.1%;
		height: 12.5%;
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
		gap: 1%;
		text-align: left;
		overflow: hidden;
	}

	.ctw-front-title {
		min-width: 0;
		padding-top: .15%;
		width: 100%;
	}

	.ctw-front-title small {
		display: block;
		color: #303336;
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(7px, .66vw, 10px);
		font-weight: 700;
		line-height: 1.18;
	}

	.ctw-front-title span {
		display: block;
		color: #303336;
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(7px, .66vw, 10px);
		line-height: 1.18;
	}

	.ctw-front-title strong {
		display: block;
		margin: 4px 0 5px;
		color: var(--ctw-navy);
		font: 800 clamp(15px, 1.72vw, 24px)/1.02 Georgia, "Times New Roman", serif;
		white-space: nowrap;
		max-width: 100%;
	}

	.ctw-front-main {
		position: absolute;
		z-index: 2;
		left: 5.2%;
		right: 5.1%;
		top: 16%;
		bottom: 16.5%;
		display: grid;
		grid-template-columns: 36.5% minmax(0, 1fr);
		gap: 3.1%;
	}

	.ctw-front-photo-wrap {
		position: relative;
		min-width: 0;
		height: 100%;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		margin-top: -15.8%;
		padding-bottom: 15.8%;
	}

	.ctw-front-photo::after {
		content: "";
		position: absolute;
		inset: 0;
		pointer-events: none;
		opacity: .14;
		background: repeating-radial-gradient(circle at 50% 55%, transparent 0 12px, rgba(23, 35, 63, .38) 13px, transparent 14px);
	}

	.ctw-front-photo img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center top;
	}

	.ctw-front-photo-label {
		flex: 0 0 auto;
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 12px 10px 0;
		background: transparent;
		color: var(--ctw-navy);
		line-height: 1.08;
	}

	.ctw-front-photo-label strong {
		padding-left: 22px;
		font: 800 clamp(10px, .92vw, 15px) Georgia, serif;
		white-space: nowrap;
	}

	.ctw-front-photo-label span {
		padding: 4px 0 0 56px;
		font-size: clamp(7px, .66vw, 10px);
		font-weight: 800;
		letter-spacing: .04em;
	}

	.ctw-front-data {
		position: relative;
		min-width: 0;
		padding-top: 1.9%;
	}

	.ctw-front-data-list {
		margin: 8px 0 0 0;
		display: grid;
		gap: 16px;
	}

	.ctw-front-data-list>div {
		display: grid;
		grid-template-columns: 37% minmax(0, 1fr);
		gap: 12px;
		align-items: start;
		min-width: 0;
	}

	.ctw-front-data-list dt,
	.ctw-front-data-list dd {
		margin: 0;
		min-width: 0;
		line-height: 1.08;
	}

	.ctw-front-data-list dt {
		color: #303336;
		font: 500 clamp(11px, 1.06vw, 16px) Georgia, "Times New Roman", serif;
		white-space: nowrap;
	}

	.ctw-front-data-list dd {
		color: var(--ctw-navy);
		font: 800 clamp(11px, 1.14vw, 17px) Arial, sans-serif;
		text-transform: uppercase;
		overflow-wrap: anywhere;
	}

	.ctw-front-data-list>div:nth-child(2) dd,
	.ctw-front-data-list>div:nth-child(7) dd {
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(14px, 1.34vw, 20px);
		line-height: 1.04;
	}

	.ctw-front-signature {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 20%;
		display: grid;
		grid-template-columns: 37% minmax(0, 1fr);
		gap: 12px;
		align-items: end;
		color: #303336;
		font: 500 clamp(11px, 1vw, 15px) Georgia, serif;
	}

	.ctw-front-signature strong {
		display: block;
		justify-self: center;
		margin-top: 6px;
		margin-bottom: -18px;
		font-weight: 500;
		white-space: nowrap;
		font-size: 1em;
	}

	.ctw-front-signature i {
		display: block;
		width: 100%;
		border-top: 1px solid rgba(23, 35, 63, .7);
	}

	.ctw-reference-stamp {
		position: absolute;
		z-index: 4;
		left: 30%;
		bottom: 19%;
		display: grid;
		place-items: center;
		width: 16.5%;
		aspect-ratio: 1;
		border: 3px double rgba(111, 52, 52, 0.58);
		border-radius: 50%;
		color: rgba(111, 52, 52, 0.64);
		font-size: clamp(5px, .6vw, 9px);
		font-weight: 900;
		line-height: 1.05;
		letter-spacing: .04em;
		text-align: center;
		transform: rotate(-15deg);
	}

	.ctw-front-footer {
		position: absolute;
		z-index: 3;
		left: 52.7%;
		right: 4.8%;
		bottom: 7%;
		height: 9%;
		display: grid;
		grid-template-columns: 12% 14% minmax(0, 1fr) 13%;
		gap: 8px;
		align-items: end;
	}

	.ctw-front-legal {
		display: none;
	}

	.ctw-front-legal strong {
		display: block;
		font: 800 clamp(5px, .64vw, 10px) Georgia, serif;
	}

	.ctw-front-legal span {
		font-size: clamp(4px, .48vw, 7px);
		font-weight: 800;
		letter-spacing: .04em;
	}

	.ctw-front-serial {
		margin-bottom: 10px;
	}

	.ctw-front-serial span {
		display: block;
		color: #625c50;
		font-size: clamp(4px, .38vw, 6px);
		font-weight: 800;
		text-transform: uppercase;
		text-align: center;
		line-height: 1.05;
	}

	.ctw-front-serial strong {
		display: block;
		color: var(--ctw-navy);
		font: 700 clamp(4px, .42vw, 7px) monospace;
		overflow-wrap: anywhere;
		text-align: center;
		line-height: 1.05;
		white-space: nowrap;
	}

	.ctw-front-qr,
	.ctw-footer-qr {
		display: grid;
		place-items: center;
		min-width: 0;
		align-self: end;
		width: 100%;
		background: #ffffff00;
	}

	.ctw-front-qr .ctw-qr-svg,
	.ctw-footer-qr .ctw-qr-svg {
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 1;
		image-rendering: pixelated;
		max-width: 68px;
		justify-self: center;
		background: #ffffff00;
	}

	.ctw-front-barcode,
	.ctw-footer-barcode {
		min-width: 0;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		justify-content: end;
		background: #ffffff00;
	}

	.ctw-front-barcode .ctw-barcode-svg,
	.ctw-footer-barcode .ctw-barcode-svg {
		display: block;
		width: 100%;
		height: auto;
		max-height: 42px;
		background: #ffffff00;
	}

	.ctw-front-seal,
	.ctw-footer-seal {
		display: grid;
		place-items: center;
		aspect-ratio: 1;
		border-radius: 50%;
		padding: 16%;
		background: radial-gradient(circle at 35% 30%, #faf0c8, #d8bc6d 58%, var(--ctw-gold));
		border: 1px solid rgba(99, 75, 23, .45);
		box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .3);
	}

	.ctw-front-seal .ctw-doc-logo,
	.ctw-footer-seal .ctw-doc-logo {
		width: 100%;
		height: 100%;
		filter: sepia(.25);
		opacity: .78;
	}

	.ctw-back-classification {
		align-self: start;
		padding-top: 3.3%;
	}

	.ctw-footer-block strong {
		display: block;
		color: var(--ctw-navy);
		font-size: clamp(3px, .43vw, 6px);
		font-weight: 900;
	}

	.ctw-footer-block span {
		display: block;
		font-size: clamp(3px, .38vw, 5.5px);
		overflow-wrap: anywhere;
	}

	@media (max-width:980px) {

		.ctw-front-title strong,
		.ctw-back-header strong {
			white-space: normal;
		}

		.ctw-front-data-list {
			gap: 1.2%;
		}
	}

	@media (max-width:700px) {
		.ctw-document-card::before {
			border-width: 2px !important;
			box-shadow: 0 0 0 3px rgba(252, 250, 244, .92), 0 0 0 4px rgba(185, 154, 74, .75) !important;
		}

		.ctw-security-band {
			opacity: .42;
		}

		.ctw-front-header {
			left: 40.2%;
			right: 4.8%;
			top: 7.2%;
		}

		.ctw-front-title strong {
			font-size: clamp(11px, 2.2vw, 16px);
		}

		.ctw-front-title small,
		.ctw-front-title span {
			font-size: clamp(4px, 1vw, 6px);
		}

		.ctw-front-data-list dt,
		.ctw-front-data-list dd {
			font-size: clamp(5px, 1.1vw, 8px);
		}

		.ctw-front-data-list>div:nth-child(2) dd,
		.ctw-front-data-list>div:nth-child(7) dd {
			font-size: clamp(6px, 1.26vw, 9px);
		}

		.ctw-front-data-list {
			gap: 5px;
		}

		.ctw-reference-stamp {
			border-width: 1px;
			font-size: clamp(3px, .75vw, 5px);
		}

		.ctw-front-photo-label strong {
			font-size: clamp(5px, 1.05vw, 8px);
		}

		.ctw-front-photo-label span {
			font-size: clamp(3px, .8vw, 5px);
		}

		.ctw-front-signature {
			font-size: clamp(4px, .96vw, 7px);
		}

		.ctw-front-barcode .ctw-barcode-svg,
		.ctw-footer-barcode .ctw-barcode-svg {
			max-height: 28px;
		}

		.ctw-front-footer {
			left: 52%;
			gap: 3px;
			bottom: 4.2%;
		}

		.ctw-back-content h3 {
			font-size: clamp(3.8px, 1.16vw, 6.5px);
		}

		.ctw-notes-box li,
		.ctw-notes-box>strong {
			font-size: clamp(3px, .93vw, 5px);
		}

		.ctw-back-remark blockquote {
			font-size: clamp(4px, 1.24vw, 7px);
		}
	}

	.ctw-front-signature-block {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-end;
		min-width: 0;
	}

	.ctw-front-barcode span {
		display: block;
		margin-top: 2px;
		color: #5f615e;
		font: 700 clamp(4px, .4vw, 7px) Arial, sans-serif;
		text-align: center;
		overflow-wrap: anywhere;
	}

	.ctw-front-seal {
		background: transparent;
		border: 1px solid rgba(23, 35, 63, .14);
		box-shadow: inset 0 0 0 2px rgba(23, 35, 63, .08);
		padding: 8%;
		opacity: .28;
		min-width: 54px;
	}

	.ctw-front-seal .ctw-doc-logo {
		filter: grayscale(1);
		opacity: .62;
	}

	.ctw-front-photo {
		flex: 1 1 auto;
		overflow: hidden;
		border: 1px solid rgba(23, 35, 63, .65);
		background: #e5dfd2;
		min-height: 0;
		position: relative;
	}

	.ctw-front-emblem {
		position: absolute;
		top: -36%;
		width: 8.2%;
		height: 34%;
		transform: translateX(-50%);
		left: 46%;
	}

	.ctw-back-performance .ctw-score-row span,
	.ctw-back-performance .ctw-score-row strong {
		line-height: 1.05;
	}

	.ctw-back-notes {
		min-width: 0;
	}

	.ctw-notes-box ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.ctw-mini-badge--1 {
		transform: rotate(-4deg);
	}

	.ctw-mini-badge--2 {
		transform: rotate(-2deg);
	}

	.ctw-mini-badge--3 {
		transform: rotate(-4deg);
	}

	.ctw-footer-block {
		min-width: 0;
		color: #464237;
		line-height: 1.08;
	}

	.ctw-footer-verification {
		font-family: monospace;
	}

	.ctw-footer-qr,
	.ctw-footer-barcode,
	.ctw-footer-signature,
	.ctw-footer-seal {
		min-width: 0;
	}

	.ctw-footer-qr {
		display: flex;
		align-items: end;
		justify-content: center;
	}

	.ctw-footer-barcode {
		display: flex;
		flex-direction: column;
		justify-content: end;
		align-items: stretch;
	}

	.ctw-footer-seal .ctw-doc-logo {
		width: 100%;
		height: 100%;
		filter: sepia(.25);
		opacity: .9;
	}

	.ctw-back-header {
		position: absolute;
		z-index: 3;
		display: flex;
		flex-direction: column;
		align-items: center;
		color: var(--ctw-navy);
		text-align: center;
		top: 8%;
		height: 11.5%;
		left: 7%;
		right: 7%;
	}

	.ctw-back-header strong {
		font: 800 clamp(18px, 1.92vw, 28px)/1 Georgia, "Times New Roman", serif;
		letter-spacing: -.01em;
		white-space: nowrap;
	}

	.ctw-back-header span,
	.ctw-back-header small {
		font: 500 clamp(9px, .96vw, 14px)/1.08 Georgia, serif;
	}

	.ctw-back-emblem {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: -16%;
		width: 5.5%;
		height: 22%;
	}

	.ctw-back-content {
		position: absolute;
		z-index: 2;
		display: grid;
		left: 6%;
		right: 6%;
		top: 21%;
		bottom: 22%;
		grid-template-columns: 50% 46%;
		grid-template-rows: 48% 28%;
		gap: 8% 4%;
	}

	.ctw-back-content h3 {
		margin: 0 0 8px;
		color: var(--ctw-navy);
		font: 800 clamp(12px, 1.16vw, 17px) Georgia, "Times New Roman", serif;
		white-space: nowrap;
		line-height: 1.05;
	}

	.ctw-back-performance .ctw-score-row {
		display: grid;
		grid-template-columns: 36% 1fr 8%;
		gap: 10px;
		align-items: center;
		margin: 10px 0;
		font-size: clamp(10px, .96vw, 14px);
		color: #303030;
	}

	.ctw-back-performance .ctw-score-track {
		position: relative;
		height: 13px;
		background: #f3efe4;
		border: 1px solid rgba(23, 35, 63, .58);
	}

	.ctw-back-performance .ctw-score-fill {
		height: 100%;
		background: linear-gradient(90deg, #62708c 0%, #6f7c95 78%, #a3adbd 100%);
	}

	.ctw-notes-box {
		height: calc(100% - 25px);
		padding: 10px 12px;
		border: 2px solid rgba(23, 35, 63, .64);
		border-radius: 10px;
		background: rgba(252, 250, 244, .72);
		box-shadow: none;
	}

	.ctw-notes-box>strong {
		display: block;
		color: var(--ctw-navy);
		font: 800 clamp(12px, 1.04vw, 16px) Georgia, serif;
		margin-bottom: 4px;
	}

	.ctw-notes-box li {
		position: relative;
		margin: 3px 0;
		padding-left: 16px;
		font: 500 clamp(10px, .9vw, 14px)/1.12 Georgia, serif;
		color: #303030;
	}

	.ctw-notes-box li::before {
		content: "✓";
		position: absolute;
		left: 0;
		top: -1px;
		color: var(--ctw-navy);
		font-weight: 900;
	}

	.ctw-back-classification .ctw-badges {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: center;
		gap: 16px;
		padding: 30px 4px;
		overflow: visible;
	}

	.ctw-back-classification .ctw-mini-badge {
		position: relative;
		isolation: isolate;
		z-index: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-width: 0;
		padding: 7px 10px;
		border: 0;
		background: transparent;
		color: #6f4343;
		font: 800 clamp(9px, .82vw, 13px) / 1 "Times New Roman", Times, serif;
		text-align: center;
		text-transform: uppercase;
		white-space: nowrap;
		overflow: visible;
	}

	/* Lingkaran stempel paling belakang */
	.ctw-back-classification .ctw-mini-badge::before {
		content: "";
		position: absolute;
		z-index: -2;
		left: 50%;
		top: 50%;
		width: 66px;
		height: 66px;
		border: 1.2px solid rgba(125, 72, 72, .45);
		border-radius: 50%;
		box-shadow: 0 0 0 7px rgba(125, 72, 72, .24);
		transform: translate(-50%, -50%);
		pointer-events: none;
	}

	/* Kotak putih berada di atas lingkaran */
	.ctw-back-classification .ctw-mini-badge::after {
		content: "";
		position: absolute;
		z-index: -1;
		inset: 0;
		border: 2px solid rgba(125, 72, 72, .78);
		border-radius: 5px;
		background: rgba(248, 244, 235, 1);
		box-shadow: inset 0 0 0 1px rgba(125, 72, 72, .16);
		pointer-events: none;
	}

	@media (max-width: 700px) {
		.ctw-back-classification .ctw-badges {
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 5px;
			padding: 12px 2px;
		}

		.ctw-back-classification .ctw-mini-badge {
			padding: 5px 3px;
			font-size: clamp(5px, 1.3vw, 8px);
		}

		.ctw-back-classification .ctw-mini-badge::before {
			width: 42px;
			height: 42px;
			box-shadow:
				0 0 0 5px rgba(125, 72, 72, .24);
		}
	}

	.ctw-back-remark {
		padding-top: 3.2%;
	}

	.ctw-back-remark blockquote {
		margin: 0;
		padding: 12px 16px 0 18px;
		min-height: 92px;
		border-left: 3px solid var(--ctw-gold);
		background: rgba(252, 250, 244, .72);
		color: #242424;
		font: italic 700 clamp(14px, 1.22vw, 22px)/1.1 Georgia, serif;
	}

	.ctw-assessment-footer {
		position: absolute;
		z-index: 3;
		left: 6%;
		right: 6%;
		bottom: 4.2%;
		height: 13.5%;
		display: grid;
		grid-template-columns:
			14%
			/* Issued by */
			17%
			/* Document Serial */
			10%
			/* Verification QR + QR */
			24%
			/* Barcode */
			12%
			/* Security Microtext */
			10%
			/* Signature */
			11%;
		/* Seal */
		gap: 6px;
		align-items: end;
		margin-bottom: 60px;
		padding-top: 10px;
	}

	.ctw-footer-block strong,
	.ctw-footer-signature strong {
		display: block;
		color: var(--ctw-navy);
		font-size: clamp(8px, .7vw, 11px);
		font-weight: 900;
		font-family: Georgia, "Times New Roman", serif;
		margin-bottom: 2px;
		line-height: 1.02;
	}

	.ctw-footer-block span,
	.ctw-footer-signature span {
		display: block;
		font-size: clamp(7px, .56vw, 9px);
		overflow-wrap: anywhere;
		color: #3e3a31;
		line-height: 1.04;
	}

	.ctw-footer-qr .ctw-qr-svg {
		display: block;
		width: 100%;
		max-width: 48px;
		height: auto;
		aspect-ratio: 1;
		background: transparent;
	}

	.ctw-back-footer .ctw-barcode-svg,
	.ctw-footer-barcode .ctw-barcode-svg {
		display: block;
		width: 100%;
		height: auto;
		max-height: 36px;
		background: transparent;
	}

	.ctw-footer-barcode em {
		display: block;
		margin-top: 2px;
		color: #3e3a31;
		font: 700 clamp(8px, .62vw, 10px)/1 Georgia, "Times New Roman", serif;
		text-align: center;
		font-style: normal;
	}

	.ctw-footer-signature {
		display: flex;
		flex-direction: column;
		justify-content: end;
		align-items: flex-start;
		padding-bottom: 3px;
	}

	.ctw-footer-signature i {
		display: block;
		width: 100%;
		border-top: 1px solid rgba(23, 35, 63, .72);
		margin: 5px 0 3px;
	}

	.ctw-footer-seal {
		display: grid;
		place-items: center;
		align-self: center;
		justify-self: end;
		aspect-ratio: 1;
		border-radius: 50%;
		background: radial-gradient(circle at 35% 30%, #faf0c8, #d8bc6d 58%, var(--ctw-gold));
		border: 1px solid rgba(99, 75, 23, .45);
		box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .3);
		width: 82px;
		height: 82px;
		padding: 12%;
	}

	@media (max-width:980px) {
		.ctw-back-content {
			gap: 7% 3%;
		}

		.ctw-back-header strong {
			font-size: clamp(12px, 2.1vw, 18px);
		}

		.ctw-back-header span,
		.ctw-back-header small {
			font-size: clamp(6px, 1vw, 9px);
		}

		.ctw-back-content h3 {
			font-size: clamp(8px, 1vw, 11px);
		}

		.ctw-back-performance .ctw-score-row,
		.ctw-notes-box li {
			font-size: clamp(7px, .9vw, 10px);
		}

		.ctw-back-remark blockquote {
			font-size: clamp(10px, 1.2vw, 14px);
		}

		.ctw-assessment-footer {
			grid-template-columns: 14% 16% 8% 7% 21% 12% 10% 10%;
			gap: 3px;
			height: 12.5%;
		}

		.ctw-footer-block strong,
		.ctw-footer-signature strong {
			font-size: clamp(5px, .7vw, 7px);
		}

		.ctw-footer-block span,
		.ctw-footer-signature span {
			font-size: clamp(4px, .58vw, 6px);
		}

		.ctw-footer-seal {
			width: 54px;
			height: 54px;
		}
	}

	.ctw-footer-issued {
		grid-column: 1;
		transform: translateY(30px);
	}

	.ctw-footer-docserial {
		grid-column: 2;
		transform: translate(5px, 15px);
	}

	.ctw-footer-docserial strong {
		white-space: nowrap;
	}

	/* Label dan QR berada di kolom yang sama */
	.ctw-footer-qrlabel,
	.ctw-footer-qr {
		grid-column: 3;
		grid-row: 1;
	}

	.ctw-footer-qrlabel {
		align-self: start;
		justify-self: center;
		text-align: center;
		z-index: 2;
	}

	.ctw-footer-qrlabel strong {
		display: block;
		white-space: nowrap;
		font-size: clamp(10px, 0.62vw, 10px);
		line-height: 1;
		transform: translate(2px, 57px);
	}

	/* QR ditempatkan di bagian bawah kolom */
	.ctw-footer-qr {
		align-self: end;
		justify-self: center;
	}

	.ctw-footer-qr .ctw-qr-svg {
		width: 52px;
		height: 52px;
		max-width: none;
		transform: translateY(35px);
	}

	.ctw-footer-barcode {
		grid-column: 4;
		transform: translate(-15px, 35px);
	}

	.ctw-footer-micro {
		grid-column: 5;
		transform: translate(-10px, 32px);
	}

	.ctw-footer-micro strong {
		padding-bottom: 5px;
	}

	.ctw-footer-signature {
		grid-column: 6;
		transform: translateY(5px, 35px);
	}

	.ctw-footer-signature strong {
		transform: translateY(15px);
	}

	.ctw-footer-signature i {
		transform: translateY(35px)
	}

	.ctw-footer-signature span {
		white-space: nowrap;
		transform: translateY(35px);
	}

	.ctw-footer-seal {
		grid-column: 7;
		transform: translateY(35px);
	}
/* v1.1.6 — mobile card keeps the exact desktop composition and scales proportionally */
@media (max-width: 700px) {
  .ctw-result-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }

  .ctw-card-stage {
    width: 100%;
    max-width: 100%;
    align-items: center;
    overflow: visible;
    gap: 12px;
  }

  .ctw-license-card.is-mobile-proportional {
    max-width: none;
    flex: 0 0 auto;
    transform-origin: center center;
  }

  .ctw-license-card.is-mobile-proportional.is-flipped {
    transform: rotateY(180deg);
  }

  .ctw-license-card.is-mobile-proportional .ctw-license-side {
    border-radius: 22px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-license-front,
  .ctw-license-card.is-mobile-proportional .ctw-license-back {
    padding: 2.7%;
  }

  .ctw-license-card.is-mobile-proportional .ctw-document-card::before {
    inset: 1.35% !important;
    border-width: 3px !important;
    border-radius: 14px !important;
    box-shadow: 0 0 0 5px rgba(252, 250, 244, .92), 0 0 0 7px rgba(185, 154, 74, .75) !important;
  }

  .ctw-license-card.is-mobile-proportional .ctw-document-card::after {
    display: block;
    inset: 2.65% !important;
    border-radius: 9px !important;
  }

  .ctw-license-card.is-mobile-proportional .ctw-security-band {
    opacity: .54;
  }

  /* Front card: restore the desktop typography and spacing before scaling. */
  .ctw-license-card.is-mobile-proportional .ctw-front-header {
    left: 40.5%;
    right: 5%;
    top: 7.1%;
    height: 12.5%;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-title small,
  .ctw-license-card.is-mobile-proportional .ctw-front-title span {
    font-size: 10px;
    line-height: 1.18;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-title strong {
    font-size: 24px;
    line-height: 1.02;
    white-space: nowrap;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-photo-label strong {
    font-size: 15px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-photo-label span {
    font-size: 10px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-data-list {
    gap: 16px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-data-list dt {
    font-size: 16px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-data-list dd {
    font-size: 17px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-data-list > div:nth-child(2) dd,
  .ctw-license-card.is-mobile-proportional .ctw-front-data-list > div:nth-child(7) dd {
    font-size: 20px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-signature {
    font-size: 15px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-reference-stamp {
    border-width: 3px;
    font-size: 9px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-footer {
    left: 52.7%;
    right: 4.8%;
    bottom: 7%;
    height: 9%;
    gap: 8px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-serial span {
    font-size: 6px;
	transform: translateX(-3px);

  }

  .ctw-license-card.is-mobile-proportional .ctw-front-serial strong {
    font-size: 7px;
	transform: translate(-8px, 5px);
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-qr .ctw-qr-svg {
    max-width: 68px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-barcode .ctw-barcode-svg {
    max-height: 42px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-front-seal {
    min-width: 54px;
  }

  /* Back card: restore desktop dimensions, typography, stamps, and footer. */
  .ctw-license-card.is-mobile-proportional .ctw-back-header {
    top: 8%;
    height: 11.5%;
    left: 7%;
    right: 7%;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-header strong {
    font-size: 28px;
    line-height: 1;
    white-space: nowrap;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-header span,
  .ctw-license-card.is-mobile-proportional .ctw-back-header small {
    font-size: 14px;
    line-height: 1.08;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-content {
    left: 6%;
    right: 6%;
    top: 21%;
    bottom: 22%;
    grid-template-columns: 50% 46%;
    grid-template-rows: 48% 28%;
    gap: 8% 4%;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-content h3 {
    margin-bottom: 8px;
    font-size: 17px;
    line-height: 1.05;
    white-space: nowrap;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-performance .ctw-score-row {
    grid-template-columns: 36% 1fr 8%;
    gap: 10px;
    margin: 10px 0;
    font-size: 14px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-performance .ctw-score-track {
    height: 13px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-notes-box {
    height: calc(100% - 25px);
    padding: 10px 12px;
    border-width: 2px;
    border-radius: 10px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-notes-box > strong {
    font-size: 16px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-notes-box li {
    margin: 3px 0;
    padding-left: 16px;
    font-size: 14px;
    line-height: 1.12;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-classification .ctw-badges {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    padding: 30px 4px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-classification .ctw-mini-badge {
    padding: 7px 10px;
    font-size: 13px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-classification .ctw-mini-badge::before {
    width: 66px;
    height: 66px;
    box-shadow: 0 0 0 7px rgba(125, 72, 72, .24);
  }

  .ctw-license-card.is-mobile-proportional .ctw-back-remark blockquote {
    min-height: 92px;
    padding: 12px 16px 0 18px;
    font-size: 22px;
    line-height: 1.1;
  }

  .ctw-license-card.is-mobile-proportional .ctw-assessment-footer {
    left: 6%;
    right: 6%;
    bottom: 4.2%;
    height: 13.5%;
    grid-template-columns: 14% 17% 10% 24% 12% 10% 11%;
    gap: 6px;
    padding-top: 10px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-footer-block strong,
  .ctw-license-card.is-mobile-proportional .ctw-footer-signature strong {
    font-size: 11px;
    line-height: 1.02;
  }

  .ctw-license-card.is-mobile-proportional .ctw-footer-block span,
  .ctw-license-card.is-mobile-proportional .ctw-footer-signature span {
    font-size: 9px;
    line-height: 1.04;
  }

  .ctw-license-card.is-mobile-proportional .ctw-footer-qr .ctw-qr-svg {
    width: 52px;
    height: 52px;
    max-width: none;
  }

  .ctw-license-card.is-mobile-proportional .ctw-footer-barcode .ctw-barcode-svg {
    max-height: 36px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-footer-barcode em {
    font-size: 10px;
  }

  .ctw-license-card.is-mobile-proportional .ctw-footer-seal {
    width: 82px;
    height: 82px;
  }

  .ctw-result-panel {
    width: 100%;
  }

  .ctw-result-actions {
    grid-template-columns: 1fr;
  }
}
