@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#20211d;--muted:#74756c;--paper:#f6f6f0;--line:#dcded3;--yellow:#f4e22b;--font:'DM Sans',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #427452;outline-offset:5px}a{color:inherit;text-decoration:none}.site-header{height:90px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;max-width:1440px;padding:0 52px;margin:auto}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:27px;letter-spacing:-1.25px}.brand-icon{width:37px;height:39px;display:grid;place-items:center;background:var(--yellow);border:1.5px solid var(--ink);border-radius:9px;transform:rotate(-6deg);margin-right:3px}.brand-icon svg{width:28px;fill:none;stroke:var(--ink);stroke-width:2.3;stroke-linecap:round}.brand-rj{font-size:12px;letter-spacing:0;background:var(--ink);color:var(--paper);padding:4px 5px;border-radius:3px;align-self:flex-start;margin-top:5px}.header-right{display:flex;align-items:center;gap:32px;font-size:14px}.location{color:#606258}.text-button{padding:8px 0;background:none;border:0;font-size:14px;font-weight:600}.text-button span{margin-left:8px}main{max-width:1336px;padding:0 38px;margin:0 auto}.intro{display:flex;align-items:flex-end;justify-content:space-between;padding:36px 0 29px;gap:20px}.eyebrow,.panel-label{font-size:12px;letter-spacing:1.7px;font-weight:750}.eyebrow{display:flex;align-items:center;gap:10px}.small-line{width:22px;height:2px;background:var(--ink)}h1{font-family:var(--display);font-size:76px;font-weight:800;line-height:.99;letter-spacing:-1.7px;margin:12px 0 12px}h1 span{position:relative;z-index:0}h1 span:after{content:'';height:14px;background:var(--yellow);position:absolute;bottom:5px;left:0;right:0;z-index:-1;transform:rotate(-2deg)}.intro p{color:#66685e;margin:0;line-height:1.6;font-size:15px}.demo-tag{display:flex;gap:11px;align-items:center;padding:11px 15px;border:1px solid var(--line);border-radius:5px;margin-bottom:2px;background:#eeefe6;flex-shrink:0}.demo-tag strong{display:block;font-size:13px}.demo-tag div>span{display:block;font-size:12px;color:#6b6d60;margin-top:3px}.demo-symbol{font-size:28px;color:#797923}.workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,1fr);border:1px solid #d0d2c7;border-radius:9px;overflow:hidden;min-height:583px}.meter-card{background:#e9ebdf;position:relative;isolation:isolate;overflow:hidden;min-height:580px;background-image:radial-gradient(#bcc0ae 0.6px,transparent .6px);background-size:9px 9px}.meter-top{position:absolute;top:23px;left:26px;right:26px;display:flex;justify-content:space-between;z-index:4;align-items:center}.panel-label{font-size:11px;letter-spacing:1.5px}.live-tag{font-size:10px;letter-spacing:1.4px;border:1px solid #a1a592;border-radius:3px;padding:5px 7px;background:#e9ebdf}.measurement{position:absolute;left:28px;top:65px;display:flex;flex-direction:column;z-index:4}.measurement>span:first-child{font-family:var(--display);font-size:55px;font-weight:700;line-height:1}.measurement>span:first-child span{font-size:30px}.measurement>span:last-child{font-size:10px;font-weight:700;letter-spacing:1.3px;margin-top:5px}.portrait-stage{position:absolute;inset:52px 0 83px;display:flex;align-items:center;justify-content:center}.portrait{width:100%;height:100%;z-index:1;overflow:visible;filter:drop-shadow(0 4px 0 rgba(52,61,36,.06))}#ear-left,#ear-right{transition:transform 850ms cubic-bezier(.18,.8,.25,1.05)}.ear-callout{position:absolute;right:55px;top:103px;font-family:var(--display);font-weight:700;font-size:17px;transform:rotate(8deg);z-index:2;background:var(--yellow);padding:6px 10px;border:1.5px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}.ruler{position:absolute;top:152px;bottom:139px;width:29px;background:repeating-linear-gradient(to bottom,transparent 0 17px,#a4aa90 17px 18px);z-index:3;display:flex;flex-direction:column;justify-content:space-between;color:#757d60;font-size:9px}.ruler-left{left:25px;border-left:1px solid #959d7c}.ruler-right{right:25px;border-right:1px solid #959d7c}.ruler span{background:#e9ebdf;padding:2px;align-self:flex-end}.ruler-right span{align-self:flex-start}.tape{position:absolute;bottom:101px;left:-20px;width:calc(100% + 40px);background:var(--yellow);border-block:1.5px solid var(--ink);transform:rotate(-4deg);height:42px;display:flex;align-items:center;justify-content:space-around;gap:32px;z-index:3;font-family:var(--display);font-size:22px;font-weight:700;white-space:nowrap;letter-spacing:1.2px}.meter-bottom{position:absolute;bottom:24px;left:27px;right:27px;display:flex;justify-content:space-between;align-items:center;z-index:4}.meter-bottom strong{font-size:22px;font-family:var(--display);font-weight:700;display:block;margin-top:4px}.meter-bottom .panel-label{font-size:9px}.level-number{font-family:var(--display);font-size:36px;font-weight:600}.level-number span{font-size:21px;color:#939888}.level-track{position:absolute;left:0;right:0;bottom:0;height:5px;background:#d8dccb}.level-track span{display:block;width:5%;height:100%;background:#252e20;transition:width .6s}.growth-bubble{position:absolute;top:48%;left:50%;z-index:8;pointer-events:none;font-weight:800;background:var(--yellow);padding:10px 15px;border:2px solid var(--ink);border-radius:8px;opacity:0;transform:translate(-50%,0);white-space:nowrap;box-shadow:3px 3px var(--ink)}.growth-bubble.pop{animation:pop 1.05s ease-out forwards}@keyframes pop{0%{opacity:0;transform:translate(-50%,20px) scale(.7)}15%{opacity:1;transform:translate(-50%,0) scale(1.04)}65%{opacity:1}100%{opacity:0;transform:translate(-50%,-45px)}}.control-panel{background:#fdfdf8;padding:26px 26px 19px;border-left:1px solid #d0d2c7}.score-head{display:flex;align-items:center;justify-content:space-between}.asterisk{font-size:26px;line-height:1}.total-row{display:flex;align-items:center;gap:17px;margin:8px 0 21px;padding-bottom:20px;border-bottom:1px solid var(--line)}.total-row>strong{font-family:var(--display);font-size:83px;letter-spacing:-2px;line-height:1;font-weight:700}.total-row>span{font-size:13px;color:#797b70;line-height:1.5}.control-heading h2{font-size:19px;letter-spacing:-.6px;margin:0 0 5px;font-weight:750}.control-heading p{font-size:13px;color:var(--muted);margin:0 0 17px}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.category-button{border:1px solid #dedfd5;background:#f8f9f2;border-radius:5px;display:flex;align-items:center;gap:8px;text-align:left;padding:11px 10px;min-height:44px;font-size:12px;font-weight:650;transition:background .15s,transform .15s,border-color .15s}.category-button:not(:disabled):hover{background:#f4e22b;border-color:#c7b810;transform:translateY(-1px)}.category-button:active{transform:translateY(1px)}.category-icon{width:17px;height:17px;flex-shrink:0;stroke:#676b59;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.category-plus{margin-left:auto;color:#808474;font-size:15px;font-weight:400}.demo-controls{display:flex;gap:8px;margin-top:20px}.auto-button{border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:#fff;flex:1;padding:13px;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:9px}.auto-button svg{width:15px;height:15px;fill:var(--yellow)}.auto-button:hover{background:#3c3e33}.auto-button[aria-pressed=true]{background:var(--yellow);color:var(--ink)}.auto-button[aria-pressed=true] svg{fill:var(--ink)}.reset-button{width:44px;background:transparent;border:1px solid var(--line);border-radius:5px;display:grid;place-items:center}.reset-button svg{width:19px;stroke:var(--ink);fill:none;stroke-width:1.6}.reset-button:hover{background:#e9ebdf}.simulation-note{margin:12px 1px 0;color:#898b7f;font-size:11px;line-height:1.6}.history-section{padding:32px 0 28px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.section-heading .eyebrow{font-size:10px;letter-spacing:1.5px;color:#757869}h2{margin:7px 0 0;font-size:21px;letter-spacing:-.6px}.subtle{font-weight:400;color:#8a8e7e}.history-count{font-size:12px;border:1px solid #d6dacb;border-radius:5px;padding:5px 9px;color:#727867}.empty-state{min-height:107px;display:flex;align-items:center;justify-content:center;gap:15px;border:1px dashed #ccd1bf;border-radius:6px;margin-top:20px;color:#8b907f}.empty-state>span{font-size:38px;color:#929c7d}.empty-state p{font-size:13px;line-height:1.8;margin:0}.empty-state strong{font-weight:500;color:#6d745e}.history-list{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.history-list:empty{display:none}.history-item{padding:12px 14px;background:#fffef8;border:1px solid var(--line);border-radius:5px;display:flex;align-items:center;gap:11px;animation:enter .25s ease-out}.history-symbol{padding:8px;background:#eef0e5;border-radius:4px;display:flex}.history-item strong{display:block;font-size:13px}.history-item small{font-size:11px;color:#8b8e81}.history-time{font-size:11px;margin-left:auto;color:#8b8e81}.history-growth{font-family:var(--display);font-size:21px;font-weight:600;border-left:1px solid var(--line);padding-left:12px;margin-left:6px}@keyframes enter{from{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}footer{border-top:1px solid var(--line);padding:24px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:18px}.footer-brand{font-size:17px;letter-spacing:-.7px;font-weight:800}.footer-brand span{font-size:10px;background:#dce0d1;padding:3px;border-radius:3px;letter-spacing:0;margin-left:3px}footer p{font-size:12px;color:#828675;margin:0}footer>span{font-size:9px;letter-spacing:1.2px;font-weight:600;color:#898e7c}dialog{border:1px solid var(--ink);border-radius:10px;background:var(--paper);padding:35px;max-width:530px;width:calc(100% - 36px);box-shadow:8px 8px 0 #1a1a1730}dialog::backdrop{background:#14171099;backdrop-filter:blur(4px)}dialog h2{font-family:var(--display);font-size:40px;line-height:1.05;margin:14px 0 25px}dialog p{font-size:15px;line-height:1.7;color:#636956}.dialog-close{position:absolute;top:12px;right:15px;border:0;background:none;font-size:29px}.dialog-note{background:#e9ecd8;padding:15px;border-radius:4px;font-size:13px!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(min-width:1500px){main{max-width:1380px}.workspace{min-height:650px}.meter-card{min-height:650px}.control-panel{padding:32px}.category-button{min-height:50px;font-size:14px}.total-row{margin-bottom:29px}.total-row>strong{font-size:95px}.ear-callout{top:115px}}
@media(max-width:1050px){.site-header{padding:0 28px}main{padding:0 28px}.workspace{grid-template-columns:minmax(0,1.3fr) minmax(315px,1fr)}h1{font-size:66px}.intro p{font-size:14px}.demo-tag{padding:10px}.demo-tag div>span{font-size:11px}.ear-callout{right:37px;top:128px;font-size:13px}.measurement>span:first-child{font-size:46px}.control-panel{padding:24px 20px}.ruler-left{left:17px}.ruler-right{right:17px}.portrait-stage{inset:75px -22px 90px}footer>span{display:none}}
@media(max-width:760px){.site-header{height:73px;padding:0 20px}.brand{font-size:23px}.brand-icon{width:32px;height:35px}.header-right{gap:0}.location{display:none}.text-button{font-size:12px}.text-button span{display:none}main{padding:0 18px}.intro{padding:27px 0 23px;align-items:flex-start;flex-direction:column;gap:17px}.eyebrow{font-size:9px;letter-spacing:1.2px}.small-line{width:16px}h1{font-size:63px;margin:11px 0 10px}.intro p{font-size:13px}.demo-tag{padding:7px 10px;border:0;background:#e9eddb;gap:7px;width:100%}.demo-tag div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.demo-tag strong{font-size:11px}.demo-tag div>span{margin:0;font-size:11px}.demo-symbol{font-size:20px}.workspace{grid-template-columns:minmax(0,1fr);border-radius:7px}.meter-card{min-height:485px}.portrait-stage{inset:47px -15px 66px}.meter-top{left:20px;right:20px;top:19px}.panel-label{font-size:10px}.live-tag{font-size:9px}.measurement{left:20px;top:57px}.measurement>span:first-child{font-size:42px}.measurement>span:last-child{font-size:9px}.ear-callout{right:44px;top:105px;font-size:13px}.ruler{top:140px;bottom:136px;width:20px}.ruler-left{left:15px}.ruler-right{right:15px}.tape{bottom:98px;height:35px;font-size:19px;gap:25px}.meter-bottom{left:20px;right:20px;bottom:25px}.meter-bottom strong{font-size:22px}.control-panel{border-left:0;border-top:1px solid var(--line);padding:23px 20px}.total-row{padding-bottom:18px;margin-bottom:19px}.total-row>strong{font-size:75px}.control-heading h2{font-size:21px}.category-button{font-size:13px;min-height:46px}.category-icon{width:18px;height:18px}.simulation-note{font-size:12px}.auto-button{font-size:14px;padding:15px}.reset-button{width:49px}.history-section{padding-top:28px}.section-heading{align-items:center;gap:10px}.section-heading .eyebrow{font-size:9px}.section-heading h2{font-size:20px}.subtle{display:block;font-size:13px;letter-spacing:0;margin-top:4px}.history-count{white-space:nowrap}.history-list{grid-template-columns:1fr}.empty-state{padding:16px}.empty-state p{font-size:12px}footer{align-items:flex-start;flex-direction:column;gap:9px;padding:22px 0}.history-item strong{font-size:14px}dialog{padding:28px}dialog h2{font-size:36px}}
#character{transition:transform 850ms cubic-bezier(.18,.8,.25,1.05)}
.meter-bottom{gap:14px}.meter-bottom>div{min-width:0;flex:1}.level-number{flex-shrink:0}.meter-bottom strong{overflow-wrap:break-word}
.brand-icon{overflow:hidden}.brand-icon img{display:block;width:100%;height:100%;object-fit:cover}
.category-grid{max-height:330px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b6bba9 transparent;padding-right:4px;align-content:start}
.category-note{font-size:12px;line-height:1.5;color:var(--muted);margin:9px 0 0}
@media(max-width:760px){.category-grid{max-height:none;padding-right:0}}
.tape{display:block;overflow:hidden}
.tape-track{display:flex;width:max-content;height:100%;animation:headlines 140s linear infinite}
.tape-copy{display:flex;align-items:center;gap:32px;padding-right:32px;flex-shrink:0;text-transform:uppercase}
.tape-copy b{font-family:var(--font);font-size:22px}
.tape:hover .tape-track{animation-play-state:paused}
@keyframes headlines{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.category-button{min-width:0;font-size:14px}
.category-button>span:not(.category-plus){overflow-wrap:anywhere}
.category-columns{display:flex;justify-content:space-between;gap:12px;padding:10px 10px 9px;font-size:12px;color:var(--muted)}
ul.category-grid{display:flex;flex-direction:column;gap:0;list-style:none;margin:0;padding:0;max-height:none;overflow:visible;border-top:1px solid var(--line)}
.category-grid>li{border-bottom:1px solid var(--line)}
.category-grid .category-button{width:100%;min-height:38px;padding:7px 10px;border:0;border-radius:0;background:transparent;gap:10px;font-size:14px;transform:none}
.category-grid .category-button:not(:disabled):hover{background:#f6ed8b;transform:none}.category-grid .category-button:not(:disabled):hover .category-count,.category-grid .category-button:not(:disabled):hover .category-icon{color:var(--ink);stroke:var(--ink)}
.category-grid .category-button:focus-visible{outline-offset:-2px}
.category-name{flex:1;min-width:0}
.category-count{margin-left:auto;min-width:3ch;flex-shrink:0;text-align:right;font-family:var(--display);font-size:22px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:#929783}
.category-button[data-active=true] .category-count{color:var(--ink)}
.category-grid .category-button:disabled{cursor:default;opacity:1;color:var(--ink)}
.category-grid .category-button:disabled:hover{background:transparent}
.collection-status{font-size:12px;line-height:1.6;color:var(--muted);margin:13px 0 9px}
.mode-button{display:block;width:100%;padding:11px;border:1px solid var(--line);border-radius:5px;background:transparent;font-size:13px;font-weight:650}
.mode-button:hover{background:var(--yellow);border-color:var(--ink)}
.news-item{display:block;padding:19px 20px}.news-meta{font-size:12px;color:#727867;margin-bottom:9px}
.news-headline{font-size:17px;font-weight:700;line-height:1.45;display:block}.news-headline:hover{text-decoration:underline}
.news-details{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:var(--muted)}
.news-sources{display:inline-flex;align-items:center;gap:8px}
.source-dots{display:inline-flex;align-items:center;padding-left:6px}
.source-dot{display:inline-grid;place-items:center;width:24px;height:24px;margin-left:-7px;overflow:hidden;border:2px solid #fffef8;border-radius:50%;background:#fff;color:var(--ink);font-size:11px;font-weight:750;text-decoration:none!important;box-shadow:0 1px 2px rgba(0,0,0,.2);transition:transform .15s ease,margin .15s ease}
.source-dot img{width:16px;height:16px;object-fit:contain}
.source-dots:hover .source-dot{margin-left:-2px}
.source-dot:hover,.source-dot:focus-visible{transform:translateY(-3px) scale(1.12);z-index:20!important}
.source-more{margin-left:-3px;color:var(--muted);font-weight:650}
@media(prefers-reduced-motion:reduce){.source-dot{transition:none}}
.news-source{display:inline-flex;align-items:center;gap:6px}
.news-source img{width:16px;height:16px;border-radius:3px;object-fit:contain;background:#fff}
.news-details a{font-weight:650;text-decoration:underline;text-underline-offset:3px}
.news-status{--status-color:#46764f;flex:0 0 auto;min-width:306px;max-width:100%;margin-bottom:2px;padding:15px 17px 13px;border:1px solid #d5d9ca;border-radius:10px;background:#fcfcf6;box-shadow:0 3px 0 #e6e8de}
.news-status-heading{display:flex;align-items:center;gap:9px}.news-status-heading strong{font-size:13px;font-weight:750;letter-spacing:-.2px;white-space:nowrap}
.news-status-dot{width:7px;height:7px;background:var(--status-color);border-radius:50%;box-shadow:0 0 0 4px #46764f12;flex-shrink:0}
.news-status-badge{margin-left:auto;padding:4px 6px;border-radius:4px;background:#edf2e6;color:#4b6c40;font-size:8px;line-height:1.25;font-weight:750;letter-spacing:.8px;white-space:nowrap}
.news-status-details{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #e8eadf;margin-top:11px;padding-top:10px;color:#73776b;font-size:11px;line-height:1.4;font-variant-numeric:tabular-nums}
.news-status-time{display:flex;align-items:center;gap:6px}.news-status-time svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.news-status-sources{white-space:nowrap;color:#777d68}.news-status[data-state=demo],.news-status[data-state=loading],.news-status[data-state=partial]{--status-color:#a28b23}
.news-status[data-state=demo] .news-status-badge,.news-status[data-state=loading] .news-status-badge,.news-status[data-state=partial] .news-status-badge{background:#f4edc5;color:#76661d}
.news-status[data-state=offline]{--status-color:#a26b4f}.news-status[data-state=offline] .news-status-badge{background:#f1e6dc;color:#8a5a42}
.news-monitor{display:flex;align-items:center;gap:13px;flex-shrink:0;max-width:100%}.clock-rabbit{display:block;width:64px;height:105px;object-fit:cover;object-position:center 44%;border:3px solid #fcfcf6;border-radius:8px;transform:rotate(-5deg);box-shadow:0 2px 7px #20211d26;flex-shrink:0}.news-monitor .news-status{min-width:0;width:306px}
@media(max-width:760px){.news-status{width:100%;min-width:0;padding:13px 14px 11px}.news-status-heading strong{font-size:13px}.news-status-details{margin-top:10px;padding-top:9px}}
@media(max-width:360px){.news-status{padding:12px}.news-status-heading{gap:7px}.news-status-heading strong{font-size:12px}.news-status-badge{font-size:7px;letter-spacing:.5px}}
@media(max-width:760px){.news-monitor{width:100%;display:grid;grid-template-columns:49px minmax(0,1fr);gap:11px}.clock-rabbit{width:49px;height:86px;border-width:2px}.news-monitor .news-status{width:100%;padding:12px}.news-status-heading{gap:7px}.news-status-heading strong{font-size:12px}.news-status-badge{font-size:7px;letter-spacing:.5px}.news-status-details{font-size:10px;gap:7px}}
@media(max-width:360px){.news-monitor{grid-template-columns:42px minmax(0,1fr);gap:9px}.clock-rabbit{width:42px;height:79px}.news-monitor .news-status{padding:10px}.news-status-heading strong{font-size:11px}.news-status-badge{font-size:6px;padding:4px;letter-spacing:.3px}.news-status-details{font-size:9px;gap:4px}.news-status-time{gap:4px}.news-status-time svg{width:11px;height:11px}}
.occurrence-stamp{position:fixed;z-index:20;left:28px;bottom:28px;width:min(290px,64vw);padding:5px;background:var(--yellow);border:2px solid var(--ink);border-radius:9px;box-shadow:7px 9px 0 #20211d,0 12px 35px #20211d30;pointer-events:none;transform:rotate(-5deg);transform-origin:50% 80%}
.custody-watch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 85px;gap:24px;align-items:center;margin:0 0 24px;padding:18px 22px;border:1px solid #d4d3b2;border-radius:9px;background:#f2f0d9;box-shadow:0 3px 0 #e5e4cd}
.custody-question .eyebrow{font-size:9px;color:#7a7751;letter-spacing:1.6px}.custody-question h2{font-family:var(--display);font-size:34px;line-height:1.02;letter-spacing:-.3px;margin:7px 0 0}
.custody-result{min-width:0;padding-left:24px;border-left:1px solid #d5d3b5}.custody-result>strong{display:block;font-family:var(--display);font-size:29px;font-weight:700;line-height:1.05;letter-spacing:.2px}.custody-result p{font-size:12px;line-height:1.45;color:#727054;margin:7px 0}.custody-result a{display:block;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin:7px 0;overflow-wrap:anywhere}.custody-updated{display:block;font-size:10px;color:#86836b;font-variant-numeric:tabular-nums}
.custody-rabbit{display:block;width:85px;height:125px;object-fit:cover;object-position:center 43%;border:3px solid #fffef4;border-radius:6px;transform:rotate(5deg);box-shadow:2px 3px 0 #23241e26}
.custody-satire{display:block;font-size:8px;font-weight:650;letter-spacing:1.3px;color:#898464;margin-bottom:7px}.custody-result>strong{text-transform:uppercase;text-wrap:balance;max-width:460px}
@media(max-width:760px){.news-monitor{display:block}.news-monitor .news-status{width:100%}.custody-watch{grid-template-columns:minmax(0,1fr) 77px;gap:12px 14px;padding:17px;margin-bottom:20px}.custody-question h2{font-size:30px}.custody-result{grid-column:1;border-left:0;padding:11px 0 0;border-top:1px solid #d5d3b5}.custody-result>strong{font-size:25px}.custody-result p{font-size:11px}.custody-rabbit{grid-column:2;grid-row:1 / 3;width:77px;height:137px}.custody-question .eyebrow{font-size:8px;letter-spacing:1.1px}}
@media(max-width:360px){.custody-watch{grid-template-columns:minmax(0,1fr) 64px;padding:14px;gap:11px}.custody-question h2{font-size:27px}.custody-result>strong{font-size:21px}.custody-rabbit{width:64px;height:115px}}
.occurrence-stamp img{display:block;width:100%;height:auto;border-radius:3px}.occurrence-stamp[hidden],.occurrence-stamp img[hidden],.demo-controls[hidden]{display:none}
/* Vertical memes get a narrower stamp so they do not cover half the screen. */
.occurrence-stamp:has(img[data-stamp=taca]:not([hidden])){width:min(210px,48vw)}
.stamp-pop{animation:stamp-arrive 490ms both}
.stamp-out{animation:stamp-leave 300ms both}
@keyframes stamp-arrive{0%{opacity:0;transform:translateY(40px) rotate(-16deg) scale(.55)}56%{opacity:1;transform:translateY(-7px) rotate(-3deg) scale(1.06)}100%{opacity:1;transform:translateY(0) rotate(-5deg) scale(1)}}
@keyframes stamp-leave{from{opacity:1;transform:translateY(0) rotate(-5deg) scale(1)}to{opacity:0;transform:translateY(18px) rotate(-3deg) scale(.9)}}
@media(max-width:760px){.occurrence-stamp{left:18px;bottom:20px;width:min(240px,64vw)}}
@media(prefers-reduced-motion:reduce){.occurrence-stamp.stamp-pop,.occurrence-stamp.stamp-out{animation:none!important}}
@media(max-width:760px){.category-grid .category-button{min-height:44px;font-size:14px}}
.history-item{min-width:0}.history-item>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:360px){.category-button{font-size:12px;gap:6px;padding:10px 7px}.history-item{gap:8px;padding:12px 10px}.history-time{font-size:10px}.history-growth{padding-left:8px;margin-left:0}.ear-callout{right:35px;font-size:12px}h1{font-size:56px}.text-button{font-size:11px}.brand{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.tape-track{animation:none}}
/* Faixa de estatísticas oficiais */
.data-ticker{display:flex;align-items:stretch;min-width:0;background:#20211d;color:#fff;border:2px solid #20211d;margin:0 0 24px;overflow:hidden}
.data-ticker[hidden]{display:none}
.ticker-label{position:relative;z-index:1;flex:none;padding:14px 18px;background:#f4e22b;color:#20211d;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:.08em;display:block;white-space:nowrap}
.ticker-label small{display:block;font-size:8px;letter-spacing:.1em;margin:5px 0 0 16px;opacity:.7}
.ticker-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#20211d;margin-right:9px}
.ticker-window{flex:1;min-width:0;overflow:hidden;display:flex;align-items:center;mask-image:linear-gradient(to right,transparent,#000 18px,#000 calc(100% - 18px),transparent)}
.ticker-track{display:flex;width:max-content;animation:official-ticker 90s linear infinite;will-change:transform}
.ticker-copy{display:flex;align-items:center;flex:none;white-space:nowrap;gap:30px;padding:0 15px;font-size:14px;font-weight:650;letter-spacing:.01em}
.ticker-copy b{color:#f4e22b;font-size:19px;font-weight:400}
.ticker-pause{flex:none;width:42px;border:0;border-left:1px solid #ffffff30;background:#20211d;color:#f4e22b;cursor:pointer;font-size:17px}
.ticker-pause:focus-visible,.ticker-label:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.ticker-window:focus-visible{outline:2px solid #f4e22b;outline-offset:-3px}
.data-ticker[data-paused=true] .ticker-track,.data-ticker:hover .ticker-track,.data-ticker:focus-within .ticker-track{animation-play-state:paused}
@keyframes official-ticker{to{transform:translateX(-50%)}}
@media(max-width:600px){.ticker-label{padding:13px 10px;font-size:9px;letter-spacing:.04em}.ticker-label small{font-size:6px;margin-left:0}.ticker-dot{width:5px;height:5px;margin-right:5px}.ticker-copy{font-size:12px;gap:22px}.ticker-pause{width:32px}.data-ticker{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none;will-change:auto}.ticker-copy[aria-hidden=true]{display:none}.ticker-window{overflow-x:auto;mask-image:none}.ticker-pause{display:none}}
/* Movimento independente do tamanho das orelhas */
#ear-left{--ear-direction:1}
#ear-right{--ear-direction:-1}
.ears-flapping .ear-flap{animation:ear-flutter 1.4s ease-in-out both;transform-origin:0 0}
@keyframes ear-flutter{
  0%,100%{transform:translate(var(--ear-hinge),636px) rotate(0deg) scaleX(1) translate(calc(-1 * var(--ear-hinge)),-636px)}
  15%,48%,78%{transform:translate(var(--ear-hinge),636px) rotate(calc(var(--ear-direction) * -6deg)) scaleX(.85) translate(calc(-1 * var(--ear-hinge)),-636px)}
  30%,63%,90%{transform:translate(var(--ear-hinge),636px) rotate(calc(var(--ear-direction) * 4deg)) scaleX(1.035) translate(calc(-1 * var(--ear-hinge)),-636px)}
}
@media(prefers-reduced-motion:reduce){.ears-flapping .ear-flap{animation:none}}
#about-dialog{max-width:590px;max-height:85dvh;overflow-y:auto}
#about-dialog>h2{font-size:38px}
.editorial-card{border-top:1px solid var(--line);padding-top:15px;margin-top:20px}
.editorial-card h3{font-family:var(--display);font-size:25px;line-height:1.1;margin:0 0 10px}
.editorial-card p{margin:8px 0 12px}
.editorial-source{display:block;margin-top:8px;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.editorial-punch{font-weight:750;color:var(--ink)!important;border-left:3px solid var(--yellow);padding-left:12px}
.about-method{border-top:1px solid var(--line);padding-top:16px;margin-top:22px}
.about-method summary{cursor:pointer;font-size:13px;font-weight:750}
.about-method p{font-size:12px}
@media(max-width:600px){#about-dialog>h2{font-size:31px}.editorial-card h3{font-size:22px}}
.editorial-photo{margin:22px 0}
.editorial-photo img{display:block;width:100%;height:auto;border-radius:5px}
.editorial-photo figcaption{font-size:10px;line-height:1.6;color:#686c60;margin-top:7px}
.editorial-photo figcaption a{text-decoration:underline;text-underline-offset:2px}
#about-dialog .dialog-close{position:sticky;float:right;top:0;right:0;z-index:2;background:var(--paper);border-radius:50%;width:32px;height:32px;line-height:1;padding:0}
/* Leitura do modal */
#about-dialog{width:min(740px,calc(100% - 32px));max-width:740px;max-height:88dvh;padding:0;border:1px solid #bfc2b3;border-radius:14px;box-shadow:0 24px 100px #10120d55;scrollbar-width:thin;scrollbar-color:#b9beaa var(--paper)}
.about-topbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 24px;background:var(--paper);border-bottom:1px solid var(--line);font-size:10px;font-weight:850;letter-spacing:.1em}
.about-topbar b{font-weight:500;color:#74796a}
#about-dialog .dialog-close{position:static;float:none;flex:none;display:grid;place-items:center;background:#e9ebdf;font-size:25px;width:32px;height:32px}
#about-dialog .dialog-close:hover{background:var(--yellow)}
.about-body{padding:28px 36px 34px;counter-reset:about-story}
.about-body>.eyebrow{font-size:10px;letter-spacing:.12em;color:#656c58;line-height:1.5}
.about-body>h2{font-size:44px;line-height:1.06;letter-spacing:-.6px;margin:14px 0 20px}
.about-body>p{font-size:15px;line-height:1.8;margin:0 0 22px}
.about-body q{font-weight:700;color:var(--ink)}
.about-body .editorial-photo{background:#e9ebdf;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:24px 0 28px}
.about-body .editorial-photo img{max-height:330px;object-fit:cover;object-position:center 30%;border-radius:0}
.about-body .editorial-photo figcaption{margin:0;padding:11px 14px;font-size:10px;line-height:1.6}
.about-body .editorial-card{counter-increment:about-story;background:#fdfdf8;border:1px solid #dcdfd1;border-radius:10px;padding:21px 23px;margin:16px 0}
.about-body .editorial-card h3{font-size:25px;line-height:1.2;margin:0 0 12px}
.about-body .editorial-card h3:before{content:'0' counter(about-story);display:block;font-family:var(--font);font-size:9px;font-weight:850;letter-spacing:.12em;color:#7a826a;margin-bottom:9px}
.about-body .editorial-card p{font-size:14px;line-height:1.8;color:#555d4c;margin:0 0 13px}
.about-body .editorial-card p:last-child{margin-bottom:0}
.about-body .editorial-source{display:table;max-width:100%;font-size:10px;letter-spacing:.01em;line-height:1.6;text-decoration:none;color:#5a644c;background:#eef0e5;padding:4px 8px;border-radius:4px;margin-top:10px}
.about-body .editorial-source:hover{text-decoration:underline}
.about-body .editorial-punch{border-left:3px solid var(--yellow);padding:8px 0 8px 13px;font-size:14px!important;font-weight:750;line-height:1.65!important}
.about-body .dialog-note{font-weight:700;background:var(--yellow);border-radius:8px;padding:18px 20px;margin:24px 0 0;color:var(--ink);line-height:1.7}
.about-body .about-method{margin-top:25px;padding-top:18px}
@media(max-width:600px){#about-dialog{width:calc(100% - 20px);max-height:92dvh;border-radius:12px}.about-topbar{padding:10px 16px;font-size:9px}.about-body{padding:23px 18px 27px}.about-body>h2{font-size:33px;line-height:1.08}.about-body>p{font-size:14px;line-height:1.8}.about-body .editorial-card{padding:18px 16px}.about-body .editorial-card h3{font-size:23px}.about-body .editorial-card p{font-size:13px}.about-body .editorial-photo img{max-height:240px}.about-body .dialog-note{padding:16px}.about-body .editorial-punch{font-size:13px!important}}
#ear-left,#ear-right{cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}
#ear-left:focus,#ear-right:focus{outline:none}
#ear-left:focus-visible .ear-flap,#ear-right:focus-visible .ear-flap{filter:drop-shadow(0 0 4px #f4e22b)}

/* Mapa, marcos e limites de alcance */
.map-viewport{position:absolute;top:0;right:0;bottom:calc(var(--meter-footer-height,200px) + 12px);left:0;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 90px,#000 calc(100% - 20px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 90px,#000 calc(100% - 20px),transparent 100%)}
.rio-map,.portrait-stage{position:absolute;inset:auto;left:calc(50% + var(--map-camera-x,0px));top:calc(50% + var(--map-camera-y,0px));width:calc(var(--map-frame-width,88%) * var(--map-zoom,1));aspect-ratio:3.9283 / 2.6017;margin:0;transform:translate(-50%,-50%);transition:width 1s ease,left 1s ease,top 1s ease}
.rio-map{z-index:0;pointer-events:none}
.rio-map-art{position:absolute;inset:0;width:100%;height:100%;opacity:.86}
.portrait-stage{display:block;z-index:1;overflow:visible}
.portrait-stage .portrait{position:absolute;left:46.65%;top:79.18%;width:13%;height:auto;aspect-ratio:1850 / 1320;max-width:none;z-index:1;overflow:visible;transform:translate(-50%,-53.5%);filter:drop-shadow(0 2px 0 rgba(52,61,36,.12))}
#ear-percent{font-size:42px;letter-spacing:-.5px}
#ear-percent span{font-size:24px}
.map-credit{position:absolute;right:24px;bottom:111px;z-index:6;padding:3px 5px;border-radius:3px;background:#f7f8f0dd;color:#747967;font-size:7px;font-weight:800;letter-spacing:.9px}
.map-credit:hover{text-decoration:underline;text-underline-offset:2px}
.tape{bottom:68px}
@media(max-width:1050px){
  #ear-percent{font-size:clamp(30px,3.8vw,36px)}
  #ear-percent span{font-size:clamp(16px,2.2vw,20px)}
}
@media(max-width:760px){
  .meter-card{min-height:520px}
  .map-viewport{bottom:calc(var(--meter-footer-height,200px) + 100px)}
  #ear-percent{font-size:clamp(24px,6.6vw,30px)}
  #ear-percent span{font-size:clamp(14px,4.2vw,19px)}
  .map-credit{right:18px;bottom:106px}
  .tape{bottom:68px}
}
@media(max-width:360px){
  .map-credit{right:15px;bottom:102px}
}

/* Rodapé independente: a faixa rotacionada fica toda acima do crédito e do nível. */
.meter-footer{position:absolute;right:0;bottom:5px;left:0;z-index:7;display:flex;flex-direction:column}
.tape-region{position:relative;flex:none;height:clamp(70px,calc(8vw + 45px),150px);overflow:hidden;isolation:isolate}
.tape{top:50%;bottom:auto;left:-20px;width:calc(100% + 40px);transform:translateY(-50%) rotate(-4deg)}
.meter-bottom{position:relative;right:auto;bottom:auto;left:auto;min-height:72px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 27px 11px;background:#e9ebdf;border-top:1px solid #c7cbb9}
.meter-bottom>div{flex:1 1 auto;min-width:0}
.meter-bottom strong{max-width:100%;font-size:clamp(17px,1.8vw,22px);line-height:1.08;overflow-wrap:anywhere}
.level-number{flex:none}
.map-credit{position:static;display:inline-block;margin-top:6px;padding:0;background:transparent;z-index:auto;font-size:8px;line-height:1.25;letter-spacing:.8px;pointer-events:auto}
@media(max-width:760px){
  .meter-bottom{gap:8px;padding:8px 20px 10px}
  .meter-bottom strong{font-size:clamp(17px,4.7vw,19px)}
  .level-number{font-size:32px}
  .level-number span{font-size:18px}
}
@media(max-width:360px){
  .meter-bottom{padding-right:16px;padding-left:16px}
  .meter-bottom strong{font-size:17px}
  .level-number{font-size:29px}
  .level-number span{font-size:16px}
}

.ui-icon{display:inline-block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.15em;flex:none}
.text-button .ui-icon{margin-left:8px}
.ticker-pause{display:grid;place-items:center;line-height:1}
.ticker-pause .ui-icon{stroke-width:2.1}
.asterisk{display:inline-flex;align-items:center;justify-content:center;font-size:26px;line-height:1}
.asterisk .ui-icon{width:1.15em;height:1.15em;stroke-width:1.5}
.dialog-close{display:grid;place-items:center}
.dialog-close .ui-icon{width:1em;height:1em}
.ui-icon-external{width:1em;height:1em;margin-left:.2em;vertical-align:-.18em}
/* Visualizações e compartilhamento */
.view-count{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:#fcfcf6;font-size:13px;color:#5f6256}
.view-count strong{color:var(--ink);font-weight:800;font-variant-numeric:tabular-nums}
.view-count .ui-icon{width:16px;height:16px}
.share-button{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 13px;border:1.5px solid var(--ink);border-radius:999px;background:var(--yellow);font-size:13px;font-weight:750;box-shadow:2px 2px 0 var(--ink);transition:transform .12s,box-shadow .12s}
.share-button:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}
.share-button:active{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}
.share-icon{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fcfcf6;color:var(--ink);transition:background .15s,border-color .15s}
.share-icon:hover{background:var(--yellow);border-color:var(--ink)}
.share-icon svg{width:18px;height:18px;fill:currentColor}
.share-icon .share-stroke{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
.footer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.livepix-link{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border:1.5px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--yellow);font-size:13px;font-weight:750}
.livepix-link:hover{background:#3c3e33}
.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto;margin-right:28px}
@media(max-width:1600px){.location{display:none}}
.header-actions>*,.header-right>*{flex-shrink:0;white-space:nowrap}
.header-livepix{gap:7px;min-height:36px;margin-left:4px}.header-livepix .ui-icon{width:15px;height:15px;stroke-width:2}.livepix-short{display:none}
@media(max-width:1340px){.view-label-tail{display:none}}
@media(max-width:1200px){.header-actions .view-label{display:none}}
@media(max-width:1050px){.header-actions .view-label,.livepix-long{display:none}.livepix-short{display:inline}}
@media(min-width:761px) and (max-width:960px){.header-actions .share-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.header-actions .share-button{width:36px;padding:0;justify-content:center}}
@media(max-width:760px){.header-actions .view-label{display:inline}.header-livepix{min-height:34px;height:34px;padding:0 11px;font-size:12px}.site-header{height:auto;flex-wrap:wrap;padding:12px 20px;row-gap:10px}.header-actions{order:3;width:100%;margin:0;flex-wrap:wrap}.header-actions .view-count{width:100%;justify-content:center}.view-label-tail{display:inline}.header-livepix{margin-left:auto}.view-count,.share-button{font-size:12px}.share-button,.share-icon{min-height:34px;height:34px}.share-icon{width:34px}}
@media(max-width:470px){.header-actions{gap:6px}.header-livepix .ui-icon{display:none}.header-livepix{padding:0 12px}.header-actions .share-icon{width:32px;height:32px;min-height:32px}.header-actions .share-button{height:32px;min-height:32px}}
@media(max-width:400px){.header-actions .share-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.header-actions .share-button{width:34px;padding:0;justify-content:center}}
.share-icon{position:relative}
.share-icon[data-feedback]::after{content:attr(data-feedback);position:absolute;top:calc(100% + 8px);right:0;z-index:30;padding:6px 9px;border-radius:5px;background:var(--ink);color:var(--paper);font-size:12px;font-weight:650;white-space:nowrap;pointer-events:none}
#view-total.tick{animation:view-tick .45s ease-out}
@keyframes view-tick{0%{color:#2f7d43}100%{color:var(--ink)}}
/* Chamada: análise grátis do Instagram (depois do placar), no traço do Orelhômetro */
.promo-card{position:relative;display:flex;align-items:center;gap:20px;margin:28px 0 0;padding:20px 24px 20px 20px;border:2px solid #20211d;border-radius:14px;background:#fffef8;background-image:radial-gradient(#e4ddea 1.2px,transparent 1.2px);background-size:16px 16px;color:#20211d;text-decoration:none;font-size:14px;line-height:1.35;box-shadow:5px 5px 0 #20211d;transition:transform .12s,box-shadow .12s}
.promo-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:7px;border-radius:10px 0 0 10px;background:linear-gradient(45deg,#feda75 0%,#fa7e1e 25%,#d62976 50%,#962fbf 75%,#4f5bd5 100%)}
.promo-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 #20211d}
.promo-card:active{transform:translate(3px,3px);box-shadow:2px 2px 0 #20211d}
.promo-card:focus-visible{outline-offset:4px}
.promo-icon{position:relative;flex:none;width:72px;height:72px;margin-left:8px;border:2px solid #20211d;border-radius:14px;display:grid;place-items:center;background:linear-gradient(45deg,#feda75 0%,#fa7e1e 25%,#d62976 50%,#962fbf 75%,#4f5bd5 100%);color:#fff;box-shadow:3px 3px 0 #20211d;transform:rotate(-6deg);animation:promo-tilt 3.6s ease-in-out infinite}
.promo-icon>svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:2.2}
.promo-lens{position:absolute;right:-10px;bottom:-10px;width:32px;height:32px;border-radius:50%;background:var(--yellow);border:2px solid #20211d;display:grid;place-items:center;color:#20211d;animation:promo-scan 2.6s ease-in-out infinite}
.promo-lens svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round}
.promo-text{flex:1;min-width:0;color:#74756c}
.promo-text strong{display:block;font-family:var(--display);font-weight:800;font-size:32px;line-height:1.02;letter-spacing:-.2px;text-transform:uppercase;color:#20211d}
.promo-text strong em{font-style:normal;background:linear-gradient(transparent 55%,var(--yellow) 55%,var(--yellow) 92%,transparent 92%)}
.promo-badge{display:inline-block;margin-right:6px;padding:0 8px;border:2px solid #d62976;border-radius:5px;color:#d62976;background:#fff;font-size:24px;letter-spacing:.04em;transform:rotate(-5deg);vertical-align:2px;animation:promo-stamp 3.6s ease-in-out infinite}
.promo-detail{display:block;margin-top:5px;font-size:15px}
.promo-cta{flex:none;display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border:2px solid #20211d;border-radius:999px;background:#25d366;color:#20211d;font-size:16px;font-weight:800;white-space:nowrap;box-shadow:3px 3px 0 #20211d;animation:promo-hop 3.6s ease-in-out infinite}
.promo-card:hover .promo-cta{background:#1ebe5b}
.promo-wa{width:22px;height:22px;fill:currentColor}
.promo-cta-short{display:none}
@keyframes promo-hop{0%,72%,100%{transform:translate(0,0);box-shadow:3px 3px 0 #20211d}78%{transform:translate(-2px,-4px);box-shadow:5px 7px 0 #20211d}84%{transform:translate(0,0);box-shadow:3px 3px 0 #20211d}89%{transform:translate(-1px,-2px);box-shadow:4px 5px 0 #20211d}}
@keyframes promo-stamp{0%,60%,100%{transform:rotate(-5deg) scale(1)}64%{transform:rotate(-9deg) scale(1.25)}68%{transform:rotate(-5deg) scale(.95)}72%{transform:rotate(-5deg) scale(1)}}
@keyframes promo-tilt{0%,80%,100%{transform:rotate(-6deg)}86%{transform:rotate(4deg)}92%{transform:rotate(-9deg)}}
@keyframes promo-scan{0%,100%{transform:translate(0,0)}50%{transform:translate(-6px,-5px)}}
@media(prefers-reduced-motion:reduce){.promo-icon,.promo-lens,.promo-badge,.promo-cta{animation:none}}
@media(max-width:760px){.promo-detail{display:none}.promo-card{gap:14px;padding:16px 16px 16px 14px}.promo-icon{width:56px;height:56px}.promo-icon>svg{width:30px;height:30px}.promo-text strong{font-size:24px}.promo-badge{font-size:18px}}
@media(max-width:520px){.promo-cta-long{display:none}.promo-cta-short{display:inline}.promo-cta{padding:11px 14px;font-size:14px}.promo-badge{font-size:15px;padding:0 6px}.promo-text strong{font-size:20px}.promo-icon{width:50px;height:50px;margin-left:4px}.promo-icon>svg{width:26px;height:26px}.promo-lens{width:26px;height:26px}}
@media(max-width:360px){.promo-cta-short{display:none}.promo-cta{padding:10px}}
.theme-toggle .icon-sun{display:none}
.theme-toggle svg{width:19px;height:19px}
/* Mapa das ocorrências: substitui a cabeça no cartão do orelhômetro */
.blood-toggle{margin-left:auto;align-self:center;flex:none;display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 13px;border:1.5px solid var(--ink);border-radius:999px;background:transparent;font-size:13px;font-weight:750;white-space:nowrap;transition:background .15s,color .15s}
.blood-toggle .ui-icon{width:15px;height:15px;fill:currentColor}
.blood-toggle:hover{background:#f6ed8b}
.blood-toggle[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.blood-toggle[aria-pressed=true] .ui-icon{fill:none;stroke:currentColor;color:currentColor}
.meter-card.is-blood .live-tag,.meter-card.is-blood .measurement,.meter-card.is-blood .ruler,.meter-card.is-blood .map-viewport,.meter-card.is-blood .meter-footer,.meter-card.is-blood .level-track{display:none}
.blood-view{position:absolute;inset:58px 26px 82px;z-index:4;display:flex;align-items:center;justify-content:center}
.blood-map{position:relative;margin:0;width:100%;max-height:100%;aspect-ratio:3.9283/2.6017}
.blood-svg{display:block;width:100%;height:100%;overflow:visible}
.blood-cities path{fill:#dce1d2;stroke:#6c765f;stroke-opacity:.9;stroke-width:.8px;stroke-linejoin:round}
.blood-grow{transition:transform 1.1s cubic-bezier(.2,.9,.25,1.1)}
.blood-stain{cursor:pointer;outline:none}
.blood-edge,.blood-drops{fill:#000}
.blood-body{fill:#0b0b0a}
.blood-shine{fill:#fff;opacity:.06}
.blood-stain:hover .blood-body,.blood-stain:focus-visible .blood-body{fill:#000}
.blood-stain:focus-visible .blood-edge{stroke:var(--yellow);stroke-width:.12}
.blood-tip{position:absolute;z-index:6;width:min(300px,calc(100% - 16px));padding:12px 14px 10px;border:1.5px solid var(--ink);border-radius:8px;background:#fdfdf8;box-shadow:4px 4px 0 var(--ink);pointer-events:none;font-size:12px;line-height:1.4}
.blood-tip.is-pinned{pointer-events:auto}
.blood-tip-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.blood-tip-head strong{font-family:var(--display);font-size:22px;font-weight:700;line-height:1.05}
.blood-tip-head span{flex:none;padding:2px 7px;border-radius:4px;background:var(--yellow);color:#20211d;font-weight:750;font-size:11px}
.blood-tip-rate{margin:6px 0 0;font-size:11.5px;font-weight:650}
.blood-tip-types{margin:5px 0 9px;color:var(--muted)}
.blood-tip .panel-label{display:block;font-size:9px;margin-bottom:5px}
.blood-tip-news{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.blood-tip-news li{display:grid;gap:1px;padding-top:7px;border-top:1px solid var(--line)}
.blood-tip-news time,.blood-tip-news small{font-size:10.5px;color:var(--muted)}
.blood-tip-news a{font-weight:700;color:var(--ink)}
.blood-tip.is-pinned .blood-tip-news a{text-decoration:underline;text-underline-offset:2px}
.blood-tip-more{margin:8px 0 0;font-size:10.5px;color:var(--muted)}
.blood-legend{position:absolute;left:0;right:0;bottom:-58px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.blood-legend .panel-label{display:block;font-size:9px}
.blood-legend strong{display:block;margin-top:4px;font-family:var(--display);font-size:22px;font-weight:700;line-height:1.05}
.blood-note{display:block;margin-top:3px;font-size:11px;color:var(--muted)}
.blood-measure{flex:none;display:inline-flex;margin-bottom:2px;padding:2px;border:1px solid var(--line);border-radius:999px;background:#fffef8}
.blood-measure button{padding:5px 10px;border:0;border-radius:999px;background:none;color:var(--muted);font:inherit;font-size:11px;font-weight:700;cursor:pointer}
.blood-measure button[aria-pressed="true"]{background:var(--ink);color:#fffef8}
.blood-measure button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media(max-width:760px){.blood-view{inset:52px 18px 80px}.blood-legend strong{font-size:19px}.total-row{flex-wrap:wrap;row-gap:14px}.blood-toggle{font-size:12px;padding:6px 11px}}
@media(max-width:560px){.blood-toggle{margin-left:0}}
@media(prefers-reduced-motion:reduce){.blood-grow{transition:none}}
.blood-toggle-logo{display:none;width:22px;height:22px;border:1.5px solid var(--yellow);border-radius:6px;transform:rotate(-6deg);margin-left:-4px}
.blood-toggle[aria-pressed=true] .blood-toggle-logo{display:block}
.blood-toggle[aria-pressed=true] .ui-icon{display:none}
/* Ocorrências por dia */
.history-tabs{display:flex;gap:26px;margin-top:16px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.history-tabs::-webkit-scrollbar{display:none}
.history-tab{position:relative;flex:none;display:inline-flex;align-items:baseline;gap:9px;padding:10px 1px 11px;border:0;background:none;color:var(--muted);font-size:12px;font-weight:750;letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;transition:color .15s}
.history-tab b{position:relative;z-index:0;font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:0;line-height:1;color:var(--ink);opacity:.45;transition:opacity .15s}
.history-tab:hover{color:var(--ink)}
.history-tab:hover b{opacity:.8}
.history-tab[aria-selected=true]{color:var(--ink)}
.history-tab[aria-selected=true] b{opacity:1}
.history-tab[aria-selected=true] b:after{content:'';position:absolute;left:-3px;right:-3px;bottom:1px;height:9px;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}
.history-tab[aria-selected=true]:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--ink)}
.history-tab:focus-visible{outline-offset:2px}
.history-day{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 2px 4px}
.history-day:first-child{padding-top:2px}
.history-day strong{font-size:11px;font-weight:750;letter-spacing:1.5px;text-transform:uppercase}
.history-day span{font-size:12px;color:var(--muted)}
.history-filters{margin-top:16px;border:1px solid var(--line);border-radius:7px;background:#fdfdf8}
.history-filter-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 28px;padding:12px 14px}
.history-types{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.history-type{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:5px 10px;border:1px solid #dedfd5;border-radius:5px;background:#f8f9f2;color:#5f6156;font-size:12px;font-weight:650;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.history-type .category-icon{width:15px;height:15px}
.history-type b{font-family:var(--display);font-size:16px;font-weight:700;line-height:1;color:inherit;opacity:.6}
.history-type:hover{border-color:#c7b810;color:var(--ink)}
.history-type[aria-pressed=true]{background:var(--yellow);border-color:var(--ink);color:var(--ink)}
.history-type[aria-pressed=true] b{opacity:1}
.history-type[aria-pressed=true] .category-icon{stroke:var(--ink)}
.history-type:focus-visible{outline-offset:2px}
.history-controls{display:flex;flex:none;align-items:center;gap:16px}
.history-select{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;font-weight:750;letter-spacing:1.4px;text-transform:uppercase}
.history-select select{appearance:none;min-height:32px;padding:5px 28px 5px 10px;border:1px solid #dedfd5;border-radius:5px;background:#fffef8;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right 14px center,right 9px center;background-size:5px 5px;background-repeat:no-repeat;color:var(--ink);font:inherit;font-size:12px;font-weight:650;letter-spacing:0;text-transform:none;cursor:pointer}
.history-select select:hover{border-color:#c7b810}
.history-select select:focus-visible{outline:3px solid #427452;outline-offset:2px}
.history-filter-foot{display:flex;align-items:center;justify-content:space-between;gap:8px 20px;padding:10px 14px;border-top:1px dashed var(--line)}
.history-insight{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.history-record{align-self:center;padding:3px 6px;border-radius:3px;background:var(--ink);color:var(--yellow);font-size:9px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase}
.history-insight-day{padding:0;border:0;background:none;color:var(--ink);font:inherit;font-weight:750;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px;text-underline-offset:3px}
.history-clear{flex:none;margin-left:auto;padding:4px 0;border:0;background:none;color:var(--muted);font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.history-clear:hover{color:var(--ink)}
.history-no-match{margin:20px 0 0;padding:20px;border:1px dashed var(--line);border-radius:6px;color:var(--muted);font-size:13px;text-align:center}
@media(max-width:1040px){.history-filter-row{flex-direction:column}}
@media(max-width:760px){.history-filter-row{padding:12px}.history-types{flex-wrap:nowrap;align-self:stretch;overflow-x:auto;margin-right:-12px;padding-right:12px;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 30px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 30px),transparent)}.history-types::-webkit-scrollbar{display:none}.history-type{flex:none;min-height:40px}.history-controls{align-self:stretch;gap:10px}.history-select{flex:1;flex-direction:column;align-items:stretch;gap:5px;min-width:0}.history-select select{width:100%;min-height:42px}.history-filter-foot{padding:10px 12px;flex-wrap:wrap}}
@media(max-width:760px){.history-tabs{gap:22px;margin-right:-18px;padding-right:18px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 30px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 30px),transparent)}.history-tab{flex-direction:column;align-items:flex-start;gap:5px;padding:8px 1px 10px;font-size:10px;letter-spacing:1.2px}.history-tab b{font-size:22px}}
/* Perfis no X */
.follow-link{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 13px;border:1.5px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--paper);font-size:13px;font-weight:750;white-space:nowrap;transition:background .15s}
.follow-link svg{width:14px;height:14px;fill:currentColor;flex:none}
.follow-link:hover{background:#3c3e33}
.creator-link{font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.creator-link strong{color:var(--ink);font-weight:750}
@media(max-width:1180px){.header-follow span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.header-follow{width:36px;padding:0;justify-content:center}}
@media(max-width:760px){.header-follow{width:34px;min-height:34px;height:34px}}
/* Menu de compartilhar do header */
.share-wrap{position:relative}
.share-menu{position:absolute;top:calc(100% + 10px);left:0;z-index:30;min-width:200px;padding:6px;border:1.5px solid var(--ink);border-radius:9px;background:#fdfdf8;box-shadow:4px 4px 0 var(--ink);display:grid;gap:2px}
.share-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:6px;background:none;color:var(--ink);font-size:13px;font-weight:650;text-align:left;white-space:nowrap}
.share-menu-item:hover,.share-menu-item:focus-visible{background:#f6ed8b;outline:none}
.share-menu-item svg{width:17px;height:17px;flex:none;fill:currentColor}
.share-menu-item .share-stroke{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
@media(max-width:760px){.share-menu{left:auto;right:auto}}
.footer-brand{white-space:nowrap}
/* Print do placar */
.panel-actions{display:flex;gap:8px;margin-top:16px}
.panel-actions>*{flex:1}
.score-image-button{display:flex;align-items:center;justify-content:center;gap:7px}
.score-image-button:disabled{cursor:progress;opacity:.7}
.score-image-button .ui-icon{width:16px;height:16px}
.share-menu-item .share-stroke-icon{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.image-dialog{padding:0;max-width:520px;max-height:calc(100dvh - 24px);overflow:auto}
.image-dialog-body{padding:18px 24px 24px}
.image-dialog h2{margin:0 0 14px}
.image-preview{display:block;width:100%;height:auto;border:1.5px solid var(--ink);border-radius:8px;box-shadow:4px 4px 0 var(--ink)}
.image-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.image-actions>*{flex:1;justify-content:center;min-height:44px}
@media(max-width:760px){.image-dialog-body{padding:14px 16px 18px}.image-dialog h2{font-size:30px}}
.sources-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}
.sources-head h3{margin:0}
.sources-intro{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.6}
.source-grid{display:grid;grid-template-columns:1fr;align-items:start;gap:8px;margin:14px 0 0;padding:0;list-style:none}
.source-card{overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fffef8}
.source-card summary{display:flex;align-items:center;gap:12px;min-height:66px;padding:12px 14px;cursor:pointer;list-style:none}
.source-card summary::-webkit-details-marker{display:none}
.source-card summary:hover{background:#f8f9f2}
.source-card summary:focus-visible{outline:3px solid #427452;outline-offset:-3px}
.source-card[open] summary{border-bottom:1px dashed var(--line)}
.source-logo{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid var(--line);border-radius:7px;background:#ffffff;object-fit:contain;font-size:14px;font-weight:800}
.source-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}
.source-text strong{font-size:14px}
.source-text small{color:var(--muted);font-size:11.5px;line-height:1.4}
.source-status{display:flex;align-items:center;gap:6px}
.source-status:before{content:'';flex:none;width:7px;height:7px;border-radius:50%;background:#3f8f5a}
.source-card[data-state=partial] .source-status:before{background:#c99a12}
.source-card[data-state=offline] .source-status:before{background:#b8442f}
.source-count{min-width:32px;font-family:var(--display);font-size:28px;font-weight:700;line-height:1;text-align:right}
.source-card[data-cases="0"] .source-count{opacity:.35}
.source-body{padding:10px 14px 14px}
.source-cases{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.source-cases a{font-size:13px;font-weight:650;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.source-cases a:hover{text-decoration-color:var(--ink)}
.source-cases small{display:block;margin-top:3px;color:var(--muted);font-size:11.5px}
.source-empty{margin:0;color:var(--muted);font-size:12.5px}
.source-site{display:inline-block;margin-top:12px;color:var(--muted);font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.source-site:hover{color:var(--ink)}
.local-badge{display:inline-block;margin-left:4px;padding:2px 6px;border-radius:3px;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:750;letter-spacing:.4px;vertical-align:1px}
.footer-links{display:flex;gap:14px;font-size:12px}
.footer-links a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.footer-links a:hover{color:var(--ink)}
/* AdSense: espaço reservado para a página não pular quando o anúncio carrega. */
.ad-slot{position:relative;display:grid;place-items:center;min-height:130px;margin:26px 0 0;padding:22px 10px 10px;border:1px dashed var(--line);border-radius:7px}
.ad-slot:before{content:'Publicidade';position:absolute;top:6px;left:10px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}
.ad-slot .adsbygoogle{width:100%}
.consent-banner{position:fixed;right:16px;bottom:16px;left:16px;z-index:40;display:flex;align-items:center;gap:16px;max-width:760px;margin:0 auto;padding:14px 16px;border:1.5px solid var(--ink);border-radius:9px;background:var(--paper);box-shadow:5px 6px 0 #20211d}
.consent-banner p{margin:0;font-size:13px;line-height:1.5}
.consent-banner a{text-decoration:underline;text-underline-offset:3px}
.consent-actions{display:flex;flex:none;gap:8px}
.consent-actions button{min-height:40px;padding:8px 12px;border:1px solid var(--ink);border-radius:5px;background:transparent;font-size:13px;font-weight:700}
.consent-actions .consent-accept{background:var(--yellow);color:var(--ink)}
@media(max-width:760px){.consent-banner{flex-direction:column;align-items:stretch}.consent-actions button{flex:1}.footer-links{flex-wrap:wrap}}
/* Recados do LivePix: mural e balão que voa até a orelha (whispers.js). */
.whisper-wall{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);margin:24px 0 0;border:1px solid #d0d2c7;border-radius:12px;overflow:hidden;background:#fdfdf8;box-shadow:0 3px 14px rgba(32,33,29,.03)}
.whisper-pitch{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:20px 24px;background:var(--yellow);color:#20211d;border-right:1px solid #d2c125}
.whisper-pitch-top{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-bottom:14px}
.whisper-pitch .eyebrow{gap:8px;font-size:10px;letter-spacing:1.8px;font-weight:800}
.whisper-pitch .eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.whisper-signal{display:flex;align-items:center;gap:3px;height:20px;flex:none;transform:scale(.85);transform-origin:right center}
.whisper-signal i{width:3px;height:8px;border-radius:3px;background:currentColor}
.whisper-signal i:nth-child(2n){height:16px}.whisper-signal i:nth-child(3n){height:24px}
.whisper-pitch h2{font-family:var(--display);font-size:38px;font-weight:800;line-height:1;letter-spacing:-.4px;margin:0 0 12px;text-transform:uppercase}
.whisper-pitch p{margin:0 0 16px;font-size:13px;line-height:1.55;max-width:38ch;color:#45431e}
.whisper-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 16px;border:1px solid #20211d;border-radius:9px;background:#20211d;color:var(--yellow);font-size:13px;font-weight:800;box-shadow:0 3px 0 #b5a51c;transition:transform .15s ease,box-shadow .15s ease}
.whisper-cta .ui-icon{width:18px;height:18px;stroke-width:1.8;flex:none}
.whisper-cta .whisper-cta-arrow{margin-left:12px;animation:whisper-arrow-nudge 2.6s ease-in-out infinite}
@keyframes whisper-arrow-nudge{0%,55%,100%{transform:translateX(0)}70%,85%{transform:translateX(4px)}77%{transform:translateX(1px)}}
.whisper-cta:hover{transform:translateY(-2px);box-shadow:0 5px 0 #b5a51c}
.whisper-cta:active{transform:translateY(1px);box-shadow:0 1px 0 #b5a51c}
.whisper-feed{display:flex;flex-direction:column;min-width:0;padding:16px 20px}
.whisper-feed-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.whisper-feed-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-width:0}
.whisper-feed-heading h3{margin:0;font-family:var(--display);font-size:24px;line-height:1.1;font-weight:700;letter-spacing:.1px;text-transform:uppercase}
.whisper-count{padding:4px 8px;border:1px solid var(--line);border-radius:6px;font-size:10px;color:var(--muted);font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}
.whisper-count:empty{display:none}
.whisper-feed-help{margin:4px 0 10px;padding-bottom:10px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.5;color:var(--muted)}
.whisper-list{list-style:none;margin:0;padding:3px 9px 5px 3px;display:grid;gap:10px;max-height:232px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
.whisper-list:empty{display:none}
.whisper-item{position:relative;min-width:0;border:1.5px solid #20211d;border-radius:15px 15px 15px 4px;background:#ffffff;box-shadow:2px 2px 0 #20211d;transition:transform .15s ease,box-shadow .15s ease}
.whisper-item.is-new{animation:whisper-new 2.4s ease-out}
.whisper-item:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 #20211d}
.whisper-replay{display:block;width:100%;margin:0;padding:11px 13px 10px;border:0;border-radius:inherit;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.whisper-replay:focus-visible{outline:3px solid #427452;outline-offset:0}
/* Reações (curtir, rir, aplaudir) embaixo de cada recado: ícones preenchidos que se mexem ao clicar. */
.whisper-reactions{display:flex;gap:6px;padding:0 13px 10px}
.whisper-reaction{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 10px 0 7px;border:1px solid #d7dacc;border-radius:999px;background:#fffef8;color:#20211d;font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:transform .15s ease,background .15s ease,border-color .15s ease}
.whisper-reaction:hover{background:#fbf6cf;border-color:#c9c39a}
.whisper-reaction:hover .react-icon{transform:translateY(-1px) rotate(-6deg)}
.whisper-reaction:active{transform:scale(.92)}
.whisper-reaction[aria-pressed=true]{border-color:#20211d;background:#fff3a1}
.whisper-reaction:focus-visible{outline:3px solid #427452;outline-offset:2px}
.whisper-reaction-count{min-width:.6em;font-variant-numeric:tabular-nums}
.whisper-reaction-count:empty{display:none}
.react-icon{display:block;width:21px;height:21px;overflow:visible;transition:transform .2s ease}
.react-icon .react-ink{stroke:#20211d;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.react-icon path.react-ink:not([class*=react-fill]){fill:none}
.react-icon .react-fill{fill:#ffffff}
.react-icon .react-yellow{fill:#f4e22b}
.react-icon .react-mouth{fill:#20211d}
.react-icon .react-tongue{fill:#e2574c}
.react-icon .react-tear{fill:#59b3f0;opacity:.85}
.react-icon .react-sparks{fill:none;stroke:#e8a317;stroke-width:1.6;stroke-linecap:round;opacity:0}
.react-icon g{transform-box:fill-box}
/* Marcado: polegar e mão da frente ficam amarelos; o rosto já é amarelo. */
/* Curtir: o polegar pula e gira; faíscas saem do canto. */
.whisper-reaction.is-pop .react-thumb{transform-origin:30% 90%;animation:react-thumb .6s cubic-bezier(.3,1.6,.5,1)}
.whisper-reaction.is-pop[data-type=like] .react-sparks{animation:react-sparks .6s ease-out}
@keyframes react-thumb{0%{transform:scale(1) rotate(0)}35%{transform:scale(1.35) rotate(-18deg)}70%{transform:scale(.95) rotate(6deg)}100%{transform:scale(1) rotate(0)}}
/* Hahaha: o rosto chacoalha de rir e as lágrimas escorrem. */
.whisper-reaction.is-pop .react-face{transform-origin:50% 60%;animation:react-laugh .8s ease-in-out}
.whisper-reaction.is-pop .react-tear{animation:react-tear .8s ease-in}
@keyframes react-laugh{0%,100%{transform:rotate(0) scale(1)}15%{transform:rotate(-12deg) scale(1.15)}30%{transform:rotate(10deg) scale(1.15)}45%{transform:rotate(-8deg) scale(1.1)}60%{transform:rotate(6deg) scale(1.05)}80%{transform:rotate(-2deg)}}
@keyframes react-tear{0%{transform:translateY(0);opacity:.85}100%{transform:translateY(7px);opacity:0}}
/* Aplausos: as mãos batem duas vezes e soltam faíscas. */
.whisper-reaction.is-pop[data-type=clap] .react-sparks{animation:react-sparks .7s ease-out .12s}
.react-icon .react-solid{fill:#20211d}
.whisper-reaction[aria-pressed=true] .react-claps .react-fill{fill:#f4e22b}
/* Aplausos: o ícone bate duas vezes, com um tremor de palma. */
.whisper-reaction.is-pop .react-claps{transform-origin:50% 70%;animation:react-clap .7s ease-in-out}
@keyframes react-clap{0%,100%{transform:scale(1) rotate(0)}15%{transform:scale(1.28) rotate(-8deg)}30%{transform:scale(.92) rotate(4deg)}50%{transform:scale(1.22) rotate(-6deg)}68%{transform:scale(.95) rotate(3deg)}85%{transform:scale(1.04) rotate(0)}}
@keyframes react-sparks{0%{opacity:0;transform:scale(.4)}30%{opacity:1}100%{opacity:0;transform:scale(1.35)}}
.whisper-reaction.is-pop .whisper-reaction-count{animation:react-count .45s ease-out}
@keyframes react-count{0%{transform:translateY(5px);opacity:0}100%{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.whisper-reaction,.react-icon{transition:none}.whisper-reaction:hover .react-icon{transform:none}.whisper-reaction.is-pop *{animation:none!important}}
.whisper-avatar{display:grid;place-items:center;flex:none;width:25px;height:25px;border:1px solid #dde0d1;border-radius:50%;background:#f0f1e9;color:#545d45;font-size:8px;font-weight:800;letter-spacing:.3px}
.whisper-author{display:flex;flex:1;align-items:baseline;flex-wrap:wrap;gap:3px 8px;min-width:0}
.whisper-author strong{overflow-wrap:anywhere;line-height:1.3}
.whisper-author time{font-size:10px;line-height:1.2;font-weight:400}
.whisper-card-action{display:grid;place-items:center;flex:none;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;color:#687158}
.whisper-card-action svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}
.whisper-replay:hover .whisper-card-action{color:var(--ink)}
/* Trenzinho: as palavras andam no mesmo trilho, uma atrás da outra, e somem atrás do trago. */
.whisper-train{position:absolute;inset:0;z-index:10;pointer-events:none;overflow:hidden}
.whisper-loose{position:absolute;left:0;top:0;color:#20211d;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.3px;line-height:1.1;white-space:pre;pointer-events:none;offset-rotate:auto;offset-anchor:100% 50%;transform-origin:100% 50%;text-shadow:0 0 3px #ffffff,0 0 6px #ffffff;will-change:offset-distance,transform,opacity}
/* Ouvido aberto e rosto de dor: recortes da foto editada que aparecem durante o trem (whispers.js). */
.ear-open{opacity:0;transition:opacity .5s ease-out;pointer-events:none}
.portrait.is-listening .ear-open{opacity:1;transition:opacity .35s ease-in}
/* Pix maior, reação maior: orelha quente (R$ 5+) e fumaça (R$ 20+). */
.ear-hot{opacity:0;mix-blend-mode:multiply;pointer-events:none;transition:opacity .6s ease-out}
.portrait.is-hot .ear-hot{opacity:.7;animation:ear-throb 1.1s ease-in-out infinite}
@keyframes ear-throb{0%,100%{opacity:.5}50%{opacity:.85}}
.whisper-smoke{position:absolute;z-index:8;border-radius:50%;pointer-events:none;background:radial-gradient(circle at 45% 40%,rgba(78,80,75,.92) 0,rgba(98,101,95,.75) 30%,rgba(125,128,121,.4) 52%,rgba(150,153,146,0) 70%);filter:blur(1px);will-change:transform,opacity,filter}
.whisper-flight-tier{display:inline-block;margin:0 0 6px;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:1.1px;line-height:1.3}
.whisper-flight-tier[hidden]{display:none}
.whisper-flight-tier.is-hot{background:#f15a2b;color:#ffffff}
.whisper-flight-tier.is-smoke{background:#3d4038;color:#ffffff}
.whisper-amount.is-hot{background:#f15a2b;color:#ffffff}
.whisper-amount.is-smoke{background:#3d4038;color:#ffffff}
.whisper-tiers{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:5px;font-size:13px}
.whisper-tiers li{display:flex;align-items:baseline;gap:8px}
.whisper-tiers li:before{content:"";flex:none;width:9px;height:9px;border-radius:50%;background:#20211d;transform:translateY(1px)}
.whisper-tiers li.is-hot:before{background:#f15a2b}
.whisper-tiers li.is-smoke:before{background:#8a8d84;box-shadow:0 0 0 2px #3d4038}
.whisper-tiers strong{font-weight:800}
.pain-face{opacity:0;transition:opacity .35s ease-out .1s;pointer-events:none}
/* Puxar a orelha (app.js): estica só a orelha puxada, vermelha conforme estica, com cara de dor. */
#ear-left,#ear-right{touch-action:none}
.portrait.is-pulling .ear-hot{transition:none}
.portrait.is-pulling .pain-face{opacity:1;transition:opacity .15s ease-in}
.portrait{transform-origin:50% 85%}
.portrait.is-wincing .pain-face{opacity:1;transition:opacity .15s ease-in}
.whisper-hole{position:absolute;z-index:11;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse at 55% 50%,rgba(22,6,3,.9) 0,rgba(40,12,8,.7) 35%,rgba(70,26,18,.25) 60%,rgba(90,34,24,0) 75%);pointer-events:none;opacity:0}
.whisper-text{display:block;margin:0 0 10px;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.whisper-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.whisper-meta strong{color:var(--ink);font-weight:750}
.whisper-amount{padding:2px 8px;border-radius:999px;background:var(--yellow);color:#20211d;font-weight:800;font-size:11px}
.whisper-empty{margin:auto 0;padding:40px 24px;border:1px dashed #c9cbbf;border-radius:12px;text-align:center;font-size:14px;line-height:1.7;color:var(--muted)}
@keyframes whisper-new{0%,70%{box-shadow:inset 0 0 0 2px var(--yellow)}100%{box-shadow:inset 0 0 0 2px transparent}}
.whisper-flight{position:absolute;z-index:9;max-width:min(240px,58%);padding:10px 14px 11px;border:2px solid #20211d;border-radius:4px 16px 16px 16px;background:#ffffff;color:#20211d;box-shadow:3px 3px 0 #20211d;pointer-events:none;opacity:0;transform-origin:0 0}
.whisper-flight.is-above{border-radius:16px 16px 16px 4px;transform-origin:0 100%}
.whisper-flight[hidden]{display:none}
.whisper-flight-name{display:block;margin-bottom:3px;font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#6b6a3b}
.whisper-flight-text{display:block;font-size:14px;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
.whisper-delivered{position:absolute;z-index:9;padding:6px 10px;border:2px solid #20211d;border-radius:6px;background:var(--yellow);color:#20211d;font-size:11px;font-weight:900;letter-spacing:1px;white-space:nowrap;pointer-events:none;opacity:0;box-shadow:2px 2px 0 #20211d}
.whisper-delivered[hidden]{display:none}
.whisper-hint{position:absolute;z-index:8;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1.5px solid #20211d;border-radius:999px;background:#ffffff;color:#20211d;font-size:11px;font-weight:800;letter-spacing:.3px;white-space:nowrap;pointer-events:none;box-shadow:2px 2px 0 #20211d;animation:whisper-hint 2.4s ease-in-out infinite}
.whisper-hint:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 1.5px #20211d}
.whisper-hint[hidden]{display:none}
@keyframes whisper-hint{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-4px)}}
@media(max-width:1050px) and (min-width:861px){.whisper-pitch{padding:20px}.whisper-pitch h2{font-size:34px}.whisper-feed{padding:16px}.whisper-feed-heading{display:block}.whisper-count{display:inline-block;margin-top:6px}.whisper-feed-heading h3{font-size:23px}}
@media(max-width:860px){.whisper-wall{grid-template-columns:minmax(0,1fr)}.whisper-pitch{border-right:0;border-bottom:1px solid #d2c125;padding:20px}.whisper-pitch-top{margin-bottom:12px}.whisper-pitch h2{font-size:36px}.whisper-pitch p{max-width:48ch}.whisper-feed{padding:16px 18px}.whisper-list{max-height:244px}}
@media(max-width:470px){.whisper-pitch{padding:18px}.whisper-pitch h2{font-size:34px}.whisper-cta{width:100%}.whisper-cta .whisper-cta-arrow{margin-left:auto}.whisper-feed{padding:14px 12px}.whisper-feed-heading{gap:6px}.whisper-feed-heading h3{font-size:22px}.whisper-count{font-size:9px;padding:3px 6px}.whisper-replay{padding:10px 12px}.whisper-meta{gap:6px}.whisper-text{font-size:13px}.whisper-author{flex-direction:column;gap:2px}.whisper-flight{max-width:72%}.whisper-flight-text{font-size:13px}}
@media(max-width:360px){.whisper-feed .whisper-feed-head{flex-wrap:nowrap}.whisper-feed-heading{display:block}.whisper-count{display:inline-block;margin-top:4px}.whisper-avatar{display:none}}
@media(prefers-reduced-motion:reduce){.whisper-item.is-new{animation:none;outline:3px solid var(--yellow);outline-offset:2px}.whisper-cta{transition:none}.whisper-cta .whisper-cta-arrow{animation:none}.whisper-item{transition:none}.whisper-hint{animation:none}.portrait.is-hot .ear-hot{animation:none}}
/* Logo que fecha o olho: hover no logo ou no "Mande um recado", e quando um recado entra no ouvido. */
.brand-icon{position:relative}.brand-icon img.brand-wince{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .12s}
.brand:hover .brand-wince,.brand:focus-visible .brand-wince,body:has(.header-livepix:hover) .brand-wince,body:has(.header-livepix:focus-visible) .brand-wince,body:has(.portrait.is-wincing) .brand-wince,body:has(.portrait.is-pulling) .brand-wince{opacity:1}
.brand:hover .brand-icon,body:has(.header-livepix:hover) .brand-icon,body:has(.portrait.is-wincing) .brand-icon{animation:brand-wince .45s ease-in-out}
@keyframes brand-wince{0%,100%{transform:rotate(-6deg)}30%{transform:rotate(-11deg) scale(.94)}60%{transform:rotate(-2deg) scale(.97)}}
.header-socials{display:flex;align-items:center;gap:6px}
.header-socials a{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--paper);transition:background .15s,color .15s}
.header-socials a:hover{background:var(--yellow);color:var(--ink)}.header-socials svg{width:15px;height:15px;fill:currentColor}
@media(max-width:760px){.header-socials a{width:34px;height:34px}}
@media(max-width:470px){.header-socials{gap:4px}.header-socials a{width:32px;height:32px}.header-socials svg{width:13px;height:13px}}
@media(prefers-reduced-motion:reduce){.brand-icon{animation:none!important}}
.about-short{display:none}
@media(max-width:1280px){.header-actions{margin-right:16px;gap:6px}.about-long{display:none}.about-short{display:inline}}
.whisper-tiers{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;font-size:12px}
.whisper-tiers li{gap:5px;padding:4px 9px;border:1px solid #20211d;border-radius:999px;background:#fff7a8;align-items:center}
.whisper-tiers li:before{width:7px;height:7px;transform:none}
/* Rodapé em colunas */
footer.site-footer{display:block;padding:34px 0 22px;margin-top:20px;border-top:1.5px solid var(--ink)}
.footer-main{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:32px;padding-bottom:26px}
.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.footer-logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:24px;letter-spacing:-1px}.footer-logo .brand-icon{width:32px;height:34px}
.footer-about p{margin:0;max-width:34ch;font-size:13px;line-height:1.55;color:var(--muted)}
.footer-socials{display:flex;gap:8px;margin-top:4px}.footer-socials a{display:grid;place-items:center;width:36px;height:36px;border:1.5px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--paper);transition:background .15s,color .15s}
.footer-socials a:hover{background:var(--yellow);color:var(--ink)}.footer-socials svg{width:15px;height:15px;fill:currentColor}
.footer-title{font-size:10px;font-weight:800;letter-spacing:1.6px;color:var(--ink);margin-bottom:2px}
footer .footer-links{display:flex;flex-direction:column;gap:9px;font-size:13px}footer .footer-links a{text-decoration:none;color:var(--muted)}footer .footer-links a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.footer-cta .livepix-link,.footer-cta .share-button{min-width:190px;justify-content:center}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.footer-bottom>span{font-size:9px;letter-spacing:1.2px;font-weight:600}
@media(max-width:760px){.footer-main{grid-template-columns:1fr 1fr;gap:26px 18px}.footer-about{grid-column:1/-1}.footer-cta .livepix-link,.footer-cta .share-button{min-width:0;width:100%}footer .footer-bottom>span{display:block}}
@media(max-width:420px){.footer-main{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start;gap:6px}}
/* Nada nativo do navegador: barras de rolagem, setas de details e marcadores próprios. */
@supports selector(::-webkit-scrollbar){*,.category-grid{scrollbar-width:auto;scrollbar-color:auto}}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-button{display:none;width:0;height:0}::-webkit-scrollbar-corner{background:transparent}
::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#b6bba9;border:2px solid transparent;border-radius:999px;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:#8f9482}
@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:#b6bba9 transparent}}
.about-method summary{list-style:none;display:flex;align-items:center;gap:8px}.about-method summary::-webkit-details-marker{display:none}.about-method summary::marker{content:""}
.about-method summary:before{content:"";flex:none;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.about-method[open] summary:before{transform:rotate(45deg) translate(-1px,-1px)}
.history-select select::-ms-expand{display:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none}
button,input,select,textarea{font:inherit}
/* Controle de voz do mural, com área de toque acessível. */
.whisper-voice{display:inline-flex;align-items:center;justify-content:center;flex:none;gap:6px;min-height:44px;padding:0 10px;border:1px solid #d7dacc;border-radius:9px;background:var(--whisper-voice-bg,#ffffff);color:var(--whisper-voice-ink,#4d5343);font-size:11px;font-weight:750;transition:background .15s}
.whisper-voice:hover{--whisper-voice-bg:#f6ed8b;--whisper-voice-ink:#20211d}.whisper-voice .ui-icon{width:15px;height:15px;stroke-width:1.8}.whisper-voice .voice-wave{opacity:.35}
.whisper-voice[aria-pressed=true]{--whisper-voice-bg:#20211d;--whisper-voice-ink:var(--yellow);border-color:#b5a51c}.whisper-voice[aria-pressed=true] .voice-wave{opacity:1}
@media(max-width:470px){.whisper-feed-head{flex-wrap:wrap}}
/* Balão do recado menor no celular, para não cobrir o rosto. */
@media(max-width:760px){.whisper-flight{width:min(240px,calc(100% - 64px));max-width:none;padding:8px 11px 9px;border-width:1.5px;border-radius:12px;box-shadow:2px 2px 0 #20211d;transform-origin:50% 0}.whisper-flight-text{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.whisper-flight-name{font-size:9px;letter-spacing:.9px;margin-bottom:3px}.whisper-flight-tier{font-size:8px;padding:2px 6px;margin-bottom:4px;letter-spacing:.8px}}
.whisper-hint{pointer-events:none;text-decoration:none}.whisper-hint.is-done{pointer-events:auto;cursor:pointer;background:var(--yellow);box-shadow:2px 2px 0 #20211d}.whisper-hint.is-done:hover{background:#f6ed8b}.whisper-hint.is-done:before{background:#20211d}
.image-formats{display:inline-flex;gap:4px;padding:4px;margin:0 0 12px;border:1.5px solid var(--ink);border-radius:999px;background:#fffef8}.image-formats button{min-height:32px;padding:0 16px;border:0;border-radius:999px;background:transparent;font-size:13px;font-weight:750;color:var(--ink)}.image-formats button[aria-pressed=true]{background:var(--ink);color:var(--yellow)}.image-preview.is-story{max-height:62dvh;width:auto;margin:0 auto;display:block}
.whisper-badge{display:inline-block;flex:none;padding:3px 6px;border-radius:5px;background:var(--whisper-badge-bg,#eef2e6);color:var(--whisper-badge-ink,#4e6338);font-size:8px;line-height:1.3;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.whisper-badge.is-first{--whisper-badge-bg:var(--yellow);--whisper-badge-ink:#20211d}.whisper-item.is-pinned{background:#fffbe0}.whisper-item.is-pinned .whisper-avatar{border-color:#e0d781;background:#f6ed8b;color:#5d541b}
.whisper-deck{position:absolute;right:72px;top:58%;z-index:7;width:150px;height:96px;pointer-events:none}
.whisper-deck[hidden]{display:none}
/* Recados pertencem à orelha; o mapa de ocorrências fica livre mesmo durante uma troca de modo. */
.meter-card.is-blood :is(.whisper-deck,.whisper-flight,.whisper-delivered,.whisper-hint,.whisper-train,.whisper-hole,.whisper-smoke){display:none}
.whisper-deck-label{position:absolute;right:0;top:-30px;z-index:3;white-space:nowrap;text-align:right;font-size:9.5px;font-weight:800;letter-spacing:1.2px;color:#20211d}
.whisper-card{position:absolute;inset:0;display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:1.5px solid #20211d;border-radius:4px 12px 12px 12px;background:#fff;box-shadow:2px 2px 0 #20211d;transform:translate(calc(var(--depth)*6px),calc(var(--depth)*-5px)) rotate(calc(var(--depth)*4deg));overflow:hidden}
.whisper-card b{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#6b6a3b}
.whisper-card small{font-size:11px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:760px){.whisper-deck{width:112px;height:74px;right:46px;top:34%}.whisper-deck-label{font-size:8.5px;letter-spacing:.8px;top:-18px}.whisper-card small{font-size:9.5px;-webkit-line-clamp:2}}
.whisper-deck{transition:opacity .2s}@media(max-width:760px){.whisper-deck.is-busy{opacity:0}}
.whisper-hint-ear{width:23px;height:29px;flex:none;margin:-6px 0}.whisper-hint.is-done:before{display:none}
.whisper-hint-ear.is-right{transform:scaleX(-1)}
