:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#edf1df;background:#111d20;font-size:16px;--lime:#d8ed89;--muted:#aabcb9;--line:#385054}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer;color:inherit;border:1px solid #496066;background:#24383b;border-radius:7px;padding:10px 14px;transition:background .15s}button:hover{background:#354e50}button:focus-visible{outline:3px solid var(--lime);outline-offset:3px}header{padding:26px 32px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}h1{font:500 38px Georgia,serif;margin:6px 0 0;letter-spacing:-1px}h2{font-size:18px;margin:0}.edition{font:400 14px system-ui;letter-spacing:0;color:var(--muted);margin-left:18px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;color:var(--lime)}nav{display:flex;gap:10px}.notice{padding:10px 32px;background:#323327;color:#dbd8b0;font-size:14px;line-height:1.6}.notice button{padding:0;border:0;background:none;text-decoration:underline;color:inherit;margin-left:5px}main{display:grid;grid-template-columns:minmax(0,1fr) 330px;max-width:1800px;margin:auto}.table{min-width:0}aside{border-left:1px solid var(--line);background:#152427;padding:24px;min-width:0}.habitat{padding:24px 32px;min-height:184px}.opponent{background:#17282c}.own{background:#1b3031}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.section-title>span{color:var(--muted);font-size:14px}.animals{display:flex;gap:12px;flex-wrap:wrap}.animal{width:180px;background:#233b3d;border:1px solid #486064;border-radius:9px;overflow:hidden;text-align:left;padding:0;position:relative}.animal:hover{background:#2b4748}.animal.selected{outline:2px solid var(--lime)}.animal-top{padding:14px 14px 9px;display:flex;justify-content:space-between;gap:6px;align-items:center}.animal-id{font-family:Georgia,serif;font-size:28px;color:var(--lime)}.state{font-size:12px;color:#c4d5d1}.animal-food{display:flex;gap:5px;padding:0 14px 12px;align-items:center;flex-wrap:wrap}.dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid #78928d}.dot.red{background:#ee7867;border-color:#f69886}.dot.blue{background:#70bade;border-color:#9bd9f5}.dot.yellow{background:#edd377;border-color:#f5df9b}.trait-list{background:#1b3032;padding:10px 14px;display:flex;gap:5px;flex-wrap:wrap;min-height:40px}.trait{font-size:12px;color:#d4e1d7;line-height:1.4}.trait:not(:last-child):after{content:' ·';color:#769790}.links{padding:9px 14px;font-size:12px;color:#cbd49e;border-top:1px solid #3a5555;line-height:1.5}.empty{border:1px dashed #3d5559;border-radius:8px;padding:24px;color:#a7bbb9;width:100%;font-size:14px}.center{padding:22px 32px;display:grid;grid-template-columns:1fr 140px 110px;gap:24px;align-items:center;background:#101d20;border-block:1px solid #385054}.center h2{font:400 27px Georgia,serif;margin-top:7px}.center p{font-size:14px;color:var(--muted);max-width:430px;line-height:1.5;margin:8px 0 0}.food-base{text-align:center}.food-base #food-number{font:400 42px Georgia,serif;color:#f4a18d}#food-dots{display:flex;gap:5px;justify-content:center;margin:5px 0 7px;flex-wrap:wrap}.food-base span,.deck span{font-size:12px;color:var(--muted)}.deck{display:flex;flex-direction:column;text-align:center;border:1px solid #476165;box-shadow:4px 4px 0 #273e41;border-radius:7px;padding:12px}.deck strong{font:400 30px Georgia,serif}.deck small{font-size:12px;margin-top:8px;color:#b5c5bc}.hand-section{padding:24px 32px}.muted{font-size:14px;color:var(--muted);line-height:1.5}.hand{display:flex;flex-wrap:wrap;gap:10px}.card{width:157px;min-height:126px;text-align:left;border-color:#648275;background:#dbe5ce;color:#233730;display:flex;flex-direction:column;justify-content:space-between;padding:13px;box-shadow:0 3px 0 #0a1516}.card:hover{background:#e9f1dc}.card.selected{outline:3px solid #d8ed89;outline-offset:3px;background:#f0f5df}.card strong{font:500 17px Georgia,serif}.card .alternative{font-size:13px;border-top:1px solid #a0b39a;padding-top:8px;margin-top:10px}.card small{font-size:11px;color:#627b67}.action-head{margin-bottom:15px}.action-head h2{font-size:21px;margin-top:8px}#actions{display:flex;flex-direction:column;gap:8px;max-height:520px;overflow:auto;padding:3px}#actions button{text-align:left;font-size:14px;line-height:1.5}#actions .primary{background:var(--lime);color:#21382b;border-color:var(--lime)}#actions .secondary{background:transparent}#actions p{font-size:14px;line-height:1.6;color:var(--muted);margin:4px 0}.journal{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.journal summary{cursor:pointer;font-size:14px}.journal ol{padding-left:18px;max-height:260px;overflow:auto;font-size:12px;color:var(--muted);line-height:1.6}.journal li{padding:5px 0;border-bottom:1px solid #263c3f}dialog{color:#ecf1de;background:#1b2e30;border:1px solid #65827b;border-radius:12px;width:min(800px,94vw);max-height:86vh;padding:24px}dialog::backdrop{background:#020d11bb}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}#modal-content{font-size:16px;line-height:1.7}#modal-content h3{color:var(--lime)}#modal-content a{color:#cfe791}#modal-content table{border-collapse:collapse;width:100%;font-size:14px}td,th{padding:8px;border-bottom:1px solid var(--line);text-align:left}#error{position:fixed;bottom:20px;left:20px;background:#853e33;padding:12px;border-radius:6px;display:none}.result{padding:18px;border:1px solid var(--lime);border-radius:8px;margin-bottom:12px}.result strong{display:block;font:400 28px Georgia,serif;margin-bottom:10px}@media(max-width:1050px){main{grid-template-columns:minmax(0,1fr) 280px}header{padding:20px}.habitat,.hand-section,.center{padding:20px}.center{gap:12px;grid-template-columns:1fr 100px 90px}.animal{width:160px}.edition{display:none}}@media(max-width:760px){header{align-items:flex-start;gap:16px}h1{font-size:31px}nav{flex-direction:column}nav button{font-size:12px;padding:7px 10px}.notice{padding:10px 20px}main{display:flex;flex-direction:column}aside{border-left:0;border-top:1px solid var(--line);order:-1;padding:18px 20px}.journal{display:none}#actions{max-height:240px;display:grid;grid-template-columns:1fr 1fr}.action-head{margin-bottom:8px}.action-head h2{font-size:18px}.center{grid-template-columns:1fr 70px}.deck{display:none}.animal{width:calc(50% - 6px)}.card{width:calc(50% - 5px)}.eyebrow{letter-spacing:1px}.section-title{flex-wrap:wrap}.habitat{min-height:130px}}
@media(min-width:761px){aside{position:sticky;top:0;align-self:start;max-height:100vh;overflow:auto;min-height:100vh}}
.trait,.links{font-size:14px}.card small{font-size:12px}
@media(min-width:761px){header{padding:18px 24px}h1{font-size:34px}.habitat{padding:16px 24px;min-height:124px}.section-title{margin-bottom:12px}.empty{padding:14px}.center{padding:16px 24px}.hand-section{padding:16px 24px}.hand-section .muted{margin:8px 0 14px}.card{width:calc((100% - 50px)/6);min-width:120px;min-height:112px}.hand-section .section-title button{padding:6px 10px;font-size:14px}}
.card strong{overflow-wrap:anywhere;hyphens:auto}
.territory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.territory{min-width:0;border:1px solid #48615b;border-radius:9px;background:#152c29;padding:10px}.territory.gondwana{background:#302d22;border-color:#6b6145}.territory.ocean{background:#17313c;border-color:#3d6c80}.territory-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px;margin-bottom:10px}.territory h3{margin:0;font:400 19px Georgia,serif}.territory-heading>span{font-size:11px;color:var(--muted)}.territory-animals{display:flex;gap:8px;flex-wrap:wrap}.territory .animal{width:100%;min-width:0}.empty-territory{font-size:12px;color:#9ab2ac;min-height:35px;display:block}.active-territory{outline:2px solid var(--lime);outline-offset:2px}.territory .animal-top{padding:8px 10px}.territory .animal-id{font-size:23px}.territory .trait-list,.territory .links{padding:8px 10px}.disabled-trait{text-decoration:line-through;opacity:.55}.dormant{border-style:dashed;opacity:.75}.regen-note{font-size:12px;margin:0 10px 8px;color:#d8ed89}.three-pools #food-number{display:none}.three-pools #food-dots{display:block}.territory-pool{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #385054;padding:5px}.territory-pool strong{font:400 23px Georgia,serif;color:#f4a18d}.migration-plan{font-size:14px;line-height:1.6;padding:10px;border:1px solid var(--lime);border-radius:7px;background:#263e32}.mode-choices{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mode-choices section{padding:16px;border:1px solid var(--line);border-radius:8px}.mode-choices button{display:block;margin-top:10px;width:100%;}.mode-choices .primary{background:var(--lime);color:#203328}.mode-choices h3{margin-top:0}.center p{max-width:none}@media(min-width:1500px){.territory .animal{width:calc(50% - 4px)}}@media(max-width:760px){.territory-grid{gap:6px}.territory{padding:6px}.territory h3{font-size:15px}.territory .animal-top{flex-wrap:wrap;padding:6px}.territory .animal-food{padding:0 6px 8px}.territory .trait-list,.territory .links{padding:6px}.territory .trait,.territory .links{font-size:11px}.territory .state{font-size:10px}.center{grid-template-columns:1fr 125px}.mode-choices{grid-template-columns:1fr}.migration-plan{grid-column:1/-1}}

.dot.green{background:#9ddf77;border-color:#c4f7a6}.plants-section{padding:20px 24px;background:#162f26;border-bottom:1px solid #46694b}.plants-section[hidden]{display:none}.plants-section .section-title{margin-bottom:6px}.plants-section .section-title button{font-size:13px;padding:6px 10px}.plants-section h2{color:#d8ed89}.plants-section h3{font:400 20px Georgia,serif;color:#cee4b8;margin:14px 0 10px}.plant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.plant-card{text-align:left;background:#254332;border-color:#597958;padding:12px;min-width:0}.plant-card:hover{background:#325840}.plant-card.carnivorous{border-color:#a27365;background:#463b30}.plant-title{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.plant-title strong{font:500 18px Georgia,serif;color:#e3efc4}.plant-title span{font-size:12px;color:#b7ceb0}.plant-tokens{display:flex;gap:4px;align-items:center;flex-wrap:wrap;margin-top:6px}.plant-tokens span{font-size:12px;color:#c6d6bd;margin-left:4px}.plant-traits{font-size:13px;line-height:1.5;margin-top:10px;color:#e0e8d5}.plant-card small{font-size:11px;color:#b7caaa;display:block;margin-top:10px}.plant-territory+.plant-territory{margin-top:18px;padding-top:6px;border-top:1px solid #45634b}@media(max-width:760px){.plants-section{padding:16px 20px}.plant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plant-card{padding:10px}.plant-title{flex-wrap:wrap}.plant-title strong{font-size:16px}.plant-traits{font-size:12px}}

.shells-section{padding:14px 24px;background:#303229;border-bottom:1px solid #536149}.shells-section[hidden]{display:none}.shells-section h2{font-size:16px;color:#e4e5b9}.shells-section p{margin-bottom:0}.mode-choices h3{font-size:18px;line-height:1.4}

/* Original natural-history card illustrations. Text remains outside the image. */
.card-art{display:block;flex-shrink:0;width:100%;aspect-ratio:3/2;background-color:#13332f;background-size:contain;background-position:center;background-repeat:no-repeat;border-radius:5px;overflow:hidden}
.animal>.card-art{border-radius:0;border-bottom:1px solid #496158}
.card>.card-art{margin-bottom:10px}
.card small{margin-bottom:7px}
.card strong{line-height:1.25}
.plant-card>.card-art{margin-bottom:12px}
.plant-grid{align-items:start}
.art-detail{max-width:540px;margin:0 auto 20px;border:1px solid #48645a;border-radius:8px}
.territory .animal>.card-art{aspect-ratio:3/2}
@media(max-width:760px){.card{padding:10px}.plant-card>.card-art{margin-bottom:10px}.territory .animal>.card-art{aspect-ratio:3/2}}

/* Photographed card symbols stay compact and separate from live rules and food. */
.plant-card>.card-art{height:105px;aspect-ratio:auto;background-color:#d9d9c7}
.card>.card-art{height:98px;aspect-ratio:auto;background-color:#d9d9c7}
.art-detail{max-width:360px;background-color:#d9d9c7}
@media(max-width:760px){.plant-card>.card-art,.card>.card-art{height:90px}}

[hidden]{display:none!important}.online-bar{padding:12px 24px;background:#27433d;border-bottom:1px solid #66816b;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.online-bar strong{flex:1;min-width:200px;font-size:14px}.online-bar button{font-size:13px}.online-field{display:block;margin:16px 0}.online-field input,.online-field select{display:block;width:100%;margin-top:8px;background:#122525;color:#e9f0d9;border:1px solid #748e77;border-radius:6px;padding:12px;font:inherit;box-sizing:border-box}button:disabled{opacity:.5;cursor:wait}#modal-content>button{margin:6px 8px 6px 0}

#extra-opponents:empty{display:none}#extra-opponents .habitat{margin-bottom:16px}.result table{margin-top:14px;width:100%;text-align:left}.result th,.result td{padding:7px 4px}

.online-error{padding:10px;border:1px solid #db9476;color:#ffd8c3;border-radius:6px}

.set-builder{margin:20px 0}.set-builder fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.set-builder legend{font-size:17px;font-weight:700;color:#cfdf9f;margin-bottom:12px}.set-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px}.set-choice{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #496259;background:#192f2b;border-radius:9px;cursor:pointer;box-sizing:border-box}.set-choice.chosen{border-color:#b0c874;background:#294232}.set-choice input{margin:4px 0 0;accent-color:#bdcf84;width:18px;height:18px;flex-shrink:0}.set-choice strong,.set-choice small,.set-choice em{display:block}.set-choice small{margin-top:7px;color:#b7c7bc;line-height:1.5}.set-choice em{font-size:12px;font-style:normal;color:#cbd98f;margin-top:9px}.set-choice.unavailable{opacity:.6;cursor:default;border-style:dashed}.set-options,.set-presets,.saved-games{padding:15px 0;border-top:1px solid #425b50}.set-options summary,.set-presets summary,.saved-games summary{cursor:pointer;font-weight:700;color:#d4dfbd}.set-options .set-choice{margin-top:10px}.set-summary{padding:17px;border-left:3px solid #c1d185;background:#213a31;margin:18px 0;border-radius:0 7px 7px 0}.set-summary p{margin:8px 0 0;font-size:14px}.set-summary strong{color:#dce7aa}.set-presets input,.set-presets select{max-width:100%}.saved-games{margin-top:20px}button:disabled,input:disabled{cursor:not-allowed}
