:root{font:16px/1.55 Arial,Helvetica,sans-serif;color:#283d3a;background:#f7faf9;--green:#245e54;--pink:#d63b6e;--plum:#541c2c}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--green)}[hidden]{display:none!important}
.top{background:#fff;border-bottom:1px solid #d9e9e5}.top-inner{max-width:1160px;margin:auto;min-height:84px;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.header-actions{display:flex;align-items:center;gap:12px}
main{max-width:1050px;margin:auto;padding:32px 24px 60px}h1,h2,h3{line-height:1.2}h1,h2{font-family:Georgia,serif;color:var(--plum);font-weight:600}h1{font-size:clamp(29px,4vw,41px);margin:0 0 12px}h2{font-size:27px;margin:0}h3{font-size:19px;color:var(--green);margin:0 0 10px}p{margin:0 0 14px}.lead{max-width:780px;color:#526c65;margin-bottom:25px}
.free-step{margin:22px 0;background:#fff;border:1px solid #dceae6;border-radius:18px;padding:27px;min-width:0}.step-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px}.step-number{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:50%;background:#e6f3ef;color:var(--green);font-weight:800}
fieldset{padding:0;margin:0;border:0;min-width:0}.field{display:block;margin:15px 0}.field>span,.field>label{display:block;font-weight:700;color:#35574f;margin-bottom:7px}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid #afcbc2;border-radius:9px;background:#fff;color:#293e3a;padding:11px 12px;min-height:46px}textarea{resize:vertical;line-height:1.55}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #fedb68;outline-offset:2px}.count-field{max-width:255px}.hint{font-size:14px;color:#5c756c;line-height:1.5}.small-help{margin:10px 0 18px}.small-help summary{cursor:pointer;color:var(--green);font-weight:700}.small-help p{margin:12px 0}
.role-list{display:grid;gap:12px;margin:19px 0}.role-row{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:12px;padding:16px;border:1px solid #d6e8e0;border-radius:12px;background:#f8fbfa}.position-number{background:var(--green);color:#fff;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-weight:700;margin-top:30px}.role-row .field{margin:0}.role-explanation{grid-column:2/-1;color:#526c65;font-size:14px;margin:0}.role-explanation.needs-clarification{color:#8b4d14;font-weight:700}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;background:var(--pink);color:#fff;padding:12px 18px;min-height:46px;font-weight:700;text-decoration:none}.btn.secondary{background:#edf5f3;border:1px solid #c9e1da;color:var(--green)}.btn:disabled{opacity:.55;cursor:not-allowed}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0}.confirmation{display:flex;align-items:flex-start;gap:11px;padding:15px;background:#eef6f3;border:1px solid #c9e1da;border-radius:10px;margin:19px 0 0;cursor:pointer}.confirmation input{width:20px;height:20px;flex:none;margin:2px 0 0;accent-color:var(--green)}
.status{font-size:15px;color:var(--green);margin:10px 0;white-space:pre-line}.error{color:#a42648;font-weight:700;white-space:pre-line}.photo-section{border:1px solid #d2e7df;background:#f7fbfa;border-radius:12px;padding:18px;margin:19px 0 24px}.photo-section>summary{font-weight:700;color:var(--green);cursor:pointer}.photo-section>p{margin-top:14px}.photo-input{max-width:100%;font-size:14px}.photo-stage{position:relative;display:block;max-width:760px;margin:16px auto;background:#e5eeea;border-radius:9px;overflow:hidden;line-height:0}.photo-stage img{display:block;width:100%;height:auto;max-width:100%;user-select:none}.photo-stage:focus-visible{outline:3px solid #fedb68;outline-offset:4px}.photo-stage canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.photo-stage[aria-disabled=true]{opacity:.7}.photo-stage:not([aria-disabled=true]){cursor:crosshair}.marker-list{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.marker-list button{font-size:14px;min-height:44px;border:1px solid #b8d1ca;border-radius:8px;background:#fff;color:var(--green);padding:8px 12px}.marker-list button[aria-pressed=true]{background:var(--green);color:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.free-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}.free-card{border:1px solid #bed8cd;border-radius:12px;background:linear-gradient(145deg,#fff,#eaf5ef);padding:16px;text-align:center;min-width:0}.free-card h3{font-size:17px;margin-bottom:6px}.free-card .role-caption{font-size:14px;min-height:42px;overflow-wrap:anywhere}.free-card select{font-size:14px}.free-card img{display:block;max-width:140px;width:70%;height:auto;margin:15px auto 8px;border-radius:4px}.card-empty{height:110px;display:flex;align-items:center;justify-content:center;color:#637c73;font-size:14px}.certainty{font-size:14px;margin:10px 0 0;color:#8b4d14}.duplicate{border-color:#b9435c}.interpretation{min-height:230px}.credit-note{font-weight:700;color:var(--green);font-size:15px}.free-result{scroll-margin-top:20px}.feedback{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.feedback>div,.method-feedback{padding:18px;border-radius:12px;background:#f0f8f5;border:1px solid #dcece6}.feedback>div+div{background:#fff8eb;border-color:#f1e3c3}.feedback ul{padding-left:20px;margin:0}.feedback li{margin:6px 0}.score,.tag{display:inline-block;border-radius:100px;font-weight:700;padding:6px 13px;margin:12px 0;font-size:15px}.analysis-card{border:1px solid #dceae6;border-radius:12px;padding:18px;margin:14px 0}.analysis-card h3{margin-bottom:7px}.analysis-card .tag{margin:0 0 12px}.model{padding:18px;border:1px solid #dceae6;border-radius:12px;margin-top:18px}.model summary{cursor:pointer;font-size:19px;font-weight:700;color:var(--green)}.model ol{padding-left:24px}.model li{padding:10px 0}.model li p{margin-top:9px}.method-feedback{margin-top:18px}.method-feedback h3{margin-top:14px}.foot{max-width:1160px;margin:auto;padding:24px;border-top:1px solid #dceae6;font-size:14px;color:#647670}.footer-links{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:700px){main{padding:24px 15px 45px}.free-step{padding:19px}.role-row{grid-template-columns:28px minmax(0,1fr);gap:9px;padding:12px}.role-row .field:nth-of-type(2){grid-column:2}.role-explanation{grid-column:2}.position-number{width:27px;height:27px}.free-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.free-card{padding:11px}.feedback{grid-template-columns:1fr}.photo-section{padding:13px}h2{font-size:24px}}
@media(max-width:390px){.free-cards{grid-template-columns:1fr}.actions>.btn{width:100%}.top-inner{padding:12px 15px}}

.role-examples{grid-column:2;font-size:14px;color:var(--green)}.role-examples summary{cursor:pointer}.role-example{display:block;text-align:left;background:transparent;border:0;color:var(--green);padding:8px 0;min-height:44px}.role-example:hover{text-decoration:underline}
