/* Dare2Shine Tickets — pagina agenților (mobile-first, temă închisă) */
body.page-acces { background: #161616 !important; }
body.page-acces .site-header, body.page-acces .topbar, body.page-acces .site-footer { display: none; }
body.page-acces .single-main { padding-top: 0; }
body.page-acces .single-header { display: none; }

#d2s-agent-app {
	max-width: 480px; margin: 0 auto; padding: 20px 16px 48px;
	color: #eee; font-size: 16px; min-height: 90vh;
}
.ag-loading, #d2s-agent-app .d2s-loading { color: #999; text-align: center; padding: 60px 0; }

/* login */
.ag-login { text-align: center; padding-top: 12vh; }
.ag-login h1 { color: #fff; letter-spacing: .08em; font-size: 26px; margin-bottom: 4px; }
.ag-sub { color: #999; margin-bottom: 24px; }
.ag-login input, .ag-search input {
	width: 100%; padding: 16px 18px; font-size: 17px;
	background: #262626; color: #fff; border: 1px solid #3a3a3a; border-radius: 12px;
	margin-bottom: 14px; outline: none;
}
.ag-login input:focus, .ag-search input:focus { border-color: #FE7901; }
.ag-err { color: #ff7b6b; margin-top: 12px; }

/* butoane */
.ag-btn {
	display: block; width: 100%; padding: 16px; font-size: 17px; font-weight: 700;
	background: #FE7901; color: #fff; border: 0; border-radius: 12px; cursor: pointer;
}
.ag-btn:disabled { background: #555; }
.ag-btn-big { padding: 22px; font-size: 20px; margin-top: 18px; letter-spacing: .04em; }
.ag-btn-ghost { background: transparent; border: 1px solid #3a3a3a; color: #aaa; margin-top: 14px; font-weight: 400; }

/* card bilet */
.ag-card { border-radius: 16px; padding: 24px 20px; text-align: center; margin-bottom: 16px; }
.ag-card.ag-ok { background: #123d22; border: 2px solid #2ecc71; }
.ag-card.ag-warn { background: #4a3208; border: 2px solid #f1a208; }
.ag-card.ag-bad { background: #46150f; border: 2px solid #e74c3c; }
.ag-state { font-size: 18px; font-weight: 800; letter-spacing: .03em; margin-bottom: 14px; }
.ag-ok .ag-state { color: #6ee7a0; }
.ag-warn .ag-state { color: #ffce54; }
.ag-bad .ag-state { color: #ff8a7a; }
.ag-seat { font-size: 34px; color: #fff; margin: 4px 0; line-height: 1.1; }
.ag-cat { color: #bbb; margin-bottom: 14px; }
.ag-name { font-size: 22px; color: #fff; }
.ag-meta { color: #999; font-size: 14px; margin-top: 6px; }

/* mini-harta */
.ag-hall { background: #232323; border-radius: 12px; padding: 14px 6px 16px; overflow-x: auto; }
.ag-screen {
	color: #888; text-align: center; letter-spacing: .3em; font-size: 10px;
	border-top: 2px solid #666; border-radius: 100% / 14px;
	margin: 0 30px 12px; padding-top: 6px;
}
.ag-row { display: flex; align-items: center; justify-content: center; gap: 2px; margin-bottom: 3px; opacity: .45; }
.ag-row.hot { opacity: 1; }
.ag-row .lbl { color: #aaa; font-size: 9px; width: 12px; text-align: center; flex-shrink: 0; }
.ag-row .gap { width: 12px; flex-shrink: 0; }
.ag-row .s { width: 8px; height: 7px; border-radius: 2px; background: #666; flex-shrink: 0; }
.ag-row.hot .s { background: #888; }
.ag-row .s.me {
	background: #FE7901; transform: scale(1.9); border-radius: 2px;
	box-shadow: 0 0 8px #FE7901; z-index: 1; position: relative;
}

/* căutare */
.ag-search h1 { color: #fff; text-align: center; margin: 12px 0 4px; }
.ag-search .ag-sub { text-align: center; }
.ag-result {
	display: block; width: 100%; text-align: left; background: #232323;
	border: 1px solid #333; color: #eee; border-radius: 12px;
	padding: 14px 16px; margin-bottom: 10px; cursor: pointer; font-size: 16px;
}
.ag-result span { color: #999; font-size: 13px; }
.ag-result.used { opacity: .55; }
.ag-result:active { border-color: #FE7901; }
