:root{--brand:#5b4be7;--brand-dark:#4938ca;--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--soft:#f8fafc}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a,button,summary,input,select{outline:none}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{box-shadow:0 0 0 4px rgba(91,75,231,.16)}
.ph{line-height:1}
.site-header{position:sticky;top:0;z-index:40}
.nav-link{display:inline-flex;align-items:center;gap:.48rem;border-radius:.75rem;padding:.65rem .78rem;color:#475569;font-size:.875rem;font-weight:750;cursor:pointer;list-style:none;transition:background-color .15s,color .15s}
.nav-link::-webkit-details-marker{display:none}
.nav-link:hover,.nav-link-active{background:#f1f5f9;color:#0f172a}
.nav-menu{position:relative}
.nav-menu-panel{position:absolute;left:0;top:calc(100% + .75rem);z-index:60;width:320px;border:1px solid var(--line);border-radius:1rem;background:#fff;padding:.5rem;box-shadow:0 18px 50px rgba(15,23,42,.16)}
.nav-menu-panel-right{left:auto;right:0}
.nav-menu-panel a{display:flex;align-items:center;gap:.75rem;border-radius:.75rem;padding:.7rem;color:#334155;transition:background-color .15s,color .15s}
.nav-menu-panel a:hover{background:#f8fafc;color:#0f172a}
.nav-menu-panel strong{display:block;font-size:.875rem;color:#0f172a}
.nav-menu-panel small{display:block;margin-top:.15rem;font-size:.75rem;line-height:1.25rem;color:#64748b}
.nav-menu-icon{display:grid;height:2.5rem;width:2.5rem;flex:0 0 auto;place-items:center;border-radius:.7rem;background:#f1f5f9;color:#475569;font-size:1.15rem}
.icon-button{display:grid;height:2.5rem;width:2.5rem;place-items:center;border:1px solid #cbd5e1;border-radius:.75rem;background:#fff;color:#0f172a}
.mobile-nav-heading{margin-top:.6rem;padding:.5rem .65rem .25rem;color:#94a3b8;font-size:.68rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.mobile-nav-link{display:flex;align-items:center;gap:.7rem;border-radius:.75rem;padding:.75rem;color:#334155;font-size:.9rem;font-weight:750}
.mobile-nav-link:hover{background:#f1f5f9;color:#0f172a}
.button{display:inline-flex;min-height:2.9rem;align-items:center;justify-content:center;gap:.55rem;border:1px solid transparent;border-radius:.85rem;padding:.75rem 1.1rem;font-size:.9rem;font-weight:850;line-height:1.2;transition:background-color .15s,border-color .15s,color .15s,transform .15s}
.button:hover{transform:translateY(-1px)}
.button:disabled{cursor:not-allowed;opacity:.5;transform:none}
.button-small{min-height:2.35rem;border-radius:.7rem;padding:.55rem .8rem;font-size:.8rem}
.button-primary{background:var(--brand);color:#fff}
.button-primary:hover{background:var(--brand-dark)}
.button-secondary{border-color:#cbd5e1;background:#fff;color:#0f172a}
.button-secondary:hover{border-color:#94a3b8;background:#f8fafc}
.button-dark{background:#0f172a;color:#fff}
.button-dark:hover{background:#1e293b}
.button-ghost{background:transparent;color:#475569}
.button-ghost:hover{background:#f1f5f9;color:#0f172a}
.button-success{background:#047857;color:#fff}
.button-success:hover{background:#065f46}
.button-danger-ghost{border-color:#fecdd3;background:#fff;color:#be123c}
.button-danger-ghost:hover{background:#fff1f2}
.section-kicker{display:inline-flex;align-items:center;gap:.5rem;color:#5b4be7;font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}
.text-link{display:inline-flex;align-items:center;gap:.45rem;color:#4938ca;font-size:.875rem;font-weight:850}
.text-link:hover{color:#261f65}
.trust-point{display:flex;align-items:center;gap:.55rem}
.trust-point i{color:#5b4be7;font-size:1.15rem}
.home-hero{background-image:linear-gradient(#f8fafc 1px,transparent 1px),linear-gradient(90deg,#f8fafc 1px,transparent 1px);background-size:36px 36px;background-position:center}
.workspace-preview{border:1px solid #dbe2ea;border-radius:1.5rem;background:#fff;padding:1.25rem;box-shadow:0 18px 50px rgba(15,23,42,.08)}
.workspace-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid #e2e8f0;padding-bottom:1rem}
.workflow-row{display:flex;align-items:center;gap:.85rem;border:1px solid #e2e8f0;border-radius:1rem;padding:1rem;color:#475569;transition:border-color .15s,background-color .15s,transform .15s}
.workflow-row:hover{transform:translateX(2px);border-color:#c4bfff;background:#fafaff;color:#4938ca}
.workflow-row strong{display:block;color:#0f172a;font-size:.92rem}
.workflow-row small{display:block;margin-top:.2rem;color:#64748b;font-size:.75rem;line-height:1.15rem}
.workflow-icon{display:grid;height:2.7rem;width:2.7rem;flex:0 0 auto;place-items:center;border-radius:.8rem;background:#f4f3ff;color:#5b4be7;font-size:1.2rem}
.category-panel{display:block;border:1px solid #dbe2ea;border-radius:1.5rem;background:#fff;padding:1.5rem;color:#334155;transition:transform .15s,border-color .15s,box-shadow .15s}
.category-panel:hover{transform:translateY(-2px);border-color:#b8b1ff;box-shadow:0 16px 40px rgba(15,23,42,.08)}
.category-panel-dark{border-color:#0f172a;background:#0f172a;color:#cbd5e1}
.category-panel-top{display:flex;align-items:center;justify-content:space-between}
.category-panel-icon{display:grid;height:3.25rem;width:3.25rem;place-items:center;border-radius:1rem;background:#f4f3ff;color:#5b4be7;font-size:1.5rem}
.category-panel-dark .category-panel-icon{background:#1e293b;color:#c4bfff}
.category-panel-arrow{font-size:1.25rem;color:#94a3b8}
.category-panel h3{margin-top:1.5rem;color:#0f172a;font-size:1.5rem;font-weight:900}
.category-panel-dark h3{color:#fff}
.category-panel p{margin-top:.6rem;max-width:34rem;line-height:1.75}
.category-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.25rem}
.category-tags span{border:1px solid #e2e8f0;border-radius:999px;padding:.35rem .65rem;background:#f8fafc;color:#475569;font-size:.72rem;font-weight:800}
.category-panel-dark .category-tags span{border-color:#334155;background:#1e293b;color:#cbd5e1}
.compact-tool-card{display:flex;align-items:center;gap:.8rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:1rem;color:#64748b;transition:border-color .15s,transform .15s,box-shadow .15s}
.compact-tool-card:hover{transform:translateY(-1px);border-color:#c4bfff;box-shadow:0 10px 25px rgba(15,23,42,.06);color:#5b4be7}
.compact-tool-card strong{display:block;color:#0f172a;font-size:.88rem}
.compact-tool-card small{display:block;overflow:hidden;margin-top:.15rem;color:#64748b;font-size:.72rem;line-height:1.15rem;text-overflow:ellipsis;white-space:nowrap}
.compact-tool-icon{display:grid;height:2.6rem;width:2.6rem;flex:0 0 auto;place-items:center;border-radius:.8rem;background:#f4f3ff;color:#5b4be7;font-size:1.15rem}
.tool-card{display:flex;min-height:230px;flex-direction:column;border:1px solid #e2e8f0;border-radius:1.25rem;background:#fff;padding:1.35rem;transition:border-color .15s,transform .15s,box-shadow .15s}
.tool-card:hover{transform:translateY(-2px);border-color:#c4bfff;box-shadow:0 14px 32px rgba(15,23,42,.07)}
.tool-card-icon{display:grid;height:3rem;width:3rem;place-items:center;border-radius:.9rem;background:#f1f5f9;color:#334155;font-size:1.35rem}
.tool-card h3{margin-top:1.15rem;color:#0f172a;font-size:1.05rem;font-weight:900}
.tool-card p{margin-top:.55rem;flex:1;color:#64748b;font-size:.87rem;line-height:1.55rem}
.tool-card-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;color:#4938ca;font-size:.8rem;font-weight:850}
.feature-note i{font-size:1.55rem;color:#a9a1ff}
.feature-note h2{margin-top:1rem;font-size:1rem;font-weight:900}
.feature-note p{margin-top:.55rem;color:#cbd5e1;font-size:.875rem;line-height:1.6rem}
.footer-heading{font-size:.75rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#0f172a}
.footer-links{display:grid;gap:.6rem;margin-top:1rem;font-size:.875rem;color:#64748b}
.footer-links a:hover{color:#4938ca}
.notice{display:flex;align-items:flex-start;gap:.65rem;border:1px solid;border-radius:.9rem;padding:.85rem 1rem;font-size:.875rem;line-height:1.45rem}
.notice i{margin-top:.1rem;font-size:1.05rem}
.notice-success{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}
.notice-error{border-color:#fecdd3;background:#fff1f2;color:#9f1239}
.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;color:#94a3b8;font-size:.78rem;font-weight:700}
.breadcrumb a{display:inline-flex;align-items:center;gap:.35rem;color:#64748b}
.breadcrumb a:hover{color:#4938ca}
.breadcrumb>i{font-size:.65rem}
.operation-card{display:flex;min-height:300px;flex-direction:column;border:1px solid #e2e8f0;border-radius:1.5rem;background:#fff;padding:1.5rem;color:#475569;transition:border-color .15s,transform .15s,box-shadow .15s}
.operation-card:hover{transform:translateY(-2px);border-color:#c4bfff;box-shadow:0 16px 35px rgba(15,23,42,.07)}
.operation-card-primary{background:#f8f7ff;border-color:#d8d4ff}
.operation-card-head{display:flex;align-items:center;justify-content:space-between;color:#94a3b8;font-size:1.1rem}
.operation-card-head>span{display:grid;height:3.25rem;width:3.25rem;place-items:center;border-radius:1rem;background:#f4f3ff;color:#5b4be7;font-size:1.45rem}
.operation-card h2{margin-top:1.5rem;color:#0f172a;font-size:1.45rem;font-weight:900}
.operation-card p{margin-top:.7rem;flex:1;line-height:1.75}
.operation-card-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.25rem}
.operation-card-meta span{border-radius:.6rem;background:#f1f5f9;padding:.4rem .6rem;color:#475569;font-size:.7rem;font-weight:800}
.content-panel{border:1px solid #e2e8f0;border-radius:1.5rem;background:#fff;padding:1.5rem}
.pdf-operation-card{display:flex;align-items:flex-start;gap:1.1rem;border:1px solid #e2e8f0;border-radius:1.3rem;background:#fff;padding:1.4rem;transition:border-color .15s,transform .15s,box-shadow .15s}
.pdf-operation-card:hover{transform:translateY(-2px);border-color:#c4bfff;box-shadow:0 14px 32px rgba(15,23,42,.07)}
.pdf-operation-icon{display:grid;height:3.5rem;width:3.5rem;flex:0 0 auto;place-items:center;border-radius:1rem;background:#f1f5f9;color:#334155;font-size:1.55rem}
.pdf-operation-card h2{font-size:1.15rem;font-weight:900;color:#0f172a}
.pdf-operation-card p{margin-top:.45rem;color:#64748b;font-size:.88rem;line-height:1.55rem}
.pdf-operation-card span span,.pdf-operation-card div>span{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;color:#4938ca;font-size:.8rem;font-weight:850}
.plain-info-card{border:1px solid #e2e8f0;border-radius:1.1rem;background:#f8fafc;padding:1.25rem}
.plain-info-card>i{font-size:1.4rem;color:#5b4be7}
.plain-info-card h3{margin-top:1rem;font-size:1rem;font-weight:900;color:#0f172a}
.plain-info-card p{margin-top:.5rem;color:#64748b;font-size:.875rem;line-height:1.6rem}
.format-switcher{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:1rem}
.format-selector-wrap{position:relative;min-width:0}
.format-label{margin-bottom:.5rem;color:#64748b;font-size:.7rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.format-selector{display:flex;width:100%;align-items:center;gap:.8rem;border:1px solid #cbd5e1;border-radius:1rem;background:#fff;padding:.9rem 1rem;color:#64748b;transition:border-color .15s,box-shadow .15s}
.format-selector:hover{border-color:#a8a0ff}
.format-selector strong{display:block;color:#0f172a;font-size:1rem}
.format-selector small{display:block;overflow:hidden;margin-top:.15rem;color:#64748b;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}
.format-selector-icon{display:grid;height:2.8rem;width:2.8rem;flex:0 0 auto;place-items:center;border-radius:.85rem;background:#f1f5f9;color:#334155;font-size:1.35rem}
.format-selector-target{border-color:#c4bfff;background:#fafaff}
.format-selector-target .format-selector-icon{background:#e9e7ff;color:#4938ca}
.format-swap{display:grid;height:2.9rem;width:2.9rem;place-items:center;border:1px solid #d8d4ff;border-radius:999px;background:#f4f3ff;color:#5b4be7;font-size:1.15rem;transition:transform .2s,background-color .15s}
.format-swap:hover{transform:rotate(180deg);background:#e9e7ff}
.format-menu{position:absolute;top:calc(100% + .6rem);left:0;z-index:70;width:min(360px,calc(100vw - 2rem));border:1px solid #dbe2ea;border-radius:1rem;background:#fff;padding:.7rem;box-shadow:0 20px 55px rgba(15,23,42,.18)}
.format-menu-right{left:auto;right:0}
.format-menu-search{display:flex;align-items:center;gap:.55rem;border:1px solid #cbd5e1;border-radius:.75rem;padding:.65rem .75rem;color:#94a3b8}
.format-menu-search input{min-width:0;flex:1;border:0;background:transparent;color:#0f172a;font-size:.85rem}
.format-menu-title{padding:.8rem .25rem .45rem;color:#94a3b8;font-size:.66rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.format-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}
.format-option{display:flex;min-width:0;align-items:center;gap:.55rem;border:1px solid transparent;border-radius:.75rem;padding:.65rem;color:#475569}
.format-option:hover{border-color:#e2e8f0;background:#f8fafc}
.format-option>i:first-child{font-size:1.05rem;color:#64748b}
.format-option span{min-width:0;flex:1}
.format-option strong{display:block;color:#0f172a;font-size:.8rem}
.format-option small{display:block;overflow:hidden;margin-top:.08rem;color:#94a3b8;font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}
.format-option-active{border-color:#d8d4ff;background:#f4f3ff}
.format-option-active>i:last-child{color:#5b4be7}
.format-option-disabled{cursor:not-allowed;opacity:.45}
.converter-directory-card{display:flex;align-items:center;gap:.7rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:1rem;color:#64748b;transition:border-color .15s,transform .15s}
.converter-directory-card:hover{transform:translateY(-1px);border-color:#c4bfff;color:#5b4be7}
.converter-format-badge{display:grid;min-width:3.6rem;place-items:center;border-radius:.65rem;background:#f1f5f9;padding:.55rem .65rem;color:#334155;font-size:.75rem;font-weight:900}
.converter-format-badge-target{background:#f4f3ff;color:#4938ca}
.workflow-tabs{display:inline-flex;align-items:center;gap:.25rem;border:1px solid #e2e8f0;border-radius:.9rem;background:#f8fafc;padding:.25rem}
.workflow-tabs a{display:inline-flex;align-items:center;gap:.4rem;border-radius:.65rem;padding:.6rem .75rem;color:#64748b;font-size:.8rem;font-weight:850}
.workflow-tabs a.active{background:#fff;color:#4938ca;box-shadow:0 1px 4px rgba(15,23,42,.08)}
.converter-shell{border:1px solid #dbe2ea;border-radius:1.5rem;background:#fff;padding:1rem;box-shadow:0 18px 45px rgba(15,23,42,.06)}
.converter-format-panel{border:1px solid #e2e8f0;border-radius:1.2rem;background:#f8fafc;padding:1rem}
.converter-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:1rem}
.drop-zone{display:flex;min-height:360px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #cbd5e1;border-radius:1.2rem;background:#f8fafc;padding:2rem;text-align:center;transition:border-color .15s,background-color .15s}
.drop-zone:hover,.drop-active{border-color:#6d5dfc!important;background:#f7f6ff!important}
.drop-zone-icon{display:grid;height:4rem;width:4rem;place-items:center;border-radius:1.2rem;background:#e9e7ff;color:#4938ca;font-size:1.8rem}
.converter-options{border:1px solid #e2e8f0;border-radius:1.2rem;background:#fff;padding:1.1rem}
.form-input{display:block;width:100%;border:1px solid #cbd5e1;border-radius:.75rem;background:#fff;padding:.75rem .875rem;color:#0f172a;outline:none;transition:border-color .15s,box-shadow .15s}
.form-input:focus{border-color:#6d5dfc;box-shadow:0 0 0 4px #e9e7ff}
.queue-item{border:1px solid #e2e8f0;border-radius:1rem;background:#fff;padding:1rem}
.queue-file-icon{display:grid;height:2.8rem;width:2.8rem;flex:0 0 auto;place-items:center;border-radius:.8rem;background:#f1f5f9;color:#475569;font-size:1rem}
.queue-file-icon small{font-size:.52rem;font-weight:900}
.queue-action{display:grid;height:2rem;width:2rem;place-items:center;border:1px solid #e2e8f0;border-radius:.55rem;background:#fff;color:#64748b;font-size:.8rem}
.queue-action:hover{background:#f8fafc;color:#0f172a}
.queue-remove{border-color:#fecdd3;color:#be123c}
.queue-progress{height:.45rem;overflow:hidden;border-radius:999px;background:#e2e8f0}
.queue-progress>span{display:block;height:100%;width:0;border-radius:999px;background:#5b4be7;transition:width .12s linear}
.result-box{display:flex;align-items:center;gap:1rem;border:1px solid #a7f3d0;border-radius:1.1rem;background:#ecfdf5;padding:1rem}
.result-icon{display:grid;height:2.8rem;width:2.8rem;flex:0 0 auto;place-items:center;border-radius:.8rem;background:#d1fae5;color:#047857;font-size:1.35rem}
.faq-item[open] summary i{transform:rotate(45deg)}
.faq-item summary i{transition:transform .15s}
.legal-copy{color:#334155;line-height:1.85}
.legal-copy h2{margin-top:2rem;color:#0f172a;font-size:1.25rem;line-height:1.4;font-weight:800}
.legal-copy p{margin-top:.8rem}
.legal-copy a{color:#4f46e5;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.admin-link{display:flex;align-items:center;gap:.65rem;border-radius:.65rem;padding:.75rem 1rem;color:#cbd5e1}
.admin-link:hover{background:#1e293b;color:#fff}
.ph-spin{animation:ph-spin 1s linear infinite}
@keyframes ph-spin{to{transform:rotate(360deg)}}
@media(min-width:640px){.content-panel{padding:2rem}.converter-shell{padding:1.25rem}.converter-format-panel{padding:1.25rem}}
@media(max-width:1023px){#adminSidebar.mobile-open{display:block}.converter-grid{grid-template-columns:1fr}.drop-zone{min-height:300px}.converter-options{order:2}.site-header{position:relative}}
@media(max-width:639px){.format-switcher{grid-template-columns:1fr}.format-swap{margin:auto;transform:rotate(90deg)}.format-swap:hover{transform:rotate(270deg)}.format-menu,.format-menu-right{left:0;right:auto;width:100%}.format-menu-grid{grid-template-columns:1fr}.result-box{align-items:flex-start;flex-wrap:wrap}.result-box .button{width:100%}.section-heading-row{align-items:flex-start}.workflow-tabs{width:100%;overflow-x:auto}.workflow-tabs a{flex:1;justify-content:center;white-space:nowrap}.pdf-operation-card{align-items:flex-start}.home-hero{background-image:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
