/* Laithron — Tools. Uses shared tokens only; loaded only on single tool pages. */

.lth-costcalc{ margin-block:2rem; }
.lth-costcalc__head{ margin-block-end:1.4rem; }
.lth-costcalc__h{ font-family:var(--display); font-size:clamp(1.5rem,1.2rem + 1.6vw,2.1rem); margin:.2rem 0 .4rem; }
.lth-costcalc__lede{ color:var(--ink-soft); max-width:52ch; line-height:1.75; margin:0; }

.lth-costcalc__grid{
	display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:1.25rem;
	align-items:start;
}
.lth-costcalc__controls{
	background:var(--panel); border:1px solid var(--line); border-radius:var(--r-lg);
	padding:1.25rem; box-shadow:var(--sh-1); display:flex; flex-direction:column; gap:.9rem;
}

.lth-field{ display:flex; flex-direction:column; gap:.35rem; }
.lth-field label{ font-size:.86rem; font-weight:600; color:var(--ink); }
.lth-input{
	font:inherit; font-family:var(--mono); font-variant-numeric:tabular-nums;
	padding:.6rem .8rem; color:var(--ink);
	background:var(--panel-2); border:1px solid var(--line-2); border-radius:var(--r-sm);
	transition:border-color var(--t1), box-shadow var(--t1);
	inline-size:100%; text-align:start;
}
.lth-input:focus-visible{ outline:none; border-color:var(--accent); box-shadow:var(--ring); }

.lth-costcalc__actions{ display:flex; gap:.6rem; flex-wrap:wrap; margin-block-start:.3rem; }
.lth-costcalc__actions .laithron-btn{ flex:1 1 auto; }

.lth-costcalc__result{
	background:linear-gradient(180deg, var(--panel-2), var(--panel));
	border:1px solid var(--line-2); border-radius:var(--r-lg); padding:1.4rem 1.25rem;
	box-shadow:var(--sh-2); position:relative; overflow:hidden;
}
.lth-costcalc__result::before{
	content:""; position:absolute; inset-block-start:0; inset-inline:0; block-size:3px;
	background:linear-gradient(90deg, var(--accent), var(--cta));
}
.lth-costcalc__big{ display:flex; flex-direction:column; gap:.2rem; margin-block-end:1rem; }
.lth-costcalc__label{ font-size:.85rem; color:var(--ink-soft); }
.lth-costcalc__total{ font-family:var(--mono); font-variant-numeric:tabular-nums; font-weight:800; font-size:clamp(2rem,1.5rem + 2.4vw,2.9rem); color:var(--ink); line-height:1; }
.lth-costcalc__total small{ font-size:.4em; color:var(--ink-soft); font-weight:600; }

.lth-costcalc__breakdown{ list-style:none; margin:0 0 1rem; padding:0; display:flex; flex-direction:column; }
.lth-costcalc__breakdown li{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.55rem 0; border-block-start:1px solid var(--line); font-size:.92rem; }
.lth-costcalc__breakdown li span{ color:var(--ink-soft); }
.lth-costcalc__breakdown li b{ font-family:var(--mono); font-variant-numeric:tabular-nums; color:var(--ink); font-weight:600; }
.lth-costcalc__jump b{ color:var(--b-amber); }

.lth-costcalc__verdict{ margin:0; padding:.8rem .9rem; border:1px solid var(--line-2); border-radius:var(--r-sm); background:var(--tint-am); color:var(--ink); font-size:.92rem; line-height:1.7; font-weight:500; }
.lth-costcalc__assume{ margin-block-start:1rem; color:var(--ink-faint); font-size:.8rem; line-height:1.7; max-width:70ch; }

@media (max-width:768px){
	.lth-costcalc__grid{ grid-template-columns:1fr; }
}

/* ---- Tools hub ---- */
.lth-toolshub__intro{ margin-block:1rem 1.5rem; max-width:60ch; }
.lth-toolshub__title{ font-family:var(--display); font-size:clamp(1.9rem,1.4rem + 2.4vw,2.9rem); margin:.2rem 0 .5rem; }
.lth-toolshub__lede{ color:var(--ink-soft); font-size:1.05rem; line-height:1.8; margin:0; }
.lth-toolshub__tool{ padding-block:1rem; border-block-start:1px solid var(--line); }
.lth-toolshub__tool:first-of-type{ border-block-start:0; }
.lth-toolshub__soon{ margin-block-start:2.5rem; padding-block-start:2rem; border-block-start:1px solid var(--line); }
.lth-toolshub__soonhead{ font-family:var(--mono); font-size:.8rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-soft); margin:0 0 1rem; }
.lth-soon__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.lth-soon{ position:relative; padding:1.25rem; background:var(--panel); border:1px dashed var(--line-3); border-radius:var(--r-lg); box-shadow:var(--sh-1); }
.lth-soon__icon{ display:inline-flex; color:var(--ink-soft); }
.lth-soon__badge{ position:absolute; inset-block-start:1rem; inset-inline-end:1rem; font-family:var(--mono); font-size:.66rem; font-weight:600; letter-spacing:.1em; color:var(--cta-ink); background:var(--tint-em); border:1px solid transparent; padding:.2rem .5rem; border-radius:var(--pill); }
.lth-soon__title{ font-size:1.05rem; margin:.7rem 0 .3rem; color:var(--ink); }
.lth-soon__desc{ color:var(--ink-soft); font-size:.9rem; line-height:1.7; margin:0; }
.lth-toolshub__index{ margin-block-start:2rem; }
@media (max-width:768px){
	.lth-soon__grid{ grid-template-columns:1fr; }
}
