/* Sudan Builders 2.0 — isolated visual system. Does not alter simulation state. */
.sb-app.sb20-theme{--sb20-green:#126c51;--sb20-red:#852d28;--sb20-gold:#c49b50;--sb20-ink:#24372e;--sb20-line:#dde9de;--sb20-surface:#fff;--sb20-slate:#64786b;--sb20-cream:#f8f6ee;box-sizing:border-box;width:100%;max-width:100%;overflow:clip;background:#f5f7f4;font-family:inherit!important}
.sb-app.sb20-theme *, .sb-app.sb20-theme *::before,.sb-app.sb20-theme *::after{box-sizing:border-box}
.sb-app.sb20-theme :is(button,input,select){font:inherit}
.sb-app.sb20-theme button{cursor:pointer;transition:background .18s ease,transform .18s ease,border-color .18s ease}
.sb-app.sb20-theme button:disabled{cursor:not-allowed;opacity:.43}
.sb-app.sb20-theme button:focus-visible,.sb-app.sb20-theme [tabindex]:focus-visible{outline:3px solid #e0b461;outline-offset:2px}
.sb-app.sb20-theme .sb2-header{position:relative;background:linear-gradient(105deg,#142922,#165b45 70%,#19694e);padding:11px 18px!important;min-height:66px;display:flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:10px}
.sb-app.sb20-theme .sb2-header::before,.sb-app.sb20-theme .sb2-header::after,.sb-app.sb20-theme .sb2-shell::before,.sb-app.sb20-theme .sb2-shell::after{content:none!important;display:none!important;border:0!important}
.sb-app.sb20-theme .sb2-header>div{flex:1;min-width:0;text-align:right}
.sb-app.sb20-theme .sb2-header strong{font-size:23px!important;line-height:1.2;color:#fff}
.sb-app.sb20-theme .sb2-header span{font-size:11px!important;color:#e4efe6;margin-top:2px}
.sb-app.sb20-theme .sb8-reset{width:auto!important;flex:none!important;background:#a44037!important;border:1px solid #b95b50!important;color:#fff!important;border-radius:11px!important;padding:9px 14px!important;min-height:38px;font-size:12px!important;font-weight:800;box-shadow:0 4px 14px #14292122}
.sb-app.sb20-theme .sb8-reset:hover{background:#872d28!important}
.sb-app.sb20-theme .sb2-stepper{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:14px!important;background:white!important;padding:9px 18px!important;min-height:40px!important;border-bottom:1px solid var(--sb20-line)!important}
.sb-app.sb20-theme .sb2-current{order:0!important;width:auto!important;font-size:11px!important;white-space:nowrap!important;color:#7d342b!important}
.sb-app.sb20-theme .sb2-step-track{order:1!important;display:flex;gap:5px!important;flex:1!important;min-width:0}
.sb-app.sb20-theme .sb2-step-track span{height:5px!important;min-width:0;border-radius:20px;background:#e3ebe5!important}
.sb-app.sb20-theme .sb2-step-track span.done{background:#207c5b!important}
.sb-app.sb20-theme .sb2-step-track span.current{background:#cb9b49!important}
.sb-app.sb20-theme .sb2-main{width:100%!important;max-width:1620px!important;margin:0 auto!important;padding:14px 14px 12px!important}
.sb-app.sb20-theme .sb2-footer{padding:8px!important;font-size:9px!important;color:#8b9a8d!important}
.sb-app.sb20-theme .sb2-primary,.sb-app.sb20-theme .sb20-primary{border:1px solid var(--sb20-green)!important;color:#fff!important;background:linear-gradient(110deg,#12694e,#228263)!important;border-radius:11px!important;font-weight:850!important;min-height:40px!important;padding:8px 12px!important;font-size:13px!important;text-align:center}
.sb-app.sb20-theme .sb2-outline{background:white!important;color:#176047!important;border:1px solid #b9d5c2!important;border-radius:11px!important;min-height:38px!important;padding:7px 10px!important;font-size:12px!important}
.sb-app.sb20-theme .sb20-kicker{display:block;color:#9a4b32;font-size:11px;font-weight:800;letter-spacing:.2px;line-height:1.4}
/* Welcome */
.sb-app.sb20-theme .sb20-welcome{margin:0 auto;max-width:1420px;display:grid;gap:12px;direction:rtl}
.sb-app.sb20-theme .sb20-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.sb-app.sb20-theme .sb20-journey-item{display:flex;align-items:center;gap:9px;min-width:0;background:#fff;border:1px solid #e2e9e1;border-top:3px solid #2b8a67;border-radius:13px;padding:9px 12px;min-height:62px;box-shadow:0 5px 12px #20442e09}
.sb-app.sb20-theme .sb20-tone-rakiza{border-top-color:#a44b42}.sb-app.sb20-theme .sb20-tone-alfiya{border-top-color:#293c36}.sb-app.sb20-theme .sb20-tone-ashriya{border-top-color:#c8a160}
.sb-app.sb20-theme .sb20-journey-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:10px;background:#edf6ef;color:#216a53;font-size:18px;font-style:normal}
.sb-app.sb20-theme .sb20-tone-rakiza .sb20-journey-icon{background:#f9eeec;color:#a54d43}.sb-app.sb20-theme .sb20-tone-alfiya .sb20-journey-icon{background:#eef0ee;color:#293c36}.sb-app.sb20-theme .sb20-tone-ashriya .sb20-journey-icon{background:#fbf3e6;color:#ac7c32}
.sb-app.sb20-theme .sb20-journey-item>span:last-child{min-width:0;display:flex;flex-direction:column;gap:2px}.sb-app.sb20-theme .sb20-journey-item strong{color:#193f34;font-size:14px;line-height:1.25}.sb-app.sb20-theme .sb20-journey-item small{color:#73877a;font-size:10px;line-height:1.4}
.sb-app.sb20-theme .sb20-welcome-content{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(325px,.76fr);gap:12px;align-items:stretch}
.sb-app.sb20-theme .sb20-welcome-intro{position:relative;min-width:0;background:linear-gradient(140deg,#f0f6ef 0%,#fffdf6 95%);border:1px solid #dce7dc;border-radius:20px;padding:23px 26px 14px;overflow:hidden;display:flex;flex-direction:column;gap:7px}
.sb-app.sb20-theme .sb20-welcome-intro h1{color:#6d2b25;font-size:clamp(28px,3.2vw,48px)!important;line-height:1.2!important;margin:4px 0!important;font-weight:850}
.sb-app.sb20-theme .sb20-welcome-intro h1 em{color:#19664c;font-style:normal}
.sb-app.sb20-theme .sb20-welcome-intro p{margin:0!important;color:#526e5d;font-size:13px;line-height:1.75;max-width:620px}
.sb-app.sb20-theme .sb20-hero-art{max-height:265px;overflow:hidden;margin-top:auto;display:flex;justify-content:center}
.sb-app.sb20-theme .sb20-preview-svg{display:block;width:min(100%,650px);height:auto;max-height:282px}
.sb-app.sb20-theme .sb20-welcome-form{background:white;border:1px solid #e0e9df;border-radius:20px;padding:19px;display:grid;gap:8px;align-content:center;box-shadow:0 12px 32px #254b3210}
.sb-app.sb20-theme .sb20-form-top{display:flex;gap:11px;align-items:center;margin-bottom:8px}.sb-app.sb20-theme .sb20-form-top>div{display:flex;flex-direction:column;gap:3px}
.sb-app.sb20-theme .sb20-form-mark{width:43px;height:43px;display:grid;place-items:center;flex:none;border-radius:13px;background:#f9efdd;color:#a57b36;font-weight:900;font-size:17px}
.sb-app.sb20-theme .sb20-form-top strong{font-size:21px;color:#204735}.sb-app.sb20-theme .sb20-form-top small{font-size:11px;color:#718676}
.sb-app.sb20-theme .sb20-welcome-form label{font-size:12px;color:#304a3a;font-weight:850;margin-top:4px}
.sb-app.sb20-theme .sb20-welcome-form input,.sb-app.sb20-theme .sb20-welcome-form select{width:100%;min-height:44px;border:1px solid #c4d9c9;background:#fafdfb;border-radius:11px;padding:8px 12px;color:#24483c;font-size:15px;box-shadow:none}
.sb-app.sb20-theme .sb20-start{min-height:47px!important;margin-top:6px;font-size:15px!important}
.sb-app.sb20-theme .sb20-disclaimer{font-size:10px;text-align:center;color:#7b8a7d;line-height:1.5}
/* Builder */
.sb-app.sb20-theme .sb20-stage{max-width:1520px;width:100%;margin:0 auto;direction:rtl;min-width:0}
.sb-app.sb20-theme .sb20-stage-header{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e0e8df;border-radius:16px;padding:11px 17px;margin:0 0 10px}
.sb-app.sb20-theme .sb20-stage-header h1{color:#702a25;margin:2px 0 0!important;font-size:clamp(22px,2.3vw,32px)!important;line-height:1.25}
.sb-app.sb20-theme .sb20-counter{display:flex;align-items:center;gap:9px;background:#eff7f1;border:1px solid #d6e5d9;border-radius:12px;padding:8px 12px;white-space:nowrap}
.sb-app.sb20-theme .sb20-counter strong{color:#1b6c52;font-size:18px;font-weight:900}
.sb-app.sb20-theme .sb20-counter small{color:#71917e;font-size:10px}
.sb-app.sb20-theme .sb20-stage-grid{display:grid;grid-template-columns:minmax(375px,.82fr) minmax(0,1.18fr);gap:12px;align-items:stretch;min-width:0}
.sb-app.sb20-theme .sb20-stage-control,.sb-app.sb20-theme .sb20-stage-scene{min-width:0}
.sb-app.sb20-theme .sb20-control,.sb-app.sb20-theme .sb20-visual{background:#fff;border:1px solid #dfe8dd;border-radius:18px;padding:12px;box-shadow:0 10px 28px #1b40310a;min-width:0;height:100%}
.sb-app.sb20-theme .sb20-control{display:flex;flex-direction:column;gap:8px}
.sb-app.sb20-theme .sb20-control-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sb-app.sb20-theme .sb20-control-head h2{color:#174d3b;font-size:20px;margin:1px 0 0;font-weight:850}
.sb-app.sb20-theme .sb20-count{color:#206b50;background:#edf6ef;border-radius:10px;padding:7px 10px;font-size:18px;white-space:nowrap}
.sb-app.sb20-theme .sb20-count small{font-size:12px;color:#738b7a}
.sb-app.sb20-theme .sb20-progress{height:6px;background:#ebefe9;border-radius:50px;overflow:hidden;flex:none}
.sb-app.sb20-theme .sb20-progress i{display:block;background:linear-gradient(90deg,#c3a25a,#168461);height:100%;transition:width .25s;border-radius:50px}
.sb-app.sb20-theme .sb20-family-ribbon{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:5px!important;min-width:0;overflow:visible!important;margin:0!important;padding:0!important;flex:none}
.sb-app.sb20-theme .sb20-family-ribbon button{display:flex!important;min-width:0!important;max-width:none!important;width:100%!important;min-height:42px!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:#f9fbf8!important;border:1px solid #e0e8e1!important;color:#2d5a49!important;border-radius:11px!important;padding:5px 2px!important;font-size:11px!important;white-space:nowrap!important;overflow:hidden}
.sb-app.sb20-theme .sb20-family-ribbon button span{display:none!important}
.sb-app.sb20-theme .sb20-family-ribbon button small{font-size:8px!important;color:#789185!important;white-space:nowrap;margin:0!important;display:block!important}
.sb-app.sb20-theme .sb20-family-ribbon button.active{background:#196d51!important;border-color:#196d51!important;color:#fff!important}
.sb-app.sb20-theme .sb20-family-ribbon button.active small{color:#e5f5e8!important}
.sb-app.sb20-theme .sb20-family-head{display:flex!important;flex-flow:row nowrap!important;justify-content:space-between;align-items:center!important;border-top:1px solid #edf0ec;margin:0!important;padding:8px 2px 0!important;gap:6px!important}
.sb-app.sb20-theme .sb20-family-head strong{font-size:17px;color:#213d32;line-height:1.2}
.sb-app.sb20-theme .sb20-family-head small{font-size:10px;color:#7f9383;line-height:1.4;margin-top:2px}
.sb-app.sb20-theme .sb20-family-head .sb2-family-switch{display:flex;align-items:center;gap:4px;width:auto!important;font-size:10px}
.sb-app.sb20-theme .sb20-family-head .sb2-family-switch button{min-width:28px;min-height:29px;border:1px solid #dce7dc;background:#f8faf7;padding:4px 7px;border-radius:8px}
.sb-app.sb20-theme .sb20-people-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;gap:6px!important;overflow-y:auto!important;overflow-x:hidden!important;max-height:225px!important;min-height:0!important;margin:0!important;padding:1px!important;overscroll-behavior:contain;align-content:start}
.sb-app.sb20-theme .sb20-people-grid .sb2-person{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:space-between;min-width:0!important;min-height:50px!important;max-width:100%!important;width:100%!important;margin:0!important;gap:5px!important;padding:6px 7px!important;border:1px solid #e1e8e0!important;border-radius:11px!important;background:#fbfcfa!important;box-shadow:none!important;grid-template-columns:none!important;grid-template-areas:none!important;grid-template-rows:none!important}
.sb-app.sb20-theme .sb20-people-grid .sb2-person.is-picked{background:#e9f7ee!important;border-color:#86c5a4!important}
.sb-app.sb20-theme .sb20-people-grid .sb2-person-info{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important;grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important}
.sb-app.sb20-theme .sb20-people-grid .sb2-person-info b{font-size:12px!important;color:#173b2e;line-height:1.2;margin:0}
.sb-app.sb20-theme .sb20-people-grid .sb2-person-info small{font-size:9px!important;color:#7f9083;line-height:1.3;margin:0}
.sb-app.sb20-theme .sb20-people-grid .sb2-person-action,.sb-app.sb20-theme .sb20-people-grid .sb2-minor{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;order:0!important;flex:0 0 auto;justify-self:auto!important;align-self:center!important;min-width:0!important;max-width:none!important;width:auto!important;min-height:29px!important;padding:4px 8px!important;border-radius:8px!important;font-size:10px!important;white-space:nowrap}
.sb-app.sb20-theme .sb20-people-grid .sb2-person-action{border:1px solid #99ceb0;background:#fff;color:#176b4d}
.sb-app.sb20-theme .sb20-people-grid .is-picked .sb2-person-action{background:#197b59;border-color:#197b59;color:#fff}
.sb-app.sb20-theme .sb20-people-grid .sb2-minor{font-size:9px!important;color:#8d9b90;background:#f0f2ef}
.sb-app.sb20-theme .sb20-control-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;flex:none}
.sb-app.sb20-theme .sb20-control-actions button{min-width:0;min-height:37px!important;padding:6px 5px!important;font-size:11px!important;white-space:normal}
.sb-app.sb20-theme .sb20-control-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #edf1ed;padding-top:8px;min-height:40px}
.sb-app.sb20-theme .sb20-back{background:none!important;color:#637e6e;font-size:11px;border:0!important;padding:5px 0}
.sb-app.sb20-theme .sb20-next-hint{font-size:10px;color:#859b8c}
.sb-app.sb20-theme .sb20-primary{font-size:12px!important;min-height:36px!important}
.sb-app.sb20-theme .sb20-visual-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:0 3px}
.sb-app.sb20-theme .sb20-visual-top h2{margin:2px 0 0;font-size:20px;color:#244b3b}
.sb-app.sb20-theme .sb20-visual-stat{display:flex;align-items:center;gap:7px;background:#edf5ef;border-radius:10px;padding:6px 9px}
.sb-app.sb20-theme .sb20-visual-stat strong{font-size:20px;color:#14694f}.sb-app.sb20-theme .sb20-visual-stat small{font-size:10px;color:#739482}
.sb-app.sb20-theme .sb20-world{position:relative;isolation:isolate;overflow:hidden;border-radius:14px;border:1px solid #c8dccb;background:#d1e2c9;aspect-ratio:940 / 520;min-height:0!important;margin:0!important}
.sb-app.sb20-theme .sb20-world-svg{width:100%;height:100%;display:block;overflow:hidden}
.sb-app.sb20-theme .sb20-dwelling{cursor:pointer;transition:filter .15s ease,opacity .15s ease;outline:none;transform-box:fill-box;transform-origin:center}
.sb-app.sb20-theme .sb20-dwelling:hover{filter:brightness(1.07) drop-shadow(0 0 4px #e4aa60)}
.sb-app.sb20-theme .sb20-dwelling:focus-visible{filter:drop-shadow(0 0 5px #b96e3e)}
.sb-app.sb20-theme .sb20-house-selection{animation:sb20-pulse 2.5s ease-in-out infinite}
.sb-app.sb20-theme .sb20-citizen{animation:sb20-citizen 2.2s ease-in-out infinite alternate}
.sb-app.sb20-theme .sb20-center{position:absolute!important;z-index:3!important;top:53%!important;left:51%!important;transform:translate(-50%,-50%)!important;width:22%!important;height:auto!important;min-height:84px!important;padding:9px 11px!important;border:1px solid #d7c29b!important;border-radius:18px!important;background:#fffdf7ed!important;box-shadow:0 12px 30px #19493526!important;display:flex!important;flex-direction:column!important;align-items:center;justify-content:center!important;gap:0!important;text-align:center!important;pointer-events:none}
.sb-app.sb20-theme .sb20-center-kicker{font-size:12px;color:#325446!important;font-weight:800;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sb-app.sb20-theme .sb20-center strong{font-size:22px!important;color:#126c51!important;line-height:1.25;display:block;white-space:nowrap;max-width:100%;overflow:visible!important}
.sb-app.sb20-theme .sb20-center strong b{font-size:inherit!important;color:inherit!important;display:inline!important}
.sb-app.sb20-theme .sb20-center strong small{font-size:12px;color:#8a9a8b}
.sb-app.sb20-theme .sb20-center-sub{font-size:9px!important;color:#738a77!important}
.sb-app.sb20-theme .sb20-map-caption{position:absolute;z-index:4;left:12px;top:12px;display:flex;gap:8px;align-items:center;background:#fffef8de;border:1px solid #e3e8d5;border-radius:10px;padding:5px 9px;color:#476957;font-size:10px}
.sb-app.sb20-theme .sb20-map-live{display:flex;gap:4px;align-items:center;font-weight:800;color:#177252}
.sb-app.sb20-theme .sb20-map-live i{width:6px;height:6px;background:#26b87c;border-radius:50%;animation:sb20-pulse 1.5s infinite}
.sb-app.sb20-theme .sb20-map-legend{position:absolute;z-index:4;bottom:10px;right:10px;background:#fffef7e8;color:#5d7968;font-size:10px;border-radius:8px;padding:5px 8px}
.sb-app.sb20-theme .sb20-education{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font-size:11px;color:#42684d}
.sb-app.sb20-theme .sb20-education span{background:#eff6ef;border-radius:9px;padding:8px}
.sb-app.sb20-theme .sb20-stage>.sb9-fold{margin-top:8px!important}
.sb-app.sb20-theme .sb20-mobile-tabs,.sb-app.sb20-theme .sb20-mobile-next{display:none!important}
/* Existing council, regional, and achievement screens refreshed without changing their controls. */
.sb-app.sb20-theme .sb2-focus:not(.sb20-stage){max-width:1390px!important;padding:0!important;background:transparent!important;border:0!important;text-align:right!important;box-shadow:none!important;margin:0 auto!important}
.sb-app.sb20-theme .sb7-hero{padding:13px 16px!important;margin:0 0 9px!important;background:linear-gradient(130deg,#fff,#f3f8f1)!important;border:1px solid #dfe8dc!important;min-height:0!important;border-radius:17px!important;gap:9px!important}
.sb-app.sb20-theme .sb7-hero h1{font-size:clamp(22px,2.7vw,32px)!important;line-height:1.25!important;color:#752c25!important;margin:2px 0 5px!important}
.sb-app.sb20-theme .sb7-hero p{font-size:11px!important;line-height:1.55!important;color:#6b8271!important}
.sb-app.sb20-theme .sb7-sidepanel{padding:10px 12px!important;font-size:11px!important;border-radius:12px!important}
.sb-app.sb20-theme .sb9-mission-shell{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr)!important;gap:10px!important;align-items:start!important}
.sb-app.sb20-theme .sb9-mission-shell.sb9-govern-shell{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)!important}
.sb-app.sb20-theme .sb9-maincard,.sb-app.sb20-theme .sb9-task-card{min-width:0;padding:11px!important;border:1px solid #e0e9e0!important;border-radius:15px!important;box-shadow:0 8px 20px #163b2609!important}
.sb-app.sb20-theme .sb9-maincard .sb2-maphead h2,.sb-app.sb20-theme .sb9-sidehead h2{font-size:19px!important;color:#254c3c!important}
.sb-app.sb20-theme .sb9-task-card{gap:8px!important}
.sb-app.sb20-theme .sb9-task-card .sb8-smartbar{padding:8px!important;font-size:11px!important}
.sb-app.sb20-theme .sb3-governance .sb3-people-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;max-height:225px!important;overflow:auto!important}
.sb-app.sb20-theme .sb3-governance .sb3-candidate{min-width:0!important;min-height:60px!important;border:1px solid #e1e9df!important;border-radius:11px!important;padding:6px 8px!important;background:#fff!important}
.sb-app.sb20-theme .sb3-governance .sb3-candidate.picked{background:#e9f6ed!important;border-color:#8ec8a1!important}
.sb-app.sb20-theme .sb3-governance .sb3-candidate strong{font-size:12px!important;color:#315344!important}
.sb-app.sb20-theme .sb3-governance .sb3-candidate>small{font-size:9px!important}
.sb-app.sb20-theme .sb6-council-world{margin:0 auto!important;max-width:610px!important}
.sb-app.sb20-theme .sb6-council-svg{max-height:305px!important;width:100%;display:block}
.sb-app.sb20-theme .sb9-rakiza-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;max-height:none!important;overflow:visible!important}
.sb-app.sb20-theme .sb9-rakiza-tile{min-width:0!important;min-height:68px!important;padding:6px!important;border-radius:11px!important}
.sb-app.sb20-theme .sb9-rakiza-tile strong{font-size:12px!important}
.sb-app.sb20-theme .sb9-rakiza-tile small{font-size:9px!important}
.sb-app.sb20-theme .sb9-rakiza-tile span{width:23px!important;height:23px!important}
.sb-app.sb20-theme .sb9-primarybar button{min-height:38px!important;padding:7px 8px!important;font-size:11px!important}
.sb-app.sb20-theme .sb16-world{padding:9px!important}.sb-app.sb20-theme .sb16-federation-svg{max-height:440px!important;display:block;margin:auto}
.sb-app.sb20-theme .sb2-units{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important}
.sb-app.sb20-theme .sb2-unit{padding:8px 3px!important;min-height:60px!important}
.sb-app.sb20-theme .sb2-unit>div{font-size:22px!important}
.sb-app.sb20-theme .sb16-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.sb-app.sb20-theme .sb16-options button{min-height:60px!important;padding:7px!important}
.sb-app.sb20-theme .sb7-summary{gap:7px!important}
.sb-app.sb20-theme .sb7-summary-card{min-height:70px!important;padding:9px!important}
.sb-app.sb20-theme .sb7-summary-card strong{font-size:18px!important}
@keyframes sb20-pulse{0%,100%{opacity:.65}50%{opacity:1}}
@keyframes sb20-citizen{from{transform:translateY(0)}to{transform:translateY(-4px)}}
@media(max-width:1120px){
 .sb-app.sb20-theme .sb20-stage-grid{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}
 .sb-app.sb20-theme .sb20-center strong{font-size:18px!important}
}
@media(max-width:800px){
 .sb-app.sb20-theme .sb20-welcome-content{grid-template-columns:1fr}
 .sb-app.sb20-theme .sb20-hero-art{max-height:190px}
 .sb-app.sb20-theme .sb20-welcome-form{max-width:100%}
 .sb-app.sb20-theme .sb20-stage-grid{grid-template-columns:1fr}
 .sb-app.sb20-theme .sb9-mission-shell,.sb-app.sb20-theme .sb9-mission-shell.sb9-govern-shell{grid-template-columns:1fr!important}
 .sb-app.sb20-theme .sb9-mission-side{order:-1}
}
@media(max-width:700px){
 .sb-app.sb20-theme{width:100%!important;max-width:100%!important;margin:0!important;border-radius:0!important}
 .sb-app.sb20-theme .sb2-header{padding:9px 10px!important;min-height:57px!important}
 .sb-app.sb20-theme .sb2-header strong{font-size:18px!important}
 .sb-app.sb20-theme .sb2-header span{font-size:9px!important}
 .sb-app.sb20-theme .sb8-reset{min-height:34px!important;padding:7px 9px!important;font-size:10px!important}
 .sb-app.sb20-theme .sb2-stepper{min-height:32px!important;padding:7px 9px!important;gap:7px!important;flex-wrap:nowrap!important}
 .sb-app.sb20-theme .sb2-current{font-size:10px!important}
 .sb-app.sb20-theme .sb2-step-track span{height:4px!important}
 .sb-app.sb20-theme .sb2-main{padding:7px 5px!important}
 .sb-app.sb20-theme .sb2-footer{display:none!important}
 .sb-app.sb20-theme .sb20-journey{gap:4px}
 .sb-app.sb20-theme .sb20-journey-item{flex-direction:column;gap:3px;text-align:center;min-height:58px;padding:6px 3px;border-radius:10px}
 .sb-app.sb20-theme .sb20-journey-icon{height:21px;width:21px;font-size:13px;border-radius:7px}
 .sb-app.sb20-theme .sb20-journey-item strong{font-size:11px}
 .sb-app.sb20-theme .sb20-journey-item small{font-size:8px;line-height:1.25}
 .sb-app.sb20-theme .sb20-welcome-content{gap:7px}
 .sb-app.sb20-theme .sb20-welcome-intro{padding:12px 12px 8px;border-radius:14px;gap:4px;text-align:center}
 .sb-app.sb20-theme .sb20-welcome-intro h1{font-size:clamp(22px,6vw,30px)!important;line-height:1.25!important;margin:3px 0!important}
 .sb-app.sb20-theme .sb20-welcome-intro p{font-size:11px;line-height:1.6}
 .sb-app.sb20-theme .sb20-hero-art{max-height:115px;opacity:.9;margin-top:0}
 .sb-app.sb20-theme .sb20-preview-svg{max-height:130px}
 .sb-app.sb20-theme .sb20-welcome-form{padding:10px 12px;gap:5px;border-radius:14px}
 .sb-app.sb20-theme .sb20-form-top{margin:0 0 3px}
 .sb-app.sb20-theme .sb20-form-top strong{font-size:17px}
 .sb-app.sb20-theme .sb20-form-top small{font-size:10px}
 .sb-app.sb20-theme .sb20-form-mark{width:32px;height:32px;font-size:13px}
 .sb-app.sb20-theme .sb20-welcome-form input,.sb-app.sb20-theme .sb20-welcome-form select{min-height:40px;font-size:14px;padding:6px 9px}
 .sb-app.sb20-theme .sb20-start{min-height:41px!important;font-size:13px!important}
 .sb-app.sb20-theme .sb20-disclaimer{font-size:9px}
 .sb-app.sb20-theme .sb20-stage-header{margin-bottom:6px;padding:8px 10px;border-radius:12px}
 .sb-app.sb20-theme .sb20-stage-header h1{font-size:18px!important;margin:0!important;white-space:normal!important}
 .sb-app.sb20-theme .sb20-kicker{font-size:9px}
 .sb-app.sb20-theme .sb20-counter{padding:6px 7px;border-radius:9px;gap:3px;display:flex;flex-direction:column;min-width:68px}
 .sb-app.sb20-theme .sb20-counter strong{font-size:13px}
 .sb-app.sb20-theme .sb20-counter small{font-size:8px}
 .sb-app.sb20-theme .sb20-mobile-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:5px;margin:0 0 6px}
 .sb-app.sb20-theme .sb20-mobile-tabs button{border:1px solid #cfe1d2;background:white;border-radius:10px;min-height:34px;padding:5px;color:#215943;font-size:11px;font-weight:800}
 .sb-app.sb20-theme .sb20-mobile-tabs button[aria-pressed=true]{background:#197254;color:white;border-color:#197254}
 .sb-app.sb20-theme[data-sb-view=people] .sb20-stage-scene{display:none!important}
 .sb-app.sb20-theme[data-sb-view=scene] .sb20-stage-control{display:none!important}
 .sb-app.sb20-theme .sb20-control,.sb-app.sb20-theme .sb20-visual{border-radius:13px;padding:8px;height:auto;gap:6px}
 .sb-app.sb20-theme .sb20-control-head h2{font-size:16px}
 .sb-app.sb20-theme .sb20-count{font-size:15px;padding:5px 8px}
 .sb-app.sb20-theme .sb20-family-ribbon{gap:3px!important}
 .sb-app.sb20-theme .sb20-family-ribbon button{min-height:36px!important;padding:4px 1px!important;border-radius:8px!important;font-size:9px!important}
 .sb-app.sb20-theme .sb20-family-ribbon button small{font-size:7px!important}
 .sb-app.sb20-theme .sb20-family-head{padding:6px 0 0!important}
 .sb-app.sb20-theme .sb20-family-head strong{font-size:14px}
 .sb-app.sb20-theme .sb20-family-head small{font-size:9px}
 .sb-app.sb20-theme .sb20-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:160px!important;gap:4px!important}
 .sb-app.sb20-theme .sb20-people-grid .sb2-person{min-height:49px!important;padding:5px 5px!important;gap:3px!important;border-radius:9px!important}
 .sb-app.sb20-theme .sb20-people-grid .sb2-person-info b{font-size:11px!important}
 .sb-app.sb20-theme .sb20-people-grid .sb2-person-info small{font-size:9px!important}
 .sb-app.sb20-theme .sb20-people-grid .sb2-person-action,.sb-app.sb20-theme .sb20-people-grid .sb2-minor{font-size:9px!important;min-height:26px!important;padding:4px 5px!important}
 .sb-app.sb20-theme .sb20-control-actions button{font-size:10px!important;min-height:34px!important}
 .sb-app.sb20-theme .sb20-control-footer{min-height:29px;padding-top:5px}
 .sb-app.sb20-theme .sb20-mobile-next{display:flex!important;justify-content:center;align-items:center;font-size:9px;color:#809486;padding:5px 0}
 .sb-app.sb20-theme .sb20-mobile-next .sb20-primary{width:100%;min-height:36px!important}
 .sb-app.sb20-theme .sb20-visual-top h2{font-size:16px}
 .sb-app.sb20-theme .sb20-world{aspect-ratio:940 / 565}
 .sb-app.sb20-theme .sb20-center{min-height:60px!important;width:25%!important;padding:5px!important;border-radius:9px!important}
 .sb-app.sb20-theme .sb20-center-kicker{font-size:10px}
 .sb-app.sb20-theme .sb20-center strong{font-size:16px!important}
 .sb-app.sb20-theme .sb20-center-sub{font-size:8px!important}
 .sb-app.sb20-theme .sb20-map-caption{top:6px;left:6px;padding:4px 5px;font-size:8px}
 .sb-app.sb20-theme .sb20-map-legend{bottom:5px;right:5px;font-size:8px}
 .sb-app.sb20-theme .sb20-stage>.sb9-fold{margin-top:5px!important}
 .sb-app.sb20-theme .sb20-education{grid-template-columns:1fr;font-size:10px}
 .sb-app.sb20-theme .sb7-hero{padding:9px 11px!important;margin-bottom:6px!important}
 .sb-app.sb20-theme .sb7-hero h1{font-size:21px!important;margin:0 0 2px!important}
 .sb-app.sb20-theme .sb7-hero p{font-size:10px!important;margin:0!important}
 .sb-app.sb20-theme .sb7-sidepanel{display:none!important}
 .sb-app.sb20-theme .sb9-maincard,.sb-app.sb20-theme .sb9-task-card{padding:8px!important;border-radius:12px!important}
 .sb-app.sb20-theme .sb3-governance .sb3-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:195px!important;overflow:auto!important}
 .sb-app.sb20-theme .sb3-governance .sb3-candidate{min-height:53px!important}
 .sb-app.sb20-theme .sb6-council-svg{max-height:230px!important}
 .sb-app.sb20-theme .sb9-rakiza-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important}
 .sb-app.sb20-theme .sb9-rakiza-tile{min-height:57px!important;padding:4px!important}
 .sb-app.sb20-theme .sb9-rakiza-tile strong{font-size:10px!important}
 .sb-app.sb20-theme .sb9-rakiza-tile small{font-size:8px!important}
 .sb-app.sb20-theme .sb16-federation-svg{max-height:320px!important}
 .sb-app.sb20-theme .sb16-options{grid-template-columns:1fr!important}
 .sb-app.sb20-theme .sb7-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .sb-app.sb20-theme .sb2-units{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:360px){
 .sb-app.sb20-theme .sb20-journey-item strong{font-size:10px}
 .sb-app.sb20-theme .sb20-family-ribbon button{font-size:8px!important}
 .sb-app.sb20-theme .sb20-people-grid .sb2-person-info b{font-size:10px!important}
 .sb-app.sb20-theme .sb20-people-grid .sb2-person-action{font-size:8px!important;padding:3px 4px!important}
 .sb-app.sb20-theme .sb20-stage-header h1{font-size:17px!important}
}
@media(prefers-reduced-motion:reduce){.sb-app.sb20-theme *,.sb-app.sb20-theme *::before,.sb-app.sb20-theme *::after{animation:none!important;transition:none!important}}
/* v2 final compact refinements */
@media(min-width:801px){
 .sb-app.sb20-theme .sb20-welcome-intro{padding-block:18px}
 .sb-app.sb20-theme .sb20-hero-art{max-height:218px}
 .sb-app.sb20-theme .sb20-preview-svg{max-height:220px}
 .sb-app.sb20-theme .sb20-welcome-form{padding-block:16px}
}
@media(max-width:700px){
 .sb-app.sb20-theme[data-sb-view="people"] .sb20-alfiya-work .sb9-mission-main{display:none!important}
 .sb-app.sb20-theme[data-sb-view="scene"] .sb20-alfiya-work .sb9-mission-side{display:none!important}
 .sb-app.sb20-theme .sb20-alfiya-work .sb9-mission-shell{display:block!important}
 .sb-app.sb20-theme .sb20-alfiya-work .sb16-world{max-width:100%;padding:8px!important}
 .sb-app.sb20-theme .sb20-alfiya-work .sb16-options{display:grid;grid-template-columns:1fr!important;gap:5px}
 .sb-app.sb20-theme .sb20-alfiya-work .sb16-options button{min-height:58px!important;text-align:right}
 .sb-app.sb20-theme .sb8-done .sb9-mission-shell{gap:8px!important}
 .sb-app.sb20-theme .sb8-done .sb8-final-grid{display:grid;grid-template-columns:1fr!important;gap:5px}
 .sb-app.sb20-theme .sb8-done .sb8-final-grid .sb7-card{min-height:48px!important;padding:9px 12px!important;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px}
 .sb-app.sb20-theme .sb8-done .sb8-final-grid .sb7-card strong{font-size:13px}
 .sb-app.sb20-theme .sb8-done .sb8-final-grid .sb7-card p{font-size:10px;margin:0}
 .sb-app.sb20-theme .sb8-done .sb8-final-note{font-size:11px;line-height:1.6;padding:9px!important}
}
