/* Generated by tools/split-subpage-css.php. Edit assets/css/source/subpage-modern.full.css instead. */
.asciiart-page > pre, .asciiart-output-scroll #ascii { font-family: "Courier New", monospace; font-size: 8px; line-height: 1; }
.asciiart-output-scroll #ascii { width: max-content; min-width: 100%; margin: 0; color: #d9f5e8; white-space: pre; letter-spacing: 0; }
.asciiart-output-scroll #ascii:not(:empty) + .asciiart-empty-state { display: none; }
@media screen and (max-width: 620px) {
.asciiart-output-scroll #ascii { font-size: 2px; }
}
#fileInput { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.ip-convert-result-card.wide { grid-column: 1 / -1; }
.pdfcompress-heading { margin-bottom: 2rem; }
.pdfcompress-eyebrow { margin: 0 0 .65rem; color: #087f72; font-size: .88rem; font-weight: 800; }
.pdfcompress-heading h1 { margin-bottom: .8rem; }
.pdfcompress-heading > p:last-child { max-width: 760px; margin: 0; color: #53657d; line-height: 1.8; }
.pdfcompress-tool { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(260px, .8fr); gap: 1rem; align-items: stretch; }
.pdfcompress-panel,
.pdfcompress-result,
.pdfcompress-guide { border: 1px solid #d7e1ee; border-radius: 8px; background: #fff; }
.pdfcompress-panel { padding: 1.3rem; }
.pdfcompress-panel h2,
.pdfcompress-result h2,
.pdfcompress-guide h2 { margin: 0; font-size: 1.25rem; }
.pdfcompress-panel p { margin: .35rem 0 0; color: #6c7d94; font-size: .9rem; line-height: 1.6; }
.pdfcompress-panel-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.pdfcompress-panel-head input[type="file"] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.pdfcompress-file-button,
.pdfcompress-primary,
.pdfcompress-secondary,
.pdfcompress-result-head button { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; border: 1px solid #cbd8e8; border-radius: 7px; padding: .72rem 1rem; background: #fff; color: #233650; font-weight: 800; cursor: pointer; white-space: nowrap; }
.pdfcompress-file-button,
.pdfcompress-primary,
.pdfcompress-result-head button { border-color: #087f72; background: #087f72; color: #fff; }
.pdfcompress-dropzone { display: flex; min-height: 210px; margin-top: 1.1rem; align-items: center; justify-content: center; gap: 1rem; border: 1px dashed #a9bfd7; border-radius: 8px; padding: 1.5rem; background: #f7fafc; cursor: pointer; text-align: left; transition: border-color .2s, background .2s; }
.pdfcompress-dropzone[data-dragging="true"] { border-color: #087f72; background: #edf9f6; }
.pdfcompress-file-mark { display: grid; width: 64px; height: 64px; flex: 0 0 auto; place-items: center; border-radius: 8px; background: #e4f3ef; color: #087f72; font-weight: 900; }
.pdfcompress-dropzone strong,
.pdfcompress-dropzone span { display: block; }
.pdfcompress-dropzone strong { color: #243852; }
.pdfcompress-dropzone div span { margin-top: .35rem; color: #74859a; font-size: .86rem; }
.pdfcompress-file-summary { display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(90px, .6fr)); gap: .75rem; margin-top: .9rem; }
.pdfcompress-file-summary div,
.pdfcompress-result-grid div { min-width: 0; padding: .85rem; border: 1px solid #dce5ef; border-radius: 7px; background: #f9fbfd; }
.pdfcompress-file-summary span,
.pdfcompress-result-grid span { display: block; color: #7a8aa0; font-size: .76rem; }
.pdfcompress-file-summary strong,
.pdfcompress-result-grid strong { display: block; margin-top: .25rem; overflow: hidden; color: #263b55; text-overflow: ellipsis; white-space: nowrap; }
.pdfcompress-control-panel { display: flex; flex-direction: column; gap: .85rem; background: #f7fafc; }
.pdfcompress-profiles { display: grid; gap: .55rem; }
.pdfcompress-profiles label { position: relative; margin: 0; cursor: pointer; }
.pdfcompress-profiles input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.pdfcompress-profiles span { display: block; min-height: 70px; border: 1px solid #cfdae8; border-radius: 7px; padding: .75rem .85rem .75rem 2.65rem; background: #fff; color: #283c55; }
.pdfcompress-profiles span::before { position: absolute; top: 50%; left: .9rem; width: 18px; height: 18px; border: 2px solid #9dafc3; border-radius: 50%; content: ''; transform: translateY(-50%); }
.pdfcompress-profiles input:checked + span { border-color: #087f72; background: #edf9f6; box-shadow: inset 0 0 0 1px #087f72; }
.pdfcompress-profiles input:checked + span::before { border: 5px solid #087f72; background: #fff; }
.pdfcompress-profiles strong,
.pdfcompress-profiles small { display: block; }
.pdfcompress-profiles small { margin-top: .2rem; color: #718298; font-size: .76rem; font-weight: 500; }
.pdfcompress-buttons { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .55rem; }
.pdfcompress-panel button:disabled,
.pdfcompress-result button:disabled { cursor: not-allowed; opacity: .48; }
.pdfcompress-progress-track { height: 9px; overflow: hidden; border-radius: 5px; background: #dfe7f0; }
.pdfcompress-progress-track span { display: block; width: 0; height: 100%; background: #087f72; transition: width .2s; }
.pdfcompress-progress-wrap p { margin-top: .45rem; font-size: .82rem; }
.pdfcompress-status { margin-top: auto !important; padding: .9rem; border-radius: 7px; background: #edf2f7; color: #53677f !important; }
.pdfcompress-status[data-type="success"] { background: #eaf7f2; color: #176a55 !important; }
.pdfcompress-status[data-type="warning"] { background: #fff7df; color: #7a5a08 !important; }
.pdfcompress-status[data-type="error"] { background: #fff0ef; color: #a53b34 !important; }
.pdfcompress-result { margin-top: 1rem; padding: 1.3rem; }
.pdfcompress-result-head { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.pdfcompress-result-head p { margin: 0 0 .25rem; color: #087f72; font-size: .8rem; font-weight: 800; }
.pdfcompress-result-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.pdfcompress-result-grid strong { font-size: 1.15rem; }
.pdfcompress-result-grid strong[data-negative="false"] { color: #087f72; }
.pdfcompress-result-grid strong[data-negative="true"] { color: #b35b35; }
.pdfcompress-guide { margin-top: 1rem; padding: 1.45rem; }
.pdfcompress-guide > header > p { margin: .65rem 0 0; color: #5f7188; line-height: 1.75; }
.pdfcompress-guide-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; margin-top: 1.1rem; }
.pdfcompress-guide-grid section { padding: 1rem; border: 1px solid #dbe4ee; border-radius: 7px; background: #f8fafc; }
.pdfcompress-guide h3 { margin: 0 0 .45rem; font-size: 1rem; }
.pdfcompress-guide-grid p,
.pdfcompress-caution p { margin: 0; color: #63758b; font-size: .9rem; line-height: 1.7; }
.pdfcompress-caution { margin-top: .9rem; padding: 1rem; border-left: 3px solid #c79332; background: #fff8e8; }
.pdfcompress-file-button:focus-visible,
.pdfcompress-dropzone:focus-visible,
.pdfcompress-tool button:focus-visible,
.pdfcompress-result button:focus-visible,
.pdfcompress-profiles input:focus-visible + span { outline: 3px solid rgba(8, 127, 114, .25); outline-offset: 2px; }
@media screen and (max-width: 980px) {
.pdfcompress-tool { grid-template-columns: 1fr; }
}
@media screen and (max-width: 640px) {
.pdfcompress-panel-head { align-items: stretch; flex-direction: column; }
.pdfcompress-file-button { width: 100%; }
.pdfcompress-dropzone { min-height: 190px; align-items: center; flex-direction: column; text-align: center; }
.pdfcompress-file-summary,
  .pdfcompress-result-grid,
  .pdfcompress-guide-grid { grid-template-columns: 1fr; }
.pdfcompress-buttons { grid-template-columns: 1fr; }
.pdfcompress-buttons button { width: 100%; }
.pdfcompress-result-head { align-items: stretch; flex-direction: column; }
.pdfcompress-result-head button { width: 100%; white-space: normal; }
}
