
/* HappyStock admin v1 and announcement/inbox screens */
.admin-layout{max-width:1140px;margin:34px auto 80px;padding:0 20px;color:#172922}
.admin-top{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:24px}
.admin-logo{font-size:22px;font-weight:850;letter-spacing:-.04em;color:#14583b}
.admin-top a{color:#176745;text-decoration:none;font-weight:650}
.admin-top nav{display:flex;gap:14px;align-items:center}
.admin-heading{font-size:clamp(24px,3vw,32px);margin:0 0 8px}
.admin-description{margin:0 0 26px;color:#63756b;font-size:14px}
.admin-gate{background:#fff;border:1px solid #dce8df;padding:25px;border-radius:16px}
.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}
.admin-metric{background:#fff;border:1px solid #e0e9e2;border-radius:14px;padding:17px}
.admin-metric small{display:block;color:#687b70;margin-bottom:8px}.admin-metric strong{font-size:26px}
.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.admin-tabs button{border:1px solid #d8e4dc;background:#fff;padding:11px 15px;border-radius:10px;color:#355344;font-weight:700}.admin-tabs button.active{background:#10744b;color:#fff;border-color:#10744b}
.admin-card{background:#fff;border:1px solid #dde8df;border-radius:16px;padding:24px;margin-bottom:16px;box-shadow:0 4px 14px rgba(16,55,34,.025)}
.admin-card h2{font-size:20px;margin:0 0 8px}.admin-card p{font-size:13px;color:#69796e;line-height:1.7}
.admin-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}
.admin-input,.admin-select,.admin-area{width:100%;border:1px solid #cbd9cf;border-radius:9px;padding:11px 12px;font:inherit;background:#fff;color:#182522;min-width:0}
.admin-area{min-height:120px;resize:vertical;white-space:pre-wrap}
.admin-row .admin-input{flex:1;min-width:180px}
.admin-primary{background:#13764f;color:#fff;border:none;border-radius:9px;padding:11px 16px;font-weight:750;cursor:pointer}
.admin-primary:hover{background:#0a5b3a}.admin-compact{border:1px solid #c8dace;border-radius:8px;background:#f5faf6;color:#136345;cursor:pointer;padding:7px 10px;font-weight:650}
.admin-danger{color:#9b3333;border-color:#ebd1d1;background:#fffafa}
.admin-primary:disabled,.admin-compact:disabled{opacity:.5;cursor:not-allowed}
.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px;min-width:680px}
.admin-table th{text-align:left;background:#f7faf7;color:#577060;padding:12px 11px;border-bottom:1px solid #e0e8e1}
.admin-table td{padding:12px 11px;border-bottom:1px solid #edf2ee;vertical-align:middle}
.admin-subtle{font-size:12px;color:#7a8d80;margin-top:4px}
.admin-pager{display:flex;align-items:center;gap:12px;justify-content:flex-end;padding-top:15px}
.admin-form{display:grid;gap:12px;margin-top:16px}.admin-form label{font-size:13px;font-weight:750;color:#3e5849}
.admin-form label>*{margin-top:6px}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-form .admin-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.admin-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #edf2ee}
.admin-item-actions{display:flex;gap:7px;flex-wrap:wrap}
.admin-status{min-height:22px;padding:8px 0;color:#176741;font-size:13px;white-space:pre-wrap}.admin-status[data-error="true"]{color:#ad3333}
.admin-dialog{width:min(94vw,500px);border-radius:16px;border:1px solid #d8e3db;padding:24px;box-shadow:0 18px 80px #0003}
.admin-dialog::backdrop{background:#172b20aa}.admin-dialog h2{margin:0 0 12px}
.admin-public-notice{background:#fff;border:1px solid #e1ece4;border-radius:14px;padding:22px;margin:14px 0;line-height:1.7}
.admin-public-notice h2{font-size:18px;margin:0 0 4px}.admin-public-notice small{color:#7a8d80}
.admin-public-notice p{color:#34483c;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}
[hidden]{display:none!important}
@media(max-width:730px){.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-card{padding:16px}.admin-form-grid{grid-template-columns:1fr}.admin-layout{margin:18px auto 50px;padding:0 14px}.admin-item{align-items:flex-start;flex-direction:column}}

/* Slightly larger text for admin tools without changing column widths. */
.admin-layout{font-size:16px}
.admin-description{font-size:15px}
.admin-card p,.admin-table,.admin-small-note{font-size:14px}
.admin-input,.admin-select,.admin-area,.admin-tabs button,.admin-compact{font-size:14px}

/* Avatar moderation queue */
.admin-avatar-entry{display:flex;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid #e8f0ea}
.admin-avatar-entry>img{width:96px;height:96px;flex:0 0 96px;object-fit:cover;border-radius:16px;background:#edf3ed}
.admin-avatar-entry>div{display:grid;gap:9px;min-width:0}.admin-avatar-entry small{color:#76877a}
@media(max-width:430px){.admin-avatar-entry>img{width:70px;height:70px;flex-basis:70px}}


/* Giveaway / events */
.hs-prize-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hs-prize-card{display:flex;flex-direction:column;gap:10px;color:inherit;text-decoration:none;border:1px solid var(--border,#dde5e2);border-radius:16px;padding:14px;background:var(--card,#fff);min-width:0;transition:box-shadow .18s}
.hs-prize-card:hover{box-shadow:0 6px 18px #0e654018}
.hs-prize-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;background:#f2f5f2}
.hs-prize-card strong{font-weight:750;overflow-wrap:anywhere}
.hs-prize-card span{font-size:.88rem;color:#53645f}
.hs-prize-hero{display:grid;grid-template-columns:minmax(180px,270px) minmax(0,1fr);gap:22px;align-items:start}
.hs-prize-hero>img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:18px;background:#f3f6f5}
.hs-prize-description{white-space:pre-wrap;overflow-wrap:anywhere}
.hs-prize-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.hs-prize-stat-grid>div{padding:12px;background:#eef5f2;border-radius:12px}
.hs-prize-stat-grid small{display:block;color:#506e60;margin-bottom:7px}
.hs-prize-top-row{display:flex;justify-content:space-between;padding:10px 4px;border-bottom:1px solid #e2e7e5}
.hs-prize-entry-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}
.hs-prize-entry-form input{width:180px;max-width:100%;padding:12px;border:1px solid #bccdc4;border-radius:9px}
.hs-prize-entry-form button{padding:12px 18px;background:#127b50;border:0;border-radius:10px;color:#fff;font-weight:700}
.hs-prize-details-panel{padding:22px;border:1px solid #e3e8e5;border-radius:15px;margin:18px 0}
.hs-prize-draw-proof{overflow-wrap:anywhere;font-size:.82rem;color:#4c5a53}
.hs-prize-status{min-height:1.4em;font-size:.9rem;color:#475c50}
.hs-giveaway-admin-preview{width:130px;height:130px;object-fit:cover;border-radius:10px}
@media(max-width:650px){.hs-prize-hero{grid-template-columns:1fr}.hs-prize-hero>img{max-width:240px}.hs-prize-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hs-prize-stat-grid{grid-template-columns:1fr}}
