/* 증명사진 만들기 */
.idp-page{padding:32px 0 56px}
.idp-shell{max-width:1120px}
.idp-kicker{display:inline-block;font:700 11.5px/1 var(--mono,ui-monospace,monospace);letter-spacing:.14em;color:var(--muted);margin-bottom:10px}
.idp-page h1{margin:0 0 8px;font-size:clamp(26px,3.4vw,38px);letter-spacing:-.03em;color:var(--ink)}
.idp-lede{margin:0 0 22px;color:var(--muted);font-size:15px;max-width:720px}
.idp-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:280px;padding:36px 20px;border:1.5px dashed var(--line);border-radius:20px;background:var(--surface);color:var(--ink);text-align:center;cursor:pointer;transition:border-color .15s,background .15s}
.idp-drop:hover,.idp-drop.over{border-color:var(--accent,#1F459A);background:var(--sunk)}
.idp-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.idp-drop[hidden]{display:none}
.idp-drop-ic{color:var(--muted)}
.idp-drop b{font-size:18px}
.idp-drop small{color:var(--muted);font-size:13px;max-width:460px}
.idp-work{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.idp-work[hidden]{display:none}
@media(max-width:900px){.idp-work{grid-template-columns:1fr}}
.idp-stage{position:sticky;top:84px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px;border-radius:20px;background:var(--sunk);border:1px solid var(--line)}
@media(max-width:900px){.idp-stage{position:static;padding:16px}}
.idp-frame{position:relative;width:min(100%,360px);max-height:62vh;aspect-ratio:35/45;box-shadow:0 10px 30px rgba(0,0,0,.18);background:#fff;touch-action:none;cursor:grab;outline:none;border-radius:2px;overflow:hidden}
.idp-frame:active{cursor:grabbing}
.idp-frame:focus-visible{box-shadow:0 0 0 3px var(--accent,#1F459A)}
.idp-frame canvas{display:block;width:100%;height:100%}
.idp-guide{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.idp-tip{margin:0;font-size:12.5px;color:var(--muted);text-align:center}
.idp-meta{margin:0;font:600 12px var(--mono,ui-monospace,monospace);color:var(--ink);opacity:.8;text-align:center}
.idp-panel{display:flex;flex-direction:column;gap:12px}
.idp-panel section{padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.idp-panel h3{margin:0 0 10px;font-size:14px;font-weight:800;color:var(--ink);letter-spacing:-.01em}
.idp-specs{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.idp-specs button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;font:inherit}
.idp-specs button b{font-size:13px;font-weight:700}
.idp-specs button small{font-size:11.5px;color:var(--muted)}
.idp-specs button:hover{border-color:var(--accent,#1F459A)}
.idp-specs button[aria-pressed="true"]{border-color:var(--accent,#1F459A);box-shadow:inset 0 0 0 1px var(--accent,#1F459A);background:var(--accent-soft,var(--sunk))}
.idp-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:8px}
.idp-row .btn,.idp-saves .btn,.idp-another{display:inline-flex;align-items:center;gap:6px}
.idp-row .btn[hidden]{display:none}
.idp-chk{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink);margin-left:auto;cursor:pointer}
.idp-sl{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:10px;font-size:12.5px;color:var(--ink);margin:6px 0}
.idp-sl[hidden]{display:none}
.idp-sl input{width:100%;accent-color:var(--accent,#1F459A)}
.idp-sel{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:10px;font-size:12.5px;color:var(--ink);margin-bottom:10px}
.idp-sel select{height:34px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 8px;font:600 13px var(--sans)}
.idp-note{margin:6px 0 0;font-size:11.5px;line-height:1.5;color:var(--muted)}
.idp-bgs{display:flex;gap:6px;flex-wrap:wrap}
.idp-bgs button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;width:58px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);font:600 11px var(--sans);cursor:pointer}
.idp-bgs button i{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);display:block}
.idp-bgs button i.keep{background:conic-gradient(#d9d9d9 25%,#fff 0 50%,#d9d9d9 0 75%,#fff 0) 0 0/12px 12px}
.idp-bgs button[aria-pressed="true"]{border-color:var(--accent,#1F459A);background:var(--sunk)}
.idp-saves{display:grid;gap:6px}
.idp-saves .btn{justify-content:center}
.idp-another{margin-top:10px}
.idp-info{max-width:860px;margin:40px auto 0;color:var(--ink)}
.idp-info h2{font-size:21px;margin:28px 0 10px;letter-spacing:-.02em}
.idp-info p,.idp-info li{color:var(--muted);line-height:1.7;font-size:14.5px}
.idp-info table{width:100%;border-collapse:collapse;font-size:13.5px;margin:8px 0}
.idp-info th,.idp-info td{border:1px solid var(--line);padding:8px 10px;text-align:left;color:var(--ink)}
.idp-info th{background:var(--sunk);font-weight:700}
.idp-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
