*{box-sizing:border-box}body{margin:0;background:#f8f6f0;color:#343c31;font-family:Arial,'PingFang SC',sans-serif;font-size:13px}button,select{font:inherit;color:inherit}button{border:1px solid #d9ddce;border-radius:8px;background:#fffdf8;padding:10px 14px;cursor:pointer}button:hover{background:#edf1df}header{height:88px;border-bottom:1px solid #dedfd4;display:flex;align-items:center;padding:0 32px;gap:12px}.brand{font-family:Georgia,serif;font-size:42px;font-weight:bold;letter-spacing:-3px;margin-right:auto}.brand span{display:inline-block;font:9px Arial;letter-spacing:2px;margin-left:16px;width:85px;line-height:1.6}.tag{margin-right:28px;color:#747d68}main{display:grid;grid-template-columns:285px minmax(320px,1fr) 300px;min-height:calc(100vh - 142px)}aside{padding:28px 22px}.eyebrow{font-size:9px;letter-spacing:2px;color:#899174;margin-bottom:18px}h1{font-size:21px;line-height:1.4;margin:0 0 20px}h1 span{display:block;font:italic 14px Georgia;color:#92997f;margin-top:8px}h2{font-size:23px;margin:0 0 10px}p{color:#8a8f80;line-height:1.7}select{width:100%;padding:10px;border:1px solid #d9ddce;border-radius:7px;background:#fffdf9}#gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;max-height:70vh;overflow:auto}.card{padding:9px 6px;display:flex;align-items:center;flex-direction:column;border:1px solid transparent;background:#efeee7;border-radius:8px;gap:8px;font-size:10px}.card.active{border-color:#6c7c47;background:#eaf0dc}.card img{height:130px;max-width:100%;object-fit:contain}.studio{border-left:1px solid #dedfd4;border-right:1px solid #dedfd4;padding:25px;background:#efeee7}.topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.pill{font-size:8px;letter-spacing:1px;border:1px solid #cdd1c1;border-radius:20px;padding:8px}#stage{height:68vh;min-height:430px;display:flex;align-items:center;justify-content:center;margin-top:20px;background-color:#e7e8df;background-image:radial-gradient(#cbd0bf 1px,transparent 1px);background-size:15px 15px;border-radius:10px}canvas{max-width:90%;max-height:90%;box-shadow:0 12px 30px #313e3620;touch-action:none}.stagefoot{display:flex;justify-content:space-between;align-items:center;margin-top:14px;font-size:11px;color:#828b73;gap:8px}.controls label{display:block;margin:20px 0 12px;font-size:12px}.controls output{float:right;color:#6e7d4c}.controls input[type=range]{display:block;width:100%;accent-color:#6e7d4c;margin-top:14px}.upload{background:#e7edda;padding:14px;text-align:center;border:1px dashed #a9b68c;border-radius:8px;cursor:pointer}.upload input{display:none}#resolution,.hint{font-size:10px;line-height:1.7;color:#929783}.row{display:flex;gap:8px}.row button{flex:1;font-size:11px}hr{border:0;border-top:1px solid #dedfd4;margin:25px 0}.primary{background:#647542;color:white;width:100%;margin-top:12px;padding:15px}.primary:hover{background:#4e602d}#share{width:100%;margin-top:10px}#slots{display:flex;gap:6px;flex-wrap:wrap}#slots button{padding:8px 11px}#slots .active{background:#647542;color:white}footer{border-top:1px solid #dedfd4;display:flex;justify-content:center;gap:30px;padding:17px;font-size:9px;letter-spacing:2px;color:#8a927a}#status{color:#647542;line-height:1.7} @media(max-width:1050px){main{grid-template-columns:220px 1fr}.controls{grid-column:1/-1;border-top:1px solid #dedfd4;max-width:700px;width:100%;margin:auto}#stage{height:65vh}.tag{display:none}}@media(max-width:640px){header{padding:0 16px;height:74px}.brand{font-size:32px}.brand span{display:none}header button{padding:8px;font-size:11px}main{display:flex;flex-direction:column}aside{padding:20px}#gallery{display:flex;overflow:auto;max-height:190px}.card{min-width:95px}.card img{height:115px}h1{font-size:19px}.studio{padding:16px}#stage{height:58vh;min-height:350px}.pill{display:none}footer{font-size:8px;gap:8px}}

.controls .upload{position:relative;margin:20px 0 12px;min-height:54px;display:flex;flex-direction:column;justify-content:center;gap:7px}.upload input{display:block!important;position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1}.upload #uploadProgress{font-size:11px;color:#5f6f42;pointer-events:none}.upload:focus-within{outline:2px solid #647542;outline-offset:3px}

dialog{border:0;border-radius:18px;padding:24px;max-width:540px;width:calc(100% - 40px);max-height:90vh;overflow:auto;background:#fafaf5}dialog::backdrop{background:#0008}#albumImage{display:block;max-width:100%;max-height:55vh;margin:16px auto;object-fit:contain}#albumClose{float:right}

.asset-panel{margin:20px 0;padding:14px 0;border-top:1px solid #dedfd4;border-bottom:1px solid #dedfd4}.asset-heading{display:flex;align-items:center;justify-content:space-between;gap:6px}.asset-heading button{font-size:10px;padding:7px}#photoCount{font-weight:normal;color:#899174}#photoMenu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:285px;overflow:auto}.photo-asset{position:relative;min-width:0}.photo-use{padding:4px;width:100%;overflow:hidden}.photo-use img{width:100%;height:70px;object-fit:cover;border-radius:5px;display:block}.photo-use span{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px}.photo-remove{position:absolute;right:3px;top:3px;border:0;border-radius:50%;padding:0;width:24px;height:24px;background:#fffdf8ed;font-size:18px}.asset-heading button:disabled{opacity:.45;cursor:default}

.brand .creator-id{display:block;font:12px Arial,sans-serif;letter-spacing:.4px;color:#647542;margin-top:2px}.brand{line-height:1.05}
