*{margin:0;padding:0;box-sizing:border-box}html{background:#553716}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:radial-gradient(105.74% 144.35% at 46.18% -1.59%,#8a7965 0,#100f0f 84.16%);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:0 16px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.container{max-width:1400px;width:100%;margin:0 auto;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);overflow:hidden;position:relative;z-index:1}.header{background:radial-gradient(circle at 100% -4%,#8a7965 0,#100f0f 84.16%);color:#fff;padding:24px 16px;text-align:center;position:relative}.header h1{font-size:2.5em;margin-bottom:10px;font-weight:700}.header p{font-size:1.1em;line-height:1.5;opacity:.9}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;padding:30px;background:#f8f9fa}.stat-card{padding:24px 16px;border-radius:16px;text-align:center;background:rgba(167,134,86,.1);transition:all .3s ease}.stat-card.active{background:rgba(85,55,22,.2);box-shadow:0 0 4px rgba(85,55,22,.3) inset;transform:scale(1.02)}.stat-card h3{color:#666;font-size:.9em;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.stat-card .value{font-size:2em;font-weight:700;color:#000}.stat-card .value.positive{color:#553716}.stat-card .value.negative{color:#dc3545}.content{background:rgba(167,134,86,.1);padding:30px}.error{background:#fee;color:#c33;padding:15px;border-radius:5px;margin-bottom:20px;border-left:4px solid #c33}.table-wrapper{overflow-x:auto;overflow-y:scroll;border-radius:16px;max-height:calc(100vh - 560px)}table{width:100%;border-collapse:collapse;background:#fff}.mobile-cards{display:none;gap:12px;flex-direction:column}.transaction-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 50px rgba(0,0,0,.1);transition:transform .2s,box-shadow .2s;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.transaction-card.clickable{cursor:pointer}.transaction-card.clickable:active{transform:scale(.95);box-shadow:0 1px 30px rgba(0,0,0,.1)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.card-stt{font-weight:600;color:#553716;font-size:.9em}.card-datetime{color:#666;font-size:.85em}.card-body{display:flex;flex-direction:column;gap:10px}.card-row{display:flex;justify-content:flex-end;align-items:center}.card-row-ref{align-items:flex-start;gap:16px}.card-label{font-weight:500;color:#666;font-size:.9em;flex-shrink:0}.card-value{font-weight:600;text-align:right}.card-value-wrapper{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:1;min-width:0}.card-ref{font-size:.85em;font-weight:400;text-align:right;word-break:break-word;line-height:20px;width:100%;-webkit-user-select:none;user-select:none;max-height:120px;transition:max-height .3s ease;overflow:hidden}.card-ref.truncated{max-height:20px}thead{background:radial-gradient(105.74% 244.35% at 46.18% -1.59%,#8a7965 0,#100f0f 84.16%);color:#fff;position:sticky;top:0;z-index:1}th{padding:18px 15px;text-align:left;font-weight:600;font-size:.95em;text-transform:uppercase;letter-spacing:.5px}th:first-child{border-radius:16px 0 0 0}th:last-child{border-radius:0 16px 0 0}th.sortable{cursor:pointer;user-select:none;position:relative;padding-right:30px}th.sortable:hover{background:rgba(255,255,255,.1)}th.sortable::after{content:" ↕";position:absolute;right:10px;opacity:.5}th.sortable.asc::after{content:" ↑";opacity:1}th.sortable.desc::after{content:" ↓";opacity:1}tbody tr{border-bottom:1px solid #e9ecef;transition:background-color .2s}tbody tr:hover{background-color:#f8f9fa}tbody tr:last-child{border-bottom:none}td{padding:15px;color:#333}.account{font-weight:600;color:#667eea}.amount{font-weight:600;font-size:1.05em}.amount.positive{color:#553716}.amount.negative{color:#dc3545}.amount-change{font-weight:600}.amount-change.positive{color:#553716}.amount-change.negative{color:#dc3545}.amount-change.positive::before{content:"+"}.amount-change.negative::before{content:"-"}.datetime{color:#666;font-size:.95em}.text-right{text-align:right}th.text-right a{display:inline-block;text-align:right}.no-data{text-align:center;padding:60px 20px;color:#999}.no-data svg{width:100px;height:100px;margin-bottom:20px;opacity:.3}.refresh-btn{display:inline-block;margin-bottom:20px;padding:12px 24px;background:radial-gradient(105.74% 244.35% at 46.18% -1.59%,#8a7965 0,#100f0f 84.16%);color:#fff;text-decoration:none;border-radius:100px;font-weight:600;transition:.3s ease all;box-shadow:0 4px 15px #8a7965}.refresh-btn span{position:relative;z-index:1}.refresh-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8a7965}.col-change{width:150px}.col-datetime{width:200px}.col-ref{font-size:.85em}.col-stt{width:62px}.text-center{text-align:center}@media (min-width:769px){.desktop-table{display:table}.mobile-cards{display:none}}@supports (padding:max(0px)){.standalone-mode .header{padding-top:max(64px,env(safe-area-inset-top) + 64px)!important}}.standalone-mode .header{padding-top:64px!important}.standalone-mode .header{position:relative;z-index:10}.pull-to-refresh-indicator{position:absolute;top:0;left:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;pointer-events:none;color:#553716;width:100%;padding-top:10px}.pull-to-refresh-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.9);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.15);margin-bottom:8px}.pull-to-refresh-text{font-size:12px;color:#553716;font-weight:500;background:rgba(255,255,255,.9);padding:4px 12px;border-radius:12px;white-space:nowrap}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.footer-link{padding:24px 20px 24px;text-align:center}.footer-link p{margin:0;font-size:11px;color:#ddd;line-height:1}.footer-link a{color:#fff;text-decoration:none;font-weight:500}.footer-link a:hover{text-decoration:underline}.version-text{display:inline-block;margin-left:5px;color:#999}.header p.version-text{font-size:12px;color:#aaa;margin-top:10px}.header p.version-text span{font-size:10px;color:#999}.stat-card:last-child:after{display:none}@media (max-width:1160px){body{padding:16px}.table-wrapper{max-height:none}.stats{grid-template-columns:1fr 1fr;gap:16px}}@media (max-width:810px){html{background-color:#100f0f}body{padding:0;background:#100f0f radial-gradient(circle at 100% -20%,#8a7965 0,#100f0f 33.16%);background-size:100vw 200vh;background-repeat:no-repeat;background-position:right top}.container{background:0 0;margin:0;border-radius:0}.header{background:0 0}.header h1{font-size:1.4em}.header p{font-size:14px}.stats{grid-template-columns:1fr 1fr;gap:16px;margin:0 0;background-color:rgba(0,0,0,.1);padding:16px}.desktop-table{display:none}.mobile-cards{display:flex;gap:16px}.table-wrapper{overflow:visible;max-height:unset;width:100%}.content{padding:1rem}.stat-card{background-color:#1b1b1b;border:0;box-shadow:inset 0 0 1px rgba(255,255,255,.3);padding-left:8px;padding-right:8px;transition:all .3s ease}.stat-card.active{background-color:#2a2a2a;box-shadow:inset 0 0 2px rgba(255,255,255,.2),inset 0 0 1px rgba(255,255,255,.3);transform:scale(1.02)}.stat-card .value,.stat-card h3{color:#aaa}.stat-card h3{font-size:13px}.stat-card .value.positive{color:#fff}.stat-card .value{font-size:20px}.content{background:0 0;padding:16px;min-height:calc(100vh - 438px)}.transaction-card{box-shadow:noen;background:#262626;color:#fff;border:1px solid rgba(255,255,255,.1)}.amount-change.positive{color:#fff}.amount-change.negative,.stat-card .value.negative{color:#ff7676}.card-body,.card-datetime,.card-stt{color:#aaa}.card-header{border:0;padding:0;margin:0}.stat-card:last-child{--pos-x:0;--pos-y:0;position:relative;padding:1px;overflow:hidden}.stat-card:last-child:after{display:block;border-radius:inherit;content:"";height:100%;left:0;position:absolute;top:0;transition:opacity .5s;width:100%;scale:2;background:conic-gradient(from 90deg,#000,#000,#000,#a68657,#fff,#a68657,#000,#000,#000);opacity:1;animation:spin 5s linear infinite}.stat-card:last-child .stat-card-inner{position:relative;z-index:1;padding:24px 8px;background:#1b1b1b;border-radius:16px}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}