*{box-sizing:border-box}body{margin:0;background:#f5f4ef;color:#203b35;font:15px Arial,"PingFang SC",sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{padding:11px 17px;border:1px solid #c8d2c9;border-radius:6px;background:#fff;cursor:pointer}button:disabled{opacity:.45;cursor:wait}.primary{background:#245f50;color:white;border-color:#245f50}header{height:84px;padding:0 5%;display:flex;align-items:center;gap:24px;border-bottom:1px solid #d8ded5;background:#fff}.brand{font-size:30px;letter-spacing:5px;text-decoration:none;color:inherit}.brand small{font-size:9px;letter-spacing:2px}header>span{margin-left:auto;color:#738278;font-size:12px}main{padding:35px 5%}.entry{min-height:75vh;padding:7vh 6%;background:linear-gradient(125deg,#183e37,#49705d);color:white;display:grid;grid-template-columns:1fr 390px;column-gap:10%;border-radius:16px}.entry>h1{font-size:clamp(40px,5vw,80px);font-weight:400;line-height:1.3;margin:20px 0}.entry>form{grid-row:1/5;grid-column:2;background:#f8f8f3;color:#203b35;padding:36px;border-radius:12px;align-self:center}.eyebrow{font-size:11px;letter-spacing:3px}.entry>p{line-height:1.9}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.heading h1{font-size:36px;font-weight:400}.actions,nav,.row{display:flex;gap:10px;flex-wrap:wrap}nav{margin:20px 0 30px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;border:1px solid #d8ded5;border-radius:12px;padding:23px}.card img{width:100%;height:190px;object-fit:cover;border-radius:7px}.card h2{font-weight:400}.card p{white-space:pre-wrap;line-height:1.6;color:#718077}.card button{margin:5px 5px 0 0}label{display:block;font-size:13px;margin:12px 0}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #ccd4ca;background:#fff;padding:10px;border-radius:5px}textarea{min-height:80px;resize:vertical}.row>label{flex:1;min-width:110px}.hint{font-size:12px;line-height:1.8;color:#718077}.editor{display:grid;grid-template-columns:300px minmax(0,1fr);gap:25px}.editor aside{padding:20px;background:#fff;border:1px solid #d8ded5;border-radius:10px}.editor h2{font-size:18px;font-weight:500;margin-top:25px}.editor h2:first-child{margin-top:0}#plan{width:100%;background:#e8ede3;border-radius:10px;touch-action:none}#artList{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:16px}#artList button{padding:3px}#artList .selected{outline:2px solid #245f50}#artList img{width:100%;height:65px;object-fit:cover}.upload{padding:12px;border:1px dashed #8ba493}#status{position:fixed;bottom:15px;left:50%;transform:translateX(-50%);padding:12px 20px;border-radius:8px;background:#183e37;color:#fff;z-index:200;max-width:90vw;white-space:pre-wrap}#status:empty{display:none}[hidden]{display:none!important}#viewer{position:fixed;inset:0;background:#1b302b;color:#fff;z-index:100}#viewCanvas{width:100%;height:100%}#viewCanvas canvas{touch-action:none}.viewTop,.viewBottom{position:absolute;left:20px;right:20px;display:flex;gap:10px;align-items:center;justify-content:space-between}.viewTop{top:20px;pointer-events:none}.viewTop>div,.viewBottom{background:#153c31cc;border-radius:8px;padding:12px}.viewTop button{pointer-events:auto}.viewTop small{display:block;margin-top:6px}.viewBottom{bottom:20px;justify-content:flex-end;flex-wrap:wrap;font-size:12px}.viewBottom span{margin-right:auto}#joystick{position:absolute;left:25px;bottom:110px;width:100px;height:100px;border:1px solid #ffffff66;border-radius:50%;background:#ffffff22;touch-action:none;display:none}#joystick i{position:absolute;left:29px;top:29px;width:40px;height:40px;border-radius:50%;background:#ffffffaa}#catalog{position:absolute;right:20px;bottom:85px;background:#153c31ed;max-height:60vh;overflow:auto;width:260px;padding:10px}#catalog button{display:block;width:100%;margin:5px 0}#viewLoading{position:absolute;top:45%;left:40%}dialog{max-width:95vw;width:1000px;max-height:94vh;overflow:auto;border:0;border-radius:12px;padding:25px}dialog::backdrop{background:#000b}#detailImage{display:block;max-width:100%;height:auto;margin:auto}#closeDetail{float:right}.fallback{height:100%;overflow:auto;padding:110px 5% 100px}.fallback .cards{color:#203b35}button:focus-visible,input:focus-visible{outline:3px solid #84b3a0}@media(pointer:coarse){#joystick{display:block}#viewHelp{display:none}}@media(max-width:850px){header{height:65px;padding:0 16px}.brand{font-size:24px}.brand small{display:none}main{padding:20px 15px}.entry{display:block;padding:30px 22px}.entry>form{margin-top:35px;padding:25px}.entry>h1{font-size:48px}.heading{display:block}.heading h1{font-size:28px}.cards{grid-template-columns:1fr}.editor{grid-template-columns:1fr}.editor aside{display:block}#plan{min-height:300px}.actions{margin-bottom:20px}.viewTop{left:10px;right:10px}.viewTop small{max-width:170px;font-size:10px}.viewBottom{left:10px;right:10px}.viewBottom button{font-size:11px;padding:9px}header>span{font-size:10px}.row>label{min-width:120px}}
/* Viewer uses light buttons on a dark overlay. */
#viewer button{color:#203b35}
