:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#e8f1e6;background:#101b16}*{box-sizing:border-box}body{margin:0}header{padding:17px 25px;background:#1a2d22;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #395240}h1{font-size:26px;margin:0}h1 small{font-size:15px;color:#9bcca4;font-weight:400}header p{margin:5px 0 0;color:#b9c9bb;font-size:13px}.date{font-weight:700;color:#d5e5b7}main{display:grid;grid-template-columns:235px minmax(300px,1fr) 265px;gap:14px;padding:14px;max-width:1600px;margin:auto}aside,.game{background:#1a2b22;border:1px solid #334a38;border-radius:13px;padding:15px;min-width:0}h2{font-size:17px;margin:4px 0 12px}.tools{display:grid;grid-template-columns:1fr 1fr;gap:7px}button,.import{cursor:pointer;color:#e8f1e6;background:#2b4935;border:1px solid #517057;border-radius:8px;padding:10px;font:inherit;font-size:13px;text-align:left;display:block;width:100%;margin-bottom:7px}button:hover,.import:hover{background:#40694c}.tools button{min-height:54px;text-align:center;margin:0}.tools button.active{outline:3px solid #c4e28e;background:#47704a}.danger{background:#563c37}.hint{color:#aebfb0;font-size:12px;line-height:1.5}.import input{display:none}.bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:13px;margin-bottom:10px}.mapwrap{max-width:900px;margin:auto;touch-action:none}canvas{display:block;width:100%;height:auto;image-rendering:auto;touch-action:none;cursor:crosshair;border:2px solid #647c59;border-radius:7px}#metrics .metric{margin:13px 0} .metric div{display:flex;justify-content:space-between;font-size:13px}.track{height:8px;background:#34483a;border-radius:5px;overflow:hidden;margin-top:5px}.fill{height:100%;background:#9bc77a}.animal{padding:10px;background:#263e2d;border-radius:9px;margin:8px 0;font-size:13px}.animal strong{display:block;margin-bottom:4px}.animal small{color:#b7cdb4}.advice{padding:9px;border-left:3px solid #c2ce86;background:#293b2b;margin:9px 0;font-size:13px;line-height:1.45}#notice{font-size:12px;min-height:30px;color:#c5e7a0}@media(max-width:1050px){main{grid-template-columns:200px minmax(250px,1fr)}.stats{grid-column:1/-1}}@media(max-width:700px){header{padding:12px;align-items:flex-start}header h1{font-size:21px}main{display:flex;flex-direction:column;padding:8px;gap:8px}aside,.game{padding:11px}.tools{grid-template-columns:repeat(4,1fr)}.tools button{font-size:11px;padding:6px 2px;min-height:53px}.date{font-size:12px}.bar{font-size:11px}}

.mapcontrols{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:9px}.mapcontrols button{width:auto;margin:0;text-align:center;padding:7px 10px}.mapcontrols span{font-size:12px;color:#c2d7bd}.mapcontrols button.active{background:#5b8150;outline:2px solid #c4e28e}

/* Version 0.3: Wissensbereich */
.species-card,.quiz-card{background:#eef5e9;color:#223b2c;border:1px solid #c8d9bc;border-radius:12px;padding:14px;margin:10px 0}.species-head{display:flex;gap:12px;align-items:center}.species-head>span{font-size:38px}.species-head small{display:block;color:#526a57}.species-card p,.quiz-card p{line-height:1.5}.species-card a{color:#226d4a;font-weight:600}.species-picks{display:flex;gap:5px;flex-wrap:wrap}.species-picks button{width:auto;padding:7px 9px;font-size:12px}.quiz-card button{display:block;margin:6px 0;width:100%;text-align:left}.quiz-card button:disabled{opacity:.6}#quiz-feedback{font-weight:700;padding:5px}#inspect.active{background:#b8e2bb;color:#153f25}

.learning-toggle{display:flex;align-items:center;gap:8px;padding:12px;background:#e6efdf;color:#203c2b;border-radius:9px;font-weight:700}.learning-toggle input{width:20px;height:20px;accent-color:#357c50}#learningpanel[hidden]{display:none!important}

/* 0.6: calmer, more immersive forest UI */
:root{--rev-forest:#173e2e;--rev-moss:#72975b}
body{background:linear-gradient(135deg,#e7ecdd,#f6f2e7 54%,#e4e9da)}
header{background:linear-gradient(115deg,#123b2e,#23533a 65%,#52724d)!important}
.mapwrap{box-shadow:0 12px 36px rgba(23,50,29,.22),inset 0 0 0 3px rgba(255,255,255,.2);border-radius:14px;overflow:hidden}
#map{image-rendering:auto;touch-action:none}
button{transition:background-color .16s,transform .16s}
button:active{transform:scale(.97)}
/* Artwork edition 0.7 */
body{background:#e8e8dc;color:#e5eadf}header{padding:24px 30px;border-bottom:3px solid #a2a777}h1{font-family:Georgia,serif;letter-spacing:3px;font-size:32px}h1 small{letter-spacing:1px;margin-left:10px}main{max-width:1800px;grid-template-columns:220px minmax(340px,1fr) 250px}aside,.game{background:#20372e;border-color:#3c5244;border-radius:16px}.game{padding:14px;background:#152c23}.date{padding:10px 16px;background:#ffffff10;border:1px solid #ffffff20;border-radius:30px}.bar{padding:8px 4px;color:#d6ddc5}.mapwrap{border-radius:12px}#map{border:0}.tool-art{display:block;width:55px;height:53px;margin:0 auto 4px;background-image:url('art/woodland.webp');background-size:220px 159px;background-repeat:no-repeat;font-size:30px;line-height:50px}.art-deciduous{background-position:0 0}.art-conifer{background-position:-55px 0}.art-hedge{background-position:0 -53px}.art-deadwood{background-position:-55px -53px}.art-flowers{background-position:-110px -53px}.art-wetland{background-position:-165px -53px}.art-mountain{background-position:0 -106px}.art-field{background-position:-165px -106px}.art-meadow,.art-water,.art-path{background-image:none}.tools button{background:#294337;border-color:#48604d;padding:6px;font-size:12px}.tools button.active{background:#496348;outline:2px solid #d9d59b}.edition{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#d5d2a4;margin-top:8px}button:focus-visible{outline:3px solid #e0d8a0;outline-offset:2px}.mapcontrols button{font-size:12px}@media(max-width:1050px){main{grid-template-columns:190px minmax(250px,1fr)}}@media(max-width:700px){header{padding:15px}h1{font-size:24px}h1 small{display:block;margin:4px 0 0;font-size:13px}main{display:flex}.game{order:-1}.tools{grid-template-columns:repeat(4,1fr)}.tool-art{height:48px}.date{font-size:11px;padding:8px}.mapcontrols button{font-size:11px;padding:8px}.mapcontrols span{font-size:10px}}
/* 0.8: searchable learning library and accessible native settings dialog */
[hidden]{display:none!important}input:not([type=checkbox]):not([type=file]),select,textarea{font:inherit;color:#203b2c;background:#f5f5e9;border:1px solid #99ab8f;border-radius:8px;padding:10px;width:100%;min-width:0}input[type=checkbox]{width:20px;height:20px;accent-color:#3b6949;flex-shrink:0}#card-library>label,#edit-form>label,.editor-nav>label{display:block;font-size:12px;font-weight:600;margin:12px 0 6px}#card-library select{font-size:12px}.card-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.species-card h3{margin:8px 0;font-family:Georgia,serif;font-size:22px}.card-category{color:#526744;font-size:11px}.custom-badge{display:block;width:max-content;background:#e4d7a6;color:#5d4c1d;font-size:11px;border-radius:12px;padding:3px 8px;margin-top:9px}.edit-card-link{margin:16px 0 0;text-align:center}.species-card a{font-size:12px;overflow-wrap:anywhere}dialog{width:min(1060px,96vw);max-height:92dvh;padding:0;border:1px solid #56705a;border-radius:18px;background:#f1f0e5;color:#213b2b;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#081c15b8;backdrop-filter:blur(4px)}.settings-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px 26px;background:#1e4030;color:#eef1df;border-radius:17px 17px 0 0}.settings-head h2{font-family:Georgia,serif;font-size:30px;margin:6px 0}.settings-head p{font-size:13px;margin:0;color:#cad3b7}.settings-head button{width:auto;margin:0;flex-shrink:0}.settings-body{padding:20px 26px}.settings-body .hint{color:#5e6c5c}.settings-switches{display:flex;gap:24px;flex-wrap:wrap}.settings-switches label,.editor-heading label{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:600}.settings-toolbar,.editor-actions{display:flex;gap:8px;flex-wrap:wrap}.settings-toolbar button,.settings-toolbar .import{width:auto;margin:0;font-size:12px}#cards-status{min-height:26px;font-size:13px;color:#385b32;margin:12px 0}.editor-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:24px;border-top:1px solid #c8cebb;padding-top:8px}.editor-nav{min-width:0}#card-editor-list{max-height:550px;overflow:auto;padding:3px}.editor-nav button{background:#e3e8d8;color:#294230;border-color:#bdc9b2;font-size:12px;line-height:1.5}.editor-nav button.selected{background:#32533a;color:white;outline:2px solid #9da76b}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.editor-heading h3{font-family:Georgia,serif;font-size:24px;margin:4px 0}.editor-heading small{font-size:11px;color:#5b7054}.editor-heading label{font-size:12px}.editor-actions button{width:auto}#edit-save{background:#315d3c}#edit-reset{background:#e1e5d5;color:#30452d;border-color:#a3b295}#edit-reset:disabled{opacity:.5;cursor:default}#edit-dirty{font-size:12px;color:#6c6634}textarea{resize:vertical;line-height:1.5}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #acb474;outline-offset:2px}@media(max-width:700px){dialog{width:96vw;max-height:94dvh}.settings-head{padding:15px}.settings-head h2{font-size:24px}.settings-head button{font-size:11px}.settings-body{padding:15px}.editor-layout{grid-template-columns:1fr;gap:10px}#card-editor-list{max-height:160px}.editor-heading{align-items:flex-start;flex-direction:column}.settings-switches{gap:12px}.settings-toolbar button,.settings-toolbar .import{flex:1 1 42%;text-align:center}#edit-text{min-height:300px}.editor-actions button{width:100%}}
/* 0.9: independent audio controls */
#sound-panel{padding:14px 0;margin:12px 0;border-top:1px solid #53634c;border-bottom:1px solid #53634c}.sound-switch{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;margin:12px 0 9px}.volume-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:8px;color:#d4dcc8}.volume-label output{font-variant-numeric:tabular-nums;white-space:nowrap}.master-label{margin-top:18px;font-weight:700}#sound-panel input[type=range]{width:100%;min-height:30px;padding:0;background:transparent;accent-color:#c2cf93;border:0;cursor:pointer}#audio-start{margin-top:10px;text-align:center}#audio-status{margin:8px 0;min-height:36px}.sound-info{font-size:11px;color:#c3ceb8;line-height:1.5}.sound-info summary{cursor:pointer}.sound-info p{margin:8px 0}#sound-panel h2{font-size:17px}
/* 0.10: photographic learning galleries and local image editor */
.card-gallery h4{font-size:13px;margin:18px 0 10px}.learning-gallery{display:grid;gap:14px;grid-template-columns:1fr}.learning-gallery figure{margin:0;padding:8px;border:1px solid #c9d1bd;border-radius:10px;background:#fafaf1}.gallery-thumb{border:0;padding:0;background:#e8ecdf;margin:0;overflow:hidden;border-radius:6px}.gallery-thumb:hover{background:#e0e6d6}.gallery-thumb img{display:block;width:100%;height:160px;object-fit:contain}.learning-gallery figcaption{font-size:12px;line-height:1.45;margin-top:7px;color:#28422e}.image-credit{font-size:10px;line-height:1.4;color:#52614e;overflow-wrap:anywhere;margin:6px 0 0}.image-credit a{font-size:10px!important}.image-note{font-size:12px;line-height:1.5;border-left:3px solid #8c9c5d;padding:8px;background:#e4ead8}.missing-image{min-height:90px}#image-viewer{width:min(1000px,96vw);padding:16px;background:#f5f4e9}#image-viewer-close{width:auto;margin:0 0 12px auto;position:sticky;top:0;z-index:1}#image-viewer-body>img{display:block;max-width:100%;max-height:70dvh;object-fit:contain;margin:auto}#image-viewer .image-caption{line-height:1.5;color:#274330}#image-editor{margin:18px 0;padding:14px;background:#e6eadc;border-radius:10px}#image-editor h4{margin:0 0 12px}.image-editor-item{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid #c7ceb9}.image-editor-item>img{width:115px;height:110px;object-fit:contain;background:#fff;border-radius:6px}.image-editor-item label{display:block;font-size:11px;font-weight:600;margin-bottom:7px}.image-editor-item input{font-size:12px;margin-top:3px}.image-editor-item input[readonly]{background:#edf0e3;color:#59674d}.image-editor-item button{font-size:11px;margin:8px 0}.image-editor-item small{font-size:10px}.image-upload-label{display:block;margin:14px 0 4px;font-size:13px;font-weight:600}.image-upload-label input{display:block;margin-top:8px;width:100%;font-size:12px}#image-editor-status{font-size:12px;line-height:1.5;color:#405b32}#images-default{font-size:12px;margin-top:10px}@media(max-width:1050px){.learning-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.learning-gallery{grid-template-columns:1fr 1fr}.gallery-thumb img{height:145px}.image-editor-item{grid-template-columns:1fr}.image-editor-item>img{width:100%;height:150px}#image-editor{padding:10px}.image-credit{font-size:9px}.learning-gallery figcaption{font-size:11px}}@media(max-width:370px){.learning-gallery{grid-template-columns:1fr}}
/* 0.11: all populations above the map; compact on phones. */
.wildlife-bar{margin-bottom:12px}.wildlife-bar h2{display:flex;justify-content:space-between;gap:10px}.wildlife-bar h2 small{font-weight:400;font-size:12px;color:#abc4a7}#animals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}#animals button{margin:0;padding:8px;font-size:11px;min-height:38px;overflow-wrap:anywhere;background:#294c36;color:#f0f5e5}#hunt-alert{background:#f4e6b9;color:#463b1b;border:1px solid #cbb36a;border-radius:10px;padding:12px;margin:10px 0}#hunt-alert[hidden]{display:none}#hunt-alert p{font-size:13px;line-height:1.5}#hunt-focus{width:auto}#hunt-toggle{width:auto}#hunt-toggle.active{background:#705424;outline:2px solid #d9bd73}#hunt-toggle:disabled{opacity:.5;cursor:default}#map.hunting{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg fill='none' stroke='%23000' stroke-width='3'%3E%3Ccircle cx='20' cy='20' r='13'/%3E%3Cpath d='M20 0v14m0 12v14M0 20h14m12 0h14'/%3E%3C/g%3E%3Cg fill='none' stroke='%23fff' stroke-width='1'%3E%3Ccircle cx='20' cy='20' r='13'/%3E%3Cpath d='M20 0v14m0 12v14M0 20h14m12 0h14'/%3E%3C/g%3E%3C/svg%3E") 20 20,crosshair}#hunt-result{width:min(780px,94vw);max-height:90dvh;overflow:auto;background:#f5f4e9;color:#243d2b;border-radius:14px;padding:20px}#hunt-result .settings-head{position:sticky;top:-20px;background:#f5f4e9;z-index:1}#hunt-result-close{width:auto}#hunt-result .learning-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){#animals{grid-template-columns:repeat(3,minmax(0,1fr))}#hunt-result{padding:12px}#hunt-result .settings-head{top:-12px}#hunt-result .learning-gallery{grid-template-columns:1fr 1fr}.wildlife-bar h2{font-size:15px}}

/* 0.11.1: responsive sponsor banner below the game. */
.sponsor{max-width:1200px;margin:12px auto 32px;padding:0 14px}.sponsor-label{font-size:10px;letter-spacing:.16em;color:#52634e;margin:0 0 8px}.sponsor-link{display:block;text-decoration:none;overflow:hidden;border:1px solid #52634e;border-radius:12px;background:#171c17;box-shadow:0 8px 24px #16241722}.sponsor-link:focus-visible{outline:3px solid #6b8b45;outline-offset:4px}.sponsor-link img{display:block;width:100%;height:auto}.sponsor-caption{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;color:#eee9d8;font-size:13px;letter-spacing:.03em}.sponsor-link:hover .sponsor-caption{background:#293523}@media(max-width:700px){.sponsor{padding:0 8px;margin-bottom:22px}.sponsor-caption{font-size:12px;padding:10px 12px}}

/* 0.12: species choice, calendar and harvest */
#tree-picker{margin:12px 0;padding:12px;background:#edf2e5;border-radius:10px}#tree-picker label,#month-dialog label{display:block;font-weight:700;margin-bottom:6px}#tree-select,#month-pick{width:100%;padding:10px;min-width:0}#month-open{margin:0;text-align:right;background:transparent;border:0}#month-open strong,#month-open small{display:block}#season-month{margin-top:4px;font-size:.85rem}.harvest{padding:16px;border:1px solid #d4dbc9;border-radius:12px;margin-top:16px;background:#f8f8f0}.harvest h2{margin:0 0 12px}.harvest h2 small{display:block;font-size:.9rem;margin-top:6px}#harvest-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;list-style:none;padding:0;margin:0}#harvest-list li{padding:8px;background:#eaf0e2;border-radius:6px}#month-dialog{width:min(680px,calc(100% - 24px));max-height:88vh;overflow:auto;border:0;border-radius:16px;padding:22px;box-sizing:border-box}#month-dialog::backdrop{background:#102318aa}#month-dialog .settings-head{gap:12px;align-items:start}#month-events article{padding:12px 0;border-bottom:1px solid #d6ddcd}#month-events h3{margin:0 0 6px;font-size:1rem}#month-events p{margin:0 0 6px;line-height:1.5}#month-events a{font-size:.8rem;color:#356d44}@media(max-width:500px){#month-dialog{padding:16px}#month-dialog .settings-head{flex-wrap:wrap}.bar{align-items:center}#month-open{padding:8px}}

#tree-picker,.harvest{color:#203f2e}#tree-picker .hint,.harvest .hint{color:#52634e}

/* 0.13: gesture feedback and habitat explanation */
#map.dragging{cursor:grabbing}#map{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.population-info{border-top:1px solid #53634c;padding-top:10px;margin:10px 0;color:#d9e4d4;font-size:12px;line-height:1.5}.population-info summary{cursor:pointer;font-weight:700}.population-info a{color:#c5e7a0}#habitat-targets{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:5px;list-style:none;padding:0}#wildlife-summary{font-weight:600}#month-open{width:auto}

/* 0.14: player population setting, path visitors and hunting lessons. */
#population-panel{padding:14px 0;margin:12px 0;border-top:1px solid #a5b393;border-bottom:1px solid #a5b393}#population-panel label{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px}#population-value{font-weight:800;font-size:20px;white-space:nowrap}#population-level{width:100%;margin:14px 0 6px;accent-color:#547341;min-height:28px}.range-ends{display:flex;justify-content:space-between;font-size:11px;color:#536448}.visitors-panel{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;margin:12px 0;background:#edf1e5;border:1px solid #b9c8ab;border-radius:10px}.visitors-panel>div{flex:1}.visitors-panel p{margin:5px 0;font-size:12px}.visitors-panel .hint{flex-basis:100%;color:#4c6245}.visitors-panel button{width:auto;margin:0}.hunting-info{font-size:12px;line-height:1.6;margin:12px 0}.hunting-info summary{font-weight:700;cursor:pointer}.hunting-info a{color:inherit}#hunt-result.warning{border:3px solid #b36735}#hunt-result.warning #hunt-result-title{color:#8e3c19}#hunt-result-message{white-space:pre-line;line-height:1.6}#hunt-season-info{color:#506148;border-top:1px solid #bcc8b0;padding-top:8px}#hunt-season-info a{color:#375c35}#hunt-result .settings-head{gap:12px;align-items:start}#hunt-result-title{flex:1}#hunt-result-close{flex-shrink:0}@media(max-width:500px){#hunt-result .settings-head{flex-wrap:wrap}#hunt-result-title{flex-basis:100%}.visitors-panel button{width:100%}}
.visitors-panel{color:#243d2b}.range-ends{color:#c4d1b9}

/* 0.15: time/save controls above map; visitors in sidebar. */
.simulation-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px;margin:12px 0;background:#edf1e5;color:#243d2b;border:1px solid #b9c8ab;border-radius:10px}.simulation-panel h2,.simulation-panel #notice{grid-column:1/-1;margin:0}.simulation-panel button,.simulation-panel .import{width:100%;margin:0;box-sizing:border-box}.simulation-panel h2{font-size:16px;margin-bottom:4px}.simulation-panel #notice{color:#243d2b}aside .visitors-panel button{width:100%}

/* 0.16: map and planting tools together at the top. */
header{padding:12px 24px}header p{margin-bottom:0}main{align-items:start}.game{display:flex;flex-direction:column}.game>.bar{order:0}.game>.mapcontrols{order:1}.game>.mapwrap{order:2;width:100%}.game>.simulation-panel{order:3}.game>.wildlife-bar{order:4}.game>#hunt-alert{order:5}.game>.hint{order:6}.game>.hunting-info{order:6}.game>.harvest{order:7}.settings-panel{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px}.settings-panel>h2{grid-column:1/-1}.settings-panel #sound-panel,.settings-panel #population-panel,.settings-panel .visitors-panel{margin:0}.mapcontrols #hunt-toggle{display:inline-flex;align-items:center;gap:7px}.rifle-icon{display:inline-block;width:34px;height:20px;flex-shrink:0;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 32'%3E%3Cpath d='M2 24l15-10h18V9h10v4h17v4H36l-5 4 3 9h-7l-3-7h-6L6 30zM29 5h15v4H29z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 32'%3E%3Cpath d='M2 24l15-10h18V9h10v4h17v4H36l-5 4 3 9h-7l-3-7h-6L6 30zM29 5h15v4H29z'/%3E%3C/svg%3E") center/contain no-repeat}#hunt-toggle.active{background:#7c5832;outline:2px solid #e4c47a}.mapcontrols #zoomlevel,.mapcontrols #coords{flex-basis:auto}@media(max-width:700px){header{padding:10px 12px}.settings-panel{display:block}.settings-panel>section{margin-top:14px!important}.game>.mapcontrols{gap:6px}.mapcontrols button{font-size:12px;padding:8px}.game>.mapwrap{margin-bottom:10px}.simulation-panel{grid-template-columns:repeat(2,minmax(0,1fr))}main>aside:first-child>.hint{display:none}}
@media(max-width:700px){main>aside:first-child{order:0}main>.game{order:1}main>.stats{order:2}main>.settings-panel{order:3}}

/* 0.17: framed woodland depth, scene lighting is rendered in canvas. */
.depth-scene{border:1px solid #8a9b7480;box-shadow:0 14px 32px #06180f66,inset 0 0 0 1px #b5bd8f40;background:#344b30}.mapcontrols{padding:5px 0 9px}.edition{color:#e0d7a2}

/* 0.20: field notebook and learning challenges. */
.game>.field-panel{order:4}.field-panel{padding:16px;margin:10px 0;background:#eef0e2;border:1px solid #b7c39c;border-radius:12px;color:#233c2a}.field-panel .hint{color:#526348}.field-panel a{color:#315a38}#mission-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-mission{padding:12px;border:1px solid #c3cfb3;border-radius:8px;background:#faf9ef}.field-mission h3{margin:0 0 8px;font-size:14px}.field-mission p,.field-mission small{font-size:12px;line-height:1.5;margin:4px 0}.field-mission progress{width:100%;height:12px;accent-color:#5b7e43}.field-panel details{margin:14px 0}.field-panel summary{cursor:pointer;font-weight:700}#trace-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}#trace-list button{margin:0;font-size:12px}#behavior-status{padding:10px;background:#d9e3cb;border-radius:6px;font-size:13px}#trace-dialog{width:min(760px,94vw);max-height:90dvh;overflow:auto}#trace-dialog .settings-head h2{font-size:22px}.trace-body{padding:18px}#trace-sketch{width:200px;height:160px;background:#ddd6b8;margin:auto;border-radius:12px;cursor:default}#trace-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}#trace-answer{line-height:1.6}#trace-answer a{color:#315c39}#trace-choices button:disabled{opacity:.55}.field-panel #field-summary{font-weight:700;font-size:13px}@media(max-width:600px){#mission-list,#trace-list{grid-template-columns:1fr}#trace-dialog .settings-head{flex-wrap:wrap}.trace-body{padding:12px}}

/* 0.21: passive minimap above the fixed near view. */
.game>.minimap-panel{order:-1}.minimap-panel{display:flex;gap:16px;align-items:center;margin-bottom:12px;padding:12px;background:#e7ecdc;color:#294431;border:1px solid #aaba95;border-radius:12px}.minimap-panel>div{min-width:0}.minimap-panel h2{font-size:15px;margin-bottom:6px}.minimap-panel p{font-size:12px;line-height:1.45;margin:6px 0}.minimap-panel .hint{color:#526447}#minimap{width:136px;height:136px;flex:0 0 136px;cursor:default;pointer-events:none;touch-action:auto;border:2px solid #657d52;border-radius:4px;image-rendering:pixelated}.minimap-panel strong{font-size:14px}#day-phase{display:block;color:#32593b}@media(max-width:600px){.minimap-panel{gap:10px;padding:10px;align-items:flex-start}#minimap{width:96px;height:96px;flex-basis:96px}.minimap-panel p{font-size:11px}.minimap-panel h2{font-size:13px}.minimap-panel .hint{display:none}}

/* 0.22: control row beside minimap, without the explanatory paragraphs. */
.minimap-tools{flex:1;min-width:0}.minimap-tools .bar{padding:0;margin-bottom:6px}.minimap-tools .mapcontrols{padding:0;margin:6px 0 0}.sky-status{display:flex;gap:12px;flex-wrap:wrap;font-size:12px}.minimap-tools .mapcontrols span{color:#496344}.minimap-tools #day-phase{font-size:12px}.minimap-panel{align-items:center}.minimap-tools #month-open{color:#294431;padding:4px}#weather-status{color:#4d674d}.minimap-tools .mapcontrols button{font-size:12px}.minimap-tools .bar>span{font-size:11px}@media(max-width:600px){#minimap{width:84px;height:84px;flex-basis:84px}.minimap-panel{align-items:flex-start}.minimap-tools .bar{font-size:10px}.minimap-tools .mapcontrols{gap:5px}.minimap-tools .mapcontrols button{font-size:10px;padding:7px}.minimap-tools .mapcontrols span{font-size:10px}.sky-status{gap:5px}.minimap-tools #month-open{font-size:10px}}
.minimap-tools .bar{color:#294431}.minimap-tools .mapcontrols button span{color:#f0f3e8}.minimap-tools .mapcontrols #hunt-toggle.active span{color:#fff1c4}

/* 0.24: forest ecology explanations. */
.forest-report{padding:10px 0;border-bottom:1px solid #5a6a52;margin-bottom:12px;font-size:12px;line-height:1.5}.forest-report summary{font-weight:700;cursor:pointer}.forest-report p{color:#c8d3be}#forest-dialog{width:min(800px,94vw);max-height:90dvh;overflow:auto}#forest-dialog .settings-head{gap:12px;flex-wrap:wrap}#forest-dialog .settings-head h2{font-size:23px}.forest-body{padding:20px;line-height:1.65}.forest-body .hint{color:#59694d}.forest-body a{color:#35603c}.forest-body h3{font-size:17px}@media(max-width:600px){.forest-body{padding:14px}#forest-dialog .settings-head h2{font-size:19px}}

/* 0.25: fullscreen scene, shared controls, safe areas and mobile fallback. */
#play-view{order:-1;width:100%;min-width:0}#play-view .mapwrap{width:100%}.mapcontrols #explore-toggle.active{background:#496348;outline:2px solid #d9d59b}
body.scene-expanded{overflow:hidden}#play-view.expanded{position:fixed;inset:0;z-index:1000;width:100%;height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px;background:#10251c;padding:max(6px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));color:#ecf2e6}
#play-view.expanded .minimap-panel{margin:0;padding:0;background:transparent;border:0;border-radius:0}#play-view.expanded #minimap,#play-view.expanded .bar,#play-view.expanded .sky-status,#play-view.expanded #zoomlevel,#play-view.expanded #coords,#play-view.expanded #track-search{display:none}#play-view.expanded .mapcontrols{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}#play-view.expanded .mapcontrols button{min-height:44px;font-size:12px;padding:8px 10px;margin:0;width:auto;flex:1 1 auto;text-align:center;justify-content:center}#play-view.expanded .minimap-tools{width:100%}#play-view.expanded .mapwrap{height:100%;min-height:0;max-width:none;margin:0;display:grid;place-items:center;box-shadow:none;border:0;border-radius:0;overflow:hidden}#play-view.expanded #map{max-width:100%;max-height:100%;border-radius:6px;flex:none}
@media(max-width:420px){#play-view.expanded .mapcontrols{gap:4px}#play-view.expanded .mapcontrols button{font-size:11px;padding:6px;flex-basis:44%}}

#fullscreen-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px}#fullscreen-toggle svg{flex-shrink:0}

/* 0.26: compact fullscreen planting and stock warning. Reuse the original controls. */
#fullscreen-planting,#fullscreen-hunt-alert{display:none}#play-view.expanded #fullscreen-planting{display:flex;gap:6px;align-items:center;margin-top:6px;min-width:0}#play-view.expanded #tools{display:flex;gap:5px;overflow-x:auto;flex:1;min-width:0;padding:3px;scrollbar-width:thin;overscroll-behavior-x:contain}#play-view.expanded #tools button{flex:0 0 44px;width:44px;height:44px;min-height:44px;font-size:0;padding:3px;margin:0;touch-action:manipulation}#play-view.expanded #tools .tool-art{width:36px;height:36px;margin:0;font-size:24px;line-height:36px;background-size:144px 108px}#play-view.expanded .art-conifer{background-position:-36px 0}#play-view.expanded .art-hedge{background-position:0 -36px}#play-view.expanded .art-deadwood{background-position:-36px -36px}#play-view.expanded .art-flowers{background-position:-72px -36px}#play-view.expanded .art-wetland{background-position:-108px -36px}#play-view.expanded .art-mountain{background-position:0 -72px}#play-view.expanded .art-field{background-position:-108px -72px}#play-view.expanded #tree-picker{flex:0 1 125px;min-width:95px}#play-view.expanded #tree-picker label,#play-view.expanded #tree-picker p{display:none}#play-view.expanded #tree-select{min-height:44px;font-size:12px;padding:6px}#play-view.expanded #fullscreen-hunt-alert{display:block;width:100%;margin:5px 0 0;padding:5px 8px;min-height:32px;font-size:12px;line-height:1.3;background:#6a4b28;color:#fff0bb;border:1px solid #c5a458;border-radius:6px}
#play-view.expanded{grid-template-columns:minmax(0,1fr)}#play-view.expanded .mapwrap{min-width:0}#play-view.expanded .minimap-panel{min-width:0}

.tool-art svg{display:block;width:100%;height:100%}#play-view.expanded #tree-picker{margin:0;padding:0;border:0;border-radius:0;background:transparent}

/* 0.28: one compact armory button, usable in fullscreen and normal view. */
#armory-open{display:inline-flex;align-items:center;gap:5px;max-width:100%;min-width:0}#armory-open .rifle-icon{width:26px}#armory-current{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#play-view.expanded .mapcontrols #armory-open{flex:0 1 220px}#play-view.expanded #armory-current{color:#f0f3e8}#armory-dialog{width:min(850px,96vw);max-height:92dvh;overflow:auto}.armory-body{padding:20px;line-height:1.5}.armory-body p{font-size:13px}.armory-body a,#ammo-result a{color:#315d37}.armory-body .hint{color:#53684f}.armory-picks{display:grid;grid-template-columns:1fr 1fr;gap:12px}.armory-picks label{font-size:12px;font-weight:700}.armory-picks select{display:block;margin-top:5px;font-size:13px;min-height:44px}#ammo-wildlife{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:15px}.ammo-species{border-left:4px solid #568451;border-radius:6px;background:#e3ebd8;padding:8px;font-size:12px}.ammo-species span{display:block;font-size:11px;margin-top:3px}.ammo-species.law,.ammo-species.protected{border-color:#ac4938;background:#f1dfd3}.ammo-species.advice{border-color:#b38b2d;background:#efe8cb}#ammo-result{margin:12px 18px;padding:14px;background:#e5e9d4;border:1px solid #adb793;border-radius:8px;color:#263d2a}#ammo-result h3{font-size:15px;margin:0 0 7px}#ammo-result p{font-size:13px;margin:6px 0;line-height:1.5;white-space:pre-line}#hunt-result.warning #ammo-result{background:#f4e6d3;border-color:#be9470}@media(max-width:600px){.armory-body{padding:14px}.armory-picks{grid-template-columns:1fr}#ammo-wildlife{grid-template-columns:1fr 1fr;gap:5px}#armory-dialog .settings-head{padding:14px;flex-wrap:wrap}#armory-dialog .settings-head h2{font-size:23px}#ammo-result{margin:10px;padding:10px}}@media(max-width:420px){#play-view.expanded .mapcontrols #armory-open{flex:1 1 44%}}

/* 0.30: optional fullscreen orientation, habitat advice and device transfer. */
#minimap-toggle{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#play-view.expanded #minimap-toggle{display:block}#play-view.expanded .minimap-panel{position:relative;display:flex;align-items:flex-start;gap:8px}#play-view.expanded #minimap{display:block;width:100px;height:100px;flex:0 0 100px;margin-top:3px}#play-view.expanded.hide-mini #minimap{display:none}#play-view.expanded .minimap-tools{flex:1;min-width:0}#play-view.expanded .bar{display:flex;margin:0 0 3px;padding:0;justify-content:flex-start;gap:4px}#play-view.expanded .bar>span{display:none}#play-view.expanded #month-open{display:flex;align-items:center;gap:7px;width:auto;color:#edf3df;padding:0;min-height:20px;margin:0;background:none;border:0;font-size:11px}#play-view.expanded #month-open strong,#play-view.expanded #month-open small{font-size:11px;margin:0}#play-view.expanded .sky-status{display:block;font-size:11px;margin-bottom:4px}#play-view.expanded #day-phase{display:block;color:#edf3df;font-size:11px}#play-view.expanded #weather-status{display:none}#habitat-tip-summary{font-size:13px;font-weight:600}#habitat-tip-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}#habitat-tip-list details{margin:0;padding:10px;border:1px solid #b6c4a4;border-radius:7px;background:#f7f7ed;font-size:12px}#habitat-tip-list summary{font-size:12px}#habitat-tip-list p{line-height:1.6}.transfer-body{padding:20px;line-height:1.5}.transfer-body label{font-size:12px}.transfer-body input{margin:6px 0 10px}.transfer-body .hint{color:#53684d;font-size:12px}#transfer-dialog{width:min(740px,96vw);max-height:92dvh;overflow:auto}#transfer-dialog .settings-head{flex-wrap:wrap}#transfer-dialog .settings-head h2{font-size:24px}#transfer-status{font-size:14px;min-height:44px;color:#29472e}#transfer-qr{width:min(330px,100%);height:auto;margin:12px auto;background:#fff;border:0;border-radius:0}#transfer-video{width:100%;max-height:300px;object-fit:contain;background:#17261f;border-radius:8px}.transfer-actions{display:flex;gap:8px;margin:12px 0}.transfer-actions>*{flex:1;width:auto;margin:0}#transfer-preview{padding:12px;background:#e0e8d4;border-radius:8px;margin:12px 0}#transfer-preview h3{margin:0 0 6px}#transfer-apply{background:#477448}#transfer-code{font-family:monospace;font-size:11px}#transfer-code:placeholder-shown{display:none}@media(max-width:600px){#habitat-tip-list{grid-template-columns:1fr}.transfer-body{padding:14px}#play-view.expanded #minimap{width:68px;height:68px;flex-basis:68px}#play-view.expanded .minimap-panel{gap:5px}#play-view.expanded .mapcontrols button{font-size:10px;padding:5px;min-height:40px}#play-view.expanded .mapcontrols .rifle-icon{width:23px}#play-view.expanded #armory-current{font-size:10px}}@media(max-height:500px){#play-view.expanded .minimap-panel{gap:6px}#play-view.expanded #minimap{width:76px;height:76px;flex-basis:76px}#play-view.expanded .mapcontrols{flex-wrap:nowrap}#play-view.expanded .mapcontrols button{font-size:10px;padding:5px;min-height:36px;flex:0 1 auto}#play-view.expanded .mapcontrols #armory-open{flex:0 1 180px}#play-view.expanded #tools button{min-height:38px;height:38px;flex-basis:40px}#play-view.expanded #tree-select{min-height:38px}}
