:root{--color-primary: #1677ff;--color-primary-hover: #4096ff;--color-primary-active: #0958d9;--color-text-heading: rgba(0, 0, 0, .88);--color-text: rgba(0, 0, 0, .88);--color-text-secondary: rgba(0, 0, 0, .65);--color-text-tertiary: rgba(0, 0, 0, .45);--color-text-quaternary: rgba(0, 0, 0, .25);--color-error: #ff4d4f;--color-success: #52c41a;--color-border: #d9d9d9;--color-border-secondary: #f0f0f0;--color-fill-tertiary: rgba(0, 0, 0, .04);--color-fill-quaternary: rgba(0, 0, 0, .02);--color-bg-layout: #f5f5f5;--color-bg-container: #ffffff;--radius-sm: 4px;--radius: 6px;--radius-lg: 8px;--font-sans: "Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--control-h: 32px;--control-h-lg: 40px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg-layout);color:var(--color-text);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit}.page{min-height:100vh;display:flex;justify-content:center;padding:clamp(16px,4vw,48px) clamp(12px,3vw,24px) 80px}.page-inner{width:100%;max-width:760px}.page-head{margin-bottom:24px}.eyebrow{font-size:13px;font-weight:500;letter-spacing:.02em;color:var(--color-text-tertiary);margin-bottom:4px}.page-head h1{font-size:clamp(22px,4vw,28px);font-weight:700;color:var(--color-text-heading);margin:0 0 8px}.page-head p{font-size:14px;color:var(--color-text-secondary);margin:0;line-height:1.6}.card{background:var(--color-bg-container);border-radius:var(--radius-lg);border:1px solid var(--color-border-secondary);padding:clamp(16px,4vw,32px);margin-bottom:16px}.step-title{font-size:17px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px}.step-sub{font-size:13px;color:var(--color-text-tertiary);margin:0 0 20px}.hint{font-size:12px;color:var(--color-text-tertiary);margin-top:6px;line-height:1.6}.hint.tight{margin-top:6px}.req{color:var(--color-error)}.opt{color:var(--color-text-tertiary);font-weight:400}.field{display:block}.field>label{display:block;font-size:12px;font-weight:500;color:var(--color-text-secondary);margin-bottom:6px}.inp{width:100%;height:var(--control-h);padding:4px 11px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-container);font-size:14px;color:var(--color-text);outline:none;transition:border-color .15s,box-shadow .15s}textarea.inp{height:auto;padding:6px 11px;line-height:1.6;resize:vertical}select.inp{padding:4px 8px;cursor:pointer}.inp:hover{border-color:var(--color-primary-hover)}.inp:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #1677ff1a}.inp::placeholder{color:var(--color-text-quaternary)}.inp:disabled{background:var(--color-fill-tertiary);cursor:not-allowed}.grid{display:grid}.grid-220{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.grid-200{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.grid-180{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.grid-160{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.span-all{grid-column:1 / -1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-h);padding:0 15px;text-decoration:none;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-container);font-size:14px;font-weight:400;color:var(--color-text);white-space:nowrap;flex-shrink:0;transition:all .15s ease}.btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:#fff}.btn-dashed{border-style:dashed;width:100%}.btn-dashed:hover:not(:disabled){border-style:dashed}.btn-lg{height:var(--control-h-lg);padding:0 20px;font-size:15px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-row{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.btn-row.wrap{flex-wrap:wrap}.btn-row.end{justify-content:flex-end}.btn-row.between{justify-content:space-between}.nav-row{display:flex;justify-content:space-between;margin-top:32px;padding-top:20px;border-top:1px solid var(--color-border-secondary)}.steps{display:flex;align-items:center;gap:8px;min-width:max-content}.steps-wrap{margin-bottom:28px;overflow-x:auto}.step-node{display:flex;align-items:center;gap:8px}.step-dot{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:12px;font-weight:500;background:var(--color-fill-tertiary);color:var(--color-text-tertiary)}.step-node.done .step-dot,.step-node.on .step-dot{background:var(--color-primary);color:#fff}.step-label{font-size:13px;color:var(--color-text-tertiary);white-space:nowrap}.step-node.on .step-label{color:var(--color-text);font-weight:600}.step-node.done .step-label{color:var(--color-text-secondary)}.step-bar{width:24px;height:1px;background:var(--color-border-secondary);flex:none}.item-store{background:var(--color-fill-quaternary);border-radius:var(--radius);padding:14px;margin-bottom:12px;position:relative}.item-reward{border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px;position:relative}.item-head{font-size:12px;color:var(--color-text-tertiary);margin-bottom:8px}.item-del{position:absolute;top:10px;right:10px;font-size:16px;line-height:1;color:var(--color-text-tertiary);padding:2px 6px;border-radius:var(--radius-sm)}.item-del:hover{color:var(--color-error);background:var(--color-fill-tertiary)}.block{border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);padding:16px}.block-title{font-size:14px;font-weight:600;color:var(--color-text-heading);margin-bottom:2px}.block-sub{font-size:12px;color:var(--color-text-tertiary);margin-bottom:16px}.divider-top{margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border-secondary)}.radio-group{display:flex;gap:8px;flex-wrap:wrap}.radio{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px;color:var(--color-text);cursor:pointer;transition:all .15s ease}.radio:hover{border-color:var(--color-primary);color:var(--color-primary)}.radio.on{border-color:var(--color-primary);color:var(--color-primary);background:#1677ff0f}.radio input{accent-color:var(--color-primary);margin:0}.check{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text);cursor:pointer}.check input{accent-color:var(--color-primary);width:16px;height:16px;margin:0}.check-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.slider{width:100%;accent-color:var(--color-primary);margin:6px 0 0}.search-panel{border:1px solid var(--color-border);border-radius:var(--radius);padding:12px;margin-top:8px;background:var(--color-bg-container)}.search-results{display:flex;flex-direction:column;gap:2px;margin-top:8px}.search-row{padding:8px 10px;border-radius:var(--radius-sm);font-size:13px;color:var(--color-text);cursor:pointer;text-align:left;width:100%}.search-row:hover{background:var(--color-fill-tertiary)}.upload-drop{border:1px dashed var(--color-border);border-radius:var(--radius-lg);padding:20px 16px;text-align:center;font-size:13px;color:var(--color-text-secondary);cursor:pointer;transition:border-color .15s,background .15s;background:var(--color-fill-quaternary)}.upload-drop:hover{border-color:var(--color-primary);color:var(--color-primary)}.upload-drop.dim{opacity:.5;cursor:not-allowed}.file-list{display:flex;flex-direction:column;gap:4px;margin-top:8px}.file-row{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:var(--radius-sm);font-size:13px;color:var(--color-text-secondary);background:var(--color-fill-quaternary)}.file-thumb{width:28px;height:28px;border-radius:var(--radius-sm);object-fit:cover;flex:none}.file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-x{color:var(--color-text-tertiary);font-size:14px;line-height:1;padding:2px 4px}.file-x:hover{color:var(--color-error)}.summary-list{display:flex;flex-direction:column;gap:14px}.summary-card{border:1px solid var(--color-border-secondary);border-radius:var(--radius);padding:14px 16px}.summary-card>h3{font-size:12px;font-weight:400;color:var(--color-text-tertiary);margin:0 0 8px}.summary-body{font-size:14px;color:var(--color-text);line-height:1.9;white-space:pre-line}.result{text-align:center;padding:clamp(24px,6vw,56px) clamp(16px,4vw,32px)}.result-ico{width:72px;height:72px;border-radius:50%;margin:0 auto 24px;display:grid;place-items:center;font-size:36px;background:#52c41a1a;color:var(--color-success)}.result h2{font-size:24px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.result p{font-size:14px;color:var(--color-text-secondary);margin:0;line-height:1.6}.result-no{margin:0 0 10px!important;font-size:15px!important;color:var(--color-text-secondary)}.result-no strong{color:var(--color-text-heading);font-weight:600;letter-spacing:.02em}.search-row strong{display:block;font-weight:600}.search-sub{display:block;margin-top:2px;font-size:12.5px;color:var(--color-text-secondary)}.form-error{flex:1;margin:0;font-size:13px;color:var(--color-error);align-self:center}.landing{min-height:100vh;display:grid;place-items:center;padding:24px;text-align:center}.landing h1{font-size:clamp(28px,6vw,44px);font-weight:700;color:var(--color-text-heading);margin:0 0 12px}.landing p{font-size:15px;color:var(--color-text-secondary);margin:0 0 28px;line-height:1.7}.landing .todo{margin:40px auto 0;font-size:12px;color:var(--color-text-tertiary);border-top:1px solid var(--color-border-secondary);padding-top:20px;max-width:460px}
