.firmbooks{--yellow:#f5c842;--black:#111110;--white:#fefefe;--muted:#5a5a55;--card:#fefbef;--fb-border:#00000017;background:var(--yellow);color:var(--black);min-height:100vh;font-family:DM Sans,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}.firmbooks *,.firmbooks :before,.firmbooks :after{box-sizing:border-box;margin:0;padding:0}.firmbooks nav{background:var(--yellow);z-index:100;border-bottom:1px solid var(--fb-border);justify-content:space-between;align-items:center;padding:1.3rem 5vw;display:flex;position:sticky;top:0}.firmbooks .nav-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;gap:5px;padding:.5rem;display:none}.firmbooks .nav-toggle span{background:var(--black);border-radius:2px;width:22px;height:2px;display:block}.firmbooks .logo{color:var(--black);font-family:Playfair Display,serif;font-size:1.3rem;font-weight:900;text-decoration:none}.firmbooks .logo span{color:var(--muted)}.firmbooks nav ul{align-items:center;gap:1.75rem;list-style:none;display:flex}.firmbooks nav ul.nav-quick{gap:1.25rem}.firmbooks nav a{color:var(--black);opacity:.65;font-size:.875rem;font-weight:500;text-decoration:none;transition:opacity .2s}.firmbooks nav a:hover{opacity:1}.firmbooks .nav-cta{border-radius:100px;padding:.5rem 1.25rem;background:var(--black)!important;color:var(--yellow)!important;opacity:1!important;font-size:.85rem!important}.firmbooks .nav-login{border:1px solid #00000040;border-radius:100px;padding:.45rem 1.05rem;transition:background .2s,border-color .2s;opacity:1!important;color:var(--black)!important;font-size:.85rem!important}.firmbooks .nav-login:hover{background:#00000014;border-color:#00000073}.firmbooks .hero{max-width:1100px;margin:0 auto;padding:5.5rem 5vw 4.5rem}.firmbooks .hero-tag{letter-spacing:.06em;text-transform:uppercase;background:#00000014;border-radius:100px;margin-bottom:1.75rem;padding:.3rem .9rem;font-size:.78rem;font-weight:500;display:inline-block}.firmbooks h1{letter-spacing:-2px;max-width:760px;margin-bottom:1.4rem;font-family:Playfair Display,serif;font-size:clamp(2.8rem,5.5vw,5rem);font-weight:900;line-height:1.05}.firmbooks h1 em{color:var(--muted);font-style:italic}.firmbooks .hero-sub{color:var(--muted);max-width:500px;margin-bottom:.75rem;font-size:1.05rem;line-height:1.7}.firmbooks .hero-guarantee{color:var(--black);align-items:center;gap:.4rem;margin-bottom:2.25rem;font-size:.875rem;font-weight:500;display:flex}.firmbooks .hero-guarantee:before{content:"✓";background:var(--black);color:var(--yellow);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.65rem;display:inline-flex}.firmbooks .hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.firmbooks .btn-primary{background:var(--black);color:var(--yellow);cursor:pointer;border:none;border-radius:100px;padding:.9rem 2rem;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .2s,transform .15s;display:inline-block}.firmbooks .btn-primary:hover{background:#333;transform:translateY(-1px)}.firmbooks .btn-ghost{color:var(--black);cursor:pointer;background:0 0;border:1.5px solid #0003;border-radius:100px;padding:.85rem 1.75rem;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:500;text-decoration:none;transition:border-color .2s,transform .15s;display:inline-block}.firmbooks .btn-ghost:hover{border-color:var(--black);transform:translateY(-1px)}.firmbooks .hero-stats{border-top:1px solid var(--fb-border);flex-wrap:wrap;gap:3rem;margin-top:3.5rem;padding-top:2.5rem;display:flex}.firmbooks .stat-num{letter-spacing:-1px;font-family:Playfair Display,serif;font-size:1.9rem;font-weight:900;display:block}.firmbooks .stat-label{color:var(--muted);font-size:.82rem}.firmbooks .marquee-wrap{background:var(--black);color:var(--yellow);white-space:nowrap;padding:.9rem 0;overflow:hidden}.firmbooks .marquee-track{gap:2.5rem;animation:26s linear infinite fb-marquee;display:inline-flex}.firmbooks .marquee-track span{letter-spacing:.08em;text-transform:uppercase;opacity:.7;font-size:.78rem;font-weight:500}.firmbooks .marquee-track .dot{opacity:.3}@keyframes fb-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.firmbooks section{padding:5.5rem 5vw}.firmbooks .section-inner{max-width:1100px;margin:0 auto}.firmbooks .section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem;font-size:.75rem;font-weight:500}.firmbooks h2{letter-spacing:-1px;margin-bottom:.75rem;font-family:Playfair Display,serif;font-size:clamp(1.9rem,3.5vw,2.75rem);font-weight:900;line-height:1.1}.firmbooks .section-sub{color:var(--muted);max-width:500px;margin-bottom:3rem;font-size:.95rem;line-height:1.65}.firmbooks .wl-banner{background:var(--black);color:var(--white);border-radius:16px;flex-wrap:wrap;align-items:center;gap:2rem;margin-bottom:3rem;padding:2.25rem 2.5rem;display:flex}.firmbooks .wl-icon{flex-shrink:0;font-size:2rem}.firmbooks .wl-banner h3{color:var(--white);margin-bottom:.35rem;font-size:1.05rem;font-weight:500}.firmbooks .wl-banner p{color:#ffffff80;max-width:580px;font-size:.875rem;line-height:1.65}.firmbooks .how-grid{background:var(--fb-border);border:1.5px solid var(--fb-border);border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5px;display:grid;overflow:hidden}.firmbooks .how-card{background:var(--card);padding:2.25rem}.firmbooks .step-num{color:#0000000f;letter-spacing:-2px;margin-bottom:.75rem;font-family:Playfair Display,serif;font-size:3rem;font-weight:900;line-height:1}.firmbooks .how-card h3{margin-bottom:.4rem;font-size:1rem;font-weight:500}.firmbooks .how-card p{color:var(--muted);font-size:.875rem;line-height:1.6}.firmbooks .how-detail{color:var(--black);border-top:1px solid var(--fb-border);margin-top:.75rem;padding-top:.75rem;font-size:.78rem;font-weight:500}.firmbooks .pricing-section{background:var(--black);color:var(--white)}.firmbooks .pricing-section h2{color:var(--white)}.firmbooks .pricing-section .section-label{color:#fff6}.firmbooks .pricing-section .section-sub{color:#ffffff80}.firmbooks .pricing-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:2.5rem;display:flex}.firmbooks .calc-wrap{background:#1c1c1a;border:1px solid #ffffff12;border-radius:16px;padding:2.5rem}.firmbooks .calc-row{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;display:grid}@media(max-width:640px){.firmbooks .calc-row{grid-template-columns:1fr}.firmbooks .hero-stats{gap:1.5rem}}@media(max-width:820px){.firmbooks nav{flex-wrap:nowrap;gap:.5rem;padding:.9rem 4vw}.firmbooks .logo{flex-shrink:0;font-size:1.1rem}.firmbooks .nav-toggle{display:flex}.firmbooks nav ul.nav-quick{flex-wrap:nowrap;gap:.4rem;margin-left:auto;display:flex}.firmbooks nav ul.nav-quick li a{opacity:.9;padding:.35rem .55rem;font-size:.8rem}.firmbooks nav ul.nav-quick .nav-cta{white-space:nowrap;padding:.45rem .8rem!important;font-size:.78rem!important}.firmbooks nav ul.nav-main{background:var(--yellow);border:1px solid var(--fb-border);border-radius:12px;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 0;display:none;position:absolute;top:100%;left:4vw;right:4vw;box-shadow:0 10px 30px #00000014}.firmbooks nav ul.nav-main.is-open{display:flex}.firmbooks nav ul.nav-main li{padding:0}.firmbooks nav ul.nav-main li a{opacity:.85;padding:.85rem 1.2rem;font-size:.95rem;display:block}.firmbooks nav ul.nav-main .nav-cta{text-align:center;margin:.5rem 1rem;padding:.7rem 1rem!important}}@media(max-width:480px){.firmbooks nav{padding:.8rem 3vw}.firmbooks nav ul.nav-quick{gap:.25rem}.firmbooks nav ul.nav-quick li a{padding:.3rem .4rem;font-size:.72rem}.firmbooks nav ul.nav-quick .nav-cta{padding:.4rem .6rem!important;font-size:.7rem!important}}.firmbooks .calc-label{letter-spacing:.08em;text-transform:uppercase;color:#fff6;margin-bottom:.75rem;font-size:.75rem;font-weight:500;display:block}.firmbooks .job-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.firmbooks .job-btn{color:#fff9;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:100px;padding:.5rem 1.1rem;font-family:DM Sans,sans-serif;font-size:.875rem;transition:all .2s}.firmbooks .job-btn:hover{color:var(--white);border-color:#fff6}.firmbooks .job-btn.active{background:var(--yellow);border-color:var(--yellow);color:var(--black);font-weight:500}.firmbooks .vol-slider{appearance:none;cursor:pointer;background:#ffffff1f;border-radius:2px;outline:none;width:100%;height:4px;margin-bottom:.75rem}.firmbooks .vol-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--yellow);cursor:pointer;border-radius:50%;width:20px;height:20px}.firmbooks .vol-slider::-moz-range-thumb{background:var(--yellow);cursor:pointer;border:none;border-radius:50%;width:20px;height:20px}.firmbooks .vol-labels{color:#ffffff4d;justify-content:space-between;font-size:.75rem;display:flex}.firmbooks .vol-display{color:var(--white);margin-bottom:.75rem;font-size:.9rem}.firmbooks .price-result{background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:1rem;padding:2rem 2.5rem;display:flex}.firmbooks .price-label{color:#fff6;margin-bottom:.2rem;font-size:.82rem}.firmbooks .price-amount{color:var(--yellow);letter-spacing:-2px;font-family:Playfair Display,serif;font-size:3rem;font-weight:900;line-height:1}.firmbooks .price-sub{color:#ffffff4d;margin-top:.3rem;font-size:.8rem}.firmbooks .price-breakdown{color:#ffffff73;font-size:.85rem;line-height:1.9}.firmbooks .price-breakdown strong{color:#fffc}.firmbooks .pricing-note{color:#ffffff4d;text-align:center;margin-top:1.5rem;font-size:.82rem}.firmbooks .pricing-cta-row{justify-content:center;margin-top:2rem;display:flex}.firmbooks .btn-ghost-light{color:var(--white);border-color:#ffffff40}.firmbooks .btn-ghost-light:hover{border-color:var(--yellow);color:var(--yellow)}.firmbooks .price-result-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem;display:grid}.firmbooks .price-cell{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;padding:1.5rem 1.25rem}.firmbooks .price-result-grid .price-amount{letter-spacing:-1.5px;font-family:Playfair Display,serif;font-size:2.1rem;font-weight:900;line-height:1.05}.firmbooks .price-amount-inhouse{color:#f87171;-webkit-text-decoration:line-through #f87171a6;text-decoration:line-through #f87171a6;text-decoration-thickness:2px}.firmbooks .price-amount-fb{color:var(--yellow)}.firmbooks .price-amount-save{color:#4ade80}.firmbooks .price-amount-margin{color:#fb923c}.firmbooks .price-result-grid .price-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff73;margin-bottom:.6rem;font-size:.7rem;font-weight:500}.firmbooks .price-result-grid .price-sub{color:#ffffff59;margin-top:.4rem;font-size:.72rem}@media(max-width:720px){.firmbooks .price-result-grid{grid-template-columns:1fr 1fr}.firmbooks .calc-wrap{padding:1.5rem}}.firmbooks .pricing-cards{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.firmbooks .pricing-card{background:#1c1c1a;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;padding:2rem;display:flex;position:relative}.firmbooks .pricing-card-popular{background:var(--card);color:var(--black);border-color:var(--yellow);transform:translateY(-8px);box-shadow:0 20px 40px #0000002e}.firmbooks .pricing-card-popular .pricing-card-name,.firmbooks .pricing-card-popular .pricing-card-price{color:var(--black)}.firmbooks .pricing-card-popular .pricing-card-period,.firmbooks .pricing-card-popular .pricing-card-billed{color:var(--muted)}.firmbooks .pricing-card-popular .pricing-card-tagline,.firmbooks .pricing-card-popular .pricing-card-features,.firmbooks .pricing-card-popular .pricing-card-features li svg{color:var(--black)}.firmbooks .pricing-card-popular .feature-highlight{color:var(--black);background:#f5c84238}.firmbooks .pricing-card-popular .pricing-card-cta{background:var(--black);color:var(--yellow)}.firmbooks .popular-badge{background:var(--black);color:var(--yellow);letter-spacing:.04em;text-transform:uppercase;border-radius:100px;padding:.35rem .9rem;font-size:.72rem;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.firmbooks .pricing-card-name{color:#ffffff8c;margin-bottom:.6rem;font-size:.95rem;font-weight:600}.firmbooks .pricing-card-price{letter-spacing:-2px;color:var(--yellow);margin-bottom:.35rem;font-family:Playfair Display,serif;font-size:2.6rem;font-weight:900;line-height:1}.firmbooks .pricing-card-period{letter-spacing:0;color:#ffffff80;margin-left:.15rem;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:500}.firmbooks .pricing-terms{background:#1c1c1a;border:1px solid #ffffff14;border-radius:18px;max-width:680px;margin:3rem auto 0;padding:2rem}.firmbooks .pricing-terms h2{color:var(--white);margin-bottom:.5rem}.firmbooks .pricing-terms p{color:#ffffffa6;margin-bottom:1.25rem}.firmbooks .pricing-card-tagline{color:var(--white);letter-spacing:-.3px;margin-bottom:1.25rem;font-family:Playfair Display,serif;font-size:1.15rem;font-weight:700}.firmbooks .pricing-card-features{color:#ffffffbf;flex-direction:column;flex-grow:1;gap:.55rem;margin-bottom:1.75rem;font-size:.88rem;list-style:none;display:flex}.firmbooks .pricing-card-features li{align-items:center;gap:.55rem;display:flex}.firmbooks .pricing-card-features li svg{color:var(--yellow);flex-shrink:0}.firmbooks .feature-highlight{color:var(--white);background:#ffffff14;border-radius:8px;width:fit-content;padding:.5rem .75rem;font-weight:500}.firmbooks .pricing-card-cta{background:var(--yellow);color:var(--black);text-align:center;border-radius:100px;margin-top:auto;padding:.85rem 1.25rem;font-weight:600;text-decoration:none;transition:background .2s,transform .15s;display:inline-block}.firmbooks .pricing-card-cta:hover{background:#e0ae20;transform:translateY(-1px)}@media(max-width:960px){.firmbooks .pricing-cards{grid-template-columns:1fr;max-width:520px;margin:0 auto}.firmbooks .pricing-card-popular{transform:none}}.firmbooks .compare-title{color:var(--white);letter-spacing:-.5px;margin-bottom:.4rem;font-family:Playfair Display,serif;font-size:1.6rem;font-weight:900}.firmbooks .compare-sub{color:#ffffff73;max-width:560px;margin-bottom:2rem;font-size:.9rem}.firmbooks .compare-table{background:#1c1c1a;border:1px solid #ffffff12;border-radius:14px;flex-direction:column;padding:0 1.5rem;display:flex}.firmbooks .compare-row{color:#fffc;border-bottom:1px solid #ffffff0d;grid-template-columns:1.1fr 1.6fr 1fr 1fr 1fr 1fr;align-items:center;gap:1rem;padding:1rem 0;font-size:.88rem;display:grid}.firmbooks .compare-row:last-child{border-bottom:none}.firmbooks .compare-head{text-transform:uppercase;letter-spacing:.08em;color:#fff6;padding:1.1rem 0 .9rem;font-size:.68rem;font-weight:500}.firmbooks .compare-job{color:var(--white);letter-spacing:-.3px;font-family:Playfair Display,serif;font-size:1rem;font-weight:900}.firmbooks .compare-inhouse{color:#f87171;font-weight:500;-webkit-text-decoration:line-through #f8717199;text-decoration:line-through #f8717199;text-decoration-thickness:1.5px}.firmbooks .compare-fb{color:var(--yellow);font-weight:600}.firmbooks .compare-divider{background:#ffffff1f;height:1px;margin:.25rem 0}.firmbooks .pill{border-radius:100px;padding:.3rem .7rem;font-size:.8rem;font-weight:600;display:inline-block}.firmbooks .pill-save{color:#4ade80;background:#4ade8024}.firmbooks .pill-margin{color:#fb923c;background:#fb923c26}.firmbooks .compare-foot{color:#ffffff59;margin-top:1.5rem;font-size:.78rem;line-height:1.6}@media(max-width:720px){.firmbooks .compare-table{padding:0 1rem}.firmbooks .compare-row{grid-template-columns:1fr 1fr;row-gap:.4rem;padding:1rem 0}.firmbooks .compare-head{display:none}.firmbooks .compare-row span:first-child:not(:empty){grid-column:1/-1;margin-bottom:.35rem}.firmbooks .compare-row span:first-child:empty{display:none}.firmbooks .compare-row span:nth-child(2){color:#ffffff8c;grid-column:1/-1;font-size:.82rem}.firmbooks .compare-inhouse:before{content:"In-house: ";color:#ffffff59;text-decoration:none;display:inline-block}.firmbooks .compare-fb:before{content:"FirmBooks: ";color:#fff6;font-weight:400}.firmbooks .compare-row span:nth-child(5):before{content:"You save: ";color:#ffffff59;display:inline-block}.firmbooks .compare-row span:nth-child(6):before{content:"Quarterly saved: ";color:#ffffff59;display:inline-block}}.firmbooks .trust-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:2.5rem;display:grid}.firmbooks .trust-card{background:var(--card);border:1px solid var(--fb-border);border-radius:12px;padding:1.75rem}.firmbooks .trust-icon{background:var(--yellow);border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:1rem;font-size:16px;display:flex}.firmbooks .trust-card h4{margin-bottom:.35rem;font-size:.95rem;font-weight:500}.firmbooks .trust-card p{color:var(--muted);font-size:.85rem;line-height:1.55}.firmbooks .who-strip{background:var(--black);border-radius:16px;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;margin-top:3rem;padding:2.5rem;display:grid}@media(max-width:640px){.firmbooks .who-strip{grid-template-columns:1fr}}.firmbooks .who-strip h3{color:var(--white);letter-spacing:-.5px;margin-bottom:.75rem;font-family:Playfair Display,serif;font-size:1.6rem;font-weight:900}.firmbooks .who-strip p{color:#ffffff80;font-size:.9rem;line-height:1.7}.firmbooks .who-stats{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.firmbooks .who-stat{background:#ffffff0a;border:1px solid #ffffff12;border-radius:10px;padding:1.25rem}.firmbooks .who-stat-num{color:var(--yellow);letter-spacing:-1px;font-family:Playfair Display,serif;font-size:1.75rem;font-weight:900;display:block}.firmbooks .who-stat-label{color:#fff6;margin-top:.15rem;font-size:.78rem}.firmbooks .faq-section{background:var(--card)}.firmbooks .faq-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2.5rem;display:grid}.firmbooks .faq-item{border-top:1.5px solid var(--fb-border);padding-top:1.25rem}.firmbooks .faq-q{margin-bottom:.5rem;font-size:.95rem;font-weight:500}.firmbooks .faq-a{color:var(--muted);font-size:.875rem;line-height:1.65}.firmbooks .cta-section{background:var(--black);text-align:center;padding:6rem 5vw}.firmbooks .cta-section h2{color:var(--white);margin-bottom:.75rem}.firmbooks .cta-section p{color:#ffffff73;max-width:420px;margin-bottom:2.25rem;margin-left:auto;margin-right:auto;font-size:.95rem;line-height:1.65}.firmbooks .cta-btn{background:var(--yellow);color:var(--black);cursor:pointer;border:none;border-radius:100px;padding:1rem 2.5rem;font-family:DM Sans,sans-serif;font-size:1rem;font-weight:500;text-decoration:none;transition:background .2s,transform .15s;display:inline-block}.firmbooks .cta-btn:hover{background:#e0ae20;transform:translateY(-1px)}.firmbooks .cta-note{color:#ffffff40;margin-top:1rem;font-size:.8rem}.firmbooks .cta-guarantees{flex-wrap:wrap;justify-content:center;gap:2rem;margin-top:2rem;display:flex}.firmbooks .cta-g{color:#ffffff59;align-items:center;gap:.35rem;font-size:.8rem;display:flex}.firmbooks .cta-g:before{content:"✓";color:var(--yellow);font-size:.7rem}.firmbooks footer{background:var(--black);color:#ffffffd9;border-top:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 5vw;display:flex}.firmbooks footer a{color:#ffffffd9}.firmbooks .footer-logo{color:#fffffff2;font-family:Playfair Display,serif;font-size:1.1rem;font-weight:900;text-decoration:none}.firmbooks .footer-logo span{color:#ffffffb3}.firmbooks footer p{color:#ffffffbf;font-size:.78rem}.firmbooks .page-wrap{max-width:720px;margin:0 auto;padding:4rem 5vw 6rem}.firmbooks .page-wrap.wide{max-width:1100px}.firmbooks .form-card{background:var(--card);border:1px solid var(--fb-border);border-radius:18px;padding:2.25rem}.firmbooks .form-row{flex-direction:column;gap:.4rem;margin-bottom:1.1rem;display:flex}.firmbooks .form-row label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:600}.firmbooks .form-row input,.firmbooks .form-row select,.firmbooks .form-row textarea{background:var(--white);border:1px solid var(--fb-border);width:100%;color:var(--black);border-radius:10px;padding:.8rem 1rem;font-family:DM Sans,sans-serif;font-size:.95rem}.firmbooks .form-row textarea{resize:vertical;min-height:110px}.firmbooks .form-grid{grid-template-columns:1fr 1fr;gap:1rem 1.25rem;display:grid}@media(max-width:640px){.firmbooks .form-grid{grid-template-columns:1fr}}.firmbooks .step-pills{gap:.5rem;margin-bottom:1.5rem;display:flex}.firmbooks .step-pills span{background:#00000014;border-radius:100px;flex:1;height:6px}.firmbooks .step-pills span.on{background:var(--black)}.firmbooks .form-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1rem;display:flex}.firmbooks .dropzone{text-align:center;cursor:pointer;background:#ffffff8c;border:2px dashed #0000002e;border-radius:14px;padding:2rem 1.5rem;transition:border-color .2s,background .2s}.firmbooks .dropzone.drag{border-color:var(--black);background:#ffffffd9}.firmbooks .dropzone p{color:var(--muted);font-size:.9rem}.firmbooks .file-list{flex-direction:column;gap:.4rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.firmbooks .file-list li{background:var(--white);border:1px solid var(--fb-border);border-radius:8px;justify-content:space-between;align-items:center;padding:.55rem .85rem;font-size:.85rem;display:flex}.firmbooks .file-list button{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:.85rem}.firmbooks .file-list button:hover{color:#c33}.firmbooks .err{color:#c33;margin-top:.25rem;font-size:.85rem}.firmbooks .auth-tabs{gap:.5rem;margin-bottom:1.5rem;display:flex}.firmbooks .auth-tabs button{border:1px solid var(--fb-border);cursor:pointer;color:var(--muted);background:0 0;border-radius:100px;flex:1;padding:.7rem;font-family:DM Sans,sans-serif;font-size:.9rem;font-weight:500}.firmbooks .auth-tabs button.on{background:var(--black);color:var(--yellow);border-color:var(--black)}.firmbooks table.app-table{border-collapse:collapse;background:var(--card);border:1px solid var(--fb-border);border-radius:12px;width:100%;overflow:hidden}.firmbooks table.app-table th,.firmbooks table.app-table td{text-align:left;border-bottom:1px solid var(--fb-border);padding:.85rem 1rem;font-size:.9rem}.firmbooks table.app-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#0000000a;font-size:.75rem}.firmbooks table.app-table tr:last-child td{border-bottom:none}.firmbooks table.app-table tr.row-link{cursor:pointer}.firmbooks table.app-table tr.row-link:hover td{background:#f5c84226}.firmbooks .pill{text-transform:uppercase;letter-spacing:.04em;border-radius:100px;padding:.15rem .6rem;font-size:.72rem;font-weight:600;display:inline-block}.firmbooks .pill-new{color:#92400e;background:#fde68a}.firmbooks .pill-in_progress{color:#1e40af;background:#bfdbfe}.firmbooks .pill-delivered{color:#166534;background:#bbf7d0}.firmbooks .pill-quoted{color:#6b21a8;background:#e9d5ff}.firmbooks .pill-accepted{color:#3730a3;background:#c7d2fe}.firmbooks .pill-review{color:#9a3412;background:#fed7aa}.firmbooks .pill-invoiced{color:#854d0e;background:#fef3c7}.firmbooks .pill-paid{color:#065f46;background:#a7f3d0}.firmbooks .pill-cancelled{color:#374151;background:#e5e7eb}.firmbooks .kpi-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.firmbooks .kpi{background:#fff;border:1px solid #00000014;border-radius:14px;padding:1.25rem}.firmbooks .kpi .label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.4rem;font-size:.75rem}.firmbooks .kpi .value{font-family:Playfair Display,serif;font-size:2rem;font-weight:700}.firmbooks .filter-bar{background:#fff;border:1px solid #0000000f;border-radius:12px;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;padding:1rem;display:flex}.firmbooks .filter-bar select,.firmbooks .filter-bar input{border:1px solid #0000001f;border-radius:8px;padding:.45rem .65rem;font-size:.85rem}.firmbooks .tab-bar{border-bottom:1px solid #00000014;gap:.5rem;margin-bottom:1.25rem;display:flex}.firmbooks .tab-bar button{cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.65rem 1rem;font-family:inherit;font-size:.9rem}.firmbooks .tab-bar button.on{color:var(--black);border-bottom-color:var(--black);font-weight:600}.firmbooks .stack{flex-direction:column;gap:1rem;display:flex}.firmbooks .row-actions{align-items:center;gap:.5rem;display:flex}.firmbooks .msg{border-radius:10px;max-width:80%;padding:.75rem 1rem}.firmbooks .msg-staff{color:#1e293b;background:#eef2ff;align-self:flex-start}.firmbooks .msg-firm{background:var(--black);color:#fff;align-self:flex-end}.firmbooks .msg-meta{opacity:.65;margin-top:.25rem;font-size:.7rem}.firmbooks .note-internal{background:#fffbeb;border-left:3px solid #f59e0b;border-radius:6px;padding:.5rem .75rem}.firmbooks .note-public{background:#ecfdf5;border-left:3px solid #10b981;border-radius:6px;padding:.5rem .75rem}.firmbooks .danger{color:#dc2626}.firmbooks .small-btn{cursor:pointer;background:#fff;border:1px solid #00000026;border-radius:6px;padding:.35rem .7rem;font-family:inherit;font-size:.8rem}.firmbooks .small-btn:hover{background:#f9fafb}.firmbooks .activity-item{color:var(--muted);border-bottom:1px solid #0000000d;padding:.5rem 0;font-size:.85rem}.firmbooks .activity-item strong{color:var(--black)}.firmbooks textarea{resize:vertical;border:1px solid #0000001f;border-radius:8px;width:100%;min-height:80px;padding:.65rem .8rem;font-family:inherit;font-size:.9rem}.firmbooks .success-card{text-align:center;padding:3rem 2rem}.firmbooks .success-card h2{margin-bottom:1rem}.firmbooks .success-card p{color:var(--muted);margin-bottom:1.5rem}
