@import url(https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap);:root{--bg:#f7f5f0;--surface:#fff;--text:#1a1a18;--muted:#888880;--accent:#2d6a4f;--accent-light:#e8f4ee;--border:#e8e6e0;--warn:#c8601a;--warn-light:#fff0e6;--blue:#2952a3;--blue-light:#ebf0fb;--sidebar-w:220px;--radius:16px;--radius-sm:10px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#f7f5f0;background:var(--bg);color:#1a1a18;color:var(--text);font-family:DM Sans,sans-serif;font-size:14px;min-height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#e8e6e0;background:var(--border);border-radius:3px}button{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}.modal-backdrop{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a1a1866;display:flex;inset:0;justify-content:center;position:fixed;z-index:200}.modal{animation:fadeUp .25s ease;background:#fff;background:var(--surface);border:1px solid #e8e6e0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius);max-height:90vh;max-width:90vw;overflow-y:auto;padding:32px;width:480px}.modal-title{font-family:"DM Serif Display",serif;font-size:22px;font-weight:400;margin-bottom:24px}.form-group{margin-bottom:16px}.form-label{color:#888880;color:var(--muted);display:block;font-size:11px;font-weight:500;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.form-input,.form-select,.form-textarea{background:#f7f5f0;background:var(--bg);border:1px solid #e8e6e0;border:1px solid var(--border);border-radius:8px;color:#1a1a18;color:var(--text);font-family:inherit;font-size:14px;outline:none;padding:10px 14px;transition:border-color .15s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{background:#fff;background:var(--surface);border-color:#2d6a4f;border-color:var(--accent)}.form-textarea{min-height:80px;resize:vertical}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1 1}.btn{border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s}.btn-primary{background:#2d6a4f;background:var(--accent);color:#fff}.btn-primary:hover{background:#235a41}.btn-ghost{background:#0000;color:#888880;color:var(--muted)}.btn-ghost:hover{background:#f7f5f0;background:var(--bg);color:#1a1a18;color:var(--text)}.btn-danger{background:#fde8e8;color:#c0392b}.btn-danger:hover{background:#f5c6c6}.modal-actions{border-top:1px solid #e8e6e0;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:20px}.fab{align-items:center;background:#2d6a4f;background:var(--accent);border:none;border-radius:50%;bottom:32px;box-shadow:0 4px 20px #2d6a4f66;color:#fff;cursor:pointer;display:flex;font-size:24px;height:52px;justify-content:center;position:fixed;right:40px;transition:transform .2s,box-shadow .2s;width:52px;z-index:100}.fab:hover{box-shadow:0 6px 28px #2d6a4f80;transform:scale(1.08)}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f7f5f0 25%,#e8e6e0 50%,#f7f5f0 75%);background:linear-gradient(90deg,var(--bg) 25%,var(--border) 50%,var(--bg) 75%);background-size:200% 100%;border-radius:6px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sidebar{background:var(--surface);border-right:1px solid var(--border);bottom:0;display:flex;flex-direction:column;left:0;padding:32px 0;position:fixed;top:0;width:var(--sidebar-w);z-index:100}.sidebar-logo{border-bottom:1px solid var(--border);padding:0 24px 28px}.sidebar-logo h1{color:var(--text);font-family:"DM Serif Display",serif;font-size:22px;letter-spacing:-.5px;line-height:1.2}.sidebar-logo span{color:var(--muted);display:block;font-size:11px;font-weight:300;letter-spacing:1px;margin-top:2px;text-transform:uppercase}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;padding:20px 12px}.nav-item{align-items:center;border-radius:8px;color:var(--muted);cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:10px;padding:10px 12px;text-decoration:none;transition:all .15s}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-item.active{background:var(--accent-light);color:var(--accent);font-weight:500}.nav-icon{flex-shrink:0;font-size:15px;text-align:center;width:20px}.sidebar-footer{border-top:1px solid var(--border);padding:16px 24px}.footer-label{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.avatar-row{display:flex;gap:8px}.avatar{align-items:center;border-radius:50%;cursor:pointer;display:flex;font-size:11px;font-weight:500;height:28px;justify-content:center;transition:transform .15s;width:28px}.avatar:hover{transform:scale(1.1)}.av1{background:#d4e6dc;color:#2d6a4f}.av2{background:#f0e6d4;color:#8b5e3c}.av3{background:#d4dcf0;color:#2952a3}.logout-btn{align-items:center;background:none;border:none;color:var(--muted);cursor:pointer;display:flex;font-size:12px;letter-spacing:.2px;margin-top:12px;padding:8px 0;transition:color .15s;width:100%}.logout-btn:hover{color:var(--warn)}.layout{display:flex;min-height:100vh}.layout-main{flex:1 1;margin-left:var(--sidebar-w);max-width:calc(100vw - var(--sidebar-w));padding:40px 48px}@media (max-width:768px){.layout-main{margin-left:0;max-width:100vw;padding:20px 16px 80px}}.login-screen{align-items:center;background:var(--bg);display:flex;justify-content:center;min-height:100vh;padding:24px}.login-card{animation:fadeUp .3s ease;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:380px;padding:48px 40px;width:100%}.login-header{margin-bottom:36px;text-align:center}.login-header h1{color:var(--text);font-family:"DM Serif Display",serif;font-size:28px;letter-spacing:-.5px;line-height:1.2}.login-header span{color:var(--muted);display:block;font-size:11px;font-weight:300;letter-spacing:1px;margin-top:4px;text-transform:uppercase}.login-error{background:var(--warn-light);border-radius:8px;color:var(--warn);font-size:13px;margin-bottom:16px;padding:10px 14px}.login-btn{margin-top:8px;padding:12px;width:100%}.mini-cal{width:100%}.cal-month-nav{margin-bottom:16px}.cal-month-label{font-size:17px}.cal-nav{border-radius:4px;font-size:18px;padding:4px 8px}.cal-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr);text-align:center}.cal-day-name{padding:4px 0}.cal-day{border-radius:6px;cursor:pointer;font-size:13px;line-height:1;padding:6px 4px;position:relative;transition:background .1s}.cal-day:hover{background:var(--bg)}.cal-day.today{background:var(--accent);color:#fff;font-weight:500}.cal-day.has-event:after{background:var(--warn);border-radius:50%;bottom:2px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px}.cal-day.today.has-event:after{background:#fff}.cal-day.other-month{color:var(--border)}.page-inici{max-width:1060px}.page-header{align-items:flex-end;margin-bottom:36px}.page-date{color:var(--muted);font-size:13px;font-weight:300;text-transform:capitalize}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr 1fr}.card{animation:fadeUp .4s ease both;transition:box-shadow .2s}.card:hover{box-shadow:0 4px 24px #0000000f}.card-wide{grid-column:span 2}.card-action{transition:opacity .1s}.event-list{display:flex;flex-direction:column;gap:10px}.event-item{align-items:center;background:var(--bg);border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:14px;padding:12px 14px;transition:background .15s}.event-item:hover{background:var(--border)}.event-date-box{min-width:36px;text-align:center}.event-date-day{font-size:18px;font-weight:500;line-height:1}.event-date-mon{color:var(--muted);font-size:10px;letter-spacing:.5px;margin-top:2px;text-transform:uppercase}.event-info{flex:1 1}.event-name{font-size:13px;font-weight:500}.event-who{color:var(--muted);font-size:11px;margin-top:2px}.event-tag{border-radius:20px;font-size:10px;font-weight:500;letter-spacing:.3px;padding:3px 8px;white-space:nowrap}.finance-summary{display:flex;gap:12px;margin-bottom:20px}.fin-stat{background:var(--bg);border-radius:var(--radius-sm);flex:1 1;padding:14px}.fin-stat-label{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:.8px;margin-bottom:6px;text-transform:uppercase}.fin-stat-value{font-family:"DM Serif Display",serif;font-size:22px;letter-spacing:-.5px}.fin-stat-value.income{color:var(--accent)}.fin-stat-value.expense{color:var(--warn)}.expense-bars{display:flex;flex-direction:column;gap:10px}.expense-info{color:var(--muted);display:flex;font-size:12px;justify-content:space-between;margin-bottom:5px}.bar-track{background:var(--border);height:5px}.bar-fill{transition:width .6s ease}.photo-grid-mini{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.photo-thumb{aspect-ratio:1;border-radius:10px;cursor:pointer;overflow:hidden;position:relative}.photo-thumb img{height:100%;object-fit:cover;transition:transform .3s;width:100%}.photo-thumb:hover img{transform:scale(1.05)}.empty-state{padding:12px 0}.empty-state button{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:13px}@media (max-width:900px){.dashboard-grid{grid-template-columns:1fr 1fr}.card-wide{grid-column:span 2}}@media (max-width:600px){.dashboard-grid{grid-template-columns:1fr}.card-wide{grid-column:span 1}.page-header{align-items:flex-start;flex-direction:column;gap:4px}}.page-calendari{max-width:1100px}.card-action:hover{opacity:.7}.cal-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr 280px}.cal-month-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.cal-month-label{font-family:"DM Serif Display",serif;font-size:20px;text-transform:capitalize}.cal-nav:hover{background:var(--bg);color:var(--text)}.cal-full-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.cal-day-name{color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.5px;padding:6px 0;text-align:center}.cal-cell{border:1px solid #0000;border-radius:8px;cursor:pointer;min-height:80px;padding:8px;transition:background .1s}.cal-cell:hover{background:var(--bg)}.cal-cell.selected,.cal-cell.today{background:var(--accent-light);border-color:var(--accent)}.cal-cell.empty{cursor:default}.cal-cell.empty:hover{background:#0000}.cell-num{color:var(--text);font-size:13px;font-weight:500;margin-bottom:4px}.cal-cell.today .cell-num{color:var(--accent);font-weight:700}.cell-events{display:flex;flex-direction:column;gap:2px}.cell-event-dot{border-radius:3px;color:#fff;font-size:10px;overflow:hidden;padding:2px 5px;text-overflow:ellipsis;white-space:nowrap}.cell-more{color:var(--muted);font-size:10px;padding:1px 4px}.events-panel{position:-webkit-sticky;position:sticky;top:40px}.event-list-full{display:flex;flex-direction:column;gap:8px}.event-full-item{align-items:center;background:var(--bg);border-radius:8px;display:flex;gap:10px;padding:10px 12px}.cat-dot{height:8px;width:8px}.cat-dot,.cat-dot-sm{border-radius:50%;flex-shrink:0}.cat-dot-sm{height:6px;width:6px}.month-event-list{display:flex;flex-direction:column;gap:6px}.month-event-item{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:6px 8px;transition:background .1s}.month-event-item:hover{background:var(--bg)}.month-event-day{color:var(--muted);font-size:12px;font-weight:500;min-width:20px}.month-event-title{color:var(--text);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:900px){.cal-layout{grid-template-columns:1fr}.events-panel{position:static}}.page-comp{max-width:1060px}.month-nav{align-items:center;display:flex;gap:16px}.cal-nav{background:none;border:none;border-radius:6px;color:var(--muted);cursor:pointer;font-size:20px;padding:4px 10px;transition:background .1s}.cal-nav:hover{background:var(--border)}.stats-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.stat-label{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.stat-value{font-family:"DM Serif Display",serif;font-size:30px;letter-spacing:-1px;line-height:1}.income-card .stat-value{color:var(--accent)}.expense-card .stat-value{color:var(--warn)}.stat-rate{color:var(--muted);font-size:12px;margin-top:6px}.comp-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.cat-bars{display:flex;flex-direction:column;gap:12px}.cat-bar-info{display:flex;font-size:13px;justify-content:space-between;margin-bottom:5px}.cat-amount{color:var(--muted);font-weight:400}.bar-track{background:var(--bg);border-radius:3px;height:6px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .5s ease}.trans-list{display:flex;flex-direction:column;gap:4px}.trans-item{align-items:center;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px;transition:background .1s}.trans-item:hover{background:var(--bg)}.trans-left{align-items:center;display:flex;gap:12px}.trans-type-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.trans-type-dot.despesa{background:var(--warn)}.trans-type-dot.ingres{background:var(--accent)}.trans-desc{font-size:13px;font-weight:500}.trans-cat{color:var(--muted);font-size:11px;margin-top:1px}.trans-right{align-items:center;display:flex;gap:8px}.trans-amount{font-size:14px;font-weight:500}.trans-amount.despesa{color:var(--warn)}.trans-amount.ingres{color:var(--accent)}.del-btn{font-size:18px;padding:0 4px}.trans-item:hover .del-btn{opacity:1}.type-toggle{display:flex;gap:8px}.type-btn{background:var(--bg);border:2px solid var(--border);border-radius:8px;color:var(--muted);cursor:pointer;flex:1 1;font-family:inherit;font-size:14px;font-weight:500;padding:10px;transition:all .15s}.type-btn.active.despesa{background:var(--warn-light);border-color:var(--warn);color:var(--warn)}.type-btn.active.ingres{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.empty-state{color:var(--muted);font-size:13px;padding:8px 0}@media (max-width:768px){.comp-layout,.stats-row{grid-template-columns:1fr}}.page-fotos{max-width:1060px}.header-actions{display:flex;gap:10px}.section-title{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:1.2px;margin-bottom:16px;text-transform:uppercase}.albums-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.album-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;overflow:hidden;transition:box-shadow .2s,transform .2s}.album-card:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.album-cover{align-items:center;background:var(--bg);display:flex;height:140px;justify-content:center}.album-cover .album-icon{font-size:40px;opacity:.5}.add-cover{border:2px dashed var(--border)}.album-info{padding:12px 14px}.album-name{font-size:13px;font-weight:500}.album-desc{color:var(--muted);font-size:11px;margin-top:3px}.photos-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.photo-card{aspect-ratio:1;background:var(--bg);border-radius:10px;cursor:pointer;overflow:hidden;position:relative}.photo-card img{display:block;height:100%;object-fit:cover;transition:transform .3s;width:100%}.photo-card:hover img{transform:scale(1.05)}.photo-del{align-items:center;background:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:1;opacity:0;position:absolute;right:6px;top:6px;transition:opacity .15s;width:24px}.photo-card:hover .photo-del{opacity:1}.photo-del:hover{background:#c0392bcc}.photo-overlay{background:linear-gradient(#0000,#0009);bottom:0;color:#fff;font-size:11px;left:0;opacity:0;padding:16px 10px 8px;position:absolute;right:0;transition:opacity .2s}.photo-card:hover .photo-overlay{opacity:1}.lightbox{align-items:center;animation:fadeIn .2s ease;background:#000000d9;display:flex;inset:0;justify-content:center;position:fixed;z-index:300}.lightbox-content{max-height:90vh;max-width:90vw;position:relative}.lightbox-content img{border-radius:12px;display:block;max-height:85vh;max-width:90vw;object-fit:contain}.lightbox-caption{color:#fff;font-size:14px;margin-top:12px;opacity:.8;text-align:center}.lightbox-close{background:#fff;border:none;border-radius:50%;color:var(--text);cursor:pointer;font-size:20px;height:36px;justify-content:center;line-height:1;position:absolute;right:-16px;top:-16px;width:36px}.empty-photos,.lightbox-close{align-items:center;display:flex}.empty-photos{flex-direction:column;gap:16px;grid-column:1/-1;padding:60px 20px;text-align:center}.empty-photos p{color:var(--muted);font-size:14px}.page-docs{max-width:900px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.docs-toolbar{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.search-input{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:inherit;font-size:14px;max-width:360px;outline:none;padding:10px 16px;transition:border-color .15s;width:100%}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--muted)}.cat-filters{display:flex;flex-wrap:wrap;gap:8px}.cat-filter{background:var(--surface);border:1px solid var(--border);border-radius:20px;color:var(--muted);cursor:pointer;font-family:inherit;font-size:12px;font-weight:500;padding:6px 14px;transition:all .15s}.cat-filter:hover{border-color:var(--text);color:var(--text)}.cat-filter.active{background:var(--accent);border-color:var(--accent);color:#fff}.doc-grid{display:flex;flex-direction:column;gap:6px}.doc-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;gap:12px;padding:14px 16px;transition:box-shadow .15s}.doc-card:hover{box-shadow:0 2px 12px #0000000f}.doc-link{color:inherit;flex:1 1;gap:14px;text-decoration:none}.doc-icon-wrap,.doc-link{align-items:center;display:flex}.doc-icon-wrap{border-radius:10px;flex-shrink:0;height:40px;justify-content:center;width:40px}.doc-icon{font-size:18px}.doc-body{flex:1 1;min-width:0}.doc-name{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:11px;gap:10px;margin-top:3px}.doc-cat-tag{background:var(--accent-light);border-radius:10px;color:var(--accent);font-weight:500;padding:1px 7px}.del-btn{background:none;border:none;border-radius:4px;color:var(--muted);cursor:pointer;font-size:20px;line-height:1;opacity:0;padding:0 6px;transition:opacity .1s}.doc-card:hover .del-btn{opacity:1}.del-btn:hover{background:#fde8e8;color:#c0392b}.empty-docs{align-items:center;display:flex;flex-direction:column;gap:16px;padding:60px 20px;text-align:center}.empty-icon{font-size:48px;opacity:.3}.empty-docs p{color:var(--muted);font-size:14px}.page-config{max-width:800px}.page-header{margin-bottom:32px}.page-title{font-family:"DM Serif Display",serif;font-size:32px;font-weight:400;letter-spacing:-.5px}.config-layout{display:flex;flex-direction:column;gap:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.card-title{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:1.2px;text-transform:uppercase}.card-action{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:12px;font-weight:500}.members-list{display:flex;flex-direction:column;gap:12px}.member-row{background:var(--bg);border-radius:10px;gap:16px;padding:12px}.avatar-lg,.member-row{align-items:center;display:flex}.avatar-lg{border-radius:50%;font-size:15px;font-weight:500;height:40px;justify-content:center;width:40px}.member-info{flex:1 1}.member-name{font-size:14px;font-weight:500}.member-rol{color:var(--muted);font-size:11px;margin-top:2px}.btn-ghost-sm{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;font-family:inherit;font-size:12px;padding:6px 12px;transition:all .15s}.btn-ghost-sm:hover{border-color:var(--text);color:var(--text)}.about-list{display:flex;flex-direction:column;gap:12px}.about-row{border-bottom:1px solid var(--border);display:flex;font-size:14px;justify-content:space-between;padding-bottom:12px}.about-row:last-child{border-bottom:none;padding-bottom:0}.about-key{color:var(--muted);font-size:13px}.tags-list{display:flex;flex-wrap:wrap;gap:10px}.tag-pill{border-radius:20px;font-size:13px;font-weight:500;padding:6px 14px}
/*# sourceMappingURL=main.cec70e4d.css.map*/