#twc-wrap.twc-calculator {
	--twc-red: #e4002b;
	--twc-dark: #3e3934;
	--twc-charcoal: #544d47;
	--twc-gray: #6b7280;
	--twc-border: #d1d5db;
	--twc-bg: #f8fafc;
	max-width: 1180px;
	margin: 24px auto;
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border: 1px solid var(--twc-border);
	border-radius: 18px;
	box-shadow: 0 18px 45px rgba(17, 24, 39, 0.10);
	padding: 24px;
	font-family: Arial, sans-serif;
	color: var(--twc-dark);
}

.twc-brandbar {
	display: flex;
	align-items: center;
	gap: 26px;
	padding: 22px;
	border-radius: 16px;
	background: linear-gradient(135deg, #3e3934 0%, #544d47 60%, #3e3934 100%);
	margin-bottom: 22px;
}
.twc-logo { max-height: 78px; width: auto; background: transparent; padding: 0; border-radius: 0; display:block; }
.twc-title { margin: 0; color: #fff; font-size: 1.9rem; }
.twc-subtitle { margin-top: 6px; color: #e5e7eb; font-size: 0.95rem; }
.twc-section { margin-bottom: 18px; background: #fff; border: 1px solid var(--twc-border); border-radius: 16px; padding: 18px; }
.twc-section-title { margin: 0 0 14px; font-size: 1.1rem; color: var(--twc-red); }
.twc-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.twc-grid.twc-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.twc-meta-grid { display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap:14px; }
.twc-field label { display: block; font-size: 0.85rem; font-weight: 700; margin-bottom: 7px; color: var(--twc-charcoal); }
.twc-field input, .twc-field select {
	width: 100%; box-sizing: border-box; min-height: 44px; border: 1px solid var(--twc-border);
	border-radius: 10px; padding: 10px 12px; background: #fff; color: var(--twc-dark);
}
.twc-field input:focus, .twc-field select:focus { outline: none; border-color: var(--twc-red); box-shadow: 0 0 0 3px rgba(228,0,43,.12); }
.twc-geometry-layout { display:grid; grid-template-columns: 280px 1fr; gap:18px; align-items:start; }
.twc-preview-panel { border:1px solid var(--twc-border); border-radius:14px; background:linear-gradient(180deg,#fff,#f8fafc); padding:14px; }
.twc-preview-title { font-size:.95rem; font-weight:700; color:var(--twc-charcoal); margin:0 0 10px; }
.twc-preview-box { border:1px solid #e5e7eb; border-radius:12px; min-height:230px; display:flex; align-items:center; justify-content:center; background:#fff; overflow:hidden; }
.twc-preview-box svg { width:100%; height:auto; display:block; }
.twc-preview-caption { margin-top:10px; color:var(--twc-gray); font-size:.8rem; line-height:1.45; }
.twc-btn-row { display: flex; gap: 12px; flex-wrap: wrap; margin: 18px 0 8px; }
.twc-btn {
	appearance: none; border: none; border-radius: 999px; cursor: pointer; min-height: 46px; padding: 0 18px;
	font-weight: 700; background: var(--twc-red); color: #fff;
}
.twc-btn-secondary { background: #3e3934; }
.twc-btn-ghost { background: #fff; color: var(--twc-charcoal); border: 1px solid var(--twc-border); }
.twc-btn[disabled] { opacity: .55; cursor: not-allowed; }
.twc-results { margin-top: 16px; }
.twc-cards { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.twc-card {
	background: linear-gradient(180deg, #fff 0%, #f3f4f6 100%);
	border: 1px solid var(--twc-border); border-top: 4px solid var(--twc-red); border-radius: 14px; padding: 14px;
}
.twc-card-label { font-size: .8rem; color: var(--twc-gray); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
.twc-card-value { font-size: 1.55rem; font-weight: 800; margin: 8px 0 4px; color: var(--twc-dark); }
.twc-card-unit { color: var(--twc-gray); font-size: .8rem; }
.twc-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--twc-border); border-radius: 14px; overflow: hidden; margin-bottom: 18px; }
.twc-table th, .twc-table td { padding: 11px 12px; border-bottom: 1px solid #e5e7eb; text-align: left; }
.twc-table thead th { background: var(--twc-dark); color: #fff; }
.twc-small { color: var(--twc-gray); font-size: .8rem; }
.twc-badge { display: inline-block; padding: 4px 9px; border-radius: 999px; font-size: .76rem; font-weight: 700; }
.twc-badge.pass { background: #dcfce7; color: #166534; }
.twc-badge.fail { background: #fee2e2; color: #991b1b; }
.twc-badge.na { background: #e5e7eb; color: #374151; }
.twc-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.twc-detail { background: #fff; border: 1px solid var(--twc-border); border-radius: 12px; padding: 12px 14px; }
.twc-detail-label { display: block; color: var(--twc-gray); font-size: .75rem; font-weight: 700; text-transform: uppercase; margin-bottom: 5px; }
.twc-detail-value { font-weight: 700; color: var(--twc-dark); }
.twc-notice { border-radius: 12px; padding: 12px 14px; margin-bottom: 14px; }
.twc-notice-info { background: #eff6ff; border: 1px solid #93c5fd; color: #1d4ed8; }
.twc-notice-warn { background: #fff7ed; border: 1px solid #fdba74; color: #9a3412; }
.twc-notice-error { background: #fef2f2; border: 1px solid #fca5a5; color: #b91c1c; }
.twc-disclaimer { font-size: .83rem; color: var(--twc-gray); margin: 14px 0 0; }
.twc-loading { margin-top: 12px; color: var(--twc-gray); font-weight: 700; }

@media (max-width: 1000px) {
	.twc-grid, .twc-cards, .twc-detail-grid, .twc-meta-grid, .twc-grid.twc-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.twc-geometry-layout { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
	#twc-wrap.twc-calculator { padding: 14px; }
	.twc-brandbar { flex-direction: column; align-items: flex-start; }
	.twc-grid, .twc-cards, .twc-detail-grid, .twc-meta-grid, .twc-grid.twc-grid-4 { grid-template-columns: 1fr; }
	.twc-btn-row { flex-direction: column; }
	.twc-btn { width: 100%; }
}

.twc-preview-box{display:flex;align-items:center;justify-content:center;min-height:220px;background:#fff;border:1px dashed #cfd6df;border-radius:14px;padding:12px;overflow:hidden}
.twc-preview-image{max-width:100%;max-height:190px;width:auto;height:auto;display:block;transform-origin:center center}


.twc-disclaimer-section {
	background: linear-gradient(180deg, #fff 0%, #f9fafb 100%);
	border: 1px solid #d1d5db;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.twc-disclaimer-box {
	max-height: 190px;
	overflow: auto;
	padding: 16px;
	border-radius: 14px;
	border: 1px solid #cbd5e1;
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	color: var(--twc-charcoal);
	line-height: 1.6;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.8);
}
.twc-disclaimer-box p { margin: 0; font-size: .9rem; }
.twc-disclaimer-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:14px; }
.twc-radio-option {
	display:inline-flex; align-items:center; gap:10px;
	padding: 12px 16px; border-radius: 999px;
	border:1px solid #cbd5e1; background:#fff; color:var(--twc-dark);
	font-weight:700; cursor:pointer; transition:all .2s ease;
}
.twc-radio-option:hover { border-color: var(--twc-red); box-shadow: 0 0 0 3px rgba(228,0,43,.08); }
.twc-radio-option input { margin:0; accent-color: var(--twc-red); }
.twc-disclaimer-note { margin-top:12px; color:var(--twc-gray); font-size:.83rem; font-weight:700; }


/* Final brown theme overrides */
.twc-table thead th { background: #3e3934; color:#fff; }
#twc-pdf, .twc-btn-secondary { background:#3e3934 !important; border-color:#3e3934 !important; color:#fff !important; }
#twc-pdf:hover, .twc-btn-secondary:hover { background:#544d47 !important; }
