/* AuthorWing ARC Readers — front-end styles. Scoped to .awarc-* classes only. */
:root {
	--awarc-red: #ea4a46;
	--awarc-red-dark: #d3261f;
	--awarc-pink: #fdf0ed;
	--awarc-pink-2: #f9dcd6;
	--awarc-mint: #eef6f1;
	--awarc-green: #2f7d5b;
	--awarc-ink: #1d2433;
	--awarc-text: #3f4652;
	--awarc-muted: #6b717c;
	--awarc-line: #e4e1de;
	--awarc-radius: 14px;
}

.awarc-scope, .awarc-form, .awarc-box, .awarc-claims, .awarc-grid, .awarc-tabs, .awarc-dash-head, .awarc-notice, .awarc-table { box-sizing: border-box; }
.awarc-scope *, .awarc-form *, .awarc-box *, .awarc-claims *, .awarc-grid * { box-sizing: border-box; }

/* Page blocks meant only for visitors who aren't readers yet */
.awarc-is-reader .aw-guest-only { display: none !important; }

/* Notices */
.awarc-notice { margin: 0 0 24px; padding: 14px 18px; border-radius: 10px; border-left: 4px solid var(--awarc-ink); background: #f4f5f7; color: var(--awarc-ink); font-size: 16px; line-height: 1.5; }
.awarc-notice--success { background: var(--awarc-mint); border-color: var(--awarc-green); }
.awarc-notice--error { background: var(--awarc-pink); border-color: var(--awarc-red-dark); }
.awarc-notice--info { background: #f1f4fa; border-color: #5b6b8c; }
.awarc-notice a { color: inherit; font-weight: 600; }

/* Boxes */
.awarc-box { background: #fff; border: 1px solid var(--awarc-line); border-radius: var(--awarc-radius); padding: 26px 28px; margin: 0 0 24px; }
.awarc-box h3 { margin: 0 0 8px; color: var(--awarc-ink); font-size: 20px; }
.awarc-box p:last-child { margin-bottom: 0; }
.awarc-center { text-align: center; }
.awarc-danger { background: #fffaf9; border-color: var(--awarc-pink-2); margin-top: 32px; }

/* Buttons & links */
.awarc-btn, .awarc-scope .awarc-btn, #awarc-loginform .button-primary {
	display: inline-block; background: var(--awarc-red-dark); color: #fff !important; border: 0; border-radius: 4px;
	padding: 13px 24px; font-size: 16px; font-weight: 600; line-height: 1.2; text-decoration: none !important; cursor: pointer;
	transition: background .15s ease; font-family: inherit;
}
.awarc-btn:hover, #awarc-loginform .button-primary:hover { background: #b81f19; color: #fff; }
.awarc-btn--dark { background: var(--awarc-ink); }
.awarc-btn--dark:hover { background: #000; }
.awarc-btn--ghost { background: #fff; color: var(--awarc-ink) !important; border: 1.5px solid var(--awarc-ink); padding: 11.5px 22px; }
.awarc-btn--ghost:hover { background: #f4f4f4; }
.awarc-link { background: none; border: 0; padding: 0; color: var(--awarc-red-dark); text-decoration: underline; cursor: pointer; font: inherit; }
.awarc-link:hover { color: var(--awarc-ink); }
.awarc-small { font-size: 14px; color: var(--awarc-muted); line-height: 1.5; }
.awarc-small a { color: var(--awarc-red-dark); }

/* Forms */
.awarc-form { background: #fff; border: 1px solid var(--awarc-line); border-radius: var(--awarc-radius); padding: 30px; max-width: 760px; margin: 0 auto 24px; }
.awarc-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.awarc-field { margin: 0 0 20px; border: 0; padding: 0; min-width: 0; }
.awarc-field > label, .awarc-field legend { display: block; font-weight: 600; color: var(--awarc-ink); margin-bottom: 6px; font-size: 16px; padding: 0; }
.awarc-field small, .awarc-field > small { display: block; color: var(--awarc-muted); font-size: 13.5px; margin-top: 5px; }
.awarc-field legend + small { margin: -2px 0 10px; }
.awarc-form input[type=text], .awarc-form input[type=email], .awarc-form input[type=password], .awarc-form input[type=url],
.awarc-inline input[type=url], #awarc-loginform input[type=text], #awarc-loginform input[type=password] {
	width: 100%; padding: 11px 13px; border: 1px solid #cfd3d9; border-radius: 4px; font-size: 16px; background: #fff; color: var(--awarc-ink); font-family: inherit;
}
.awarc-form input:focus, .awarc-inline input:focus, #awarc-loginform input:focus { outline: 2px solid var(--awarc-red); outline-offset: 0; border-color: var(--awarc-red); }
.awarc-form input:disabled { background: #f5f5f5; color: var(--awarc-muted); }
.awarc-req { color: var(--awarc-red-dark); }
.awarc-opt { font-weight: 400; color: var(--awarc-muted); font-size: 14px; }
.awarc-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.awarc-choices { display: grid; gap: 8px; }
.awarc-choices--2 { grid-template-columns: 1fr 1fr; }
.awarc-choices--3 { grid-template-columns: repeat(3, 1fr); }
.awarc-choice { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid var(--awarc-line); border-radius: 8px; cursor: pointer; font-size: 15px; line-height: 1.3; background: #fff; }
.awarc-choice:hover { border-color: var(--awarc-red); }
.awarc-choice:has(input:checked) { background: var(--awarc-pink); border-color: var(--awarc-red); }
.awarc-choice input, .awarc-check input { accent-color: var(--awarc-red-dark); width: 17px; height: 17px; flex: 0 0 auto; margin: 0; }
.awarc-check { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 14px; font-size: 15px; line-height: 1.45; cursor: pointer; }
.awarc-check input { margin-top: 3px; }
.awarc-check a { color: var(--awarc-red-dark); }

/* Login */
.awarc-login { max-width: 460px; margin: 0 auto 24px; }
#awarc-loginform p { margin: 0 0 16px; }
#awarc-loginform label { display: block; font-weight: 600; color: var(--awarc-ink); margin-bottom: 6px; }
#awarc-loginform .login-remember label { display: flex; gap: 8px; align-items: center; font-weight: 400; }
#awarc-loginform .button-primary { width: 100%; }

/* Dashboard */
.awarc-dash-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 0 20px; }
.awarc-dash-head p { margin: 0; font-size: 17px; }
.awarc-pill { display: inline-block; padding: 3px 11px; border-radius: 20px; font-size: 13px; font-weight: 600; background: #eef0f3; color: var(--awarc-text); vertical-align: middle; }
.awarc-pill--approved { background: var(--awarc-mint); color: var(--awarc-green); }
.awarc-pill--pending, .awarc-pill--pending_email { background: #fff4e0; color: #8a5a00; }
.awarc-pill--declined, .awarc-pill--removed { background: var(--awarc-pink); color: var(--awarc-red-dark); }
.awarc-tabs { display: flex; gap: 4px; border-bottom: 2px solid var(--awarc-line); margin: 0 0 24px; overflow-x: auto; }
.awarc-tabs a { padding: 10px 18px; text-decoration: none; color: var(--awarc-text); font-weight: 600; border-bottom: 3px solid transparent; margin-bottom: -2px; white-space: nowrap; }
.awarc-tabs a:hover { color: var(--awarc-ink); }
.awarc-tabs a.is-active { color: var(--awarc-red-dark); border-bottom-color: var(--awarc-red-dark); }

.awarc-claims { display: grid; gap: 18px; }
.awarc-claim { display: grid; grid-template-columns: 120px 1fr; gap: 24px; background: #fff; border: 1px solid var(--awarc-line); border-radius: var(--awarc-radius); padding: 22px; }
.awarc-claim__cover img, .awarc-claim__cover .awarc-cover { width: 100%; height: auto; border-radius: 6px; display: block; }
.awarc-claim__body h3 { margin: 0 0 2px; font-size: 20px; }
.awarc-claim__body h3 a { color: var(--awarc-ink); text-decoration: none; }
.awarc-claim__body > p { margin: 0 0 12px; }
.awarc-due { display: inline-block; padding: 4px 11px; border-radius: 6px; background: var(--awarc-mint); color: var(--awarc-green); font-size: 14px; font-weight: 600; }
.awarc-due--soon { background: #fff4e0; color: #8a5a00; }
.awarc-due--late { background: var(--awarc-pink); color: var(--awarc-red-dark); }
.awarc-inline { margin: 6px 0 10px; }
.awarc-inline label { display: block; font-size: 14px; font-weight: 600; color: var(--awarc-ink); margin-bottom: 6px; }
.awarc-inline__row { display: flex; gap: 8px; }
.awarc-inline__row input { flex: 1; min-width: 0; }
.awarc-inline__row .awarc-btn { padding: 11px 20px; }
.awarc-release { margin: 0; }
.awarc-dl { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.awarc-btn.is-disabled { opacity: .6; cursor: default; }
.awarc-stampnote { margin: -4px 0 10px; }
.awarc-help { margin: 0 0 14px; font-size: 14.5px; background: #f7f8f9; border-radius: 8px; padding: 10px 14px; }
.awarc-help summary { cursor: pointer; font-weight: 600; color: var(--awarc-ink); }
.awarc-help ul { margin: 10px 0 8px 1.1em; padding: 0; }
.awarc-help li { margin: 0 0 6px; }
.awarc-help p { margin: 0; }
.awarc-release .awarc-link { font-size: 14px; color: var(--awarc-muted); }

.awarc-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--awarc-line); border-radius: var(--awarc-radius); overflow: hidden; font-size: 15px; }
.awarc-table th, .awarc-table td { padding: 12px 14px; text-align: left; border-bottom: 1px solid var(--awarc-line); }
.awarc-table th { background: var(--awarc-pink); color: var(--awarc-ink); font-weight: 600; }
.awarc-table tr:last-child td { border-bottom: 0; }
.awarc-table a { color: var(--awarc-red-dark); }

/* Books grid */
.awarc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 24px; }
.awarc-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--awarc-line); border-radius: var(--awarc-radius); overflow: hidden; transition: box-shadow .15s ease, transform .15s ease; }
.awarc-card:hover { box-shadow: 0 10px 28px rgba(29, 36, 51, .08); transform: translateY(-2px); }
.awarc-card__cover { display: block; background: var(--awarc-pink); padding: 22px 22px 0; aspect-ratio: 4 / 4.4; overflow: hidden; }
.awarc-card__cover img, .awarc-card__cover .awarc-cover { width: 100%; height: 100%; object-fit: contain; object-position: bottom center; display: block; }
.awarc-card__body { padding: 18px 20px 20px; display: flex; flex-direction: column; flex: 1; }
.awarc-card__body h3 { margin: 6px 0 2px; font-size: 19px; line-height: 1.3; }
.awarc-card__body h3 a { color: var(--awarc-ink); text-decoration: none; }
.awarc-card__body > p { margin: 0 0 10px; font-size: 15px; }
.awarc-card__body .awarc-cta { margin-top: auto; }
.awarc-tag { display: inline-block; align-self: flex-start; background: var(--awarc-mint); color: var(--awarc-green); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: 3px 9px; border-radius: 4px; }
.awarc-cta { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 0 0 12px; }
.awarc-why { background: #f6f6f7; border-radius: 8px; padding: 10px 12px; color: var(--awarc-text); }
.awarc-cover--empty { display: flex; align-items: center; justify-content: center; text-align: center; aspect-ratio: 2 / 3; background: var(--awarc-ink); color: #fff; font-weight: 700; padding: 14px; border-radius: 4px; font-size: 15px; line-height: 1.3; }
.awarc-empty { text-align: center; }

/* Single book */
.awarc-book-panel { display: grid; grid-template-columns: 260px 1fr; gap: 36px; align-items: start; background: var(--awarc-pink); border-radius: var(--awarc-radius); padding: 30px; margin: 0 0 36px; }
.awarc-book-panel__cover img, .awarc-book-panel__cover .awarc-cover { width: 100%; height: auto; border-radius: 6px; box-shadow: 0 10px 30px rgba(29, 36, 51, .15); display: block; }
.awarc-meta { font-size: 16px; line-height: 1.9; margin: 0 0 18px; color: var(--awarc-text); }
.awarc-meta strong { color: var(--awarc-ink); }
.awarc-book-desc { max-width: 760px; }

@media (max-width: 700px) {
	.awarc-form { padding: 22px 18px; }
	.awarc-box { padding: 22px 18px; }
	.awarc-row, .awarc-choices--2 { grid-template-columns: 1fr; }
	.awarc-choices--3 { grid-template-columns: 1fr; }
	.awarc-claim { grid-template-columns: 80px 1fr; gap: 16px; padding: 16px; }
	.awarc-inline__row { flex-direction: column; }
	.awarc-book-panel { grid-template-columns: 1fr; padding: 22px; gap: 22px; }
	.awarc-book-panel__cover { max-width: 220px; }
	.awarc-table { font-size: 14px; }
	.awarc-table th, .awarc-table td { padding: 10px 8px; }
}
