.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(20px);background-color:#000c;color:#fff;padding:12px 20px;border-radius:999px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:1100}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.modal-footer{width:100%}.modal-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:10px}.modal-actions .modal-action-button{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:none;cursor:pointer;transition:background-color .2s,transform .2s;font-weight:600;text-decoration:none;color:#fff;background-color:transparent}.modal-actions .modal-action-button.download{background-color:#2ecc71d9!important}.modal-actions .modal-action-button.copy{background-color:#2a9d8fd9!important}.modal-actions .modal-action-button.download:hover{background-color:#27ae60e6}.modal-actions .modal-action-button.copy:hover{background-color:#21867ae6!important}.modal-actions .modal-action-button svg{width:18px;height:18px;fill:#fff}.modal-actions .modal-action-button svg path{fill:#fff}.modal-actions .modal-action-button span{color:#fff}.modal-action-button:hover{background-color:#000000bf;transform:translateY(-1px)}.modal-actions .modal-action-button:focus{outline:2px solid rgba(255,255,255,.7);outline-offset:3px}.modal-actions .modal-action-button.copied{animation:copied-pulse .3s ease-in-out}.pdf-image-tool h1{text-align:center;margin-bottom:30px;margin-top:10px;color:#2c3e50;font-size:2em}.pdf-image-tool h2{margin:20px 0 15px;color:#2c3e50}.pdf-image-tool p{text-align:center;margin-bottom:40px;color:#7f8c8d;line-height:1.8;font-size:1.05em}.upload-section{display:flex;flex-direction:column;align-items:center;margin-bottom:40px;margin-top:20px;gap:20px}.drop-zone{width:100%;max-width:800px;height:280px;padding:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:1.2em;color:#555;border:3px dashed var(--accent);border-radius:15px;background-color:var(--accent-bg);transition:all .3s ease;cursor:pointer;margin:0 auto 20px;box-shadow:0 5px 15px #0000000d}.drop-zone.drag-over{border-color:var(--accent-hover);background-color:#2a9d8f33;color:var(--accent-hover);transform:scale(1.02);box-shadow:0 8px 20px #2a9d8f33}.drop-zone p{margin:12px 0}.drop-zone p:first-child{font-size:1.5em;margin-bottom:20px}.drop-zone input[type=file]{margin-top:25px;padding:10px 16px;background-color:#ffffffb3;border:1px solid #bdc3c7;font-size:.9em}.file-info{background-color:var(--accent-bg);padding:10px 15px;border-radius:5px;margin-top:10px;font-size:14px}.file-info p{margin:0;text-align:left}.convert-status{display:flex;align-items:center;justify-content:center;margin-top:10px}.spinner{display:flex;align-items:center;gap:10px}.spinner-circle{width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.convert-btn{padding:12px 30px;font-size:16px;margin-top:10px}.pdf-image-tool input[type=file]{padding:10px 16px;border:1px solid #ddd;border-radius:4px;background-color:#f9f9f9;width:70%;font-size:.9em}.pdf-image-tool button:where(.convert-btn,.download-all-btn,.action-button,.modal-action-button){padding:10px 20px;background-color:var(--accent);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s}.pdf-image-tool button:where(.convert-btn,.download-all-btn,.action-button,.modal-action-button):hover{background-color:var(--accent-hover)}.preview-section,.download-section{margin-top:30px}.grid-container{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;justify-content:center;margin-top:20px}.section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;margin-bottom:10px}.section-header h2{margin:0}.page-container{margin:0;padding:10px;border:1px solid #ddd;border-radius:4px;background-color:#fff;box-shadow:0 1px 3px #0000001a;text-align:center;position:relative;transition:transform .2s;cursor:pointer}.page-container:hover{transform:translateY(-5px);box-shadow:0 4px 8px #00000026}.page-container .action-buttons{display:flex;flex-direction:row;gap:8px;margin-top:8px}.page-container .action-buttons .action-button{flex:1;min-width:0;min-height:var(--tap-min);border-radius:8px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:background-color .2s,transform .2s;background-color:var(--card-bg);color:var(--text);padding:8px;font-size:var(--fs-ui-button);font-weight:600}.page-container .action-buttons .action-button svg{width:18px;height:18px;flex-shrink:0;fill:var(--accent)}.page-container .action-buttons .action-button svg path{fill:var(--accent)}.page-container .action-buttons .action-button span{color:inherit}.page-container .action-buttons .action-button:hover{transform:translateY(-1px);background-color:var(--accent-bg);border-color:var(--accent)}.page-container .action-buttons .action-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.action-button-copy.copied{animation:copied-pulse .3s ease-in-out}@keyframes copied-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000c}.modal-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;pointer-events:none}.modal-content{margin:5% auto;padding:20px;max-width:90%;max-height:80vh;display:flex;flex-direction:column;align-items:center;background-color:#000c;border-radius:10px;pointer-events:auto}.modal-image-container{width:100%;display:flex;justify-content:center;align-items:center;margin-bottom:20px}.modal-content img{max-width:100%;max-height:70vh;object-fit:contain}.modal-footer{display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff}.close-modal{color:#fff;position:absolute;top:15px;right:35px;font-size:40px;font-weight:700;cursor:pointer}.close-modal:hover{color:#ccc}.page-container p{margin:5px 0;font-size:14px}.page-container canvas{max-width:100%;height:auto;display:block;margin:0 auto}.download-link{display:inline-block;margin:5px 0;padding:8px 15px;background-color:#2ecc71;color:#fff;text-decoration:none;border-radius:4px;font-size:14px}.download-link:hover{background-color:#27ae60}.loading{text-align:center;padding:20px;font-style:italic;color:#7f8c8d}.pdf-notice{max-width:700px;margin:16px auto 0;padding:12px 16px;border:1px solid #f0c48a;border-radius:8px;background:#fff8ec;color:#8a5a00;font-size:14px;line-height:1.8;text-align:left}.pdf-notice a{color:inherit;font-weight:700}.pdf-notice-raw{display:block;margin-top:6px;font-size:12px;color:#9a7a4a}.convert-btn:disabled,.download-all-btn:disabled{background-color:#ccc;border-color:#ccc;color:#fff;cursor:not-allowed}.privacy-notice{font-size:14px;color:#e74c3c;text-align:center;margin-bottom:20px;font-weight:700}.settings-section{background-color:#f8f9fa;padding:20px;border-radius:12px;margin:20px 0;box-shadow:0 2px 10px #0000000d}.settings-section h3{margin-top:0;margin-bottom:15px;color:#2c3e50;font-size:1.3em}.setting-title{font-weight:700;margin-bottom:12px;color:#34495e}.radio-group{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:10px}.settings-section-inline{background-color:#f8f9fa;padding:15px 20px;border-radius:12px;margin:20px 0;box-shadow:0 2px 10px #0000000d;display:flex;align-items:center;gap:20px}.setting-label{font-weight:700;color:#34495e;white-space:nowrap}.radio-group-inline{display:flex;gap:15px;flex-wrap:wrap}.radio-item{position:relative}.radio-item input[type=radio]{position:absolute;opacity:0;width:0;height:0}.radio-item label{display:flex;align-items:center;cursor:pointer;padding:8px 15px;border-radius:30px;background-color:#fff;transition:all .3s ease;box-shadow:0 2px 5px #0000001a}.radio-button{position:relative;display:inline-block;width:20px;height:20px;border-radius:50%;border:2px solid #bdc3c7;margin-right:10px;transition:all .2s ease}.radio-button:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:10px;height:10px;border-radius:50%;background-color:var(--accent);transition:transform .2s ease}.radio-item input[type=radio]:checked+label{background-color:var(--accent-bg);box-shadow:0 2px 8px #2a9d8f33}.radio-item input[type=radio]:checked+label .radio-button{border-color:var(--accent)}.radio-item input[type=radio]:checked+label .radio-button:before{transform:translate(-50%,-50%) scale(1)}.radio-label{font-weight:500}.download-all-container{text-align:center;margin-bottom:20px}.download-all-btn{background-color:var(--accent);color:#fff;padding:12px 25px;font-size:16px;border-radius:4px;border:none;cursor:pointer;transition:background-color .3s}.download-all-btn:hover{background-color:var(--accent-hover)}.update-history{margin-top:40px;padding:20px;background-color:#f9f9f9;border-radius:8px;font-size:.85em;color:#666}.update-history h3{font-size:1em;margin-bottom:10px;color:#666}.update-history ul{list-style:none;padding:0;margin:0}.update-history li{padding:4px 0;line-height:1.5}.pdf-image-tool{width:100%}.pdf-image-tool *,.pdf-image-tool *:before,.pdf-image-tool *:after{box-sizing:border-box}.pdf-image-tool h1{text-align:left;font-size:1.4rem;margin:0 0 16px}.pdf-image-tool>p{text-align:left;margin-bottom:20px}.pdf-image-tool .drop-zone{height:auto;min-height:180px;padding:24px 16px;font-size:1rem}.pdf-image-tool .drop-zone p{font-size:1rem;margin:6px 0}.pdf-image-tool .drop-zone input[type=file]{width:100%;max-width:360px;margin-top:12px}.pdf-image-tool .grid-container{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.pdf-image-tool .page-container p{font-size:1rem;margin-bottom:12px}.pdf-image-tool .settings-section-inline{flex-wrap:wrap;gap:12px}.pdf-image-tool .radio-group-inline{gap:8px}.pdf-image-tool .radio-item label{min-height:44px;white-space:nowrap}.pdf-image-tool .radio-item input:focus-visible+label{outline:2px solid var(--accent);outline-offset:3px}@media (max-width: 600px){.pdf-image-tool .settings-section-inline{display:block;padding:16px}.pdf-image-tool .setting-label{display:block;margin-bottom:12px}.pdf-image-tool .radio-group-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-image-tool .radio-item label{padding:8px;font-size:13px}.pdf-image-tool .radio-button{flex-shrink:0;margin-right:6px}}@media screen and (max-width: 600px){.modal-actions .modal-action-button{padding:10px;min-height:var(--tap-min);box-sizing:border-box}.pdf-image-tool h1,.pdf-image-tool p{margin-bottom:12px}.upload-section{margin-bottom:12px;margin-top:12px;gap:12px}.drop-zone input[type=file]{margin-top:12px;padding:10px 14px;min-height:var(--tap-min);box-sizing:border-box;font-size:var(--fs-input)}.convert-btn{padding:10px;min-height:var(--tap-min);box-sizing:border-box}.pdf-image-tool input[type=file]{padding:10px 14px;min-height:var(--tap-min);box-sizing:border-box;font-size:var(--fs-input)}.pdf-image-tool button:where(.convert-btn,.download-all-btn,.action-button,.modal-action-button){padding:10px;min-height:var(--tap-min);box-sizing:border-box}.page-container .action-buttons .action-button{padding:8px 10px;min-height:var(--tap-min);box-sizing:border-box}.settings-section{padding:14px}.settings-section h3{margin-bottom:12px;font-size:20px}.settings-section-inline{padding:14px;gap:12px}.download-all-btn{padding:10px;min-height:var(--tap-min);box-sizing:border-box}.pdf-image-tool>p{margin-bottom:12px}.pdf-image-tool .drop-zone,.pdf-image-tool .settings-section-inline{padding:14px}}@media screen and (max-width: 600px){.pdf-image-tool h1{font-size:20px;margin:8px 0 12px}}
