:root{color-scheme:light;--bg:#f3f4ed;--paper:#fff;--ink:#182b23;--muted:#54635b;--green:#174535;--line:#dbe1d8;--soft:#eef4e9;font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}[hidden]{display:none!important}
:focus-visible{outline:3px solid #438368;outline-offset:3px}.shell{width:min(1140px,calc(100% - 72px));margin-inline:auto}.masthead{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d5ded4}.brand,.quiet-link{display:inline-flex;gap:10px;align-items:center;font-weight:750}.brand{font-size:16px;letter-spacing:-.045em}.brand-icon{width:38px;height:38px;border-radius:11px;background:var(--green);color:#f2f8e8;display:grid;place-items:center}.quiet-link{font-size:13px;color:var(--muted)}.quiet-link svg,.original svg{width:16px;height:16px}
.intro{padding:55px 0 30px}.eyebrow,.micro,footer span:first-child{font-size:11px;font-weight:800;letter-spacing:.14em}.eyebrow{color:var(--green);display:flex;align-items:center;gap:8px}.dot{width:7px;height:7px;border-radius:50%;background:#52876a}.intro h1{margin:15px 0 14px;font-size:clamp(37px,5.25vw,70px);letter-spacing:-.095em;line-height:1.14;font-weight:850}.intro h1 em{font-style:normal;color:#376650}.intro p{margin:0;color:var(--muted);line-height:1.7;font-size:15px;letter-spacing:-.025em}.mobile-break{display:none}
.workspace{display:grid;grid-template-columns:minmax(340px, .85fr) minmax(0, 1.15fr);gap:20px;align-items:start}.card{border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:0 8px 24px #253a2510;min-width:0}.controls{padding:23px}.step{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;letter-spacing:-.035em;margin:0 0 11px;padding:0}.step span{display:grid;place-items:center;background:#e9f0e7;color:#345d4b;border-radius:6px;width:28px;height:25px;font-size:11px;letter-spacing:0}
.field{display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid #cdd8ce;background:#fafbf8;border-radius:9px;color:#547466}.field:focus-within{outline:2px solid #438368;outline-offset:1px}.field input{width:100%;min-width:0;padding:13px 0;background:none;border:0;outline:none;color:var(--ink);font-size:14px}.field input::placeholder{color:#6c7b73}.lookup-actions{display:flex;gap:8px;margin-top:9px}.lookup-actions button,.save{min-height:43px;border:1px solid transparent;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800;white-space:nowrap;padding:0 12px}.lookup-actions button svg,.save svg{width:17px;height:17px}.primary,.save{background:var(--green);color:white}.primary{flex:1}.primary:hover:not(:disabled),.save:hover:not(:disabled){background:#246048}.lookup-actions .secondary{border-color:#d5dfd4;background:var(--soft);color:var(--green)}.secondary:hover:not(:disabled){background:#e0ecdd}.hint,.status{font-size:12px;line-height:1.55;margin:9px 0 0;color:var(--muted);word-break:keep-all}.status{color:var(--green)}.status.error{color:#a33126}.divider{margin:17px 0;border-top:1px solid #e2e8df}
fieldset{padding:0;margin:0;min-width:0;border:0}.presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.presets label{position:relative;cursor:pointer;min-width:0}.presets input{opacity:0;position:absolute;width:100%;height:100%;margin:0;cursor:pointer}.presets span{display:flex;flex-direction:column;gap:3px;padding:8px 9px;border:1px solid var(--line);border-radius:9px;min-height:53px}.presets input:checked+span{border-color:#46705c;background:var(--soft);color:var(--green)}.presets input:focus-visible+span{outline:3px solid #438368;outline-offset:2px}.presets strong{font-size:13px}.presets small{font-size:10px;color:var(--muted);white-space:nowrap}.custom{display:flex;align-items:end;gap:8px;margin-top:10px;font-size:12px}.custom label{flex:1;min-width:0}.custom input{display:block;width:100%;padding:7px;border:1px solid #cdd8ce;border-radius:7px;margin-top:3px}.custom>span{padding-bottom:7px}.save{margin-top:12px;width:100%;min-height:45px}
.preview{margin:0;overflow:hidden}.photo{position:relative;height:clamp(260px, 33vw, 428px);background:radial-gradient(ellipse at 15% 25%,#527b73,#1c3432 70%);display:grid;place-items:center;overflow:hidden}.photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.photo img.loaded{object-fit:contain;background:#172925}.photo-empty{display:grid;justify-items:center;gap:12px;color:#eef4ed;font-size:14px}.photo-empty svg{width:42px;height:42px}.badge{position:absolute;top:16px;left:16px;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#132923ed;color:white;font-size:11px;font-weight:700}.badge span{height:6px;width:6px;background:#a9d7a6;border-radius:50%}.preview figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 19px}.micro{color:#537363;font-size:9px}.preview h2{margin:5px 0 2px;font-size:17px;letter-spacing:-.045em}.preview p{margin:0;color:var(--muted);font-size:11px}.preview p:empty{display:none}.original{display:grid;place-items:center;width:35px;height:35px;flex:none;border:1px solid var(--line);border-radius:9px;color:var(--green)}.original:hover{background:var(--soft)}
footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #d5ded4;color:var(--muted);margin-top:29px;padding:18px 0 24px;font-size:11px}
@media(max-width:820px){.shell{width:calc(100% - 40px)}.workspace{grid-template-columns:minmax(0,1fr);max-width:650px}.intro{padding-top:39px}.photo{height:auto;aspect-ratio:16/10}.masthead{height:64px}}
@media(max-width:390px){.shell{width:calc(100% - 28px)}.controls{padding:15px}.intro h1{font-size:37px}.intro p{word-break:keep-all}.mobile-break{display:none}.lookup-actions button{padding-inline:8px;gap:5px}footer{display:grid}}
