/*
 * Trinetra Download Gate v1.0.0 - Tactical Monolith styling.
 * Uses the theme's CSS variables when present, with hard fallbacks so the
 * popup looks right even if the tokens ever change.
 * Author: Shivaji Mitra / M/S. Anblik
 */

/* ---- Dialog shell -------------------------------------------------------- */
.ttdg{
	border:1px solid var(--border,#1e1f22);
	background:
		linear-gradient(rgba(201,167,71,.035) 1px,transparent 1px),
		linear-gradient(90deg,rgba(201,167,71,.035) 1px,transparent 1px),
		var(--surface,#0f1113);
	background-size:44px 44px,44px 44px,auto;
	color:var(--foreground,#f2f2ec);
	padding:0;
	width:min(94vw,31rem);
	max-height:90vh;
	overflow-x:hidden;
	overflow-y:auto;
}
.ttdg::backdrop{background:rgba(7,8,10,.82);backdrop-filter:blur(3px)}
.ttdg-inner{position:relative;padding:1.5rem 1.5rem 1.6rem}
@media (max-width:480px){.ttdg-inner{padding:1.25rem 1.1rem 1.35rem}}

/* HUD corner brackets */
.ttdg-c{position:absolute;width:16px;height:16px;border:2px solid var(--accent,#c9a747);pointer-events:none}
.ttdg-tl{top:-1px;left:-1px;border-right:none;border-bottom:none}
.ttdg-tr{top:-1px;right:-1px;border-left:none;border-bottom:none}
.ttdg-bl{bottom:-1px;left:-1px;border-right:none;border-top:none}
.ttdg-br{bottom:-1px;right:-1px;border-left:none;border-top:none}

/* Gentle entrance; removed for reduced motion */
.ttdg[open]{animation:ttdg-in .28s ease}
@keyframes ttdg-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ttdg[open]{animation:none}}

/* ---- Close button -------------------------------------------------------- */
.ttdg-close{
	position:absolute;top:.8rem;right:.8rem;z-index:2;
	display:inline-flex;align-items:center;justify-content:center;
	width:44px;height:44px;border:1px solid var(--border,#1e1f22);
	background:transparent;color:var(--muted-foreground,#8a8a80);cursor:pointer;
	transition:color .15s,border-color .15s;
}
.ttdg-close:hover{color:var(--accent,#c9a747);border-color:var(--accent,#c9a747)}
.ttdg-close svg{width:18px;height:18px}
.ttdg-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ---- Type ---------------------------------------------------------------- */
.ttdg-kicker{
	margin:0 0 .55rem;font-family:"JetBrains Mono",ui-monospace,monospace;
	font-size:10px;letter-spacing:.22em;text-transform:uppercase;
	color:var(--accent,#c9a747);
}
.ttdg-h{
	margin:0;font-family:"Rajdhani","Inter",ui-sans-serif,sans-serif;
	font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:.98;
	font-size:clamp(1.5rem,4.2vw,1.95rem);color:var(--foreground,#f2f2ec);
	padding-right:2.6rem;
}
.ttdg-accent{color:var(--accent,#c9a747)}
.ttdg-rule{display:flex;height:3px;width:7rem;overflow:hidden;margin:.7rem 0 0}
.ttdg-rule span{flex:1}
.ttdg-rule span:nth-child(1){background:#ff9933}
.ttdg-rule span:nth-child(2){background:var(--foreground,#f2f2ec)}
.ttdg-rule span:nth-child(3){background:#138808}
.ttdg-body{margin-top:.75rem}
.ttdg-body p,.ttdg-intro{margin:.4rem 0 0;font-size:.875rem;line-height:1.5;color:#aeaea3}
.ttdg-note{margin:.9rem 0 0;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent,#c9a747)}

/* ---- Form area ----------------------------------------------------------- */
.ttdg-formwrap{margin-top:.95rem}
.ttdg-formwrap label{
	display:block;margin:0 0 .25rem;font-family:"JetBrains Mono",ui-monospace,monospace;
	font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b8b8ad;
}
.ttdg-formwrap .aaf-field{margin:0 0 .7rem}
/* Two-up row (Mobile + Email) that stacks on narrow screens */
.ttdg-fieldrow{display:grid;grid-template-columns:1fr 1fr;gap:0 .8rem}
@media (max-width:420px){.ttdg-fieldrow{grid-template-columns:1fr}}
.ttdg-formwrap input[type=text],
.ttdg-formwrap input[type=tel],
.ttdg-formwrap input[type=email],
.ttdg-formwrap input[type=number],
.ttdg-formwrap textarea,
.ttdg-formwrap select{
	width:100%;box-sizing:border-box;
	background:var(--surface-alt,#14171a)!important;
	border:1px solid var(--input,#1e1f22)!important;
	color:var(--foreground,#f2f2ec)!important;
	padding:.55rem .7rem;font:400 .9rem/1.4 "Inter",ui-sans-serif,sans-serif;
	border-radius:0;min-height:44px;
}
.ttdg-formwrap textarea{min-height:3.4rem;line-height:1.4}
.ttdg-formwrap input:focus-visible,
.ttdg-formwrap textarea:focus-visible,
.ttdg-formwrap select:focus-visible,
.ttdg-close:focus-visible,
.ttdg-btn:focus-visible,
.ttdg-fab:focus-visible{outline:3px solid var(--ring,#c9a747);outline-offset:2px}
.ttdg-formwrap .aaf-required-note{color:#a8a89d!important;font-size:.8rem}
.ttdg-formwrap .aaf-errors{
	border:1px solid #b3341f;background:rgba(179,52,31,.12);
	padding:.8rem 1rem;margin:0 0 1rem;color:#ffb4a3;font-size:.9rem;line-height:1.6;
}
.ttdg-formwrap .aaf-errors a{color:#ffcabd;text-decoration:underline}
.ttdg-formwrap .aaf-success{color:#9fdc9a;font-size:.95rem;line-height:1.6}

/* Submit button of the form */
.ttdg-formwrap .aaf-actions{margin-top:.2rem}
.ttdg-formwrap button[type=submit],
.ttdg-formwrap input[type=submit],
.ttdg-formwrap .aaf-actions button{
	display:inline-flex;align-items:center;gap:.6rem;cursor:pointer;width:100%;justify-content:center;
	background:var(--accent,#c9a747)!important;color:var(--accent-foreground,#07080a)!important;
	border:1px solid var(--accent,#c9a747)!important;
	padding:.75rem 1.4rem;min-height:44px;border-radius:0;
	font:700 12px/1 "Inter",ui-sans-serif,sans-serif;text-transform:uppercase;letter-spacing:.12em;
	transition:filter .15s;
}
.ttdg-formwrap button[type=submit]:hover,
.ttdg-formwrap input[type=submit]:hover,
.ttdg-formwrap .aaf-actions button:hover{filter:brightness(1.1)}

/* ---- Success panel ------------------------------------------------------- */
.ttdg-success[hidden]{display:none}
.ttdg-points{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.65rem}
.ttdg-points li{
	position:relative;padding-left:1.15rem;
	font-size:.92rem;line-height:1.65;color:#aeaea3;
}
.ttdg-points li::before{
	content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;
	background:var(--accent,#c9a747);
}
.ttdg-points a{color:var(--accent,#c9a747);text-decoration:underline;text-underline-offset:3px}
.ttdg-points a:hover{color:var(--foreground,#f2f2ec)}
.ttdg-dl{margin:1.5rem 0 0}

/* Gold action button (download + inline shortcode button) */
.ttdg-btn{
	display:inline-flex;align-items:center;gap:.65rem;cursor:pointer;text-decoration:none;
	background:var(--accent,#c9a747);color:var(--accent-foreground,#07080a)!important;
	border:1px solid var(--accent,#c9a747);
	padding:.95rem 1.6rem;min-height:48px;
	font:700 13px/1 "Inter",ui-sans-serif,sans-serif;text-transform:uppercase;letter-spacing:.12em;
	transition:filter .15s;
}
.ttdg-btn:hover{filter:brightness(1.1)}
.ttdg-btn svg{width:18px;height:18px;flex:none}

/* ---- Floating button ----------------------------------------------------- */
.ttdg-fab{
	position:fixed;right:1.1rem;bottom:1.1rem;z-index:80;cursor:pointer;
	display:inline-flex;align-items:center;gap:.6rem;
	background:var(--accent,#c9a747);color:var(--accent-foreground,#07080a);
	border:1px solid var(--accent,#c9a747);
	padding:.8rem 1.2rem;min-height:48px;
	font:700 12px/1 "Inter",ui-sans-serif,sans-serif;text-transform:uppercase;letter-spacing:.12em;
	box-shadow:0 6px 22px rgba(0,0,0,.5);
	transition:filter .15s,transform .15s;
}
.ttdg-fab:hover{filter:brightness(1.1);transform:translateY(-1px)}
@media (prefers-reduced-motion:reduce){.ttdg-fab:hover{transform:none}}
.ttdg-fab svg{width:18px;height:18px;flex:none}
@media (max-width:480px){.ttdg-fab{right:.75rem;bottom:.75rem;padding:.75rem 1rem}}
@media print{.ttdg-fab,.ttdg{display:none!important}}

/* ---- v2: built-in form states ------------------------------------------- */
/* Honeypot: hidden without clip-free -9999px (which stretched the box and
   created a horizontal scrollbar). Screen-reader-clip keeps it out of view
   and out of layout. */
.ttdg-hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap;left:0;top:0;margin:-1px;padding:0;border:0}
.ttdg-status{margin:0}
.ttdg-status:not(:empty){
	border:1px solid #b3341f;background:rgba(179,52,31,.12);
	padding:.7rem .9rem;margin:0 0 .8rem;color:#ffb4a3;font-size:.85rem;line-height:1.5;
}
.ttdg-status ul{margin:.4rem 0 0;padding-left:1.1rem}
.ttdg-status a{color:#ffcabd;text-decoration:underline}
.ttdg-err{margin:.3rem 0 0;font-size:.8rem;line-height:1.45;color:#ffb4a3}
.ttdg-formwrap [aria-invalid="true"]{border-color:#b3341f!important}
.ttdg-reqnote{font-size:.78rem;color:#a8a89d;margin:0 0 .7rem}
