*{box-sizing:border-box}body{margin:0;background:#f3f6fc;color:#14233f;font:14px/1.6 "DM Sans",system-ui,sans-serif}.top{height:66px;background:#071735;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(14px,4vw,48px);border-bottom:1px solid #c39a48}.top nav{display:flex;gap:20px}.top a{color:#f3f5fa;text-decoration:none}.brand{display:flex;align-items:center;gap:10px;font-size:18px;letter-spacing:1px}.brand span{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#e8b94f;color:#071735;font-weight:900}.wrap{max-width:1440px;margin:auto;padding:22px clamp(12px,3vw,34px) 45px}.intro{padding:8px 0 16px}.eyebrow{color:#a87921;font-size:10px;font-weight:900;letter-spacing:2px}.intro h1{font-size:clamp(30px,5vw,44px);line-height:1.1;margin:6px 0;color:#071735}.intro p{color:#687792}.privacy,.note{padding:13px 16px;border:1px solid #e7d7b6;background:#fff9eb;border-radius:12px;margin:10px 0 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.privacy b{color:#825c16}.privacy span,.note{font-size:12px;color:#69758a}.workspace{background:#fff;border:1px solid #dfe6f0;border-radius:16px;overflow:hidden;box-shadow:0 12px 36px #14233f0c}.toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding:12px;border-bottom:1px solid #e4e9f1}.toolbar button,.side button,.toolbar select{border:1px solid #d7dfeb;background:#fff;border-radius:8px;padding:10px 13px;font:700 12px system-ui;color:#263854}.toolbar button:disabled,.side button:disabled{opacity:.4}.toolbar input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.primary,.apply{background:#e8b94f!important;color:#071735!important;border:0!important;border-radius:8px;padding:10px 15px;font-weight:900;cursor:pointer}.editor-layout{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:570px}.side{padding:17px;border-right:1px solid #e5eaf2;background:#fbfcff}.side h2{font-size:17px;margin:0 0 7px;color:#071735}.side p{font-size:11px;color:#758198;line-height:1.6}.side>label,.field label{display:block;font-size:11px;font-weight:800;color:#475773;margin:13px 0 6px}.side textarea,.field input{width:100%;border:1px solid #dce3ee;border-radius:8px;padding:9px;font:13px system-ui;color:#17243e}.field{display:grid;grid-template-columns:1fr 95px;align-items:center;gap:8px}.field label{margin:0}.field input[type=color]{height:36px;padding:3px}.field input[type=number]{width:95px}.side button{width:100%;margin-top:9px}.side .apply{margin-top:15px}.hint{margin-top:14px!important}.canvas-area{min-width:0;background:#f0f3f8;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:auto}.empty{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#7e8ca3}.empty b{font-size:55px;color:#aebbd0}.empty strong{color:#42516b}.empty span{font-size:11px}.image-stage{position:relative;display:inline-block;max-width:100%;line-height:0;background:#fff;box-shadow:0 4px 22px #17233c24}.image-stage canvas{display:block;max-width:100%;height:auto}.ocr-layer{position:absolute;inset:0;pointer-events:none}.ocr-box{position:absolute;border:1px solid #2d73ef;background:#3b82f622;pointer-events:auto;cursor:pointer;line-height:1.2}.ocr-box.selected{border:2px solid #e49b12;background:#f3c65a44}.image-stage[hidden],.empty[hidden]{display:none!important}#status{font-size:11px;color:#738198;min-height:18px;margin:13px 0 0;text-align:center}.note{display:block;margin-top:16px}.note b{color:#17243e}@media(max-width:720px){.editor-layout{grid-template-columns:1fr}.side{border-right:0;border-bottom:1px solid #e5eaf2}.canvas-area{min-height:340px;padding:10px}.empty{min-height:300px}.toolbar{gap:6px}.toolbar button,.toolbar select{padding:9px}.top{height:58px}}
/* PhoText-style vertical tool stack */
.side{display:flex;flex-direction:column;gap:8px;max-height:78vh;overflow:auto}.side details{display:block;width:100%;border:1px solid #dfe6ef;border-radius:9px;background:#fff;padding:0 10px 10px}.side summary{display:block;padding:11px 0;font-weight:800;cursor:pointer}.side .field{display:grid;grid-template-columns:1fr 105px;gap:8px;align-items:center}.text-list{display:flex;flex-direction:column;gap:5px}.text-list button{text-align:left;white-space:normal}.editor-layout{grid-template-columns:300px minmax(0,1fr)}@media(max-width:760px){.editor-layout{grid-template-columns:1fr}.canvas-area{order:-1}.side{max-height:none;overflow:visible}.side details{width:100%}}
