:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#122744;background:#f4f7fc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--nav:#0e2745;--accent:#075dce;--accent2:#1b87ef;--border:#e0e8f3;--muted:#798ba4;--text:#162c49;--shadow:0 4px 18px rgba(20,52,100,.055)}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.icon{width:19px;height:19px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon.small{width:15px;height:15px}.icon.big{width:23px;height:23px}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(160deg,#0a203c 0%,#132f51 82%);color:#c1d1e7;padding:25px 15px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;padding:2px 13px 32px;color:white}.brandmark{width:37px;height:37px;color:#4dbdf8}.brand strong{font-size:20px;letter-spacing:-.7px;display:block}.brand small{display:block;color:#a0b9d6;font-size:11px;margin-top:2px}.nav{display:flex;flex-direction:column;gap:5px}.nav a{border-radius:10px;color:#c9d8eb;display:flex;align-items:center;gap:13px;padding:12px 13px;font-size:13px;font-weight:560;transition:.15s background}.nav a.active{background:linear-gradient(100deg,#116dce,#0753b6);color:white;box-shadow:0 4px 12px #03192c50}.nav a:hover:not(.active){background:#284867;text-decoration:none}.nav a span{white-space:nowrap}.navicon{width:21px;height:21px}.side-bottom{margin-top:auto;color:#9aafc8;padding:20px 13px 5px;font-size:12px;border-top:1px solid #ffffff20}.side-bottom .mountain{color:#6c91b8;margin-bottom:15px}.workspace{min-width:0;padding:27px 31px 38px;max-width:1800px;width:100%;margin:0 auto}.topbar{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:25px;flex-wrap:wrap}.titles h1{font-size:31px;letter-spacing:-1.2px;margin:0 0 3px;font-weight:790;line-height:1.1}.subtitle{color:#637994;font-size:13px}.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.select-wrap{display:flex;align-items:center;background:white;border:1px solid #cedaec;border-radius:11px;padding:0 11px;box-shadow:0 2px 6px #1144770b;gap:6px;height:42px;color:#1d3654}.select-wrap select{font-size:13px;color:#18324f;outline:none;border:0;background:transparent;min-width:85px;max-width:170px;font-weight:650;cursor:pointer}.select-wrap .icon{width:16px;height:16px;color:#5e7590}.btn{border:1px solid #d7e2f2;background:white;padding:10px 13px;border-radius:10px;font-weight:680;color:#22507d;display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:39px;font-size:12px;white-space:nowrap;transition:.15s}.btn:hover{filter:brightness(.975);border-color:#90b9ec}.btn.primary{background:linear-gradient(115deg,#0e78e6,#0756c2);color:white;border-color:#0560d7;box-shadow:0 4px 11px #0a61d331}.btn.primary:hover{filter:brightness(1.07)}.btn.danger{color:#bc3b48;border-color:#ffced4}.btn.soft{background:#eef5ff;color:#075dc7;border-color:#d8e7ff}.btn.icon-btn{width:39px;min-width:39px;padding:8px}.btn.tiny{min-height:28px;padding:5px 9px;font-size:11px;border-radius:7px}.btn.line{border-color:transparent;background:transparent;box-shadow:none;padding:7px}.btn.line:hover{background:#eff5ff}.btn.wide{width:100%}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:17px}.stat{border-radius:14px;padding:18px 16px;display:flex;align-items:flex-start;gap:12px;min-width:0;min-height:121px;border:1px solid transparent}.stat-green{background:#eafaf2;border-color:#d8f0e4}.stat-red{background:#fff0f0;border-color:#fce4e4}.stat-blue{background:#eaf3fe;border-color:#d5e8ff}.stat-indigo{background:#f0f0ff;border-color:#e3e2ff}.stat-violet{background:#f2f0ff;border-color:#e6e2ff}.stat .bubble{width:41px;height:41px;border-radius:50%;display:grid;place-items:center;flex:none}.stat-green .bubble{background:#d0f5e1;color:#10a266}.stat-red .bubble{background:#fcdbdf;color:#e24850}.stat-blue .bubble{background:#d5e8ff;color:#136fee}.stat-indigo .bubble{background:#e2e2ff;color:#4c44d4}.stat-violet .bubble{background:#e4e2ff;color:#5441c8}.stat-info{min-width:0}.stat-label{font-size:12px;color:#334661;font-weight:580;margin:2px 0 9px}.stat-value{font-size:clamp(16px,1.68vw,25px);font-weight:790;letter-spacing:-.7px;white-space:nowrap}.stat-value.negative{color:#df3e4e}.stat-sub{font-size:11px;color:#637b99;margin-top:6px}.dashboard-top{display:grid;grid-template-columns:1.15fr 1.02fr 1.16fr;gap:15px;margin-bottom:15px}.dashboard-bottom{display:grid;grid-template-columns:1.34fr 1fr;gap:15px}.panel{background:#fff;border-radius:14px;border:1px solid #dce6f3;box-shadow:var(--shadow);padding:19px;min-width:0}.panelhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.panel h2{font-size:17px;margin:0;font-weight:750;letter-spacing:-.4px}.panel h3{font-size:14px;margin:0}.hint{color:#7e90a7;font-size:11px}.text-link{color:#075ece;background:none;border:0;font-size:12px;font-weight:680;padding:5px;display:inline-flex;align-items:center;gap:5px}.text-link:hover{text-decoration:underline}.chart-legend{display:flex;gap:17px;justify-content:center;color:#60758f;font-size:11px;margin-bottom:9px}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:5px}.mini-chart{width:100%;height:auto;display:block;overflow:visible}.mini-chart .label{font-size:10px;fill:#7d8fa7}.mini-chart .grid{stroke:#e7edf5;stroke-width:1}.mini-chart .bar-blue{fill:#257fef}.mini-chart .bar-orange{fill:#f9a554}.payment-list{display:flex;flex-direction:column}.payment-row{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;border-bottom:1px solid #eff2f6;padding:10px 0}.payment-row:last-child{border-bottom:0}.payment-row strong{font-size:12px;font-weight:650;display:block}.payment-row small{color:#7a8ba0;font-size:11px;display:block;margin-top:4px}.round-check{background:#dff9eb;color:#0d9f67;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}.round-clock{background:#fff4de;color:#e6a01e;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}.round-alert{background:#ffe8e8;color:#d94b4b;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}.pill{display:inline-flex;align-items:center;border-radius:7px;font-weight:680;padding:5px 8px;font-size:10px;white-space:nowrap}.pill.ok{background:#d9f6e6;color:#14804e}.pill.warn{background:#fff0d0;color:#98620b}.pill.overdue{background:#ffe0e5;color:#b12b40}.pill.neutral{background:#edf2f8;color:#688098}.pill.info{background:#e6f0ff;color:#1a64c6}.donut-flex{display:flex;align-items:center;gap:15px}.donut-svg{width:154px;max-width:45%;flex-shrink:0}.donut-list{display:flex;flex-direction:column;gap:11px;flex:1;min-width:0}.donut-item{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;font-size:11px}.donut-item .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.donut-item .value{font-weight:750;white-space:nowrap}.table-scroll{overflow:auto;max-width:100%}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th{text-align:left;color:#657891;font-size:11px;font-weight:680;background:#f2f5fa;white-space:nowrap;padding:10px 10px;border-bottom:1px solid #e4ebf5}.data-table th:first-child{border-radius:7px 0 0 7px}.data-table th:last-child{border-radius:0 7px 7px 0}.data-table td{padding:10px;border-bottom:1px solid #edf0f6;white-space:nowrap;color:#334963}.data-table tr:last-child td{border-bottom:0}.data-table .amount{font-weight:780;text-align:right;color:#254059}.data-table .amount.inc{color:#0a9960}.data-table .amount.out{color:#dc4955}.data-table .action-cell{text-align:right}.data-table button{border:0;background:transparent;color:#1d6dcc;padding:4px}.data-table button:hover{background:#edf4ff;border-radius:5px}.section-head{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap;margin-bottom:18px}.section-head h2{font-size:20px;margin:0}.toolbar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}.input,.select,.textarea{border:1px solid #d6e1ef;border-radius:9px;padding:10px 11px;background:white;color:#24415f;outline:none;min-height:39px;font-size:12px}.input:focus,.select:focus,.textarea:focus{border-color:#398bea;box-shadow:0 0 0 3px #3787ee20}.textarea{resize:vertical;min-height:80px}.filter-input{min-width:190px}.empty{padding:36px 15px;text-align:center;color:#8091a5;font-size:13px}.empty .icon{width:37px;height:37px;color:#aabbd0;margin-bottom:7px}.empty b{display:block;color:#46617f;font-size:14px;margin:7px}.muted{color:#7489a1}.compact-list{display:flex;flex-direction:column;gap:9px}.mini-person{display:flex;align-items:center;gap:11px}.avatar{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;font-weight:760;background:#dff7e8;color:#178955;font-size:19px}.avatar.purple{background:#eae6ff;color:#5949ca}.property-profile{display:flex;gap:15px;align-items:flex-start}.property-art{border-radius:11px;width:120px;min-width:120px;height:117px;background:linear-gradient(150deg,#e3f4ff,#c4d9ee);display:grid;place-items:center;color:#488bc3;position:relative;overflow:hidden}.property-art:before{content:"";position:absolute;width:60px;height:105px;background:#e5e9e9;border:1px solid #c6d8e9;transform:rotate(9deg) skewY(-8deg);right:14px;bottom:-20px;box-shadow:-21px 7px #a5bad1}.property-art:after{content:"▦  ▦\A▦  ▦\A▦  ▦";white-space:pre;position:absolute;right:14px;bottom:6px;transform:rotate(8deg);line-height:27px;color:#43799c;font-size:19px}.property-info{flex:1;min-width:0}.property-info h3{font-size:17px;margin:0 0 5px}.property-detail{margin:9px 0;display:flex;gap:9px;align-items:center;font-size:12px}.property-detail .icon{width:16px;height:16px;color:#8095ad}.notice{border-radius:11px;padding:13px 15px;margin-bottom:18px;font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:11px}.notice.demo{background:#eaf3ff;border:1px solid #d2e6ff;color:#205487}.notice.error{background:#fff0f0;border:1px solid #ffd3d8;color:#a32f3d}.notice.ok{background:#e8f9ee;border:1px solid #d1f2df;color:#176f48}.notice .icon{width:17px;height:17px}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.item-card{border:1px solid #e2eaf6;border-radius:12px;padding:16px;background:white}.item-card h3{margin:0 0 7px}.item-card .item-value{font-size:24px;font-weight:770;margin:11px 0}.item-card p{color:#70869f;font-size:12px}.meter{height:7px;background:#ebf0f7;border-radius:20px;overflow:hidden}.meter>span{background:linear-gradient(90deg,#1674e5,#47b0f6);display:block;height:100%;border-radius:20px}.subgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.line-list{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid #edf1f7;font-size:12px;gap:10px}.line-list:last-child{border-bottom:0}.tags{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.report-table{font-size:11px;width:100%;border-collapse:collapse}.report-table th,.report-table td{padding:9px 8px;border-bottom:1px solid #e9eef5;white-space:nowrap;text-align:right}.report-table th:first-child,.report-table td:first-child{text-align:left;position:sticky;left:0;background:inherit;font-weight:700;min-width:185px}.report-table thead th{background:#113d79;color:white;font-size:10px}.report-table .group{background:#f0f7ff;font-weight:750;color:#195ba5}.report-table .sum{background:#eaf6ef;font-weight:750}.report-table .sumred{background:#fff0f0;font-weight:750}.report-table .positive{color:#087d4f}.report-table .negative{color:#c53c4c}.report-table tbody tr:hover{background:#f8fbff}.report-table tr td:last-child,.report-table tr th:last-child{font-weight:800;border-left:2px solid #d7e3f5}.setting-row{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #edf1f7}.setting-row:last-child{border:0}.setting-row h3{font-size:14px;margin:0 0 5px}.setting-row p{font-size:12px;color:#8091a6;margin:0}.setting-row .btn{flex:none}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:660;color:#38516f}.field.full{grid-column:1/-1}.checkfield{display:flex;align-items:center;gap:8px;font-size:13px}.checkfield input{width:17px;height:17px}.overlay{position:fixed;inset:0;background:rgba(9,26,48,.55);display:flex;justify-content:center;align-items:center;padding:18px;z-index:30;backdrop-filter:blur(3px)}.dialog{background:white;max-width:580px;width:100%;max-height:calc(100vh - 40px);overflow:auto;border-radius:17px;box-shadow:0 20px 60px #03172f50}.dialog-head{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:21px 24px 10px}.dialog-head h2{margin:0;font-size:20px}.dialog-body{padding:13px 24px 24px}.dialog-footer{border-top:1px solid #e5ebf3;padding:16px 24px;display:flex;justify-content:flex-end;gap:9px}.dialog .btn.close{border:0;background:transparent;padding:6px;min-height:32px}.dialog .error-text{color:#ad3042;font-size:12px;padding-top:8px}.toast{background:#0c294c;color:white;padding:13px 17px;border-radius:10px;margin-top:9px;box-shadow:0 4px 18px #031a3a33;font-size:12px;max-width:330px}#toasts{position:fixed;bottom:18px;right:18px;z-index:100}.loading-screen{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#385777;gap:12px}.loading-mark{width:70px;height:70px;border-radius:18px;background:#102843;color:#57bdf7;font-size:60px;line-height:62px;text-align:center}.login-shell{height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,#dfeeff,#f7f9fe 60%)}.login-card{width:min(420px,calc(100% - 30px));padding:34px;border-radius:18px;border:1px solid #dde7f5;background:white;box-shadow:0 12px 40px #20477917}.login-card h1{margin:17px 0 4px;font-size:26px}.login-card p{color:#748aa0;font-size:13px;margin-bottom:21px}.login-card .brandmark{color:#0775dc;width:44px;height:44px}.login-card .input{width:100%;font-size:14px}.login-card .btn{width:100%;margin-top:14px}.mobile-bar{display:none}.hidden{display:none!important}.tiny-status{display:flex;align-items:center;gap:6px;font-size:10px;color:#7b90a9}.tiny-status .status-dot{background:#0cbf74;width:7px;height:7px;border-radius:50%}.tiny-status .status-dot.local{background:#e9a644}.section-note{font-size:12px;color:#7d8ea3;margin:-6px 0 20px}.split-row{display:grid;grid-template-columns:1.4fr 1fr;gap:15px}.amountbox{background:#f4f8fd;border-radius:10px;padding:13px}.amountbox span{color:#788ca6;font-size:11px}.amountbox strong{display:block;margin-top:6px;font-size:22px}.text-red{color:#d54450!important}.text-green{color:#0c9b61!important}.text-blue{color:#1978de!important}.fyear{font-size:10px;color:#8295aa;margin-top:3px}.mobile-title{display:none}
@media(max-width:1300px){.shell{grid-template-columns:205px minmax(0,1fr)}.workspace{padding:23px 22px}.stats{gap:9px}.stat{padding:15px 11px;gap:8px}.stat .bubble{width:32px;height:32px}.stat .bubble .icon{width:17px}.stat-value{font-size:18px}.dashboard-top{grid-template-columns:1.25fr 1fr}.dashboard-top>.panel:last-child{grid-column:1/-1}.donut-flex{justify-content:center}.donut-svg{width:155px}.donut-list{max-width:440px}}
@media(max-width:950px){.sidebar{width:70px;padding:20px 9px}.shell{grid-template-columns:70px minmax(0,1fr)}.brand{padding:0 8px 30px}.brand strong,.brand small,.nav a span,.side-bottom{display:none}.brandmark{width:35px}.nav a{justify-content:center;padding:12px}.navicon{width:23px;height:23px}.stats{grid-template-columns:repeat(3,1fr)}.dashboard-bottom{grid-template-columns:1fr}.dashboard-top{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:670px){.shell{display:block}.sidebar{display:none}.workspace{padding:18px 12px 95px}.mobile-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.mobile-title strong{font-size:19px;letter-spacing:-.6px}.mobile-title .brandmark{width:27px;height:27px;display:inline-block;vertical-align:middle}.titles h1{font-size:26px}.topbar{align-items:flex-start;margin-bottom:17px}.top-actions{width:100%;gap:6px}.top-actions .select-wrap{flex:1;min-width:0}.select-wrap select{min-width:0;width:100%;max-width:none}.top-actions .btn.primary{width:100%;justify-content:center}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat{min-height:99px;padding:13px 11px}.stat .bubble{display:none}.stat-label{font-size:11px;margin:0 0 8px}.stat-value{font-size:21px}.stat-sub{font-size:10px}.dashboard-top,.dashboard-bottom,.subgrid,.split-row{grid-template-columns:1fr;gap:12px}.dashboard-top>.panel:last-child{grid-column:auto}.panel{padding:15px}.panel h2{font-size:16px}.property-art{width:90px;min-width:90px;height:108px}.donut-flex{gap:7px}.donut-svg{width:126px}.donut-item{font-size:10px}.quick-grid{grid-template-columns:1fr}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:white;border-top:1px solid #d9e4f2;justify-content:space-around;padding:7px 3px max(9px,env(safe-area-inset-bottom));box-shadow:0 -4px 18px #061e3a13}.mobile-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#7b8ca2;font-size:9px;flex:1;padding:5px 0;border-radius:9px;text-decoration:none}.mobile-bar a.active{color:#0864d0;background:#eaf3ff}.mobile-bar .icon{width:21px;height:21px}.form-grid{grid-template-columns:1fr}.dialog-head,.dialog-body,.dialog-footer{padding-left:18px;padding-right:18px}.dialog{max-height:94vh}#toasts{bottom:80px;left:10px;right:10px}.toast{max-width:none}}
/* KőháziRent 2.0 – átlátható havi elszámolás, státuszok, díjtörténet */
.dashboard-top{grid-template-columns:minmax(310px,1.27fr) minmax(330px,1.18fr) minmax(270px,1fr)}
.month-summary{border:1px solid #edf2f8;border-radius:11px;overflow:hidden}
.month-head{display:grid;grid-template-columns:1fr 1.1fr 1.1fr 1.1fr;gap:6px;padding:9px 11px;background:#f1f5fb;color:#71849b;font-size:10px;font-weight:750}
.month-item{display:grid;grid-template-columns:1fr 1.1fr 1.1fr 1.1fr;gap:6px;align-items:center;border-top:1px solid #edf1f7;padding:10px 11px;font-size:11px;line-height:1.45}
.month-item>strong{color:#183756}.month-item>span:not(.month-bars){text-align:right;font-weight:650;white-space:nowrap}
.month-head span:not(:first-child){text-align:right}.month-bars{grid-column:1/-1;display:flex;flex-direction:column;gap:3px;height:11px;margin-top:2px}
.month-bars span{height:4px;min-width:0;border-radius:2px;display:block}
.month-note{display:flex;align-items:center;gap:7px;font-size:10px;color:#768aa3;margin-top:12px;line-height:1.55}
.payment-row-new{grid-template-columns:24px minmax(110px,1fr) auto;min-height:72px;gap:8px}
.payment-row-new .payment-tools{display:flex;flex-direction:column;align-items:end;gap:5px}.payment-row-new .payment-tools .btn{font-size:10px;padding:4px 7px;min-height:26px}
.payment-row-new .payment-tools .pill{font-size:9px}.request-status{margin-top:5px}.request-status .pill{font-size:9px}
.deposit-notice{background:#fff7e6;border:1px solid #f8e1ad;color:#6f4d18;margin:0 0 15px;font-size:12px;line-height:1.55}.deposit-notice .icon{color:#bc8319}
.payments-table .request-toggle{min-width:110px;padding:6px 8px;font-size:10px}.auto-note{display:inline-block;color:#1b70c9;background:#e7f2ff;border-radius:5px;margin-left:8px;padding:3px 5px;font-size:9px;vertical-align:middle;font-weight:600}
.property-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:15px}.property-panel{max-width:none}.property-history{border:1px solid #e6edf6;border-radius:11px;margin-top:17px;padding:14px}.property-history .panelhead{margin-bottom:10px}
.history-line{display:grid;grid-template-columns:1.05fr 1fr .95fr 30px;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #eef2f7;font-size:11px}.history-line:last-child{border-bottom:0}
.history-line>span:first-child{color:#73869c}.history-line strong{color:#244363;font-size:11px}.history-line>b{text-align:right;font-size:11px}.history-actions button{border:0;color:#286ec0;background:transparent;cursor:pointer}.history-actions .icon{height:15px;width:15px}
.settings-categories{align-items:start}.settings-categories .panel{min-width:0}.category-list{display:flex;flex-direction:column;gap:7px}.category-row{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:9px;border:1px solid #e2eaf4;background:#fbfcff;transition:background .1s}.category-row:hover{background:#f1f7ff}.category-row.dragging{opacity:.45;border-style:dashed}.category-row.archived{opacity:.66}.category-row .drag-handle{font-size:20px;color:#9eafc4;cursor:grab;touch-action:none;line-height:1}.cat-name{min-width:0;display:flex;flex:1;align-items:center;gap:7px;flex-wrap:wrap}.cat-name strong{font-size:12px;font-weight:650}.category-tools{display:flex;gap:2px;flex:none}.category-tools button{display:grid;place-items:center;border:0;background:transparent;border-radius:6px;padding:5px;color:#4b7196;cursor:pointer}.category-tools button:hover{background:#e8f0fd;color:#1463bf}.category-tools button .icon{height:15px;width:15px}
.transaction-dialog{max-width:645px}.tx-intro{display:flex;align-items:center;gap:8px;border-radius:8px;background:#f2f7fe;color:#5c779a;padding:11px 13px;margin-bottom:16px;font-size:11px;line-height:1.55}
.tx-form-grid{gap:15px 17px}.tx-form-grid .field{min-width:0}.tx-form-grid .field .input,.tx-form-grid .field .select{width:100%;min-height:43px;font-size:13px}
.tx-form-grid .tx-connected{grid-column:1/-1}.tx-connected>.field{width:100%}.tx-connected .select{width:100%}.tx-currency-hint{display:flex;align-items:center;gap:7px;align-self:end;min-height:43px;padding:10px 12px;color:#7189a4;font-size:11px;background:#f6f9fe;border:1px solid #ecf1f8;border-radius:9px}
.tx-form-grid textarea{height:70px;min-height:70px;font-size:13px}.tx-form-grid .field.full:last-child{grid-column:1/-1}
@media(max-width:1450px){.dashboard-top{grid-template-columns:1fr 1fr}.dashboard-top>.panel:last-child{grid-column:1/-1}.dashboard-top>.panel:last-child .donut-flex{justify-content:center}}
@media(max-width:950px){.dashboard-top{grid-template-columns:1fr}.dashboard-top>.panel:last-child{grid-column:auto}.property-grid{grid-template-columns:1fr}}
@media(max-width:670px){.dashboard-top{grid-template-columns:1fr}.payment-row-new{grid-template-columns:22px minmax(0,1fr) auto}.month-item,.month-head{gap:4px;padding:10px 7px;font-size:10px}.month-item>span:not(.month-bars){font-size:10px}.payment-row-new .payment-tools .btn{font-size:9px}.settings-categories{grid-template-columns:1fr}.property-grid{grid-template-columns:1fr}.property-history{padding:10px}.history-line{grid-template-columns:1fr 1fr;gap:5px}.history-line>b{text-align:left}.history-actions{text-align:right}.tx-form-grid{grid-template-columns:1fr;gap:12px}.tx-currency-hint{min-height:34px}.transaction-dialog{max-width:100%}.category-row{padding:8px 6px}.category-tools button{padding:3px}}
@media(max-width:670px){
 .month-head{display:none}
 .month-item{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px;padding:11px 12px}
 .month-item>strong{grid-column:1/-1;font-size:12px;margin-bottom:3px}
 .month-item>span:not(.month-bars){font-size:11px;text-align:left;white-space:nowrap}
 .month-bars{grid-column:1/-1}
}

/* v3: nagy, áttekinthető havi grafikon és álló kiadási panel */
.dashboard-top{grid-template-columns:minmax(0,1.45fr) minmax(0,1.08fr) minmax(0,1.03fr);align-items:start}
.chart-scroll{overflow-x:auto;width:100%}.mini-chart{width:100%;min-width:420px;height:auto}.chart-tip{font-size:10px;color:#8695a9;text-align:center;margin:2px 0 0}
.donut-stack{display:flex;flex-direction:column;align-items:stretch;gap:15px}
.donut-stack .donut-svg{width:min(190px,78%);max-width:unset;align-self:center;flex:none}
.donut-vertical-list{display:flex;flex-direction:column;gap:0;width:100%}
.donut-vertical-row{display:grid;grid-template-columns:9px minmax(0,1fr) auto 39px;gap:7px;align-items:center;padding:8px 0;border-bottom:1px solid #edf1f7;font-size:11px}
.donut-vertical-row:last-child{border-bottom:0}.donut-vertical-row .donut-name{white-space:normal;overflow-wrap:anywhere;min-width:0;color:#425671}
.donut-vertical-row strong{white-space:nowrap;font-size:11px;color:#182f4b}.donut-vertical-row .muted{text-align:right;font-size:10px}
.payment-row-new{grid-template-columns:25px minmax(0,1fr) auto}.payment-tools{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.pay-quick{background:#e9f3ff!important;color:#0967ca!important;border:1px solid #cfe1f8!important;font-weight:700!important;white-space:nowrap}
.status-counters{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
@media(max-width:1480px){.dashboard-top{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.dashboard-top>section:last-child{grid-column:1 / -1}.donut-stack .donut-svg{width:180px}}
@media(max-width:920px){.dashboard-top{grid-template-columns:1fr}.dashboard-top>section:last-child{grid-column:auto}.dashboard-bottom{grid-template-columns:1fr}.chart-scroll .mini-chart{min-width:550px}}
@media(max-width:540px){.donut-stack .donut-svg{width:175px}.donut-vertical-row{font-size:10px;grid-template-columns:9px minmax(0,1fr) auto 32px}.donut-vertical-row strong{font-size:10px}.chart-scroll .mini-chart{min-width:510px}.pay-quick{padding:5px 8px!important}}

/* Kétoszlopos desktop nyitóképernyő: a kisebb panelek egymás alatt, nagy fizetési lista jobbra */
@media(min-width:1080px){
 .dashboard-top{display:grid;grid-template-columns:minmax(0,1.44fr) minmax(350px,1fr);grid-template-rows:auto auto;align-items:start}
 .dashboard-top>section:first-child{grid-column:1;grid-row:1}
 .dashboard-top>section:nth-child(2){grid-column:2;grid-row:1 / span 2;align-self:stretch}
 .dashboard-top>section:nth-child(3){grid-column:1;grid-row:2}
 .donut-stack .donut-svg{width:164px}
 .donut-vertical-row{padding:6px 0}
}
@media(min-width:1080px) and (max-width:1250px){.dashboard-top{grid-template-columns:minmax(0,1.15fr) minmax(340px,1fr)}}
