/* Village view: the landscape comes first; detailed work opens in context. */
:root{--dim:#d4d5c1;--mute:#a9ad98;--gold:#e4c88d;--line:#c6c3a32b}
#c{touch-action:none}
#object-hint{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);pointer-events:none;z-index:9;color:#f3e9cd;background:#233d30ed;border:1px solid #b8ad7b55;padding:7px 12px;font-size:12px;letter-spacing:.025em}
#object-hint:empty{display:none}
body.placing #object-hint{display:none}
@media(max-width:760px){#object-hint{bottom:auto;top:101px;max-width:calc(100vw - 40px);white-space:nowrap;font-size:10px}}
#c{filter:saturate(.78) contrast(.97);background:#294537}
.pane{background:linear-gradient(130deg,#263a30f5,#16291ff5);border:1px solid #92826077;box-shadow:0 4px 18px #11211940;border-radius:3px}
.pane::before{display:none}
.paper{background:#e9dfc2;color:#352f21;border-color:#a7966b}
.pane .fold{background:transparent;border:0;color:#c4be9c;width:26px;height:25px;font-size:18px;line-height:24px}
.pane.paper .fold{color:#71613d}.pane.folded{padding:10px 39px 10px 15px}.pane.folded::after{font-size:10px;letter-spacing:.13em}
#top{left:16px;right:16px;top:14px;transform:none;padding:9px 30px 9px 10px;z-index:8;background:#1e3028f5}
#top .body{justify-content:space-between}#top .stat{padding:2px 15px}#top .stat b{font-size:17px}#top .stat span{font-size:9px;color:#b1b29a}
#top .stat:nth-child(2){display:none}#top .ctl button{background:#c1baa80d;box-shadow:none;border:1px solid #a5a58233;border-radius:2px;padding:7px 9px;color:#d6d7c0}
#top .ctl button[aria-pressed=true]{background:#c6ae79;color:#243829;border-color:#c6ae79}
#top .fold{display:none}#top.folded{left:16px;right:16px;transform:none}#top.folded .body{display:flex!important}#top.folded::after{display:none}
#goals{top:98px;width:248px;left:18px;padding:17px;z-index:5}#goals.folded{width:auto}
#side{top:98px;right:18px;width:282px;max-height:calc(100dvh - 214px);padding:21px 19px 19px;z-index:6;scrollbar-color:#899377 #21332a}
#side.folded{width:auto;padding:10px 39px 10px 15px}#side h2{font-size:20px;color:#ebd3a0;text-shadow:none}#side .where{font-size:11px;color:#b5b69c}
#side .sec h3{color:#c4c6a8;font-size:10px}#side .hint{font-size:12px;color:#bdc4af}#side .row span{color:#ccd0bb}
.btn,.mini,select{background:#435745;box-shadow:none;border:1px solid #80907166;color:#f0e7d1;border-radius:2px}.btn:hover,.mini:hover{background:#566d53}.btn.primary{background:#c4ae78;color:#233628;box-shadow:none;border-color:#bca268}.btn.primary:hover{background:#dac38a}
#build{bottom:18px;padding:10px 13px;max-width:calc(100vw - 430px);z-index:7}#build.folded{padding:11px 38px 11px 18px;left:auto;right:18px;transform:none}
#build .bar{overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}#build .bar button{background:transparent;box-shadow:none;border:1px solid #adad8833;flex:none;width:61px;padding:7px 3px}.bar button:hover{background:#567051!important}
#build .ledger{flex-wrap:wrap;gap:4px 12px}#build .n{font-size:9px}#build .c{font-size:11px}#placing{bottom:132px}
#log{bottom:91px;left:20px;max-width:330px;background:#172c23da;border:0;padding:10px 12px;z-index:4}#log .fold{display:none}
#card{top:99px;width:350px;padding:20px;z-index:9;left:50%;box-shadow:0 14px 40px #14251c55}
#village-heading{position:fixed;bottom:22px;left:23px;z-index:4;pointer-events:none;color:#fff4d7;text-shadow:0 2px 8px #0b2517,0 1px 3px #0b2517}
#village-heading small{font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:#fff2cf}#village-heading h1{font-family:Fraunces,Georgia,serif;font-size:36px;letter-spacing:-.03em;margin:2px 0}#village-heading span{font-size:11px;letter-spacing:.05em}
#village-actions{position:fixed;bottom:22px;right:157px;display:flex;gap:7px;z-index:7}#village-actions button{min-height:40px;padding:0 16px;border:1px solid #bbad8177;background:#253e30ee;color:#eee5c9;font-size:12px;letter-spacing:.025em;box-shadow:0 3px 13px #10251b33}#village-actions button:hover{background:#45634b}#village-actions button:active{transform:translateY(1px)}
#village-actions #enterWorkshop{background:#e4d3a7;color:#2b4032;border-color:#c8b782}#village-actions #enterWorkshop:hover{background:#f0e2bf}
.badge{background:#253c2cf0;border:1px solid #a9ac7b88;border-radius:2px;font-size:9px;box-shadow:none;color:#eddfb5}.site{background:#253c2cf0;border-color:#a9ac7b88}.bubble{background:#e9e1c6;border-color:#a8a684}
#modal{background:#12271dc7}#modal .sheet{border:1px solid #ab976d;background:#e8dfc3;padding:35px;box-shadow:0 20px 70px #06170e99}#modal h1{font-family:Fraunces,Georgia,serif;font-size:35px;color:#2e4331}#modal .sheet::before{display:none}#modal b{color:#36513a}
@media(max-width:1100px){#top .stat{padding:2px 8px}#top .stat b{font-size:15px}#top .ctl button{padding:7px 6px}#top .stat svg{width:17px;height:17px}#top .stat{gap:5px}#build{max-width:calc(100vw - 60px);bottom:81px}#build.folded{bottom:22px}#village-heading h1{font-size:29px}#village-actions{right:141px}#village-actions button{padding:0 12px}#log{bottom:151px}}
@media(max-width:760px){#top{left:8px;right:8px;top:8px;padding:9px}#top .body{flex-wrap:wrap;gap:7px}#top .stat{padding:1px 5px;border:0}#top .stat svg{display:none}#top .stat span{font-size:8px}#top .stat b{font-size:14px}#top .ctl{padding:0}#top .stat.season b{font-size:12px}#top #skip{font-size:11px}#side{top:119px;right:9px;width:min(282px,calc(100vw - 59px));max-height:calc(100dvh - 202px)}#goals{top:119px;left:9px;width:min(248px,calc(100vw - 54px))}#village-heading{bottom:74px;left:13px}#village-heading h1{font-size:28px}#village-actions{left:12px;right:auto;bottom:18px;gap:5px}#village-actions button{font-size:11px;padding:0 11px}#build.folded{right:9px;bottom:18px;padding:11px 31px 11px 11px}#log{bottom:138px;left:12px;max-width:250px}#card{top:119px;max-width:calc(100vw - 65px);width:330px}#build{max-width:calc(100vw - 26px)}#top #homeBtn{display:none}#goals:not(.folded){z-index:7}}
