:root{color-scheme:light;--ink:#182022;--muted:#667174;--line:#dbe0dd;--accent:#11634f;--gold:#e5c9a0}*{box-sizing:border-box}body{margin:0;background:#f3f5f1;color:var(--ink);font:16px/1.5 system-ui,-apple-system,sans-serif}header{background:#142124;color:white;padding:20px max(5%,calc((100% - 1000px)/2));display:flex;justify-content:space-between;gap:20px;align-items:center}a{color:inherit}.brand{text-decoration:none;font-size:25px;font-weight:800}.brand span{color:var(--gold)}header>a:last-child{font-size:14px}main{max-width:1000px;margin:36px auto;padding:0 24px 64px}h1{font-size:clamp(30px,5vw,44px);letter-spacing:-1.3px;margin:0 0 15px}h2{font-size:23px;margin-top:30px}.lead{font-size:19px;color:var(--muted)}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:24px;margin:20px 0}.narrow{max-width:540px}label{display:block;font-weight:650;margin:14px 0}input,textarea{display:block;font:inherit;width:100%;padding:12px 14px;margin-top:7px;background:#fff;border:1px solid #a9b5b0;border-radius:9px;color:var(--ink)}textarea{resize:vertical;min-height:220px;line-height:1.7}input:focus,textarea:focus{outline:3px solid #a4d2c1;outline-offset:2px}button,.button{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);border:1px solid var(--accent);color:white;min-height:48px;padding:11px 20px;border-radius:10px;font:600 16px/1.4 system-ui;text-decoration:none;cursor:pointer}button:disabled{opacity:.45;cursor:default}.secondary{background:white;color:var(--accent)}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:18px}.results{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.muted,small{color:var(--muted);font-size:14px}.notice,.error{padding:18px;border-radius:12px;background:#dff0e5;border:1px solid #86b99c}.error{background:#ffe8e4;border-color:#d39386}.photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.photo{padding:14px;border:1px solid var(--line);border-radius:12px}.photo img,#upload-preview img{width:100%;height:220px;object-fit:contain;background:#edf0ed;border-radius:8px}.check{display:flex;align-items:center;gap:10px;font-weight:400}.check input{width:20px;height:20px;margin:0}.sticky{position:sticky;bottom:0;background:#fffef4;padding:16px;border:1px solid var(--line);border-radius:12px;display:flex;gap:16px;align-items:center;margin:20px -8px -8px}.sticky span{font-size:13px;color:var(--muted)}.stage{display:grid;grid-template-columns:54px 1fr auto;gap:16px;align-items:center;text-decoration:none}.stage:hover{border-color:var(--accent)}.stage small{display:block;margin-top:5px}.number{font-size:28px;color:var(--accent);font-weight:700}.back{display:inline-block;margin:10px 0}.logout{margin-top:30px}summary{cursor:pointer}#upload-preview:empty{display:none}@media(max-width:640px){main{padding:0 16px 40px;margin-top:26px}.card{padding:18px}.grid{grid-template-columns:1fr}.grid label{margin:4px 0}.results{grid-template-columns:1fr 1fr}.photos{grid-template-columns:1fr}.stage{grid-template-columns:38px 1fr;gap:10px}.stage>span:last-child{grid-column:2;font-size:14px}.sticky{flex-direction:column;align-items:stretch;gap:8px}.sticky button{width:100%}header{padding:16px}.brand{font-size:22px}header>a:last-child{font-size:12px}}
