:root,[data-theme=default]{--color-primary-lower: hsl(265, 60%, 95%);--color-primary-low: hsl(265, 60%, 83%);--color-primary: hsl(265, 60%, 65%);--color-primary-high: hsl(265, 60%, 32%);--color-primary-higher: hsl(265, 60%, 20%);--color-contrast-lower: hsl(180, 60%, 83%);--color-contrast-low: hsl(180, 60%, 48%);--color-contrast: hsl(180, 60%, 20%);--color-contrast-high: hsl(180, 60%, 10%);--color-red: hsl(340, 100%, 30%);--color-green: hsl(135, 100%, 30%);--color-yellow: hsl(50, 100%, 30%);--color-blue: hsl(248, 100%, 30%);--color-text: var(--color-contrast-high);--color-black: hsl(0,0,10%);--color-white: hsl(256,100%,98%);--color-bg: var(--color-primary-lower)}[data-theme]{background-color:var(--color-bg);color:var(--color-text)}[data-theme=dark]{--color-primary: hsl(300, 100%, 57%);--color-bg: black;--color-contrast-lower: hsl(180, 100%, 15%);--color-contrast-low: hsl(180, 100%, 25%);--color-contrast-medium: hsl(180, 100%, 57%);--color-contrast-high: hsl(180, 100%, 89%);--color-text: var(var(--color-contrast-lower))}body{width:100%;min-height:100%;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;margin:0}body *{font-size:16px;margin:0;box-sizing:border-box}body p,body button,body input,body label{font-size:14px}body h1{font-size:32px}body h2{font-size:24px}body h3{font-size:18px}body h4{font-size:16px}#root{width:100%}.button{font-size:16px;cursor:pointer;opacity:.95;padding:6px 18px;background-color:var(--color-primary);color:var(--color-text);border-radius:4px;margin-right:6px;border:thin solid none}.button:hover{opacity:1}.button:disabled{opacity:1;cursor:not-allowed}.button__action{color:var(--color-contrast-lower);border:thin solid var(--color-primary-higher);background-color:var(--color-primary-high)}.button__action:disabled{color:var(--color-red)}.button__action--active{color:var(--color-green)}.button svg{width:1em;height:1em}.app{display:flex;flex-direction:column;font-size:14px;width:100%;min-height:100vh}.app__header{background-color:var(--color-primary-higher);color:var(--color-contrast-lower)}.app__header hgroup{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;padding:14px}.app__main{width:100%}.app__center{width:100%;max-width:1280px;margin:0 auto}.csv-loader{border-radius:4px;font-size:14px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;padding:24px}.csv-loader input[type=file]{position:absolute;visibility:hidden}.csv-loader .button{font-size:24px;padding:24px 120px;border-radius:12px;border:2px solid white;text-transform:capitalize}.controls{margin-bottom:24px;padding:12px;background-color:var(--color-contrast)}.controls label{margin-left:24px;margin-right:24px;color:var(--color-primary-low);font-size:16px}.controls__filters{margin-top:12px;padding-top:12px;border-top:thin dashed var(--color-contrast-lower)}.controls__filters label{margin-left:0}.messages{display:flex;flex-direction:column;padding:6px 12px;color:var(--color-text);font-family:Arial,Helvetica,sans-serif;font-weight:300;font-size:14px}.messages__output{height:200px;overflow-y:scroll;background-color:var(--color-contrast-high);border-radius:3px;padding:14px}.messages__item{margin-top:12px}.messages__line{margin:0}.messages__line--default{color:#d3d3d3}.messages__line--notice{color:#ff0}.messages__line--success{color:#32cd32}.messages__line--error{color:red}.messages__line__object{font-size:10px;color:#fff;overflow:hidden;text-overflow:ellipsis}.transactions{display:flex;flex-direction:row;flex-wrap:wrap;margin-top:36px;padding-right:340px}.transactions__column{width:50%;padding:24px;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.transactions__date{width:100%;flex-shrink:0;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;padding:10px;margin:0;transition:background-color .2s ease;position:relative}.transactions__date:hover{background-color:var(--color-primary-low)}.transactions__date.expanded .accordion-icon{transform:rotate(0)}.transactions__date.collapsed .accordion-icon{transform:rotate(-90deg)}.transactions__date .accordion-icon{margin-right:10px;transition:transform .2s ease;display:inline-block;font-size:.8em}.transactions__date .date-text{margin:0 10px}.transactions__date .transaction-counts{display:inline-flex;align-items:center;margin-left:10px;font-size:.8em;color:var(--color-text-secondary);background:var(--color-background-secondary);padding:2px 8px;border-radius:12px}.transactions__date .transaction-counts .count.accounting{color:var(--color-primary)}.transactions__date .transaction-counts .count.bank{color:var(--color-secondary)}.transactions__date .transaction-counts .count.separator{margin:0 4px;opacity:.5}.transactions__content{width:100%;display:flex;overflow:hidden;transition:max-height .3s ease-in-out}.transactions__content.expanded{max-height:auto;opacity:1}.transactions__content.collapsed{max-height:0;opacity:0}.trans-list{list-style:none;width:50%;padding:12px 6px;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;position:relative}.trans-list__item{background-color:var(--color-white);border:1px solid var(--color-white);color:var(--color-black);margin-bottom:12px;width:100%;padding:6px;border-radius:3px;display:flex;flex-wrap:wrap;align-items:center;position:relative;cursor:pointer;transition:all .2s ease;z-index:1}.trans-list__item:hover{transform:translateY(1px);box-shadow:inset 0 2px 4px #0000001a;z-index:2}.trans-list__item--selected{background-color:var(--color-primary-low);border-color:var(--color-primary);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.trans-list__item--cleared{border-color:#add8e6}.trans-list__item--missing{border-color:var(--color-primary-low)}.trans-list__item--multi{border-color:orange}.trans-list__item--multiCleared{border-color:#00f}.trans-list__item--partialRefund{border-color:#8a2be2}.trans-list__item--offsetCleared{border-color:#00c853}.trans-list__item--manualMatch{border-color:#9c27b0;background-color:#9c27b00d}.trans-list__item__icon{top:6px;left:6px;height:28px;width:28px}.trans-list__item__type{opacity:.4;margin-left:12px}.trans-list__item__sum{font-size:24px;flex-grow:1;text-align:right}.trans-list__item__description{width:100%;height:1rem;flex-shrink:0;margin-top:6px;position:relative}.trans-list__item__description-text{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trans-list__item__description-text:hover{cursor:text;position:absolute;left:0;background:var(--color-white);z-index:3;white-space:normal;overflow:visible;box-shadow:0 2px 8px #0000001a;border-radius:3px;border:1px solid black;padding:6px 12px}.viewing-saved-match-indicator{width:100%;background-color:#9c27b01a;color:#9c27b0;padding:10px 15px;border-radius:8px;margin-bottom:20px;text-align:center;border-left:4px solid #9c27b0}.viewing-saved-match-indicator p{margin:0;font-weight:500}.selection-summary{position:fixed;bottom:20px;right:20px;z-index:1000;height:160px}.selection-summary__content{background:var(--color-white);border:2px solid var(--color-primary);border-radius:12px;padding:10px;box-shadow:0 2px 8px #0000001a;min-width:300px}.selection-summary__totals{display:flex;flex-direction:column;gap:8px;font-size:14px;margin-bottom:16px}.selection-summary__totals .selection-summary__match{color:var(--color-primary);font-weight:700}.selection-summary__actions{display:flex;justify-content:flex-end;gap:8px}.selection-summary__actions button{padding:8px 16px;border-radius:6px;border:none;cursor:pointer;font-size:14px;transition:all .2s ease}.selection-summary__actions button:hover{transform:translateY(-1px)}.selection-summary__clear{background:var(--color-gray-light);color:var(--color-text)}.selection-summary__clear:hover{background:var(--color-gray)}.selection-summary__match-button{background:var(--color-primary);color:#fff}.selection-summary__match-button:hover{background:var(--color-primary-dark)}.saved-matches{position:fixed;bottom:200px;right:20px;z-index:1000;max-height:calc(100vh - 400px);overflow-y:auto}.saved-matches__content{background:var(--color-white);border:2px solid var(--color-primary);border-radius:12px;padding:10px;box-shadow:0 2px 8px #0000001a;min-width:300px}.saved-matches__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.saved-matches__header h3{margin:0;font-size:16px;color:var(--color-primary)}.saved-matches__clear-all{background:none;border:none;padding:4px;cursor:pointer;color:var(--color-primary);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.saved-matches__clear-all:hover{background:#0000000d;color:var(--color-red)}.saved-matches__clear-all:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.saved-matches__list{display:flex;flex-direction:column;gap:4px}.saved-matches__item{display:flex;align-items:center;gap:8px;border:1px solid var(--color-gray-light);border-radius:6px;cursor:pointer;transition:all .2s ease;height:28px;font-size:12px;color:var(--color-black)}.saved-matches__item:hover{background:#0000000d}.saved-matches__item:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.saved-matches__date{min-width:110px}.saved-matches__count{opacity:.7}.saved-matches__amount{margin-left:auto}.saved-matches__remove{background:none;border:none;width:28px;height:28px;cursor:pointer;color:var(--color-gray);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.saved-matches__remove:hover{color:var(--color-red);background:#0000000d}
