.sysnow-docs-portal{font:inherit;color:#1f2937;margin:0 auto;max-width:100%;}
.sysnow-docs-portal *{box-sizing:border-box}
.sysnow-docs-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;margin:0 0 16px;background:#12304a;color:#fff;border-radius:9px}
.sysnow-docs-header h2{margin:3px 0 6px;color:#fff;font-size:26px;line-height:1.2}
.sysnow-docs-header p{margin:0;color:#d9e5ef;font-size:14px}
.sysnow-docs-kicker{font-size:11px;letter-spacing:.13em;font-weight:700;color:#72d6d1}
.sysnow-docs-manage-link,.sysnow-docs-primary{display:inline-block;padding:10px 15px;border-radius:6px;background:#0e9695;color:#fff!important;text-decoration:none!important;font-weight:600;white-space:nowrap}
.sysnow-docs-layout{display:grid;grid-template-columns:minmax(220px,290px) minmax(0,1fr);gap:16px;align-items:stretch}
.sysnow-docs-list,.sysnow-docs-viewer-area{border:1px solid #dce5ec;background:#fff;border-radius:9px;overflow:hidden;min-width:0}
.sysnow-docs-list-title{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;background:#f1f6f9;font-weight:700;color:#173650;border-bottom:1px solid #dce5ec}
.sysnow-docs-list-title span{background:#dce9f0;border-radius:20px;padding:2px 8px;font-size:12px}
.sysnow-docs-list ol{list-style:none;padding:8px;margin:0;max-height:680px;overflow:auto;counter-reset:doc-counter}
.sysnow-docs-list li{margin:0;padding:0;counter-increment:doc-counter}
.sysnow-docs-list li a{display:block;padding:10px 11px;border-radius:5px;text-decoration:none;color:#25465f;line-height:1.35;font-size:14px;border-bottom:1px solid #edf1f4}
.sysnow-docs-list li a:before{content:counter(doc-counter) ". ";font-weight:700;color:#0e9695}
.sysnow-docs-list li a:hover,.sysnow-docs-list li a.is-active{background:#e9f6f5;color:#0a6668}
.sysnow-docs-empty{padding:15px;color:#64748b}
.sysnow-docs-toolbar{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #dce5ec;background:#f8fafc}
.sysnow-docs-current-title{font-weight:700;color:#173650;font-size:16px}
.sysnow-docs-document-nav{display:flex;gap:8px;flex-wrap:wrap}
.sysnow-docs-document-nav a,.sysnow-docs-document-nav span{display:inline-block;padding:8px 10px;border:1px solid #cbd8e1;border-radius:5px;text-decoration:none;color:#24445b;font-size:12px;font-weight:600;background:#fff}
.sysnow-docs-document-nav a:hover{background:#eaf5f5;border-color:#7ac6c5}
.sysnow-docs-document-nav .is-disabled{color:#9aa8b5;background:#f1f5f9}
.sysnow-docs-pdf-frame{height:min(78vh,900px);min-height:520px;background:#4b5563}
.sysnow-docs-pdf-frame iframe{width:100%;height:100%;border:0;display:block;background:#fff}
.sysnow-docs-fallback{font-size:12px;padding:9px 14px;margin:0;color:#64748b;background:#f8fafc}
.sysnow-docs-welcome{min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px}
.sysnow-docs-file-icon{display:flex;align-items:center;justify-content:center;width:70px;height:84px;border-radius:8px;background:#e9f6f5;color:#0e7778;font-weight:800;font-size:18px;border:1px solid #b9e2e1}
.sysnow-docs-welcome h3{margin:18px 0 6px;color:#173650;font-size:23px}
.sysnow-docs-welcome p{max-width:470px;color:#64748b;line-height:1.6}
.sysnow-docs-error{padding:24px;color:#9b2c2c;background:#fff4f4}
@media(max-width:800px){.sysnow-docs-layout{grid-template-columns:1fr}.sysnow-docs-list ol{max-height:240px}.sysnow-docs-header{align-items:flex-start;flex-direction:column}.sysnow-docs-toolbar{align-items:flex-start;flex-direction:column}.sysnow-docs-pdf-frame{min-height:430px;height:65vh}}

/* PowerPoint viewer: Office Online renders publicly reachable PPT/PPTX files. */
.sysnow-docs-ppt-frame{height:min(78vh,900px);min-height:560px;background:#eef2f6}
.sysnow-docs-ppt-frame iframe{width:100%;height:100%;border:0;display:block;background:#fff}
@media(max-width:800px){.sysnow-docs-ppt-frame{min-height:460px;height:68vh}}

/* Viewer fallback controls */
.sysnow-docs-viewer-switch{display:flex;gap:8px;flex-wrap:wrap;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #dce5ec}
.sysnow-docs-viewer-switch a{display:inline-block;padding:7px 10px;border:1px solid #cbd8e1;border-radius:5px;text-decoration:none;color:#24445b;background:#fff;font-size:12px;font-weight:600}
.sysnow-docs-viewer-switch a.is-active{background:#12304a;border-color:#12304a;color:#fff}

/* SYSNOW native-style PPTX viewer shell */
.sysnow-docs-custom-viewer{background:#eef2f6;padding:14px;min-height:560px}
.sysnow-viewer-status{padding:16px;margin-bottom:12px;background:#fff;border:1px solid #d7e0e8;border-radius:6px;color:#173650}
.sysnow-viewer-status.is-error{color:#8b2424;background:#fff5f5;border-color:#f1caca;line-height:1.55}
.sysnow-viewer-controls{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.sysnow-viewer-controls button{border:1px solid #cbd8e1;border-radius:5px;background:#fff;padding:8px 12px;color:#173650;cursor:pointer}
.sysnow-viewer-controls button:disabled{opacity:.45;cursor:not-allowed}
.sysnow-viewer-stage{position:relative;max-width:100%;min-height:360px;margin:auto;background:#fff;box-shadow:0 2px 12px rgba(20,40,60,.12);overflow:auto}
.sysnow-viewer-stage canvas,.sysnow-viewer-stage svg,.sysnow-viewer-stage img{max-width:100%;height:auto}
.sysnow-viewer-note{margin:12px 0 0;font-size:12px;color:#5d6b78;line-height:1.5}
@media(max-width:800px){.sysnow-docs-custom-viewer{padding:8px;min-height:450px}.sysnow-viewer-stage{min-height:280px}}


/* v1.2.6: clean SYSNOW viewer layout; never transform the renderer's internal slide DOM. */
.sysnow-docs-portal,.sysnow-docs-portal .sysnow-docs-layout,.sysnow-docs-portal .sysnow-docs-viewer-area{width:100%;max-width:100%;min-width:0}
.sysnow-docs-portal .sysnow-docs-layout{display:flex;flex-direction:column;gap:14px;align-items:stretch}
.sysnow-docs-portal .sysnow-docs-viewer-area{order:1;display:flex;flex-direction:column;overflow:hidden}
.sysnow-docs-portal .sysnow-docs-list{order:2;width:100%;max-width:100%;min-width:0}
.sysnow-docs-portal .sysnow-docs-list ol{max-height:220px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:6px}
.sysnow-docs-portal .sysnow-docs-list li a{height:100%;overflow-wrap:anywhere}
.sysnow-docs-portal .sysnow-docs-custom-viewer{display:flex;flex-direction:column;width:100%;height:calc(100vh - 300px);min-height:480px;max-height:none;box-sizing:border-box;overflow:hidden;padding:10px;background:#eef2f6}
.sysnow-docs-portal .sysnow-viewer-status{flex:0 0 auto}
.sysnow-docs-portal .sysnow-viewer-controls{display:none!important}
.sysnow-docs-portal .sysnow-viewer-stage{position:relative;display:block;flex:1 1 auto;width:100%;height:auto;min-width:0;min-height:0;box-sizing:border-box;overflow:auto;padding:0;background:#fff}
.sysnow-docs-portal .sysnow-viewer-stage>*{position:static!important;left:auto!important;top:auto!important;transform:none!important;transform-origin:initial!important;max-width:100%;max-height:none;margin:0!important}
.sysnow-docs-portal .sysnow-viewer-stage canvas,.sysnow-docs-portal .sysnow-viewer-stage svg,.sysnow-docs-portal .sysnow-viewer-stage img{display:block;max-width:100%;height:auto}
.sysnow-docs-portal .sysnow-viewer-note{flex:0 0 auto;margin:6px 0 0}
@media(max-width:800px){.sysnow-docs-portal .sysnow-docs-custom-viewer{height:72vh;min-height:400px;padding:6px}.sysnow-docs-portal .sysnow-docs-list ol{grid-template-columns:1fr;max-height:180px}}
