/*!
 * DSS Business Automation ROI Calculator
 * Developed by : Dhanush Software Services
 * Website: https://dsservices.co.in
 */
.dss-roi {
	--dss-accent: #0f6cbd;
	--dss-ink: #1b2430;
	--dss-muted: #5d6b7a;
	--dss-line: #e2e8ef;
	--dss-bg: #f5f8fc;
	--dss-good: #138a4d;
	--dss-warn: #b7791f;
	--dss-bad: #c23b3b;
	box-sizing: border-box;
	max-width: 1100px;
	margin: 2rem auto;
	color: var(--dss-ink);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	line-height: 1.55;
}
.dss-roi *, .dss-roi *::before, .dss-roi *::after { box-sizing: border-box; }

/* Header */
.dss-roi__head { text-align: center; margin-bottom: 1.5rem; }
.dss-roi__head h2 { margin: 0 0 .5rem; font-size: clamp(1.5rem, 3vw, 2.1rem); color: var(--dss-ink); }
.dss-roi__head p { margin: 0 auto; max-width: 700px; color: var(--dss-muted); font-size: 1.05rem; }

/* Intro */
.dss-roi__intro {
	background: var(--dss-bg);
	border: 1px solid var(--dss-line);
	border-radius: 14px;
	padding: 1.5rem;
	margin-bottom: 1.25rem;
}
.dss-roi__intro h3 { margin: 0 0 1rem; text-align: center; font-size: 1.15rem; color: var(--dss-ink); }
.dss-roi__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.dss-roi__card { background: #fff; border: 1px solid var(--dss-line); border-radius: 12px; padding: 1rem 1.1rem; }
.dss-roi__card strong { display: block; margin: .35rem 0 .25rem; }
.dss-roi__card p { margin: 0; font-size: .9rem; color: var(--dss-muted); }
.dss-roi__ico { font-size: 1.6rem; line-height: 1; }
.dss-roi__what { margin: 1.1rem 0 0; padding: .85rem 1rem; background: #fff; border-left: 4px solid var(--dss-accent); border-radius: 6px; font-size: .93rem; color: var(--dss-ink); }

/* Panels */
.dss-roi__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; align-items: start; }
.dss-roi__panel {
	background: #fff;
	border: 1px solid var(--dss-line);
	border-radius: 14px;
	padding: 1.5rem;
	box-shadow: 0 6px 24px rgba(20, 40, 70, .06);
}
.dss-roi__panel h3 { display: flex; align-items: center; gap: .6rem; margin: 0 0 1.1rem; font-size: 1.2rem; color: var(--dss-ink); }
.dss-roi__step {
	display: inline-flex; align-items: center; justify-content: center;
	width: 1.8rem; height: 1.8rem; flex: none;
	background: var(--dss-accent); color: #fff; border-radius: 50%;
	font-size: .95rem; font-weight: 700;
}

/* Examples */
.dss-roi__examples { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; margin-bottom: 1.2rem; font-size: .86rem; color: var(--dss-muted); }
.dss-roi__chip {
	padding: .3rem .75rem; font: inherit; font-size: .84rem; color: var(--dss-accent);
	background: #fff; border: 1px solid var(--dss-accent); border-radius: 99px; cursor: pointer;
	transition: background .15s, color .15s;
}
.dss-roi__chip:hover, .dss-roi__chip.is-active { background: var(--dss-accent); color: #fff; }

/* Fields */
.dss-roi__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.dss-roi__field { margin-bottom: 1.1rem; }
.dss-roi__field label { display: block; margin-bottom: .35rem; font-size: .9rem; font-weight: 600; color: var(--dss-ink); }
.dss-roi__hint { display: block; margin-top: .3rem; font-size: .78rem; line-height: 1.4; color: var(--dss-muted); }

.dss-roi input[type="number"],
.dss-roi select {
	width: 100%; padding: .7rem .85rem; font: inherit; color: var(--dss-ink);
	background: #fff; border: 1px solid #cdd6e0; border-radius: 8px; box-shadow: none;
	transition: border-color .15s, box-shadow .15s;
}
.dss-roi input:focus, .dss-roi select:focus, .dss-roi__chip:focus-visible, .dss-roi__adv summary:focus-visible {
	outline: none; border-color: var(--dss-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--dss-accent) 25%, transparent);
}
.dss-roi input[type="range"] { width: 100%; accent-color: var(--dss-accent); }

/* Collapsibles */
.dss-roi__adv { margin-top: .9rem; border: 1px solid var(--dss-line); border-radius: 10px; padding: 0 1rem; background: #fff; }
.dss-roi__adv summary { padding: .75rem 0; cursor: pointer; font-weight: 600; font-size: .92rem; color: var(--dss-accent); }
.dss-roi__adv[open] summary { margin-bottom: .6rem; }
.dss-roi__adv[open] { padding-bottom: .4rem; }

/* Results */
.dss-roi__results { background: var(--dss-bg); position: sticky; top: 1rem; }
.dss-roi__summary { margin: 0 0 .8rem; padding: 1rem 1.1rem; background: #fff; border: 1px solid var(--dss-line); border-radius: 12px; font-size: 1.02rem; }
.dss-roi__summary strong { color: var(--dss-accent); }
.dss-roi__verdict { display: inline-block; margin-bottom: 1rem; padding: .35rem .85rem; border-radius: 99px; font-size: .85rem; font-weight: 700; color: #fff; }
.dss-roi__verdict.is-great { background: var(--dss-good); }
.dss-roi__verdict.is-good { background: #2f7fc1; }
.dss-roi__verdict.is-slow { background: var(--dss-warn); }
.dss-roi__verdict.is-none { background: var(--dss-bad); }

.dss-roi__stats { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
.dss-roi__stat { background: #fff; border: 1px solid var(--dss-line); border-radius: 12px; padding: .9rem 1rem; display: flex; flex-direction: column; gap: .1rem; }
.dss-roi__stat small { font-size: .78rem; color: var(--dss-muted); }
.dss-roi__stat--hero { grid-column: 1 / -1; background: var(--dss-accent); border-color: var(--dss-accent); color: #fff; }
.dss-roi__stat--hero .dss-roi__label, .dss-roi__stat--hero small { color: rgba(255, 255, 255, .88); }
.dss-roi__stat--hero .dss-roi__value { font-size: clamp(1.9rem, 4vw, 2.6rem); }
.dss-roi__stat--hero.is-negative { background: var(--dss-bad); border-color: var(--dss-bad); }
.dss-roi__stat--wide { grid-column: 1 / -1; }
.dss-roi__label { font-size: .76rem; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; color: var(--dss-muted); }
.dss-roi__value { font-size: 1.35rem; font-weight: 700; line-height: 1.25; word-break: break-word; }

.dss-roi__bars { margin: 1.1rem 0 .4rem; display: grid; gap: .9rem; }
.dss-roi__bar { display: grid; grid-template-columns: 1fr auto; gap: .25rem .75rem; align-items: center; font-size: .85rem; }
.dss-roi__bar .dss-roi__track { grid-column: 1 / -1; }
.dss-roi__track { height: 12px; background: #e3eaf2; border-radius: 99px; overflow: hidden; }
.dss-roi__track i { display: block; height: 100%; width: 0; background: #8a98a8; border-radius: 99px; transition: width .35s ease; }
.dss-roi__bar--after .dss-roi__track i { background: var(--dss-good); }

.dss-roi__calc { width: 100%; border-collapse: collapse; font-size: .86rem; }
.dss-roi__calc th, .dss-roi__calc td { padding: .55rem 0; border-bottom: 1px solid var(--dss-line); vertical-align: top; text-align: left; }
.dss-roi__calc th { font-weight: 600; padding-right: .75rem; }
.dss-roi__calc th small { display: block; font-weight: 400; color: var(--dss-muted); }
.dss-roi__calc td { text-align: right; font-weight: 700; white-space: nowrap; }
.dss-roi__calc tr:last-child th, .dss-roi__calc tr:last-child td { border-bottom: 0; }

.dss-roi__glossary { margin: 0 0 .6rem; font-size: .87rem; }
.dss-roi__glossary dt { font-weight: 700; margin-top: .5rem; }
.dss-roi__glossary dd { margin: 0; color: var(--dss-muted); }
.dss-roi__note { margin: 1rem 0 0; font-size: .78rem; color: var(--dss-muted); }

/* Call to action */
.dss-roi__cta {
	display: flex; align-items: center; justify-content: space-between; gap: 1.5rem;
	margin-top: 1.25rem; padding: 1.5rem;
	background: #fff; border: 1px solid var(--dss-line); border-top: 4px solid var(--dss-accent);
	border-radius: 14px; box-shadow: 0 6px 24px rgba(20, 40, 70, .06);
}
.dss-roi__cta h3 { display: flex; align-items: center; gap: .6rem; margin: 0 0 .4rem; font-size: 1.2rem; color: var(--dss-ink); }
.dss-roi__cta p { margin: 0; color: var(--dss-muted); }
.dss-roi__btn {
	flex: none; display: inline-block; padding: .9rem 1.6rem; font-weight: 700; text-align: center;
	color: #fff !important; background: var(--dss-accent); border-radius: 8px; text-decoration: none !important;
	transition: filter .15s, transform .05s;
}
.dss-roi__btn:hover { filter: brightness(1.1); }
.dss-roi__btn:active { transform: translateY(1px); }

/* Signature */
.dss-roi__sign { margin-top: 1.25rem; text-align: center; font-size: .8rem; color: var(--dss-muted); }
.dss-roi__sign a { color: var(--dss-accent); text-decoration: none; }
.dss-roi__sign a:hover { text-decoration: underline; }

@media (max-width: 820px) {
	.dss-roi__grid { grid-template-columns: 1fr; }
	.dss-roi__results { position: static; }
	.dss-roi__cards { grid-template-columns: 1fr; }
	.dss-roi__cta { flex-direction: column; align-items: stretch; text-align: left; }
}
@media (max-width: 480px) {
	.dss-roi__row, .dss-roi__stats { grid-template-columns: 1fr; }
	.dss-roi__panel, .dss-roi__intro { padding: 1.1rem; }
}
