:root{color:#ecf1ed;font-synthesis:none;text-rendering:optimizelegibility;background:#101316;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background-color:#101316;background-image:linear-gradient(90deg,#ffffff09 1px,#0000 1px),linear-gradient(0deg,#ffffff06 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:44px 44px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-width:320px;min-height:100vh;margin:0;overflow:hidden}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#ecf1ed33;border-radius:999px}::-webkit-scrollbar-track{background:#0000002e}button,input{font:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{height:100vh;position:relative;overflow:hidden}.world-canvas{box-shadow:none;z-index:0;border:0;border-radius:0;width:100vw;max-width:none;height:100vh;max-height:none;display:block;position:fixed;inset:0}.board-panel,.control-panel{z-index:2;position:relative}.board-panel{pointer-events:none;flex-direction:column;gap:12px;width:auto;max-width:none;display:flex;position:fixed;top:18px;left:18px;right:18px}.board-panel button,.board-panel a,.board-panel .text-button,.board-panel .icon-button,.board-panel .language-select,.board-panel .language-select select{pointer-events:auto}.board-panel:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#101316c7,#10131642 74%,#0000);position:absolute;inset:-18px -18px -42px}.control-panel{scrollbar-color:#ecf1ed38 transparent;flex-direction:column;gap:10px;width:390px;max-height:calc(100vh - 190px);display:flex;position:fixed;top:172px;bottom:18px;right:18px;overflow:auto}.legend{pointer-events:none;z-index:2;max-width:min(860px,100vw - 450px);position:fixed;bottom:14px;left:18px}.legend:before{content:"";z-index:-1;background:#101316a3;border:1px solid #ecf1ed14;border-radius:8px;position:absolute;inset:-8px -10px}.topbar{justify-content:space-between;align-items:center;min-height:70px;display:flex}.eyebrow{color:#9ba7a0;letter-spacing:0;margin:0 0 4px;font-size:12px;font-weight:800}h1,h2,h3{margin:0}h1{letter-spacing:0;font-size:clamp(34px,5vw,64px);line-height:.95}h2{font-size:16px}h3{font-size:15px}.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.icon-button,.text-button,.language-select{color:#ecf1ed;background:#22282b;border:1px solid #ffffff14;border-radius:8px;justify-content:center;align-items:center;height:42px;display:inline-flex}.icon-button{width:42px}.text-button{gap:7px;min-height:42px;padding:0 12px}.language-select{gap:7px;min-width:176px;padding:0 8px 0 10px}.language-select select{appearance:auto;color:#ecf1ed;cursor:pointer;font:inherit;background:#1b2023;border:1px solid #ecf1ed1f;border-radius:6px;outline:none;width:132px;height:30px;padding:0 8px;font-weight:700}.language-select option{color:#ecf1ed;background:#181d1f}.text-button:hover,.icon-button:hover,.language-select:hover{border-color:#7bd3bd59}.icon-button.primary{color:#fff;background:#178f78}.truth-strip{grid-template-columns:repeat(3,minmax(0,300px));justify-content:start;gap:8px;width:fit-content;max-width:100%;display:grid}.truth-strip>div{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#ecf1ed;background:#181d1fd1;border:1px solid #ecf1ed1f;border-radius:8px;align-items:center;gap:8px;width:300px;min-width:0;min-height:42px;padding:0 12px;display:flex}.truth-strip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.legend{color:#a9b4ad;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.c,.ring{border-radius:3px;width:12px;height:12px;display:inline-block}.red{background:#b93848}.pink{background:#df8376}.neutral{background:#d9d6c8}.mint{background:#6ab8a5}.green{background:#178f78}.ring{border:2px solid #f1c84c}.panel-block{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#181d1fd1;border:1px solid #ecf1ed1f;border-radius:8px;padding:12px}.block-title{align-items:center;gap:8px;margin-bottom:12px;display:flex}.block-title svg{color:#7bd3bd}.meter{margin-top:11px}.meter-label{color:#b9c4bd;justify-content:space-between;margin-bottom:5px;font-size:12px;display:flex}.meter-label strong{color:#ecf1ed}.meter-track{background:#00000047;border-radius:999px;height:8px;overflow:hidden}.meter-fill{background:#36b795;height:100%}.meter-fill.yellow{background:#d5aa42}.meter-fill.red{background:#d95962}.split-stat{color:#b9c4bd;justify-content:space-between;margin-top:12px;font-size:12px;display:flex}.event-line,.hint{color:#c8d2cc;margin:12px 0 0;font-size:13px;line-height:1.5}.guide-card ul{color:#c8d2cc;margin:0;padding:0;font-size:13px;line-height:1.45;list-style:none}.guide-card li{border-top:1px solid #ecf1ed14;padding:8px 0}.guide-card li:first-child{border-top:0;padding-top:0}.scenario-grid,.toggle-grid,.intervention-grid{gap:8px;display:grid}.scenario-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scenario-grid button,.toggle,.intervention-grid button{color:#ecf1ed;background:#1b2023;border:1px solid #ecf1ed14;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:8px 10px;display:flex}.scenario-grid button.selected,.toggle.active{background:#203d38;border-color:#7bd3bd73}.toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toggle{justify-content:flex-start;gap:8px}.intervention-grid{grid-template-columns:1fr}.intervention-grid button{text-align:left;grid-template-columns:22px 1fr 24px;justify-items:start;display:grid}.intervention-grid small,.budget{color:#121513;background:#d5aa42;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}.budget{margin-left:auto}.node-grid{color:#aeb9b2;grid-template-columns:1fr 1fr;gap:8px;font-size:13px;display:grid}.node-grid strong{color:#ecf1ed;text-align:right}.compact{grid-template-columns:56px 1fr;align-items:center;gap:10px;display:grid}input[type=range]{accent-color:#36b795;width:100%}.modal-backdrop{z-index:20;background:#07090ab8;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.theory-modal{scrollbar-color:#ecf1ed38 #0000002e;background:#181d1f;border:1px solid #ecf1ed29;border-radius:8px;width:min(1180px,100vw - 28px);max-width:1180px;height:auto;max-height:calc(100vh - 28px);padding:14px;overflow:visible;box-shadow:0 30px 90px #00000080}.modal-header{border-bottom:1px solid #ecf1ed1a;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:10px;display:flex}.modal-header h2{font-size:clamp(22px,3vw,32px);line-height:1}.modal-header p:not(.eyebrow){color:#bfcbc4;max-width:820px;margin:6px 0 0;font-size:13px;line-height:1.35}.modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:10px;display:grid}.modal-section{background:#ecf1ed0f;border:1px solid #ecf1ed14;border-radius:8px;padding:10px}.modal-section.wide{grid-column:1/-1}.pillar-list{gap:7px;display:grid}.domain-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.pillar-list strong,.domain-grid strong{color:#7bd3bd}.loop-list li::marker{color:#7bd3bd}.pillar-list p,.domain-grid p,.modal-copy{color:#c8d2cc;margin:3px 0 0;font-size:11px;line-height:1.35}.loop-list{color:#ecf1ed;gap:4px;margin:0;padding-left:24px;font-size:13px;display:grid}.reference-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.reference-list a{color:#dbe5df;background:#1b2023;border:1px solid #ecf1ed14;border-radius:8px;min-height:34px;padding:7px 8px;font-size:10.5px;line-height:1.25;text-decoration:none}.reference-list a:hover{color:#fff;border-color:#7bd3bd73}@media (width<=980px){.board-panel{max-width:calc(100vw - 24px);top:12px;left:12px;right:12px}.control-panel{width:auto;max-height:38vh;inset:auto 12px 12px}.legend{display:none}}@media (width<=560px){.truth-strip,.toggle-grid,.scenario-grid,.modal-grid,.domain-grid,.reference-list{grid-template-columns:1fr}.truth-strip{width:min(100%,360px)}.truth-strip>div{width:100%}.topbar{flex-direction:column;align-items:flex-start}}
