:root { --ss-blue:#0874f9; --ss-deep:#07173d; --ss-text:#17294b; --ss-muted:#62718d; --ss-line:#d7e1ee; --ss-pale:#f7fbff; --ss-orange:#f5a11a; --ss-red:#e3303d; }
.portal-shell:has(.safety-safe-page) .shell-topbar-left { display:flex; align-items:center; gap:14px; min-width:0; }
.portal-shell:has(.safety-safe-page) .shell-topbar-middle { color:#53627c; font-size:16px; white-space:nowrap; }
.portal-shell:has(.safety-safe-page) .shell-topbar-middle:hover { color:var(--ss-blue); }
.portal-shell:has(.safety-safe-page) .shell-topbar-separator { color:#a1adbf; font-size:18px; }
.portal-shell:has(.safety-safe-page) .shell-topbar-suffix { color:#263654; font-size:16px; white-space:nowrap; }
.portal-shell:has(.safety-safe-page) .portal-main { padding-top:18px; }
.safety-safe-page { width:min(100%,1240px); margin-left:0; margin-right:0; }
.ss-hero { padding:19px 0 28px; text-align:center; }
.ss-hero.compact { padding:9px 0 24px; }
.ss-hero h1 { margin:0; color:var(--ss-deep); font-size:40px; line-height:1.18; letter-spacing:.025em; }
.ss-hero p { margin:12px 0 0; color:var(--ss-muted); font-size:17px; line-height:1.55; }
.ss-warning-banner { min-height:116px; padding:20px 34px; display:flex; align-items:center; gap:30px; border:1px solid #f2ce93; border-radius:11px; background:linear-gradient(105deg,#fffaf1,#fff); }
.ss-warning-banner>svg { width:67px; height:67px; flex:0 0 67px; color:var(--ss-orange); }
.ss-warning-banner>span { display:grid; gap:8px; }
.ss-warning-banner strong { color:var(--ss-deep); font-size:20px; }
.ss-warning-banner small { color:#53627c; font-size:15px; line-height:1.6; }
.ss-entry-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; margin-top:28px; }
.ss-entry-grid>a { min-height:145px; padding:23px 29px; display:grid; grid-template-columns:68px minmax(0,1fr) auto; align-items:center; gap:20px; border:1px solid var(--ss-line); border-radius:10px; background:#fff; }
.ss-entry-grid>a:hover,.ss-action-grid>a:hover,.ss-decision-grid article:hover,.ss-minor-grid article:hover { border-color:#82b6ff; background:#fbfdff; }
.ss-entry-grid svg { width:64px; height:64px; color:var(--ss-blue); }
.ss-entry-grid span { display:grid; gap:8px; min-width:0; }
.ss-entry-grid strong { color:var(--ss-deep); font-size:20px; }
.ss-entry-grid small { color:var(--ss-muted); font-size:14px; line-height:1.65; }
.ss-entry-grid b,.ss-action-grid b,.ss-bottom-links b { color:var(--ss-blue); font-size:34px; font-weight:300; }
.ss-action-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:28px; }
.ss-action-grid>a { min-height:72px; padding:0 28px; display:grid; grid-template-columns:36px minmax(0,1fr) auto; align-items:center; gap:18px; border:1px solid var(--ss-blue); border-radius:10px; color:var(--ss-blue); font-size:17px; font-weight:600; }
.ss-action-grid svg { width:34px; height:34px; }
.safety-portal-minor_protection .ss-action-grid>a { position:relative; display:flex !important; align-items:center; justify-content:center; gap:11px; padding-left:48px !important; padding-right:48px !important; text-align:center; }
.safety-portal-minor_protection .ss-action-grid>a>b { position:absolute; right:20px; top:50%; transform:translateY(-50%); }
.safety-portal-minor_protection .ss-action-grid>a>svg,
.safety-portal-minor_protection .ss-action-grid>a>img.safety-design-icon { flex:0 0 auto; margin:0; }
.ss-footnote,.ss-support { margin:34px 0 0; color:#66758e; font-size:14px; text-align:center; }
.ss-support a { color:var(--ss-blue); }
.ss-important-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:32px; }
.ss-important-main .ss-warning-banner { min-height:126px; }
.ss-decision-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 22px; margin-top:25px; }
.ss-decision-grid article { min-height:164px; padding:25px 22px; display:grid; grid-template-columns:90px minmax(0,1fr); align-items:center; gap:20px; border:1px solid var(--ss-line); border-radius:10px; }
.ss-decision-grid i { width:86px; height:86px; display:flex; align-items:center; justify-content:center; border:1px solid #d9e3ef; border-radius:50%; color:var(--ss-blue); }
.ss-decision-grid svg { width:58px; height:58px; }
.ss-decision-grid span { display:grid; gap:9px; }
.ss-decision-grid strong { color:var(--ss-deep); font-size:19px; }
.ss-decision-grid small { color:var(--ss-muted); font-size:14px; line-height:1.55; }
.ss-safety-steps { padding:34px 27px 25px; border:1px solid #c7dcfa; border-radius:11px; }
.ss-safety-steps h2 { margin:0 0 29px; color:var(--ss-deep); font-size:20px; }
.ss-safety-steps>div { min-height:105px; position:relative; display:grid; grid-template-columns:25px 66px minmax(0,1fr); gap:13px; align-items:start; }
.ss-safety-steps>div:not(:last-child):after { content:""; width:1px; height:47px; position:absolute; left:12px; top:35px; border-left:1px dashed #a7bad4; }
.ss-safety-steps em { width:25px; height:25px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--ss-blue); color:#fff; font-size:13px; font-style:normal; }
.ss-safety-steps i { width:64px; height:64px; display:flex; align-items:center; justify-content:center; border:1px solid #d8e2ef; border-radius:50%; color:var(--ss-blue); }
.ss-safety-steps svg { width:43px; height:43px; }
.ss-safety-steps span { display:grid; gap:5px; }
.ss-safety-steps strong { color:var(--ss-deep); font-size:17px; }
.ss-safety-steps small { color:var(--ss-muted); font-size:13px; line-height:1.5; }
.ss-conduct-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:25px; }
.ss-list-panel { padding:24px 25px 16px; border:1px solid var(--ss-line); border-radius:11px; }
.ss-list-panel h2 { margin:0 0 18px; color:var(--ss-deep); font-size:20px; }
.ss-list-panel>a { min-height:104px; display:grid; grid-template-columns:68px minmax(0,1fr) auto; align-items:center; gap:18px; border-top:1px solid #dfe6ef; }
.ss-list-panel h2+a { border-top:0; }
.ss-list-panel i { width:66px; height:66px; display:flex; align-items:center; justify-content:center; border:1px solid #c9dcfa; border-radius:9px; background:#f4f8ff; color:var(--ss-blue); }
.ss-list-panel.danger i { border-color:#f5c8cb; background:#fff4f4; color:var(--ss-red); }
.ss-list-panel svg { width:45px; height:45px; }
.ss-list-panel span { display:grid; gap:6px; }
.ss-list-panel strong { color:var(--ss-deep); font-size:16px; }
.ss-list-panel small { color:var(--ss-muted); font-size:13px; line-height:1.55; }
.ss-list-panel b { color:var(--ss-blue); font-size:29px; font-weight:300; }
.safety-portal-content_behavior .ss-list-panel i { width:48px; height:48px; }
.safety-portal-content_behavior .ss-list-panel i > svg,
.safety-portal-content_behavior .ss-list-panel i > img.safety-design-icon { width:30px !important; height:30px !important; }
.safety-portal-content_behavior .ss-report-callout > svg,
.safety-portal-content_behavior .ss-report-callout > img.safety-design-icon { width:30px !important; height:30px !important; }
.ss-conduct-right { display:grid; gap:16px; }
.ss-report-callout { min-height:111px; padding:20px 22px; display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:17px; border:1px solid #c8dcfa; border-radius:10px; background:linear-gradient(105deg,#f5faff,#fff); }
.ss-report-callout>svg { width:46px; height:46px; color:var(--ss-blue); }
.ss-report-callout span { display:grid; gap:5px; }
.ss-report-callout strong { color:var(--ss-deep); font-size:16px; }
.ss-report-callout small { color:var(--ss-muted); font-size:12px; line-height:1.5; }
.ss-report-callout a { min-height:48px; padding:0 18px; display:flex; align-items:center; justify-content:center; border:1px solid var(--ss-blue); border-radius:8px; color:var(--ss-blue); font-size:14px; font-weight:600; white-space:nowrap; }
.ss-bottom-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; margin-top:30px; padding-top:23px; border-top:1px solid #d9e1eb; }
.ss-bottom-links>a { min-height:42px; display:grid; grid-template-columns:30px minmax(0,1fr) auto; align-items:center; gap:14px; color:var(--ss-blue); font-size:15px; font-weight:600; }
.ss-bottom-links svg { width:29px; height:29px; }
.ss-minor-banner { min-height:132px; padding:24px 43px; display:flex; align-items:center; gap:38px; border:1px solid #c7dcfa; border-radius:11px; background:linear-gradient(105deg,#f5faff,#fff); }
.ss-minor-banner>svg { width:72px; height:72px; flex:0 0 72px; color:var(--ss-blue); }
.ss-minor-banner ul { margin:0; padding-left:24px; color:var(--ss-deep); font-size:16px; line-height:2.1; }
.ss-minor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin-top:28px; }
.ss-minor-grid article { min-height:300px; padding:28px 30px 24px; border:1px solid var(--ss-line); border-radius:10px; text-align:center; }
.ss-minor-grid svg { width:68px; height:68px; color:var(--ss-blue); }
.ss-minor-grid h2 { margin:18px 0 15px; color:var(--ss-deep); font-size:19px; }
.ss-minor-grid ul { margin:0; padding-left:20px; color:#40506d; font-size:14px; line-height:1.9; text-align:left; }
.ss-verify-steps { min-height:142px; padding:21px 20px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; border:1px solid #c7dcfa; border-radius:11px; background:linear-gradient(105deg,#f7fbff,#fff); }
.ss-verify-steps>div { position:relative; display:grid; grid-template-columns:28px 60px minmax(0,1fr); align-items:start; gap:12px; }
.ss-verify-steps>div:not(:last-child):after { content:""; width:35px; position:absolute; right:-23px; top:49px; border-top:1px dashed #8cb8f4; }
.ss-verify-steps em { width:28px; height:28px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--ss-blue); color:#fff; font-size:13px; font-style:normal; }
.ss-verify-steps svg { width:54px; height:54px; color:var(--ss-blue); }
.ss-verify-steps span { display:grid; gap:6px; }
.ss-verify-steps strong { color:var(--ss-deep); font-size:15px; line-height:1.45; }
.ss-verify-steps small { color:var(--ss-muted); font-size:12px; line-height:1.55; }
.ss-verify-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:29px; margin-top:24px; }
.ss-research-card,.ss-feedback-card { padding:21px 24px; border:1px solid var(--ss-line); border-radius:10px; }
.ss-research-card h2,.ss-feedback-card h2 { margin:0 0 14px; color:var(--ss-deep); font-size:20px; }
.ss-research-card>p { margin:0 0 9px; color:#52617d; font-size:13px; }
.ss-answer { padding:15px 17px; border:1px solid #d9e2ed; border-radius:8px; }
.ss-answer>p { margin:0 0 15px; color:#40506d; font-size:13px; line-height:1.65; }
.ss-answer>small { color:#5c6a83; }
.ss-source-tags { display:flex; flex-wrap:wrap; gap:7px; margin:8px 0 13px; }
.ss-source-tags span { padding:5px 7px; border:1px solid #d9e2ed; border-radius:6px; color:#5c6a83; font-size:9px; white-space:nowrap; }
.ss-source-tags b { color:#111; font-weight:700; }
.ss-answer>a { display:flex; align-items:center; gap:5px; color:var(--ss-blue); font-size:12px; font-weight:600; }
.ss-answer>a svg { width:15px; height:15px; }
.ss-answer-note { margin-top:9px; display:flex; align-items:center; gap:7px; color:#5e6d87; font-size:12px; }
.ss-answer-note svg { width:18px; height:18px; color:#52637e; }
.ss-feedback-card>a { min-height:73px; padding:10px 12px; display:grid; grid-template-columns:54px minmax(0,1fr) auto; align-items:center; gap:15px; border:1px solid #d9e2ed; border-radius:8px; }
.ss-feedback-card>a+a { margin-top:10px; }
.ss-feedback-card>a>svg { width:47px; height:47px; color:var(--ss-blue); }
.ss-feedback-card span { display:grid; gap:4px; }
.ss-feedback-card strong { color:var(--ss-deep); font-size:15px; }
.ss-feedback-card small { color:var(--ss-muted); font-size:12px; line-height:1.45; }
.ss-feedback-card b { color:var(--ss-blue); font-size:28px; font-weight:300; }
.ss-verify-report { min-height:101px; margin-top:20px; padding:18px 25px; display:grid; grid-template-columns:56px minmax(0,1fr) 245px; align-items:center; gap:20px; border:1px solid #c7dcfa; border-radius:10px; }
.ss-verify-report>svg { width:53px; height:53px; color:var(--ss-blue); }
.ss-verify-report span { display:grid; gap:6px; }
.ss-verify-report strong { color:var(--ss-deep); font-size:19px; }
.ss-verify-report small { color:var(--ss-muted); font-size:13px; }
.ss-verify-report>a { min-height:53px; display:flex; align-items:center; justify-content:center; gap:8px; border-radius:7px; background:var(--ss-blue); color:#fff; font-size:15px; font-weight:600; }
.ss-verify-report>a svg { width:18px; height:18px; }
@media (max-width:1250px) {
  .ss-important-layout { grid-template-columns:minmax(0,1fr) 310px; gap:22px; }
  .ss-decision-grid article { grid-template-columns:70px minmax(0,1fr); padding:20px 16px; }
  .ss-decision-grid i { width:66px; height:66px; }
  .ss-decision-grid svg { width:45px; height:45px; }
  .ss-verify-steps>div { grid-template-columns:24px 45px minmax(0,1fr); gap:8px; }
  .ss-verify-steps svg { width:43px; height:43px; }
}
@media (max-width:920px) {
  .portal-shell:has(.safety-safe-page) .shell-topbar-middle,.portal-shell:has(.safety-safe-page) .shell-topbar-separator,.portal-shell:has(.safety-safe-page) .shell-topbar-suffix { display:none; }
  .ss-hero,.ss-hero.compact { padding:12px 0 20px; }
  .ss-hero h1 { font-size:29px; }
  .ss-hero p { font-size:14px; }
  .ss-warning-banner,.ss-minor-banner { padding:18px; gap:17px; }
  .ss-warning-banner>svg,.ss-minor-banner>svg { width:52px; height:52px; flex-basis:52px; }
  .ss-entry-grid,.ss-action-grid,.ss-decision-grid,.ss-conduct-grid,.ss-minor-grid,.ss-verify-grid,.ss-bottom-links { grid-template-columns:1fr; }
  .ss-entry-grid>a { min-height:118px; padding:18px; grid-template-columns:52px minmax(0,1fr) auto; gap:14px; }
  .ss-entry-grid svg { width:49px; height:49px; }
  .ss-entry-grid strong { font-size:17px; }
  .ss-important-layout { grid-template-columns:1fr; }
  .ss-safety-steps { padding:24px 20px; }
  .ss-list-panel { padding:20px 18px 12px; }
  .ss-report-callout { grid-template-columns:45px minmax(0,1fr); }
  .ss-report-callout a { grid-column:1/-1; width:100%; }
  .ss-minor-grid article { min-height:245px; }
  .ss-verify-steps { grid-template-columns:1fr; }
  .ss-verify-steps>div { min-height:82px; grid-template-columns:28px 54px minmax(0,1fr); }
  .ss-verify-steps>div:not(:last-child):after { width:1px; height:35px; left:13px; right:auto; top:35px; border-top:0; border-left:1px dashed #8cb8f4; }
  .ss-verify-report { grid-template-columns:48px minmax(0,1fr); }
  .ss-verify-report>a { grid-column:1/-1; }
}
@media (max-width:520px) {
  .ss-warning-banner { align-items:flex-start; }
  .ss-warning-banner strong { font-size:17px; }
  .ss-warning-banner small { font-size:13px; }
  .ss-action-grid>a { min-height:64px; padding:0 18px; font-size:15px; }
  .ss-decision-grid article { min-height:132px; }
  .ss-list-panel>a { grid-template-columns:54px minmax(0,1fr) auto; gap:12px; }
  .ss-list-panel i { width:52px; height:52px; }
  .ss-list-panel svg { width:37px; height:37px; }
  .ss-minor-banner { align-items:flex-start; }
  .ss-minor-banner ul { padding-left:18px; font-size:14px; line-height:1.75; }
  .ss-source-tags span { white-space:normal; }
}
