:root{
  --gold:#a87723;
  --gold2:#c9993e;
  --cream:#fff5df;
  --paper:#fffdfa;
  --ink:#20150e;
  --muted:#8d857c;
  --line:#ead3aa;
  --red:#ef4d48;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:"FangSong","STFangsong","FangSong_GB2312","仿宋","KaiTi","Microsoft YaHei","微软雅黑",serif;color:var(--ink);background:#faf6ef}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.page{width:100%;max-width:440px;margin:0 auto;padding:8px 6px 16px}
.shell{overflow:hidden;border:1px solid rgba(193,158,104,.23);border-radius:28px;background:var(--paper);box-shadow:0 14px 42px rgba(89,60,25,.09)}
.brand-hero{position:relative;overflow:hidden;background:linear-gradient(148deg,#fffaf1 0%,#fff2d8 58%,#f8e6c4 100%);padding:21px 18px 31px}
.soft-shape{position:absolute;border-radius:50%;pointer-events:none;background:rgba(255,255,255,.42)}
.shape-a{width:215px;height:215px;left:-112px;top:-115px}.shape-b{width:185px;height:185px;right:-94px;bottom:-96px;background:rgba(255,255,255,.25)}
.hero-inner{position:relative;z-index:2;text-align:center;margin:0 auto}
.brand-logo{display:block;width:126px;height:72px;object-fit:contain;margin:0 auto 7px;filter:none}
.store-line{font-size:18px;font-weight:400;line-height:1.35;color:#2b2018;letter-spacing:0;margin:0 auto 9px}
.hero-thanks{display:flex;align-items:center;justify-content:center;gap:11px;color:#8d5b0f;margin:0 auto;font-size:24px;line-height:1.2}
.hero-thanks span{width:38px;height:1px;background:#caa257}
.hero-thanks strong{font-weight:700;white-space:nowrap;letter-spacing:0}
.feedback-form{position:relative;z-index:5;margin:-13px 12px 12px;padding:18px 16px 16px;border:1px solid #eee2cf;border-radius:25px;background:rgba(255,254,251,.995);box-shadow:0 10px 28px rgba(80,55,26,.055)}
.form-section{margin-top:18px}.form-section:first-child{margin-top:0}
.section-title{display:flex;align-items:baseline;gap:7px;font-size:16px;font-weight:700;margin:0 0 10px;color:#17120e;letter-spacing:0}
.section-title em{font-style:normal;color:#e44843}.section-title small{font-size:10.5px;font-weight:500;color:#9c9389}
.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.type-card{position:relative;min-height:99px;border:1px solid #ead5b2;border-radius:17px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:0 4px 12px rgba(73,49,22,.025);transition:.16s ease}
.type-card input{position:absolute;opacity:0;pointer-events:none}
.type-icon{font-size:28px;line-height:1}.type-card strong{font-size:17px;line-height:1.1;font-weight:700;letter-spacing:0}.type-card small{font-size:10px;color:#9f978f;font-weight:500}
.complaint:has(input:checked){border-color:#f05c58;background:linear-gradient(145deg,#fff7f6,#fff1f0);box-shadow:0 0 0 2px rgba(240,92,88,.05)}
.complaint:has(input:checked) strong,.complaint:has(input:checked) small{color:#e74843}.suggestion:has(input:checked){border-color:#e0ac4e;background:#fffaf0}.praise:has(input:checked){border-color:#70ba82;background:#f7fff8}
.textarea-wrap{position:relative}textarea,input[type=text]{width:100%;border:1px solid #e1c99e;border-radius:16px;background:#fff;outline:none;color:#3a312b;font:inherit}
textarea{min-height:150px;padding:14px 15px 29px;font-size:12.5px;line-height:1.72;font-weight:400;resize:vertical}
textarea::placeholder,input::placeholder{color:#a7a29b;opacity:1;font-weight:500}.counter{position:absolute;right:10px;bottom:8px;font-size:9px;color:#a6a098;background:#fff;padding-left:5px}
.upload-title{gap:8px}.preview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;align-items:stretch}.file-input{display:none}
.upload-box,.preview-item,.upload-placeholder{aspect-ratio:1/1;border-radius:12px;overflow:hidden;min-width:0}
.upload-box{border:1.4px dashed #cca364;background:#fffaf2;color:#a4762c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer}
.upload-box .plus{font-size:26px;line-height:1}.upload-box strong{font-size:10.5px;font-weight:600}.upload-box small{font-size:7.5px;color:#b79a6e}.upload-placeholder{border:1px dashed #dbd6cf;background:#fff;display:flex;align-items:center;justify-content:center;color:#d3d0cc;font-size:22px}
.preview-item{position:relative;background:#f4efe8;border:1px solid #eadfce}.preview-item img{width:100%;height:100%;object-fit:cover}.preview-remove{position:absolute!important;top:3px!important;right:3px!important;width:20px!important;height:20px!important;border-radius:50%!important;border:0!important;padding:0!important;margin:0!important;background:rgba(39,33,28,.76)!important;color:#fff!important;font-size:13px!important;line-height:20px!important;box-shadow:none!important}
.file-names{min-height:6px;margin-top:4px;font-size:9px;color:#a09282}
.contact-wrap{position:relative}.contact-wrap input{height:45px;padding:0 12px 0 40px;font-size:13px;font-weight:400}.contact-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#b1833d}
#submitBtn{width:100%;margin-top:17px;border:0;border-radius:16px;padding:13px 16px;background:linear-gradient(90deg,#d3ae63,#b8832d);color:#fff;font-size:16px;font-weight:700;box-shadow:0 8px 18px rgba(164,116,49,.17)}
.send-icon{display:inline-block;transform:rotate(-18deg);margin-right:7px}.modal{position:fixed;inset:0;background:rgba(34,29,24,.45);display:flex;align-items:center;justify-content:center;padding:18px;z-index:20}.modal[hidden]{display:none}.modal-card{width:min(92vw,400px);background:#fffdf9;border-radius:23px;padding:27px 21px;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.22)}.result-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 13px;background:#edf8ef;color:#32975a;font-size:31px;font-weight:900}.modal-card h2{margin:0 0 7px}.modal-card p{color:#6f675f;line-height:1.65}.ticket{background:#f7f0e6;border-radius:14px;padding:13px;margin:15px 0;display:flex;flex-direction:column;gap:4px}.ticket span{font-size:11px;color:#958977}.ticket strong{font-family:Consolas,monospace}.secondary{width:100%;border:0;border-radius:15px;padding:13px;background:#29251f;color:#fff;font-weight:800}
@media(max-width:390px){
  .page{padding:5px 4px 12px}.shell{border-radius:25px}.brand-hero{padding:17px 13px 28px}.brand-logo{width:112px;height:62px;margin-bottom:6px}.store-line{font-size:17px;margin-bottom:7px}.hero-thanks{font-size:21px;gap:8px}.hero-thanks span{width:27px}.feedback-form{margin:-11px 9px 10px;padding:15px 13px 14px;border-radius:23px}.section-title{font-size:15.5px}.type-grid{gap:7px}.type-card{min-height:91px;border-radius:15px}.type-icon{font-size:25px}.type-card strong{font-size:16.5px;font-weight:700}.type-card small{font-size:9px}textarea{min-height:139px;font-size:12px}.preview-grid{gap:5px}.upload-box strong{font-size:9.5px}.contact-wrap input{height:43px}#submitBtn{padding:12px 14px;font-size:15px}
}

/* V550 exact logo + Microsoft YaHei typography */
.store-line,.hero-thanks,.section-title,.type-card strong,.type-card small,textarea,input,#submitBtn{letter-spacing:0!important}
textarea,input,.store-line,.hero-thanks,.section-title,.type-card strong,.type-card small,#submitBtn{font-family:"FangSong","STFangsong","FangSong_GB2312","仿宋","KaiTi","Microsoft YaHei","微软雅黑",serif!important}

/* V551 FangSong typography */
.store-line{font-weight:400!important;}
.hero-thanks strong{font-weight:700!important;}
.section-title{font-weight:600!important;}
.type-card strong{font-weight:600!important;}
.type-card small, textarea, input, .upload-box strong, .upload-box small{font-weight:400!important;}
