.upload-editor{max-width:73rem;margin:0 auto 3rem;border:1px solid var(--line);border-radius:calc(var(--radius) + .35rem);background:var(--surface);padding:clamp(1rem,3.5vw,2rem);box-shadow:0 1.2rem 3.5rem #182c281a}.image-page .geometry-task-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.geometry-task-nav a{flex:1 1 7rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:.65rem;background:#fff;text-align:center;text-decoration:none;font-size:.84rem;font-weight:750}.geometry-task-nav a:hover,.geometry-task-nav a[aria-current=page]{border-color:var(--accent);background:#edf7f1}.upload-editor figure{min-width:0;margin:0}.upload-editor figcaption{margin:.75rem 0 .4rem;font-size:.82rem;font-weight:750}.upload-views{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.upload-editor.has-source .upload-drop{min-height:5rem;padding:.8rem}.upload-editor.has-source .upload-drop__icon{display:none}.upload-format-field{margin-top:1rem}.upload-fields{align-items:start}.upload-fields>div{min-width:0}.upload-settings label{margin-bottom:.3rem}.upload-position-details{margin-top:.8rem}.upload-position-details summary{color:var(--accent);font-size:.88rem;font-weight:700}.upload-prepare,.upload-clear{border:1px solid var(--accent);border-radius:.65rem;padding:.65rem 1rem;font-weight:750}.upload-prepare{color:#fff;background:var(--accent)}.upload-prepare:disabled{opacity:.55}.upload-clear{color:var(--accent);background:#fff}.upload-result-content{margin-top:.8rem}.upload-result-limits{grid-column:1 / -1;color:var(--muted);font-size:.84rem;line-height:1.5}.upload-workflow{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(18rem,.95fr);gap:1rem}.upload-panel,.upload-settings,.upload-result{min-width:0;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1rem,2.5vw,1.5rem)}.upload-panel{background:linear-gradient(135deg,#edf7f1,#fbfdf9 66%)}.upload-panel h2,.upload-settings h2,.upload-result h2{margin:0;color:var(--ink);font-size:1.35rem;letter-spacing:-.03em}.upload-drop{display:grid;width:100%;min-height:15rem;place-content:center;gap:.4rem;margin-top:1rem;border:1.5px dashed #79a997;border-radius:.8rem;background:#fff9;color:var(--ink);padding:1rem;font:inherit;text-align:center}.upload-drop:hover,.upload-drop:focus-visible{border-color:var(--accent);outline:3px solid #b7d9cd;outline-offset:2px;background:#fff}.upload-drop__icon{display:grid;width:3rem;height:3rem;place-items:center;margin:0 auto .7rem;border-radius:1rem;background:var(--accent);color:#fff;font-size:1.65rem}.upload-file-name,.upload-drop small{color:var(--muted);font-size:.85rem;overflow-wrap:anywhere}.upload-source{margin-top:1rem}.upload-original{display:block;width:auto;max-width:100%;max-height:15rem;margin-top:.5rem;object-fit:contain}.upload-source-facts,.upload-result-facts,.upload-settings-help,.upload-help{color:var(--muted);font-size:.86rem;line-height:1.5}.upload-source-checks,.upload-result-checks{margin:.5rem 0 0;padding-left:1.25rem;color:var(--muted);font-size:.84rem}.is-pass{color:#176347}.is-fail{color:#a23b30}.upload-clear{margin-top:1rem}.upload-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.upload-settings label{display:grid;gap:.35rem;color:var(--ink);font-size:.88rem;font-weight:750}.upload-settings input,.upload-settings select{width:100%;min-width:0;min-height:2.55rem;border:1px solid #bac9c0;border-radius:.65rem;background:#fff;color:var(--ink);padding:.45rem .6rem;font:inherit}.upload-settings input:focus,.upload-settings select:focus{border-color:var(--accent);outline:3px solid #cce4da}.upload-settings fieldset{border:0;margin:1.15rem 0 0;padding:0}.upload-settings legend{color:var(--ink);font-weight:800}.upload-settings legend span{color:var(--muted);font-size:.8rem;font-weight:500}.upload-modes{display:grid;gap:.55rem;margin-top:.75rem}.upload-modes label{display:block;border:1px solid var(--line);border-radius:.65rem;background:#fff;padding:.65rem}.upload-modes input{width:auto;min-height:auto;margin-right:.35rem;accent-color:var(--accent)}.upload-modes small{display:block;margin:.3rem 0 0 1.35rem;color:var(--muted);font-size:.76rem;font-weight:500}.upload-position input{min-height:auto;padding:0;accent-color:var(--accent)}.upload-prepare{width:100%;margin-top:1.25rem}.upload-status{min-height:1.3rem;margin:.8rem 0 0;color:var(--muted);font-size:.88rem}.upload-error{margin:.7rem 0 0;border:1px solid #efb6ac;border-radius:.7rem;background:#fff4f1;color:#963f30;padding:.7rem;font-size:.86rem}.upload-result{margin-top:1rem;background:#fff}.upload-result-empty{border:1px dashed var(--line);border-radius:.7rem;background:var(--canvas);color:var(--muted);padding:1rem}.upload-result-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(12rem,.65fr);gap:1rem;align-items:start}.upload-framing-preview,.upload-output{display:block;width:100%;max-height:20rem;border:1px solid var(--line);object-fit:contain}.upload-views img,.upload-views canvas,.upload-output{background:repeating-conic-gradient(#edf0ec 0% 25%,#fff 0% 50%) 0 / 16px 16px;width:auto;max-width:100%;height:auto;object-fit:contain}.upload-result-content>div{min-width:0}.upload-result-facts,.upload-result-note{grid-column:1/-1;color:var(--muted);font-size:.88rem;line-height:1.5}.upload-downloads{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.6rem}.upload-download,.upload-original-download{border-radius:.65rem;background:var(--accent);color:#fff;padding:.7rem .9rem;font-weight:800;text-decoration:none}.upload-original-download{background:#527065}@media(max-width:720px){.upload-workflow{grid-template-columns:1fr}}@media(max-width:480px){.upload-editor{padding:.85rem}.upload-fields,.upload-result-content{grid-template-columns:1fr}.upload-downloads{display:grid}.upload-download,.upload-original-download{text-align:center}}
