


/*----------------------------------------------------------
	002 — PANELS & LABELS
----------------------------------------------------------*/

/*----------------------------------------------------------
	YAHAN SIRF IS MODULE KA APNA HISSA HAI

	Template ka design aur theme — hero, badges, pills, steps,
	features, ads, cards, tables, toast aur poora app shell —
	assets/global-custom-web.css me hai (sections 001-013 aur
	101-122). Wo global pehle load hoti hai.

	Pehle har module un rules ki apni naql rakhta tha. Wo naqlein
	yahan se nikal di gayi hain: har wo rule jo global wale se
	hu-ba-hu ek tha, hata diya gaya, aur jo alag tha wo waisa hi
	chhora gaya — kyunke module ki CSS global ke BAAD load hoti
	hai aur us ka apna faisla jeetta hai.

	Naya rule likhne se pehle global me dekh len. Agar wahan
	pehle se hai, to yahan dobara na likhen.
----------------------------------------------------------*/
.wiz-panel-title{
	display: flex;
	align-items: center;
	gap: .5rem;
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--wiz-text);
}

.wiz-panel-title i{
	color: var(--wiz-primary);
	font-size: .95rem;
}

.wiz-panel{
	border: 1px solid var(--wiz-border);
	border-radius: var(--wiz-radius-card);
	background: var(--wiz-surface-2);
	padding: 1.15rem;
}

.wiz-panel-head i{
	color: var(--wiz-primary);
	font-size: .95rem;
}

.wiz-label{
	display: block;
	font-size: .78rem;
	font-weight: 600;
	color: var(--wiz-text);
	margin-bottom: .35rem;
}

.wiz-hint{
	font-size: .76rem;
	line-height: 1.6;
	color: var(--wiz-text-muted);
}

.wiz-hint i{
	color: var(--wiz-primary);
}

.pdf-drop-btn{
	margin-top: .65rem;
	font-size: .85rem;
	font-weight: 700;
	padding: .55rem 1.3rem;
	pointer-events: none;		/* poora dropzone hi clickable hai */
}


/*----------------------------------------------------------
	004 — FILE LIST
----------------------------------------------------------*/

.pdf-count{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 20px;
	padding: 0 .4rem;
	border-radius: 999px;
	font-size: .7rem;
	font-weight: 700;
	color: #fff;
	background: var(--wiz-primary);
}

.pdf-list{
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

.pdf-item{
	display: flex;
	align-items: center;
	gap: .75rem;
	padding: .7rem .85rem;
	border: 1px solid var(--wiz-border);
	border-radius: var(--wiz-radius-card);
	background: var(--wiz-surface);
	transition: border-color .15s ease, box-shadow .15s ease, opacity .15s ease;
}

.pdf-item:hover{
	border-color: color-mix(in srgb, var(--wiz-primary) 35%, transparent);
}

/*
	Drag ke doran jis card ko utha rakha hai wo halka ho jata hai, aur
	jahan girega wahan lakeer aati hai — bina in do nishanion ke drag
	and drop andhere me teer chalane jaisa lagta hai.
*/
.pdf-item.is-dragging{
	opacity: .4;
}

.pdf-item.is-drop-target{
	box-shadow: 0 -2px 0 0 var(--wiz-primary);
}

.pdf-grip{
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 32px;
	color: var(--wiz-text-muted);
	cursor: grab;
	opacity: .55;
}

.pdf-grip:active{
	cursor: grabbing;
}

.pdf-item-index{
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: var(--wiz-radius-btn);
	font-size: .74rem;
	font-weight: 700;
	color: var(--wiz-primary);
	background: color-mix(in srgb, var(--wiz-primary) 11%, transparent);
}

.pdf-item-body{
	flex: 1;
	min-width: 0;
}

.pdf-item-name{
	display: block;
	font-size: .85rem;
	font-weight: 600;
	color: var(--wiz-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.pdf-item-meta{
	display: block;
	font-size: .74rem;
	color: var(--wiz-text-muted);
}

.pdf-item-actions{
	flex-shrink: 0;
	display: flex;
	gap: .2rem;
}

.pdf-icon-btn{
	width: 28px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: var(--wiz-radius-btn);
	background: transparent;
	color: var(--wiz-text-muted);
	font-size: .8rem;
	transition: color .15s ease, background .15s ease;
}

.pdf-icon-btn:hover{
	color: var(--wiz-primary);
	background: color-mix(in srgb, var(--wiz-primary) 10%, transparent);
}

.pdf-icon-btn.is-remove:hover{
	color: #dc2626;
	background: rgba(220, 38, 38, .1);
}

.pdf-icon-btn:disabled{
	opacity: .3;
	pointer-events: none;
}

/* ---- error / loading states ---- */

.pdf-item.is-error{
	border-color: rgba(239, 68, 68, .4);
	background: rgba(239, 68, 68, .05);
}

.pdf-item.is-error .pdf-item-index{
	color: #dc2626;
	background: rgba(239, 68, 68, .12);
}

.pdf-item.is-error .pdf-item-meta{
	color: #b91c1c;
}

[data-bs-theme="dark"] .pdf-item.is-error .pdf-item-meta{
	color: #f87171;
}

.pdf-item.is-loading .pdf-item-meta{
	opacity: .6;
}


/*----------------------------------------------------------
	005 — TOTALS & OUTPUT
----------------------------------------------------------*/

.pdf-totals{
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
	margin-top: .85rem;
	padding-top: .85rem;
	border-top: 1px solid var(--wiz-border);
	font-size: .78rem;
	color: var(--wiz-text-muted);
}

.pdf-totals b{
	color: var(--wiz-text);
	font-weight: 700;
}


.wiz-btn-main i{
	margin-right: .4rem;
}

.btn:disabled{
	opacity: .45;
	pointer-events: none;
}

.btn.is-busy{
	position: relative;
	color: transparent !important;
}

.btn.is-busy::after{
	content: "";
	position: absolute;
	inset: 0;
	margin: auto;
	width: 15px;
	height: 15px;
	border: 2px solid #fff;
	border-top-color: transparent;
	border-radius: 50%;
	animation: wizSpin .6s linear infinite;
}

@keyframes wizSpin{
	to{ transform: rotate(360deg); }
}


/*----------------------------------------------------------
	012 — RESPONSIVE & PRINT
----------------------------------------------------------*/

@media screen and (max-width: 768px){

	.wiz-tool-hero{
		padding: 1.5rem 1.15rem;
	}

	.wiz-tool-title{
		font-size: 1.6rem;
	}

	.pdf-drop{
		min-height: 170px;
		padding: 1.6rem 1rem;
	}

	/*
		Chhoti screen par grip handle ka koi faida nahi — touch drag
		aksar page scroll se takra jata hai. Arrow buttons rehte hain.
	*/
	.pdf-grip{
		display: none;
	}

	.pdf-result{
		flex-wrap: wrap;
	}

	.pdf-result .btn{
		width: 100%;
	}
}

@media print{

	.wiz-navbar,
	.wiz-footer,
	.btn-back2top,
	.wiz-ad,
	.wiz-coffee,
	.wiz-coffee-card,
	.pdf-drop,
	.wiz-toast{
		display: none !important;
	}
}
