/* 0.3 · Card-first viewport. Never scale text to make it fit.
   Compact chrome, fixed ballot dock, independent secondary panels. */
.hero-ctas{flex-wrap:wrap}.hero-ctas .physical-entry{background:#ddbc7b09;border-color:#ddbc7b44}
body.in-focus-game{height:100dvh;overflow:hidden}
.focus-shell{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.focus-shell .topbar{height:58px;min-height:58px;flex:0 0 58px;padding:6px 22px;background:#0b201ccc}
.focus-shell .tavola-logo{width:91px}.focus-shell .wordmark{font-size:22px}.focus-shell .brand-sub{font-size:7px;letter-spacing:1px}
.focus-shell .top-actions .btn{min-height:38px}.focus-shell .brand-divider{height:28px}
.focus-body{display:flex;flex:1;min-height:0;width:100%;max-width:1800px;padding:14px 18px 16px;flex-direction:column;gap:6px;overflow:hidden;margin:0 auto}
.focus-body .status-banner{flex:0 0 auto;margin:0;padding:6px 12px;font-size:12px;line-height:1.2}
.focus-shell .board-grid{display:grid;grid-template-columns:212px minmax(0,1fr);gap:18px;flex:1;min-height:0;max-width:none;align-items:stretch;margin:0}
.focus-shell.panel-expanded .board-grid{grid-template-columns:212px minmax(0,1fr) 330px}
.focus-shell .center-table{display:flex;flex-direction:column;min-height:0;overflow:hidden;min-width:0;scroll-margin:0}
.focus-shell .center-table:before{display:none}
.focus-shell .seats{height:40px;min-height:40px;flex:0 0 40px;gap:16px;margin:0 0 7px;align-items:center;justify-content:center}
.focus-shell .seat{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:7px;max-width:175px;min-width:0;text-align:left;align-items:center}
.focus-shell .seat .avatar{width:28px;height:28px;font-size:13px;grid-row:1/3;flex:0 0 auto}
.focus-shell .seat-name{font-size:12px;line-height:1.3;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}
.focus-shell .seat-label{font-size:9px;line-height:1.4;margin:0;color:#a2b9a8}
.focus-shell .seat .crown{width:16px;height:16px;top:-6px;right:-5px}.focus-shell .seat .crown .icon{width:11px;height:11px}
.focus-shell .seat-vote{font-size:10px;width:16px;height:16px}
.focus-shell .table-tools{display:flex;justify-content:space-between;flex-wrap:nowrap;gap:8px;flex:0 0 44px;margin:0 0 10px;min-height:0;padding:0 0 8px;border-bottom:1px solid #a4b8a722}
.month-leader{display:flex;align-items:center;gap:14px;min-width:0;white-space:nowrap}.month-leader>b{font-size:12px;letter-spacing:1px;color:var(--gold)}.month-leader>b>span{font-size:11px;font-weight:400;color:#9fb0a1;letter-spacing:0;margin-left:5px}.month-leader>span{display:flex;gap:5px;font-size:12px;color:#cad6c8;overflow:hidden;text-overflow:ellipsis;max-width:155px}.month-leader .icon{width:14px;height:14px;color:var(--gold);flex-shrink:0}
.table-tool-actions{display:flex;gap:6px;align-items:center}.focus-shell .table-tools .btn{min-height:34px;padding:6px 9px;font-size:12px;white-space:nowrap;gap:6px;margin:0}
.table-tool-actions .btn.on{border-color:#dbba7555;background:#e4c18112;color:#f0d69f}.unread-count{border-radius:10px;background:#d5b676;color:#142b23;font-size:10px;padding:1px 5px;line-height:15px;min-width:17px;text-align:center}.call-live-indicator{font-size:10px;font-style:normal;color:#8ed4aa}
.focus-shell .dashboard-tool,.focus-shell .compact-health{display:none}
.focus-shell .left-sidebar{display:flex;flex-direction:column;gap:10px;min-height:0;min-width:0;overflow:auto;padding:2px 3px 4px;scrollbar-width:thin}
.focus-shell .left-sidebar>.section-label{margin:0 0 4px;font-size:9px;letter-spacing:1.4px;min-height:14px;flex-shrink:0}
.focus-shell .metric{flex:0 0 auto;margin:0;padding:13px 12px 10px;border-radius:8px;box-shadow:0 2px 0 #b0ae9b,0 5px 12px #0002}
.focus-shell .metric:before{height:5px}.focus-shell .metric-title{margin:0 0 12px;gap:4px}.focus-shell .metric-name{font-size:13px;white-space:nowrap;gap:7px}.focus-shell .metric-title .icon{width:16px;height:16px}
.focus-shell .metric-value{font-size:27px}.focus-shell .metric .track{display:grid;padding-top:5px}.focus-shell .track span{font-size:10px}.focus-shell .metric-foot{font-size:8px;min-height:12px;line-height:1.5;margin-top:8px;letter-spacing:.6px}
.focus-shell .goal-box{margin:2px 0 0;padding:10px 11px;border-radius:8px;flex:0 0 auto}.focus-shell .goal-box p{margin:6px 0;font-size:12px;line-height:1.5}.focus-shell .goal-box .goal-dots{display:none}.focus-shell .goal-danger{font-size:10px;line-height:1.4}
.focus-shell .calendar-panel{padding:9px;margin:0;flex:0 0 auto;border-radius:8px}.focus-shell .calendar-label{margin:0 0 7px;display:block}.focus-shell .calendar-label .eyebrow{font-size:8px;letter-spacing:1px}.focus-shell .calendar-label>.small{display:none}.focus-shell .calendar-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:3px}
.focus-shell .month{min-height:32px;height:32px;padding:3px 0;display:flex;align-items:center;justify-content:center}.focus-shell .month .mon{font-size:8px;line-height:10px;margin-top:0}.focus-shell .month .num{display:none}.focus-shell .month.current .cube{width:6px;height:6px;position:absolute;bottom:3px;left:calc(50% - 3px);top:auto;right:auto}.focus-shell .calendar-cards{position:absolute;bottom:1px;left:1px;right:1px;height:6px;gap:2px;margin:0}.focus-shell .tiny-card{height:5px;width:4px}.focus-shell .calendar-caption>span{display:none}.focus-shell .calendar-caption{margin:6px 0 0;justify-content:flex-end}.focus-shell .calendar-caption button{font-size:9px;padding:2px 0}.focus-shell .calendar-caption .icon{width:10px;height:10px}
.focus-shell .focus-stage{position:relative;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 6px 7px;scroll-padding:8px;isolation:isolate}
.focus-shell .voting-stage{display:flex;flex-direction:column;overflow:hidden;gap:8px;padding:2px 5px 7px}
.focus-shell .dilemma-card{width:100%;max-width:1100px;margin:0 auto;box-sizing:border-box;min-height:0;padding:0;display:flex;flex-direction:column;border-radius:12px;border-top:5px solid var(--cat);box-shadow:0 3px 0 #c6c1b1,0 5px 0 #596657,0 14px 24px #0002}
.focus-shell .focus-dilemma{flex:1;max-height:100%;overflow:hidden}
.focus-shell .card-reading{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:20px 24px 14px;scrollbar-width:thin;scrollbar-color:#566c5360 transparent;outline-offset:-4px}
.card-intro{display:grid;grid-template-columns:minmax(0,1fr) 172px;gap:22px;align-items:center}.card-prose{min-width:0}.card-art{min-width:0;align-self:stretch;display:flex;align-items:center;overflow:hidden;border-radius:10px;opacity:.92}.card-art .dilemma-illustration{margin:0;width:100%;max-height:154px;border-radius:9px;object-fit:cover;object-position:center}
.focus-shell .card-meta{font-size:11px;line-height:1.4;letter-spacing:1.1px;margin:0 0 9px;gap:10px;justify-content:space-between}.focus-shell .card-meta .icon{width:15px;height:15px}
.focus-shell .dilemma-card h2{font-size:clamp(26px,2.5vw,35px);line-height:1.15;letter-spacing:-.4px;margin:0 0 10px;color:#293c31}
.focus-shell .dilemma-story{font-size:19px;line-height:1.5;margin:0;color:#3a4e40;max-width:none}
.focus-shell .mode-row{margin:14px 0 12px;gap:8px;flex-wrap:wrap}.focus-shell .mode-row .pill{font-size:10px;line-height:1.2;letter-spacing:.25px;padding:6px 8px;min-height:27px;display:flex;align-items:center;gap:5px}.focus-shell .mode-row .icon{width:13px;height:13px}
.focus-shell .focus-dilemma .options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-items:stretch}
.focus-shell .option{font-size:17px;line-height:1.4;min-height:65px;padding:12px;gap:10px;border:1px solid #7d916942;background:#fff9;align-items:flex-start;border-radius:7px;color:#294431}
.focus-shell .option-letter{min-width:28px;width:28px;height:28px;line-height:28px;font-size:17px;margin:0;background:#68775e10;border:1px solid #6b805b35;display:grid;place-items:center;flex-shrink:0}
.focus-shell .option.selected{border-color:#456b4c;background:#dfeada;box-shadow:inset 0 0 0 1px #456b4c}.focus-shell .option.selected .option-letter{background:#365a42;color:#fff}.focus-shell .option:disabled{opacity:1;cursor:default}.focus-shell .option:disabled:not(.selected){opacity:.72}
.focus-shell .ballot-area{flex:0 0 auto;text-align:left;padding:10px 20px 12px;margin:0;display:flex;gap:18px;align-items:center;border-top:1px solid #80957850;background:#e5e7da;border-radius:0 0 8px 8px;color:#294031;min-height:82px;box-sizing:border-box}
.ballot-cards{display:flex;align-items:center;gap:10px;flex:0 0 auto}.focus-shell .hand{display:flex;align-items:stretch;height:auto;min-height:0;gap:5px;margin:0;perspective:none}
.focus-shell .vote-card{width:40px;height:49px;min-width:0;margin:0;border:1px solid #8794796b;border-radius:5px;background:#fbfaf4;box-shadow:0 2px 0 #a7ae98;color:#465842;transform:none!important;font-family:var(--serif);font-size:23px;display:grid;place-items:center;padding:0;transition:background .15s,border-color .15s}
.focus-shell .vote-card.selected{border-color:#3b6245;background:#3b6245;color:#fff;box-shadow:0 2px 0 #263f2b}.focus-shell .vote-card:hover:not(.selected){background:#edf2e4}.focus-shell .vote-card b{font-weight:400;line-height:1}
.blank-vote{display:flex;align-items:center;justify-content:center;gap:7px;min-height:49px;padding:6px 10px;border:1px solid #8c968283;border-radius:5px;background:#fffdf7;color:#344337;box-shadow:0 2px 0 #a7ae98;cursor:pointer;text-align:left;flex-shrink:0}.blank-vote>b{font-size:22px;line-height:1;display:block}.blank-vote>span{font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap}.blank-vote small{display:block;font-weight:400;font-size:9px;letter-spacing:.2px}.blank-vote.selected{border:2px solid #344b37;padding:5px 9px;background:#fff;outline:2px solid #3b5e4230;outline-offset:2px}.blank-vote:disabled{opacity:.55;box-shadow:none;cursor:not-allowed}
.ballot-confirm{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:1;min-width:0}.focus-shell .vote-hint{font-size:12px;line-height:1.4;margin:0;min-width:0;color:#435741;text-align:right}.ballot-confirm>.btn.primary{background:#365d43;border-color:#365d43;color:#fff;box-shadow:0 2px 0 #26422f;min-height:47px;font-size:15px;padding:10px 16px;white-space:nowrap;flex-shrink:0}.ballot-confirm>.btn.primary:disabled{background:#83917f;border-color:#83917f;color:#fff;opacity:.7}
.focus-shell .ballot-locked{display:flex;justify-content:space-between;min-height:78px}.ballot-locked>div:first-child{display:flex;flex-direction:column;gap:5px}.ballot-locked strong{font-size:16px;display:flex;align-items:center;gap:6px}.ballot-locked span{font-size:12px;color:#5a6a55}.ballot-progress{display:flex;gap:8px;align-items:center;color:#526946;font-size:15px}
.suggestion-strip{display:flex;align-items:center;gap:7px;flex:0 0 auto;min-height:30px;max-width:1100px;width:100%;margin:0 auto;padding:0 6px;color:#b5c9b8;font-size:11px;line-height:1.3;flex-wrap:wrap}.suggestion-caption{display:flex;align-items:center;gap:5px;font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:#c0cabc}.suggestion-caption .icon,.suggestion-strip>.icon{width:13px;height:13px}.suggestion-strip button{background:#294e3d70;border:1px solid #729b8055;border-radius:5px;color:#d6e3cf;display:flex;gap:6px;align-items:center;padding:4px 8px;font:inherit;min-height:27px}.suggestion-strip button b{color:#f0d191;font-size:12px}.suggestion-strip .suggestion-more{margin-left:auto;width:28px;justify-content:center;padding:4px}.suggestion-strip.locked{justify-content:center;color:#bdd0c0}
.focus-shell .result-card{width:100%;max-width:950px;padding:25px 30px;margin:0 auto;box-sizing:border-box}.focus-shell .result-card h2{font-size:32px;margin:10px 0 14px;line-height:1.18}.focus-shell .result-narrative{font-size:18px;line-height:1.5;margin:12px 0}.focus-shell .chosen-quote{font-size:18px;line-height:1.4;padding:13px 16px;margin:14px 0}.focus-shell .tally{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0}.focus-shell .tally-cell{font-size:14px;padding:8px 4px;min-width:0;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center}.focus-shell .tally-cell strong{font-size:27px;line-height:1.2}.focus-shell .tally-cell>span{font-size:10px;line-height:1.3;white-space:normal}.focus-shell .blank-tally{background:#fff9;color:#425846;border:1px dashed #6c7f6277}
.focus-shell .vote-ledger{margin:10px 0;padding:10px;border-radius:7px}.focus-shell .vote-ledger p{font-size:12px;line-height:1.4}.focus-shell .vote-ledger-title{font-size:12px}.focus-shell .public-votes{display:flex;flex-wrap:wrap;gap:6px}.focus-shell .public-votes>span{padding:6px 8px;min-width:0;font-size:13px;gap:6px}.focus-shell .public-votes>span i{font-size:12px}.focus-shell .result-actions{margin:14px 0 0}.focus-shell .result-actions .btn{min-height:46px;font-size:16px}
.focus-shell .phase-title{font-size:clamp(28px,3vw,40px);margin:8px 0 10px}.focus-shell .table-eyebrow{font-size:10px;margin:9px 0 3px}.focus-shell .phase-sub{font-size:16px;line-height:1.5;margin:0 auto 10px;max-width:620px}.focus-shell .decks-grid{max-width:730px;gap:20px;padding:14px 24px 25px}.focus-shell .deck-choice{min-height:165px;padding:18px}.focus-shell .deck-choice h3{font-size:27px;line-height:1.2}.focus-shell .deck-choice>.icon{width:25px;height:25px;margin:0 auto 6px}.focus-shell .deck-choice small{font-size:9px}.focus-shell .deck-choice .card-count{font-size:9px}.focus-shell .waiting{font-size:13px;margin:10px 0}
.focus-shell .notice-card p{font-size:18px;line-height:1.5}.focus-shell .notices{max-width:850px;margin:12px auto}.focus-shell .notice-card{padding:18px}.focus-shell .notice-card h3{font-size:25px}.focus-shell .gameover{max-width:1000px;margin:auto}.focus-shell .gameover h1{font-size:35px}.focus-shell .end-review{margin-top:25px}.focus-shell .gameover .medal{width:54px;height:54px;margin:5px auto 10px}
.focus-shell .right-sidebar{display:flex;grid-column:auto;grid-template-columns:none;position:relative;inset:auto;min-height:0;width:100%;max-width:none;z-index:6;padding:0;overflow:hidden;gap:0;background:none;align-self:stretch}
.focus-shell .aside-panel{height:100%;min-height:0;flex:1;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;background:#102a23;border:1px solid #7da08940;box-shadow:0 8px 20px #0002}
.focus-shell .aside-head{padding:12px;gap:6px;min-height:61px;flex-shrink:0}.focus-shell .aside-head>div>strong{font-size:16px}.focus-shell .aside-head .eyebrow{font-size:8px;letter-spacing:1.2px}.focus-shell .mobile-chat-close{display:flex;margin-left:auto;order:3;min-height:32px;min-width:32px;padding:5px}
.panel-tabs{display:flex;gap:6px;align-items:center;padding:0 12px 10px;border-bottom:1px solid #7da08933;flex-shrink:0}.panel-tabs button{background:none;color:#acc5b2;border:1px solid #7da08933;padding:6px 10px;border-radius:5px;font-size:12px;min-height:32px}.panel-tabs button.on{background:#c9dfcd14;border-color:#a0b99670;color:#e4ead9}.panel-tabs .chat-state{margin-left:auto;font-size:9px;padding:4px 7px}
.focus-shell .call-toolbar{padding:9px 12px;flex-shrink:0}.focus-shell .call-toolbar-label{font-size:10px}.focus-shell .call-entry-buttons{gap:5px;display:flex}.focus-shell .call-entry-buttons .btn{font-size:11px;min-height:32px;padding:5px 7px;gap:4px}.focus-shell .call-entry-buttons .icon{width:13px;height:13px}
.focus-shell .chat-list{flex:1;min-height:40px;max-height:none;height:auto;overflow:auto;padding:14px 12px 5px;overscroll-behavior:contain}.focus-shell .chat-item{gap:8px;margin-bottom:17px}.focus-shell .chat-text{font-size:16px;line-height:1.6}.focus-shell .chat-meta strong{font-size:13px}.focus-shell .chat-meta .sender-kind{font-size:7px}.focus-shell .chat-meta time{font-size:9px}.focus-shell .chat-avatar{width:25px;height:25px;min-width:25px;font-size:13px}.focus-shell .chat-avatar>.icon{width:14px;height:14px}
.focus-shell .chat-controls{flex:0 0 auto;padding:10px 12px;margin:0}.focus-shell .chat-controls textarea{min-height:48px;font-size:16px;line-height:1.4;max-height:80px;padding:8px}.focus-shell .chat-compose-footer{margin-top:6px}.focus-shell .chat-compose-footer span{font-size:9px}.focus-shell .chat-compose-footer .btn{padding:5px 11px;min-height:32px}.focus-shell .chat-footnote{font-size:9px;padding:4px 12px 8px;flex-shrink:0}.focus-shell .typing-line{font-size:10px;min-height:17px;padding:0 12px}.focus-shell .chat-locked{font-size:13px;padding:12px}.focus-shell .suggestion-tag{font-size:11px;padding:5px 7px;margin-bottom:6px}
.focus-shell .call-help{padding:15px;font-size:15px;color:#b7cbb9;line-height:1.7;overflow:auto}.focus-shell .call-help h3{font-size:22px;color:#ecebdb}.focus-shell .call-panel{flex:0 0 auto}.focus-shell .call-only .in-call .video-grid{max-height:calc(100dvh - 330px);grid-template-columns:1fr}.focus-shell .in-call .video-grid{max-height:170px}.media-keeper{display:none!important}
.dashboard-modal-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dashboard-modal-metrics .metric{margin:0}.dashboard-modal-metrics .metric .track{display:grid}.dashboard-modal-metrics .metric-foot{font-size:9px}.dashboard-modal-metrics~.goal-box{display:block}.dashboard-modal-metrics~.calendar-panel{margin-top:16px}
.physical-names{display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.physical-names .field:first-child{grid-column:1/-1}.physical-lobby{max-width:700px;margin:30px auto;padding:15px 22px 40px}.physical-lobby h1{font:40px var(--serif);margin:12px 0}.physical-lobby>p{font-size:16px;line-height:1.6}.physical-lobby .lobby-panel{margin-top:20px}.physical-lobby .field{margin:18px 0}.personal-invite{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;margin:14px 0;padding:12px;background:#ffffff08;border:1px solid var(--line);border-radius:8px}.personal-invite>strong{grid-column:1/-1;color:var(--gold)}.personal-invite>input{width:100%;min-width:0;font-size:13px}.personal-invite>.btn{font-size:12px}.join-name{font:32px var(--serif);color:var(--gold)}
.focus-shell.physical-shell .board-grid{grid-template-columns:minmax(0,1fr);max-width:1040px;width:100%;margin:auto}.focus-shell.physical-shell.panel-expanded .board-grid{grid-template-columns:minmax(0,1fr) 330px;max-width:1450px}.physical-vote-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px}.physical-ready .field{color:#41533c;font-size:14px}.physical-ready .field small{color:#758267}.physical-ready input,.physical-ready select{background:#fff9;border-color:#8da07c60;color:#31472f;font-size:16px;min-height:45px}.physical-ready .rules-note{color:#556846;font-size:13px;margin-top:16px;border-color:#8da07c60}.physical-ready .btn.quiet{color:#5f6c59}.focus-shell .physical-ballot{flex:1;max-width:900px;overflow:hidden}.physical-ballot .card-reading{display:flex;flex-direction:column}.physical-ballot .dilemma-story{font-size:17px}.physical-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:1;min-height:150px;max-height:370px}.physical-option{border:1px solid #83977590;background:#fff8;border-radius:10px;color:#365333;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:80px}.physical-option strong{font:45px var(--serif);line-height:1}.physical-option span{font-size:13px}.physical-option.selected{border-color:#35603d;background:#d7e7cc;box-shadow:inset 0 0 0 2px #35603d}.physical-option:disabled{opacity:.65}.physical-option.selected:disabled{opacity:1}.physical-privacy{font-size:12px!important;line-height:1.5!important;margin:12px 0 0;color:#66775a}
/* A narrow computer keeps the card wide; the optional conversation becomes an overlay. */
@media(max-width:1350px){.focus-shell.panel-expanded .board-grid{grid-template-columns:196px minmax(0,1fr)}.focus-shell .board-grid{grid-template-columns:196px minmax(0,1fr);gap:13px}.focus-shell .right-sidebar{position:fixed;right:14px;top:70px;bottom:14px;width:365px;max-width:calc(100vw - 24px);z-index:25;box-shadow:-16px 0 50px #0007;border-radius:10px}.focus-shell .aside-panel{height:100%;border-color:#a3b49955}.focus-shell .month-leader>span{display:none}.focus-shell .ballot-area{gap:10px;padding-left:15px;padding-right:15px}.focus-shell .vote-hint{font-size:11px}.focus-shell .card-reading{padding:18px 21px 13px}.card-intro{grid-template-columns:minmax(0,1fr) 135px;gap:15px}.focus-shell .option{font-size:17px}.focus-shell .physical-shell .right-sidebar{position:fixed}.focus-shell.physical-shell.panel-expanded .board-grid{grid-template-columns:minmax(0,1fr)}}
@media(min-width:1600px){.focus-shell .board-grid{grid-template-columns:235px minmax(0,1fr);gap:24px}.focus-shell.panel-expanded .board-grid{grid-template-columns:235px minmax(0,1fr) 385px}.focus-shell .left-sidebar{gap:14px}.focus-shell .metric{padding:18px 16px 15px}.focus-shell .metric-name{font-size:14px}.focus-shell .metric-foot{font-size:9px}.focus-shell .metric-value{font-size:30px}.focus-shell .goal-box p{font-size:13px}.focus-shell .focus-dilemma .card-reading{padding:26px 30px}.focus-shell .dilemma-story{font-size:21px}.focus-shell .option{font-size:19px;min-height:80px;padding:15px}.focus-shell .card-art{min-height:160px}.focus-shell .card-art .dilemma-illustration{max-height:185px}.card-intro{grid-template-columns:minmax(0,1fr) 195px}}
@media(max-height:760px) and (min-width:851px){.focus-body{padding-top:8px;padding-bottom:10px}.focus-shell .left-sidebar{gap:7px}.focus-shell .metric{padding:10px 11px 8px}.focus-shell .metric-title{margin-bottom:9px}.focus-shell .metric-foot{margin-top:5px}.focus-shell .metric-value{font-size:23px}.focus-shell .goal-box{padding:8px 10px}.focus-shell .goal-box p{font-size:11px;margin:4px 0}.focus-shell .calendar-panel{padding:7px}.focus-shell .calendar-label{margin-bottom:5px}.focus-shell .seats{height:33px;min-height:33px;flex-basis:33px;margin-bottom:5px}.focus-shell .table-tools{flex-basis:39px;margin-bottom:7px;padding-bottom:5px}.focus-shell .dilemma-story{font-size:18px;line-height:1.4}.focus-shell .dilemma-card h2{font-size:28px;margin-bottom:8px}.focus-shell .card-meta{margin-bottom:7px}.focus-shell .card-reading{padding-top:14px;padding-bottom:10px}.focus-shell .mode-row{margin:10px 0}.focus-shell .option{padding:10px;min-height:60px;font-size:16.5px}.focus-shell .ballot-area{min-height:73px;padding-top:8px;padding-bottom:9px}.focus-shell .deck-choice{min-height:133px;padding:12px}.focus-shell .decks-grid{padding-top:9px;padding-bottom:12px;gap:15px;max-width:640px}.focus-shell .phase-title{font-size:30px}.focus-shell .phase-sub{font-size:15px}.focus-shell .deck-choice h3{font-size:25px}.focus-shell .result-card{padding:18px 24px}.focus-shell .result-narrative{font-size:17px;line-height:1.4}.focus-shell .result-card h2{font-size:29px;margin:8px 0 10px}.focus-shell .tally-cell{padding:6px 4px}.focus-shell .tally-cell strong{font-size:24px}}
/* Phone: the card is the screen. Dashboard and diary are on-demand, not removed. */
@media(max-width:850px){
 .focus-shell .topbar{height:48px;min-height:48px;flex-basis:48px;padding:5px 12px;gap:8px}.focus-shell .tavola-logo{width:75px}.focus-shell .wordmark{font-size:16px;letter-spacing:1px}.focus-shell .brand-sub{font-size:5px;letter-spacing:.5px}.focus-shell .brand-divider{height:22px}.focus-shell .brand{gap:8px}.focus-shell .top-actions{gap:2px}.focus-shell .top-actions .btn{padding:5px;min-height:32px;min-width:32px}.focus-shell .top-actions .btn span{display:none}.focus-shell .room-title{display:none!important}
 .focus-body{padding:5px 8px calc(7px + env(safe-area-inset-bottom));gap:4px}.focus-shell .board-grid,.focus-shell.panel-expanded .board-grid{display:flex;min-height:0;gap:0;flex-direction:column}.focus-shell .left-sidebar{display:none}.focus-shell .center-table{flex:1;min-height:0;gap:0}
 .focus-shell .compact-health{display:flex;justify-content:space-between;align-items:center;flex:0 0 30px;min-height:30px;width:100%;border:0;border-bottom:1px solid #93b39726;background:transparent;padding:0 3px;color:#cbdbc8;gap:8px}.compact-health>span{display:flex;align-items:center;gap:4px}.compact-health .icon{color:var(--cat);width:13px;height:13px}.compact-health b{font-size:14px;color:#edf0e1}.compact-health small{font-size:9px}.compact-health .compact-goal{font-size:9px;white-space:nowrap;color:#dabd82}
 .focus-shell .seats{flex:0 0 31px;height:31px;min-height:31px;margin:3px 0 2px;gap:8px;justify-content:space-around}.focus-shell .seat{display:flex;gap:4px;flex:1;max-width:132px}.focus-shell .seat .avatar{width:20px;height:20px;font-size:9px;flex-shrink:0}.focus-shell .seat .crown{width:11px;height:11px;top:-3px;right:-3px}.focus-shell .seat .crown .icon{width:9px;height:9px}.focus-shell .seat-name{font-size:10px;line-height:1.1;overflow:hidden;white-space:nowrap;max-width:82px}.focus-shell .seat-label{display:none}.focus-shell .seat-vote{width:12px;height:12px;font-size:8px;bottom:-3px;right:-3px}
 .focus-shell .table-tools{flex:0 0 36px;min-height:36px;margin:0 0 5px;padding-bottom:3px;gap:3px;align-items:center}.focus-shell .table-tools .btn{min-height:30px;padding:5px 6px;gap:4px;font-size:11px}.focus-shell .table-tools .btn>.icon{width:15px;height:15px}.focus-shell .table-tools .btn>span{display:none}.focus-shell .table-tools .dashboard-tool{display:flex}.focus-shell .fullscreen-tool{display:none}.table-tool-actions{gap:3px}.month-leader{gap:7px}.month-leader>b{font-size:11px;letter-spacing:.4px}.month-leader>b>span{font-size:10px;margin-left:3px}.focus-shell .month-leader>span{display:none}.unread-count{font-size:9px;line-height:13px;min-width:15px;padding:1px 4px}
 .focus-shell .focus-stage{padding:1px 3px 5px}.focus-shell .voting-stage{gap:5px}.focus-shell .dilemma-card{border-radius:10px;border-top-width:4px}.focus-shell .card-reading{padding:12px 14px 10px}.card-intro{grid-template-columns:1fr;gap:0}.card-art{display:none}.focus-shell .card-meta{font-size:9px;letter-spacing:.8px;margin-bottom:7px}.focus-shell .card-meta .icon{width:13px;height:13px}.focus-shell .dilemma-card h2{font-size:28px;line-height:1.15;margin:0 0 9px}.focus-shell .dilemma-story{font-size:17px;line-height:1.45;margin:0}.focus-shell .mode-row{gap:5px;margin:11px 0 10px}.focus-shell .mode-row .pill{font-size:9px;letter-spacing:0;padding:5px 6px;min-height:24px;gap:4px}.focus-shell .mode-row .icon{width:12px;height:12px}
 .focus-shell .focus-dilemma .options{grid-template-columns:1fr;gap:7px}.focus-shell .option{padding:9px 10px;min-height:51px;font-size:16px;line-height:1.35;gap:9px;align-items:center}.focus-shell .option-letter{width:26px;height:26px;min-width:26px;font-size:16px;line-height:26px}
 .focus-shell .ballot-area{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:9px 12px 10px;min-height:0}.ballot-cards{justify-content:space-between;gap:8px}.focus-shell .hand{flex:1;gap:6px}.focus-shell .vote-card{width:auto;flex:1;height:41px;font-size:21px;min-width:31px}.blank-vote{min-height:41px;padding:4px 8px;gap:5px}.blank-vote.selected{padding:3px 7px}.blank-vote>b{font-size:20px}.blank-vote>span{font-size:11px}.blank-vote small{font-size:8px}.ballot-confirm{justify-content:space-between;gap:8px;flex:0 0 auto}.focus-shell .vote-hint{text-align:left;font-size:10px;line-height:1.3;max-width:155px}.ballot-confirm>.btn.primary{min-height:40px;font-size:14px;padding:8px 12px;gap:5px}.ballot-confirm .icon{width:15px;height:15px}.focus-shell .ballot-locked{flex-direction:row;align-items:center;min-height:60px;padding:10px 14px}.ballot-locked strong{font-size:14px}.ballot-locked span{font-size:11px}
 .suggestion-strip{padding:0 4px;gap:4px;min-height:26px;flex-wrap:nowrap;overflow:hidden}.suggestion-caption{font-size:8px;letter-spacing:0;gap:3px;white-space:nowrap}.suggestion-caption .icon{display:none}.suggestion-strip button{font-size:9px;padding:3px 5px;gap:4px;min-height:26px;white-space:nowrap}.suggestion-strip button b{font-size:10px}.suggestion-strip .suggestion-more{min-width:24px;width:24px;padding:3px}.suggestion-strip.locked{font-size:10px}
 .focus-shell .right-sidebar{position:fixed;inset:48px 0 0;width:100%;max-width:100%;z-index:25;border-radius:0;padding-bottom:env(safe-area-inset-bottom);background:#102a23}.focus-shell .aside-panel{border-radius:0;border:0}.focus-shell .aside-head{min-height:57px;padding:10px 14px}.focus-shell .aside-head>div>strong{font-size:18px}.focus-shell .chat-text{font-size:17px;line-height:1.6}.focus-shell .chat-controls{padding:8px 14px 10px}.focus-shell .chat-controls textarea{font-size:16px;min-height:50px}.focus-shell .chat-compose-footer>.btn{min-height:36px}.focus-shell .call-entry-buttons .btn{font-size:12px;min-height:34px}.focus-shell .call-only .in-call .video-grid{grid-template-columns:1fr 1fr;max-height:calc(100dvh - 280px)}.focus-shell .call-help{font-size:15px}
 .focus-shell .result-card{padding:18px 16px;border-radius:10px}.focus-shell .result-card h2{font-size:28px;line-height:1.2;margin:9px 0 13px}.focus-shell .result-narrative{font-size:17px;line-height:1.5}.focus-shell .tally{gap:5px}.focus-shell .tally-cell{font-size:13px;padding:7px 3px}.focus-shell .tally-cell strong{font-size:25px}.focus-shell .tally-cell>span{font-size:9px}.focus-shell .chosen-quote{font-size:17px;padding:11px 12px}.focus-shell .effect-chips{gap:6px}.focus-shell .effect-chip{font-size:12px}.focus-shell .scheduled-note{font-size:13px;line-height:1.5;padding:11px}.focus-shell .secret-note{font-size:11px}.focus-shell .result-actions>.btn{width:100%;font-size:15px;min-height:44px}
 .focus-shell .phase-title{font-size:30px;margin:9px 0}.focus-shell .phase-sub{font-size:15px;line-height:1.5;margin-bottom:10px}.focus-shell .table-eyebrow{margin-top:8px;font-size:9px}.focus-shell .decks-grid{padding:10px 12px 16px;gap:17px;max-width:480px}.focus-shell .deck-choice{min-height:150px;padding:15px 10px}.focus-shell .deck-choice h3{font-size:25px}.focus-shell .deck-choice>.icon{width:24px;height:24px}.focus-shell .deck-choice small{font-size:8px}.focus-shell .deck-choice .card-count{font-size:8px}.focus-shell .end-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.focus-shell .gameover h1{font-size:29px}.focus-shell .gameover-actions{flex-direction:column}
 .physical-names{grid-template-columns:1fr}.physical-names .field:first-child{grid-column:auto}.physical-lobby{margin-top:12px;padding:12px}.physical-lobby h1{font-size:30px}.physical-vote-settings{grid-template-columns:1fr;gap:0}.physical-ready .field{margin-bottom:12px}.physical-ready input,.physical-ready select{font-size:16px}.physical-ready .rules-note{margin:12px 0;padding:12px}.physical-option strong{font-size:43px}.physical-option span{font-size:12px}.physical-options{gap:10px;max-height:330px;min-height:150px}.focus-shell .physical-ballot .dilemma-story{font-size:16px}.physical-privacy{font-size:11px!important}.focus-shell.physical-shell .board-grid,.focus-shell.physical-shell.panel-expanded .board-grid{display:flex;max-width:100%;margin:0}.personal-invite{grid-template-columns:1fr}.personal-invite .btn{width:100%}
}
@media(max-width:375px){.compact-health small{display:none}.compact-health .compact-goal{font-size:9px}.focus-shell .topbar{padding:4px 9px}.focus-shell .brand-sub{display:none}.focus-shell .wordmark{font-size:15px}.focus-shell .seat-name{font-size:9px}.focus-shell .card-reading{padding:11px 12px 9px}.focus-shell .dilemma-card h2{font-size:25px}.focus-shell .ballot-area{padding-left:10px;padding-right:10px}.focus-shell .vote-hint{max-width:115px}.ballot-confirm>.btn.primary{font-size:13px;padding:8px 10px}.suggestion-strip button{font-size:8px;padding:3px 4px;gap:2px}.suggestion-caption{display:none}}
@media(max-height:680px) and (max-width:850px){.focus-shell .seats{display:none}.focus-shell .dilemma-card h2{font-size:25px}.focus-shell .card-reading{padding-top:10px}.focus-shell .deck-choice{min-height:123px;padding:10px}.focus-shell .decks-grid{gap:13px;padding-top:7px}.focus-shell .phase-title{font-size:26px}.focus-shell .phase-sub{font-size:14px}.focus-shell .card-meta{margin-bottom:6px}.focus-shell .result-card{padding:14px}.focus-shell .physical-ready .result-narrative{font-size:15px}}
/* Wide/short tablet: preserve reading, keep the vote button anchored. */
@media(max-height:480px) and (min-width:600px){.focus-shell .compact-health,.focus-shell .seats{display:none}.focus-shell .topbar{flex-basis:42px;min-height:42px;height:42px}.focus-shell .table-tools{flex-basis:32px;min-height:32px;margin-bottom:3px}.focus-shell .ballot-area{flex-direction:row;gap:12px;min-height:66px}.ballot-confirm{flex:1}.focus-shell .ballot-cards{flex:0 0 auto}.focus-shell .vote-card{width:32px}.focus-shell .vote-hint{display:none}.focus-shell .suggestion-strip{display:none}.focus-shell .focus-dilemma .options{grid-template-columns:1fr 1fr}.focus-shell .right-sidebar{top:42px}}
@media(prefers-reduced-motion:reduce){.focus-shell .flip-in,.focus-shell .result-card{animation:none}.focus-shell *{scroll-behavior:auto!important}}
/* During a phone ballot, give the avatars' row back to the actual card. */
@media(max-width:850px){
 .focus-shell[data-phase="vote"] .seats{display:none}
 .focus-shell .table-tools [data-act="toggle-chat"]>span{display:inline}
 .focus-shell .month-leader>span{display:flex;max-width:80px;font-size:10px;gap:4px}
 .focus-shell .month-leader>span .icon{width:11px;height:11px}
}
@media(max-width:375px){.focus-shell .month-leader>span{display:none}}
.focus-body .status-banner{min-height:0;line-height:1.2;padding:4px 12px;font-size:11px}
.focus-body .status-banner .btn{min-height:25px;font-size:11px;padding:3px 7px}
/* Reset legacy 69px seat minimum: prevents invisible overlap over toolbar on phones. */
.focus-shell .seat{min-height:0;height:100%;box-sizing:border-box}
.focus-shell .chat-footnote{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px;flex-shrink:0}
.focus-shell .chat-footnote .btn{font-size:11px;padding:4px 7px;min-height:30px}
.focus-shell .chat-footnote>span{display:block;width:100%;text-align:center}
