@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#253c36;background:#f5f4f0;font-synthesis:none;--green:#245c47;--muted:#77817b;--line:#e2e5dc}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button{cursor:pointer;border:1px solid var(--line);border-radius:10px;background:white;color:inherit;padding:12px 18px;font-weight:600}button:hover{border-color:#739781;background:#f2f7f0}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#174833;color:white}header{height:94px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fafaf7}.brand{display:flex;align-items:center;gap:12px;font-family:Manrope,sans-serif;font-weight:800;font-size:23px;color:inherit;text-decoration:none}.logo{background:var(--green);color:#e4f4b4;padding:2px 12px 8px;border-radius:13px;font-size:30px}.tag{font:10px 'DM Sans',sans-serif;letter-spacing:2px;color:var(--muted);margin-left:15px}#connection{font-size:12px;color:var(--muted)}main{max-width:1380px;margin:auto;padding:42px 5%}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:35px;letter-spacing:-1.3px;margin:9px 0 12px}h2{font-size:21px;margin:0 0 18px}h3{font-size:15px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--green)}.muted,small{color:var(--muted)}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.actions{display:flex;gap:10px;align-items:center}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:17px;padding:24px;margin-bottom:22px}.story{display:flex;align-items:center;gap:18px}.story-icon{font-size:26px;background:#f1f3e9;border-radius:12px;padding:14px}.story h2{margin:7px 0;font-size:19px}.pill{display:inline-block;background:#eaf1e7;color:var(--green);border-radius:30px;padding:6px 10px;font-size:11px;font-weight:700}.table-area{background:#edf0e8;border:1px solid #e0e6d9;border-radius:18px;padding:30px;text-align:center;min-height:310px;display:flex;flex-direction:column;justify-content:center}.table-area h2{font-size:23px;margin:12px 0 8px}.table-area p{font-size:14px;color:#728173}.seats{display:flex;justify-content:center;flex-wrap:wrap;gap:21px;margin:22px 0}.seat{width:70px;font-size:12px}.seat-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:8px}.mini-card{height:72px;width:49px;border:1.5px dashed #bbc8b6;border-radius:8px;margin:auto;display:grid;place-items:center;color:#789071;font-size:23px;background:#f7f9f2}.mini-card.voted{background:#2b624c;color:#deefbb;border:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 6px,#ffffff09 6px,#ffffff09 8px)}.mini-card.revealed{background:#fff;border:1px solid #99b79b;color:var(--green);font-weight:700}.deck-title{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}.deck-title h3{margin:0}.deck{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:10px}.card{display:flex;align-items:center;justify-content:center;text-align:center;padding:0;min-width:0;width:100%;height:91px;font:700 25px/1 Manrope,sans-serif;font-variant-numeric:tabular-nums;border:1px solid #d7dfd2;border-radius:11px;transition:transform .15s}.card:not(:disabled):hover{transform:translateY(-6px)}.card.selected{background:var(--green);color:#f0facf;transform:translateY(-7px);box-shadow:0 7px 0 #cbd9bc;border-color:var(--green)}.hint{text-align:center;font-size:12px;color:var(--muted);margin:18px}.member{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #f0f1eb;font-size:13px}.avatar{height:33px;width:33px;border-radius:50%;background:#eeeede;display:grid;place-items:center;font-weight:700;color:#637259}.member .state{margin-left:auto;font-size:12px;color:#71836a}.side-heading{display:flex;justify-content:space-between;align-items:center}.side-heading h2{font-size:16px;margin:0}.side-note{font-size:12px;line-height:1.8;margin-top:17px;color:var(--muted)}.history-item{padding:13px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;justify-content:space-between;gap:12px}.score{font-size:22px;color:var(--green);font-weight:700}.stats{display:flex;justify-content:center;gap:28px;margin:18px 0}.stats strong{display:block;font-size:27px}.stats small{font-size:11px}.entry{max-width:1020px;margin:35px auto;display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.entry h1{font-size:54px;line-height:1.12}.entry p{line-height:1.8;color:var(--muted)}label{display:block;font-size:13px;font-weight:600;margin:18px 0 8px}input,select{width:100%;border:1px solid #d8dfd4;border-radius:9px;padding:13px;background:#fcfcfa;color:inherit}#entry-form .primary{width:100%;margin-top:22px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:10px}.tabs button{border:0;border-radius:0;background:none;font-size:13px}.tabs button.active{border-bottom:2px solid var(--green);color:var(--green)}.art{display:flex;gap:12px;margin:38px 0}.art div{width:72px;height:106px;display:grid;place-items:center;border-radius:12px;border:1px solid #c6d2bf;font-size:32px;background:#e9eddf;transform:rotate(-12deg)}.art div:nth-child(2){background:var(--green);color:#e3f3b5;transform:translateY(-12px)}.art div:nth-child(3){transform:rotate(12deg)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#253c36;color:white;padding:14px 22px;border-radius:12px;display:none;max-width:90%;z-index:5}.footer{font-size:11px;color:#899084;text-align:center;margin-top:35px}.demo-banner{padding:12px 16px;border:1px solid #dbdfc9;background:#eff1e3;border-radius:10px;font-size:12px;margin-bottom:24px}.text-button{background:none;border:0;padding:5px;font-size:12px;text-decoration:underline}.empty{font-size:13px;color:var(--muted);line-height:1.7;margin:20px 0}.story-form{display:flex;gap:10px;margin-bottom:20px}.story-form input{flex:1;min-width:180px}.story-form button{flex-shrink:0}.distribution{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.distribution span{background:#fff9;padding:6px 10px;border-radius:7px;font-size:12px}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:18px}.entry{gap:28px}.entry h1{font-size:41px}.tag{display:none}}@media(max-width:600px){header{height:75px}.brand{font-size:18px}main{padding:25px 5%}.entry{grid-template-columns:1fr;margin-top:5px;gap:10px}.entry h1{font-size:37px}.art{display:none}.intro{align-items:flex-start;gap:14px;flex-direction:column}h1{font-size:29px}.sidebar{display:block}.table-area{padding:20px 12px}.card{height:70px;padding:0}.deck{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.actions{flex-wrap:wrap}.panel{padding:20px}.story-form{flex-wrap:wrap}#connection{max-width:110px;text-align:right}}

/* Keep long story titles and participant names inside their panels. */
.story>div:nth-child(2),.member>div{min-width:0;overflow-wrap:anywhere}
.story-icon,.avatar,.story>.pill{flex-shrink:0}
.story h2,h1,.history-item{overflow-wrap:anywhere}
.member .state{flex-shrink:0}
.deck-title{gap:12px}.deck-title small{text-align:right}
button:focus-visible{outline:3px solid #8aa969}
@media(max-width:600px){.story{flex-wrap:wrap;gap:12px}.story>div:nth-child(2){flex:1}.story>.pill{margin-left:0!important}.story-form input{min-width:0;flex-basis:100%}.story-form button{width:100%}.intro .actions{width:100%}.deck-title{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.card{transition:none}}
.header-actions{display:flex;align-items:center;gap:14px}
.language-switch{width:auto;min-width:66px;padding:8px 38px 8px 10px;border-radius:9px;background:#fafaf7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m3 6 5 5 5-5' stroke='%23253c36' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center;font-size:14px;cursor:pointer;appearance:none;-webkit-appearance:none}
@media(max-width:600px){.header-actions{gap:8px}.language-switch{min-width:58px;padding:7px 38px 7px 10px;background-position:right 14px center}}

.session-code{display:grid;grid-template-columns:1fr auto;gap:4px 12px;text-align:left;padding:9px 13px;background:#eaf1e7;border-color:#cbdac9}
.session-code>span:first-child{font-size:9px;letter-spacing:1.4px;grid-column:1;color:#526b57}
.session-code strong{grid-column:1;font:700 15px/1.3 ui-monospace,monospace;letter-spacing:1px;user-select:all}
.session-code>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:22px}
.intro{gap:20px}.intro>.actions{flex-wrap:wrap;justify-content:flex-end}.intro>div:first-child{min-width:0}
@media(max-width:600px){.intro>.actions{justify-content:flex-start}.session-code{flex:1 0 100%}}

/* Persistent ad regions, separate from the frequently updated voting interface. */
.ad-layout{display:grid;grid-template-columns:160px minmax(0,1fr) 160px;gap:24px;max-width:1800px;margin:auto;padding:28px 24px}
.ad-layout main{width:100%;min-width:0;margin:0;padding:14px 0 0}
.ad-placement{min-width:0;text-align:center;align-self:start}
.ad-label{display:block;margin-bottom:9px;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#81877e}
.ad-left{grid-column:1;grid-row:1}.ad-right{grid-column:3;grid-row:1}
.ad-layout main{grid-column:2;grid-row:1}
.ad-slot{min-height:600px;width:160px}
.ad-preview{display:none}
.ads-preview .ad-slot{display:grid;place-items:center;background:#eaece5;border:1px dashed #cbd2c3;border-radius:10px}
.ads-preview .ad-preview{display:block;font-size:12px;line-height:2;color:#7c8875;padding:16px}
.ad-bottom{grid-column:1/-1;grid-row:2;width:100%;padding:24px 0 12px;border-top:1px solid var(--line);margin-top:12px}
.ad-bottom .ad-slot{width:100%;max-width:970px;min-height:100px;margin:auto}
@media(min-width:1101px) and (max-width:1450px){.ad-layout .layout{grid-template-columns:1fr}.ad-layout .sidebar{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ad-layout .intro{align-items:flex-start;flex-direction:column}.ad-layout .entry{gap:24px}.ad-layout .entry h1{font-size:40px}}
@media(max-width:1100px){.ad-layout{grid-template-columns:minmax(0,1fr);padding:24px 5%;gap:20px}.ad-left,.ad-right{display:none}.ad-layout main{grid-column:1}.ad-bottom{grid-column:1}.ad-bottom .ad-slot{min-height:100px}}
@media(max-width:600px){.ad-layout{padding:20px 5%}.ad-layout main{padding-top:0}.ad-bottom{padding-top:20px}.ad-bottom .ad-slot{min-height:100px}}

.vote-reading{background:#fff9;border:1px solid #d6dfce;border-radius:12px;padding:22px;text-align:left}.reading-summary{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.reading-score{display:block;font:800 28px/1.3 Manrope,sans-serif;margin:8px 0}.reading-summary .pill{white-space:normal}.table-area .reading-question{color:#294b39;font-size:16px;line-height:1.6}.reading-details{font-size:12px!important;line-height:1.6}.validation-actions{display:flex;gap:10px;flex-wrap:wrap}.validation-actions select{flex:1;min-width:140px}.validation-actions button{flex:1}.vote-reading .distribution{justify-content:flex-start}.vote-reading .side-note{margin-bottom:0}@media(max-width:600px){.vote-reading{padding:16px}.reading-score{font-size:23px}.validation-actions>*{flex-basis:100%!important}}

.landing{line-height:1.7}.landing-hero{padding:28px 0 40px}.landing h1{font-size:clamp(30px,3.2vw,48px);line-height:1.18;margin:16px 0 24px}.landing-hero>p{font-size:18px;max-width:720px}.landing-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:24px 0}.landing a.primary{display:inline-block;text-decoration:none;border-radius:10px;padding:13px 20px;font-weight:700}.landing a:not(.primary){color:var(--green)}.landing-steps{padding-left:24px}.landing-steps li{padding-left:8px;margin-bottom:22px}.landing-steps h3{margin-bottom:4px}.landing-steps p{margin:0}.landing-faq details{border-bottom:1px solid var(--line);padding:16px 0}.landing-faq summary{cursor:pointer;font-weight:700;line-height:1.5}.landing-faq p{margin:12px 0 0;color:#596b61}.landing-cta{text-align:center;margin:28px 0}.landing .side-note{font-size:13px}.landing~footer{padding:20px}@media(max-width:600px){.landing-hero{padding-top:10px}.landing-hero>p{font-size:16px}.landing-actions a{width:100%;text-align:center}}

.ad-session .ad-placement{display:none!important}
.footer button{background:transparent;border:0;padding:0;color:var(--green);font-size:inherit;text-decoration:underline}
.analytics-consent:not([hidden]){max-width:900px;margin:12px auto;padding:16px 20px;border:1px solid #d6dfce;border-radius:12px;background:#fafaf7;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}
.analytics-consent p{flex:1 1 320px;margin:0;line-height:1.6}
.analytics-consent button,.analytics-dialog button{padding:9px 14px}
.analytics-dialog{max-width:min(520px,calc(100vw - 32px));border:1px solid var(--line);border-radius:16px;padding:26px;color:inherit;background:#fafaf7}
.analytics-dialog::backdrop{background:#15251f99}
.analytics-dialog p{line-height:1.7;color:var(--muted)}
.analytics-dialog label{display:flex;align-items:center;gap:9px;margin:20px 0}
.analytics-dialog input{width:auto}
.privacy-status{min-height:0;margin:0 auto 8px;text-align:center;font-size:12px;color:var(--muted)}
.privacy-page{max-width:900px;margin:35px auto;padding:26px;background:#fff;border:1px solid var(--line);border-radius:16px;line-height:1.8}
.privacy-page p{margin:18px 0}
.privacy-footer{padding:20px 5%;line-height:2}
@media(max-width:600px){.analytics-consent:not([hidden]){margin:10px 5%;align-items:stretch}.analytics-consent button{flex:1}.privacy-page{margin:20px 5%;padding:20px}.privacy-footer{padding:20px 5%}}
.studio-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 22px;max-width:900px;margin:14px auto 0;padding-top:12px;border-top:1px solid var(--line);line-height:1.8}.studio-links strong{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted)}.studio-links a{color:var(--muted);text-decoration:none}.studio-links b{color:var(--green);font-weight:700}.studio-links a:hover b{text-decoration:underline}

/* Refonte 2026 de l’accueil : en-tête collant, hero avec éventail de cartes, étapes numérotées, FAQ et pied de page lisibles. */
:root{--ease:cubic-bezier(.22,1,.36,1)}
html,body{overflow-x:clip}
body:has(.landing) header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,#fafaf7 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.logo{transition:transform .5s var(--ease)}
.brand:hover .logo{transform:rotate(-10deg)}
.tag{font-size:11px}
main.landing{padding-top:0}
.landing-hero{position:relative;isolation:isolate;padding:80px 0 84px;margin-bottom:44px;min-height:440px;border-image:conic-gradient(var(--green) 0 0) fill 0//0 100vmax;clip-path:inset(0 -100vmax);color:#f4f9ea}
.landing-hero::before{content:"";position:absolute;z-index:-1;width:640px;height:640px;right:-160px;top:-180px;background:radial-gradient(closest-side,#e4f4b438,transparent);pointer-events:none}
.landing-hero .eyebrow{color:#e4f4b4}
.landing-hero .side-note{color:#a9c4b2}
.landing h1{font-size:clamp(36px,4.6vw,66px);line-height:1.04;letter-spacing:-.045em;max-width:820px}
.landing-hero>p{font-size:19px;line-height:1.7;max-width:640px;color:#d3e3cc}
.landing a.primary{padding:16px 24px;border-radius:14px;box-shadow:0 5px 0 #133b2b;transition:transform .15s var(--ease),box-shadow .15s var(--ease),background-color .2s}
.landing a.primary:active{transform:translateY(4px);box-shadow:0 1px 0 #133b2b}
.landing-actions a:not(.primary){font-weight:700;padding:12px 4px;text-underline-offset:6px}
.landing-hero a.primary{background:#e4f4b4;border-color:#e4f4b4;color:#163f30;box-shadow:0 5px 0 #0f2e22}
.landing-hero a.primary:hover{background:#f0fad2;color:#163f30}
.landing-hero a.primary:active{box-shadow:0 1px 0 #0f2e22}
.landing-hero .landing-actions a:not(.primary){color:#e4f4b4}
.hero-cards{position:absolute;right:3%;top:50%;margin-top:-130px;width:280px;height:250px;pointer-events:none}
.hero-cards span{position:absolute;bottom:0;left:50%;width:108px;height:156px;margin-left:-54px;display:grid;place-items:center;border-radius:16px;border:1px solid #c6d2bf;background:#fff;font:800 46px/1 Manrope,sans-serif;color:var(--green);box-shadow:0 22px 44px #0a1f1866;transform-origin:50% 120%;transition:transform .6s var(--ease)}
.hero-cards span:nth-child(1){transform:rotate(-16deg) translateX(-40px)}
.hero-cards span:nth-child(2){background:#e4f4b4;color:var(--green);border-color:#e4f4b4;transform:translateY(-14px);z-index:1}
.hero-cards span:nth-child(3){transform:rotate(16deg) translateX(40px)}
.landing-hero:hover .hero-cards span:nth-child(1){transform:rotate(-24deg) translateX(-56px)}
.landing-hero:hover .hero-cards span:nth-child(3){transform:rotate(24deg) translateX(56px)}
.landing .panel{border-radius:22px;padding:32px}
.landing .panel h2{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.03em}
.landing-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:step}
.landing-steps li{counter-increment:step;padding:22px;margin:0;border:1px solid var(--line);border-radius:18px;background:#fafaf7;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}
.landing-steps li::before{content:counter(step);display:grid;place-items:center;width:40px;height:40px;margin-bottom:16px;border-radius:12px;background:var(--green);color:#e4f4b4;font:800 18px Manrope,sans-serif}
.landing-steps li:hover{transform:translateY(-3px);border-color:var(--green);box-shadow:6px 6px 0 var(--green)}
.landing-steps h3{font-size:17px;margin-bottom:6px}
.landing-steps p{font-size:14px;color:#596b61}
.landing .seo-links a{display:inline-block;padding:9px 14px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-weight:600;font-size:14px;transition:border-color .2s,background-color .2s}
.landing .seo-links a:hover{border-color:var(--green);background:#f2f7f0}
.landing-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:4px 0;font-size:16px}
.landing-faq summary::-webkit-details-marker{display:none}
.landing-faq summary::after{content:"+";flex-shrink:0;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eaf1e7;color:var(--green);font-size:20px;transition:transform .25s var(--ease)}
.landing-faq details[open] summary::after{content:"–"}
.landing-faq p{font-size:15px}
.landing .side-note{font-size:14px}
.footer{font-size:13px;line-height:1.8}
.studio-links{font-size:13px}
.landing-hero>:not(.hero-cards){max-width:min(820px,calc(100% - 300px))}
@media(max-width:1100px){.hero-cards{transform:scale(.78);transform-origin:100% 50%;right:2%}.landing-hero>:not(.hero-cards){max-width:calc(100% - 230px)}}
@media(max-width:760px){.landing-hero{padding:28px 0 44px;min-height:0;margin-bottom:28px}.hero-cards{position:relative;right:auto;top:auto;margin:0 auto 8px;transform:scale(.62);transform-origin:50% 100%;height:170px;width:260px}.landing-hero>:not(.hero-cards){max-width:none}.landing-hero::before{width:380px;height:380px;right:-140px;top:-120px}.landing h1{font-size:clamp(32px,9vw,42px)}.landing-hero>p{font-size:16px}.landing-steps{grid-template-columns:1fr}.landing-steps li:hover{transform:none;box-shadow:none}.landing .panel{padding:22px}body:has(.landing) header{position:static}body:has(.landing) .brand{white-space:nowrap}body:has(.landing) .header-actions .text-button{display:none}}
@media(prefers-reduced-motion:reduce){.hero-cards span,.landing-steps li,.logo{transition:none}.landing-hero:hover .hero-cards span:nth-child(1){transform:rotate(-16deg) translateX(-40px)}.landing-hero:hover .hero-cards span:nth-child(3){transform:rotate(16deg) translateX(40px)}}
.language-switch{height:44px;min-width:0;padding:0 38px 0 14px;border-radius:12px;font-weight:600;line-height:42px;background-position:right 12px center;transition:border-color .2s,background-color .2s}
.language-switch:hover{border-color:#739781;background-color:#f2f7f0}
@media(max-width:600px){.language-switch{height:40px;line-height:38px;padding:0 34px 0 12px;background-position:right 10px center;font-size:14px}}
/* Refonte 2026 de l’intérieur : écran d’entrée et en-tête de session en bandeau vert, table de vote en tapis, cartes en relief, guides et pages annexes alignés sur l’accueil. */
.entry,.intro{position:relative;isolation:isolate;border-image:conic-gradient(var(--green) 0 0) fill 0//0 100vmax;clip-path:inset(0 -100vmax);color:#f4f9ea}
.entry{max-width:1180px;margin:-42px auto 40px;padding:64px 0 72px}
.entry::before,.intro::before{content:"";position:absolute;z-index:-1;width:560px;height:560px;left:-180px;top:-200px;background:radial-gradient(closest-side,#e4f4b430,transparent);pointer-events:none}
.entry .eyebrow,.intro .eyebrow{color:#e4f4b4}
.entry h1{font-size:clamp(40px,4.6vw,64px);line-height:1.04;letter-spacing:-.045em}
.entry>section:not(.panel)>p{color:#d3e3cc;font-size:18px}
.entry>section:not(.panel)>p small{color:#a9c4b2;font-size:14px}
.art div{width:84px;height:122px;font:800 36px Manrope,sans-serif;color:var(--green);background:#fff;border:0;border-radius:14px;box-shadow:0 18px 36px #0a1f1866}
.art div:nth-child(2){background:#e4f4b4;color:var(--green)}
.entry .panel{padding:30px;border:0;border-radius:22px;color:#253c36;box-shadow:0 30px 60px #0a1f1855}
.tabs{gap:6px;padding:5px;border:0;border-radius:14px;background:#eef2ea}
.tabs button{flex:1;min-height:44px;border-radius:10px;font-size:15px;color:#596b61}
.tabs button.active{border:0;background:#fff;color:var(--green);box-shadow:0 2px 8px #253c361f}
input,.validation-actions select{min-height:48px;border-radius:12px;transition:border-color .2s,box-shadow .2s}
input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 4px #245c4722}
button.primary,a.primary{border-radius:14px;box-shadow:0 4px 0 #133b2b;transition:transform .15s var(--ease),box-shadow .15s var(--ease),background-color .2s}
button.primary:not(:disabled):active,a.primary:active{transform:translateY(3px);box-shadow:0 1px 0 #133b2b}
#entry-form .primary{min-height:52px;font-size:16px}
.intro{margin:-42px 0 28px;padding:40px 0 44px;align-items:flex-end;gap:20px}
.intro h1{font-size:clamp(30px,3.4vw,46px);letter-spacing:-.04em;margin:8px 0 10px}
.intro .muted{color:#a9c4b2}
.intro .session-code{background:#e4f4b4;border-color:#e4f4b4;color:#163f30;border-radius:14px;box-shadow:0 4px 0 #0f2e22}
.intro .session-code>span:first-child{color:#3f6150}
.intro #invite{background:transparent;color:#f4f9ea;border-color:#ffffff40;border-radius:14px;min-height:48px}
.intro #invite:hover{background:#ffffff14;border-color:#e4f4b4}
.intro .text-button{color:#e4f4b4;font-size:14px}
.demo-banner{position:relative;z-index:1;margin:0 0 54px;background:#fffbe9;border-color:#ece3b8}
.demo-banner+.intro{margin-top:-24px;padding-top:36px}
.panel{border-radius:20px}
.story .story-icon{background:var(--green);color:#e4f4b4;border-radius:14px}
.story h2{font-size:21px}
.table-area{position:relative;padding:40px 30px;border:0;border-radius:28px;color:#f4f9ea;background:radial-gradient(120% 90% at 50% 0%,#33765c,#1d4d3b);box-shadow:inset 0 0 0 10px #173f30,inset 0 0 0 11px #ffffff1f,0 22px 44px #1d4d3b33}
.table-area .eyebrow{color:#e4f4b4}
.table-area h2{font-size:clamp(24px,2.4vw,30px);letter-spacing:-.03em}
.table-area>p,.table-area>small,.table-area .seat-name{color:#c4d8c4}
.table-area .seat-name{font-size:13px}
.mini-card{width:56px;height:80px;border-radius:10px;border:1.5px dashed #ffffff55;background:#ffffff0d;color:#ffffff88}
.mini-card.voted{background:#e4f4b4;color:var(--green);box-shadow:0 8px 18px #0a1f1855;background-image:none}
.mini-card.revealed{background:#fff;border:0;color:var(--green);font:800 26px Manrope,sans-serif;box-shadow:0 8px 18px #0a1f1855}
.table-area #reveal{background:#e4f4b4;border-color:#e4f4b4;color:#163f30;box-shadow:0 4px 0 #0f2e22;min-height:50px;padding:12px 24px}
.table-area #reveal:disabled{opacity:.55}
.table-area .vote-reading .eyebrow{color:var(--green)}
.table-area .seat-name small{color:#a9c4b2}
.table-area .vote-reading{background:#fff;border:0;color:#253c36;box-shadow:0 18px 36px #0a1f1844}
.table-area .stats strong{color:#fff}
.table-area .stats small,.table-area .distribution span{color:#253c36}
.vote-reading .stats strong{color:inherit}
.deck-title h3{font-size:18px}
.deck{gap:12px}
.card{height:104px;border-radius:14px;background:#fff;border-color:#d7dfd2;box-shadow:0 4px 0 #dde5d6;transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s}
.card:not(:disabled):hover{transform:translateY(-8px);border-color:var(--green);box-shadow:0 10px 0 #cbd9bc}
.card.selected{background:var(--green);color:#e4f4b4;transform:translateY(-10px);box-shadow:0 10px 0 #133b2b,0 0 0 4px #e4f4b4}
.member{min-height:56px}
.avatar{background:var(--green);color:#e4f4b4;font-size:12px}
.history-item .score{min-width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#eaf1e7}
.sidebar>.side-note{padding:18px;border-radius:16px;background:#eef2e4;color:#4f6656;font-size:14px}
.privacy-page{border-radius:22px;padding:40px 44px;font-size:16px}
.privacy-page h1{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.04em;line-height:1.1}
.privacy-page>.eyebrow{display:inline-block;padding:6px 10px;border-radius:999px;background:#eaf1e7}
body[data-seo-page] main.landing:not(:has(.landing-hero))>.panel:first-child{padding:44px;border:0;color:#f4f9ea;background:radial-gradient(90% 120% at 100% 0%,#33765c,var(--green) 60%);box-shadow:0 24px 48px #1d4d3b33}
body[data-seo-page] main.landing:not(:has(.landing-hero))>.panel:first-child .eyebrow{color:#e4f4b4}
body[data-seo-page] main.landing:not(:has(.landing-hero))>.panel:first-child h1{font-size:clamp(30px,3.8vw,48px);line-height:1.08;letter-spacing:-.04em}
body[data-seo-page] main.landing:not(:has(.landing-hero))>.panel:first-child p{color:#d3e3cc;font-size:17px}
body[data-seo-page] main.landing:not(:has(.landing-hero))>.panel:first-child a.primary{background:#e4f4b4;border-color:#e4f4b4;color:#163f30;box-shadow:0 5px 0 #0f2e22;padding:16px 24px}
body[data-seo-page] main.landing:not(:has(.landing-hero)) .panel ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
body[data-seo-page] main.landing:not(:has(.landing-hero)) .panel ul li{padding:14px 16px 14px 44px;border-radius:14px;background:#f4f7f0;position:relative}
body[data-seo-page] main.landing:not(:has(.landing-hero)) .panel ul li::before{content:"✓";position:absolute;left:16px;top:14px;color:var(--green);font-weight:800}
.privacy-footer{font-size:14px}
.privacy-footer button{padding:6px 4px;border:0;background:none;color:var(--green);text-decoration:underline;font-size:14px}
@media(max-width:900px){.entry{gap:32px}}
@media(max-width:600px){.entry{margin:-25px auto 28px;padding:32px 0 40px}.entry h1{font-size:38px}.entry .panel{padding:22px}.intro{margin-top:-25px;padding:28px 0 32px;align-items:stretch}.tabs button{font-size:14px;padding:10px 8px;white-space:nowrap}.table-area{padding:28px 14px;border-radius:22px}.card{height:76px;border-radius:11px}.deck{gap:8px}.privacy-page{padding:24px 20px}body[data-seo-page] main.landing:not(:has(.landing-hero))>.panel:first-child{padding:26px 22px}}
@media(prefers-reduced-motion:reduce){.card,button.primary,a.primary{transition:none}}
