:root{--primary-color: #3498db;--primary-hover: #2980b9;--danger-color: #e74c3c;--danger-hover: #c0392b;--success-color: #27ae60;--warning-color: #f39c12;--light-gray: #f4f7f9;--medium-gray: #e1e8ed;--dark-gray: #cad3db;--text-primary: #2c3e50;--text-secondary: #8a9aa8;--background-color: #ffffff;--border-radius-md: 8px;--border-radius-lg: 12px;--box-shadow: 0 4px 15px rgba(44, 62, 80, .08);--header-height: 70px}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--light-gray);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layout-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}.main-header{height:var(--header-height);background-color:var(--background-color);box-shadow:0 2px 4px #0000000d;padding:0 2rem;position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--medium-gray)}.header-content{max-width:1200px;height:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo-container{display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:opacity .2s}.logo-container:hover{opacity:.8}.header-logo{height:40px;width:auto;object-fit:contain}.header-title{font-size:1.2rem;font-weight:600;color:var(--text-primary)}.header-actions{display:flex;align-items:center;gap:1rem}.container{max-width:1200px;margin:0 auto;padding:2rem}.center-screen{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:1rem}.card{background-color:var(--background-color);padding:2rem;border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow);margin-bottom:1.5rem}.login-card{width:100%;max-width:420px;padding:3rem}h1{font-size:2rem;font-weight:700;margin:0;color:var(--text-primary)}h2{font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;color:var(--primary-color);border-bottom:1px solid var(--medium-gray);padding-bottom:.75rem}h3{font-size:1.1rem;font-weight:600;margin:1.5rem 0 .5rem;color:var(--text-primary)}.title{text-align:center;font-size:2rem;margin-bottom:2rem;font-weight:700}.screen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.input{width:100%;padding:1rem;border-radius:var(--border-radius-md);border:1px solid var(--dark-gray);font-size:1rem;background-color:#fcfdfe;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;margin-top:.5rem}.input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db40}.login-form .input{margin-bottom:1.25rem}label{display:block;font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:.2rem}.button{width:100%;padding:1rem;border:none;background:var(--primary-color);color:#fff;font-size:1rem;font-weight:600;border-radius:var(--border-radius-md);cursor:pointer;transition:background-color .2s,transform .1s;display:inline-block;text-align:center}.button:hover{background:var(--primary-hover)}.button:active{transform:scale(.98)}.button-secondary{padding:.6rem 1rem;border:1px solid var(--dark-gray);background-color:#fff;color:var(--text-primary);border-radius:var(--border-radius-md);cursor:pointer;font-weight:500;transition:all .2s;white-space:nowrap;flex-shrink:0}.button-secondary:hover{background-color:var(--medium-gray);border-color:var(--text-secondary)}.button-danger{padding:.6rem 1rem;border:none;background-color:var(--danger-color);color:#fff;border-radius:var(--border-radius-md);font-weight:500;cursor:pointer;transition:background-color .2s;flex-shrink:0}.button-danger:hover{background-color:var(--danger-hover)}.text-link{background:none;border:none;color:var(--primary-color);cursor:pointer;text-decoration:underline;font-weight:600;font-size:.9rem;padding:0}.text-link:hover{color:var(--primary-hover)}.logo{display:block;width:80px;height:80px;margin:0 auto 1.5rem}.header-button-wrapper{min-width:200px}.list-container{background-color:var(--background-color);border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow);overflow:hidden}.sheet-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--medium-gray);transition:all .2s ease;background-color:var(--background-color)}.sheet-item:last-child{border-bottom:none}.sheet-item:hover{background-color:#f0f7ff;transform:translate(4px)}.sheet-info{display:flex;align-items:center;gap:1rem;flex:1;cursor:pointer}.sheet-icon{font-size:1.2rem;background:var(--light-gray);padding:8px;border-radius:50%}.sheet-name{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.button-group{display:flex;gap:.75rem;align-items:center}.transactions-body{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.transaction-list{display:flex;flex-direction:column;gap:.75rem}.transaction-row{display:flex;align-items:center;gap:.75rem}.description-input{flex:1}.amount-input{width:110px;text-align:right}.delete-button{width:40px;height:40px;border:none;background-color:var(--medium-gray);color:var(--text-secondary);font-size:1.2rem;font-weight:700;border-radius:50%;cursor:pointer;display:flex;justify-content:center;align-items:center;flex-shrink:0;transition:all .2s}.delete-button:hover{background-color:var(--danger-color);color:#fff;transform:rotate(90deg)}.total-section{margin-top:2rem;padding:1.5rem;background-color:var(--background-color);border-radius:var(--border-radius-lg);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--box-shadow)}.danger-zone-title{color:var(--danger-color);margin-top:2rem}.danger-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem}.income-text{color:var(--success-color)}.expense-text{color:var(--danger-color)}.error-text{color:var(--danger-color);text-align:center;margin:.5rem 0 1rem;font-size:.9rem;background:#e74c3c1a;padding:.5rem;border-radius:var(--border-radius-md)}.success-text{color:var(--success-color);text-align:center;margin:.5rem 0 1rem;font-size:.9rem;background:#27ae601a;padding:.5rem;border-radius:var(--border-radius-md)}.empty-text{text-align:center;padding:4rem 0;font-size:1.1rem;color:var(--text-secondary)}.total-income{color:var(--success-color);font-size:1.4rem;font-weight:700}.total-expenses{color:var(--danger-color);font-size:1.4rem;font-weight:700}@media (max-width: 768px){.transactions-body{grid-template-columns:1fr}.main-header{padding:0 1rem}.header-title{display:none}.button-secondary{padding:.5rem .75rem;font-size:.9rem}.container{padding:1.5rem 1rem}.card,.login-card{padding:1.5rem}.screen-header{flex-direction:column;gap:1rem;align-items:stretch}}@media (max-width: 400px){.header-actions{gap:.5rem}.button-secondary{padding:.4rem .6rem;font-size:.85rem}}
