*{box-sizing:border-box}
:root{--red:#ef312f;--red-dark:#d72826;--bg:#f4f4f8;--border:#d5d7dd;--text:#303139;--muted:#757985}
html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
button,input,select{font-family:inherit}
.topbar{height:64px;background:#fff;border-bottom:1px solid #ddd;display:flex;align-items:center;padding:0 24px;gap:45px}
.brand{color:#222;font-size:19px;font-weight:900;text-decoration:none;white-space:nowrap;display:flex;align-items:center;gap:7px}
.brand-pdf{background:var(--red);color:#fff;border-radius:7px;padding:6px 7px}
nav{display:flex;gap:34px;font-size:13px;font-weight:bold}
nav a{color:#222;text-decoration:none}nav .active{color:var(--red)}
.vendor-notice{background:#fff3cf;border-bottom:1px solid #ead797;padding:10px 22px;display:flex;justify-content:center;gap:18px;align-items:center;font-size:13px}
.vendor-notice a{background:#333;color:#fff;text-decoration:none;padding:7px 11px;border-radius:6px;font-weight:bold}
.start-screen{text-align:center;padding:48px 20px 70px}
.start-screen h1,.tool-hero h1{font-size:44px;margin:0 0 10px}
.start-screen p,.tool-hero p{font-size:20px;margin:0 0 30px}
.dropzone{max-width:800px;margin:auto;padding:25px 15px;border:2px dashed transparent;border-radius:16px;transition:.2s}
.dropzone.drag,.tool-drop.drag{background:#fff;border-color:var(--red)}
.dropzone button,.primary-btn{border:0;border-radius:11px;background:var(--red);color:#fff;font-size:20px;font-weight:bold;padding:18px 34px;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,.14)}
.dropzone button:hover,.primary-btn:hover,.merge-btn:hover{background:var(--red-dark)}
.dropzone span{display:block;font-size:13px;margin-top:13px;color:#555}
.privacy{display:inline-flex;align-items:center;gap:7px;margin-top:14px;padding:10px 14px;background:#e9f7ee;border-radius:9px;font-size:13px}
.hidden{display:none!important}
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;min-height:calc(100vh - 64px)}
.main-area{padding:18px 28px 50px}
.workspace-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.workspace-head small{display:block;color:#777;margin-top:4px}
.circle-add{width:50px;height:50px;border-radius:50%;border:0;background:var(--red);color:#fff;font-size:35px;line-height:48px;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,.18)}
.cards{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start}
.card{width:198px;background:#fff;padding:8px;border-radius:8px;position:relative;box-shadow:0 2px 9px rgba(0,0,0,.08);cursor:grab;border:2px solid transparent}
.card.dragging{opacity:.4}.card.over{border-color:var(--red)}
.preview{height:190px;background:#eee;border-radius:4px;overflow:hidden}
.preview embed{width:100%;height:100%;pointer-events:none}
.filename{text-align:center;font-size:12px;padding:8px 3px 2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.filemeta{text-align:center;font-size:10px;color:#888;padding-top:3px}
.remove{position:absolute;z-index:3;top:-8px;right:-8px;width:27px;height:27px;border:2px solid #fff;border-radius:50%;background:#2b2c31;color:#fff;font-size:18px;font-weight:bold;cursor:pointer}
.num{position:absolute;z-index:2;top:13px;left:13px;width:26px;height:26px;border-radius:50%;background:rgba(239,49,47,.94);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:bold}
aside,.tool-options{background:#fff;border-left:1px solid #cacdd3;display:flex;flex-direction:column}
aside h2,.tool-options>h2{text-align:center;font-size:26px;margin:0;padding:17px;border-bottom:1px solid #ddd}
.tip,.note{margin:16px;background:#def1ff;border-radius:7px;padding:14px;display:flex;gap:10px;font-size:14px;line-height:1.45}
.tip b{color:#0097df}.note.warning{background:#fff1d9}.note{background:#eef3f7}
.summary{margin:0 16px;border:1px solid #e2e2e7;border-radius:8px;overflow:hidden}
.summary div{display:flex;justify-content:space-between;padding:11px 13px;font-size:13px}.summary div+div{border-top:1px solid #e2e2e7}.summary span{color:#777}
.progress-wrap{margin:18px 16px 0}
.progress-label{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:7px}
.progress-label span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.progress-track{height:8px;border-radius:99px;background:#e5e5e9;overflow:hidden}
.progress-bar{height:100%;width:0;background:var(--red);transition:width .2s}
.side-bottom{margin-top:auto;padding:16px}
.merge-btn{width:100%;min-height:67px;border:0;border-radius:11px;background:var(--red);color:#fff;font-size:20px;font-weight:bold;display:flex;align-items:center;justify-content:center;gap:15px;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,.18)}
.merge-btn:disabled{opacity:.55;cursor:not-allowed}.arrow{border:2px solid #fff;border-radius:50%;width:25px;height:25px;line-height:20px}
.clear-btn{width:100%;margin-top:9px;border:0;background:transparent;padding:9px;color:#777;cursor:pointer}
.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);background:#2c2d31;color:#fff;padding:12px 18px;border-radius:8px;opacity:0;pointer-events:none;transition:.2s;z-index:99;max-width:min(90vw,700px);text-align:center}.toast.show{opacity:1}

/* páginas de conversão */
.tool-page{min-height:calc(100vh - 64px)}
.tool-hero{text-align:center;padding:34px 20px 22px}
.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;min-height:570px;border-top:1px solid #ddd}
.tool-card{padding:35px;display:flex;justify-content:center;align-items:flex-start}
.tool-drop{width:min(760px,100%);min-height:350px;background:#fff;border:2px dashed #d7d8de;border-radius:15px;padding:50px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.2s}
.tool-drop h2{margin:14px 0 18px}.tool-drop>span{margin-top:13px;font-size:13px;color:#777}
.tool-icon{width:76px;height:76px;border-radius:14px;background:#2867b2;color:white;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:42px;box-shadow:0 5px 15px rgba(0,0,0,.13)}
.tool-icon.image{background:#ef8b31;font-size:21px}
.selected-file{width:min(760px,100%);background:#fff;border-radius:14px;padding:18px;box-shadow:0 3px 15px rgba(0,0,0,.08);display:flex;gap:22px;align-items:center}
.selected-preview{width:220px;height:285px;background:#eee;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:7px}
.selected-preview canvas{max-width:100%;max-height:100%;display:block}
.selected-info{display:flex;flex-direction:column;gap:8px;min-width:0}.selected-info strong{font-size:17px;word-break:break-all}.selected-info span{font-size:13px;color:#777}
.link-btn{align-self:flex-start;border:0;background:transparent;color:var(--red);padding:4px 0;font-weight:bold;cursor:pointer}
.option-block{margin:18px 16px}.option-label{display:block;font-weight:bold;margin-bottom:9px;font-size:14px}
.radio-card{display:flex;gap:10px;border:2px solid #e0e1e5;border-radius:9px;padding:13px;cursor:pointer;margin-bottom:9px}
.radio-card.selected{border-color:var(--red);background:#fff8f7}.radio-card input{margin-top:3px}
.radio-card div{display:flex;flex-direction:column;gap:4px}.radio-card span{font-size:12px;color:#777;line-height:1.35}
.select-control{width:100%;height:43px;border:1px solid #cccfd5;border-radius:8px;padding:0 10px;background:#fff}
input[type=range]{width:100%}

.error-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:20px;z-index:200}
.error-box{width:min(680px,100%);background:#fff;border-radius:14px;padding:25px;box-shadow:0 15px 50px rgba(0,0,0,.25)}
.error-box h3{margin-top:0}.error-box p{line-height:1.55;white-space:pre-line}.error-box button{border:0;background:var(--red);color:#fff;border-radius:8px;padding:11px 18px;font-weight:bold;cursor:pointer}

@media(max-width:850px){
nav{gap:14px;font-size:11px}.start-screen h1,.tool-hero h1{font-size:34px}.start-screen p,.tool-hero p{font-size:17px}
.workspace,.tool-layout{grid-template-columns:1fr}aside,.tool-options{border-left:0;border-top:1px solid #ccc}
.selected-file{flex-direction:column}.selected-preview{width:100%;height:300px}
}
@media(max-width:600px){nav{display:none}.vendor-notice{align-items:flex-start;flex-direction:column;gap:7px}.topbar{padding:0 15px}}


/* JPG -> PDF */
.image-preview{
    display:flex;
    align-items:center;
    justify-content:center;
    background:#eee;
}
.image-preview img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}
.image-card .preview{
    background:#f1f1f1;
}


/* HOME ADMINISTRÁVEL */
.home-body{background:#f6f6f9}.home-topbar{position:sticky;top:0;z-index:50}
.site-logo{max-width:230px;max-height:46px;object-fit:contain;display:block}
.launch-badge{margin-left:auto;background:#e8f8ee;color:#178043;border:1px solid #bce5ca;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900}
.launch-hero{min-height:430px;display:flex;align-items:center;justify-content:center;padding:70px 24px 55px;background:radial-gradient(circle at 20% 10%,rgba(239,49,47,.08),transparent 36%),radial-gradient(circle at 90% 10%,rgba(44,103,178,.08),transparent 32%),#fff;border-bottom:1px solid #e5e5e8}
.launch-copy{width:min(980px,100%);text-align:center}.eyebrow{display:inline-block;font-size:12px;font-weight:900;letter-spacing:1.2px;color:var(--red);margin-bottom:12px}
.launch-copy h1{margin:0 auto 18px;max-width:830px;font-size:52px;line-height:1.06}.launch-copy>p{max-width:750px;margin:0 auto;font-size:19px;color:#626671;line-height:1.6}
.hero-actions{display:flex;justify-content:center;gap:12px;margin-top:28px}.hero-actions a{padding:15px 22px;border-radius:10px;text-decoration:none;font-weight:800}.hero-primary{background:var(--red);color:#fff}.hero-secondary{background:#fff;color:#292a31;border:1px solid #d9d9df}
.hero-trust{margin-top:27px;display:flex;flex-wrap:wrap;gap:18px;justify-content:center;color:#5f636d;font-size:13px}
.tools-section{max-width:1200px;margin:0 auto;padding:65px 22px}.section-title{text-align:center;margin-bottom:30px}.section-title h2{font-size:36px;margin:0 0 9px}.section-title p{margin:0;color:#747883}
.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool-home-card{min-height:180px;background:#fff;border:1px solid #e2e2e7;border-radius:14px;padding:20px;text-decoration:none;color:#282930;display:flex;gap:15px;position:relative;transition:.18s}.tool-home-card.live:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,.08);border-color:#d4d5da}.tool-home-card.soon{opacity:.72}
.tool-card-icon{width:58px;height:58px;flex:0 0 58px;border-radius:13px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:18px}.tool-card-icon.red{background:#ef312f}.tool-card-icon.blue{background:#2867b2}.tool-card-icon.orange{background:#ef8b31}.tool-card-icon.green{background:#2d9b57}.tool-card-icon.purple{background:#7553b8}.tool-card-icon.dark{background:#36373d}
.tool-card-body{padding-top:2px}.tool-card-body h3{margin:7px 0 6px;font-size:19px}.tool-card-body p{margin:0;color:#747883;line-height:1.45;font-size:13px}.status{font-size:9px;font-weight:900;letter-spacing:.7px}.live-status{color:#178043}.soon-status{color:#9b6c15}.tool-arrow{position:absolute;right:18px;bottom:16px;color:var(--red);font-size:21px}
.why-section{max-width:1200px;margin:0 auto;padding:0 22px 65px}.why-card{border-radius:18px;background:#292a30;color:#fff;padding:38px;display:grid;grid-template-columns:1fr 1fr;gap:35px}.why-card h2{font-size:32px;margin:5px 0 10px}.why-card p{color:#c7c8ce;line-height:1.6}.why-list{display:flex;flex-direction:column;justify-content:center}.why-list div{display:flex;gap:16px;align-items:center;border-bottom:1px solid #46474f;padding:13px 0}.why-list strong{color:#ef312f}
.site-footer{text-align:center;padding:35px 20px;background:#fff;border-top:1px solid #e4e4e8;color:#777}.site-footer strong{color:#333;font-size:18px}.site-footer p{margin:8px 0}
@media(max-width:950px){.tool-grid{grid-template-columns:repeat(2,1fr)}.why-card{grid-template-columns:1fr}.launch-copy h1{font-size:43px}}
@media(max-width:600px){.tool-grid{grid-template-columns:1fr}.launch-copy h1{font-size:34px}.launch-copy>p{font-size:16px}.hero-actions{flex-direction:column}.hero-trust{flex-direction:column;gap:7px}.site-logo{max-width:180px}}


/* CONVERSORES V2 */
.file-preview-box{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:34px;color:#fff;background:linear-gradient(135deg,#4a5d86,#2c3344)}
.tool-icon{font-size:26px}


/* CONTAS / PLANOS */
.topbar-actions{margin-left:auto;display:flex;gap:9px;align-items:center}
.top-login-link,.top-register-link{font-size:13px;font-weight:800;text-decoration:none;border-radius:8px;padding:9px 12px}
.top-login-link{color:#333}.top-register-link{background:var(--red);color:#fff}
.pricing-body{background:#f7f7f9}.pricing-main{max-width:1250px;margin:auto;padding:55px 22px}.pricing-head{text-align:center;margin-bottom:35px}.pricing-head h1{font-size:42px;margin:5px 0 10px}.pricing-head p{color:#777}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.price-card{background:#fff;border:1px solid #cdd0d7;border-radius:22px;padding:30px;display:flex;flex-direction:column;min-height:600px}.price-card.premium{background:#fff3d3;border-color:#333}.price-title{display:flex;align-items:center;gap:10px}.price-title h2{margin-right:auto}.price-icon{width:46px;height:46px;border-radius:50%;background:#fff0f0;display:flex;align-items:center;justify-content:center;font-size:22px}.price-icon.crown{background:#ffc333}.price-value{font-size:34px;font-weight:900;margin:35px 0}.price-value small{font-size:13px;font-weight:normal}.price-value.talk{font-size:26px}.annual-price{margin-top:-25px;margin-bottom:28px}.price-btn{display:block;text-align:center;text-decoration:none;border-radius:9px;padding:13px 15px;font-weight:900;margin:10px 0 25px}.price-btn.basic{border:2px solid var(--red);color:var(--red)}.premium-btn{background:#ffc333;color:#171717}.business-btn{background:#333;color:#fff}.price-card h3{font-size:15px;margin-top:0}.check-list{list-style:none;padding:0;margin:0}.check-list li{padding:8px 0 8px 26px;position:relative;color:#555}.check-list li:before{content:"✓";position:absolute;left:0;color:#2fc879;font-weight:900}.trial-note{margin-top:auto;background:#fff;border-radius:8px;padding:11px;font-size:12px;text-align:center}
.compare-section,.faq-section{margin-top:65px}.compare-section h2,.faq-section h2{text-align:center;font-size:30px}.compare-table-wrap{overflow:auto;background:#fff;border-radius:14px;border:1px solid #ddd}.compare-table{width:100%;border-collapse:collapse}.compare-table th,.compare-table td{padding:15px;border-bottom:1px solid #e4e5e9;text-align:center}.compare-table th:first-child,.compare-table td:first-child{text-align:left}.faq-section{max-width:900px;margin-left:auto;margin-right:auto}.faq-section details{background:#fff;border:1px solid #ddd;border-radius:10px;margin:10px 0;padding:15px 17px}.faq-section summary{cursor:pointer;font-weight:800}.faq-section p{color:#666;line-height:1.6}
@media(max-width:950px){.pricing-grid{grid-template-columns:1fr}.price-card{min-height:auto}}


/* PWA + RESPONSIVO V4.3 */
.hidden{display:none!important}
.pwa-install-btn{
    border:1px solid #d9dbe2;
    background:#fff;
    color:#333;
    border-radius:8px;
    padding:9px 12px;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
@media(max-width:980px){
    .topbar{
        gap:10px;
        flex-wrap:wrap;
        height:auto;
        min-height:58px;
        padding:10px 14px;
    }
    .topbar nav{
        order:3;
        width:100%;
        overflow-x:auto;
        display:flex;
        flex-wrap:nowrap;
        -webkit-overflow-scrolling:touch;
    }
    .topbar nav a{
        flex:0 0 auto;
        white-space:nowrap;
    }
    .topbar-actions{
        margin-left:auto;
        gap:6px;
    }
    .tool-layout{
        grid-template-columns:1fr!important;
    }
    .tool-options{
        position:static!important;
        width:100%!important;
    }
}
@media(max-width:620px){
    .brand span:not(.brand-pdf){display:none}
    .topbar{
        padding:8px 10px;
    }
    .topbar nav{
        padding-bottom:3px;
    }
    .topbar nav a{
        font-size:11px;
        padding:8px 9px;
    }
    .top-login-link,.top-register-link,.pwa-install-btn{
        padding:8px 9px;
        font-size:11px;
    }
    .launch-hero{
        padding:45px 15px 38px;
        min-height:auto;
    }
    .launch-copy h1{
        font-size:31px!important;
    }
    .tools-section{
        padding:40px 12px;
    }
    .tool-home-card{
        padding:15px;
        min-height:150px;
    }
    .tool-page{
        padding-left:10px;
        padding-right:10px;
    }
    .tool-card,.tool-options{
        border-radius:12px!important;
    }
    .primary-btn,.merge-btn{
        width:100%;
        min-height:48px;
    }
    .selected-file{
        flex-direction:column;
    }
}


/* ACESSO POR PLANO V4.5 */
.tool-home-card.locked{
    background:#fafafd;
    border-color:#e1e2e8;
}
.tool-home-card.locked:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 22px rgba(0,0,0,.06);
}
.premium-status{
    color:#a16b00;
    background:#fff1c7;
    border-radius:999px;
    padding:4px 7px;
}
.basic-status{
    color:#176c36;
    background:#e8f7ed;
    border-radius:999px;
    padding:4px 7px;
}
.premium-required-notice{
    max-width:850px;
    margin:0 auto 28px;
    background:#fff4d6;
    border:1px solid #e6ca76;
    border-radius:12px;
    padding:14px 17px;
    display:flex;
    flex-direction:column;
    gap:4px;
}
.premium-required-notice span{
    color:#655c45;
    font-size:13px;
}


/* DESCONEXÃO IMEDIATA V5.1 */
.session-kick-overlay{
    position:fixed;
    inset:0;
    z-index:999999;
    background:rgba(25,26,31,.76);
    backdrop-filter:blur(5px);
    display:grid;
    place-items:center;
    padding:18px;
}
.session-kick-box{
    width:min(440px,100%);
    background:#fff;
    border-radius:18px;
    padding:28px 24px;
    text-align:center;
    box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.session-kick-icon{
    width:58px;
    height:58px;
    margin:0 auto 14px;
    border-radius:50%;
    background:#fff0ef;
    display:grid;
    place-items:center;
    font-size:25px;
}
.session-kick-box h2{
    margin:0 0 10px;
    font-size:22px;
}
.session-kick-box p{
    margin:0 0 10px;
    line-height:1.55;
    color:#4f525b;
}
.session-kick-box small{
    color:#858892;
}
