.attachment-card{display:flex;align-items:stretch;border:1px solid #dfe7d6;border-radius:8px;max-width:100%;overflow:hidden;background:#fbfdf9}.attachment-card .file{border:0;border-radius:0;text-align:left;cursor:pointer;min-width:0;margin:0;white-space:normal}.attachment-card .file:hover{background:#edf3e7}.attachment-card .file span{min-width:0}.attachment-download{border-left:1px solid #dfe7d6;display:flex;align-items:center;padding:9px;color:#718168;text-decoration:none;font-size:11px;white-space:nowrap}.attachment-download:hover{background:#edf3e7}#file-viewer{width:min(1180px,96vw);height:92dvh;max-height:92dvh;overflow:hidden;padding:0;background:#f1f4ee}#file-viewer[open]{display:flex;flex-direction:column}#file-viewer::backdrop{background:#142b256e}.viewer-header{display:flex;align-items:center;gap:14px;background:#fcfdfb;padding:13px 20px;border-bottom:1px solid #dce5d6;flex-shrink:0}.viewer-header>div{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.viewer-header h2{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}.viewer-header button{padding:7px 11px}.viewer-download{font-size:12px;color:#315c42;white-space:nowrap}.viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 20px;background:#f9fbf5;border-bottom:1px solid #e1e8da;flex-shrink:0;min-height:0}.viewer-toolbar:empty{display:none}.viewer-toolbar label{display:flex;align-items:center;gap:8px;font-size:12px}.viewer-toolbar select{padding:7px 10px;max-width:250px}.viewer-notice{font-size:11px;line-height:1.6;background:#eef3e6;color:#6d7f60;padding:10px 20px;border-bottom:1px solid #dfe7d6;flex-shrink:0}.viewer-content{flex:1;min-height:0;overflow:auto;padding:24px;position:relative;overscroll-behavior:contain}.viewer-empty{padding:55px 20px;text-align:center;color:#7e9071;line-height:1.7;font-size:13px}.viewer-empty strong{font-size:16px;font-weight:500;color:#47603d}.viewer-pager{display:flex;align-items:center;gap:10px;font-size:12px}.viewer-pager input{padding:7px 9px;width:64px}.viewer-pager button{padding:7px 13px}.viewer-canvas,.viewer-image{display:block;margin:0 auto 16px;max-width:none;background:white;box-shadow:0 4px 18px #183c3512}.viewer-image{height:auto}.viewer-page-text{max-width:800px;margin:15px auto;background:#fff;border:1px solid #e0e7d9;border-radius:8px;padding:12px;color:#607554;font-size:12px}.viewer-page-text summary{cursor:pointer}.viewer-page-text pre,.viewer-text{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.75 Consolas,monospace}.viewer-text{padding:24px;margin:0;background:#fff;border:1px solid #dfe7d5;border-radius:8px;color:#344c2d}.viewer-paper{background:#fff;max-width:850px;margin:0 auto;padding:36px 45px;box-shadow:0 4px 20px #183c3512;min-height:280px;overflow-wrap:anywhere}.viewer-paper p{white-space:pre-wrap;line-height:1.75;font-size:14px}.viewer-paper h2{font-size:23px;font-weight:500}.viewer-paper h3{margin-top:0}.viewer-slide{aspect-ratio:16/9}.viewer-table-wrap{overflow:auto;background:#fff;border:1px solid #dce4d3;border-radius:7px;max-width:100%}.viewer-table{border-collapse:collapse;width:100%;font-size:12px;color:#3f5435}.viewer-table td,.viewer-table th{border:1px solid #e1e8d9;padding:9px 12px;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;min-width:85px;max-width:400px}.viewer-table th{background:#f0f4e9;color:#78916a;font-weight:500;position:sticky;top:0;z-index:1}.viewer-table th[scope=row]{min-width:35px;width:35px;text-align:right;left:0;z-index:0}.viewer-table tbody tr:nth-child(even) td{background:#fcfdf9}.viewer-password{width:min(340px,100%);margin:50px auto;background:#fff;border-radius:10px;padding:25px}.viewer-password h3{margin-top:0}.viewer-password p{font-size:12px;color:#839472}.viewer-password label{display:block;font-size:12px}.viewer-password input{width:100%;display:block;margin:8px 0 15px}.viewer-password button{width:100%}@media(max-width:700px){#file-viewer{width:98vw;height:96dvh;max-height:96dvh;border-radius:10px}.viewer-header{padding:12px;gap:9px}.viewer-header h2{font-size:13px}.viewer-header .icon{display:none}.viewer-notice{font-size:10px;padding:8px 12px}.viewer-toolbar{padding:10px 12px}.viewer-content{padding:12px}.viewer-paper{padding:20px}.viewer-table td,.viewer-table th{padding:8px}.attachment-download{font-size:10px;padding:7px}.viewer-toolbar select{max-width:170px}.viewer-toolbar label{font-size:11px}.viewer-pager{gap:6px}.viewer-pager input{width:54px}}
