@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap";html,body,#root{font-family:Inter,sans-serif}button,input,select,textarea{font-family:inherit}html,body{background:#0d1117!important;color:#eee;min-height:100vh;margin:0}.main-layout,.left-panel,.right-panel{background:#0d1117}.transaction-form,.transaction-filter,.transaction-list,.summary-box{background:#0d1117;color:#eee;border-radius:10px;box-shadow:0 1px 4px #0003;border:2px solid #30363d;max-width:700px;width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box;padding:1rem 1.5rem}.transaction-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem}.transaction-form-row{display:flex;gap:1rem;width:100%}.transaction-form-row select,.transaction-form-row input[type=text],.transaction-form-row button{flex:1;min-width:0}.transaction-form-row button{height:43px;min-width:60px;width:auto;padding-top:0;padding-bottom:0;font-size:1rem;box-sizing:border-box;display:flex;align-items:center;justify-content:center;flex:none}.form-title{flex:1 1 100%;font-size:1.3rem;font-weight:600;color:#fff;margin-bottom:.25rem}.transaction-form input,.transaction-form select{background:#161b22;border:1px solid #3a3a3a;color:#eee;padding:.6rem .75rem;border-radius:8px;font-size:1rem;min-width:160px}.transaction-form input:focus,.transaction-form select:focus{border-color:#0070f3;outline:none}.transaction-form input::placeholder{color:#aaa}.transaction-form button{background-color:#0969da;color:#fff;border:none;padding:.35rem .8rem;border-radius:8px;font-weight:700;font-size:.97rem;min-width:60px;cursor:pointer;transition:background-color .2s,transform .1s}.transaction-form button:active{transform:scale(.99)}.summary-box{margin-bottom:2rem;font-size:1rem;font-weight:600;gap:1rem;flex-wrap:wrap;display:flex;flex-direction:column;border:2px solid #30363d;background:#0d1117!important}.transaction-list{background:#0d1117;color:#eee;border-radius:10px;box-shadow:0 1px 4px #0003;border:none!important;padding:0!important;max-width:700px;width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem}.transaction-row{background:#0d1117;border:2px solid #30363d;border-radius:8px;box-shadow:0 1px 4px #0003;display:flex;justify-content:space-between;align-items:center;padding:1rem;margin-bottom:.5rem;cursor:pointer;transition:background .15s}.transaction-row:hover{background:#161b22;border-color:#0070f3}.transaction-info{display:flex;flex-direction:column;gap:4px}.transaction-info .description{font-size:1rem;color:#fff;font-weight:600}.transaction-info .date{font-size:.85rem;color:#aaa}.transaction-amount{text-align:right}.transaction-amount span{display:block;font-size:1.2rem;font-weight:700}.transaction-amount .expense{color:#e0e0e0}.balance-after{font-size:.85rem;color:#aaa;margin-top:4px}@media (max-width: 768px){.main-layout{flex-direction:column;gap:1rem}.transaction-form,.transaction-filter,.transaction-list,.summary-box{max-width:100%;padding:.7rem .5rem;border-radius:8px}.transaction-row{flex-direction:column;align-items:flex-start}.transaction-amount{margin-top:.5rem;text-align:left}}.container{max-width:1100px;margin:30px auto 0;padding-left:8px;padding-right:80px;display:flex;flex-direction:column;align-items:center}ul{padding:0;margin:0;list-style:none}.transaction-info .top-line{display:flex;flex-wrap:wrap;gap:.5rem;font-size:1rem;color:#fff}.transaction-info .description{color:#fff;font-weight:600}.transaction-info .category{font-weight:500;border-radius:6px;font-size:.85rem;display:inline-block}.category-color-mat{background:#ffe0b2;color:#b26a00;padding:2px 6px;border-radius:6px}.category-color-transport{background:#b2ebf2;color:#006064;padding:2px 6px;border-radius:6px}.category-color-kläder{background:#f8bbd0;color:#880e4f;padding:2px 6px;border-radius:6px}.category-color-nöjen{background:#ff8a80;color:#222;padding:2px 6px;border-radius:6px}.category-color-hyra{background:#81c784;color:#222;padding:2px 6px;border-radius:6px}.category-color-abonnemang{background:#b39ddb;color:#311b92;padding:2px 6px;border-radius:6px}.category-color-annat{background:#ffd54f;color:#222;padding:2px 6px;border-radius:6px}.delete-btn{background:none;border:none;color:#ff4d4d;cursor:pointer;font-size:1rem;transition:color .2s ease}.delete-btn:hover{color:#ff1a1a}.bottom-line{display:flex;justify-content:flex-start;align-items:center;gap:.5rem}.transaction-filter{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:1.5rem;background:#0d1117;padding:1rem 1.5rem;border-radius:10px;box-shadow:0 1px 4px #0003;border:2px solid #30363d;max-width:600px;width:100%;margin-left:auto;margin-right:auto}.transaction-filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:end;background:#0d1117;padding:1.2rem 1.5rem;border-radius:10px;box-shadow:0 1px 4px #0003;border:2px solid #30363d;max-width:600px;margin-left:auto;margin-right:auto;margin-bottom:1.5rem}.filter-field{display:flex;flex-direction:column;gap:.5rem}.filter-input,.filter-select{background:#161b22;border:1px solid #30363d;color:#eee;padding:.6rem;border-radius:8px;font-size:1rem;min-width:120px}.amount-slider{flex:2 1 220px;min-width:180px;max-width:320px;width:100%;margin-top:0;margin-bottom:0;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch}.amount-slider input[type=range]{accent-color:#3b82f6;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.amount-slider input[type=number]{background-color:#161b22;color:#fff;border:1px solid #3a3a3a;border-radius:8px;padding:.4rem .6rem;font-size:.95rem;box-sizing:border-box;max-width:100px;min-width:0;outline:none;transition:border-color .2s;text-align:center}.transaction-form-row input[type=number]{height:43px;padding-top:0;padding-bottom:0;font-size:1rem;box-sizing:border-box}.amount-slider input[type=number]::-webkit-outer-spin-button,.amount-slider input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.amount-slider input[type=number]{-moz-appearance:textfield}.amount-slider input[type=number]:focus{border-color:#0070f3}@media (max-width: 900px){.transaction-filter{flex-direction:column;align-items:stretch;gap:.7rem}.amount-slider{max-width:100%}.filter-input,.filter-select{max-width:100%;min-width:0}}.amount-slider label{margin-bottom:.5rem;display:block}.summary-category-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.summary-amount{min-width:90px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.summary-category-row:last-child{margin-bottom:0}.show-more-btn{background:#222;color:#fff;border:1px solid #30363d;border-radius:8px;padding:.7rem 1.2rem;font-size:1rem;margin:1rem auto 0;display:block;cursor:pointer;transition:background .2s,color .2s}.show-more-btn:hover{background:#30363d;color:#22c55e}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem}.pagination button{background:#0d1117;color:#fff;border:1px solid #30363d;border-radius:8px;padding:.4rem 1.2rem;font-size:1rem;cursor:pointer;transition:background .2s,color .2s,border .2s}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{color:#fff;font-size:1rem}h2{margin-top:0}.delete-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-modal{background:#161b22;border:2px solid #30363d;border-radius:12px;padding:32px;min-width:280px;color:#fff;box-shadow:0 2px 12px #0008;text-align:center}.delete-modal button{background:#ff4d4d;color:#fff;border:none;border-radius:8px;padding:.5rem 1.2rem;margin-right:12px;font-weight:600;cursor:pointer;transition:background .2s}.delete-modal button:last-child{background:#222;color:#fff;border:1px solid #30363d;margin-right:0}.delete-modal button:hover{filter:brightness(1.1)}.auth-form{background:#161b22;border:2px solid #30363d;border-radius:12px;padding:2rem 2.5rem;max-width:350px;margin:48px auto;display:flex;flex-direction:column;gap:1.1rem;color:#fff;font-family:Inter,sans-serif}.auth-form input{background:#0d1117;border:1px solid #30363d;border-radius:8px;padding:.7rem 1rem;color:#fff;font-size:1rem}.auth-form button{background:#0969da;color:#fff;border:none;border-radius:8px;padding:.7rem 1.2rem;font-weight:600;font-size:1rem;cursor:pointer;margin-top:.5rem}.auth-form h2{margin-bottom:.5rem;text-align:center}.logout-btn{background:#222;color:#fff;border:1px solid #30363d;border-radius:8px;padding:.7rem 1.2rem;font-size:1rem;font-weight:600;cursor:pointer;margin-bottom:1rem;transition:background .2s,color .2s}.logout-btn:hover{background:#30363d;color:#ff4d4d}.spinner{display:flex;align-items:center;justify-content:center;margin-top:16px;gap:10px;font-size:1rem;color:#0969da}.spinner-circle{width:20px;height:20px;border:3px solid #0969da;border-top:3px solid #e0e0e0;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.transaction-form input[type=number],.transaction-form input[type=date],.transaction-form input[type=text],.transaction-form select{width:257px;height:43px;padding:0 .75rem;font-size:1rem;box-sizing:border-box}.transaction-footer{justify-content:center}
