.pp-main{max-width:1180px;margin:auto;padding:28px 0 64px}.pp-intro{max-width:800px;margin:15px 0 26px}.pp-intro h1{font-size:clamp(25px,4vw,38px);line-height:1.5;margin:12px 0}.pp-intro p{line-height:1.9}.pp-help{font-size:13px;line-height:1.9;color:#796488;overflow-wrap:anywhere}.pp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pp-steps button{background:#fffdf4;border:2px solid #ded0e9;padding:14px 10px;text-align:left;min-width:0}.pp-steps b{display:inline-block;color:#8d60be;margin-right:10px}.pp-steps button[aria-current=step]{border-color:#7c50b3;background:#eee5fc}.pp-card{margin:22px 0;padding:26px;background:white;border:2px solid #ddcee9;box-shadow:4px 4px 0 #efe1f3;min-width:0}.pp-page [hidden]{display:none!important}.pp-card h2{font-size:21px;margin:0 0 16px;line-height:1.5}.pp-card label{display:block;font-size:14px;line-height:1.8;min-width:0}.pp-card input:not([type=checkbox]):not([type=file]):not([type=range]),.pp-card select{width:100%;min-height:44px;border:2px solid #bdadce;background:#fffdf7;padding:8px;color:#3d2e4d;font:inherit;border-radius:3px}.pp-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.pp-card .btn{white-space:normal;max-width:100%;min-height:44px}.pp-file{position:relative;overflow:hidden}.pp-file input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.pp-file:focus-within{outline:3px solid #8456b6;outline-offset:3px}.pp-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.pp-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.pp-work{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,1.5fr);gap:28px}.pp-work>*{min-width:0}#ppStep3 .pp-work{grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr)}.pp-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}.pp-tools button,.pp-options button{border:2px solid #bfadce;background:#fffcf5;padding:12px 8px;min-height:46px;color:#493759;font:inherit;cursor:pointer}.pp-tools button[aria-pressed=true],.pp-options button[aria-pressed=true]{background:#eadefa;border-color:#8156ae;box-shadow:3px 3px 0 #c9b1df}.pp-card details{border-top:1px dashed #dfd2ea;margin:16px 0;padding-top:8px}.pp-card summary{cursor:pointer;padding:10px 0;min-height:44px;color:#775396;font-size:14px}.pp-check{display:flex!important;align-items:flex-start;gap:12px;padding:12px 0}.pp-check input{width:20px;height:20px;flex:0 0 20px;accent-color:#8055b1;margin-top:3px}.pp-confirm{border-top:1px dashed #d9c9e7;margin-top:20px}.pp-stage{overflow:auto;max-height:650px;border:1px solid #dcc8ee;background:#faf6fc;overscroll-behavior:contain}.pp-stage canvas{display:block;touch-action:pan-x pan-y}.pp-stage canvas.pp-fit{max-width:100%;height:auto;margin:auto}.pp-stage canvas[data-tool]:not([data-tool=view]){touch-action:none;cursor:crosshair}.pp-stats{font-size:17px;font-weight:700;line-height:1.8;color:#58406e;margin:0 0 16px}.pp-notice{border-left:4px solid #a080c2;background:#f1e9fb;padding:12px 16px;line-height:1.8;overflow-wrap:anywhere}.pp-notice[data-error=true]{background:#fff0de;border-color:#c88841}#ppCropCanvas{display:block;max-width:100%;height:auto;background:#f4edf8;touch-action:none;max-height:480px}#ppMakeCanvas{display:block;width:100%;height:auto;background:#fffaf0;border:1px solid #e7d9ed}#ppAiResult{display:block;max-width:100%;height:auto;max-height:400px;object-fit:contain}.pp-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 26px}.pp-options strong,.pp-options span,.pp-options output{display:block;line-height:1.8}.pp-options span{font-size:13px;color:#80698e}.pp-options output{font-size:14px;margin-top:6px;font-weight:700}.pp-save{padding-top:24px;border-top:1px dashed #dcc9e8;margin-top:24px;display:flex;flex-wrap:wrap;gap:12px}.pp-save p{flex-basis:100%}.pp-supply{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pp-supply span{padding:8px;background:#faf6fd;font-size:13px;overflow-wrap:anywhere}.pp-supply i{display:inline-block;width:14px;height:14px;border:1px solid #aaa;vertical-align:middle;margin-right:7px}.pp-page button:disabled{opacity:.5;cursor:not-allowed}.pp-page button:focus-visible,.pp-page canvas:focus-visible{outline:3px solid #a386c7;outline-offset:3px}.pp-library label{min-width:180px;flex:1}.pp-card>p{line-height:1.9}
#ppPatternCanvas.pp-fit{max-height:600px;width:auto;height:auto}
@media(max-width:760px){.pp-main{padding-top:12px}.pp-card{padding:18px 14px;margin:18px 0}.pp-work,#ppStep3 .pp-work{display:flex;flex-direction:column;gap:22px}#ppStep2 .pp-preview{order:-1}.pp-stage{max-height:48svh}#ppPatternCanvas.pp-fit{max-height:45svh}.pp-steps{gap:7px}.pp-steps button{font-size:12px;padding:9px 6px;line-height:1.6}.pp-steps b{display:block}.pp-options{grid-template-columns:1fr;gap:10px}.pp-options button{text-align:left;padding:12px 16px}.pp-options strong{display:inline}.pp-options span{display:inline;margin-left:10px}.pp-actions>*{flex:1 1 140px}.pp-supply{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-intro{margin-top:6px}.pp-save .btn{flex:1 1 150px}.pp-heading .btn{font-size:13px}#ppMakeCanvas{max-height:330px;object-fit:contain}}
