.modal-panel.budget-modal{width:min(820px,calc(100vw - 24px));display:grid;gap:12px}.budget-modal .modal-header h2{display:inline-flex;align-items:center;gap:8px}.budget-modal .modal-header h2 svg{color:var(--primary)}.budget-source-list{display:grid;gap:8px}.budget-source-row{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(130px,1fr) 130px 150px 44px;gap:10px;align-items:center}.budget-source-row:not(.header){padding:8px 10px;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px var(--shadow)}.budget-source-row.header{padding:0 12px;color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.budget-source-row.header .sort-header{cursor:pointer;justify-content:center}.budget-source-name{min-width:0}.budget-source-date{width:100%;min-width:0}.budget-source-summary{display:flex;flex-wrap:wrap;gap:18px;padding-top:10px;border-top:1px solid var(--border);color:var(--muted);font-weight:700}.budget-source-summary strong{color:var(--text)}.budget-input-metric.budget-sources-metric{cursor:pointer;text-align:left}.budget-input-metric.budget-sources-metric:hover{border-color:var(--accent)}.budget-sources-metric .budget-sources-count{position:absolute;top:12px;right:36px;line-height:18px;color:var(--muted);font-size:.72rem;font-weight:700}@media(max-width:720px){.budget-source-row{grid-template-columns:1fr 1fr}.budget-source-row.header{display:none}.budget-source-row>[data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;margin-bottom:2px}.budget-source-row .danger-icon-button{justify-self:end}}.notif-bell{position:relative;display:inline-flex}.notif-bell-button{position:relative}.notif-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:9px;background:#e0464f;color:#fff;font-size:.68rem;font-weight:800;line-height:1}.notif-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:60;width:min(360px,calc(100vw - 24px));max-height:min(70vh,520px);overflow-y:auto;padding:8px;background:var(--solid-bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 44px var(--shadow)}@media(max-width:760px){.notif-panel{right:auto;left:0;width:min(360px,calc(100vw - 16px))}}.notif-panel-header{font-weight:800;font-size:1rem;padding:6px 8px 10px}.notif-tabs{display:flex;gap:6px;padding:4px;margin:4px 4px 10px;background:var(--secondary-bg);border-radius:10px}.notif-tab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 6px;border:0;border-radius:8px;background:transparent;color:var(--muted-strong);font-size:.84rem;font-weight:700;cursor:pointer}.notif-tab.active{background:var(--solid-bg);color:var(--text);box-shadow:0 2px 8px var(--shadow)}.notif-tab-count{min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:8px;background:#e0464f;color:#fff;font-size:.64rem;font-weight:800;line-height:1}.notif-tab-count.muted{background:var(--primary)}.notif-item{display:flex;gap:10px;width:100%;text-align:left;padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--card-bg);margin-bottom:6px}button.notif-item{cursor:pointer}button.notif-item:hover{border-color:var(--accent)}.notif-item .notif-item-icon{flex:0 0 auto;margin-top:1px}.notif-item div{display:grid;gap:2px;min-width:0}.notif-item strong{font-size:.9rem;display:flex;align-items:center;gap:6px}.notif-item span{color:var(--muted);font-size:.82rem}.notif-item .notif-date{color:var(--muted);font-size:.72rem;font-style:normal}.notif-item.alert.overdue{border-color:#e0464f55}.notif-item.alert.overdue .notif-item-icon{color:#e0464f}.notif-item.alert.soon .notif-item-icon{color:#d9962a}.notif-item.news .notif-item-icon{color:var(--primary)}.notif-new-tag{background:var(--primary);color:#fff;font-size:.62rem;font-weight:800;text-transform:uppercase;padding:1px 6px;border-radius:8px}.notif-empty{padding:8px 10px;color:var(--muted);font-size:.84rem}.driver-active .driver-overlay,.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in .2s ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in .2s}.driver-popover{all:unset;box-sizing:border-box;color:#2d2d2d;margin:0;padding:15px;border-radius:5px;min-width:250px;max-width:300px;box-shadow:0 1px 10px #0006;z-index:1000000000;position:fixed;top:0;right:0;background-color:#fff}.driver-popover *{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif}.driver-popover-title{font:19px/normal sans-serif;font-weight:700;display:block;position:relative;line-height:1.5;zoom:1;margin:0}.driver-popover-close-btn{all:unset;position:absolute;top:0;right:0;width:32px;height:28px;cursor:pointer;font-size:18px;font-weight:500;color:#d2d2d2;z-index:1;text-align:center;transition:color;transition-duration:.2s}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{margin-bottom:0;font:14px/normal sans-serif;line-height:1.5;font-weight:400;zoom:1}.driver-popover-footer{margin-top:15px;text-align:right;zoom:1;display:flex;align-items:center;justify-content:space-between}.driver-popover-progress-text{font-size:13px;font-weight:400;color:#727272;zoom:1}.driver-popover-footer button{all:unset;display:inline-block;box-sizing:border-box;padding:3px 7px;text-decoration:none;text-shadow:1px 1px 0 #fff;background-color:#fff;color:#2d2d2d;font:12px/normal sans-serif;cursor:pointer;outline:0;zoom:1;line-height:1.3;border:1px solid #ccc;border-radius:3px}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}:not(body):has(>.driver-active-element){overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.driver-popover-footer button:hover,.driver-popover-footer button:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{display:flex;flex-grow:1;justify-content:flex-end}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";position:absolute;border:5px solid #fff}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{left:100%;border-right-color:transparent;border-bottom-color:transparent;border-top-color:transparent}.driver-popover-arrow-side-right{right:100%;border-left-color:transparent;border-bottom-color:transparent;border-top-color:transparent}.driver-popover-arrow-side-top{top:100%;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.driver-popover-arrow-side-bottom{bottom:100%;border-left-color:transparent;border-top-color:transparent;border-right-color:transparent}.driver-popover-arrow-side-center{display:none}.driver-popover-arrow-side-left.driver-popover-arrow-align-start,.driver-popover-arrow-side-right.driver-popover-arrow-align-start{top:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-start,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-start{left:15px}.driver-popover-arrow-align-end.driver-popover-arrow-side-left,.driver-popover-arrow-align-end.driver-popover-arrow-side-right{bottom:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-end,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-end{right:15px}.driver-popover-arrow-side-left.driver-popover-arrow-align-center,.driver-popover-arrow-side-right.driver-popover-arrow-align-center{top:50%;margin-top:-5px}.driver-popover-arrow-side-top.driver-popover-arrow-align-center,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-center{left:50%;margin-left:-5px}.driver-popover-arrow-none{display:none}.driver-popover.agenda-tour{background:var(--solid-bg);color:var(--text);border:1px solid var(--border);border-radius:14px;box-shadow:0 18px 50px var(--shadow);max-width:340px;padding:18px 18px 14px}.driver-popover.agenda-tour .driver-popover-title{font-size:1.05rem;font-weight:900;color:var(--text)}.driver-popover.agenda-tour .driver-popover-description{color:var(--muted-strong, var(--muted));font-size:.9rem;line-height:1.45}.driver-popover.agenda-tour .driver-popover-progress-text{color:var(--muted);font-size:.78rem;font-weight:700}.driver-popover.agenda-tour .driver-popover-footer button{text-shadow:none;border-radius:999px;padding:7px 14px;font-weight:800;font-size:.85rem;border:1px solid var(--border);background:var(--card-bg);color:var(--text)}.driver-popover.agenda-tour .driver-popover-footer .driver-popover-next-btn{background:var(--primary);border-color:var(--primary);color:#fff}.driver-popover.agenda-tour .driver-popover-footer .driver-popover-next-btn:hover{filter:brightness(.96)}.driver-popover.agenda-tour .driver-popover-close-btn{color:var(--muted);font-size:1.4rem}.driver-popover.agenda-tour .driver-popover-arrow{border-color:var(--solid-bg)}.payments-grid{grid-template-columns:minmax(150px,1fr) minmax(130px,200px) 110px 168px 148px 112px 60px}.payments-grid.no-service{grid-template-columns:minmax(150px,1fr) 110px 168px 148px 112px 60px}.payments-grid.no-service>:nth-child(4){white-space:nowrap}.payments-grid.overdue-row{border-color:#e0464f66;box-shadow:inset 3px 0 #e0464f,0 8px 22px var(--shadow);background:color-mix(in srgb,#e0464f 6%,var(--card-bg))}.payments-grid>:nth-child(5){white-space:nowrap}@media(min-width:1051px){.payments-grid.header>span{text-align:center;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.payments-grid.header>span:nth-child(1),.payments-grid.header>span:nth-child(2){text-align:left}.payments-grid:not(.header)>:nth-child(3),.payments-grid:not(.header)>:nth-child(5){text-align:center}.payments-grid.no-service.header>span:nth-child(2){text-align:center}.payments-grid.no-service:not(.header)>:nth-child(2),.payments-grid.no-service:not(.header)>:nth-child(4){text-align:center}.payments-grid .situacao-toggle,.payments-grid .receipt-cell>a,.payments-grid .receipt-cell>button,.payments-grid:not(.header)>.danger-icon-button{justify-self:center}}.payment-title-button{padding:0;background:none;border:none;box-shadow:none;text-align:left;cursor:pointer;color:inherit}.payment-title-button:hover strong{text-decoration:underline;text-underline-offset:2px}.payment-scope{display:grid;gap:6px;margin-bottom:4px}.payments-summary{display:flex;flex-wrap:wrap;gap:18px;margin:2px 0 10px;color:var(--muted);font-weight:700}.payments-summary strong{color:var(--text)}.overdue-badge-button{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:var(--danger-bg);border:1px solid color-mix(in srgb,var(--danger-text) 40%,transparent);border-radius:999px;color:var(--danger-text);font-weight:900;font-size:.82rem;box-shadow:none}.overdue-badge-button:hover{border-color:var(--danger-text)}.modal-panel.overdue-modal{width:min(620px,calc(100vw - 24px));display:grid;gap:12px}.overdue-modal .modal-header h2{display:inline-flex;align-items:center;gap:8px}.overdue-modal .modal-header h2 svg{color:var(--danger-text)}.overdue-list{display:grid;gap:8px;max-height:60vh;overflow-y:auto}.overdue-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--card-bg);border:1px solid var(--border);border-left:4px solid var(--danger-text);border-radius:8px}.overdue-item-info{display:grid;gap:2px;flex:1;min-width:0}.overdue-item-info strong{overflow-wrap:anywhere}.overdue-item-info span{color:var(--muted);font-size:.88rem}.overdue-item-info em{color:var(--danger-text);font-style:normal;font-weight:800;font-size:.82rem}.overdue-item-actions{display:flex;align-items:center;gap:8px;flex:none}.overdue-pay-button{display:inline-flex;align-items:center;gap:6px;width:auto;white-space:nowrap}@media(max-width:560px){.overdue-item{flex-direction:column;align-items:stretch}.overdue-item-actions{justify-content:flex-end}}.situacao-toggle{display:inline-flex;gap:4px}.sit-option{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.74rem;font-weight:800;white-space:nowrap;box-shadow:none}.sit-option svg{flex:none}.sit-option:hover{color:var(--text);border-color:var(--accent)}.sit-option.active{color:#fff;border-color:transparent;box-shadow:0 6px 14px var(--shadow)}.sit-option.pago.active{background:#7fb58f}.sit-option.apagar.active{background:#d7b75f}.sit-option.apagar.active.vencida{background:#d85f83}.payment-receipt-link{display:inline-flex;align-items:center;gap:5px;color:var(--primary);font-weight:700;text-decoration:none}.payment-receipt-link:hover{text-decoration:underline}.payment-receipt-empty{color:var(--muted)}.payment-status-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.payment-status-button{width:34px;min-height:34px;padding:0;display:inline-grid;place-items:center;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);box-shadow:none}.payment-status-button:hover,.payment-status-button:focus-visible{color:var(--text);border-color:var(--accent);transform:translateY(-1px)}.payment-status-button.active{color:#fff;border-color:transparent;box-shadow:0 8px 18px var(--shadow)}.payment-status-button.pendente.active{background:#d7b75f}.payment-status-button.pago.active{background:#7fb58f}.payment-status-button.atrasado.active{background:#d85f83}@media(max-width:1050px){.payments-grid{grid-template-columns:1fr}.payments-grid:not(.header){position:relative}.payments-grid:not(.header)>strong{padding-right:104px}.payments-grid:not(.header)>.receipt-cell{position:absolute;top:12px;right:60px;margin:0}.payments-grid:not(.header)>.receipt-cell:before{display:none!important}.payments-grid:not(.header)>.danger-icon-button{position:absolute;top:12px;right:12px;justify-self:auto}}.services-grid{grid-template-columns:42px minmax(190px,1.15fr) minmax(180px,1fr) 125px 136px 125px 140px 140px 120px 40px;column-gap:8px}.service-rowctl{display:flex;align-items:center;gap:4px}.service-drag-handle{display:inline-grid;place-items:center;width:22px;height:30px;padding:0;border:none;background:transparent;color:var(--muted);cursor:grab;touch-action:none}.service-drag-handle:active{cursor:grabbing}.services-grid.is-selected{outline:2px solid var(--accent);outline-offset:-2px}.services-reorder-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--muted)}.services-reorder-bar .reorder-selectall{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.services-reorder-bar .reorder-count{font-weight:700;color:var(--text)}.services-reorder-hint{font-size:.8rem;color:var(--muted)}.service-search input{width:100%}.services-grid.header .sort-header,.services-grid.header>span{justify-content:center;text-align:center}.services-grid.header .sort-header:nth-child(2),.services-grid.header .sort-header:nth-child(3){justify-content:flex-start;text-align:left}.decision-toggle,.status-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.decision-button,.status-button{width:34px;min-height:34px;padding:0;display:inline-grid;place-items:center;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);box-shadow:none}.decision-button:hover,.decision-button:focus-visible,.status-button:hover,.status-button:focus-visible{color:var(--text);border-color:var(--accent);transform:translateY(-1px)}.decision-button.active,.status-button.active{color:#fff;border-color:transparent;box-shadow:0 8px 18px var(--shadow)}.decision-button.queremos.active,.status-button.fechado.active{background:#7fb58f}.decision-button.nao_queremos.active,.status-button.descartado.active{background:#d85f83}.decision-button.em_duvida.active,.status-button.nao_visto.active{background:#d7b75f}.status-button.pesquisando.active{background:#88add2}.service-order{display:inline-grid;place-items:center;width:42px;min-height:32px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text);font-weight:900}.money-cell{justify-self:end;font-weight:900;font-variant-numeric:tabular-nums;color:var(--muted-strong)}.paid-cell-button{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-height:40px;padding:9px 8px;background:var(--secondary-bg);color:var(--secondary-text);border:1px solid var(--border);border-radius:6px;font-weight:900;font-variant-numeric:tabular-nums;box-shadow:none}.paid-cell-button:hover{border-color:var(--accent);color:var(--primary)}.paid-cell-button.overpaid{border-color:var(--danger-text)}.paid-overpaid-icon{flex:none;color:var(--danger-text)}.vendor-cell{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:6px;align-items:center}.service-title-cell{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.service-title-actions{display:inline-flex;gap:6px;align-items:center}.service-title-button{min-width:0;display:grid;gap:2px;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}.service-title-button strong,.service-title-button small{min-width:0;overflow-wrap:anywhere}.service-title-button small{color:var(--muted)}.service-title-button:hover strong,.service-title-button:focus-visible strong{color:var(--primary)}.vendor-select-wrap{position:relative;min-width:0}.vendor-tooltip{position:absolute;left:0;bottom:calc(100% + 8px);z-index:15;width:max-content;min-width:220px;max-width:320px;display:none;gap:7px;padding:12px;background:var(--solid-bg);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 18px 45px var(--big-shadow);color:var(--text)}.vendor-select-wrap:hover .vendor-tooltip,.vendor-select-wrap:focus-within .vendor-tooltip{display:grid}.vendor-tooltip span{min-width:0;display:inline-flex;align-items:center;gap:6px;overflow-wrap:anywhere;color:var(--muted-strong);font-size:.9rem}.vendor-tooltip svg{flex:0 0 auto;color:var(--primary)}.vendor-row{display:grid;grid-template-columns:26px minmax(200px,.72fr) minmax(360px,1.28fr) auto;gap:12px;align-items:start;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 22px var(--shadow)}.vendor-row>.reorder-drag-handle{align-self:center}.vendor-row.vendor-header{padding:2px 12px;background:transparent;border:0;box-shadow:none;align-items:center;color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.vendor-header-details{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px 12px}@media(max-width:1050px){.vendor-row.vendor-header{display:none}.vendor-row>.reorder-drag-handle{display:none}}.vendor-main,.vendor-details{min-width:0}.vendor-main{display:grid;gap:6px}.vendor-title-row{display:flex;align-items:center;gap:8px;min-width:0}.vendor-name-button{justify-self:start;min-height:0;padding:0;background:transparent;color:var(--text);font-weight:900;text-align:left;box-shadow:none}.vendor-name-button:hover{color:var(--primary);text-decoration:underline}.attachment-button{min-width:34px;min-height:34px;gap:4px;padding:7px 9px;font-size:.78rem}.vendor-main span,.vendor-details span{min-width:0;display:inline-flex;align-items:center;gap:6px;overflow-wrap:anywhere}.vendor-main span{color:var(--muted);font-size:.88rem;font-weight:800}.vendor-main svg,.vendor-details svg{flex:0 0 auto;color:var(--primary)}.vendor-details{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px 12px;color:var(--muted-strong);font-size:.92rem}.vendor-notes{grid-column:1 / -1}.attachment-list{display:grid;gap:8px}.attachment-subhead{margin:14px 0 0;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.service-payments-trigger svg{color:var(--primary)}.service-payments-trigger.has-overdue{border-color:#e0464f66}.service-payments-trigger.has-overdue svg,.service-payments-trigger.has-overdue span{color:#e0464f;font-weight:800}.modal-panel.service-payments-modal{width:min(900px,calc(100vw - 24px));max-height:min(86vh,780px);display:flex;flex-direction:column;gap:10px;overflow:hidden}.service-payments-modal .modal-header h2{display:inline-flex;align-items:center;gap:8px}.service-payments-modal .modal-header h2 svg{color:var(--primary)}.svc-pay-summary{display:flex;flex-wrap:wrap;gap:10px}.svc-pay-stat{flex:1;min-width:130px;display:grid;gap:3px;padding:10px 13px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg)}.svc-pay-stat>span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.svc-pay-stat>strong{color:var(--text);font-size:1.12rem;font-variant-numeric:tabular-nums}.svc-pay-stat.paid>strong{color:#3e9e74}.svc-pay-stat.open>strong{color:#d9962a}.svc-pay-table{display:grid;gap:8px;margin-top:4px;flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.svc-pay-table>.payments-grid.header{position:sticky;top:0;z-index:1;padding-top:4px;padding-bottom:4px;background:var(--solid-bg)}.attachment-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 12px;color:var(--text);text-decoration:none;background:var(--card-bg);border:1px solid var(--border);border-radius:6px}.attachment-list a:hover{border-color:var(--accent);color:var(--primary)}.attachment-list span{min-width:0;overflow-wrap:anywhere}@media(max-width:1050px){.services-grid,.vendor-row,.vendor-details{grid-template-columns:1fr}}.guests-grid{grid-template-columns:minmax(190px,1.1fr) minmax(150px,.85fr) 145px minmax(190px,1fr) 110px 130px 40px}.guests-grid.header>span{justify-content:center;text-align:center}.guests-grid.header>span:nth-child(1),.guests-grid.header>span:nth-child(2),.guests-grid.header>span:nth-child(4){justify-content:flex-start;text-align:left}.guest-form{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(150px,.75fr) 145px minmax(180px,1fr) 86px auto;gap:8px;align-items:end;margin-bottom:8px}.guest-search{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:8px;align-items:center}.guest-search span,.import-message{color:var(--muted);font-weight:800}.compact-field{display:grid;gap:3px;color:var(--muted-strong);font-size:.72rem;font-weight:900}.compact-field input{min-height:40px}.rsvp-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.rsvp-button{width:34px;min-height:34px;padding:0;display:inline-grid;place-items:center;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);box-shadow:none}.rsvp-button:hover,.rsvp-button:focus-visible{color:var(--text);border-color:var(--accent);transform:translateY(-1px)}.rsvp-button.active{color:#fff;border-color:transparent;box-shadow:0 8px 18px var(--shadow)}.rsvp-button.confirmado.active{background:#7fb58f}.rsvp-button.recusado.active{background:#d85f83}.rsvp-button.pendente.active{background:#d7b75f}@media(max-width:1050px){.guests-grid,.guest-form,.guest-search{grid-template-columns:1fr}}.moodboard-message{color:var(--hint-text);font-weight:700}.moodboard-dropzone{min-height:132px;display:grid;place-items:center;gap:6px;padding:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--hint-bg) 72%,transparent),color-mix(in srgb,var(--card-bg) 92%,transparent));border:2px dashed color-mix(in srgb,var(--accent) 60%,var(--border));border-radius:8px;color:var(--text);text-align:center;cursor:pointer;box-shadow:0 8px 22px var(--shadow)}.moodboard-dropzone:hover,.moodboard-dropzone.dragging{background:color-mix(in srgb,var(--hint-bg) 88%,var(--card-bg));border-color:var(--primary)}.moodboard-dropzone svg{color:var(--primary)}.moodboard-dropzone strong{font-size:1.02rem}.moodboard-dropzone span{color:var(--muted);font-size:.9rem}.moodboard-dropzone input{display:none}.moodboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.moodboard-groups{display:flex;flex-wrap:wrap;gap:8px}.moodboard-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.moodboard-crumb{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;color:var(--text);font-weight:800;box-shadow:none}.moodboard-crumb svg{color:var(--primary)}.moodboard-crumb.active{cursor:default}.moodboard-crumb-sep{color:var(--muted)}.moodboard-crumb.current{font-weight:900}.moodboard-rename{display:inline-grid;place-items:center;width:30px;min-height:30px;padding:0;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted-strong);box-shadow:none}.moodboard-rename:hover{color:var(--text);border-color:var(--accent)}.moodboard-folders{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;align-items:start}.moodboard-folder-card{display:flex;flex-direction:column;padding:0;overflow:hidden;text-align:left;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 26px var(--shadow);cursor:pointer}.moodboard-folder-card:hover{border-color:var(--accent);transform:translateY(-2px)}.moodboard-folder-new{border-style:dashed;border-color:color-mix(in srgb,var(--accent) 60%,var(--border))}.moodboard-folder-new .moodboard-folder-cover.cover-empty{color:var(--primary)}.moodboard-folder-cover{width:100%;height:160px;flex:none;overflow:hidden;background:var(--input-bg)}.moodboard-folder-cover img{width:100%;height:100%;object-fit:cover}.moodboard-folder-cover.cover-empty{display:grid;place-items:center;color:var(--muted)}.moodboard-folder-info{display:grid;gap:3px;padding:12px 14px 14px}.moodboard-folder-info strong{overflow-wrap:anywhere}.moodboard-folder-info span{color:var(--muted);font-size:.86rem}.moodboard-actionbar{display:flex;min-height:38px}.moodboard-select-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.moodboard-select-count{font-weight:900;color:var(--muted-strong)}.moodboard-move-wrap{position:relative}.moodboard-move-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:20;width:max(220px,100%);display:grid;gap:2px;max-height:320px;overflow-y:auto;padding:8px;background:var(--solid-bg, var(--card-bg));border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 40px var(--shadow)}.moodboard-move-menu>button{justify-content:flex-start;padding:8px 10px;background:transparent;border:0;border-radius:6px;color:var(--text);font-weight:700;text-align:left;box-shadow:none}.moodboard-move-menu>button:hover{background:var(--secondary-bg)}.moodboard-move-new{display:grid;gap:6px;margin-top:6px;padding-top:8px;border-top:1px solid var(--border)}.moodboard-move-new input{width:100%;min-height:34px}.moodboard-card.selectable,.moodboard-card.selectable .moodboard-image-button{cursor:pointer}.moodboard-card.selectable.selected{outline:3px solid var(--primary);outline-offset:-3px}.moodboard-check{position:absolute;top:8px;left:8px;z-index:3;display:grid;place-items:center;width:28px;height:28px;background:color-mix(in srgb,var(--solid-bg, var(--card-bg)) 82%,transparent);border-radius:6px;box-shadow:0 6px 16px var(--shadow)}.moodboard-check input{width:17px;height:17px;margin:0;pointer-events:none}.moodboard-card{position:relative;overflow:hidden;display:grid;grid-template-rows:auto minmax(84px,auto);background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 26px var(--shadow);cursor:grab}.moodboard-card.dragging{opacity:.62;outline:2px dashed var(--accent);outline-offset:3px;cursor:grabbing}.moodboard-image-button{width:100%;min-height:0;display:block;padding:0;aspect-ratio:1 / 1;overflow:hidden;background:var(--input-bg);border:0;border-radius:0;box-shadow:none;cursor:zoom-in}.moodboard-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .18s ease}.moodboard-card:hover img{transform:scale(1.03)}.moodboard-card div{min-width:0;display:grid;gap:4px;align-content:start;padding:12px 14px 14px}.moodboard-card strong,.moodboard-card span{min-width:0;overflow-wrap:anywhere}.moodboard-card span{color:var(--muted);font-size:.88rem}.moodboard-card em{width:fit-content;padding:3px 8px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text);font-size:.74rem;font-style:normal;font-weight:900}.moodboard-card .danger-icon-button{position:absolute;top:8px;right:8px;box-shadow:0 8px 20px var(--shadow)}.moodboard-preview-backdrop{padding:12px}.modal-panel.moodboard-preview-modal{width:min(1480px,calc(100vw - 24px));height:min(920px,calc(100vh - 24px));max-height:calc(100vh - 24px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px}.modal-panel.moodboard-preview-modal>.modal-header{padding:10px 12px;background:var(--card-bg);border-radius:8px}.moodboard-preview-modal .modal-header h2{max-width:min(760px,58vw);overflow:hidden;font-size:1.08rem;text-overflow:ellipsis;white-space:nowrap}.moodboard-preview-modal .modal-header p{font-size:.9rem}.autosave-status{min-height:30px;display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--secondary-bg);color:var(--muted-strong);font-size:.78rem;font-weight:900;white-space:nowrap}.autosave-status.saved{color:var(--badge-text);background:var(--badge-bg)}.autosave-status.error{color:var(--danger-text);background:var(--danger-bg)}.moodboard-preview-content{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,300px);gap:12px;align-items:stretch}.moodboard-stage{position:relative;min-height:0;display:grid;place-items:center;overflow:hidden;background:color-mix(in srgb,var(--input-bg) 74%,#000);border:1px solid var(--border);border-radius:8px}.moodboard-stage img{width:100%;height:100%;max-height:none;object-fit:contain}.moodboard-preview-modal:not(.dicas-preview) .moodboard-stage img{position:absolute;inset:0}.moodboard-nav-button{position:absolute;top:50%;z-index:2;width:46px;min-height:46px;padding:0;display:grid;place-items:center;background:color-mix(in srgb,var(--solid-bg) 78%,transparent);border:1px solid var(--border);border-radius:999px;color:var(--text);box-shadow:0 12px 28px var(--shadow);transform:translateY(-50%)}.moodboard-nav-button.previous{left:14px}.moodboard-nav-button.next{right:14px}.moodboard-nav-button:disabled{opacity:.3;cursor:not-allowed}.moodboard-editor{display:grid;gap:10px;align-content:start;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px}.moodboard-editor label{gap:5px;font-size:.88rem}.moodboard-editor input,.moodboard-editor textarea{min-height:36px}.moodboard-editor textarea{min-height:104px}@media(max-width:1050px){.moodboard-preview-content{grid-template-columns:1fr}.moodboard-stage{min-height:62vh}.moodboard-preview-content:not(.readonly){overflow-y:auto}.moodboard-preview-content:not(.readonly) .moodboard-stage{min-height:240px;max-height:42vh}.dicas-preview .moodboard-preview-content:not(.readonly){display:block}.dicas-preview .moodboard-preview-content:not(.readonly) .moodboard-stage{min-height:0;max-height:none;margin-bottom:12px}.dicas-preview .moodboard-preview-content:not(.readonly) .moodboard-stage img{max-height:70vh}}.attachments-message{display:flex;align-items:center;gap:8px;font-weight:600}.attachments-message svg{flex:0 0 auto;color:var(--primary)}.attachments-overview{display:grid;gap:8px}.attachment-overview-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;color:var(--text);text-decoration:none;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 22px var(--shadow)}.attachment-overview-row:hover{border-color:var(--accent);color:var(--primary)}.attachment-overview-row div{min-width:0;display:grid;gap:3px}.attachment-overview-row strong,.attachment-overview-row span{min-width:0;overflow-wrap:anywhere}.attachment-overview-row span{color:var(--muted);font-size:.88rem;font-weight:800}.access-grid{grid-template-columns:minmax(160px,1fr) minmax(220px,1.4fr) 120px minmax(150px,auto)}.access-email{min-width:0;overflow-wrap:anywhere;color:var(--muted-strong)}.access-role{min-width:0;text-transform:capitalize}.access-grid .secondary-button{width:max-content;max-width:100%;white-space:nowrap}.access-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.access-link-panel{display:grid;gap:10px}.access-link-actions{display:flex;gap:8px;flex-wrap:wrap}.copy-message{color:var(--muted);font-weight:800}.button-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;padding:9px 12px;background:var(--primary);color:var(--primary-contrast);font-weight:800;text-decoration:none}@media(max-width:1050px){.access-grid{grid-template-columns:1fr}}.moodboard-preview-content.readonly{grid-template-columns:minmax(0,1fr)}.dicas-preview .moodboard-stage.dicas-stage{cursor:pointer}.dicas-preview .moodboard-stage img{width:auto;height:auto;max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;cursor:zoom-in;transition:transform .1s ease}.dicas-preview .moodboard-stage img.dicas-zoomed{transform:scale(2.4);cursor:zoom-out}.checklist-calendar{display:grid;grid-template-columns:repeat(var(--checklist-cols, 2),minmax(0,1fr));gap:18px;align-items:start}.checklist-cols-toggle{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--secondary-bg);border-radius:8px}.checklist-cols-icon{color:var(--muted);margin:0 4px 0 2px}.checklist-cols-option{min-width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--muted-strong);font-weight:800;font-size:.85rem;cursor:pointer}.checklist-cols-option.active{background:var(--solid-bg);color:var(--text);box-shadow:0 2px 6px var(--shadow)}.checklist-month-header-right{display:inline-flex;align-items:center;gap:8px}.checklist-month-add{display:grid;place-items:center;width:26px;height:26px;flex:0 0 auto;border:1px solid var(--border);border-radius:6px;background:var(--solid-bg);color:var(--primary);cursor:pointer}.checklist-month-add:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--solid-bg))}@media(max-width:760px){.checklist-calendar{grid-template-columns:1fr}}.checklist-month{display:grid;gap:10px;padding:16px;background:color-mix(in srgb,var(--card-bg) 92%,var(--hint-bg));border:1px solid color-mix(in srgb,var(--border) 82%,var(--accent));border-left:5px solid var(--accent);border-radius:8px;box-shadow:0 8px 22px var(--shadow)}.checklist-summary{margin-bottom:8px}.checklist-month-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.checklist-month-header h3{margin:0;color:var(--primary);font-size:1.18rem;line-height:1.12;font-weight:800;text-transform:capitalize}.checklist-month-header span{color:var(--muted);font-size:.8rem;font-weight:800;white-space:nowrap}.checklist-progress{height:6px;overflow:hidden;background:color-mix(in srgb,var(--input-bg) 80%,white);border-radius:999px}.checklist-progress span{display:block;height:100%;background:var(--accent);border-radius:inherit}.task-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 22px var(--shadow)}.checklist-month .task-row{grid-template-columns:auto auto minmax(0,1fr) auto;gap:2px 6px;padding:5px 0;background:transparent;border:0;border-radius:0;box-shadow:none}.checklist-month .task-row.is-dragging{opacity:.4}.task-drag-handle{align-self:start;width:20px;margin-top:5px}.checklist-month.is-drop-target{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--card-bg))}.task-drag-overlay{width:auto;padding:10px 12px;align-items:center;cursor:grabbing}.checklist-month .task-row.done .task-title-button{color:var(--muted);text-decoration:line-through}.task-row input[type=checkbox]{appearance:none;width:20px;min-width:20px;height:20px;min-height:20px;margin-top:5px;border:2px solid var(--muted);border-radius:999px;background:var(--card-bg);cursor:pointer}.task-row input[type=checkbox]:checked{border-color:var(--accent);background-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.2 8.2 6.4 11.3 12.8 4.7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:14px 14px}.task-title-button{width:100%;min-width:0;min-height:30px;padding:4px 0;background:transparent;border:0;color:var(--text);font-weight:700;line-height:1.3;text-align:left;cursor:pointer;overflow-wrap:anywhere}.task-title-button:hover,.task-title-button:focus{color:var(--primary);outline:none}.checklist-month .task-row small{display:flex;align-items:center;gap:6px;grid-column:3 / -1;color:var(--muted)}.priority-badge{display:inline-flex;align-items:center;min-height:20px;padding:2px 8px;border-radius:999px;color:#fff;font-size:.72rem;font-weight:900}.priority-badge.alta{background:#d85f83}.priority-badge.media{background:#d7b75f}.priority-badge.baixa{background:#7fb58f}.priority-toggle{display:flex;gap:8px;flex-wrap:wrap}.priority-option,.status-option{width:auto;min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:var(--card-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);font-weight:900;box-shadow:none}.priority-option span,.status-option span{width:12px;height:12px;border-radius:999px;background:currentColor}.priority-option.alta{color:#d85f83}.priority-option.media{color:#b89433}.priority-option.baixa{color:#7fb58f}.priority-option.active,.status-option.active{color:#fff;border-color:transparent;box-shadow:0 8px 18px var(--shadow)}.priority-option.alta.active{background:#d85f83}.priority-option.media.active{background:#d7b75f}.priority-option.baixa.active{background:#7fb58f}.status-option.pendente{color:#a9a3ac}.status-option.em_andamento{color:#5d8bb8}.status-option.concluida{color:#4f9468}.status-option.pendente.active{background:#7a7382}.status-option.em_andamento.active{background:#5d8bb8}.status-option.concluida.active{background:#4f9468}.status-option.pendente.active,.status-option.em_andamento.active,.status-option.concluida.active{color:#fff}.modal-panel.checklist-modal{width:min(520px,100%);gap:18px;border-radius:18px}.checklist-modal form{display:grid;gap:18px}.checklist-modal .checklist-modal-header{align-items:center}.checklist-modal .modal-header-actions{flex-wrap:nowrap}.checklist-modal-heading{display:flex;align-items:center;gap:14px;min-width:0}.checklist-modal-heading>div{min-width:0}.checklist-modal-icon{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:999px;background:var(--solid-bg);color:var(--primary);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent),0 4px 12px var(--shadow)}.checklist-modal-header h2{font-size:1.22rem}.checklist-modal .vendor-form label{gap:9px;font-size:.86rem;font-weight:800;letter-spacing:.01em;color:var(--muted-strong)}.checklist-modal .vendor-form input,.checklist-modal .vendor-form select,.checklist-modal .vendor-form textarea{min-height:44px;padding:11px 13px;border-radius:12px;color:var(--text)}.status-toggle-checklist{margin-top:2px}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--app-bg);--text: #38423f;--muted: #82787a;--muted-strong: #635b5d;--app-bg: radial-gradient(circle at top left, rgba(251, 221, 225, .65), transparent 34rem), linear-gradient(135deg, #fff8ef 0%, #f6f1fb 45%, #edf7f2 100%);--login-bg: radial-gradient(circle at 20% 20%, rgba(248, 205, 214, .9), transparent 26rem), radial-gradient(circle at 80% 10%, rgba(207, 223, 255, .8), transparent 24rem), linear-gradient(135deg, #fff6ea, #edf7f2);--sidebar-bg: linear-gradient(180deg, #f8dfe5 0%, #dceee5 52%, #dfe8fb 100%);--panel-bg: rgba(255, 255, 255, .88);--card-bg: rgba(255, 255, 255, .76);--solid-bg: #fffdfa;--input-bg: #fffdfa;--border: rgba(226, 213, 215, .82);--border-strong: #ead8dd;--primary: #9abfa8;--primary-contrast: #ffffff;--secondary-bg: #f5e8ed;--secondary-text: #6e5660;--accent: #f0b9c7;--badge-bg: #f5e0e7;--badge-text: #8f6471;--hint-bg: rgba(255, 249, 219, .84);--hint-border: #f1dfaa;--hint-text: #6f633f;--danger-bg: #f5d8de;--danger-text: #8d4d5b;--shadow: rgba(154, 134, 132, .1);--big-shadow: rgba(119, 94, 91, .28);--focus: rgba(202, 225, 214, .75);--focus-border: #a8cbb9;--overlay: rgba(78, 65, 66, .38)}body[data-theme=azul]{--app-bg: radial-gradient(circle at top left, rgba(207, 226, 255, .75), transparent 34rem), linear-gradient(135deg, #f4f9ff 0%, #eef6ff 45%, #f3fbf8 100%);--login-bg: radial-gradient(circle at 20% 20%, rgba(199, 220, 250, .9), transparent 26rem), radial-gradient(circle at 80% 10%, rgba(221, 232, 255, .9), transparent 24rem), linear-gradient(135deg, #f7fbff, #edf6ff);--sidebar-bg: linear-gradient(180deg, #dcecff 0%, #e9f5ff 52%, #eaf7f1 100%);--primary: #88add2;--secondary-bg: #e8f1fb;--secondary-text: #4f6580;--accent: #a9c8ef;--badge-bg: #deecfb;--badge-text: #4c6f92;--focus: rgba(179, 211, 244, .72);--focus-border: #8db7df}body[data-theme=amarelo]{--app-bg: radial-gradient(circle at top left, rgba(255, 236, 166, .65), transparent 34rem), linear-gradient(135deg, #fffaf0 0%, #fff7dc 44%, #f2faee 100%);--login-bg: radial-gradient(circle at 22% 18%, rgba(255, 230, 153, .86), transparent 25rem), radial-gradient(circle at 80% 12%, rgba(222, 242, 196, .82), transparent 24rem), linear-gradient(135deg, #fffaf0, #f8f7df);--sidebar-bg: linear-gradient(180deg, #fff1bf 0%, #f8f2d0 52%, #e6f4d9 100%);--primary: #d7b75f;--secondary-bg: #fff2cb;--secondary-text: #725f28;--accent: #e8cd79;--badge-bg: #fff0bf;--badge-text: #806526;--hint-bg: rgba(255, 244, 196, .9);--hint-border: #e4ca79;--hint-text: #6f5b22;--focus: rgba(232, 205, 121, .54);--focus-border: #d7b75f}body[data-theme=verde]{--app-bg: radial-gradient(circle at top left, rgba(204, 236, 216, .75), transparent 34rem), linear-gradient(135deg, #f5fff8 0%, #ecf8ef 45%, #f4f8ea 100%);--login-bg: radial-gradient(circle at 20% 20%, rgba(194, 229, 207, .9), transparent 26rem), radial-gradient(circle at 80% 10%, rgba(225, 242, 196, .78), transparent 24rem), linear-gradient(135deg, #f6fff8, #edf8ef);--sidebar-bg: linear-gradient(180deg, #d8f0df 0%, #e6f6e9 52%, #f2f6dd 100%);--primary: #7fb58f;--secondary-bg: #e5f2e9;--secondary-text: #4f7359;--accent: #aad3b7;--badge-bg: #dff0e5;--badge-text: #4f8060;--focus: rgba(181, 220, 194, .72);--focus-border: #84ba94}body[data-theme=dark]{--text: #f8f8f2;--muted: #c7c3d8;--muted-strong: #e5e0f5;--app-bg: radial-gradient(circle at top left, rgba(189, 147, 249, .22), transparent 34rem), linear-gradient(135deg, #282a36 0%, #1f2030 48%, #191a25 100%);--login-bg: radial-gradient(circle at 20% 20%, rgba(255, 121, 198, .24), transparent 26rem), radial-gradient(circle at 80% 10%, rgba(139, 233, 253, .2), transparent 24rem), linear-gradient(135deg, #282a36, #191a25);--sidebar-bg: linear-gradient(180deg, #343746 0%, #282a36 54%, #21222c 100%);--panel-bg: rgba(40, 42, 54, .92);--card-bg: rgba(68, 71, 90, .72);--solid-bg: #282a36;--input-bg: #21222c;--border: rgba(189, 147, 249, .35);--border-strong: rgba(255, 121, 198, .42);--primary: #bd93f9;--primary-contrast: #282a36;--secondary-bg: #44475a;--secondary-text: #f8f8f2;--accent: #ff79c6;--badge-bg: rgba(255, 121, 198, .18);--badge-text: #ffb7df;--hint-bg: rgba(241, 250, 140, .12);--hint-border: rgba(241, 250, 140, .38);--hint-text: #f1fa8c;--danger-bg: rgba(255, 85, 85, .18);--danger-text: #ffb3b3;--shadow: rgba(0, 0, 0, .24);--big-shadow: rgba(0, 0, 0, .45);--focus: rgba(139, 233, 253, .24);--focus-border: #8be9fd;--overlay: rgba(10, 10, 18, .64)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--app-bg)}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.68;transform:none}.centered,.login-shell{min-height:100vh;display:grid;place-items:center}.login-shell{background:var(--login-bg)}.login-panel{width:min(420px,calc(100vw - 32px));display:grid;gap:16px;padding:28px;background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 24px 80px var(--big-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.login-panel h1{margin:0 0 8px}.login-branding{display:grid;gap:5px}.login-branding span{width:fit-content;display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:0}.login-branding h1{margin:0}.login-branding p{margin:0 0 8px;color:var(--muted);line-height:1.35}label{display:grid;gap:6px;font-weight:700}input,select,textarea{width:100%;min-height:40px;border:1px solid var(--border);border-radius:6px;padding:9px 10px;background:var(--input-bg);color:var(--text)}input:focus,select:focus,textarea:focus{outline:3px solid var(--focus);border-color:var(--focus-border)}.password-field{position:relative}.password-field input{padding-right:46px}.password-toggle{position:absolute;top:50%;right:6px;width:34px;height:34px;display:grid;place-items:center;padding:0;border-radius:6px;background:transparent;color:var(--muted);box-shadow:none;transform:translateY(-50%)}.password-toggle:hover{background:var(--secondary-bg);transform:translateY(-50%)}textarea{min-height:92px;resize:vertical}button[type=submit],.ghost-button,.icon-button,.primary-action,.secondary-button,.close-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;padding:9px 12px;background:var(--primary);color:var(--primary-contrast);font-weight:800;box-shadow:0 8px 20px var(--shadow);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}button[type=submit]:hover,.ghost-button:hover,.icon-button:hover,.primary-action:hover,.secondary-button:hover,.close-button:hover,.wedding-button:hover,.tabs button:hover{transform:translateY(-1px)}.error{color:#b55b65;margin:0}.status-message{margin:0;padding:10px 12px;border-radius:8px;font-weight:800}.status-message.error{background:var(--danger-bg);border:1px solid var(--border-strong);color:var(--danger-text)}.status-message.success{background:var(--hint-bg);border:1px solid var(--hint-border);color:var(--hint-text)}.field-with-hint{position:relative}.field-error-hint{position:absolute;top:calc(100% + 2px);left:2px;color:var(--danger-text);font-size:12px;line-height:1.15;font-weight:700;white-space:nowrap;pointer-events:none;z-index:2}.setup-user{margin:0;color:var(--muted)}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px 1fr}.sidebar{display:flex;flex-direction:column;gap:16px;min-height:100vh;padding:18px;background:var(--sidebar-bg);color:var(--text);border-right:1px solid var(--border);box-shadow:12px 0 32px var(--shadow)}.brand{display:flex;align-items:center;gap:12px}.brand span,.brand small,.wedding-button span,small{color:var(--muted);font-size:.82rem}.brand span{display:block;color:var(--muted);font-weight:900}.brand small{display:block;margin-top:2px}.brand-instagram{display:inline-flex;align-items:center;gap:5px;margin-top:6px;color:var(--muted);font-size:.78rem;font-weight:700;text-decoration:none;transition:color .14s ease}.brand-instagram:hover{color:var(--primary)}.login-branding .brand-instagram{margin-top:12px}.menu-toggle{display:none;position:fixed;top:14px;left:14px;z-index:30;width:44px;height:44px;align-items:center;justify-content:center;background:var(--solid-bg);color:var(--primary);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 22px var(--shadow)}.menu-backdrop{display:none;position:fixed;inset:0;z-index:35;background:#00000073}.sidebar-close{display:none;align-self:flex-end;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--secondary-bg);color:var(--secondary-text);border-radius:8px;font-size:1.3rem;line-height:1}.sidebar-collapse{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 10px;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:8px;font-size:.8rem;font-weight:800}.wedding-list{display:grid;align-content:start;gap:8px;flex:1;min-height:0;overflow:auto}.sidebar-filter{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 12px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 18px var(--shadow);font-size:.88rem}.sidebar-filter input{width:16px;min-height:16px}.sidebar-filter span{font-weight:800}.sidebar-filter small{color:var(--muted);font-weight:900}.sidebar-empty{padding:12px;color:var(--muted);border:1px dashed var(--border);border-radius:8px}.theme-picker:not(.compact){display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);box-shadow:0 6px 18px var(--shadow)}.theme-picker:not(.compact) span{display:inline-flex;align-items:center;gap:8px;color:var(--muted-strong);font-size:.86rem;font-weight:900}.theme-menu{position:relative}.theme-dot{width:40px;min-height:40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:999px;color:#ffffffd1;box-shadow:none}.lang-dot{background:var(--secondary-bg);color:var(--secondary-text)}.login-topbar{position:absolute;top:16px;right:16px;z-index:20}.lang-flag{width:19px;height:auto;flex:0 0 auto;border-radius:3px;box-shadow:0 0 0 1px #0000001f}.theme-menu-options{position:absolute;top:calc(100% + 8px);right:0;z-index:15;width:180px;display:none;gap:4px;padding:8px;background:var(--solid-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 16px 40px var(--shadow)}.theme-menu:hover .theme-menu-options,.theme-menu:focus-within .theme-menu-options{display:grid}.models-menu{position:relative}.models-menu-options{position:absolute;top:calc(100% + 8px);right:0;z-index:16;width:190px;display:none;gap:4px;padding:8px;background:var(--solid-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 16px 40px var(--shadow)}.models-menu:hover .models-menu-options,.models-menu:focus-within .models-menu-options{display:grid}.models-menu-options:before,.theme-menu-options:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.models-menu-options button{min-height:38px;display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:center;padding:8px 10px;background:transparent;border:0;border-radius:6px;color:var(--text);font-weight:800;text-align:left;box-shadow:none}.models-menu-options button:hover{background:var(--secondary-bg);color:var(--primary)}.theme-option{min-height:34px;display:grid;grid-template-columns:18px 1fr;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;background:transparent;color:var(--text);text-align:left;font-weight:800;box-shadow:none}.theme-option:hover,.theme-option.active{background:var(--secondary-bg);transform:none}.theme-swatch{width:18px;height:18px;border-radius:999px;border:1px solid var(--border)}.theme-rosa{background:linear-gradient(135deg,#f8dfe5,#dceee5)}.theme-azul{background:linear-gradient(135deg,#dcecff,#eaf7f1)}.theme-amarelo{background:linear-gradient(135deg,#fff1bf,#e6f4d9)}.theme-verde{background:linear-gradient(135deg,#d8f0df,#f2f6dd)}.theme-dark{background:linear-gradient(135deg,#282a36,#bd93f9)}.wedding-button{width:100%;display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:start;padding:12px;text-align:left;background:var(--card-bg);color:var(--text);border:1px solid var(--border);border-radius:10px;box-shadow:0 6px 18px var(--shadow)}.wedding-button.active{background:var(--solid-bg);color:var(--text);border-color:var(--accent);box-shadow:0 8px 22px var(--shadow),inset 3px 0 0 var(--accent)}.wedding-button.finalized{opacity:.82}.wedding-button.active span{color:var(--muted)}.wedding-button .wedding-card-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.95rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.28);box-shadow:inset 0 0 0 1px #ffffff59}.wedding-card-avatar img{width:100%;height:100%;object-fit:cover}.wedding-card-body{display:grid;gap:5px;min-width:0}.wedding-card-name{min-width:0;font-weight:800;font-size:.98rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wedding-button .wedding-card-countdown,.wedding-button .wedding-card-tag{flex:0 0 auto;padding:2px 8px;border-radius:999px;font-weight:800;font-size:.68rem;white-space:nowrap}.wedding-button .wedding-card-countdown{background:var(--secondary-bg);color:var(--secondary-text)}.wedding-button .wedding-card-tag{background:var(--badge-bg);color:var(--badge-text)}.wedding-button .wedding-card-name{color:var(--text)}.wedding-card-date{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;min-width:0;font-size:.8rem;color:var(--muted)}.wedding-card-date-text{display:inline-flex;align-items:center;gap:5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wedding-card-venues{display:grid;gap:2px;min-width:0}.wedding-card-venue{display:flex;align-items:center;gap:5px;min-width:0;font-size:.76rem;color:var(--muted)}.wedding-card-venue svg{flex:0 0 auto;opacity:.8}.wedding-card-venue-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wedding-card-progress{height:5px;border-radius:999px;background:var(--badge-bg);overflow:hidden}.wedding-card-progress-fill{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .3s ease}.wedding-card-stats{display:flex;flex-wrap:wrap;gap:4px 12px}.wedding-card-stat{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:700;color:var(--muted)}.wedding-card-stat svg{opacity:.85}.primary-action{width:100%}.secondary-button{background:var(--secondary-bg);color:var(--secondary-text);box-shadow:none}.close-button{width:40px;min-height:40px;height:40px;padding:0;flex:none;align-self:start;background:var(--secondary-bg);color:var(--secondary-text);font-size:1.4rem;line-height:1;box-shadow:none}.ghost-button{background:var(--card-bg);color:var(--text);box-shadow:none}.workspace{padding:24px;overflow:auto;min-width:0}.template-search{display:flex;align-items:center;gap:8px;margin:12px 0;padding:8px 12px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;color:var(--muted)}.template-search input{flex:1;min-width:0;border:none;background:transparent;box-shadow:none;padding:0;color:var(--text)}.template-search input:focus{outline:none;box-shadow:none}.template-search-count{flex:none;color:var(--muted);font-size:.8rem;font-weight:800;white-space:nowrap}.drag-order.disabled{cursor:default;opacity:.55}.autosave-status{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.85rem;font-weight:700;white-space:nowrap}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.sidebar-new{width:100%;white-space:nowrap}.topbar-new{width:auto;white-space:nowrap}.topbar h1{margin:0;font-size:clamp(1.8rem,3vw,3rem)}.topbar-title-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.payment-mode-toggle{display:inline-flex;padding:3px;gap:3px;background:var(--secondary-bg);border:1px solid var(--border);border-radius:999px}.payment-mode-option{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 16px;background:transparent;border:0;border-radius:999px;color:var(--muted-strong);font-weight:800;box-shadow:none}.payment-mode-option.active{background:var(--card-bg);color:var(--primary);box-shadow:0 2px 8px var(--shadow)}.payment-installment-preview{margin:0;padding:10px 12px;background:var(--hint-bg);border-radius:8px;color:var(--hint-text, var(--text));font-size:.9rem}.payment-receipt-label{display:grid;gap:6px}.payment-receipt-label .field-label{color:var(--muted-strong, var(--text));font-weight:700;font-size:.9rem}.payment-receipt-field{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.payment-receipt-button{width:auto}.payment-receipt-name{font-size:.85rem;color:var(--muted);overflow-wrap:anywhere}.upload-extra-actions{display:flex;justify-content:center;margin-top:8px}.camera-capture-button{display:inline-flex;align-items:center;gap:8px;width:auto;min-height:0;padding:9px 16px;border-radius:8px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);font-weight:800;cursor:pointer}.camera-capture-button:hover{border-color:var(--accent);color:var(--primary)}.camera-capture-button svg{color:var(--accent)}.camera-capture-button input{display:none}@media(min-width:1051px){.camera-capture-button,.upload-extra-actions{display:none}}.add-cerimonialista-hint{margin:0 0 10px;color:var(--muted);font-size:.85rem}.add-cerimonialista-form{grid-template-columns:minmax(160px,1fr) minmax(180px,1fr) auto}.error-fallback{max-width:460px;margin:18vh auto;padding:28px;text-align:center;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 50px var(--shadow)}.error-fallback h2{margin:0 0 8px}.error-fallback p{color:var(--muted);margin:0 0 16px}.error-fallback button{width:auto}.tab-help-row{display:flex;justify-content:flex-end;margin-bottom:6px}.tab-help-button{display:inline-flex;align-items:center;gap:6px;width:auto;min-height:0;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:var(--card-bg);color:var(--muted-strong, var(--muted));font-size:.8rem;font-weight:800;cursor:pointer}.tab-help-button:hover{color:var(--primary);border-color:var(--accent)}.tab-help-button svg{color:var(--accent)}.wedding-countdown{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));font-size:.82rem;font-weight:800;white-space:nowrap}.wedding-countdown svg{color:var(--accent)}.topbar p{margin:6px 0 0;color:var(--muted)}.topbar-locations{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:4px;font-size:.85rem}.topbar-locations span{display:inline-flex;align-items:center;gap:5px}.topbar-locations svg{color:var(--accent);flex:none}.topbar-heading{display:flex;align-items:center;gap:16px;min-width:0}.couple-avatar{position:relative;flex:none;width:104px;height:104px;padding:0;border-radius:999px;overflow:hidden;background:var(--secondary-bg);box-shadow:0 0 0 2px var(--solid-bg),0 0 0 4px var(--accent),0 10px 24px var(--shadow);cursor:pointer}.couple-avatar img{width:100%;height:100%;object-fit:cover;transform-origin:center}.couple-avatar-initials{display:grid;place-items:center;width:100%;height:100%;color:var(--primary);font-size:2.3rem;font-weight:900;letter-spacing:.02em}.couple-avatar-edit{position:absolute;right:4px;bottom:4px;display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:var(--accent);color:#fff;box-shadow:0 0 0 2px var(--solid-bg)}.couple-photo-modal{width:min(560px,100%)}.couple-photo-modal .modal-header{align-items:center}.couple-photo-modal .modal-header>div:first-child{min-width:0}.couple-photo-modal .modal-header-actions{flex-wrap:nowrap}.couple-photo-editor{display:grid;justify-items:center;gap:22px}.couple-photo-frame{position:relative;width:min(460px,78vw);height:min(460px,78vw);border-radius:999px;overflow:hidden;background:var(--secondary-bg);box-shadow:inset 0 0 0 1px var(--border),0 0 0 5px color-mix(in srgb,var(--accent) 35%,transparent)}.couple-photo-frame.has-photo{cursor:grab;touch-action:none}.couple-photo-frame.has-photo:active{cursor:grabbing}.couple-photo-frame img{width:100%;height:100%;object-fit:cover;transform-origin:center;-webkit-user-select:none;user-select:none;pointer-events:none}.couple-photo-empty{display:grid;place-items:center;gap:10px;width:100%;height:100%;padding:0 32px;color:var(--muted);font-weight:700;text-align:center}.couple-photo-zoom{display:grid;gap:8px;justify-items:center;width:min(360px,70vw);color:var(--muted);font-size:.84rem;font-weight:800}.couple-photo-zoom input[type=range]{width:100%;min-height:auto;accent-color:var(--accent)}.couple-photo-actions{display:flex;gap:10px}.wedding-palette-menu{position:relative;display:inline-flex;align-items:center;gap:8px}.wedding-palette-label{color:var(--muted);font-size:.8rem;font-weight:800;letter-spacing:.01em}.wedding-palette-trigger{width:76px;height:32px;display:flex;align-items:center;gap:0;padding:3px;background:var(--solid-bg);border:1px solid var(--border);border-radius:999px;box-shadow:0 6px 16px var(--shadow);cursor:pointer}.wedding-palette-trigger span{display:block;border-radius:999px}.wedding-palette-trigger span{width:24px;height:24px;border:2px solid var(--solid-bg);box-shadow:0 0 0 1px var(--border),0 6px 16px var(--shadow)}.wedding-palette-trigger span+span{margin-left:-6px}.color-palette-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.color-palette-fields input[type=color]{height:44px;padding:4px}.palette-fig{position:absolute;top:calc(100% + 10px);left:0;z-index:20;display:none;flex-direction:column;gap:12px;width:248px;padding:14px;background:var(--solid-bg);border:1px solid color-mix(in srgb,var(--border),transparent 30%);border-radius:14px;box-shadow:0 18px 48px var(--shadow),0 2px 6px color-mix(in srgb,var(--shadow),transparent 40%)}.wedding-palette-menu.open .palette-fig{display:flex}.palette-fig-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.palette-fig-slot{display:flex;flex-direction:column;align-items:center;gap:5px;padding:0;background:transparent;border:none;color:var(--muted);font-size:.6rem;font-weight:700;cursor:pointer}.palette-fig-slot-chip{width:100%;height:30px;border-radius:9px;border:1px solid color-mix(in srgb,var(--border),transparent 20%);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff,transparent 80%);transition:transform .12s ease,box-shadow .12s ease}.palette-fig-slot small{letter-spacing:-.01em}.palette-fig-slot.active .palette-fig-slot-chip{box-shadow:0 0 0 2px var(--solid-bg),0 0 0 4px var(--accent)}.palette-fig-slot.active{color:var(--text)}.palette-fig-sv{position:relative;width:100%;height:150px;border-radius:11px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border),transparent 40%);cursor:crosshair;touch-action:none}.palette-fig-sv-thumb{position:absolute;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:999px;border:3px solid #fff;box-shadow:0 0 0 1px #00000059,0 1px 4px #0006;pointer-events:none}.palette-fig-hue{position:relative;width:100%;height:14px;border-radius:999px;cursor:pointer;touch-action:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border),transparent 40%);background:linear-gradient(to right,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.palette-fig-hue-thumb{position:absolute;top:50%;width:18px;height:18px;transform:translate(-50%,-50%);border-radius:999px;border:3px solid #fff;box-shadow:0 0 0 1px #00000059,0 1px 4px #0006;pointer-events:none}.palette-fig-hexrow{display:flex;align-items:center;gap:0;height:34px;padding:0 4px 0 0;background:var(--card-bg);border:1px solid var(--border);border-radius:9px;overflow:hidden}.palette-fig-hex-tag{display:grid;place-items:center;align-self:stretch;padding:0 10px;background:color-mix(in srgb,var(--border),transparent 55%);color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.04em}.palette-fig-hex-hash{padding:0 2px 0 10px;color:var(--muted);font-weight:700}.palette-fig-hex-input{flex:1;min-width:0;height:100%;padding:0 6px;border:none;background:transparent;color:var(--text);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.04em}.palette-fig-hex-input:focus{outline:none}.palette-fig-hex-preview{width:24px;height:24px;border-radius:7px;border:1px solid color-mix(in srgb,var(--border),transparent 20%)}.palette-fig-swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--border),transparent 45%)}.palette-fig-swatch{aspect-ratio:1;padding:0;border:1px solid color-mix(in srgb,var(--border),transparent 30%);border-radius:7px;box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff,transparent 82%);cursor:pointer;transition:transform .1s ease}.palette-fig-swatch:hover{transform:scale(1.12)}.palette-fig-swatch.active{box-shadow:0 0 0 2px var(--solid-bg),0 0 0 3px var(--text)}.icon-button{width:42px;padding:0}.metrics{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);grid-template-columns:none;gap:12px;margin:16px 0;overflow-x:auto;padding-bottom:4px}.metric{position:relative;display:grid;gap:2px;padding:11px 14px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);box-shadow:0 12px 30px var(--shadow)}.metric-info{display:grid;gap:2px;min-width:0}.metric svg{position:absolute;top:12px;right:13px;width:18px;height:18px;color:var(--primary)}.metric-info>span{padding-right:24px}.metric span{color:var(--muted);font-size:.82rem}.metric strong{font-size:1.12rem;overflow-wrap:anywhere}.budget-input-metric .currency-input{min-height:30px;padding:4px 8px;font-size:1.05rem;font-weight:800}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);margin-bottom:16px;overflow-x:auto}.tabs button{min-height:42px;padding:0 12px;color:var(--muted-strong);background:transparent;border-bottom:3px solid transparent;font-weight:800}.tabs button.active{color:var(--primary);border-bottom-color:var(--accent)}.table-section,.module{display:grid;gap:10px}.module-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap}.module-action{width:auto}.service-filters{display:grid;gap:10px;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 22px var(--shadow)}.filter-banner-title{display:flex;align-items:center;gap:8px;color:var(--text)}.filter-banner-title svg{color:var(--primary)}.filter-banner-title span{color:var(--muted);font-size:.88rem;font-weight:800}.add-service-button{margin-left:auto;width:auto}.filter-controls{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.service-filters label{min-width:180px}.chip-filter-controls{align-items:flex-start}.chip-filter-controls>.secondary-button{align-self:end;width:auto;min-height:34px}.chip-filter-group{display:grid;gap:6px}.chip-filter-group>span{color:var(--muted);font-size:.78rem;font-weight:900}.chip-filter-group>div{display:flex;gap:6px;flex-wrap:wrap}.filter-chip{width:auto;min-height:34px;padding:7px 10px;background:var(--card-bg);border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.84rem;font-weight:800;box-shadow:none}.filter-chip:hover,.filter-chip:focus-visible,.filter-chip.active{color:var(--secondary-text);background:var(--secondary-bg);border-color:var(--accent)}.icon-filter-chip{display:inline-flex;align-items:center;gap:7px}.icon-filter-chip svg{flex:0 0 auto}.icon-filter-chip.active{color:#fff;border-color:transparent;box-shadow:0 8px 18px var(--shadow)}.icon-filter-chip.todos.active{background:var(--primary)}.icon-filter-chip.queremos.active,.icon-filter-chip.fechado.active{background:#7fb58f}.icon-filter-chip.nao_queremos.active,.icon-filter-chip.descartado.active{background:#d85f83}.icon-filter-chip.em_duvida.active,.icon-filter-chip.nao_visto.active{background:#d7b75f}.icon-filter-chip.pesquisando.active{background:#88add2}.table-grid{display:grid;gap:10px;align-items:center;padding:10px;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 22px var(--shadow)}.tg-cell{display:contents}.header{background:transparent;border:0;color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase;box-shadow:none}.sort-header{min-height:34px;display:flex;align-items:center;justify-content:flex-start;gap:6px;padding:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;box-shadow:none}.sort-header.active{color:var(--primary)}.sort-indicator{color:var(--accent);font-size:.9rem}.currency-input{text-align:right;font-variant-numeric:tabular-nums}.compact-button{min-height:40px;padding:9px 10px;white-space:nowrap}.compact-icon-button{width:40px;min-width:40px;height:40px;min-height:40px;display:grid;place-items:center;padding:0;flex:0 0 40px}.table-grid strong,.table-grid small{display:block}.inline-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(120px,180px) minmax(90px,120px) auto;gap:8px;align-items:center;margin-bottom:8px}.vendor-form{display:grid;gap:16px}.template-form{display:grid;grid-template-columns:minmax(220px,1fr) 170px 150px auto;gap:8px;align-items:center;margin-bottom:8px}.template-grid{grid-template-columns:112px minmax(220px,1fr) 170px 150px 110px}.template-grid.tpl-ceremony{grid-template-columns:112px minmax(200px,1fr) minmax(170px,1fr) 110px}.template-grid.tpl-reception{grid-template-columns:112px minmax(180px,1fr) 110px minmax(150px,1fr) minmax(150px,1fr) 110px}.template-form.tpl-ceremony-form{grid-template-columns:minmax(220px,1fr) minmax(170px,1fr) auto}.template-form.tpl-reception-form{grid-template-columns:minmax(180px,1fr) 120px minmax(150px,1fr) minmax(150px,1fr) auto}.template-rowctl{display:flex;align-items:center;gap:4px}.template-rowctl input[type=checkbox],.service-rowctl input[type=checkbox],.reorder-rowctl input[type=checkbox],.reorder-selectall input[type=checkbox]{flex:none;width:16px;height:16px;min-height:0;margin:0;padding:0;cursor:pointer;accent-color:var(--accent)}.template-drag-handle{display:inline-grid;place-items:center;width:26px;height:30px;padding:0;border:none;background:transparent;color:var(--muted);cursor:grab;touch-action:none}.template-drag-handle:active{cursor:grabbing}.template-order-badge{min-width:22px;text-align:center;font-weight:900;color:var(--badge-text)}.template-grid.is-selected{outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}.template-reorder-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--muted)}.template-reorder-bar .reorder-selectall{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.template-reorder-bar .reorder-count{font-weight:700;color:var(--text)}.template-reorder-hint{font-size:.8rem;color:var(--muted)}.reorder-rowctl{display:flex;align-items:center;gap:4px}.reorder-drag-handle{display:inline-grid;place-items:center;width:28px;height:30px;padding:0;border:none;background:transparent;color:var(--muted);cursor:grab;touch-action:none}.reorder-drag-handle:active{cursor:grabbing}.reorder-order-badge{min-width:22px;text-align:center;font-weight:900;color:var(--badge-text)}.reorder-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:.82rem;color:var(--muted)}.reorder-bar .reorder-count{font-weight:700;color:var(--text)}.reorder-hint{font-size:.8rem;color:var(--muted)}.table-grid.is-selected,.ordered-row.is-selected{outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}.hint-panel{padding:12px 14px;background:var(--hint-bg);border:1px solid var(--hint-border);border-radius:8px;color:var(--hint-text);font-weight:700}.danger-button{min-height:40px;border-radius:6px;padding:9px 12px;background:var(--danger-bg);color:var(--danger-text);font-weight:800}.danger-icon-button{width:40px;min-width:40px;height:40px;min-height:40px;display:grid;place-items:center;padding:0}.template-entry-form{display:grid;gap:16px;padding:14px;background:color-mix(in srgb,var(--card-bg) 82%,var(--solid-bg));border:1px solid var(--border);border-radius:8px}.template-entry-form label{gap:10px}.template-row.dragging{opacity:.55;outline:3px solid var(--focus)}.drag-order{display:inline-grid;place-items:center;width:42px;height:34px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text);font-weight:900;-webkit-user-select:none;user-select:none}.drag-order:before{content:"⋮⋮";margin-right:4px;color:var(--accent);letter-spacing:-3px}.item-list{display:grid;gap:8px}.ordered-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 22px var(--shadow)}.ordered-row{grid-template-columns:40px 1fr minmax(120px,240px)}.ordered-row strong{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:var(--badge-bg);color:var(--badge-text)}.ceremony-grid-header,.ceremony-row,.reception-grid-header,.reception-row{display:grid;gap:12px}.ceremony-grid-header,.ceremony-row{grid-template-columns:84px minmax(180px,1.2fr) minmax(150px,.9fr) minmax(130px,.8fr) minmax(160px,1fr) 40px}.reception-grid-header,.reception-row{grid-template-columns:84px minmax(180px,1.1fr) 96px minmax(150px,.8fr) minmax(210px,1.1fr) 40px}.ceremony-grid-header,.reception-grid-header{align-items:center;padding:8px 12px;color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.ceremony-row,.reception-row{align-items:center}.ceremony-row>*,.reception-row>*,.ceremony-grid-header>*,.reception-grid-header>*{min-width:0}.reception-time-input{width:96px;min-height:34px;padding:6px 8px;font-size:.86rem;font-weight:800}.ceremony-row.dragging,.reception-row.dragging{opacity:.55;outline:3px solid var(--focus)}.ceremony-row strong,.reception-row strong{cursor:grab;font-size:.9rem}.ceremony-row strong:before,.reception-row strong:before{content:"⋮⋮";margin-right:3px;color:var(--accent);letter-spacing:-3px}.ceremony-title-button{min-width:0;display:grid;gap:4px;padding:0;background:transparent;border:0;color:var(--text);font-size:.98rem;font-weight:800;line-height:1.25;text-align:left;cursor:pointer;overflow-wrap:anywhere}.ceremony-title-button:hover{color:var(--primary)}.ceremony-title-button small,.ceremony-row>small,.reception-row>small,.ceremony-music-text{color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.35;overflow-wrap:anywhere}.ceremony-people-list{display:grid;gap:3px;margin:0;padding:0;color:var(--muted);font-size:.82rem;font-weight:700;line-height:1.35;list-style:none}.ceremony-people-list li{min-width:0;overflow-wrap:anywhere}.ceremony-people-list li:before{content:"•";margin-right:6px;color:var(--accent)}.ceremony-music-yt{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%}.ceremony-music-title{min-width:0;color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ceremony-music-button{width:fit-content;flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--input-bg);color:var(--primary);font-weight:800;cursor:pointer}.ceremony-music-button:hover{border-color:var(--accent)}.ceremony-template-layout{gap:14px}.ceremony-entry-modal{width:min(640px,100%);gap:0;padding:0;overflow:hidden auto}.ceremony-entry-header{align-items:flex-start;padding:20px 22px;background:linear-gradient(135deg,color-mix(in srgb,var(--hint-bg) 82%,white),var(--solid-bg));border-bottom:1px solid var(--border)}.ceremony-entry-header>div:first-child{min-width:0}.ceremony-entry-header .modal-header-actions{flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;max-width:100%}.ceremony-entry-header .modal-header-actions button:not(.close-button){min-width:0}.ceremony-entry-header h2{margin:3px 0 4px;color:var(--text);font-size:1.35rem;line-height:1.12}.ceremony-entry-header p{margin:0;max-width:360px;color:var(--muted-strong);line-height:1.35}.ceremony-entry-kicker{color:var(--primary);font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.ceremony-entry-form{display:grid}.ceremony-entry-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:18px 22px 8px}.ceremony-entry-fields label{display:grid;gap:6px;color:var(--muted-strong);font-size:.85rem;font-weight:900}.ceremony-entry-fields input,.ceremony-entry-fields textarea{background:var(--card-bg);border-color:color-mix(in srgb,var(--border) 85%,var(--accent))}.ceremony-notes-field{grid-column:1 / -1}.ceremony-participants-panel{display:grid;gap:10px;margin:10px 22px 22px;padding:16px;background:color-mix(in srgb,var(--hint-bg) 58%,var(--card-bg));border:1px solid color-mix(in srgb,var(--border) 78%,var(--accent));border-radius:8px}.modal-subheader{display:flex;align-items:center;justify-content:space-between;gap:10px}.modal-subheader strong{color:var(--primary);font-size:.95rem}.modal-subheader span{color:var(--muted);font-size:.8rem;font-weight:800}.participant-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center}.participant-form input:nth-child(3){grid-column:1 / -1}.participant-form button{grid-column:1 / -1;justify-self:end;min-width:44px}.participant-list{display:grid;gap:8px}.participant-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(140px,1fr) auto;gap:10px;align-items:center;padding:10px;background:var(--solid-bg);border:1px solid var(--border);border-radius:6px;cursor:grab}.participant-row.dragging{opacity:.55;outline:3px solid var(--focus)}.participant-row span{color:var(--text);font-weight:800;overflow-wrap:anywhere}.participant-row span:before{content:"⋮⋮";margin-right:7px;color:var(--accent);letter-spacing:-3px}.participant-row small{color:var(--muted);overflow-wrap:anywhere}.empty{min-height:50vh;display:grid;place-items:center;color:var(--muted)}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-panel{width:min(620px,100%);max-height:calc(100vh - 36px);overflow:auto;display:grid;gap:16px;padding:22px;background:var(--solid-bg);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 28px 90px var(--big-shadow)}.template-modal{width:min(1040px,100%)}.vendor-modal{width:min(560px,100%)}.dashboard-modal{width:min(1180px,100%)}.dashboard-summary{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.dashboard-metric{min-width:0;display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;padding:12px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 22px var(--shadow)}.dashboard-metric svg{width:18px;height:18px;color:var(--primary)}.dashboard-metric span{min-width:0;color:var(--muted);font-size:.82rem;font-weight:800}.dashboard-metric strong{grid-column:1 / -1;min-width:0;font-size:1.05rem;overflow-wrap:anywhere}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.chart-card{min-width:0;display:grid;gap:10px;padding:14px;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 22px var(--shadow)}.chart-card h3{margin:0;font-size:1rem}.chart-canvas{height:260px;min-height:260px}.chart-breakdown{display:flex;gap:8px;flex-wrap:wrap}.chart-breakdown span{padding:6px 8px;background:var(--secondary-bg);border-radius:999px;color:var(--secondary-text);font-size:.82rem;font-weight:800}.chart-breakdown strong{color:var(--primary)}.chart-empty{min-height:260px;display:grid;place-items:center;color:var(--muted);background:var(--secondary-bg);border-radius:6px}.stats-table{display:grid;gap:2px}.stats-row{display:grid;grid-template-columns:minmax(0,2fr) 1fr 1fr 56px;gap:10px;align-items:center;padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.stats-row.stats-head{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase;border-bottom:1px solid var(--border)}.stats-user{display:grid;gap:1px;min-width:0}.stats-user strong{font-size:.9rem}.stats-user small{color:var(--muted);font-size:.74rem;overflow-wrap:anywhere}.stats-logins{justify-self:end;font-weight:900;font-variant-numeric:tabular-nums}.stats-role-cell{display:inline-flex;align-items:center;gap:8px}.stats-remove{display:inline-grid;place-items:center;width:26px;min-height:0;height:26px;padding:0;border:1px solid color-mix(in srgb,var(--danger-text) 50%,var(--border));border-radius:6px;background:transparent;color:var(--danger-text);cursor:pointer}.stats-remove:hover{background:var(--danger-bg)}@media(max-width:560px){.stats-row{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.stats-row.stats-head{display:none}.stats-row>span:nth-child(2):before{content:"Papel: ";color:var(--muted)}.stats-row>span:nth-child(3):before{content:"Último: ";color:var(--muted)}}.modal-header{display:flex;justify-content:space-between;gap:14px;align-items:start}.modal-header>div:first-child{min-width:0;flex:1 1 auto}.modal-header-actions{flex-shrink:0}.modal-panel:not(.dashboard-modal):not(.ceremony-entry-modal)>.modal-header,.modal-panel:not(.dashboard-modal):not(.ceremony-entry-modal)>form>.modal-header{padding:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--hint-bg) 82%,white),var(--solid-bg));border:1px solid var(--border);border-radius:8px}.modal-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.modal-header h2{margin:0;font-size:1.35rem;line-height:1.12}.modal-header p{margin:4px 0 0;color:var(--muted-strong);line-height:1.35}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.upload-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 12px;border-radius:6px;background:var(--primary);color:var(--primary-contrast);font-weight:800;cursor:pointer}.upload-button input{display:none}.empty-inline{margin:0;color:var(--muted)}.app-shell.sidebar-collapsed{grid-template-columns:1fr}.app-shell.sidebar-collapsed .menu-toggle{display:inline-flex}.app-shell.sidebar-collapsed .menu-backdrop{display:block}.app-shell.sidebar-collapsed .sidebar{position:fixed;top:0;left:0;height:100vh;width:min(330px,88vw);z-index:40;min-height:auto;transform:translate(-100%);transition:transform .25s ease;overflow-y:auto}.app-shell.sidebar-collapsed .sidebar.open{transform:translate(0)}.app-shell.sidebar-collapsed .sidebar-close{display:inline-flex}.app-shell.sidebar-collapsed .workspace{padding-top:68px}@media(min-width:1051px){.app-shell{height:100vh}.sidebar{height:100vh;min-height:0;overflow-y:auto}.workspace{display:flex;flex-direction:column;min-height:0;overflow:hidden}.workspace>*:not(.workspace-body){flex-shrink:0}.workspace-body{flex:1 1 auto;min-height:0;min-width:0;overflow:auto;padding-right:2px}.workspace-body .table-grid.header,.workspace-body .ceremony-grid-header,.workspace-body .reception-grid-header{position:sticky;top:0;z-index:6;background:var(--app-bg)}.workspace .metrics{max-height:320px;transition:max-height .28s ease,opacity .2s ease,margin .28s ease}.workspace .couple-avatar{transition:width .25s ease,height .25s ease}.workspace .topbar h1{transition:font-size .25s ease}.workspace.header-collapsed .metrics{max-height:0;margin:0;padding:0;opacity:0;overflow:hidden;pointer-events:none}.workspace.header-collapsed .couple-avatar{width:52px;height:52px}.workspace.header-collapsed .topbar p{display:none}.workspace.header-collapsed .topbar h1{font-size:1.5rem}}@media(max-width:1050px){.app-shell{grid-template-columns:1fr}.menu-toggle{display:inline-flex}.menu-backdrop{display:block}.sidebar{position:fixed;top:0;left:0;height:100vh;width:min(330px,88vw);z-index:40;min-height:auto;transform:translate(-100%);transition:transform .25s ease;overflow-y:auto}.sidebar.open{transform:translate(0)}.sidebar-close{display:inline-flex}.sidebar-collapse{display:none}.workspace{padding-top:68px}.dashboard-summary,.dashboard-grid,.inline-form,.template-form,.template-grid,.ceremony-row,.reception-row,.ceremony-entry-fields,.participant-form,.participant-row,.form-row{grid-template-columns:1fr}.header,.ceremony-grid-header,.reception-grid-header{display:none}.table-grid:not(.header){padding:14px;gap:12px}.tg-cell{display:block;min-width:0}.table-grid:not(.header)>[data-label]:before{content:attr(data-label);display:block;margin-bottom:4px;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.table-grid:not(.header)>*{justify-self:stretch}.table-grid:not(.header) .money-cell{justify-self:start}.table-grid:not(.header) .service-order{display:none}.table-grid:not(.header) .danger-icon-button{justify-self:start}.cell-empty-dash{display:none}.services-grid:not(.header),.guests-grid:not(.header),.vendor-row:not(.vendor-header),.ceremony-row,.reception-row{position:relative}.services-grid:not(.header)>.danger-icon-button,.guests-grid:not(.header)>.danger-icon-button,.vendor-row:not(.vendor-header)>.danger-icon-button,.ceremony-row>.danger-icon-button,.reception-row>.danger-icon-button{position:absolute;top:12px;right:12px;justify-self:auto}.services-grid:not(.header)>:first-child,.guests-grid:not(.header)>:first-child{padding-right:48px}.vendor-row:not(.vendor-header) .vendor-title-row{padding-right:44px}}@media(max-width:560px){.workspace{padding:64px 16px 16px}.topbar{align-items:stretch;flex-direction:column}.topbar-actions{justify-content:flex-start}.couple-avatar{width:84px;height:84px}.couple-avatar-initials{font-size:2rem}.modal-header{align-items:stretch;flex-direction:column}.modal-header-actions{justify-content:stretch}.modal-header-actions button:not(.close-button){flex:1}.wedding-palette-menu .palette-fig{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(300px,calc(100vw - 24px));max-height:calc(100vh - 48px);overflow-y:auto}.theme-menu-options{left:0;right:auto;width:min(180px,calc(100vw - 24px))}}
