:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#303b34;background:#f6f7f2;font-synthesis:none;--green:#3e634e;--ink:#303b34;--muted:#92998e;--border:#e6e9df;--paper:#fffefb;--blue:#477ca6;--coral:#c97156;--purple:#9179a8;--gold:#b3984a}
*{box-sizing:border-box}body{margin:0}button,a,input,select{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed}button,a,input,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #5b8c6a}button{transition:background .16s,transform .16s,border-color .16s,box-shadow .16s}a{color:inherit;text-decoration:none}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}h1,h2,h3,h4,p{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sidebar{width:86px;position:fixed;inset:0 auto 0 0;background:#edf0e8;border-right:1px solid #e1e6da;z-index:20;display:flex;align-items:center;flex-direction:column;padding:24px 12px}.brand-mark{display:flex;align-items:center;justify-content:center;width:43px;height:43px;background:#365641;color:#ecf0dc;border-radius:13px;box-shadow:0 4px 10px #36564112;transform:rotate(-5deg)}.brand-mark .icon{width:26px;height:26px;transform:rotate(5deg)}.sidebar-line{height:1px;background:#dce2d5;width:30px;margin:27px 0 23px}.sidebar nav{display:flex;flex-direction:column;gap:15px;width:100%}.nav-button{width:60px;height:65px;border:0;background:transparent;color:#929b8c;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;border-radius:11px}.nav-button .icon{width:23px;height:23px}.nav-button span{font-size:10px;letter-spacing:1px}.nav-button:hover{background:#e3e8dc;color:#3e634e}.nav-button.active{background:#dce6d5;color:#41604a}.sidebar-bottom{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:25px}.user-avatar,.avatar-small{display:grid;place-items:center;background:#e4dbc6;color:#777453;border:3px solid #f8f9f4;border-radius:50%;font-weight:600}.user-avatar{width:38px;height:38px;font-size:14px}.avatar-small{width:32px;height:32px;font-size:11px}.app-shell{margin-left:86px}.topbar{height:84px;border-bottom:1px solid #e7e9e0;display:flex;justify-content:space-between;align-items:center;padding:0 40px;background:#fafbf6}.wordmark{font-size:19px;font-weight:750;letter-spacing:2px}.wordmark>span{font-size:10px;letter-spacing:3px;font-weight:500;color:#949d8e;margin-left:14px}.topbar-right{display:flex;align-items:center;gap:19px}.prototype-label{font-size:10px;color:#78856e;background:#eaf0e1;border:1px solid #dfe6d5;padding:5px 9px;border-radius:5px;letter-spacing:1px}.text-button{display:flex;align-items:center;gap:6px;font-size:11px;border:0;background:transparent;padding:6px 0;color:#7c8879}.text-button:hover{color:var(--green)}.text-button .icon{width:15px;height:15px}.topbar-divider{height:18px;width:1px;background:#e0e4d9}.player-label{font-size:11px;color:#87907f}.topbar-right .avatar-small{margin-left:-7px}main{padding:34px 40px 0;max-width:1600px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;gap:20px}.eyebrow{font-size:9px;letter-spacing:2.7px;color:#869477;display:flex;align-items:center;gap:7px;font-weight:600;margin-bottom:11px}.eyebrow>span{width:5px;height:5px;background:#9eb481;border-radius:50%}.page-heading h1{font-size:28px;font-weight:650;letter-spacing:1px;line-height:1.5}.page-heading p{font-size:12px;color:#969c90;margin-top:7px;letter-spacing:.4px}.room-code{background:#fcfdf8;border:1px solid #dfe5d9;border-radius:7px;padding:12px 14px;display:flex;align-items:center;gap:12px;font-size:10px;color:#8e9786;flex-shrink:0}.room-code>.icon{width:15px;height:15px}.room-code b{font-size:11px;letter-spacing:1px;color:#63735c;margin-left:6px;font-weight:500}.room-code:hover{background:#eaf0e2}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.stat-card{display:flex;align-items:center;gap:15px;background:var(--paper);border:1px solid var(--border);border-radius:11px;padding:19px 20px;position:relative;min-height:96px}.stat-symbol{height:43px;width:43px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.stat-symbol .icon{width:22px;height:22px}.stat-symbol.green{background:#eff3e8;color:#8ba177}.stat-symbol.blue{background:#edf2f6;color:#7f9eaf}.stat-symbol.ochre{background:#f7f2e5;color:#b59a5b}.stat-symbol.muted{background:#f0f1eb;color:#98a28e}.stat-label{font-size:10px;color:#969c90;letter-spacing:.5px}.stat-value{font-size:28px;font-weight:600;line-height:1.3;margin-top:3px;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.stat-value small{font-size:10px;letter-spacing:0;font-weight:400;color:#9da393;margin-left:7px}.stat-foot{font-size:9px;color:#a1a996;margin-left:auto;align-self:flex-end;margin-bottom:6px;white-space:nowrap}.mini-progress{width:5px;height:39px;margin-left:auto;background:#edf1e6;display:flex;align-items:flex-end;border-radius:5px;overflow:hidden}.mini-progress span{width:100%;background:#9aae88}.stat-value.countdown{font-size:25px;letter-spacing:1px}.live-dot{width:6px;height:6px;background:#96ac70;border-radius:50%;margin-left:auto;align-self:flex-start;margin-top:8px}.live-dot.ended{background:#a2a89e}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:24px;align-items:start}.panel{border:1px solid var(--border);border-radius:12px;background:var(--paper);overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:24px 26px 17px;gap:12px}.tiny-label{font-size:8px;color:#a0aa96;letter-spacing:2px;font-weight:500;margin-bottom:7px}.panel h2{font-size:17px;letter-spacing:.5px;font-weight:600}.map-title h2{display:flex;align-items:center;gap:11px}.tag{font-size:9px;font-weight:500;background:#f0f2e8;border:1px solid #e5e8db;border-radius:4px;color:#929e81;letter-spacing:1px;padding:3px 6px;vertical-align:middle}.map-toolbar{display:flex;align-items:center;gap:13px}.connection{font-size:9px;color:#8b9c7a;display:flex;align-items:center;gap:6px}.connection i{width:5px;height:5px;background:#92a477;border-radius:50%;box-shadow:0 0 0 3px #f0f4e9}.connection.offline{color:#bb9457}.connection.offline i{background:#bb9457;box-shadow:none}.icon-button{background:transparent;border:1px solid #e4e8dc;border-radius:6px;width:29px;height:29px;padding:5px;display:grid;place-items:center;color:#939d86}.icon-button .icon{width:16px;height:16px}.icon-button:hover{background:#edf1e6}.map-caption{padding:0 26px 14px;display:flex;justify-content:space-between;align-items:center;color:#a3aa99;font-size:10px}.map-caption>span:last-child{font-size:7px;letter-spacing:1.3px;display:flex;align-items:center;gap:7px}.map-caption .icon{width:12px;height:12px}.map-caption b{font-size:10px;margin-left:7px;color:#80916e}.map-frame{margin:0 20px 0 13px;padding:0 9px 0 0}.col-labels{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));margin-left:28px;height:23px;color:#939f86;font-family:monospace;font-size:10px;text-align:center;align-items:center}.map-body{display:flex;gap:0}.row-labels{display:grid;grid-template-rows:repeat(10,minmax(0,1fr));width:28px;flex-shrink:0;font-family:monospace;font-size:9px;text-align:center;align-items:center;color:#9aa58f}.map-grid{width:100%;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;padding:5px;background:#e9ede1;border:1px solid #e1e7d8;border-radius:7px}.map-tile{display:grid;place-items:center;aspect-ratio:1.12;min-width:0;position:relative;border-radius:4px;border:1px solid #dce3ce;background:#edf0df;isolation:isolate;box-shadow:0 2px 0 #6e795708;overflow:visible;padding:2px}.map-tile:after{content:'';position:absolute;inset:3px;border:1px solid #fff5;border-radius:2px;z-index:-1}.map-tile.terrain-forest{background:#e1e8d1;border-color:#d4dfc3;color:#839776}.map-tile.terrain-mountain{background:#e8e8da;border-color:#dcded0;color:#a4a790}.map-tile.terrain-meadow{background:#ecf0dd;border-color:#dfe5ce;color:#bcc6a2}.map-tile.terrain-ruins{background:#f1e7c9;border-color:#e7d8ac;color:#bdab73}.terrain-art{width:69%;height:69%;max-width:42px;overflow:visible}.map-tile.owned{border-color:color-mix(in srgb,currentColor 20%,transparent)}.map-tile.owner-blue{background:#d9e7ec;color:var(--blue)}.map-tile.owner-coral{background:#f0dcd0;color:var(--coral)}.map-tile.owner-purple{background:#e7e1ed;color:var(--purple)}.map-tile.owner-gold{background:#ede5c8;color:var(--gold)}.tile-flag{width:65%;height:85%;max-width:42px;overflow:visible;filter:drop-shadow(0 2px 0 #00000008)}.map-tile.is-selected{outline:2px solid #657e4d;outline-offset:1px;z-index:2;box-shadow:0 0 0 4px #82926718}.map-tile:hover{transform:translateY(-2px);filter:brightness(1.025);box-shadow:0 4px 9px #3f4e2a1c;z-index:3}.tile-coordinate{position:absolute;left:4px;top:2px;font-size:7px;color:currentColor;opacity:0;line-height:1.4}.map-tile:hover .tile-coordinate,.map-tile.is-selected .tile-coordinate{opacity:.85}.map-tile.is-selected .tile-coordinate{font-size:8px;font-weight:700}.selection-corner{position:absolute;bottom:0;right:0;border-bottom:7px solid #6b8053;border-left:7px solid transparent}.rare-dot{position:absolute;width:3px;height:3px;background:#bca96d;top:5px;right:5px;border-radius:50%}.map-tile.is-dim{opacity:.27}.map-coordinates{display:flex;justify-content:space-between;align-items:center;margin-left:28px;font-size:8px;color:#a3ac96;padding:13px 0 14px;letter-spacing:.5px}.map-coordinates>span:last-child{font-size:9px;display:flex;gap:7px;align-items:center}.map-coordinates .icon{width:12px;height:12px}.fictional{font-size:7px;opacity:.7}.map-legend{border-top:1px solid #eff0e8;padding:17px 25px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.legend-label{font-size:9px;color:#959f8a;margin-right:auto}.legend-item{font-size:9px;border:0;background:transparent;display:flex;align-items:center;gap:5px;padding:3px 0;color:#7f8a72}.legend-item i{width:7px;height:7px;border-radius:2px;opacity:.8}.legend-item.selected{font-weight:700;color:#354b2b}.legend-item:hover{color:#354b2b}.neutral-swatch{background:#e5e8d9;border:1px solid #c7cfb9}.clear-filter{border:0;color:#61794e;background:#edf1e5;padding:3px 5px;border-radius:3px;font-size:9px}.right-column{display:flex;flex-direction:column;gap:17px}.team-card{position:relative;background:#345746;border:1px solid #345746;border-radius:12px;color:#e9efdc;overflow:hidden;padding:21px 22px 18px}.team-card:after{content:'';position:absolute;width:205px;height:205px;border:1px solid #c7d9b80c;border-radius:42%;right:-110px;top:8px;box-shadow:0 0 0 15px #c7d9b805,0 0 0 30px #c7d9b808,0 0 0 45px #c7d9b807,0 0 0 60px #c7d9b805;transform:rotate(20deg);pointer-events:none}.team-card-top{display:flex;justify-content:space-between;font-size:10px;color:#b9c8af;align-items:center;position:relative;z-index:1}.team-select-wrap{display:flex;align-items:center;gap:3px;cursor:pointer;font-size:9px;color:#b1c2a6;padding:3px 0;position:relative}.team-select-wrap .icon{width:12px;height:12px}.team-select-wrap select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.team-select-wrap:focus-within{outline:2px solid #d3dfbe;outline-offset:3px}.team-identity{display:flex;align-items:center;gap:12px;margin-top:21px}.team-crest{width:45px;height:48px;background:#e5ebdf;clip-path:polygon(0 0,100% 0,100% 75%,50% 100%,0 75%);display:grid;place-items:center;padding-bottom:6px}.team-crest .icon{width:23px;height:23px;fill:currentColor;fill-opacity:.25}.owner-blue{color:var(--blue)}.owner-coral{color:var(--coral)}.owner-purple{color:var(--purple)}.owner-gold{color:var(--gold)}.team-identity h2{font-size:20px;letter-spacing:2px;font-weight:600;margin-bottom:6px}.team-identity>div>span{font-size:9px;color:#b3c5a8}.team-identity i{font-style:normal;margin:0 4px;opacity:.5}.team-motto{font-size:10px;color:#a6ba9f;margin-top:13px;letter-spacing:.3px}.team-stats{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:19px}.team-stats>div{display:flex;flex-direction:column;gap:5px}.team-stats>div+div{border-left:1px solid #54725a;padding-left:24px}.team-stats strong{font-size:27px;font-weight:550;letter-spacing:.5px;font-variant-numeric:tabular-nums}.team-stats strong small{font-size:9px;color:#a6b799;margin-left:7px;font-weight:400}.team-stats>div>span{font-size:9px;color:#a8ba9e}.team-progress{height:4px;background:#56735b;border-radius:4px;margin-top:20px;overflow:hidden}.team-progress>span{height:100%;display:block;background:#c8d6a3;border-radius:4px;transition:width .4s}.team-progress-label{display:flex;justify-content:space-between;font-size:8px;color:#a0b493;margin-top:8px;letter-spacing:.3px}.selection-top{display:flex;justify-content:space-between;align-items:center;padding:16px 19px 13px}.selection-top>span{font-size:10px;color:#8a9680;display:flex;align-items:center;gap:6px}.selection-top .icon{width:13px;height:13px}.selection-top>b{font-family:monospace;font-size:12px;color:#899778;background:#f1f4e9;padding:3px 7px;border-radius:4px;font-weight:500}.terrain-scene{position:relative;isolation:isolate;height:105px;margin:0 18px;background:#eff1e2;border:1px solid #e5e9d7;border-radius:6px;overflow:hidden;display:grid;place-items:center;color:#99a476}.terrain-scene.terrain-ruins{background:#f3efdd;border-color:#ece5cd;color:#ae995e}.terrain-scene.terrain-mountain{background:#edede3;color:#989e86}.terrain-scene.terrain-forest{color:#81996c}.terrain-scene>.terrain-art{position:relative;z-index:2;width:68px;height:68px;max-width:none;margin-top:6px}.scene-hill{position:absolute;width:240px;height:100px;border-radius:50%;background:#c9d1ad55;bottom:-66px;transform:rotate(-14deg);left:-40px;z-index:0}.scene-hill.front{left:80px;bottom:-68px;background:#c2cca455;transform:rotate(10deg)}.terrain-ruins .scene-hill{background:#d6c89755}.terrain-ruins .scene-hill.front{background:#d6c89744}.scene-sun{position:absolute;width:31px;height:31px;border:1px solid #cbc89766;background:#e8dfac77;border-radius:50%;left:55px;top:20px}.terrain-scene>span{position:absolute;bottom:9px;right:10px;color:#a4aa90;font-size:7px;letter-spacing:1.5px}.selection-content{padding:16px 19px 18px}.selection-title{display:flex;justify-content:space-between;align-items:center;gap:5px}.selection-title h3{font-size:17px;font-weight:600;letter-spacing:.5px}.ownership-badge{font-size:8px;background:#f1f2e8;color:#91987e;padding:4px 6px;border-radius:4px;white-space:nowrap}.selection-content>p{font-size:10px;color:#a0a58f;line-height:1.7;margin-top:7px}.mission-preview{display:flex;align-items:center;gap:10px;background:#f5f6ef;border:1px solid #edefe2;border-radius:6px;padding:10px;margin-top:15px}.mission-icon{color:#919e80}.mission-icon .icon{width:20px;height:20px}.mission-preview>div>span{font-size:8px;color:#a0aa93}.mission-preview h4{font-size:11px;font-weight:500;margin-top:4px;color:#68755d}.mission-meta{display:flex;align-items:center;justify-content:space-between;font-size:9px;margin:14px 0 15px;color:#9ba18e}.mission-meta>span{display:flex;align-items:center;gap:6px}.difficulty{font-size:7px;letter-spacing:2px;color:#b7a367}.difficulty i{font-style:normal;color:#e4e4d5}.mission-meta em{font-size:8px;font-style:normal}.mission-meta>strong{font-size:15px;color:#9d874e;font-weight:600}.mission-meta strong small{font-size:8px;font-weight:400}.primary-button{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--green);background:var(--green);color:#f2f5e9;border-radius:6px;padding:12px 14px;min-height:42px;font-size:11px;letter-spacing:.5px}.primary-button>.icon{width:15px;height:15px}.primary-button>.icon:last-child:not(:first-child){margin-left:auto}.primary-button:hover:not(:disabled){background:#2e4f3c;box-shadow:0 3px 8px #34574615;transform:translateY(-1px)}.primary-button:disabled{background:#e4e8dc;color:#949f89;border-color:#e4e8dc}.selection-hint{display:flex;align-items:center;justify-content:center;gap:4px;font-size:8px;color:#a3ab97;margin-top:12px}.selection-hint .icon{width:10px;height:10px}.field-note{position:relative;padding:7px 0 0 33px;color:#a6af99}.field-note>.icon{position:absolute;left:9px;top:9px;width:15px;height:15px;color:#b2bda1}.field-note p{font-size:9px;line-height:1.9;letter-spacing:.7px}.field-note>span{font-size:6px;letter-spacing:2px;display:block;margin-top:6px;color:#b4bca9}.bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.small-panel-heading{padding:20px 23px 16px;display:flex;justify-content:space-between;align-items:center;gap:10px}.small-panel-heading h2{font-size:13px;display:flex;align-items:center;gap:8px}.small-panel-heading h2 .icon{width:16px;height:16px;color:#899979}.small-panel-heading .text-button{font-size:9px}.small-panel-heading .text-button .icon{width:12px;height:12px}.ranking-header,.ranking-row{display:grid;grid-template-columns:minmax(0,1fr) 57px 60px;align-items:center;padding:0 23px}.ranking-header{font-size:8px;color:#a5ad97;background:#f8f9f3;height:29px;border-block:1px solid #f0f1e9}.ranking-header>span:not(:first-child),.ranking-row>span,.ranking-row>strong{text-align:right}.ranking-row{height:47px;border-bottom:1px solid #f0f2ea;font-size:10px}.ranking-row:last-child{border-bottom:0}.ranking-row.my-team{background:#f3f6ee}.ranking-row>div{display:flex;align-items:center;gap:10px}.rank-number{font-size:10px;color:#a8af9b;font-family:monospace;width:15px}.rank-number.rank-1{color:#af995c;font-weight:700}.rank-flag{display:grid;place-items:center;width:24px;height:24px;background:color-mix(in srgb,currentColor 10%,transparent);border-radius:5px}.rank-flag .icon{width:12px;height:12px}.ranking-row b{font-size:10px;font-weight:500;white-space:nowrap}.you-tag{font-size:7px;background:#e4ecdb;color:#8c9a7b;padding:2px 5px;border-radius:3px}.ranking-row>span{color:#7a886e;font-size:11px;font-variant-numeric:tabular-nums}.ranking-row small{font-size:8px;color:#a9b29c}.ranking-row>strong{color:#657657;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.live-label{font-size:7px;letter-spacing:1.2px;color:#95a383;display:flex;align-items:center;gap:5px}.live-label>i{width:4px;height:4px;background:#8c9f72;border-radius:50%}.activity-list{padding:0 23px 9px}.activity-row{display:flex;align-items:center;gap:10px;position:relative;padding:12px 0}.activity-row:not(:last-child){border-bottom:1px solid #f1f2ea}.activity-flag{width:28px;height:28px;background:color-mix(in srgb,currentColor 10%,transparent);display:grid;place-items:center;border-radius:50%;flex-shrink:0}.activity-flag .icon{width:12px;height:12px}.activity-row p{font-size:9px;color:#8b967f;line-height:1.8}.activity-row b{color:#617454;font-weight:500}.activity-row strong{font-size:10px;color:#798e68;margin:0 3px;font-weight:500}.activity-row>div>span{font-size:8px;color:#b0b7a4;display:block;margin-top:3px}.activity-row i{font-style:normal;margin:0 4px}.activity-score{margin-left:auto;font-size:10px;color:#a9b594}.subtle{font-size:9px;color:#929e85}footer{padding:24px 0;display:flex;justify-content:space-between;color:#afb6a3;font-size:9px;letter-spacing:.5px;gap:14px}footer>span:first-child{display:flex;align-items:center;gap:6px}footer .icon{width:13px;height:13px}footer i{font-style:normal;margin:0 7px}
.task-board{min-height:560px}.task-board .panel-heading{padding-bottom:20px}.search-box{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--border);border-radius:6px;background:#f8f9f3;color:#a0aa94}.search-box .icon{width:15px;height:15px}.search-box input{border:0;background:transparent;outline:none;font-size:11px;width:150px;color:var(--ink)}.search-box input::placeholder{color:#a2ab97}.task-tabs{display:flex;padding:0 26px 20px;gap:9px;flex-wrap:wrap}.task-tabs button{border:1px solid #e6eadd;background:#f8f9f3;color:#8d9a80;padding:7px 13px;border-radius:6px;font-size:10px}.task-tabs button.active{background:#e5eddb;color:#526f40;border-color:#d3dfc4}.quest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 26px 26px}.quest-card{display:flex;text-align:left;align-items:center;gap:13px;border:1px solid #e5e9dd;border-radius:8px;background:#fffefa;padding:14px}.quest-card:hover{border-color:#a6b697;transform:translateY(-2px);box-shadow:0 4px 12px #355b4210}.quest-art{position:relative;width:72px;height:79px;border-radius:6px;background:#edf0e1;color:#a1ae89;display:grid;place-items:center;flex-shrink:0}.quest-art.terrain-forest{background:#e7eddd;color:#8ba07a}.quest-art.terrain-mountain{background:#eaece1;color:#9da38e}.quest-art.terrain-ruins{background:#f3ecd4;color:#b1a06b}.quest-art .terrain-art{width:47px;height:47px}.quest-art>span{position:absolute;top:5px;left:7px;font-family:monospace;font-size:9px}.quest-type{color:#a2ac95;font-size:8px}.quest-card h3{font-size:12px;font-weight:500;margin-top:5px}.quest-card p{font-size:10px;color:#9e905f;display:flex;align-items:center;justify-content:space-between;margin-top:14px}.quest-card p .icon{width:13px;height:13px}.quest-card>div:last-child{flex:1}.empty-state{grid-column:1/-1;text-align:center;padding:70px 20px;color:#93a084}.empty-state>.icon{width:40px;height:40px}.empty-state h3{font-size:16px;font-weight:500;margin-top:20px}.empty-state p{font-size:12px;color:#a5af99;margin-top:9px}.ranking-page{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px}.ranking-page .ranking-row{height:83px}.ranking-page .ranking-row b{font-size:13px}.ranking-page .rank-flag{width:33px;height:33px}.ranking-page .rank-flag .icon{width:17px;height:17px}.ranking-page .ranking-header{height:36px}.ranking-page aside{display:grid;gap:20px;align-content:start}.ranking-page .ranking-row>strong{font-size:17px}.ranking-note{display:flex;gap:8px;align-items:start;font-size:11px;color:#949e87;margin-top:17px;line-height:1.9}.ranking-note .icon{width:15px;height:15px;margin-top:3px;flex-shrink:0}.end-banner{display:flex;align-items:center;gap:9px;padding:17px 22px;background:#f3edd8;border:1px solid #e6dcba;border-radius:9px;font-size:12px;color:#9d894f;margin-bottom:22px}
.modal-open{overflow:hidden}.modal-backdrop{position:fixed;inset:0;background:#1e352a66;backdrop-filter:blur(5px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;animation:fade-in .18s ease-out}.modal{background:var(--paper);border:1px solid #e4e9dd;border-radius:18px;padding:38px;width:490px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto;position:relative;outline:none;box-shadow:0 25px 100px #16322430;animation:modal-in .23s ease-out}.modal-close{position:absolute;right:16px;top:16px;border:0;color:#98a38d}.modal-emblem{width:53px;height:53px;border-radius:15px;background:#eaf0e1;color:#789360;display:grid;place-items:center;margin-bottom:22px}.modal-emblem .icon{width:30px;height:30px}.modal h2{font-size:24px;letter-spacing:.5px;font-weight:600;line-height:1.5;margin:8px 0}.modal-intro{font-size:12px;color:#8a9680;line-height:1.9}.modal-intro b{font-weight:500;color:#5d7950}.rules-modal{width:560px}.rules-steps{margin-top:24px;display:flex;flex-direction:column;gap:21px}.rule-step{display:flex;gap:14px}.rule-step>span{font-family:monospace;color:#a0ae90;font-size:12px;line-height:1.7}.rule-step h3{font-size:13px;font-weight:550;margin-bottom:5px}.rule-step p{font-size:11px;line-height:1.9;color:#949d89}.demo-note{background:#f1f4e9;border:1px solid #e7ecdb;border-radius:6px;padding:12px;display:flex;align-items:flex-start;gap:8px;color:#8d9b7c;line-height:1.8;font-size:10px;margin:23px 0}.demo-note .icon{width:14px;height:14px;margin-top:2px}.task-modal-top{display:flex;justify-content:space-between;align-items:center;padding-right:16px;margin-bottom:20px}.task-location{font-size:10px;display:flex;gap:6px;align-items:center;color:#849971}.task-location .icon{width:14px;height:14px}.reward-badge{font-size:10px;color:#a68f50;background:#f7f0db;padding:6px 8px;border-radius:6px;display:flex;gap:5px;align-items:center}.reward-badge .icon{width:14px;height:14px}.question-box{font-size:14px;line-height:2;color:#5c6f50;background:#f1f4e8;padding:20px;border:1px solid #e2e9d6;border-radius:8px;margin:24px 0 19px}.answers{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:11px}.answer-option{position:relative;display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #e0e6d7;border-radius:7px;cursor:pointer;transition:background .15s}.answer-option>input{position:absolute;opacity:0;width:1px;height:1px}.answer-option>span{font-family:monospace;font-size:12px;color:#9ba98a;background:#eff2e8;padding:4px 6px;border-radius:4px}.answer-option>b{font-size:16px;font-weight:500}.answer-option>i{margin-left:auto;opacity:0}.answer-option>i .icon{width:16px;height:16px}.answer-option:has(input:checked){background:#edf3e4;border-color:#7d9b63;color:#50723b}.answer-option:has(input:checked)>i{opacity:1}.answer-option:has(input:focus-visible){outline:2px solid #728f59;outline-offset:2px}.answer-option:hover{background:#f4f7ed}.task-hint{margin-top:18px;font-size:11px;color:#93a080}.task-hint summary{cursor:pointer;display:flex;align-items:center;gap:6px;width:fit-content}.task-hint summary .icon{width:13px;height:13px}.task-hint p{margin:9px 0;line-height:1.8;color:#8b987b;padding:8px 12px;border-left:2px solid #d9e2cd}.form-error{font-size:11px;color:#b66c55;min-height:20px;margin-top:12px;margin-bottom:8px;line-height:1.8}.modal-footnote{text-align:center;font-size:9px;color:#a4ad98;margin-top:15px}.success-flag{width:105px;height:105px;background:color-mix(in srgb,currentColor 10%,transparent);border-radius:50%;display:grid;place-items:center;margin:0 auto 28px;position:relative;animation:flag-pop .5s ease-out}.success-flag>.tile-flag{width:66px;height:76px;max-width:none}.success-spark{position:absolute;font-size:23px;color:#b7a45c}.success-spark.one{top:4px;right:-5px}.success-spark.two{bottom:10px;left:-12px}.modal:has(.success-flag){text-align:center}.success-reward{display:flex;justify-content:center;gap:30px;background:#f1f4e9;border:1px solid #e7ecdc;border-radius:8px;padding:22px 10px;margin:24px 0}.success-reward>span{font-size:11px;color:#9aa68d;display:flex;align-items:center;gap:12px}.success-reward b{font-size:25px;color:#6e8757;font-weight:550}.success-explanation{font-size:12px;color:#93a081;line-height:1.9;margin-bottom:25px}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);background:#345746;color:#f0f4e6;border:1px solid #62836544;padding:13px 23px;border-radius:9px;box-shadow:0 8px 30px #27433125;z-index:200;font-size:12px;opacity:0;visibility:hidden;transition:.2s;max-width:calc(100vw - 40px);text-align:center;line-height:1.7}.toast.visible{transform:translate(-50%,0);opacity:1;visibility:visible}.loading-screen{height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.loading-mark{display:grid;place-items:center;width:64px;height:64px;background:#3e634e;color:#eaf1dc;border-radius:18px;font-family:Georgia,serif;font-size:40px;margin-bottom:25px}.loading-mark .icon{width:33px;height:33px}.loading-screen h1{font-size:24px;font-weight:500;letter-spacing:3px}.loading-screen p{color:#96a089;font-size:13px;margin-top:15px}.loading-screen .primary-button{max-width:200px;margin-top:25px}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes modal-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes flag-pop{0%{transform:scale(.7) rotate(-10deg)}65%{transform:scale(1.08) rotate(3deg)}100%{transform:scale(1) rotate(0)}}
@media(min-width:1500px){.game-layout{grid-template-columns:minmax(0,1fr) 334px}.map-tile{aspect-ratio:1.25}.team-card{padding:24px}.selection-content{padding:20px 23px}.terrain-scene{height:125px}.stat-card{padding:24px}.map-frame{margin-inline:22px}.map-legend{padding-block:20px}.terrain-art{max-width:48px}.tile-flag{max-width:46px}}
@media(max-width:1240px){main{padding:28px 25px 0}.topbar{padding:0 25px}.stat-card{padding:16px 14px;gap:10px}.stat-foot{display:none}.game-layout{grid-template-columns:minmax(0,1fr) 275px;gap:19px}.map-grid{gap:4px;padding:4px}.map-tile{aspect-ratio:1}.map-legend{gap:11px;padding:15px 20px}.legend-label{display:none}.panel-heading{padding:21px 20px 15px}.map-caption{padding-inline:20px}.team-card{padding:18px}.team-identity h2{font-size:18px}.field-note{display:none}.selection-content{padding:14px 16px}.selection-top{padding-inline:16px}.terrain-scene{height:86px;margin-inline:16px}.mission-preview{margin-top:12px}.selection-hint{font-size:7px}.small-panel-heading{padding-inline:19px}.ranking-header,.ranking-row{padding-inline:19px}.activity-list{padding-inline:19px}.quest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value.countdown{font-size:23px}}
@media(max-width:1000px){.sidebar{width:72px;padding-inline:6px}.app-shell{margin-left:72px}.topbar{height:72px}.wordmark{font-size:17px}.wordmark>span{font-size:8px;margin-left:8px}.player-label{display:none}.topbar-right{gap:13px}.page-heading h1{font-size:24px}.room-code{padding:10px;font-size:9px;gap:7px}.room-code b{font-size:9px;margin-left:2px}.stats-grid{gap:11px}.stat-card{padding:15px 12px;gap:8px}.stat-symbol{width:35px;height:35px;border-radius:9px}.stat-symbol .icon{width:19px;height:19px}.stat-value{font-size:24px}.stat-value small{font-size:8px;margin-left:4px}.stat-value.countdown{font-size:20px}.stat-label{font-size:9px}.game-layout{grid-template-columns:minmax(0,1fr) 252px;gap:15px}.map-tile{aspect-ratio:.92}.map-grid{gap:3px}.map-caption>span:last-child{display:none}.map-toolbar .connection{font-size:8px}.map-frame{margin-right:11px;margin-left:7px;padding-right:3px}.col-labels{margin-left:22px}.row-labels{width:22px}.map-coordinates{margin-left:22px}.fictional{display:none}.map-coordinates>span:last-child{font-size:8px;gap:3px}.map-coordinates>span:first-child{font-size:6px}.map-legend{gap:11px;padding:12px 15px}.legend-item{font-size:8px}.team-card{padding:17px}.team-identity{margin-top:16px}.team-stats{margin-top:14px}.team-progress{margin-top:14px}.team-identity h2{font-size:17px}.team-motto{font-size:9px}.selection-content>p{font-size:9px}.primary-button{font-size:10px;padding:11px 10px;gap:5px}.selection-hint{font-size:7px;gap:2px}.selection-content{padding:13px 15px}.terrain-scene{height:75px}.selection-top{padding-block:12px}.mission-preview{padding:8px}.mission-meta{margin-block:12px}.bottom-grid{gap:15px;margin-top:18px}.ranking-row>div{gap:6px}.ranking-header,.ranking-row{grid-template-columns:minmax(0,1fr) 40px 40px;padding-inline:15px}.ranking-row b{font-size:9px}.activity-row{gap:8px}.activity-list{padding-inline:15px}.activity-row p{font-size:8px}.activity-row>div>span{font-size:7px}.activity-score{font-size:9px}.ranking-page{grid-template-columns:minmax(0,1fr) 265px;gap:18px}.subtle{font-size:8px}}
@media(max-width:820px){main{padding:25px 20px 0}.topbar{padding:0 20px}.topbar-divider,.rules-top,.prototype-label{display:none}.page-heading{align-items:flex-start;gap:12px}.page-heading h1{font-size:23px;letter-spacing:0}.page-heading p{font-size:10px}.eyebrow{font-size:7px;letter-spacing:2px}.room-code{padding:8px;margin-top:22px}.room-code>span{font-size:0}.room-code b{font-size:8px}.room-code .icon:first-child{display:none}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.stat-card{padding:12px;min-height:90px;display:block}.stat-symbol{display:none}.stat-value{margin-top:9px}.mini-progress,.live-dot{position:absolute;right:12px;top:17px}.mini-progress{height:16px;width:3px}.stat-value.countdown{font-size:19px}.game-layout{display:flex;flex-direction:column;gap:20px}.map-panel{width:100%}.map-tile{aspect-ratio:1.17}.map-grid{gap:5px;padding:6px}.map-frame{margin:0 19px 0 12px}.col-labels{margin-left:28px}.row-labels{width:28px}.map-caption>span:last-child{display:flex}.map-caption{padding-bottom:8px}.map-legend{padding:16px 24px;gap:20px}.legend-item{font-size:9px}.legend-label{display:block}.map-coordinates{margin-left:28px;padding-block:14px}.map-coordinates>span:first-child{font-size:8px}.fictional{display:inline}.map-coordinates>span:last-child{font-size:9px}.right-column{display:grid;grid-template-columns:1fr 1fr;align-items:start;width:100%;gap:18px}.team-card{padding:22px}.team-identity{margin-top:24px}.team-identity h2{font-size:19px}.team-stats{margin-top:25px}.team-progress{margin-top:25px}.team-progress-label{margin-top:10px}.team-motto{margin-top:21px;font-size:10px}.selection-card{grid-column:2;grid-row:1 / span 2}.selection-top{padding:15px 17px}.terrain-scene{height:85px}.selection-content{padding:16px 17px}.selection-content>p{font-size:10px}.selection-hint{font-size:7px}.field-note{display:block;grid-row:2;grid-column:1;margin-top:0;padding-top:0}.bottom-grid{margin-top:20px;grid-template-columns:1fr;gap:18px}.ranking-row b{font-size:11px}.ranking-row>div{gap:10px}.ranking-header,.ranking-row{grid-template-columns:minmax(0,1fr) 70px 75px;padding-inline:23px}.activity-list{padding-inline:23px}.activity-row p{font-size:11px}.activity-row>div>span{font-size:9px}.activity-row{padding-block:14px}.activity-score{font-size:11px}.activity-flag{width:33px;height:33px}.ranking-page{display:flex;flex-direction:column}.ranking-page aside{grid-template-columns:1fr 1fr;gap:18px}.ranking-page aside .team-card{padding:18px}.ranking-page aside .activity .activity-row p{font-size:9px}.ranking-page aside .activity .activity-row>div>span{font-size:7px}.ranking-page aside .activity .activity-score{display:none}.ranking-page aside .activity .activity-list{padding-inline:16px}.quest-grid{padding-inline:20px;gap:12px}.quest-card{padding:12px;gap:10px}.quest-art{width:55px;height:73px}.quest-card h3{font-size:11px}.task-tabs{padding-inline:20px}.task-tabs button{font-size:9px;padding:7px 10px}footer{font-size:8px}footer>span:last-child{white-space:nowrap}}
@media(max-width:560px){.sidebar{inset:auto 0 0 0;width:100%;height:64px;border-top:1px solid #dfe5d6;border-right:0;flex-direction:row;padding:4px 13px;background:#f1f4ecf5;backdrop-filter:blur(12px)}.brand-mark,.sidebar-line,.sidebar-bottom .user-avatar{display:none}.sidebar nav{flex-direction:row;justify-content:space-around;width:75%;gap:0}.nav-button{height:54px;flex:1;gap:3px;border-radius:8px;max-width:76px}.nav-button .icon{width:20px;height:20px}.nav-button span{font-size:9px}.sidebar-bottom{margin-top:0;width:25%;align-items:center}.sidebar-bottom .nav-button{width:100%}.app-shell{margin-left:0;padding-bottom:64px}.topbar{height:65px;padding-inline:18px}.wordmark{font-size:17px}.wordmark>span{font-size:8px;letter-spacing:2px;margin-left:7px}.avatar-small{width:29px;height:29px}.topbar-right{gap:0}main{padding:23px 15px 0}.page-heading{margin-bottom:22px;position:relative}.eyebrow{font-size:7px;letter-spacing:1.7px;margin-bottom:8px}.page-heading h1{font-size:21px;letter-spacing:0}.page-heading p{font-size:10px;margin-top:7px}.room-code{position:absolute;right:0;top:-6px;margin:0;padding:4px 6px;background:transparent;border-color:#e4e8dc;gap:5px}.room-code b{font-size:6px;letter-spacing:.5px}.room-code .icon{width:9px;height:9px}.stats-grid{gap:7px;margin-bottom:18px}.stat-card{border-radius:7px;padding:11px 9px;min-height:75px}.stat-label{font-size:8px;letter-spacing:0}.stat-value{font-size:22px;margin-top:7px}.stat-value small{font-size:7px;margin-left:4px}.stat-value.countdown{font-size:14px;letter-spacing:0;margin-top:13px}.mini-progress,.live-dot{display:none}.panel{border-radius:9px}.panel-heading{padding:18px 17px 12px}.panel h2{font-size:16px}.tiny-label{font-size:7px;letter-spacing:1.4px;margin-bottom:5px}.map-toolbar{gap:8px}.connection{font-size:8px}.icon-button{width:26px;height:26px;padding:5px}.icon-button .icon{width:14px;height:14px}.map-caption{font-size:8px;padding-inline:17px;padding-bottom:7px}.map-caption>span:last-child{font-size:5px;letter-spacing:.8px;gap:3px}.map-caption b{font-size:8px;margin-left:3px}.map-caption .icon{width:10px;height:10px}.map-frame{margin-left:4px;margin-right:9px}.col-labels{height:22px;font-size:9px;margin-left:22px}.row-labels{width:22px;font-size:8px}.map-grid{gap:3px;padding:4px;border-radius:5px}.map-tile{aspect-ratio:.94;border-radius:3px;padding:1px}.map-tile:after{inset:2px}.terrain-art{width:89%;height:89%}.tile-flag{width:86%;height:92%}.tile-coordinate{font-size:5px;left:2px;top:1px}.map-tile.is-selected .tile-coordinate{font-size:6px}.map-tile.is-selected{outline-width:1.5px;outline-offset:.5px}.rare-dot{width:2px;height:2px;right:3px;top:3px}.map-coordinates{margin-left:23px;padding:11px 0}.map-coordinates>span:first-child{font-size:6px}.map-coordinates>span:last-child{font-size:7px;gap:3px}.map-coordinates .icon{width:10px;height:10px}.fictional{display:none}.map-legend{padding:12px 15px;gap:11px;justify-content:space-between}.legend-label{display:none}.legend-item{font-size:7px;gap:4px}.legend-item i{width:6px;height:6px}.right-column{grid-template-columns:1fr;gap:16px}.selection-card{grid-column:1;grid-row:1}.team-card{grid-row:2}.field-note{display:none}.selection-top{padding:15px 18px 12px}.terrain-scene{height:90px;margin-inline:18px}.selection-content{padding:17px 18px}.selection-title h3{font-size:19px}.selection-content>p{font-size:11px}.ownership-badge{font-size:9px}.mission-preview{margin-top:15px;padding:11px}.mission-preview h4{font-size:12px}.mission-meta{margin:15px 0 17px;font-size:10px}.selection-hint{font-size:9px}.primary-button{font-size:12px;min-height:46px;padding:12px 15px}.team-identity{margin-top:19px}.team-stats{margin-top:20px}.team-motto{margin-top:15px}.team-progress{margin-top:20px}.team-card-top{font-size:11px}.team-select-wrap{font-size:10px}.team-identity>div>span{font-size:10px}.team-stats>div>span{font-size:10px}.team-progress-label{font-size:9px}.bottom-grid{margin-top:16px;gap:16px}.small-panel-heading h2{font-size:13px}.small-panel-heading{padding:19px}.ranking-header,.ranking-row{padding-inline:19px;grid-template-columns:minmax(0,1fr) 48px 50px}.ranking-row{height:53px}.ranking-row b{font-size:11px}.activity-list{padding-inline:19px}.activity-row p{font-size:10px}.activity-row>div>span{font-size:8px}.activity-score{font-size:10px}footer{flex-direction:column;align-items:center;font-size:8px;gap:12px;padding-block:24px}.task-board .panel-heading{flex-direction:column;align-items:flex-start;gap:15px}.search-box{width:100%}.search-box input{width:100%;font-size:12px}.task-tabs{padding-inline:17px;gap:6px}.task-tabs button{font-size:8px;padding:7px 9px}.quest-grid{grid-template-columns:1fr;padding-inline:17px}.quest-card{padding:13px;gap:16px}.quest-art{width:66px;height:76px}.quest-card h3{font-size:14px}.quest-type{font-size:10px}.quest-card p{font-size:11px}.ranking-page aside{grid-template-columns:1fr}.ranking-page .ranking-row{height:75px}.ranking-page .ranking-row b{font-size:12px}.subtle{font-size:7px}.ranking-page aside .team-card{padding:22px}.ranking-page aside .activity .activity-row p{font-size:11px}.ranking-page aside .activity .activity-row>div>span{font-size:9px}.ranking-page aside .activity .activity-score{display:block}.modal-backdrop{padding:15px}.modal{padding:31px 23px;max-height:calc(100dvh - 30px);border-radius:13px}.modal h2{font-size:22px}.modal-intro{font-size:11px}.question-box{font-size:13px;padding:16px;margin:20px 0 17px}.answer-option{padding:12px}.task-modal-top{padding-right:18px;margin-top:9px}.reward-badge{font-size:9px}.success-reward{gap:20px}.success-reward>span{font-size:10px}.toast{bottom:85px;font-size:11px;width:max-content}.end-banner{font-size:10px;padding:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Room onboarding and role-specific views */
.account-button{display:flex;align-items:center;gap:8px;border:0;background:transparent;font-size:12px;color:#718268;padding:8px}.account-button .icon{width:13px;height:13px}.user-avatar{cursor:pointer}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #d7dfcc;border-radius:6px;background:#f4f7ee;color:#60764e;padding:10px 14px;font-size:11px;line-height:1.5;cursor:pointer}.secondary-button:hover{background:#e6eddc}.secondary-button .icon{width:15px;height:15px}.full-width{width:100%}.lobby-banner{display:flex;align-items:center;gap:14px;border:1px solid #dce5d0;background:#edf3e5;padding:17px 21px;border-radius:9px;margin-bottom:23px;color:#859875}.lobby-banner>div{display:flex;flex-direction:column;gap:5px;flex:1}.lobby-banner b{font-size:12px;font-weight:550;color:#577546}.lobby-banner span{font-size:11px;line-height:1.7}.lobby-banner>.icon{width:23px;height:23px}.role-chip{font-size:9px;color:#c1d0b6}.team-card-button{display:flex;align-items:center;justify-content:center;gap:8px;background:#ffffff10;border:1px solid #b3c89b35;color:#dae6cc;padding:11px 10px;width:100%;border-radius:6px;font-size:10px;margin-top:20px}.team-card-button .icon{width:14px;height:14px}.team-card-button .icon:last-child{margin-left:auto}.team-card-button:hover{background:#ffffff1a}.team-card-button:disabled{opacity:.4}.admin-crest{width:47px;height:47px;display:grid;place-items:center;border:1px solid #a6bb9244;border-radius:13px;background:#ffffff08}.admin-crest .icon{width:30px;height:30px}.admin-start-button{margin-top:12px;border:1px solid #c3d0a9;width:100%;border-radius:6px;background:#d1dfb8;color:#3c5831;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px;font-size:11px}.admin-start-button .icon{width:14px;height:14px}.admin-start-button:disabled{opacity:.4}.admin-end-button{border:0;background:transparent;color:#b9c6b0;margin-top:14px;font-size:10px;text-decoration:underline;text-underline-offset:4px}.no-activity{padding:25px 0 40px;color:#a6af9a;text-align:center;font-size:11px}.map-tile.owned{color:var(--team-color);background:color-mix(in srgb,var(--team-color) 20%,#fffef4);border-color:color-mix(in srgb,var(--team-color) 32%,#fffef4)}.bound-note{font-size:11px;color:#91a27d;display:flex;align-items:flex-start;gap:7px;padding:18px 5px;line-height:1.8}.bound-note .icon{width:15px;height:15px;margin-top:2px}.roster-layout{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:24px;align-items:start}.privacy-note{margin:0 26px 10px;padding:12px;border:1px solid #e6ecde;border-radius:6px;background:#f4f7ee;font-size:10px;line-height:1.8;color:#90a17c;display:flex;gap:7px;align-items:center}.privacy-note .icon{width:13px;height:13px}.member-list{padding:0 26px 15px}.member-row{display:flex;gap:11px;align-items:center;padding:17px 0;border-bottom:1px solid #edf0e6}.member-row:last-child{border-bottom:0}.member-avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#e9edde;color:#95a183;font-size:13px;flex-shrink:0}.member-identity{min-width:0}.member-identity>b{font-size:12px;font-weight:500;display:block;word-break:break-all}.member-identity em{font-style:normal;background:#eaf0e0;font-size:8px;padding:2px 5px;margin-left:5px;color:#98a884}.member-identity>span{font-size:9px;display:block;color:#a2ad95;margin-top:5px}.member-contribution{margin-left:auto;text-align:right;flex-shrink:0}.member-contribution>b{font-size:10px;font-weight:500;color:#84976f}.presence{display:flex;align-items:center;justify-content:flex-end;gap:5px;font-size:9px;margin-top:7px;color:#b1b8a8}.presence i{width:5px;height:5px;border-radius:50%;background:#c7cdbf}.presence.online{color:#85a56d}.presence.online i{background:#8baa70}.monitor-top{display:grid;grid-template-columns:minmax(0,1fr) 302px;gap:24px;margin-bottom:24px}.monitor-intro{padding:32px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#fffefb,#f1f5e9)}.monitor-intro h2{font-size:24px;line-height:1.6;margin-top:8px}.monitor-intro>p{font-size:12px;line-height:2;color:#919d85;max-width:540px;margin-top:14px}.monitor-flow{display:flex;align-items:center;gap:14px;margin-top:32px;flex-wrap:wrap}.monitor-flow>span{display:flex;align-items:center;gap:8px;font-size:11px;color:#768c61}.monitor-flow .icon{width:18px;height:18px}.monitor-flow>.icon{width:14px;height:14px;color:#b2bea4}.monitor-info{display:flex;align-items:flex-start;gap:7px;font-size:10px;color:#a1ad93;line-height:1.8;margin-top:25px}.monitor-info .icon{width:13px;height:13px;margin-top:2px}.monitor-grid{padding:0 25px 25px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.monitor-team{border:1px solid #e2e8d9;border-radius:9px;padding:20px;background:#fdfef9}.monitor-team-heading{display:flex;align-items:center;gap:10px}.monitor-team-heading h3{font-size:14px;font-weight:550;overflow-wrap:anywhere}.monitor-team-heading>span:last-child{margin-left:auto;white-space:nowrap;font-size:9px;color:#a2ae96}.monitor-team-stats{display:flex;gap:22px;margin-top:22px;color:#a2ae95;font-size:9px}.monitor-team-stats b{font-size:23px;color:#6d835c;font-weight:550;display:block;margin-bottom:5px}.monitor-progress{height:5px;background:#e9edde;border-radius:4px;overflow:hidden;margin-top:20px}.monitor-progress>span{display:block;height:100%;transition:width .2s}.monitor-last{font-size:9px;color:#a3ae96;margin-top:10px}.monitor-members{margin-top:17px;border-top:1px solid #e9eedf;padding-top:14px}.monitor-members>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:10px;color:#82996c}.monitor-members>summary .icon{width:14px;height:14px}.monitor-members .member-row{padding-block:14px}.monitor-panel .empty-state{padding-top:30px}.empty-state .secondary-button{margin-top:22px}.identity-details{border:1px solid #e1e8d5;border-radius:8px;background:#f4f7ed;margin:23px 0;padding:5px 17px}.identity-details p{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0;font-size:11px;color:#96a584;border-bottom:1px solid #e4ebd9}.identity-details p:last-child{border-bottom:0}.identity-details b{font-size:11px;font-weight:550;color:#687f52}.end-confirm{margin-top:25px;background:#a8664f;border-color:#a8664f}
.entry-shell{min-height:100dvh;background:radial-gradient(ellipse at 15% 65%,#e6edda80,transparent 60%),#f6f7f2}.entry-header{max-width:1250px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:34px 50px}.entry-small-label{font-size:11px;letter-spacing:2px;color:#9da992}.entry-main{max-width:1180px;padding:35px 50px;display:grid;grid-template-columns:minmax(0,1fr) 440px;align-items:center;gap:80px}.entry-intro{padding-block:25px}.entry-intro h1{font-size:38px;line-height:1.6;font-weight:600;letter-spacing:1px;color:#3f5b3d;margin-top:18px}.entry-intro>p{font-size:13px;line-height:2.2;color:#93a086;margin-top:20px}.entry-map-art{width:250px;display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:8px;border:1px solid #dde6ce;border-radius:10px;background:#e8eddf;transform:rotate(-8deg);margin:47px 0 42px 20px;box-shadow:0 15px 40px #66784f0c}.entry-map-art>span{display:grid;place-items:center;aspect-ratio:1;border:1px solid #dbe3cb;border-radius:4px;background:#f0f3e3;color:#aab893}.entry-map-art>span.blue{background:#d8e6eb;border-color:#c5dbe5;color:#6592b0}.entry-map-art>span.coral{background:#f0ddd0;border-color:#e8cdbb;color:#c78c69}.entry-map-art .icon{width:22px;height:22px;fill:currentColor;fill-opacity:.15}.entry-map-art .terrain-art{width:75%;height:75%}.entry-flow{display:flex;align-items:center;gap:10px;color:#9dac8e;font-size:10px}.entry-flow .icon{width:12px;height:12px}.entry-card{box-shadow:0 12px 60px #58684708}.entry-tabs{display:flex;padding:9px;background:#eff3e8;border-bottom:1px solid #e2e8d8;gap:3px}.entry-tabs button{flex:1;background:transparent;border:0;border-radius:6px;color:#93a281;font-size:11px;padding:11px 3px}.entry-tabs button.active{background:#fffefb;box-shadow:0 2px 8px #65764e10;color:#49643c}.entry-card-body{padding:30px}.entry-role{display:flex;align-items:center;gap:7px;color:#92a47d;font-size:10px;letter-spacing:1px}.entry-role .icon{width:15px;height:15px}.entry-card h2{font-size:21px;font-weight:550;line-height:1.5;margin-top:12px}.entry-card-body>p{font-size:11px;color:#9baa8b;line-height:1.9;margin-top:9px;margin-bottom:23px}.entry-field{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#748963;margin-bottom:17px}.entry-field input,.entry-field select{width:100%;border:1px solid #dfe6d5;background:#fbfcf7;border-radius:6px;padding:12px;font-size:12px;color:#526d42;min-height:43px}.entry-field input::placeholder{color:#b1bba4}.entry-field input[name$="Code"]{font-family:monospace;letter-spacing:2px;text-transform:uppercase}.entry-field small{font-size:9px;color:#a6b397}.entry-note{display:flex;align-items:flex-start;gap:6px;color:#a2af94;font-size:10px;line-height:1.8;margin-top:20px}.entry-note .icon{width:13px;height:13px;flex-shrink:0;margin-top:2px}.entry-card .form-error{margin-top:0;margin-bottom:9px;min-height:0}.entry-card .primary-button{font-size:12px}.entry-footer{display:block;text-align:center;padding:24px;color:#b3bca8;font-size:10px;letter-spacing:2px}.invitation-qr{width:200px;max-width:100%;margin:25px auto 18px;border:1px solid #e5eadf;border-radius:8px;padding:5px;background:#fff}.invitation-qr svg{display:block;width:100%;height:auto}.invite-code-block{text-align:center;background:#f2f6e9;border:1px solid #e2eacf;border-radius:7px;padding:14px}.invite-code-block>span{display:block;color:#a1ae91;font-size:10px}.invite-code-block>strong{font-size:25px;letter-spacing:3px;color:#5c7746;display:block;margin-top:7px;font-family:monospace;font-weight:550}.invite-instructions{text-align:center;color:#9ba98b;font-size:10px;line-height:1.9;margin-top:13px}.invite-actions{display:flex;gap:10px;margin-top:20px}.invite-actions>.primary-button{flex:1}.invite-actions>.secondary-button{white-space:nowrap}.invite-network-note{display:flex;gap:6px;font-size:9px;line-height:1.8;color:#a5b099;margin-top:16px}.invite-network-note .icon{width:13px;height:13px;flex-shrink:0;margin-top:2px}.invite-network-note.warning{color:#b4925e}.invite-address{font-size:10px;color:#91a280;margin-top:14px}.invite-address summary{cursor:pointer}.invite-address form{display:flex;gap:6px;margin-block:10px}.invite-address input{min-width:0;flex:1;border:1px solid #dfe7d4;border-radius:5px;padding:9px;font-size:11px;color:#758968;background:#fbfcf8}.invite-address a{overflow-wrap:anywhere;line-height:1.7;font-size:9px;text-decoration:underline}.manual-copy{width:100%;min-height:150px;resize:vertical;padding:15px;margin-top:20px;border:1px solid #dce5cf;border-radius:7px;background:#f7faf1;color:#617b4d;line-height:1.8;font:inherit;font-size:12px}
@media(max-width:1100px){.entry-main{gap:40px;padding-inline:35px;grid-template-columns:minmax(0,1fr) 410px}.entry-intro h1{font-size:30px}.entry-flow{gap:6px;font-size:9px}.monitor-flow{gap:10px}.monitor-top{grid-template-columns:minmax(0,1fr) 275px}.monitor-intro{padding:24px}.monitor-intro h2{font-size:21px}.monitor-team{padding:16px}.monitor-team-heading h3{font-size:12px}.monitor-grid{padding-inline:20px;gap:13px}.roster-layout{grid-template-columns:minmax(0,1fr) 275px}.monitor-members .member-identity>b{font-size:10px}.monitor-members .member-contribution>b{font-size:9px}.monitor-members .member-avatar{width:28px;height:28px}}
@media(max-width:820px){.entry-header{padding:27px 30px}.entry-main{grid-template-columns:1fr;max-width:530px;padding:10px 25px;gap:20px}.entry-intro{padding:10px 8px}.entry-intro h1{font-size:27px}.entry-intro h1 br{display:none}.entry-intro>p{font-size:11px;margin-top:10px}.entry-intro>p br{display:none}.entry-map-art,.entry-flow{display:none}.entry-card-body{padding:28px}.monitor-top{grid-template-columns:1fr}.monitor-intro{padding:25px}.monitor-top>.admin-card{grid-row:auto}.monitor-grid{grid-template-columns:1fr}.monitor-flow{gap:9px}.monitor-flow>span{font-size:10px}.roster-layout{grid-template-columns:1fr}.roster-layout>aside{grid-row:1}.member-contribution>b{font-size:11px}.member-identity>b{font-size:12px}.lobby-banner{padding:15px;gap:9px}.lobby-banner span{font-size:10px}.lobby-banner .secondary-button{padding:8px 10px;white-space:nowrap}.topbar .connection{display:none}.admin-card{grid-row:auto}}
@media(max-width:560px){.sidebar nav{width:80%}.sidebar-bottom{width:20%}.sidebar nav .nav-button{width:auto;min-width:0}.account-button{font-size:11px}.topbar .prototype-label{display:inline-block;font-size:8px;margin-right:7px}.topbar-right{gap:2px}.team-card-button{min-height:42px;font-size:11px}.admin-start-button{min-height:44px}.monitor-top{gap:16px;margin-bottom:16px}.monitor-intro{padding:21px}.monitor-intro h2{font-size:19px}.monitor-intro>p{font-size:11px}.monitor-flow{margin-top:22px;gap:6px}.monitor-flow>span{gap:4px;font-size:9px}.monitor-flow .icon{width:13px;height:13px}.monitor-flow>.icon{width:10px;height:10px}.monitor-info{font-size:9px}.monitor-grid{padding:0 16px 16px}.monitor-team{padding:16px}.monitor-team-heading h3{font-size:14px}.monitor-members .member-identity>b{font-size:12px}.monitor-members .member-contribution>b{font-size:10px}.monitor-team-stats{gap:28px}.member-list{padding-inline:17px}.privacy-note{margin-inline:17px}.roster-layout{gap:0}.roster-panel .panel-heading{align-items:flex-start}.roster-panel .panel-heading h2{font-size:15px}.roster-panel .secondary-button{font-size:10px;padding:8px 10px}.member-row{gap:9px}.member-identity>span{font-size:8px}.member-contribution>b{font-size:10px}.entry-header{padding:24px 20px}.entry-header .wordmark{font-size:16px}.entry-small-label{font-size:8px;letter-spacing:1px}.entry-main{padding:5px 16px 20px;gap:16px}.entry-intro{padding:13px 4px}.entry-intro h1{font-size:24px;margin-top:10px}.entry-intro .eyebrow{font-size:6px}.entry-card-body{padding:23px}.entry-card h2{font-size:20px}.entry-tabs button{font-size:10px}.entry-field{font-size:12px}.entry-field input,.entry-field select{font-size:14px;min-height:45px}.entry-shell .entry-footer{font-size:9px;letter-spacing:1px}.lobby-banner{flex-wrap:wrap}.lobby-banner>.icon{display:none}.lobby-banner>div{min-width:190px}.lobby-banner .secondary-button{font-size:10px}.invitation-qr{width:180px;margin-top:22px}.invite-code-block>strong{font-size:24px}.invite-actions .primary-button{font-size:11px}.invite-actions .secondary-button{font-size:10px}.entry-shell .primary-button{min-height:46px}}

/* Identity gateway and the administrator's room directory. */
.back-link{display:inline-flex;align-items:center;border:0;background:transparent;color:#728563;font-size:11px;padding:0;margin-bottom:18px;cursor:pointer;line-height:1.7}.back-link:hover{color:#355631;text-decoration:underline}.role-options{display:grid;gap:15px;margin-top:29px}.role-option{display:flex;align-items:center;gap:15px;text-align:left;padding:22px 19px;border:1px solid #dce5d2;border-radius:10px;background:#f6f8f0;color:#597346;width:100%;transition:transform .15s,background .15s}.role-option:hover{background:#eaf1df;transform:translateY(-2px)}.role-option>span:nth-child(2){flex:1;min-width:0}.role-option b{font-size:17px;font-weight:550;display:block}.role-option em{display:inline-block;margin-top:7px;font-size:10px;font-style:normal;color:#869a76}.role-option small{display:block;font-size:10px;line-height:1.8;margin-top:11px;color:#8a9b7a}.role-option>.icon{width:17px;flex-shrink:0}.role-icon{width:44px;height:48px;display:grid;place-items:center;background:#e7efdc;border:1px solid #d9e4cc;border-radius:12px;flex-shrink:0}.role-icon .icon{width:25px;height:25px}.admin-option{background:#35563f;color:#eff3df;border-color:#35563f}.admin-option:hover{background:#406349}.admin-option .role-icon{background:#ffffff0c;border-color:#c1d3ad25;color:#c4d4ac}.admin-option em,.admin-option small{color:#bac9ab}.participant-tabs{padding:5px;border:1px solid #e1e8d7;border-radius:7px;margin-bottom:24px}.participant-tabs button{font-size:10px}.entry-card-body>.back-link{margin-top:-5px;margin-bottom:23px}.admin-shell{min-height:100vh}.admin-main{max-width:1330px;margin:auto;padding:48px 48px 0}.admin-shell .topbar{padding-inline:max(48px,calc((100vw - 1234px)/2))}.create-room-button{width:auto;min-width:158px;white-space:nowrap;align-self:center}.dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:30px 0 36px}.directory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.room-tabs{display:flex;align-items:center;gap:9px}.room-tabs button{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;color:#859575;border-radius:7px;padding:11px 13px;font-size:11px;white-space:nowrap}.room-tabs button.active{background:#e7eedc;color:#456334;border-color:#dbe4ce}.room-tabs span{font-size:9px;background:#e8edde;color:#8a9e74;border-radius:4px;min-width:18px;padding:3px 5px}.room-tabs button.active span{background:#d5e2c4;color:#506d3f}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.room-summary{padding:23px 24px 18px;min-width:0}.room-summary-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:19px}.room-status{display:inline-flex;align-items:center;gap:6px;border-radius:5px;background:#eff2e6;padding:5px 8px;font-size:10px;color:#8b9675}.room-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.status-active{background:#eaf1df;color:#65864c}.status-lobby{background:#f4edde;color:#a18b56}.status-ended{background:#ecefeb;color:#8b9688}.room-duration{font-size:9px;color:#a6af9d}.room-summary h2{font-size:19px;font-weight:550;color:#4c6440;line-height:1.6;overflow-wrap:anywhere}.room-summary-code{font-size:10px;color:#a0ad94;letter-spacing:1px;margin-top:7px}.room-numbers{display:flex;gap:26px;margin-top:25px}.room-numbers>span{color:#9da98f;font-size:10px}.room-numbers b{display:block;color:#698254;font-size:23px;font-weight:500;margin-bottom:5px}.room-progress-label{display:flex;justify-content:space-between;margin-top:25px;font-size:10px;color:#99a689}.room-progress-label b{font-weight:500;color:#7c906a}.room-summary .monitor-progress{margin-top:11px;height:6px}.room-team-preview{margin-top:20px;min-height:98px;display:flex;flex-direction:column;gap:11px}.room-team-preview>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#839571;overflow-wrap:anywhere}.room-team-preview i{width:6px;height:6px;border-radius:50%;flex-shrink:0}.room-team-preview b{margin-left:auto;font-weight:400;white-space:nowrap;color:#9faa92}.room-team-preview p,.room-team-preview small{font-size:10px;line-height:1.8;color:#a6b198}.room-summary-footer{border-top:1px solid #ecf0e4;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:10px}.room-summary-footer>span{font-size:9px;color:#a5af9c}.room-summary-footer .secondary-button{font-size:10px;padding:8px 11px}.dashboard-empty{padding:65px 25px;display:flex;align-items:center;flex-direction:column;text-align:center}.dashboard-empty>.icon{width:38px;height:38px;color:#98ac80;margin-bottom:20px}.dashboard-empty h2{font-size:20px;font-weight:500}.dashboard-empty p{font-size:12px;color:#a0ac92;line-height:1.8;margin-top:12px}.dashboard-empty .primary-button{margin-top:25px}.admin-main footer .back-link{margin:0;font-size:10px}#create-room-form{margin-top:25px}.admin-shell .search-box{max-width:260px}.admin-shell .search-box input{min-width:0}.admin-shell .page-heading h1{color:#3f5b3d}
@media(max-width:1100px){.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-main{padding:35px 30px 0}.admin-shell .topbar{padding-inline:30px}.room-tabs{gap:3px}.room-tabs button{padding-inline:9px}.directory-toolbar{gap:12px}.admin-shell .search-box{max-width:230px}.dashboard-stats{gap:13px}.room-numbers{gap:33px}}
@media(max-width:820px){.admin-main{padding:28px 23px 0}.admin-shell .topbar{padding-inline:23px}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-block:25px}.directory-toolbar{align-items:stretch;flex-direction:column}.admin-shell .search-box{max-width:none;width:100%}.admin-shell .search-box input{width:100%}.room-tabs{justify-content:space-between}.room-grid{gap:15px}.room-summary{padding:20px}.admin-main .page-heading h1{font-size:26px}.admin-main .page-heading>div>p{max-width:280px;line-height:1.8}.room-numbers{gap:23px}.role-option small{font-size:11px}}
@media(max-width:560px){.admin-main{padding:24px 17px 0}.admin-shell .topbar{padding-inline:20px}.admin-main .page-heading{flex-wrap:wrap;gap:18px}.admin-main .page-heading h1{font-size:25px}.create-room-button{min-width:145px;font-size:11px}.dashboard-stats{gap:10px;margin-block:23px}.dashboard-stats .stat-card{padding:16px 13px}.room-grid{grid-template-columns:1fr}.room-summary{padding:23px}.room-numbers{gap:42px}.room-summary h2{font-size:20px}.room-tabs button{padding:10px 8px;font-size:10px;gap:5px}.room-tabs{gap:0}.room-summary-footer .secondary-button{padding:10px 15px;font-size:11px}.room-team-preview{min-height:75px}.room-summary-footer>span{font-size:10px}.admin-shell footer{padding-bottom:30px}.role-option{padding:20px 15px;gap:12px}.role-option b{font-size:17px}.role-option small{font-size:10px}.role-icon{width:38px;height:43px}.role-options{gap:13px}.participant-tabs button{font-size:10px}}

/* Trainers belong to one room and receive their own invitation. */
.trainer-option{background:#edf1f4;border-color:#dce4e9;color:#536e80}.trainer-option:hover{background:#e5edf2}.trainer-option .role-icon{background:#e0e9ee;border-color:#d3dfe7;color:#6b889a}.trainer-option em,.trainer-option small{color:#8296a3}.trainers-panel{margin-bottom:24px}.trainer-panel-note{padding:0 25px;color:#829372;font-size:11px;line-height:1.9}.trainer-empty{padding:20px 25px 26px;color:#a0ad94;font-size:11px}.trainer-list{padding:7px 25px 15px}.trainer-row{display:flex;align-items:center;gap:13px;padding:18px 0;border-bottom:1px solid #edf0e6}.trainer-row:last-child{border:0}.trainer-identity{flex:1;min-width:0}.trainer-identity b{display:block;font-size:13px;font-weight:500;color:#637c50;overflow-wrap:anywhere}.trainer-identity>span{display:block;font-size:10px;line-height:1.8;color:#98a58b;margin-top:5px}.trainer-row>.presence{margin:0 8px;white-space:nowrap}.trainer-row .secondary-button{white-space:nowrap}.trainer-card{background:#405965}.trainer-scope{border-top:1px solid #ffffff20;margin-top:22px;padding-top:17px;font-size:11px;color:#c2d2d8;line-height:1.9}#create-trainer-form{margin-top:24px}#create-trainer-form .entry-note{margin:5px 0 18px}
@media(max-width:560px){.trainers-panel .panel-heading{padding:19px 17px;gap:8px}.trainers-panel h2{font-size:15px}.trainers-panel .secondary-button{font-size:10px;padding:9px}.trainer-panel-note{padding-inline:17px;font-size:10px}.trainer-list{padding-inline:17px}.trainer-row{gap:8px;flex-wrap:wrap}.trainer-identity{min-width:130px}.trainer-row>.presence{font-size:9px;margin:0}.trainer-row>.secondary-button{margin-left:auto}.trainer-empty{padding-inline:17px;font-size:10px}.role-options{margin-top:20px}.role-option{padding-block:17px}}

.trainer-logout{display:block;margin:18px auto 0;text-align:center}

/* Real-world field configuration and task review. */
.map-frame{overflow-x:auto}.map-grid,.col-labels{grid-template-columns:repeat(var(--map-cols,10),minmax(0,1fr));min-width:calc(var(--map-cols,10)*27px)}.row-labels{grid-template-rows:repeat(var(--map-rows,10),minmax(0,1fr))}.map-toolbar{flex-wrap:wrap}.map-toolbar .secondary-button{font-size:11px}.map-coordinates{gap:12px}.map-coordinates>span{white-space:normal}.entry-field textarea{width:100%;border:1px solid #dfe6d5;background:#fbfcf7;border-radius:6px;padding:12px;font:inherit;font-size:13px;color:#526d42;resize:vertical;line-height:1.8;min-height:95px}.entry-field input[type=file]{padding:10px;min-width:0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.modal:has(.field-map-form){width:720px;max-width:100%}.field-section-title{font-size:16px;margin:24px 0 16px}.boundary-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.boundary-preview{padding:16px;border:1px solid #dce5d1;background:#f4f7ee;border-radius:10px;margin:16px 0;color:#728763;font-size:11px}.boundary-grid{display:grid;gap:3px;margin:14px 0}.boundary-grid>span{background:#e1ead5;border:1px solid #cbd9bd;min-height:18px;aspect-ratio:1.5;display:grid;place-items:center;font:9px monospace;color:#536947;overflow:hidden}.boundary-top,.boundary-bottom{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:10px}.field-help{font-size:11px;line-height:1.8;color:#7d8d70;margin:14px 0}.field-confirm{display:flex;align-items:center;gap:9px;font-size:12px;margin:18px 0;color:#8a693e}.field-confirm input{width:17px;height:17px}.field-instructions{white-space:pre-wrap;overflow-wrap:anywhere}.field-tile-art{min-height:110px;display:flex;gap:18px;align-items:center;justify-content:center;background:linear-gradient(130deg,#e8efde,#f5f1df);color:#779457}.field-tile-art .icon{width:40px;height:40px}.field-tile-art>span{font-size:16px;font-weight:600}.field-selection .selection-title{align-items:flex-start}.field-selection .selection-title h3{font-size:17px;overflow-wrap:anywhere}.field-location{font-variant-numeric:tabular-nums;line-height:1.9!important}.submission-status{display:inline-block;border-radius:5px;padding:5px 8px;font-size:11px;line-height:1.6;background:#eef2e7;color:#70885b}.submission-status p{margin-top:6px;font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.status-pending{background:#f7edda;color:#9a773b}.status-rejected{background:#f8e9e0;color:#a36f4e}.status-approved{background:#e8f1dc;color:#627f42}.status-superseded{background:#eceee8;color:#839077}.field-selection .submission-status{display:block;margin-bottom:13px}.review-panel{padding-bottom:15px}.review-intro{padding:0 28px 20px;font-size:12px;color:#89997b;line-height:1.9}.review-list{padding:0 28px}.review-row{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid #e9eddf}.review-row>div:first-child{min-width:0;flex:1}.review-row h3{font-size:16px;margin:8px 0;overflow-wrap:anywhere}.review-row p{font-size:11px;color:#9ba78f;line-height:1.8}.review-row-actions{display:flex;gap:10px;align-items:flex-end;flex-direction:column;flex-shrink:0}.review-reason{color:#9b7656!important;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.8}.review-buttons{display:flex;gap:12px}.review-buttons>button{flex:1}.submission-photo,.photo-preview img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain;border-radius:8px;background:#eef1e9;margin:18px 0}.field-error{white-space:pre-wrap}.field-tile-art+.selection-content .primary-button{font-size:12px}
@media(max-width:560px){.field-grid{gap:0 10px}.boundary-actions .secondary-button{font-size:10px;padding:10px}.boundary-preview{padding:10px}.boundary-grid{gap:2px}.boundary-grid>span{font-size:7px;min-height:12px}.boundary-top,.boundary-bottom{font-size:9px}.field-help{font-size:11px}.review-intro{padding:0 18px 18px}.review-list{padding:0 18px}.review-row{gap:12px;flex-direction:column}.review-row-actions{flex-direction:row;flex-wrap:wrap;align-items:center}.review-buttons{flex-direction:column}.entry-field textarea{font-size:14px}.map-toolbar .secondary-button{padding:7px;font-size:10px}.sidebar nav .nav-button span{font-size:8px}.sidebar nav .nav-button{padding-inline:2px}.field-selection .selection-title h3{font-size:17px}}
