/* Polls (js/poll.js): /societies/poll/ and /play/poll/. Approved mock-ups, 1 Nov 2026. */
.pl { max-width: 560px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; padding: 0 0 32px; color: #14211a; font-family: 'Inter', sans-serif; }
.pl h1 { margin: 0; font: 800 26px/1.12 'Poppins', sans-serif; }
.pl a { color: #2f8a1f; font-weight: 700; }
.pl-k { font: 700 11px 'Inter', sans-serif; letter-spacing: .14em; color: #2f8a1f; }
.pl-hero { background: #14211a; color: #fff; padding: 18px 16px; display: flex; flex-direction: column; gap: 6px; border-radius: 0 0 18px 18px; }
.pl-hero .pl-k { color: #8fd97c; }
.pl-hero h1 { font-size: 24px; }
.pl-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.pl-when { font: 700 11px 'Inter', sans-serif; letter-spacing: .1em; color: #f08a24; }
.pl-when.is-closed { color: #8fd97c; }
.pl-meta { font-size: 13.5px; color: #c4d0c8; }
.pl-main { padding: 0 16px; display: flex; flex-direction: column; gap: 12px; }
.pl > .pl-k, .pl > h1, .pl > form { margin-left: 16px; margin-right: 16px; }
.pl > .pl-k { margin-top: 16px; }
.pl form { display: flex; flex-direction: column; gap: 12px; }
.pl-card, .pl-dark { background: #fff; border: 1px solid #e4e6e0; border-radius: 18px; padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.pl-dark { background: #14211a; color: #fff; border: 0; }
.pl-dark .pl-k { color: #8fd97c; }
.pl-card p, .pl-dark p { margin: 0; font-size: 14px; line-height: 1.5; color: #4a554e; }
.pl-dark p { color: #c4d0c8; }
.pl-h { font: 700 16px 'Poppins', sans-serif; }
.pl-sub { font-size: 12.5px; color: #5b665f; }
.pl label { display: flex; flex-direction: column; gap: 4px; font-size: 12.5px; font-weight: 700; color: #5b665f; }
.pl input:not([type="checkbox"]) { min-height: 44px; border: 1px solid #d5d9d1; border-radius: 10px; padding: 0 10px; font: 16px 'Inter', sans-serif; background: #fff; box-sizing: border-box; width: 100%; color: #14211a; }
.pl label.pl-check { flex-direction: row; align-items: center; gap: 10px; font-size: 14.5px; font-weight: 500; color: #14211a; }
.pl-check input { width: 22px; height: 22px; margin: 0; }
.pl-two { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.pl-kind { border: 1px solid #d5d9d1; background: #fff; border-radius: 12px; padding: 10px; text-align: left; display: flex; flex-direction: column; gap: 2px; font-family: 'Inter', sans-serif; color: #14211a; cursor: pointer; min-height: 56px; }
.pl-kind[aria-pressed="true"] { border: 2px solid #3fae29; background: #eef7ea; padding: 9px; }
.pl-kind small { color: #4a554e; font-size: 11.5px; }
.pl-small { font-size: 12.5px !important; color: #5b665f !important; margin: 0; }
.pl-link { border: 0; background: none; padding: 0; font: inherit; font-weight: 700; color: #2f8a1f; cursor: pointer; text-decoration: underline; }
.pl-dark .pl-link { color: #8fd97c; }
.pl-l { align-self: center; }
.pl-del { align-self: center; font-size: 13px; color: #5b665f; }
.pl-opt { display: grid; grid-template-columns: 1fr 40px; gap: 6px; align-items: center; }
.pl-town { grid-column: 1 / -1; color: #5b665f; font-size: 12px; margin-top: -2px; }
.pl-x { height: 44px; border: 0; background: none; font: 700 20px 'Inter', sans-serif; color: #5b665f; cursor: pointer; }
.pl-add { min-height: 44px; border: 1px dashed #b9c2bb; border-radius: 10px; background: #fff; font: 700 14px 'Inter', sans-serif; color: #2f8a1f; cursor: pointer; width: 100%; }
.pl-addrow { display: flex; flex-direction: column; gap: 6px; }
.pl-btn, .pl-btn2 { display: block; width: 100%; box-sizing: border-box; text-align: center; padding: 14px; border-radius: 12px; font: 700 15px 'Inter', sans-serif; cursor: pointer; text-decoration: none; }
.pl-btn { background: #3fae29; color: #fff !important; border: 0; }
.pl-btn:hover { background: #2f8a1f; }
.pl-btn:disabled { opacity: .6; }
.pl-btn2 { background: #fff; color: #14211a !important; border: 1px solid #d5d9d1; }
.pl-msg { color: #8a4a12 !important; font-weight: 600; min-height: 0; }
.pl-msg:empty { display: none; }
.pl-o { min-height: 56px; border: 1px solid #d5d9d1; background: #fff; border-radius: 14px; padding: 10px 14px; display: flex; justify-content: space-between; align-items: center; gap: 10px; font-family: 'Inter', sans-serif; color: #14211a; text-align: left; cursor: pointer; }
.pl-o[aria-pressed="true"] { border: 2px solid #3fae29; background: #eef7ea; padding: 9px 13px; }
.pl-o span { display: flex; flex-direction: column; }
.pl-o b { font-size: 15.5px; }
.pl-o small { color: #5b665f; font-size: 12px; }
.pl-o i { width: 24px; height: 24px; border-radius: 50%; border: 2px solid #b9c2bb; flex: none; box-sizing: border-box; }
.pl-o i.is-sq { border-radius: 6px; }
.pl-o[aria-pressed="true"] i { border-color: #3fae29; background: #3fae29; box-shadow: inset 0 0 0 3px #fff; }
.pl-day { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 8px 0; border-top: 1px solid #eef0ec; }
.pl-day b { font-size: 14.5px; }
.pl-day span { display: flex; gap: 6px; }
.pl-day button { min-width: 58px; min-height: 42px; border: 1px solid #d5d9d1; background: #fff; border-radius: 10px; font: 700 13px 'Inter', sans-serif; color: #14211a; cursor: pointer; }
.pl-day button[aria-pressed="true"] { border: 2px solid #3fae29; background: #eef7ea; }
.pl-day button[data-ans$=":m"][aria-pressed="true"] { border-color: #f08a24; background: #fdf0e3; }
.pl-day button[data-ans$=":n"][aria-pressed="true"] { border-color: #5b665f; background: #eef0ec; }
.pl-nick { margin-top: 2px; }
.pl-bar { display: flex; flex-direction: column; gap: 5px; }
.pl-bar > div { display: flex; justify-content: space-between; gap: 10px; font-size: 14.5px; }
.pl-bar small { color: #5b665f; font-size: 12px; font-weight: 400; }
.pl-lead { display: inline-block; font-size: 10.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #fff; background: #3fae29; border-radius: 999px; padding: 2px 7px; vertical-align: 2px; margin-left: 4px; }
.pl-track { height: 12px; border-radius: 6px; background: #eef0ec; display: block; overflow: hidden; }
.pl-track span { display: block; height: 12px; border-radius: 6px; background: #b9c2bb; }
.pl-track span.is-lead { background: #3fae29; }
.pl-grid { display: grid; gap: 6px; align-items: center; justify-items: center; font-size: 12px; overflow-x: auto; }
.pl-grid > b:not(.pl-gn):not(.pl-cnt) { text-align: center; line-height: 1.2; font-size: 11.5px; }
.pl-gn { justify-self: start; font-size: 14px; }
.pl-c { display: inline-flex; width: 30px; height: 30px; border-radius: 8px; align-items: center; justify-content: center; background: #eef0ec; color: #5b665f; }
.pl-c.is-y { background: #3fae29; color: #fff; font-weight: 800; }
.pl-c.is-m { background: #fde3c8; color: #8a4a12; font-weight: 800; }
.pl-cnt { font: 800 17px 'Poppins', sans-serif; display: flex; flex-direction: column; align-items: center; line-height: 1.1; }
.pl-cnt small { font: 600 10.5px 'Inter', sans-serif; color: #5b665f; }
.pl-cnt.is-best { color: #2f8a1f; }
.pl-good { color: #2f8a1f; }
.pl-made { border: 2px solid #3fae29; background: #f3faf0; }
.pl-wait p { color: #4a554e; }
.pl-wait b { color: #14211a; }
.pl-cq { margin-top: 4px; }
.pl .hq-cpick[hidden] { display: none; }
