.worker-page{background:var(--sg-paper)!important;}
.worker-shell{padding-top:26px!important;padding-bottom:48px!important;}
.worker-hero{
  position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;align-items:center;
  padding:32px 34px;margin-bottom:18px;background:linear-gradient(145deg,#fff 0%,#fff 64%,#fff9e5 100%);
  border:1px solid var(--sg-line);border-radius:22px;box-shadow:0 10px 30px rgba(21,59,103,.055);
}
.worker-hero::before{content:"";position:absolute;left:0;top:0;width:7px;height:100%;background:linear-gradient(180deg,var(--sg-yellow),var(--sg-teal));}
.worker-hero h1{margin:5px 0 12px;color:var(--sg-navy-2);font-size:clamp(1.75rem,3.4vw,2.5rem);line-height:1.25;}
.worker-hero p{max-width:760px;margin:0;color:#617184;line-height:1.88;font-size:.94rem;}
.worker-mascot{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #eadb9e;border-radius:18px;background:#fffaf0;}
.worker-mascot img{width:84px;height:84px;object-fit:contain;border-radius:17px;border:1px solid #eadb9e;flex:0 0 auto;}
.worker-mascot strong{display:block;color:var(--sg-green);font-size:.92rem;margin-bottom:4px;}.worker-mascot span{display:block;color:#7b7152;font-size:.75rem;line-height:1.55;}
.worker-status-note{display:flex;align-items:flex-start;gap:11px;margin:0 0 18px;padding:13px 15px;border-radius:13px;background:#f0f7f6;border:1px solid #d4e6e3;color:#526b6d;font-size:.82rem;line-height:1.7;}
.worker-status-note b{color:var(--sg-teal-2);}.worker-status-note .dot{width:9px;height:9px;border-radius:50%;margin-top:6px;background:var(--sg-teal);flex:0 0 auto;}
.worker-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0 13px;}
.worker-toolbar .spacer{flex:1;}
.worker-toolbar input[type="search"]{min-width:220px;max-width:330px;padding:9px 12px;background:#fff;border:1px solid var(--sg-line);}
.worker-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--sg-line);border-radius:11px;background:#fff;color:#526375;padding:9px 13px;font:700 .82rem/1 var(--sg-font);cursor:pointer;text-decoration:none;transition:.15s ease;}
.worker-btn:hover{border-color:#a8bec5;color:var(--sg-navy);background:#f8fbfa;}.worker-btn.primary{background:var(--sg-teal);border-color:var(--sg-teal);color:#fff;}.worker-btn.primary:hover{background:var(--sg-teal-2);}.worker-btn.danger{color:#a33c35;border-color:#e8c9c6;background:#fffafa;}
.worker-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:15px 0 20px;}
.worker-kpi{padding:18px;background:#fff;border:1px solid var(--sg-line);border-radius:16px;}.worker-kpi .k{font-size:.75rem;color:#738191;margin-bottom:6px;}.worker-kpi .v{font-size:1.6rem;font-weight:800;color:var(--sg-navy);}.worker-kpi .s{font-size:.72rem;color:#8793a0;margin-top:3px;}
.worker-card{background:#fff;border:1px solid var(--sg-line);border-radius:18px;padding:20px;box-shadow:0 4px 16px rgba(21,59,103,.03);}
.worker-card h2{margin:0 0 6px;color:var(--sg-navy-2);font-size:1.15rem;}.worker-card>.desc{margin:0 0 16px;color:#718090;font-size:.82rem;line-height:1.7;}
.worker-empty{padding:48px 20px;text-align:center;border:2px dashed #dbe3e8;border-radius:16px;background:#fafcfb;color:#8793a0;}.worker-empty img{width:74px;height:74px;border-radius:18px;object-fit:contain;border:1px solid #eadb98;margin-bottom:10px;}.worker-empty strong{display:block;color:#596a7c;margin-bottom:5px;}.worker-empty p{margin:0 auto 15px;max-width:520px;font-size:.8rem;line-height:1.7;}
.worker-table-wrap{overflow:auto;border:1px solid #e1e7eb;border-radius:14px;}.worker-table{width:100%;border-collapse:collapse;min-width:850px;background:#fff;font-size:.78rem;}.worker-table th{position:sticky;top:0;background:#f2f6f5;color:#516476;font-weight:800;text-align:left;padding:10px 11px;border-bottom:1px solid #dbe3e8;white-space:nowrap;}.worker-table td{padding:10px 11px;border-bottom:1px solid #edf1f3;color:#5c6b7a;vertical-align:top;line-height:1.6;}.worker-table tr:last-child td{border-bottom:0;}.worker-table .actions{white-space:nowrap;}.mini-btn{border:0;background:#eef4f3;color:var(--sg-navy);padding:6px 8px;border-radius:8px;font:700 .72rem/1 var(--sg-font);cursor:pointer;margin-right:4px;}.mini-btn.delete{background:#fff1ef;color:#a5433c;}
.worker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}.worker-tool-card{position:relative;display:block;min-height:180px;padding:20px;background:#fff;border:1px solid var(--sg-line);border-radius:17px;text-decoration:none;transition:.17s ease;}.worker-tool-card:hover{transform:translateY(-3px);box-shadow:0 9px 23px rgba(21,59,103,.07);border-color:#9fb7bd;}.worker-tool-card .code{display:inline-flex;min-width:40px;height:36px;align-items:center;justify-content:center;padding:0 9px;background:#eef5f4;color:var(--sg-teal);border-radius:10px;font-size:.7rem;font-weight:800;}.worker-tool-card h3{margin:13px 0 7px;color:var(--sg-navy);font-size:1rem;}.worker-tool-card p{margin:0;color:#6c7a89;font-size:.8rem;line-height:1.7;}.worker-tool-card .count{position:absolute;right:14px;top:14px;min-width:25px;height:25px;padding:0 7px;display:flex;align-items:center;justify-content:center;background:#fff8d8;border:1px solid #eadb98;border-radius:999px;color:#75611f;font-size:.7rem;font-weight:800;}
.worker-modal-backdrop{display:none;position:fixed;inset:0;z-index:1000;background:rgba(13,43,76,.42);padding:18px;overflow:auto;}.worker-modal-backdrop.open{display:flex;align-items:flex-start;justify-content:center;}.worker-modal{width:min(760px,100%);margin:34px auto;background:#fff;border:1px solid #dbe3e8;border-radius:20px;box-shadow:0 24px 70px rgba(13,43,76,.24);overflow:hidden;}.worker-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #e4eaed;background:#f8faf9;}.worker-modal-head h2{margin:0;color:var(--sg-navy);font-size:1.12rem;}.worker-modal-body{padding:20px;}.worker-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}.worker-field.full{grid-column:1/-1;}.worker-field label{display:block;margin-bottom:6px;color:#526476;font-size:.76rem;font-weight:800;}.worker-field input,.worker-field select,.worker-field textarea{width:100%;padding:10px 11px;background:#fff;border:1px solid #d6e0e4;border-radius:10px;color:#36485b;font:500 .84rem/1.55 var(--sg-font);}.worker-field textarea{min-height:100px;resize:vertical;}.worker-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:15px 20px;border-top:1px solid #e4eaed;background:#fafcfc;}
.worker-helper{margin-top:18px;padding:17px 18px;background:#fffaf0;border:1px solid #eadb9e;border-radius:14px;color:#776b4a;font-size:.8rem;line-height:1.75;}.worker-helper strong{color:#5e762f;}
@media(max-width:900px){.worker-hero{grid-template-columns:1fr;}.worker-mascot{max-width:320px;}.worker-kpis{grid-template-columns:1fr 1fr;}.worker-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.worker-shell{padding-top:16px!important;}.worker-hero{padding:24px 20px;border-radius:18px;}.worker-mascot img{width:70px;height:70px;}.worker-kpis,.worker-grid,.worker-form-grid{grid-template-columns:1fr;}.worker-field.full{grid-column:auto;}.worker-toolbar input[type="search"]{order:4;width:100%;max-width:none;}.worker-toolbar .spacer{display:none;}.worker-card{padding:16px;}}

.worker-mascot.full{min-height:150px;position:relative;overflow:hidden;background:linear-gradient(145deg,#fffaf0,#f2faf3)}.worker-mascot.full img{width:112px;height:135px;border:0!important;background:transparent!important;border-radius:0!important;object-fit:contain!important;object-position:center bottom!important;filter:drop-shadow(0 7px 8px rgba(116,84,5,.12))}.legacy-content-card{margin-bottom:16px}.risk-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:15px}.risk-step-grid a{display:flex;min-height:145px;flex-direction:column;padding:18px;border:1px solid #dbe3e8;border-radius:15px;text-decoration:none;background:linear-gradient(145deg,#fff,#f8fbfa);transition:.18s}.risk-step-grid a:hover{transform:translateY(-3px);border-color:#9eb8bd;box-shadow:0 8px 20px rgba(21,59,103,.07)}.risk-step-grid span{font-size:.68rem;color:var(--sg-teal);font-weight:800;letter-spacing:.04em}.risk-step-grid b{margin-top:9px;color:var(--sg-navy);font-size:1rem}.risk-step-grid small{margin-top:7px;color:#6c7b8b;line-height:1.55}.risk-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:14px}.risk-guide-grid>div{padding:15px 16px;border:1px solid #e0e7ea;border-radius:13px;background:#fafcfc}.risk-guide-grid b{color:var(--sg-navy);font-size:.88rem}.risk-guide-grid p{margin:6px 0 0;color:#657586;font-size:.8rem;line-height:1.7}.control-hierarchy{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.control-hierarchy span{padding:9px 11px;border:1px solid #dbe3e8;border-radius:11px;background:#f7faf9;color:#5d6d7d;font-size:.77rem}.control-hierarchy b{color:var(--sg-teal);margin-right:4px}.worker-checklist{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0;padding:0;list-style:none}.worker-checklist li{padding:11px 12px 11px 35px;border:1px solid #dde5e9;border-radius:11px;background:#fafcfc;color:#5d6d7c;font-size:.8rem;line-height:1.6;position:relative}.worker-checklist li::before{content:'✓';position:absolute;left:12px;top:10px;color:var(--sg-teal);font-weight:900}.worker-grid-ordered{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.risk-step-grid,.worker-grid-ordered{grid-template-columns:1fr 1fr}}@media(max-width:620px){.risk-step-grid,.risk-guide-grid,.worker-checklist,.worker-grid-ordered{grid-template-columns:1fr}.worker-mascot.full img{width:96px;height:115px}}

/* Live safety news */
.safety-news-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.safety-news-head .desc{margin:4px 0 0}.news-actions{display:flex;align-items:center;gap:10px}.news-status{font-size:12px;color:#718096}.news-refresh{border:1px solid #cbd5e1;background:#fff;border-radius:12px;padding:8px 12px;font-weight:800;color:#153b67;cursor:pointer}.news-refresh:hover{background:#f8fafc}.news-refresh:disabled{opacity:.45;cursor:wait}.safety-news-list{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e2e8f0;border-radius:18px;overflow:hidden;background:#fff}.safety-news-item{display:grid;grid-template-columns:34px 1fr 22px;gap:10px;align-items:center;padding:15px 16px;text-decoration:none;color:#153b67;border-bottom:1px solid #eef2f7}.safety-news-item:nth-child(odd){border-right:1px solid #eef2f7}.safety-news-item:hover{background:#f7fbfb}.news-no{font-size:11px;font-weight:900;color:#0b8d8b}.news-main{min-width:0}.news-main strong{display:block;font-size:14px;line-height:1.45;word-break:keep-all}.news-main small{display:block;margin-top:5px;color:#7a8798;font-size:11px}.news-arrow{color:#0b8d8b;font-weight:900}.news-loading{grid-column:1/-1;padding:28px;text-align:center;color:#718096}.news-error{color:#b45309}@media(max-width:820px){.safety-news-head{align-items:flex-start;flex-direction:column}.safety-news-list{grid-template-columns:1fr}.safety-news-item:nth-child(odd){border-right:0}.news-status{display:none}}

/* AI 순회점검일지 */
.patrol-shell{padding-bottom:68px}.patrol-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.patrol-section-head h2{margin:3px 0 5px}.patrol-section-head .desc{margin:0;color:#718090;font-size:.82rem;line-height:1.65}.patrol-ai-badge{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#eaf8f3;color:#087c69;font-size:.72rem;font-weight:900}.patrol-capture-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:18px}.patrol-upload-panel{display:flex;flex-direction:column;gap:11px}.patrol-camera-btn{min-height:48px}.patrol-paste-zone{min-height:132px;border:2px dashed #bfd2d7;border-radius:16px;background:#f8fbfb;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:#63788a;cursor:pointer;outline:none;text-align:center;padding:18px}.patrol-paste-zone:focus{border-color:#0b8d8b;box-shadow:0 0 0 3px rgba(11,141,139,.12)}.patrol-paste-zone strong{color:#153b67}.patrol-paste-zone small{color:#93a0ad}.patrol-context textarea{min-height:76px!important}.patrol-preview-wrap{position:relative;min-height:360px;border:1px solid #dce5e8;border-radius:17px;overflow:hidden;background:#f2f6f6;display:flex;align-items:center;justify-content:center}.patrol-preview-wrap img{width:100%;height:100%;max-height:520px;object-fit:contain;background:#0b1722}.patrol-preview-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;text-align:center;color:#768796;padding:25px}.patrol-preview-empty span{font-size:2.2rem}.patrol-preview-empty b{color:#52687a}.patrol-preview-empty small{max-width:260px;line-height:1.6}.patrol-remove-image{position:absolute;right:10px;top:10px;z-index:2}.patrol-state{margin:0;padding:10px 12px;border-radius:11px;background:#f5f7f8;color:#6c7b89;font-size:.77rem;line-height:1.5}.patrol-state.ok{background:#ecfdf5;color:#087c59}.patrol-state.bad{background:#fff4ed;color:#b45309}.patrol-form{margin-top:5px}.patrol-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.patrol-risk-choice{display:grid;grid-template-columns:1fr 1fr;gap:7px}.patrol-risk-choice label{display:flex;align-items:center;gap:7px;margin:0;padding:10px 11px;border:1px solid #d6e0e4;border-radius:10px;background:#fff;color:#536779;cursor:pointer}.patrol-risk-choice input{width:auto!important}.patrol-list-actions{display:flex;gap:7px;flex-wrap:wrap}.patrol-record-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.patrol-record{border:1px solid #dce5e8;border-radius:15px;padding:15px;background:#fff}.patrol-record-top{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start}.patrol-record-top img{width:70px;height:70px;object-fit:cover;border-radius:11px;border:1px solid #dbe3e8}.patrol-record-top span{display:block;color:#7b8997;font-size:.7rem}.patrol-record-top h3{margin:5px 0 0;color:#153b67;font-size:.9rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.patrol-risk-pill{padding:5px 8px;border-radius:999px;background:#f0f3f5;color:#71808e;font-size:.66rem!important;font-weight:900;white-space:nowrap}.patrol-risk-pill.on{background:#fff3cd;color:#8a6500}.patrol-record dl{margin:12px 0 0}.patrol-record dl>div{display:grid;grid-template-columns:72px 1fr;gap:7px;padding:7px 0;border-top:1px solid #edf1f3}.patrol-record dt{font-size:.7rem;font-weight:900;color:#6d7c8b}.patrol-record dd{margin:0;font-size:.76rem;line-height:1.55;color:#506172}.patrol-record-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:10px}
@media(max-width:900px){.patrol-capture-grid{grid-template-columns:1fr}.patrol-preview-wrap{min-height:300px}.patrol-record-grid{grid-template-columns:1fr}}
@media(max-width:600px){.patrol-section-head{flex-direction:column}.patrol-ai-badge{align-self:flex-start}.patrol-preview-wrap{min-height:240px}.patrol-risk-choice{grid-template-columns:1fr}.patrol-form-actions{display:grid;grid-template-columns:1fr 1fr}.patrol-form-actions .worker-btn{width:100%}.patrol-list-actions{width:100%}.patrol-list-actions .worker-btn{flex:1}.patrol-record-top{grid-template-columns:58px 1fr}.patrol-record-top img{width:58px;height:58px}.patrol-risk-pill{grid-column:1/-1;width:max-content}.patrol-record-actions{flex-wrap:wrap}.patrol-record-actions .worker-btn{flex:1}}


/* 순회점검 사진 미리보기 안정화: 사진 선택 후 안내문구가 겹치거나 깨지지 않도록 완전 분리 */
.patrol-preview-wrap{aspect-ratio:4/3;min-height:0!important;max-height:520px;isolation:isolate}
.patrol-preview-wrap.has-image{background:#0b1722}
.patrol-preview-wrap>img{display:block;width:100%;height:100%;max-height:none!important;object-fit:contain;background:#0b1722}
.patrol-preview-empty{position:absolute;inset:0;z-index:1}
.patrol-preview-empty[hidden],.patrol-preview-wrap>img[hidden],.patrol-remove-image[hidden]{display:none!important}
@media(max-width:900px){.patrol-preview-wrap{aspect-ratio:16/10;max-height:440px}}
@media(max-width:600px){.patrol-preview-wrap{aspect-ratio:4/3;max-height:360px}}

/* 위험성평가 탭 내부의 작은 실무가이드 바로가기 */
.risk-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.risk-title-row h2{margin-top:0}.risk-title-row .desc{margin-bottom:0}.risk-inline-guide{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:8px 11px;border:1px solid #cfe3e4;border-radius:12px;background:#f6fbfb;color:#0b6f76;text-decoration:none;font-size:.72rem;font-weight:900}.risk-inline-guide span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:24px;padding:0 7px;border-radius:8px;background:#e8f5f4;color:#087c79;font-size:.64rem;letter-spacing:.04em}.risk-inline-guide:hover{background:#edf8f7;border-color:#9ed2d0}@media(max-width:680px){.risk-title-row{flex-direction:column}.risk-inline-guide{align-self:flex-start}}


/* 최신 안전관리자 채용공고 */
.safety-jobs-card{margin-top:16px}.safety-jobs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:11px}.safety-jobs-head .desc{margin:4px 0 0;max-width:760px}.jobs-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.jobs-status{font-size:12px;color:#718096;white-space:nowrap}.jobs-refresh{border:1px solid #cbd5e1;background:#fff;border-radius:12px;padding:8px 12px;font:800 .76rem/1 var(--sg-font);color:#153b67;cursor:pointer}.jobs-refresh:hover{background:#f8fafc}.jobs-refresh:disabled{opacity:.45;cursor:wait}.jobs-source-note{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 13px}.jobs-source-note span{padding:5px 8px;border:1px solid #d9e6e6;border-radius:999px;background:#f4faf9;color:#607681;font-size:.66rem;font-weight:800}.safety-jobs-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.safety-job-item{display:block;padding:15px 16px;border:1px solid #e0e7ea;border-radius:15px;background:linear-gradient(145deg,#fff,#fbfdfc);text-decoration:none;color:#153b67;transition:.16s ease;min-width:0}.safety-job-item:hover{transform:translateY(-2px);border-color:#a8c6c8;box-shadow:0 8px 20px rgba(21,59,103,.055);background:#fbfefe}.job-top{display:flex;align-items:center;gap:6px;min-width:0}.job-category{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;font-size:.65rem;font-weight:900}.job-category{background:#f3f5f7;color:#667789}.job-arrow{margin-left:auto;color:#0b8d8b;font-size:.69rem;font-weight:900;white-space:nowrap}.job-sentence{margin:10px 0 9px;color:#536475;font-size:.82rem;line-height:1.62;word-break:keep-all}.job-sentence strong{color:#153b67;font-size:.91rem}.job-sentence b{color:#0b7b80}.job-meta{display:flex;gap:6px;flex-wrap:wrap}.job-meta span{position:relative;color:#788797;font-size:.68rem;line-height:1.45}.job-meta span+span::before{content:'·';margin-right:6px;color:#b2bdc5}.jobs-loading{grid-column:1/-1;padding:30px;text-align:center;border:1px dashed #d7e2e5;border-radius:15px;background:#fbfdfc;color:#718096;font-size:.8rem}
@media(max-width:820px){.safety-jobs-head{align-items:flex-start;flex-direction:column}.jobs-actions{width:100%;justify-content:space-between}.jobs-status{white-space:normal}.safety-jobs-list{grid-template-columns:1fr}}
@media(max-width:520px){.safety-job-item{padding:14px}.job-top{flex-wrap:wrap}.job-arrow{margin-left:auto}.job-sentence{word-break:normal}.jobs-source-note{margin-bottom:10px}}

/* ===== KRAS 위험성평가 v14 ===== */
.kras-page{scroll-behavior:smooth}.kras-shell{max-width:1220px!important}.kras-hero strong{color:var(--sg-navy)}.kras-hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.kras-evidence-note{display:flex;align-items:flex-start;gap:12px;margin:-3px 0 14px;padding:13px 15px;border:1px solid #cfe2de;border-radius:13px;background:#eef8f6;color:#54706e;font-size:.78rem;line-height:1.65}.kras-evidence-note b{flex:0 0 auto;color:#087b73}.kras-step-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 16px;position:sticky;top:72px;z-index:20;padding:8px;background:rgba(247,250,249,.95);backdrop-filter:blur(10px);border:1px solid #e0e8e8;border-radius:15px}.kras-step-nav a{display:flex;align-items:center;gap:8px;min-height:46px;padding:8px 10px;border-radius:10px;text-decoration:none;color:#5f7081;background:#fff;border:1px solid #e1e8eb}.kras-step-nav a:hover{border-color:#9fc2c2;background:#f2faf8}.kras-step-nav span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:#eaf6f4;color:#087b73;font-size:.67rem;font-weight:900}.kras-step-nav b{font-size:.76rem}.kras-kpis{margin-top:0}.kras-section{margin-bottom:16px;scroll-margin-top:145px}.kras-section-head,.kras-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.kras-section-head h2,.kras-title-row h2{margin:2px 0 5px}.kras-section-head .desc,.kras-title-row .desc{margin:0;max-width:800px;color:#6b7a8a;font-size:.8rem;line-height:1.65}.kras-section-no{display:inline-block;color:#087b73;font-size:.66rem;font-weight:900;letter-spacing:.07em}.kras-save-state{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f1f5f5;color:#82909b;font-size:.65rem;white-space:nowrap}.kras-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:17px}.kras-form-grid .full{grid-column:1/-1}.kras-form-grid .worker-field label,.kras-source-field legend{display:block;margin-bottom:6px;color:#526476;font-size:.75rem;font-weight:800}.kras-form-grid input,.kras-form-grid select,.kras-form-grid textarea{width:100%;padding:10px 11px;border:1px solid #d6e0e4;border-radius:10px;background:#fff;color:#36485b;font:500 .82rem/1.55 var(--sg-font)}.kras-form-grid textarea{min-height:90px;resize:vertical}.kras-source-field{border:1px solid #dce5e7;border-radius:13px;padding:13px}.kras-source-field legend{padding:0 6px;margin-left:2px}.kras-source-field legend small{color:#8a979f;font-weight:600}.kras-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.kras-check-grid label{display:flex;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid #e2e8eb;border-radius:10px;background:#fafcfc;color:#5d6e7d;font-size:.74rem;line-height:1.5;cursor:pointer}.kras-check-grid input{width:16px!important;height:16px;margin-top:2px;accent-color:#0b8d8b}.kras-check-grid em{font-style:normal;color:#0b8d8b;font-size:.64rem;font-weight:900}.kras-criteria{border:1px solid #d8e5e3;border-radius:15px;padding:15px;background:linear-gradient(145deg,#fbfefd,#f4faf8)}.kras-criteria-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.kras-criteria-head>div b{display:block;color:#173b60;font-size:.88rem}.kras-criteria-head>div span{display:block;margin-top:4px;color:#6d7f8d;font-size:.72rem;line-height:1.5}.kras-criteria-head>label{color:#526476;font-size:.7rem;font-weight:800}.kras-criteria-head select{margin-top:4px;min-width:150px}.kras-level-criteria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.kras-level-criteria label{display:grid;grid-template-columns:30px 1fr;align-items:stretch;border:1px solid #e0e6e8;border-radius:11px;overflow:hidden;background:#fff}.kras-level-criteria b{display:flex;align-items:center;justify-content:center;color:#fff}.kras-level-criteria .high b{background:#d94b42}.kras-level-criteria .medium b{background:#e8a32b}.kras-level-criteria .low b{background:#2c9b75}.kras-level-criteria textarea{border:0!important;border-radius:0!important;min-height:85px!important;font-size:.72rem!important}.kras-mini-note{margin:9px 0 0;color:#798895;font-size:.68rem;line-height:1.55}.kras-method-tip{margin-top:11px;padding:13px;border:1px solid #e1e8ea;border-radius:11px;background:#fff}.kras-method-tip strong{color:#173b60;font-size:.78rem}.kras-method-tip p{margin:5px 0 0;color:#687987;font-size:.74rem;line-height:1.65}.kras-frequency-criteria{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.kras-frequency-criteria label{font-size:.7rem;font-weight:800;color:#526476}.kras-frequency-criteria .wide{grid-column:1/-1}.kras-frequency-criteria input{margin-top:5px}.kras-education{margin-bottom:16px}.kras-study-body{margin-top:15px;padding-top:15px;border-top:1px solid #e5eaec}.kras-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.kras-method-grid article{padding:15px;border:1px solid #dfe7e9;border-radius:13px;background:#fafcfc}.method-code{display:inline-flex;padding:4px 7px;border-radius:7px;background:#e8f6f3;color:#087b73;font-size:.62rem;font-weight:900}.kras-method-grid h3{margin:10px 0 6px;color:#173b60;font-size:.86rem}.kras-method-grid p{margin:0;color:#687988;font-size:.72rem;line-height:1.65}.kras-principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.kras-principle-grid>div{padding:12px 13px;border-left:3px solid #a8cec6;background:#f5faf9;border-radius:8px}.kras-principle-grid b{color:#23415e;font-size:.77rem}.kras-principle-grid p{margin:4px 0 0;color:#687988;font-size:.71rem;line-height:1.6}.kras-source-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:11px;font-size:.7rem;color:#7e8d99}.kras-source-links a{padding:5px 8px;border-radius:8px;background:#eef4f4;color:#176b69;text-decoration:none;font-weight:800}.kras-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 12px}.kras-toolbar input,.kras-toolbar select{padding:9px 10px;border:1px solid #d8e1e5;background:#fff;border-radius:10px;color:#536576;font:600 .76rem var(--sg-font)}.kras-toolbar input{min-width:260px}.kras-toolbar .spacer{flex:1}.kras-table{min-width:1180px}.kras-table td small{display:block;color:#8795a0;margin-top:3px}.kras-table td:nth-child(3){min-width:300px}.kras-table td:nth-child(5),.kras-table td:nth-child(6){min-width:200px}.risk-row-bad{background:#fffafa}.hazard-type{display:inline-flex;margin-bottom:5px;padding:3px 6px;border-radius:6px;background:#f1f5f6;color:#697a88;font-size:.62rem;font-weight:800}.review-flag{display:block;margin-top:6px;color:#b76b00;font-size:.64rem;font-style:normal;font-weight:800}.risk-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:5px 8px;border-radius:999px;font-size:.64rem;font-weight:900}.risk-badge.ok{background:#e8f7ef;color:#087853}.risk-badge.bad{background:#fff0ed;color:#b23d34}.risk-badge.warn{background:#fff8df;color:#926c00}.risk-badge.unknown{background:#eef2f4;color:#71818d}.status-chip{display:inline-flex;padding:5px 7px;border-radius:8px;background:#eef4f4;color:#60747d;font-size:.64rem;font-weight:800}.status-chip.done{background:#e9f8ef;color:#087853}.status-chip.overdue{background:#fff0ed;color:#b23d34}.kras-board-empty,.kras-share-empty{padding:28px 18px;border:1px dashed #cedadd;border-radius:13px;background:#fafcfc;color:#82909b;text-align:center;font-size:.77rem;line-height:1.6}.kras-decision-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.kras-decision-summary>div{padding:13px;border:1px solid #e0e7e9;border-radius:12px;background:#fafcfc}.kras-decision-summary span{display:block;color:#83919d;font-size:.66rem}.kras-decision-summary b{display:block;margin-top:4px;color:#173b60;font-size:.88rem}.danger-text{color:#b23d34!important}.kras-risk-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.kras-risk-cards article{padding:14px;border:1px solid #e0e7ea;border-radius:13px;background:#fff}.risk-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.risk-card-top>b{color:#27435f;font-size:.82rem}.kras-risk-cards p{margin:8px 0 6px;color:#5e7080;font-size:.74rem;line-height:1.55}.kras-risk-cards small{display:block;color:#87939e;font-size:.68rem;line-height:1.5;margin-bottom:9px}.kras-risk-cards .worker-btn{padding:7px 9px;font-size:.7rem}.kras-hierarchy{margin:13px 0}.kras-action-list{display:grid;gap:9px}.kras-action-list article{border:1px solid #e0e7e9;border-radius:13px;overflow:hidden;background:#fff}.kras-action-list article.overdue{border-color:#efc8c2}.action-main{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px}.action-title{display:flex;align-items:flex-start;gap:10px}.hierarchy-no{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:#eaf6f3;color:#087b73;font-size:.72rem;font-weight:900}.action-title b{display:block;color:#27425c;font-size:.8rem}.action-title p{margin:4px 0 0;color:#687987;font-size:.72rem;line-height:1.5}.risk-transition{display:flex;align-items:center;gap:6px}.risk-transition>span{color:#9aa6ae}.action-detail{display:grid;grid-template-columns:2fr 1fr 1fr;border-top:1px solid #edf1f2;border-bottom:1px solid #edf1f2;background:#fafcfc}.action-detail>div{padding:10px 13px;border-right:1px solid #edf1f2}.action-detail>div:last-child{border-right:0}.action-detail span{display:block;color:#87949e;font-size:.62rem}.action-detail b{display:block;margin-top:3px;color:#536574;font-size:.72rem;line-height:1.5}.action-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px}.action-foot>span{color:#87939d;font-size:.65rem}.action-foot .worker-btn{padding:7px 9px;font-size:.68rem}.kras-tbm-box{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:13px 0 9px;padding:13px 15px;border:1px solid #d9e6e2;border-radius:13px;background:#f4faf8}.kras-tbm-box h3{margin:0;color:#173b60;font-size:.83rem}.kras-tbm-box p{margin:4px 0 0;color:#6c7e88;font-size:.69rem}.kras-tbm-list{display:grid;gap:7px;margin-bottom:13px}.kras-tbm-list>div{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:11px 12px;border:1px solid #e0e8e8;border-radius:11px;background:#fff}.kras-tbm-list>div>span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:#eaf6f3;color:#087b73;font-size:.65rem;font-weight:900}.kras-tbm-list b{color:#27445f;font-size:.77rem}.kras-tbm-list p{margin:4px 0;color:#627483;font-size:.71rem;line-height:1.5}.kras-tbm-list small{color:#7f8e98;font-size:.66rem}.kras-share-list{display:grid;gap:7px}.kras-share-list article{display:flex;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid #e1e7e9;border-radius:11px;background:#fafcfc}.kras-share-list article>div:first-child{min-width:0}.kras-share-list span{display:inline-flex;padding:3px 6px;border-radius:6px;background:#eaf6f3;color:#087b73;font-size:.61rem;font-weight:800}.kras-share-list b{display:inline;margin-left:7px;color:#435a6e;font-size:.73rem}.kras-share-list p{margin:6px 0 3px;color:#647482;font-size:.71rem;line-height:1.5}.kras-share-list small{color:#8b979f;font-size:.65rem}.kras-readiness{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:center;margin:14px 0}.readiness-score{padding:15px;border:1px solid #dce6e5;border-radius:13px;background:#f5faf9}.readiness-score>b{display:block;color:#087b73;font-size:1.45rem}.readiness-score>span{display:block;color:#687b85;font-size:.67rem;margin:3px 0 9px}.readiness-score>div{height:7px;background:#dce9e6;border-radius:99px;overflow:hidden}.readiness-score i{display:block;height:100%;background:#0b8d8b;border-radius:99px}.readiness-list{display:flex;gap:6px;flex-wrap:wrap}.readiness-list span{padding:6px 8px;border-radius:8px;font-size:.66rem;font-weight:800}.readiness-list .ok{background:#e8f7ef;color:#087853}.readiness-list .todo{background:#fff5e6;color:#936300}.kras-export-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:13px}.kras-compat-note{padding:16px;border:1px solid #ead99f;border-radius:14px;background:#fffaf0}.kras-compat-note>strong{color:#6c5a1c;font-size:.82rem}.kras-compat-note p{margin:6px 0 12px;color:#786d51;font-size:.72rem;line-height:1.72}.kras-compat-note>div{display:flex;gap:7px;flex-wrap:wrap}.kras-modal{width:min(920px,100%)}.modal-open{overflow:hidden}.kras-modal-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:16px}.kras-modal-progress span{padding:7px;text-align:center;border-radius:8px;background:#f0f4f5;color:#7e8c96;font-size:.65rem;font-weight:800}.kras-modal-progress .on{background:#e8f6f3;color:#087b73}.kras-method-fields{grid-column:1/-1}.method-field-card{padding:14px;border:1px solid #d8e5e2;border-radius:13px;background:#f6fbfa}.method-field-card.residual{background:#fbfaf3;border-color:#e6dfc8}.method-field-card h3{margin:0;color:#173b60;font-size:.82rem}.method-field-card>p{margin:4px 0 11px;color:#71818d;font-size:.68rem;line-height:1.5}.method-field-card>label{display:block;margin-top:9px;color:#526476;font-size:.7rem;font-weight:800}.method-field-card textarea{width:100%;margin-top:5px;min-height:65px;padding:9px 10px;border:1px solid #d8e1e4;border-radius:9px;font:500 .76rem/1.5 var(--sg-font)}.risk-choice-row{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.risk-choice-row label{cursor:pointer}.risk-choice-row input{position:absolute;opacity:0;pointer-events:none}.risk-choice-row span{display:inline-flex;align-items:center;justify-content:center;min-width:74px;padding:8px 10px;border:2px solid transparent;border-radius:9px;background:#fff;color:#657684;font-size:.72rem;font-weight:900}.risk-choice-row .high{border-color:#f2c7c2;color:#b23d34;background:#fff7f6}.risk-choice-row .medium{border-color:#f1dfae;color:#936600;background:#fffbef}.risk-choice-row .low{border-color:#bfe2d2;color:#087853;background:#f1fbf6}.risk-choice-row input:checked+span{box-shadow:0 0 0 3px rgba(21,59,103,.13);border-color:#153b67}.frequency-inputs{display:flex;align-items:flex-end;gap:7px;margin:10px 0}.frequency-inputs label{font-size:.68rem;font-weight:800;color:#526476}.frequency-inputs input{display:block;width:90px;margin-top:4px;padding:9px;border:1px solid #d7e0e3;border-radius:9px}.frequency-inputs>span{padding-bottom:10px;color:#84929d;font-weight:900}.frequency-inputs output{display:flex;align-items:center;justify-content:center;min-width:62px;height:38px;border-radius:9px;background:#173b60;color:#fff;font-size:.82rem;font-weight:900}.score-rule{margin:6px 0!important;padding:8px 9px;background:#fff;border-radius:8px;color:#71808b!important}.score-rule b{color:#173b60}.kras-hazard-form .worker-field textarea{min-height:84px}
@media(max-width:980px){.kras-step-nav{top:62px;grid-template-columns:repeat(5,max-content);overflow-x:auto;justify-content:start}.kras-step-nav a{min-width:125px}.kras-method-grid{grid-template-columns:1fr 1fr}.kras-check-grid{grid-template-columns:1fr 1fr}.kras-decision-summary{grid-template-columns:1fr 1fr}.kras-risk-cards{grid-template-columns:1fr}.action-detail{grid-template-columns:1fr}.action-detail>div{border-right:0;border-bottom:1px solid #edf1f2}.action-detail>div:last-child{border-bottom:0}.kras-readiness{grid-template-columns:1fr}.readiness-score{max-width:280px}}
@media(max-width:680px){.kras-step-nav{top:55px;margin-left:-5px;margin-right:-5px;border-radius:12px}.kras-step-nav a{min-width:112px;padding:7px}.kras-step-nav b{font-size:.7rem}.kras-evidence-note{flex-direction:column;gap:4px}.kras-section-head,.kras-title-row,.kras-criteria-head,.kras-tbm-box,.action-main,.action-foot{flex-direction:column;align-items:stretch}.kras-form-grid,.kras-level-criteria,.kras-frequency-criteria,.kras-method-grid,.kras-principle-grid,.kras-check-grid,.kras-decision-summary{grid-template-columns:1fr}.kras-form-grid .full,.kras-frequency-criteria .wide{grid-column:auto}.kras-toolbar input{width:100%;min-width:0}.kras-toolbar select{flex:1}.risk-transition{justify-content:flex-start}.kras-tbm-box .worker-btn{align-self:flex-start}.kras-share-list article{flex-direction:column}.frequency-inputs{flex-wrap:wrap}.kras-hero-actions .worker-btn,.kras-export-actions .worker-btn{flex:1 1 160px}.kras-modal-progress{grid-template-columns:1fr 1fr}.kras-compat-note>div .worker-btn{width:100%}}

/* ===== v15 KRAS smart import + Groq AI ===== */
.kras-smart-start{position:relative;overflow:hidden;margin-bottom:16px;background:linear-gradient(145deg,#fff,#f7fbfa)}
.kras-smart-mascot{width:94px;height:112px;object-fit:contain;flex:0 0 auto;margin-top:-8px;filter:drop-shadow(0 9px 16px rgba(21,59,103,.08))}
.kras-smart-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.kras-smart-card{padding:16px;border:1px solid #dce6e7;border-radius:15px;background:#fff;min-width:0}
.kras-smart-card.import{box-shadow:inset 0 3px 0 #0b8d8b}.kras-smart-card.ai{box-shadow:inset 0 3px 0 #e5b93a}
.kras-smart-card-head{display:flex;align-items:center;gap:11px}.kras-smart-card-head img{width:58px;height:64px;object-fit:contain;flex:0 0 auto}.kras-smart-card-head b{display:block;color:#173b60;font-size:.9rem}.kras-smart-card-head span{display:block;margin-top:3px;color:#83919c;font-size:.68rem}
.kras-smart-card>p{margin:10px 0 12px;color:#687987;font-size:.73rem;line-height:1.65}.kras-smart-card>p b{color:#34566e}
.kras-smart-actions{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.kras-paste-label{display:block;margin-top:12px;color:#526476;font-size:.72rem;font-weight:800}.kras-paste-label textarea{display:block;width:100%;min-height:96px;margin-top:6px;padding:10px 11px;border:1px solid #d6e0e4;border-radius:10px;background:#fbfdfd;color:#445768;font:500 .75rem/1.55 var(--sg-font);resize:vertical}
.kras-smart-status{margin-top:9px;padding:9px 10px;border-radius:9px;background:#f2f6f6;color:#71808b;font-size:.68rem;line-height:1.5}.kras-smart-status.ok{background:#eaf7f0;color:#087853}.kras-smart-status.bad{background:#fff0ed;color:#a94137}.kras-smart-status.working{background:#eef5fb;color:#315f87}
.kras-ai-form{display:grid;grid-template-columns:1fr 1fr;gap:8px}.kras-ai-form label{color:#526476;font-size:.69rem;font-weight:800}.kras-ai-form .wide{grid-column:1/-1}.kras-ai-form input,.kras-ai-form textarea{display:block;width:100%;margin-top:5px;padding:9px 10px;border:1px solid #d8e1e4;border-radius:9px;background:#fff;color:#425567;font:500 .74rem/1.5 var(--sg-font)}.kras-ai-form textarea{min-height:78px;resize:vertical}
.kras-ai-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;padding:10px 11px;border-radius:10px;background:#f4f9f8}.kras-ai-summary b{color:#173b60;font-size:.76rem}.kras-ai-summary span{color:#087b73;font-size:.66rem;font-weight:900}.kras-ai-draft-list{display:grid;gap:7px;margin-top:8px;max-height:360px;overflow:auto;padding-right:2px}.kras-ai-draft-list article{padding:10px 11px;border:1px solid #e0e7e9;border-radius:10px;background:#fff}.kras-ai-draft-list article>div{display:flex;align-items:center;gap:7px}.kras-ai-draft-list article>div>span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;background:#edf7f5;color:#087b73;font-size:.61rem;font-weight:900}.kras-ai-draft-list b{color:#28465f;font-size:.74rem}.kras-ai-draft-list em{margin-left:auto;padding:3px 6px;border-radius:6px;background:#fff4e7;color:#9a6500;font-size:.61rem;font-style:normal;font-weight:900}.kras-ai-draft-list p{margin:6px 0;color:#60717f;font-size:.7rem;line-height:1.5}.kras-ai-draft-list small{display:block;margin-top:3px;color:#84919a;font-size:.64rem;line-height:1.45}
.kras-ai-safety-note{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:13px;margin-top:12px;padding:12px 14px;border:1px solid #ead9b0;border-radius:13px;background:#fffaf1}.kras-ai-safety-note img{width:76px;height:88px;object-fit:contain}.kras-ai-safety-note b{color:#715516;font-size:.77rem}.kras-ai-safety-note p{margin:4px 0 0;color:#756b54;font-size:.68rem;line-height:1.65}.kras-ai-safety-note strong{color:#9b4d24}
@media(max-width:900px){.kras-smart-grid{grid-template-columns:1fr}.kras-smart-mascot{width:78px;height:92px}.kras-ai-draft-list{max-height:440px}}
@media(max-width:680px){.kras-smart-mascot{display:none}.kras-smart-card{padding:13px}.kras-ai-form{grid-template-columns:1fr}.kras-ai-form .wide{grid-column:auto}.kras-smart-actions .worker-btn{width:100%}.kras-ai-safety-note{grid-template-columns:58px 1fr}.kras-ai-safety-note img{width:54px;height:66px}.kras-ai-summary{align-items:flex-start;flex-direction:column}}

/* v16 KRAS attachments */
.kras-attachment-field small{display:block;margin:7px 0 9px;color:#738295;font-size:.72rem;line-height:1.55}.kras-attachment-list{display:flex;flex-wrap:wrap;gap:7px;min-height:10px}.kras-attachment-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:7px 9px;border:1px solid #d9e4e8;border-radius:10px;background:#f8fbfb;color:#3d5267;font-size:.72rem}.kras-attachment-chip b{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kras-attachment-chip button{border:0;background:transparent;color:#0b8185;font-weight:800;cursor:pointer;padding:2px 4px}.kras-attachment-chip button.delete{color:#b5463c}.kras-share-files{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.kras-share-files span{padding:4px 7px;border-radius:8px;background:#eef6f5;color:#486476;font-size:.67rem}.kras-share-files button{border:0;background:#eef6f5;color:#0b8185;font-size:.67rem;font-weight:800;cursor:pointer;padding:4px 7px;border-radius:8px}@media(max-width:560px){.kras-attachment-chip{width:100%;justify-content:flex-start}.kras-attachment-chip b{max-width:150px}}

/* ===== v16 public-data field context ===== */
.public-safety-card{margin-bottom:16px;background:linear-gradient(145deg,#fff,#f5fbfa)}
.public-safety-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.public-safety-head>img{width:86px;height:96px;object-fit:contain;filter:drop-shadow(0 7px 12px rgba(21,59,103,.07));flex:0 0 auto}.public-safety-head .desc{margin:6px 0 0;max-width:760px;color:#6d7d8d;font-size:.78rem;line-height:1.7}
.public-safety-controls{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;margin:13px 0}.public-safety-controls label{display:grid;gap:5px;color:#596b7d;font-size:.7rem;font-weight:800}.public-safety-controls select{min-width:126px;padding:9px 28px 9px 10px;border:1px solid #d5e0e4;border-radius:10px;background:#fff;color:#40556a;font:600 .78rem var(--sg-font)}.public-safety-controls>span{margin-left:auto;color:#7b8998;font-size:.68rem}.public-safety-controls>span.bad{color:#ad493f}
.public-safety-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.public-safety-item{min-width:0;padding:13px 14px;border:1px solid #dce5e7;border-radius:13px;background:#fff}.public-safety-item>div span{display:block;color:#79909c;font-size:.65rem;font-weight:900;letter-spacing:.02em}.public-safety-item>div b{display:block;margin-top:5px;color:#1e425e;font-size:.8rem;line-height:1.55;word-break:keep-all}.public-safety-item small{display:block;margin-top:7px;color:#94a0a9;font-size:.61rem;line-height:1.45}.public-safety-item ul{margin:7px 0 0;padding-left:15px;color:#6e7d87;font-size:.62rem;line-height:1.55}.public-safety-item.weather{box-shadow:inset 0 3px 0 #4ca1ca}.public-safety-item.air{box-shadow:inset 0 3px 0 #75b56e}.public-safety-item.wildfire{box-shadow:inset 0 3px 0 #e6a14e}.public-safety-item.fire{box-shadow:inset 0 3px 0 #d65e52}.public-safety-empty{grid-column:1/-1;padding:22px;text-align:center;border:1px dashed #d4e0e2;border-radius:12px;background:#fbfdfd;color:#81909b;font-size:.73rem}.public-safety-empty.error{color:#9c4d44;background:#fff8f6}.public-safety-note{margin-top:10px;padding:9px 11px;border-radius:10px;background:#f4f7f7;color:#73828d;font-size:.66rem;line-height:1.6}
@media(max-width:980px){.public-safety-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.public-safety-head>img{width:62px;height:72px}.public-safety-controls{align-items:stretch}.public-safety-controls label{width:100%}.public-safety-controls select{width:100%}.public-safety-controls .worker-btn{flex:1 1 145px}.public-safety-controls>span{width:100%;margin-left:0}.public-safety-grid{grid-template-columns:1fr}.public-safety-item{padding:12px}.public-safety-item>div b{font-size:.78rem}}

/* v16 KRAS public-data context */
.kras-public-context{margin:11px 0 4px;padding:11px 12px;border:1px solid #d9e6e4;border-radius:11px;background:#f8fbfa}.kras-public-context>div:first-child b{display:block;color:#244e62;font-size:.72rem}.kras-public-context>div:first-child span{display:block;margin-top:3px;color:#7a8994;font-size:.64rem;line-height:1.5}.kras-public-controls{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.kras-public-controls select{min-width:112px;padding:8px 26px 8px 9px;border:1px solid #d5e0e4;border-radius:9px;background:#fff;color:#465c6d;font:600 .7rem var(--sg-font)}.kras-public-controls .worker-btn{padding:8px 10px;font-size:.68rem}.kras-public-summary{display:grid;gap:5px;margin-top:7px}.kras-public-summary p{margin:0;padding:7px 8px;border-radius:8px;background:#fff;border:1px solid #e1e8e8;color:#667885;font-size:.64rem;line-height:1.5}.kras-public-summary b{color:#15566a}.kras-public-summary .warn{border-color:#eadcb8;background:#fffaf2;color:#786b4a}@media(max-width:560px){.kras-public-controls select,.kras-public-controls .worker-btn{width:100%}}

/* V31 patrol improvement-result workflow */
.patrol-multi-step{margin:0}.patrol-multi-step>.worker-card{margin-top:18px}.patrol-result-badge{background:#eef6ff;color:#315f94}.patrol-record-result-photo img{width:88px;height:66px;border-radius:9px;object-fit:cover;border:1px solid #dbe3e8}.patrol-risk-card{border-top:3px solid #d9ebe9}.worker-mascot strong br{display:block}
@media(max-width:600px){.patrol-multi-step>.worker-card{margin-top:14px}}

/* V31 incident multi-select and education attachment */
.worker-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.worker-checkbox-grid label{display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border:1px solid #d6e0e4;border-radius:10px;background:#fff;color:#536779;cursor:pointer}.worker-checkbox-grid input{width:auto!important;min-height:0!important}.worker-field-help{display:block;margin-top:6px;color:#7b8997;font-size:.72rem;line-height:1.55}.worker-file-current{margin-top:5px;color:#617384;font-size:.72rem;overflow-wrap:anywhere}
@media(max-width:600px){.worker-checkbox-grid{grid-template-columns:1fr}}

/* V33: 순회점검 STEP 3 - STEP 1과 동일한 사진 미리보기 구조 */
.patrol-result-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.patrol-result-input-panel .worker-field{margin:0}
.patrol-result-input-panel .worker-field>span{display:block;margin:0 0 5px;font-size:.72rem;font-weight:900;color:#52687a}
.patrol-result-input-panel input,.patrol-result-input-panel select{min-height:40px}
.patrol-result-detail{min-height:82px!important}
@media(max-width:600px){.patrol-result-mini-grid{grid-template-columns:1fr 1fr;gap:7px}.patrol-result-input-panel input,.patrol-result-input-panel select{min-height:38px}.patrol-result-detail{min-height:72px!important}}


/* V86.4 compact polished worker pages */
.worker-shell{max-width:1540px!important;padding:18px 18px 38px!important}.worker-hero{grid-template-columns:minmax(0,1fr) minmax(260px,340px)!important;gap:20px!important;padding:26px 28px!important;border-radius:28px!important;background:radial-gradient(circle at 88% 12%,rgba(79,165,255,.16),transparent 28%),linear-gradient(135deg,#fff,#f2f9ff 65%,#fff9dc)!important}.worker-hero h1{font-size:clamp(1.9rem,3.1vw,2.65rem)!important;line-height:1.12!important;letter-spacing:-.055em!important;word-break:keep-all}.worker-hero p{max-width:900px!important;font-size:.90rem!important;line-height:1.72!important;word-break:keep-all}.worker-mascot.full{min-height:142px!important;padding:16px 18px!important;display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:14px!important;align-items:center!important}.worker-mascot.full img{width:112px!important;height:126px!important}.worker-mascot.full strong{font-size:.92rem!important;line-height:1.42!important;word-break:keep-all!important}.worker-mascot.full span{font-size:.72rem!important;line-height:1.55!important;word-break:keep-all!important}.worker-card{border-radius:22px!important;padding:18px!important;box-shadow:0 8px 24px rgba(20,65,105,.045)!important}
@media(max-width:900px){.worker-shell{padding:14px 12px 32px!important}.worker-hero{grid-template-columns:1fr!important;padding:22px!important}.worker-mascot.full{grid-template-columns:92px 1fr!important;max-width:none!important}.worker-mascot.full img{width:90px!important;height:104px!important}}
