:root{--navy:#11293b;--navy2:#173d55;--accent:#0d7794;--accent-soft:#e9f7fa;--ink:#173044;--muted:#657583;--surface:#fff;--bg:#f2f5f7;--line:#d8e2e8;--danger:#a43f22;--danger-soft:#fff1eb;--success:#247353;--success-soft:#eaf8ef;--shadow:0 3px 18px rgba(18,43,59,.06);font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}.shell{width:min(100% - 32px,900px);margin-inline:auto}.site-header{background:var(--navy);color:white}.header-content{min-height:78px;display:flex;align-items:center;gap:13px}.logo{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#e5fbff;color:var(--navy);font-size:20px;font-weight:900;letter-spacing:-3px;padding-right:3px}.logo span{color:var(--accent)}.header-title{display:flex;flex-direction:column;line-height:1.25}.header-title strong{font-size:16px;letter-spacing:-.02em}.header-title small{font-size:10px;letter-spacing:.16em;margin-top:3px;color:#bdd6e1}.save-status{margin-left:auto;font-size:12px;color:#cee3e7;text-align:right}.intro{padding:36px 0 20px}.eyebrow,.section-index{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.11em}.intro h1{font-size:clamp(28px,5vw,40px);line-height:1.1;letter-spacing:-.04em;margin:9px 0 12px}.intro>p{color:#4b6578;max-width:670px;font-size:16px;margin:0 0 23px}.instruction{border-left:4px solid var(--accent);padding:15px 17px;background:#e7f2f5;border-radius:0 10px 10px 0;font-size:14px}.instruction p{margin:5px 0 0}.instruction code{overflow-wrap:anywhere;font-size:12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:clamp(17px,3vw,29px);box-shadow:var(--shadow);margin-bottom:18px}.section-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:22px}.section-head h2{font-size:23px;letter-spacing:-.035em;margin:5px 0 0;line-height:1.2}.hint,.counter{font-size:12px;color:var(--muted);white-space:nowrap;margin-top:9px}.counter{color:var(--accent);font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.form-grid label,.field-label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.form-grid label.wide{grid-column:1/-1}input,textarea,select{background:#fff;width:100%;border:1px solid #bfcdd6;border-radius:10px;padding:12px;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0d779425}textarea{resize:vertical;min-height:76px}.muted,.footnote{color:var(--muted);font-size:12px}.footnote{margin:15px 0 0}.progress-track{height:8px;background:#e9eef1;border-radius:20px;overflow:hidden;margin-bottom:14px}.progress-bar{height:100%;width:0%;background:var(--accent);transition:width .2s}.question-hint{margin:0 0 14px}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;vertical-align:middle}.risk-dot{background:var(--danger)}.question-nav{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:6px;margin-bottom:22px}.q-jump{background:#f4f7f8;border:1px solid var(--line);color:#667783;border-radius:9px;padding:7px 0;font-weight:700;font-size:12px;position:relative;min-width:0}.q-jump.done{background:#e6f4f0;border-color:#b9d9cc;color:#1c6c50}.q-jump.risky{background:var(--danger-soft);border-color:#e6bbaa;color:var(--danger)}.q-jump.active{outline:2px solid var(--accent);outline-offset:1px}.q-jump.risky::after{content:'';position:absolute;right:3px;top:3px;width:5px;height:5px;background:var(--danger);border-radius:50%}.question-card{background:#f8fafb;border:1px solid var(--line);border-radius:14px;padding:20px}.q-meta{color:var(--accent);text-transform:uppercase;font-weight:800;font-size:11px;letter-spacing:.08em}.q-title{font-size:clamp(18px,3vw,22px);line-height:1.4;font-weight:750;letter-spacing:-.02em;margin:8px 0 18px}.q-description{font-size:13px;color:#4d6572;padding:12px;background:#e8f0f4;border-radius:9px;margin-bottom:17px}.answer-buttons{display:flex;gap:10px;margin-bottom:19px}.answer{width:50%;padding:14px;border-radius:10px;border:1px solid #bdcbd3;background:#fff;color:var(--navy);font-size:16px;font-weight:800}.answer.selected{background:var(--navy2);border-color:var(--navy2);color:#fff}.answer.selected.risk{background:var(--danger);border-color:var(--danger)}.answer:focus-visible,.q-jump:focus-visible,.btn:focus-visible{outline:3px solid #22a6c4;outline-offset:2px}.q-field{margin-bottom:15px}.risk-details{border:1px solid #ecc8bb;border-radius:11px;background:#fff5f0;padding:15px;margin-bottom:17px}.risk-details h3{margin:0 0 4px;color:#963d22;font-size:15px}.risk-details p{font-size:13px;margin:0 0 14px}.checkline{margin-top:13px;display:flex;align-items:flex-start;gap:11px;font-size:14px;font-weight:650;cursor:pointer}.checkline input{width:20px;height:20px;flex-shrink:0;margin:2px 0;accent-color:var(--success)}.photo-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:9px 0}.photo-head strong{font-size:13px}.photo-head small{color:var(--muted);font-size:12px}.photo-input{width:100%;font-size:13px;padding:9px;background:white}.photo-list{display:flex;flex-wrap:wrap;gap:11px;margin-top:12px}.photo-tile{width:112px;position:relative}.photo-tile img{width:112px;height:86px;object-fit:cover;border-radius:8px;border:1px solid #d8e1e7}.photo-tile button{font-size:11px;border:none;background:#fff;border-radius:20px;padding:4px 8px;color:var(--danger);box-shadow:0 2px 6px #0002}.pager{margin-top:16px;display:flex;justify-content:space-between;gap:12px}.btn{border-radius:11px;border:1px solid transparent;padding:12px 17px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:47px}.btn-primary{background:var(--navy2);color:white}.btn-primary:hover{background:#23536b}.btn-secondary{background:#fff;border-color:#bbced9;color:var(--navy2)}.btn-secondary:hover{background:#f2f8fa}.btn-full{width:100%;font-size:16px;min-height:53px}.btn-text{background:none;color:#8b4d3a;text-decoration:underline;padding:10px 0}.summary{padding:16px;border-radius:12px;margin-bottom:15px;border:1px solid #b3dcca;background:var(--success-soft)}.summary.incomplete{background:var(--danger-soft);border-color:#ebc4b4}.summary strong{display:block;font-size:16px;margin-bottom:3px}.summary p{margin:0;font-size:13px}.export-panel>p{font-size:14px;color:#516674}.pdf-actions{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.pdf-actions[hidden]{display:none}.success{color:var(--success);font-weight:800}.action-row{display:flex;gap:10px;flex-wrap:wrap}.data-notice{background:#f1f6f8;border:1px solid #e0e8ed;border-radius:12px;padding:16px;margin-top:20px;font-size:13px}.data-notice p{margin:4px 0 0;color:#546a78}.app-footer{text-align:center;font-size:12px;color:#718494;padding:12px 0 44px}.error{color:var(--danger)}
@media(max-width:650px){.shell{width:min(100% - 24px,900px)}.header-content{min-height:70px}.header-title strong{font-size:14px}.logo{width:42px;height:42px}.save-status{font-size:10px;max-width:95px}.intro{padding-top:27px}.panel{border-radius:14px;padding:17px}.form-grid{grid-template-columns:1fr;gap:14px}.section-head h2{font-size:21px}.question-nav{grid-template-columns:repeat(7,minmax(0,1fr))}.question-card{padding:16px}.pager .btn{padding:11px 13px}.photo-head{align-items:start;flex-direction:column;gap:2px}.action-row .btn{flex:1}.hint{font-size:11px}}

/* Tydligt låst PDF-läge när riskanalysen inte är klar */
#createPdf:disabled{background:#d9e0e5;color:#536675;border:1px solid #c5d0d8;opacity:1;cursor:not-allowed}
#exportHint{margin:0 0 10px}
/* Flera checklistor och mallredigerare */
.back-link{margin:22px 0 -7px;font-size:13px}.back-link a{color:var(--accent);font-weight:700;text-decoration:none}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:15px;margin-top:16px}
.catalog-card{padding:24px 20px;border:1px solid #ccdae2;border-radius:13px;background:#f7fafb;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:10px;transition:transform .15s,border .15s}
.catalog-card:hover,.catalog-card:focus-visible{transform:translateY(-2px);border-color:var(--accent);background:white}
.catalog-card h3{font-size:20px;margin:0;color:var(--navy)}.catalog-card p{font-size:13px;color:var(--muted);margin:0;flex:1}.catalog-card strong{color:var(--accent);font-size:13px;margin-top:10px}
.editor-toolbar{margin-top:16px}.editor-file{cursor:pointer}
.editor-question{padding:18px;margin:0 0 14px;border:1px solid #d8e4e9;border-radius:12px;background:#f7fafb}
.editor-question-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.editor-mini-actions{display:flex;gap:5px}.editor-mini-actions button{border:1px solid #c9d5dd;border-radius:7px;background:white;padding:7px 11px;font-size:12px;color:var(--navy)}.editor-mini-actions button:disabled{opacity:.35}
.editor-field{margin:0 0 13px}.editor-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.form-grid small{font-size:11px;color:var(--muted);font-weight:400}.editor-option-grid label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}
@media(max-width:650px){.editor-option-grid{grid-template-columns:1fr}.catalog-grid{grid-template-columns:1fr}.editor-question{padding:13px}}
