.brand{display:flex;gap:12px;align-items:center}.solucoes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:14px}.solucao-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:18px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.solucao-icon{font-size:2.5rem;margin-bottom:8px}.solucao-card h3{font-weight:700;color:var(--white);font-size:1.05rem}.solucao-card p{color:var(--muted);line-height:1.5;font-size:.9rem;flex:1}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:14px}.plan-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:18px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px}.plan-name{font-weight:800;color:var(--white);font-size:1.1rem}.plan-price{font-size:1.15rem;margin:8px 0;color:var(--white);font-weight:700}.plan-desc{color:var(--muted);margin-bottom:12px;line-height:1.5;flex:1}.plan-cta{display:inline-block;margin-top:auto}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:14px}.blog-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.blog-card h3{margin:0;color:var(--white);font-size:1rem;font-weight:700}.blog-card p{margin:0;color:var(--muted);line-height:1.5;font-size:.9rem}.contact-wrap{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:18px;box-shadow:var(--shadow)}.contact-wrap h3{color:var(--white);margin:0 0 8px;font-weight:800}.contact-form{display:flex;flex-direction:column;gap:12px;margin-top:14px}.contact-form .row{display:flex;gap:12px;flex-wrap:wrap}.contact-form input,.contact-form textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--white);transition:border .2s ease;font-family:inherit;font-size:.95rem}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--blue)}.contact-form textarea{resize:vertical;min-height:120px}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.form-status{margin-top:8px;padding:8px 12px;border-radius:8px;font-weight:600;font-size:.9rem}.form-status.success{background:#22c55e1f;color:#4ade80}.form-status.error{background:#ef44441f;color:#ef4444}@media (max-width: 980px){.hero-right{max-width:46%}.footer-grid{grid-template-columns:1fr;gap:18px}}@media (max-width: 760px){.app-root{padding:12px;gap:22px}.header-top{flex-direction:column;align-items:flex-start;gap:12px}.hero{flex-direction:column-reverse;gap:18px}.hero-right{width:100%;max-width:100%}.hero-title{font-size:1.4rem}.features{flex-direction:column}.solucoes-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}.apps-section{padding-top:18px}.site-footer{padding:18px;border-radius:12px;background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;align-items:center}.brand-footer{display:flex;gap:10px;align-items:center}.brand-img-sm{border-radius:8px;border:1px solid var(--border)}.brand-footer-text{display:flex;flex-direction:column}.brand-footer-text small{display:block;color:var(--muted);font-size:.85rem}.contact a{display:block;margin:4px 0}.socials{margin-top:8px}.link{color:var(--muted);text-decoration:none;transition:color .2s ease}.link:hover{color:var(--blue)}.copyright{color:var(--muted);font-size:.9rem}.apps-hero{display:flex;gap:26px;align-items:stretch;justify-content:space-between;flex-wrap:wrap;background:radial-gradient(circle at top left,rgba(15,23,42,.8),transparent 55%),radial-gradient(circle at bottom right,rgba(15,23,42,.9),transparent 55%),#020617;border-radius:22px;border:1px solid rgba(30,64,175,.8);box-shadow:0 22px 50px #0f172afa;padding:22px 26px 20px}.apps-hero-left{flex:1.15;min-width:260px;display:flex;flex-direction:column;gap:10px}.apps-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;font-size:.82rem;font-weight:700;letter-spacing:.02em;color:#dbeafe;background:linear-gradient(90deg,#1d4ed8,#2563eb);box-shadow:0 8px 18px #2563eb73}.apps-hero-title{margin:6px 0 4px;font-size:1.6rem;font-weight:800;line-height:1.2;color:#e2e8f0}.apps-hero-sub{margin:0;color:var(--muted);line-height:1.6;font-size:.95rem}.apps-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.apps-hero-note{margin-top:12px;font-size:.86rem;color:var(--muted)}.apps-hero-right{flex:.95;min-width:260px;display:flex;align-items:center;justify-content:center}.apps-hero-visual{position:relative;width:100%;max-width:380px;aspect-ratio:4 / 3;border-radius:26px;background:radial-gradient(circle at top left,rgba(56,189,248,.35),transparent 55%),radial-gradient(circle at bottom right,rgba(37,99,235,.95),transparent 55%),#020617;box-shadow:0 26px 60px #0f172afa;overflow:hidden}.apps-hero-visual-main{position:absolute;top:16px;right:18px;bottom:58px;left:18px;border-radius:22px;border:1px solid rgba(148,163,184,.45);background:linear-gradient(135deg,#0f172abf,#0f172a33)}.apps-hero-visual-card{position:absolute;bottom:22px;height:44px;border-radius:16px;background:#0f172af5;border:1px solid rgba(15,23,42,.9);box-shadow:0 14px 30px #0f172af2}.apps-hero-visual-card-1{left:40px;width:128px}.apps-hero-visual-card-2{right:40px;width:108px}.apps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:22px}.app-card{background:radial-gradient(circle at top left,rgba(37,99,235,.18),transparent 60%),radial-gradient(circle at bottom right,rgba(15,23,42,.9),transparent 55%),#020617;border-radius:18px;border:1px solid rgba(30,64,175,.7);box-shadow:0 18px 40px #0f172ae6;padding:18px 18px 16px;display:flex;flex-direction:column;gap:10px}.app-card-highlight{box-shadow:0 0 38px #38bdf859}.app-card-header h2{margin:4px 0 6px;font-size:1.1rem;color:var(--white)}.app-card-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.75rem;font-weight:600;color:#bfdbfe;background:#1e40afb3}.app-card-description{margin:0 0 6px;font-size:.9rem;color:var(--muted)}.app-card-list{list-style:disc;padding-left:18px;margin:0;display:flex;flex-direction:column;gap:4px;font-size:.9rem;color:var(--muted)}.app-card-footer{margin-top:12px}.app-card-footer .btn.primary{font-size:.88rem}.apps-support{margin-top:26px;padding:16px 18px;border-radius:18px;border:1px dashed rgba(148,163,184,.6);background:#0f172ae6;font-size:.9rem}.apps-support h3{margin:0 0 4px;font-size:1rem;color:var(--white)}.apps-support p{margin:0 0 4px;color:var(--muted)}.apps-support-link{font-weight:600;color:var(--blue);text-decoration:none}.apps-support-link:hover{text-decoration:underline}.reveal{opacity:0;transform:translateY(8px);transition:opacity .6s ease,transform .6s ease}.reveal.inview{opacity:1;transform:none}@media (max-width: 980px){.footer-grid{grid-template-columns:1fr;gap:18px}}@media (max-width: 760px){.app-root{padding:12px;gap:22px}.header-top{flex-direction:column;align-items:flex-start;gap:12px}}.apps-page-root .site-header.reveal,.apps-page-root .site-footer.reveal{opacity:1!important;transform:none!important}@page{size:A4;margin:10mm}.nav-link-apps{background:linear-gradient(90deg,#2563eb,#3b82f6);color:#f9fafb;border:1px solid rgba(59,130,246,.9);box-shadow:0 8px 22px #2563eb8c;border-radius:999px;padding-inline:16px;font-weight:800}.nav-link-apps:hover,.nav-link-apps.active{background:linear-gradient(90deg,#1d4ed8,#2563eb);border-color:#3b82f6;box-shadow:0 10px 26px #2563ebb3}.language-selector{position:relative}.language-button{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#0f172ae6;color:var(--white);font-size:.8rem;cursor:pointer}.language-button img{width:18px;height:12px;border-radius:2px;object-fit:cover}.language-dropdown{position:absolute;right:0;margin-top:6px;padding:6px;border-radius:10px;background:#0f172afa;border:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px;z-index:50}.language-dropdown button{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:8px;border:none;background:transparent;color:var(--white);font-size:.8rem;cursor:pointer}.language-dropdown button img{width:16px;height:11px;border-radius:2px}.language-dropdown button.active{background:#2563eb2e}.theme-toggle{padding:6px 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.user-menu{display:inline-flex;align-items:center;gap:8px}.user-avatar{width:32px;height:32px;border-radius:999px;border:1px solid var(--border);background:var(--glass);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-initials{font-size:.8rem;font-weight:600}.user-display-name{font-size:.8rem;color:var(--muted);cursor:pointer}.user-dropdown{position:absolute;right:0;margin-top:8px;padding:8px;border-radius:12px;background:#0f172afa;border:1px solid var(--border);box-shadow:var(--shadow);min-width:220px;z-index:60}.user-info{margin-bottom:6px}.user-name{font-size:.9rem;font-weight:600}.user-email{font-size:.8rem;color:var(--muted)}.dropdown-divider{height:1px;background:#94a3b866;margin:6px 0}.dropdown-item{width:100%;display:flex;align-items:center;gap:8px;padding:6px 4px;border-radius:8px;border:none;background:transparent;color:var(--white);font-size:.85rem;cursor:pointer}.dropdown-item:hover{background:#2563eb2e}.dropdown-item-danger{color:#fecaca}.apps-hero-subtitle{margin:0 0 4px;font-size:1.15rem;color:var(--white);font-weight:700}.section{padding:18px 0 24px}.apps-section{padding-top:10px}.config-form-log{margin-top:10px;margin-bottom:6px;padding:10px 14px;border-radius:12px;background:#0f172af2;border:1px solid rgba(148,163,184,.7);font-size:.95rem;font-weight:500;display:flex;flex-wrap:wrap;gap:4px 6px}.config-form-log-label{font-weight:600;color:var(--white)}.config-form-log-value-qty{margin:0;color:var(--muted);font-size:.85rem}.config-group-expectativa{margin:2px 0 0;font-size:.86rem;color:var(--muted)}.config-group-expectativa span{color:var(--white)}.config-detail-inner-card .config-table th,.config-detail-inner-card .config-table td{padding:4px 12px}.config-detail-organized-card{padding-top:10px;padding-bottom:10px}.config-detail-organized-card .config-group-header{padding-top:4px;padding-bottom:4px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172abf;display:flex;align-items:center;justify-content:center;z-index:999}.modal-content{width:100%;max-width:460px;border-radius:18px;background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow);padding:18px 20px 16px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.modal-title{margin:0;font-size:1.2rem;font-weight:700;color:var(--white)}.modal-close{border:none;background:transparent;color:var(--muted);font-size:1.4rem;cursor:pointer}.modal-body{font-size:.9rem}.modal-description{margin:0 0 10px;color:var(--muted)}.btn-google{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:10px;border:1px solid #2563eb;background:#2563eb;color:#f9fafb;font-weight:600;cursor:pointer}.btn-google:disabled{opacity:.7;cursor:default}.google-icon{width:22px;height:22px}.login-separator{display:flex;align-items:center;justify-content:center;margin:12px 0}.language-button span{font-size:.85rem;color:var(--muted)}[data-theme=light] .language-button span{color:#0f172a}.login-separator span{font-size:.8rem;color:var(--muted)}.modal-footer-text{margin-top:10px;font-size:.78rem;color:var(--muted)}.loading-spinner-small{width:18px;height:18px;border-radius:999px;border:2px solid rgba(148,163,184,.4);border-top-color:var(--blue);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.apps-hero.configurador-hero{margin-bottom:18px}.config-upload-card-outer{margin-bottom:18px;padding:20px 22px 26px;border-radius:18px;border:1px solid rgba(56,189,248,.35);background:radial-gradient(circle at top left,rgba(56,189,248,.16),transparent 55%),radial-gradient(circle at bottom right,rgba(34,197,94,.16),transparent 55%),var(--card-bg);box-shadow:0 18px 40px #0f172ae6;display:flex;flex-direction:column;gap:18px;align-items:center}.config-upload-header h2,.config-table-title{margin:0 0 4px;font-size:1.05rem;font-weight:600;letter-spacing:.01em;color:var(--white)}.config-upload-header p{margin:0;font-size:.9rem;color:var(--muted)}.config-drop-zone{position:relative;width:260px;height:260px;border-radius:999px;background:radial-gradient(circle at 50% 30%,#020617 0,#020617 40%,#020617);display:flex;align-items:center;justify-content:center;padding:24px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.config-drop-zone:before{content:"";position:absolute;top:14%;right:14%;bottom:14%;left:14%;border-radius:999px;border:2px dashed rgba(45,212,191,.7)}.config-drop-zone.is-dragging{transform:translateY(-2px) scale(1.01);box-shadow:0 20px 40px #0f172ab3}.config-drop-circle{position:relative;z-index:1;width:100%;height:100%;border-radius:999px;display:flex;align-items:center;justify-content:center}.config-drop-circle-inner{text-align:center;max-width:260px}.config-drop-icon{width:72px;height:72px;margin:0 auto 14px;border-radius:999px;background-size:cover;background-position:center;background-repeat:no-repeat;box-shadow:0 10px 24px #0f172ae6}.config-drop-main{font-size:1rem;font-weight:600;color:#e5e7eb}.config-drop-sub{margin-top:4px;margin-bottom:10px;font-size:.85rem;color:#9ca3af}.config-drop-browse{text-decoration:underline}.config-drop-button{margin-top:4px}.config-upload-filename{margin-top:8px;font-size:.8rem;color:#9ca3af}.config-upload-status{margin-top:6px;font-size:.8rem;color:#22c55e}.config-upload-error{margin-top:6px;font-size:.8rem;color:#f97373}.configurador-table-card{margin-top:6px;padding:18px 20px 20px;border-radius:18px;border:1px solid rgba(56,189,248,.35);background:radial-gradient(circle at top left,rgba(56,189,248,.12),transparent 55%),radial-gradient(circle at bottom right,rgba(37,99,235,.14),transparent 55%),var(--card-bg);box-shadow:0 16px 34px #0f172ad9}[data-theme=light] .apps-hero.configurador-hero,[data-theme=light] .configurador-table-card{background:var(--card-bg);border-color:#94a3b8a6;box-shadow:var(--shadow)}[data-theme=light] .config-detail-card{background:var(--card-bg);border-color:#94a3b8a6}[data-theme=light] .config-detail-inner-card{background:#f8fafcfa;border-color:#94a3b873}.configurador-table-card .config-table-title{margin-bottom:10px}.config-table-row{cursor:pointer}.config-table-row:hover{background:#0f172ab3}.config-detail-card{border-radius:18px;border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow);padding:18px 20px 20px}.config-detail-inner-card{border-radius:14px;border:1px solid rgba(148,163,184,.45);background:#0f172af2;padding:10px 12px}.config-detail-inner-card .config-table thead th{font-size:.78rem}.config-detail-inner-scroll{max-height:480px;overflow:auto}.config-form-summary{margin-top:8px;padding:8px 10px;border-radius:10px;background:#0f172af2;border:1px solid rgba(148,163,184,.5);display:flex;flex-wrap:wrap;gap:6px 10px;font-size:.9rem}.config-form-summary span{color:var(--muted)}.config-form-summary strong{font-size:.95rem;color:var(--white)}.config-form-summary-qty{padding:2px 6px;border-radius:999px;background:#38bdf82e}.config-col-tomada{color:#fca5a5;font-weight:600}.config-col-interruptor{color:#facc15;font-weight:600}.configurador-table-card .config-table{width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}.configurador-table-card .config-table th,.configurador-table-card .config-table td{padding:6px 8px;border-bottom:1px solid rgba(148,163,184,.25)}.config-detail-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.config-detail-top-cards-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:16px}.config-detail-summary-card{margin:0;padding:8px 14px;display:flex;flex-direction:column}.config-detail-back-arrow{margin-right:6px;font-size:1rem}.config-detail-summary-card .apps-hero{padding-top:2px;padding-bottom:2px}.config-detail-summary-card .apps-hero-title{font-size:1.1rem;line-height:1.2}.config-detail-summary-card .apps-badge{font-size:.7rem;padding-inline:8px;padding-block:2px}.config-detail-summary-card .apps-hero-left{gap:2px}.config-detail-summary-actions{margin-top:auto;padding-top:4px;display:flex;justify-content:flex-start}.configurador-table-card .config-table thead th{font-weight:600}.configurador-table-card .config-table tbody tr:nth-child(2n){background:#0f172a99}.configurador-table-card .config-table th:nth-child(2),.configurador-table-card .config-table td:nth-child(2){width:140px}.config-id-cell{display:flex;align-items:center;gap:6px;white-space:nowrap}.config-id-text{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;display:inline-block;max-width:90px;overflow:hidden;text-overflow:ellipsis}.config-id-copy-btn{width:22px;height:22px;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.config-id-copy-btn:hover{background:var(--glass)}.config-table-delete-btn{width:24px;height:24px;border-radius:999px;border:1px solid transparent;background:transparent;font-size:1rem;color:#fecaca;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.config-table-delete-btn:hover{border-color:#f87171b3;background:#f871711f;color:#fee2e2}.admin-price-card-body{margin-top:8px}.admin-price-tables{display:flex;flex-direction:column;gap:16px}.admin-price-table-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.admin-price-table{border-collapse:collapse;width:100%}.admin-price-table th,.admin-price-table td{padding:4px 8px}.admin-price-table thead tr{background:#0f172ae6}.admin-price-table tbody tr:nth-child(odd){background-color:#0f172ae6}.admin-price-table tbody tr:nth-child(2n){background-color:#0f172ac7}.admin-price-input{width:100%;padding:6px 8px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--white);font-size:.86rem}.admin-price-input-number{text-align:right}.admin-price-col-number{text-align:right;width:140px}.admin-price-col-small{text-align:center;width:70px}.admin-price-col-date{text-align:center;width:120px;white-space:nowrap}.admin-price-col-actions{text-align:right;width:160px}.admin-price-add-btn{font-size:.8rem}.admin-price-save-btn{font-size:.78rem;margin-right:4px}.admin-price-delete-btn{margin-left:2px}.admin-price-error{color:#fecaca}.budget-print-root{display:none}.budget-print-page{max-width:210mm;margin:0 auto;padding:10mm 16mm 14mm;border-radius:18px;background:radial-gradient(circle at top left,#2563eb52,#0f172a),radial-gradient(circle at bottom right,#082f49d9,#0f172a);color:#e5e7eb;box-shadow:0 24px 50px #0f172ae6}.budget-print-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.budget-print-brand{display:flex;align-items:center;gap:10px}.budget-print-logo{width:42px;height:42px;border-radius:12px;object-fit:cover;border:1px solid rgba(148,163,184,.7);box-shadow:0 10px 26px #0f172ae6}.budget-print-brand-text h1{margin:0;font-size:1rem;font-weight:800;color:#f9fafb}.budget-print-brand-text p{margin:2px 0 0;font-size:.8rem;color:#94a3b8}.budget-print-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:.8rem}.budget-print-meta-label{text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#60a5fa}.budget-print-meta-value{font-weight:700;color:#e5e7eb}.budget-print-meta-date{color:#9ca3af}.budget-print-hero{margin-top:10px;margin-bottom:18px;padding:16px 18px;border-radius:18px;background:radial-gradient(circle at top left,#2563eb59,#0f172af2);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px}.budget-print-hero-left h2{margin:6px 0;font-size:1.4rem;line-height:1.15;color:#f9fafb}.budget-print-hero-left p{margin:0;font-size:.9rem;color:#cbd5f5}.budget-print-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#2563ebf2;color:#f9fafb;font-size:.75rem;font-weight:600}.budget-print-hero-right{border-radius:18px;background:radial-gradient(circle at 20% 0%,rgba(191,219,254,.06),transparent 55%),radial-gradient(circle at 80% 100%,#3b82f6d9,#0f172af2)}.budget-print-section{margin-top:12px}.budget-print-two-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.budget-print-card{border-radius:14px;border:1px solid rgba(148,163,184,.35);background:#0f172ae6;padding:10px 12px}.budget-print-card h3{margin:0 0 6px;font-size:.95rem;color:#e5e7eb}.budget-print-card dl{margin:0;display:flex;flex-direction:column;gap:4px;font-size:.82rem}.budget-print-card dt{font-weight:600;color:#94a3b8}.budget-print-card dd{margin:0;color:#e5e7eb}.budget-print-section-title{margin:0 0 6px;font-size:.95rem;color:#e5e7eb}.budget-print-table-block h4{margin:8px 0 4px;font-size:.88rem;color:#cbd5f5}.budget-print-table{width:100%;border-collapse:collapse;font-size:.8rem}.budget-print-table th,.budget-print-table td{padding:4px 6px}.budget-print-table th{text-align:left;color:#a5b4fc;border-bottom:1px solid rgba(148,163,184,.6)}.budget-print-table tbody tr:nth-child(2n){background:#0f172ae6}.budget-print-summary{margin-top:10px;border-radius:14px;border:1px solid rgba(56,189,248,.45);background:radial-gradient(circle at top left,#38bdf824,#0f172afa);padding:10px 12px}.budget-print-summary h3{margin:0 0 6px;font-size:.95rem}.budget-print-summary ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.82rem}.budget-print-summary li{display:flex;justify-content:space-between;gap:10px}.budget-print-summary span{color:#cbd5f5}.budget-print-summary strong{color:#e5e7eb}.budget-print-total-final strong{font-size:.95rem;font-weight:800}.budget-print-note{margin:8px 0 0;font-size:.76rem;color:#9ca3af}.budget-print-footer{margin-top:14px;padding-top:8px;border-top:1px solid rgba(148,163,184,.4);font-size:.76rem;color:#9ca3af}@media print{html,body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#020617;margin:0;padding:0}body *{visibility:hidden}.section,.apps-section,.container,.app-root{margin:0!important;padding:0!important}.budget-print-root,.budget-print-root *{visibility:visible}.budget-print-root{display:block;position:static;margin:0 auto;padding:0}.budget-print-page{box-shadow:none;margin:0}}.site-footer{margin-top:4px;padding:22px 0 10px}.footer-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,.9fr);gap:18px;padding:18px 20px;border-radius:var(--radius);border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow);font-size:.9rem}@media (max-width: 900px){.footer-grid{grid-template-columns:1fr}}.brand-footer{display:flex;align-items:center;gap:10px}.brand-img-sm{width:40px;height:40px;border-radius:12px;object-fit:cover;border:1px solid var(--border)}.brand-footer-text strong{display:block}.brand-footer-text .muted{font-size:.78rem}.contact strong{font-size:.9rem;font-weight:600}.contact .link{font-size:.9rem;color:var(--white);text-decoration:none}.socials .link{font-size:.85rem;color:var(--white);text-decoration:none}.copyright{font-size:.8rem;display:flex;flex-direction:column;gap:4px}.footer-grid .link:hover{text-decoration:underline}[data-theme=light]{--bg: #f3f4f6;--card: #ffffff;--card-bg: linear-gradient(180deg, rgba(255, 255, 255, .95), #fafafa);--border: #e5e7eb;--blue: #2563eb;--white: #111827;--muted: #6b7280;--glass: rgba(0, 0, 0, .03);--radius: 14px;--maxw: 1100px;--shadow: 0 4px 12px rgba(0, 0, 0, .08)}[data-theme=dark]{--bg: #0f172a;--card: #1e293b;--card-bg: linear-gradient(180deg, rgba(30, 41, 59, .95), #1a2332);--border: #334155;--blue: #3b82f6;--white: #f1f5f9;--muted: #94a3b8;--glass: rgba(255, 255, 255, .03);--radius: 14px;--maxw: 1100px;--shadow: 0 12px 36px rgba(0, 0, 0, .6)}body{margin:0;padding:0;font-family:Inter,Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease;overflow-x:hidden}.app-root{width:100%;max-width:var(--maxw);padding:22px;margin:0 auto;display:flex;flex-direction:column;gap:28px;min-height:100vh}.site-header{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);position:relative;z-index:100}.header-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit}.brand-img{height:56px;width:56px;border-radius:12px;object-fit:cover;box-shadow:0 8px 24px #00000026;border:1px solid var(--border)}.brand-text{display:flex;flex-direction:column}.brand-title{font-weight:800;font-size:1.05rem;color:var(--white);line-height:1.2}.brand-sub{font-size:.82rem;color:var(--muted);margin-top:2px}.nav-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.header-nav{display:flex;gap:8px;align-items:center;transition:all .28s ease}.header-nav a,.nav-link{color:var(--muted);text-decoration:none;padding:8px 10px;border-radius:10px;font-weight:600;font-size:.9rem;transition:all .2s ease;white-space:nowrap}.header-nav a:hover,.header-nav a.active,.nav-link:hover,.nav-link.active{color:var(--white);background:var(--glass)}.header-buttons{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:10px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap}.btn.primary{background:var(--blue);color:#fff;border:1px solid var(--blue)}.btn.primary:hover{background:#1d4ed8;border-color:#1d4ed8}.btn.ghost{background:transparent;color:var(--white);border:1px solid var(--border)}.btn.ghost:hover{background:var(--glass);border-color:var(--blue)}.btn.dashboard-btn{background:linear-gradient(90deg,#2563eb,#3b82f6);color:#fff;border:1px solid #2563eb;box-shadow:0 4px 12px #2563eb4d;font-weight:700;padding:8px 16px}.btn.dashboard-btn:hover{background:linear-gradient(90deg,#1d4ed8,#2563eb);border-color:#1d4ed8;box-shadow:0 6px 16px #2563eb66}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:28px;height:24px;background:transparent;border:none;cursor:pointer;padding:0;z-index:20}.hamburger span{display:block;width:100%;height:2px;background:var(--white);border-radius:2px;transition:all .3s ease}.hamburger.is-open span:nth-child(1){transform:translateY(11px) rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-11px) rotate(-45deg)}.hero{display:flex;gap:28px;align-items:stretch;justify-content:space-between;flex-wrap:wrap;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.hero-left{flex:1;min-width:260px;display:flex;flex-direction:column;gap:14px}.hero-title{margin:0;font-size:1.7rem;line-height:1.15;color:var(--white);font-weight:800}.hero-sub{margin:0;color:var(--muted);max-width:720px;line-height:1.6}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}.logos-compact{display:flex;gap:12px;align-items:center;margin-top:12px}.small-logo{width:48px;height:36px}.hero-right{width:100%;max-width:44%;min-width:220px;display:flex;align-items:center;justify-content:center}.hero-illustration{width:100%;height:auto;max-width:360px;filter:drop-shadow(0 12px 24px rgba(0,0,0,.15))}.section{padding:26px 0}.section-header{text-align:left;margin-bottom:18px}.section-title{margin:0 0 8px;font-size:1.25rem;color:var(--white);font-weight:800}.section-lead{color:var(--muted);margin:0 0 18px;max-width:760px;line-height:1.6}.container{max-width:var(--maxw);margin:0 auto;width:100%}.features{display:flex;gap:18px;flex-wrap:wrap}.feature{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:14px;min-width:200px;flex:1;max-width:340px;display:flex;gap:12px;align-items:flex-start;box-shadow:var(--shadow)}.feature-icon{width:56px;height:56px;border-radius:12px;display:grid;place-items:center;background:var(--glass);flex-shrink:0}.config-group-toggle{align-self:flex-start;margin-top:4px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:.78rem;cursor:pointer}.config-group-toggle:hover{border-color:var(--blue);color:var(--white)}.config-group-body{padding:0 14px 12px}.budget-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}.budget-form{display:flex;flex-direction:column;gap:12px}.budget-field,.budget-field-group{display:flex;flex-direction:column;gap:6px}.budget-field-group{flex-direction:row}.budget-field label{font-size:.85rem;color:var(--muted)}.budget-field input,.budget-field textarea{width:100%;padding:10px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--white);font-size:.9rem}.budget-field textarea{resize:vertical;min-height:80px}.budget-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.budget-summary{border-radius:12px;border:1px dashed var(--border);padding:14px;background:#0f172acc}.budget-summary h3{margin:0 0 8px;font-size:1rem}.budget-summary ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.budget-summary li{display:flex;justify-content:space-between;gap:10px;font-size:.9rem}.budget-summary span{color:var(--muted)}.budget-summary strong{font-weight:700}.budget-items-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:6px}.budget-items-grid>div{margin:0}.budget-items-list{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:4px;font-size:.85rem}.budget-items-list li{display:flex;justify-content:space-between;gap:8px}.budget-items-table{width:calc(100% - 20px);margin:0 auto;border-collapse:collapse;font-size:.85rem}.budget-items-table th,.budget-items-table td{padding:4px 6px;text-align:left;border-bottom:1px solid rgba(148,163,184,.3)}.budget-items-table th:nth-child(1),.budget-items-table td:nth-child(1){width:100%;max-width:420px;white-space:normal;word-break:break-word}.budget-items-table th:nth-child(2),.budget-items-table td:nth-child(2){width:80px}.budget-items-table th:nth-child(3),.budget-items-table td:nth-child(3){width:110px}.budget-items-table th:nth-child(4),.budget-items-table td:nth-child(4){width:110px}.budget-items-table thead th{color:var(--muted);font-weight:600}.budget-item-input{width:80px;padding:4px 6px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--white);font-size:.8rem}.budget-item-input:focus{outline:none;border-color:var(--blue)}.budget-add-items{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.budget-add-row{display:flex;gap:6px;align-items:center;margin-top:4px;width:100%}.budget-add-row select{flex:1 1 auto;min-width:0;padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--white);font-size:.8rem}.budget-add-row input[type=number]{width:60px;padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--white);font-size:.8rem}.btn.small{padding:6px 10px;font-size:.8rem}.budget-add-btn{padding:0;width:26px;height:26px;border-radius:999px;border:1px solid rgba(34,197,94,.7);background:#16a34a26;color:#6ee7b7;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.budget-add-btn:hover{background:#16a34a4d;border-color:#22c55e;color:#bbf7d0}.budget-sync-row{display:flex;justify-content:flex-end;margin-top:10px}.budget-sync-btn{padding:0;width:28px;height:28px;border-radius:999px;border:1px solid rgba(34,197,94,.7);background:#16a34a1f;color:#6ee7b7;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.budget-sync-btn:hover{background:#16a34a4d;border-color:#22c55e;color:#bbf7d0}.planner-stack{display:flex;flex-direction:column;gap:14px;margin-top:16px}.planner-row{display:flex;width:100%}.planner-row>.configurador-table-card{flex:1 1 auto;width:100%}.planner-row-top .config-table-card{padding:14px 18px}.planner-details-card{display:flex;flex-direction:column}.planner-card-header{display:flex;flex-direction:column;gap:10px}.planner-details-header-row{display:flex;align-items:center;gap:8px}.planner-details-toggle-btn{margin-left:auto}.planner-save-message{margin-bottom:8px;padding:4px 10px;border-radius:999px;font-size:.78rem;color:#bbf7d0;background:#16a34a2e;border:1px solid rgba(34,197,94,.6);display:inline-flex;align-items:center;gap:6px}.planner-filters-row{display:flex;gap:10px;flex-wrap:wrap}.planner-filter-input,.planner-filter-select{min-width:0}.planner-filter-input{flex:1 1 220px}.planner-filter-select{flex:0 0 140px}.planner-editor-card{min-height:420px}.planner-toolbox-card{margin-top:8px;margin-bottom:12px;border-radius:12px;padding:10px 12px;background:radial-gradient(circle at top left,rgba(56,189,248,.09),transparent 55%),radial-gradient(circle at bottom right,rgba(129,140,248,.12),transparent 55%),#0f172ad9;border:1px solid rgba(30,64,175,.45);box-shadow:0 10px 25px #0f172abf;display:flex;flex-direction:column;gap:10px}.planner-toolbox{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:0}.planner-toolbox-label{font-size:.85rem;color:#cbd5f5}.planner-toolbox-btn{font-size:.82rem;padding-inline:10px}.planner-toolbox-btn-parede:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.6)}.planner-wifi-model-select{min-width:130px;font-size:.8rem}.planner-wifi-group{display:inline-flex;align-items:center;gap:6px;position:relative}.planner-wifi-selector{position:relative}.planner-wifi-button{padding-block:4px;padding-inline:12px;font-size:.8rem}.planner-wifi-button:disabled{opacity:.6;cursor:default}.planner-wifi-dropdown{position:absolute;top:100%;left:0;margin-top:4px;padding:6px;border-radius:10px;background:#0f172afa;border:1px solid rgba(148,163,184,.9);box-shadow:0 8px 18px #0f172abf;display:flex;flex-direction:column;gap:4px;z-index:30}.planner-wifi-dropdown button{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:8px;border:none;background:transparent;color:#e5e7eb;font-size:.8rem;cursor:pointer}.planner-wifi-dropdown button.active{background:#2563eb2e}.planner-editor-options-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:18px;margin-bottom:0}.planner-editor-options-right{margin-left:auto;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.planner-editor-option-group{display:inline-flex;align-items:center;gap:8px}.planner-editor-option-group-inline{flex-wrap:nowrap}.planner-editor-checkbox-label{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:#e5e7eb}.planner-editor-checkbox{width:14px;height:14px}.planner-neutral-toggle-group{display:inline-flex;gap:6px}.planner-neutral-toggle-btn{font-size:.8rem;padding-inline:12px}.planner-neutral-toggle-btn-active{border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf899}.planner-editor-canvas-placeholder{position:relative;border-radius:16px;border:1px dashed rgba(148,163,184,.5);background:radial-gradient(circle at top left,rgba(56,189,248,.06),transparent 55%),radial-gradient(circle at bottom right,rgba(74,222,128,.06),transparent 55%),#0f172a4d;padding:18px 0;min-height:420px}.planner-editor-canvas-inner{position:relative;width:100%;height:420px;border-radius:12px;overflow:visible}.planner-house{position:absolute;top:6%;bottom:8%;left:2%;right:0;border-radius:12px;background:#0f172ad1;border:2px solid rgba(148,163,184,.6);z-index:1}[data-theme=light] .planner-house{background:#f8fafcf5;border:1px solid rgba(148,163,184,.7)}.planner-post{position:absolute;left:-2%;top:4%;width:46px;height:100%;display:flex;align-items:stretch;justify-content:center;z-index:6}.planner-post-svg{width:100%;height:100%;display:block}.planner-post-label{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af}.planner-entry-point{position:absolute;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:999px;border:2px solid #38bdf8;background:#020617;box-shadow:0 0 4px #38bdf8cc;cursor:grab;z-index:5}.planner-conduit-control-point{position:absolute;transform:translate(-50%,-50%);width:16px;height:16px;border-radius:999px;border:2px solid #f97373;background:#020617;box-shadow:0 0 4px #f87171cc;cursor:grab;z-index:5}.planner-entry-point:active{cursor:grabbing}.planner-conduit-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:3}.planner-conduit-svg-under{z-index:0;opacity:.35}.planner-add-room-btn{position:absolute;right:3%;top:-4px;font-size:.78rem;padding:4px 10px;border-radius:999px;border:1px solid rgba(148,163,184,.8);background:#0f172ad9;color:#e5e7eb;cursor:pointer}.planner-add-room-btn:hover{background:#1e40afe6}.planner-add-wall-main-btn{right:22%;opacity:.5;cursor:not-allowed}.planner-conduit-glow{fill:none;stroke:#38bdf82e;stroke-width:4;stroke-linejoin:round;stroke-linecap:round}[data-theme=light] .planner-conduit-glow{stroke:#94a3b899}.planner-conduit-main{fill:none;stroke:#38bdf8;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 9px rgba(56,189,248,.9))}.planner-conduit-main-disabled{stroke:#d1d5db;filter:drop-shadow(0 0 10px rgba(209,213,219,.8))}.planner-conduit-phase{fill:none;stroke:#f97373;stroke-width:.4;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 2px rgba(248,113,113,.65))}.planner-conduit-earth{fill:none;stroke:#22c55e;stroke-width:.4;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 2px rgba(34,197,94,.65))}[data-theme=light] .planner-conduit-main{stroke:#0ea5e9;stroke-width:2.2;filter:drop-shadow(0 0 10px rgba(15,118,110,.55))}[data-theme=light] .planner-conduit-phase{stroke:#ef4444;filter:drop-shadow(0 0 3px rgba(239,68,68,.7))}[data-theme=light] .planner-conduit-earth{stroke:#16a34a;filter:drop-shadow(0 0 3px rgba(22,163,74,.7))}.planner-room{position:absolute;border-radius:10px;border:1px solid rgba(148,163,184,.85);background:radial-gradient(circle at top left,rgba(56,189,248,.12),transparent 60%),#0f172aeb;box-shadow:0 0 0 1px #0f172acc,0 8px 18px #0f172ad9;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 8px;cursor:move;-webkit-user-select:none;user-select:none;z-index:2}.planner-room-resize-handle-right,.planner-room-resize-handle-bottom{position:absolute;background:transparent}.planner-room-resize-handle-right{top:10%;bottom:10%;right:-4px;width:8px;cursor:ew-resize}.planner-room-resize-handle-bottom{left:10%;right:10%;bottom:-4px;height:8px;cursor:ns-resize}.planner-room-selected{border-color:#818cf8;box-shadow:0 0 0 1px #818cf8cc,0 0 0 4px #4f46e559}.planner-room-label{font-size:.8rem;color:#e5e7eb;-webkit-user-select:none;user-select:none;width:100%;text-align:center}.planner-room-coverage-row{margin-top:auto;display:flex;gap:2px;flex-wrap:nowrap;justify-content:flex-end;width:100%;padding-right:2px}.planner-room-coverage-badge{border-radius:999px;padding:2px;font-size:0;line-height:1;border:1px solid rgba(148,163,184,.6);background:#0f172ae6;color:#e5e7eb}.planner-room-coverage-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px}.planner-coverage-svg{width:16px;height:16px}.planner-room-coverage-forte{border-color:#22c55ecc;background:#16a34a29}.planner-room-coverage-fraca{border-color:#eab308e6;background:#eab30829}.planner-room-coverage-sem{border-color:#94a3b899;background:#0f172ad9;color:#9ca3af}.planner-add-wall-btn{margin-left:auto;margin-top:-2px;font-size:.6rem;padding:1px 6px;border-radius:999px;border:1px dashed rgba(148,163,184,.7);background:#0f172acc;color:#cbd5f5;cursor:pointer}.planner-add-wall-btn:hover{border-style:solid;border-color:#818cf8e6}.planner-room-wall{position:absolute;height:10px;background:transparent;transform:translateY(-50%);cursor:ns-resize;z-index:4}.planner-room-wall:before{content:"";position:absolute;top:3px;right:0;bottom:3px;left:0;background:#94a3b8e6;border-radius:999px}.planner-room-wall-handle{position:absolute;top:50%;width:12px;height:12px;border-radius:999px;border:1px solid rgba(15,23,42,.95);background:#e5e7eb;transform:translateY(-50%);cursor:ew-resize;z-index:5}.planner-room-wall-handle-start{left:-4px}.planner-room-wall-handle-end{right:-4px}.planner-room-wall-delete{position:absolute;top:-14px;right:0;border:none;background:transparent;color:#fca5a5;font-size:.7rem;cursor:pointer}.planner-metric-input{width:72px;font-size:.78rem;padding:3px 6px;border-radius:999px;border:1px solid rgba(148,163,184,.9);background:#0f172af2;color:#e5e7eb}.planner-plan-name-input{width:220px}.planner-device-dot{position:absolute;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:999px;border:1px solid rgba(129,140,248,.9);background:#0f172af2;display:flex;align-items:center;justify-content:center;cursor:grab}.planner-device-dot:active{cursor:grabbing}.planner-device-dot-icon{font-size:.7rem}.planner-device-dot-signal{box-shadow:0 0 0 1px #38bdf866}.planner-device-signal{position:absolute;top:-14px;right:-14px;bottom:-14px;left:-14px;border-radius:999px;opacity:.6;pointer-events:none}.planner-device-signal-wifi{top:-60px;right:-60px;bottom:-60px;left:-60px;background:radial-gradient(circle,rgba(56,189,248,.6) 0,transparent 70%)}.planner-device-signal-wifi-5less{top:-50px;right:-50px;bottom:-50px;left:-50px;background:radial-gradient(circle,rgba(56,189,248,.55) 0,transparent 68%)}.planner-device-signal-wifi-6{top:-60px;right:-60px;bottom:-60px;left:-60px;background:radial-gradient(circle,rgba(56,189,248,.6) 0,transparent 70%)}.planner-device-signal-wifi-7{top:-75px;right:-75px;bottom:-75px;left:-75px;background:radial-gradient(circle,rgba(56,189,248,.65) 0,transparent 72%)}.planner-device-signal-zigbee-standard{top:-50px;right:-50px;bottom:-50px;left:-50px;background:radial-gradient(circle,rgba(251,191,36,.7) 0,transparent 66%)}.planner-device-signal-zigbee-pro{top:-52px;right:-52px;bottom:-52px;left:-52px;background:radial-gradient(circle,rgba(251,191,36,.75) 0,transparent 68%)}.planner-device-signal-zigbee-long{top:-64px;right:-64px;bottom:-64px;left:-64px;background:radial-gradient(circle,rgba(251,191,36,.8) 0,transparent 70%)}.planner-device-signal-zigbee-router{top:-40px;right:-40px;bottom:-40px;left:-40px;background:radial-gradient(circle,rgba(251,191,36,.65) 0,transparent 68%)}.planner-device-signal-zigbee-end{top:-30px;right:-30px;bottom:-30px;left:-30px;background:radial-gradient(circle,rgba(251,191,36,.5) 0,transparent 65%)}@keyframes planner-zigbee-mesh-flow{0%{stroke-width:.4;opacity:.25}50%{stroke-width:1.2;opacity:.9}to{stroke-width:.4;opacity:.25}}.planner-zigbee-mesh-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:4}.planner-zigbee-mesh-link{stroke:#fbbf24b3;stroke-width:.4;filter:drop-shadow(0 0 8px rgba(251,191,36,.8));animation:planner-zigbee-mesh-flow 1.8s ease-in-out infinite}.planner-editor-overlay-hint{position:absolute;left:8px;bottom:8px;right:8px;font-size:.75rem;color:#9ca3af;pointer-events:none}.planner-editor-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.08) 1px,transparent 1px);background-size:18px 18px;border-radius:16px;pointer-events:none}.planner-editor-hint{position:relative;margin:0;font-size:.9rem;color:#e5e7eb}.planner-validations-list{margin:8px 0 0;padding-left:18px;font-size:.9rem}.planner-validations-list li+li{margin-top:4px}.planner-projects-table{border-collapse:separate;border-spacing:0;width:100%}.planner-projects-table thead tr{background:#0f172ae6}.planner-projects-table th,.planner-projects-table td{border-bottom:1px solid rgba(30,64,175,.6)}.planner-projects-table tbody tr:nth-child(odd){background-color:#0f172ae6}.planner-projects-table tbody tr:nth-child(2n){background-color:#0f172abf}.planner-projects-table tbody tr:hover{background-color:#2563eb38}.planner-project-row{cursor:pointer}.planner-projects-actions-cell{text-align:center}.planner-room-devices{margin-top:12px}.planner-room-devices-title{margin:0 0 6px;font-size:.9rem;color:#e5e7eb}.planner-room-devices-table-wrapper{width:100%;overflow-x:auto}.planner-room-devices-table{width:100%;border-collapse:collapse;font-size:.86rem}.planner-room-devices-table thead tr{background:#0f172ae6}.planner-room-devices-table th,.planner-room-devices-table td{padding:4px 6px;border-bottom:1px solid rgba(30,64,175,.6)}.planner-room-devices-table th{color:#e5e7eb;font-weight:600}.planner-room-devices-table tbody tr:nth-child(odd){background-color:#0f172ae6}.planner-room-devices-table tbody tr:nth-child(2n){background-color:#0f172abf}.planner-room-devices-col-icon{width:40px;text-align:center}.planner-room-devices-col-type{width:90px}.planner-room-devices-col-zigbee{width:240px}.planner-room-devices-col-actions{width:60px;text-align:center}.planner-room-device-row{vertical-align:middle}.planner-room-device-icon-cell{text-align:center}.planner-room-device-main-cell{font-weight:500;color:#e5e7eb}.planner-room-device-type-cell{font-size:.8rem;color:#9ca3af}.planner-room-device-zigbee-cell{font-size:.78rem}.planner-room-device-zigbee-controls{display:inline-flex;align-items:center;gap:6px;margin-left:8px;font-size:.78rem}.planner-room-device-icon{width:18px}.planner-room-device-actions-cell{text-align:center}.planner-room-device-remove{border:none;background:transparent;color:#fca5a5;cursor:pointer;font-size:1rem}.planner-room-devices-empty{margin:0;font-size:.85rem;color:#9ca3af}.planner-validations-summary{margin-top:14px}.planner-validations-summary-title{margin:0 0 6px;font-size:.9rem}.planner-validations-summary-list{margin:0;padding-left:18px;font-size:.86rem}.planner-validation-important{color:#fecaca}.planner-room-metrics-edit-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.planner-room-metrics-edit-row label{display:inline-flex;flex-direction:column;gap:2px;font-size:.8rem}.planner-room-metrics-total{font-size:.8rem;color:#e5e7eb}.planner-room-footer-row{position:relative;margin-top:10px;z-index:4}.btn.ghost.planner-toolbox-btn.planner-delete-room-btn{position:relative;z-index:5;background:#7f1d1d66;border-color:#f87171d9;color:#fecaca}.btn.ghost.planner-toolbox-btn.planner-delete-room-btn:hover{background:#7f1d1da6;border-color:#fca5a5;color:#fee2e2}@keyframes planner-details-toggle-glow{0%,70%{box-shadow:0 0 #3b82f600;border-color:#3b82f6b3}80%{box-shadow:0 0 12px #3b82f6e6;border-color:#60a5fa}to{box-shadow:0 0 #3b82f600;border-color:#3b82f6b3}}.planner-details-toggle-btn{animation:planner-details-toggle-glow 4s ease-in-out infinite}@media (max-width: 960px){.planner-layout-grid{grid-template-columns:1fr}.planner-column-center,.planner-column-right{order:2}.planner-column-left{order:1}}.manual-section{padding-top:18px}.manual-hero{margin-bottom:20px}.manual-hero-left{max-width:640px}.manual-layout{margin-top:10px}.manual-sidebar{background:radial-gradient(circle at top left,rgba(37,99,235,.18),transparent 60%),radial-gradient(circle at bottom right,rgba(15,23,42,.9),transparent 55%),#020617;border-radius:18px;border:1px solid rgba(30,64,175,.7);box-shadow:0 18px 40px #0f172ae6;padding:14px 14px 12px;display:flex;flex-direction:column;gap:10px}.manual-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.manual-sidebar-header h2{margin:0;font-size:1rem}.manual-new-btn{font-size:.82rem;padding-inline:10px}.manual-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.manual-list-item{border-radius:10px;overflow:hidden}.manual-list-item-active{box-shadow:0 0 0 1px #38bdf899}.manual-list-button{width:100%;text-align:left;border:none;background:transparent;padding:7px 9px;display:flex;flex-direction:column;gap:2px;cursor:pointer}.manual-list-name{font-size:.9rem}.manual-list-client{font-size:.78rem;color:var(--muted)}.manual-list-empty{font-size:.86rem;color:var(--muted)}.manual-editor{background:#0f172af5;border-radius:18px;border:1px solid rgba(30,64,175,.8);box-shadow:0 22px 50px #0f172afa;padding:16px 16px 18px;display:flex;flex-direction:column;gap:14px}.manual-editor-header-main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}.manual-editor-header-actions{display:flex;flex-wrap:wrap;gap:8px}.manual-editor-header-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.manual-field-group label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;color:var(--muted)}.manual-input{font-size:.9rem;padding:6px 10px;border-radius:999px;border:1px solid rgba(148,163,184,.9);background:#0f172af2;color:#e5e7eb}.manual-notes-textarea{min-height:160px;max-height:260px;font-size:.92rem;padding:10px 12px;border-radius:18px;border:1px solid rgba(148,163,184,.9);background:#0f172af2;color:#e5e7eb;width:100%}.manual-section-grid{display:flex;flex-direction:column;gap:12px;margin-top:6px}.manual-block{background:radial-gradient(circle at top left,rgba(37,99,235,.22),transparent 60%),radial-gradient(circle at bottom right,rgba(15,23,42,.96),transparent 55%),#020617;border-radius:16px;border:1px solid rgba(30,64,175,.7);padding:10px 12px}.manual-block h3{margin:0 0 6px;font-size:.95rem}.manual-commands-header,.manual-env-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.manual-add-command-btn{font-size:.82rem;padding-inline:8px}.manual-env-row{margin-top:8px;display:flex;flex-direction:column;gap:6px}.manual-env-room{display:flex;align-items:center;gap:8px}.manual-env-room label span{font-size:.8rem;color:var(--muted);margin-bottom:2px}.manual-env-remove-btn{font-size:.78rem;padding-inline:10px}.manual-planner-block{display:flex;flex-direction:column;gap:10px}.manual-planner-list{display:flex;flex-wrap:wrap;gap:10px}.manual-planner-item{display:flex;gap:8px;align-items:center;padding:6px 8px;border-radius:12px;background:#0f172ae6;border:1px solid rgba(30,64,175,.6)}.manual-planner-thumb img{display:block;width:140px;height:96px;object-fit:contain;border-radius:8px;border:1px solid rgba(148,163,184,.8)}.manual-planner-meta{display:flex;flex-direction:column;gap:4px}.manual-planner-name{font-size:.9rem}.manual-planner-attach-btn{font-size:.8rem;padding-inline:10px}.manual-docs-block{display:flex;flex-direction:column;gap:8px}.manual-docs-list{display:flex;flex-direction:column;gap:6px}.manual-docs-item{width:100%;border-radius:10px;border:1px solid rgba(30,64,175,.7);background:#0f172ae6;padding:4px 6px 4px 8px;display:flex;align-items:center;justify-content:space-between;gap:6px}.manual-docs-open{flex:1;text-align:left;border:none;background:transparent;padding:4px;cursor:pointer}.manual-docs-delete{border:none;background:transparent;color:#f97373;font-size:1.1rem;cursor:pointer;padding:2px 4px}.manual-docs-delete:hover{color:#fecaca}.manual-docs-title{font-size:.9rem}.manual-docs-meta{margin-top:2px;font-size:.8rem;color:var(--muted)}.manual-commands-table-wrapper{overflow-x:auto}.manual-commands-table{width:100%;border-collapse:collapse;font-size:.8rem}.manual-commands-table th,.manual-commands-table td{border:1px solid rgba(30,64,175,.6);padding:4px 5px;vertical-align:top}.manual-commands-table th{background:#0f172af2;font-weight:600}.manual-textarea-small{min-height:70px;font-size:.84rem;padding:6px 10px;border-radius:14px;border:1px solid rgba(148,163,184,.9);background:#0f172af2;color:#e5e7eb}.manual-command-actions{width:32px;text-align:center}.manual-command-remove-btn{background:transparent;border:none;color:#f97373;font-size:1.1rem;cursor:pointer}.manual-command-remove-btn:hover{color:#fecaca}.manual-commands-empty{text-align:center;color:var(--muted)}.manual-empty-state{padding:20px 12px;text-align:center;color:var(--muted);font-size:.9rem}[data-theme=light] .manual-section .manual-block{color:#0f172a}[data-theme=light] .manual-section .manual-notes-help,[data-theme=light] .manual-section .manual-docs-meta,[data-theme=light] .manual-section .manual-commands-empty{color:#1f2937}[data-theme=light] .manual-section .manual-input,[data-theme=light] .manual-section .manual-notes-textarea,[data-theme=light] .manual-section .manual-textarea-small{background:#f8fafc;color:#0f172a;border-color:#94a3b8e6}[data-theme=light] .manual-section .manual-planner-name,[data-theme=light] .manual-section .manual-docs-title,[data-theme=light] .manual-section .manual-planner-attach-btn,[data-theme=light] .manual-section .manual-env-remove-btn,[data-theme=light] .manual-section .manual-add-command-btn{color:#0f172a}@media (max-width: 960px){.manual-layout{grid-template-columns:minmax(0,1fr)}.manual-editor-header-main{flex-direction:column;align-items:stretch}}@media (max-width: 720px){.manual-section-grid{grid-template-columns:minmax(0,1fr)}}*{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%}body,#root{width:100%;min-height:100vh}
