:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17342d;background:#f6faf4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 100% 0,#e8f6ff 0,transparent 30%),radial-gradient(circle at 0 0,#e8f8ed 0,transparent 34%),#f8f7f0}button,input,select,textarea{font:inherit}button{cursor:pointer}.center,.center-page{min-height:100vh;display:grid;place-items:center;padding:24px}.center-page{min-height:60vh}.auth-bg{background:linear-gradient(145deg,#eff9f0,#f9f6e9 55%,#eaf7ff)}.panel{background:#fff;border:1px solid #e7eee8;border-radius:22px;padding:22px;box-shadow:0 16px 38px #234b3d14;margin-bottom:18px}.narrow{width:min(430px,100%);text-align:center}.brand-icon{width:58px;height:58px;border-radius:18px;background:#e8f7ed;color:#17864b;display:grid;place-items:center;margin:0 auto 12px}.panel h1,.panel h3{margin-top:0}.muted{color:#70837b}.notice{padding:12px 14px;background:#f0f7ff;border:1px solid #d9e9fa;border-radius:12px;color:#315974;margin:12px 0}label{display:grid;gap:7px;text-align:left;font-weight:650;font-size:14px;margin:14px 0}input,select,textarea{width:100%;border:1px solid #dce7df;border-radius:13px;padding:12px 13px;background:#fbfdfb;color:#17342d;outline:none}input:focus,select:focus,textarea:focus{border-color:#4aa06d;box-shadow:0 0 0 3px #4aa06d1f}.primary,.secondary,.file-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:13px;padding:12px 16px;font-weight:750}.primary{background:#17864b;color:#fff}.secondary{background:#edf5ef;color:#246745}.primary.small{padding:9px 12px;font-size:13px}.link{border:0;background:transparent;color:#17864b;padding:10px}.app-shell{min-height:100vh}.side{position:fixed;inset:0 auto 0 0;width:240px;background:#ffffffe0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid #e2ebe4;padding:22px 16px;display:flex;flex-direction:column;z-index:20}.logo{display:flex;align-items:center;gap:11px;font-size:17px;line-height:1.05;padding:7px 8px 22px}.logo svg{color:#17864b}.nav-list{display:grid;gap:7px}.nav-list button{border:0;background:transparent;color:#6c7d76;border-radius:13px;display:flex;align-items:center;gap:10px;padding:12px;font-weight:700;text-align:left}.nav-list button.active,.nav-list button:hover{background:#eaf7ee;color:#17864b}.side-foot{margin-top:auto;display:grid;gap:8px;padding:12px 5px;color:#7b8a84}.side-foot small{overflow:hidden;text-overflow:ellipsis}.side-foot button{border:0;background:transparent;color:#60736b;display:flex;gap:7px;align-items:center;padding:5px}.main{margin-left:240px;padding:30px;max-width:1250px}.bottom{display:none}.page-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.page-head h1{font-size:28px;margin:0 0 5px}.page-head p{margin:0;color:#75857f}.period,.seg{display:flex;background:#edf3ee;border-radius:14px;padding:4px;width:max-content;margin-bottom:18px}.period button,.seg button{border:0;background:transparent;padding:9px 15px;border-radius:11px;color:#6e7d77;font-weight:700}.period button.active,.seg button.active{background:#fff;color:#17864b;box-shadow:0 4px 12px #264c3c14}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.kpi{background:#fff;border-radius:18px;padding:18px;border:1px solid #e8eee9;box-shadow:0 12px 28px #234b3d0f;display:grid;gap:7px}.kpi small{color:#7b8984}.kpi strong{font-size:22px}.kpi.green strong{color:#16834a}.kpi.orange strong{color:#dc6d16}.kpi.blue strong{color:#1974b8}.kpi.red strong{color:#c94141}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.chart{width:100%;height:260px}.legend{display:grid;gap:8px}.legend>div{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;font-size:13px}.legend i{width:10px;height:10px;border-radius:50%}.budget-card{position:relative}.budget-card .traffic{position:absolute;right:22px;top:22px;font-size:18px;font-weight:850}.traffic[data-tone=green]{color:#16834a}.traffic[data-tone=amber]{color:#b8780d}.traffic[data-tone=red]{color:#c43c3c}.progress{height:11px;background:#edf2ee;border-radius:20px;overflow:hidden;margin:14px 0}.progress span{display:block;height:100%;background:linear-gradient(90deg,#2eb262,#f0ad32,#df4a4a);border-radius:20px}.form{max-width:720px}.amount{font-size:34px;font-weight:800}.form2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tx-list{margin-top:14px}.tx{display:grid;grid-template-columns:10px 1fr auto auto;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid #edf1ee}.dot{width:9px;height:9px;border-radius:50%}.dot.expense{background:#f97316}.dot.income{background:#22a65b}.dot.saving{background:#2892c7}.tx-main{min-width:0;display:grid;gap:3px}.tx-main small{color:#788983;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx strong{font-size:14px}.tx strong.expense,.preview strong.expense{color:#d96819}.tx strong.income,.preview strong.income{color:#16834a}.tx strong.saving{color:#1974b8}.danger-text{border:0;background:transparent;color:#b94a4a;font-size:22px}.import-box{text-align:center}.import-box svg{color:#17864b}.file-button{background:#edf6ef;color:#176c3f;position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.row-between{display:flex;justify-content:space-between;gap:12px;align-items:center}.preview-list{margin-top:10px}.preview{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1ee}.preview input{width:auto}.preview>div{display:grid;gap:3px}.preview small{color:#788983}.empty{display:grid;place-items:center;min-height:180px;color:#82918b}.toast{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:100;background:#173d2f;color:#fff;padding:11px 16px;border-radius:13px;box-shadow:0 8px 22px #0000002e}code{background:#eef2ef;padding:3px 6px;border-radius:6px}@media(max-width:900px){.side{display:none}.main{margin-left:0;padding:20px 16px 92px}.bottom{position:fixed;bottom:0;left:0;right:0;display:block;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid #e2ebe4;z-index:30;padding-bottom:env(safe-area-inset-bottom)}.bottom .nav-list{grid-template-columns:repeat(5,1fr);gap:0}.bottom .nav-list button{display:grid;justify-items:center;gap:3px;padding:10px 4px 8px;font-size:10px}.kpis{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr}.page-head h1{font-size:24px}}@media(max-width:520px){.kpi strong{font-size:18px}.form2{grid-template-columns:1fr}.panel{padding:17px;border-radius:18px}.period{width:100%}.period button{flex:1}.chart{height:230px}.row-between{align-items:flex-start;flex-direction:column}.preview{grid-template-columns:22px 1fr}.preview strong{grid-column:2}.tx{grid-template-columns:8px 1fr auto}.tx .danger-text{grid-column:3}.tx strong{font-size:13px}}.edit-text{border:0;background:transparent;color:#287b59;padding:6px;border-radius:8px;display:grid;place-items:center}.edit-text:hover{background:#edf6ef}.edit-form{border:0;margin:0;max-width:none;max-height:86vh;overflow:auto}.modal-backdrop{position:fixed;inset:0;background:#12281f75;display:grid;place-items:center;padding:18px;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{width:min(760px,100%);max-height:92vh;overflow:auto;border-radius:22px;box-shadow:0 28px 70px #0000003d}.limit-item{padding:10px 0;border-bottom:1px solid #edf1ee}.limit-summary{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;font-size:13px}.limit-summary i,.limit-input i,.saving-title i,.goal-name i{display:inline-block;width:10px;height:10px;border-radius:50%;flex:0 0 auto}.limit-summary em{font-style:normal;font-weight:800;min-width:48px;text-align:right}.limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:14px}.limit-input{margin:0;display:grid;grid-template-columns:minmax(130px,1fr) 150px;align-items:center;gap:12px}.limit-input span{display:flex;align-items:center;gap:8px;min-width:0}.limit-input input{padding:10px 12px}.savings-panel{overflow:hidden}.saving-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.saving-card{border:1px solid #e2ebe4;border-radius:18px;padding:16px;background:linear-gradient(145deg,#fff,#f8fcf9)}.saving-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.saving-title>span{display:flex;align-items:center;gap:8px;font-weight:800}.saving-title>b{font-size:18px;color:#176c3f}.saving-line{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:13px;margin-top:12px}.saving-line span{color:#70837b}.saving-line strong{font-size:13px}.saving-card .progress{height:8px;margin:7px 0}.saving-card small{display:block;color:#70837b}.saving-card .mini{margin:8px 0 0}.saving-line.monthly{margin-top:15px}.saving-goal-table{display:grid;gap:8px;margin-top:16px}.saving-goal-head,.saving-goal-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(120px,1fr) minmax(120px,1fr);gap:10px;align-items:center}.saving-goal-head{font-size:12px;font-weight:800;color:#70837b;padding:0 4px}.saving-goal-row{padding:8px 4px;border-top:1px solid #edf1ee}.saving-goal-row input{padding:10px 12px}.goal-name{display:flex;align-items:center;gap:8px;font-weight:750}.saving-goal-row input::placeholder{color:#a7b3ae}.long-period{display:flex;flex-wrap:wrap;width:100%;max-width:760px}.long-period button{flex:1 1 100px}.top-charts .panel{min-height:390px}.top-charts .chart{height:240px}@media(max-width:720px){.limit-grid,.saving-grid{grid-template-columns:1fr}.limit-input{grid-template-columns:1fr 130px}.limit-summary{grid-template-columns:1fr auto}.limit-summary em{grid-column:2}.edit-actions{justify-content:stretch}.edit-actions button{flex:1}.saving-goal-head{display:none}.saving-goal-row{grid-template-columns:1fr 1fr}.goal-name{grid-column:1/-1}.saving-goal-row input:first-of-type:before{content:"Měsíční cíl"}.long-period button{flex:1 1 calc(33.333% - 8px);padding:9px 8px}.top-charts .panel{min-height:0}}@media(max-width:520px){.tx-actions{grid-column:3;justify-self:end}.limit-input{grid-template-columns:1fr 120px}.limit-summary b{font-size:12px}.modal-backdrop{padding:8px}.modal-card{max-height:96vh}.edit-form{max-height:94vh}.saving-title{align-items:flex-start}.saving-title>b{font-size:16px}.saving-goal-row{grid-template-columns:1fr}.goal-name{grid-column:auto}.saving-goal-row input{font-size:14px}.long-period{gap:2px}.long-period button{font-size:12px;flex-basis:31%}.top-charts .chart{height:220px}}.category-picker-field{display:grid;gap:7px;margin:14px 0}.category-picker-label{font-weight:650;font-size:14px;text-align:left}.category-picker-trigger{width:100%;min-height:50px;border:1px solid #dce7df;border-radius:13px;padding:11px 13px;background:#fbfdfb;color:#17342d;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.category-picker-trigger:hover{border-color:#b7d6c2}.category-trigger-main{display:flex;align-items:center;gap:10px;min-width:0}.category-trigger-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-color{display:inline-block;width:12px;height:12px;border-radius:50%;flex:0 0 auto}.category-picker-backdrop{position:fixed;inset:0;background:#12281f80;z-index:1500;display:grid;place-items:center;padding:18px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.category-picker-sheet{width:min(560px,100%);max-height:min(760px,88vh);background:#fff;border-radius:24px;box-shadow:0 28px 80px #00000047;display:flex;flex-direction:column;overflow:hidden}.category-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 10px}.category-picker-head h3{margin:0 0 3px;font-size:22px}.category-picker-head p{margin:0;color:#788983;font-size:13px}.category-close{border:0;background:#f1f5f2;color:#435c52;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.category-search{margin:8px 20px 12px;border:1px solid #dce7df;border-radius:14px;background:#f9fcfa;display:flex;align-items:center;gap:9px;padding:0 12px}.category-search svg{color:#6f8379;flex:0 0 auto}.category-search input{border:0;box-shadow:none;background:transparent;padding:12px 0}.category-search input:focus{border:0;box-shadow:none}.category-picker-scroll{overflow:auto;padding:0 12px 18px;overscroll-behavior:contain}.category-section-title{position:sticky;top:0;z-index:2;background:#fffffff5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;gap:7px;padding:12px 8px 7px;color:#6d8076;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.category-section-title svg{color:#e6a800}.category-row{display:grid;grid-template-columns:1fr 46px;align-items:center;border-bottom:1px solid #eef2ef;border-radius:14px}.category-row.selected{background:#eef8f1}.category-main{border:0;background:transparent;color:#17342d;display:grid;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;text-align:left;padding:14px 10px;min-height:54px;font-weight:750}.category-check{color:#17864b;font-weight:900;font-size:17px}.category-star{border:0;background:transparent;color:#b4c0bb;width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.category-star.active{color:#e6a800}.category-star:hover{background:#f4f7f5}.category-empty{padding:28px 12px;text-align:center;color:#7b8a84}@media(max-width:600px){.category-picker-backdrop{place-items:end center;padding:0}.category-picker-sheet{width:100%;max-height:86dvh;border-radius:24px 24px 0 0;padding-bottom:env(safe-area-inset-bottom)}.category-picker-head{padding:18px 18px 9px}.category-search{margin:7px 18px 10px}.category-picker-scroll{padding:0 10px 14px}.category-main{padding:15px 10px;min-height:58px;font-size:16px}.category-section-title{padding-top:13px}.category-picker-trigger{min-height:54px}}.category-icon-badge{width:30px;height:30px;border-radius:10px;display:inline-grid;place-items:center;flex:0 0 auto;background:color-mix(in srgb,currentColor 10%,white);border:1px solid;box-shadow:inset 0 0 0 1px #ffffff8c}.category-icon-badge svg{stroke-width:2.2}.category-main{grid-template-columns:34px 1fr auto}.category-trigger-main .category-icon-badge{width:28px;height:28px;border-radius:9px}.tx-category-icon{display:grid;place-items:center}.tx-category-icon .category-icon-badge{width:32px;height:32px}.limit-input .category-icon-badge,.goal-name .category-icon-badge{width:28px;height:28px;border-radius:9px}.limit-input span,.goal-name{gap:10px}@media(max-width:600px){.category-icon-badge{width:32px;height:32px}.category-main{grid-template-columns:36px 1fr auto;gap:11px}.category-main span:not(.category-icon-badge):not(.category-check){font-weight:760}.category-trigger-main .category-icon-badge{width:30px;height:30px}}.category-manager{overflow:hidden}.category-manager-group{margin-top:18px}.category-manager-group h4{margin:0 0 8px;color:#5f746a;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.category-manager-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #edf1ee}.category-manager-name{display:flex;align-items:center;gap:10px;min-width:0;font-weight:760}.category-manager-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-order-actions{display:flex;align-items:center;gap:7px}.category-order-actions .secondary{padding:9px 11px}.icon-button{min-width:38px;padding:9px!important;font-size:18px;line-height:1}.category-edit-box{grid-column:1/-1;display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(150px,1fr) 120px auto;gap:10px;align-items:end;padding:12px;border:1px solid #dfe9e2;background:#f8fbf9;border-radius:14px}.category-edit-preview{grid-column:1/-1;display:flex;align-items:center;gap:10px}.category-edit-box input,.category-edit-box select{margin:0}.category-color-edit{margin:0;display:flex;align-items:center;gap:8px;font-size:12px;color:#667a71}.category-color-edit input[type=color]{width:50px;height:42px;padding:4px;cursor:pointer}.category-edit-actions{display:flex;gap:8px;justify-content:flex-end}.category-edit-actions button{white-space:nowrap}@media(max-width:760px){.category-manager-row{grid-template-columns:1fr}.category-order-actions{justify-content:flex-start}.category-edit-box{grid-template-columns:1fr 1fr}.category-edit-preview{grid-column:1/-1}.category-edit-actions{grid-column:1/-1;justify-content:stretch}.category-edit-actions button{flex:1}}@media(max-width:520px){.category-edit-box{grid-template-columns:1fr}.category-edit-preview,.category-edit-actions{grid-column:auto}.category-order-actions{gap:6px;flex-wrap:wrap}.category-order-actions .secondary{padding:9px 10px}.category-manager-row{padding:12px 0}}.tx{grid-template-columns:42px minmax(0,1fr) auto auto!important;column-gap:12px!important;align-items:center!important}.tx-category-icon{width:42px;min-width:42px;display:flex!important;align-items:center;justify-content:center}.tx-category-icon .category-icon-badge{width:34px!important;height:34px!important;min-width:34px;margin:0!important}.tx-main{min-width:0;padding-left:0!important}.tx-main b{display:block;line-height:1.25;margin:0 0 3px}.tx-main small{display:block;line-height:1.3}@media(max-width:520px){.tx{grid-template-columns:40px minmax(0,1fr) auto!important;gap:10px!important}.tx-category-icon{width:40px;min-width:40px}.tx strong{grid-column:3}.tx-actions{grid-column:3!important;justify-self:end}}.merchant-suggestions{margin:-2px 0 4px}.merchant-suggestions-label{display:block;font-size:12px;font-weight:800;letter-spacing:.02em;color:var(--muted,#64748b);margin-bottom:8px}.merchant-chips{display:flex;flex-wrap:wrap;gap:8px}.merchant-chips button{appearance:none;border:1px solid #dbe4df;background:#fff;color:#18372b;border-radius:999px;padding:9px 13px;font:inherit;font-size:14px;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 1px 2px #0f172a0a}.merchant-chips button.active{border-color:#0b6b48;background:#e8f6ef;color:#075b3d}.merchant-chips button:active{transform:translateY(1px)}@media(max-width:640px){.merchant-chips{gap:7px}.merchant-chips button{padding:9px 12px;font-size:13px}}.tx-actions{display:flex;align-items:center;gap:4px}.edit-text{border:0;background:#edf5ef;color:#176c3f;border-radius:10px;padding:8px;display:grid;place-items:center}.edit-text:hover{background:#dff0e4}.edit-form{position:fixed;z-index:120;left:50%;top:50%;transform:translate(-50%,-50%);width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;margin:0!important;box-shadow:0 24px 80px #00000047!important;border:2px solid #dfece3!important}.edit-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.category-limits{display:grid;gap:14px}.limit-item{padding:12px 0;border-bottom:1px solid #edf1ee}.limit-item:last-child{border-bottom:0}.limit-summary{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px}.limit-summary span{display:flex;align-items:center;gap:8px;font-weight:700}.limit-summary i,.limit-input i{width:10px;height:10px;border-radius:50%;display:inline-block}.limit-summary em{font-style:normal;font-weight:800}.limit-summary em[data-tone=green]{color:#16834a}.limit-summary em[data-tone=amber]{color:#b8780d}.limit-summary em[data-tone=red]{color:#c43c3c}.limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.limit-input{margin:0}.limit-input>span{display:flex;align-items:center;gap:8px}.edit-form:focus-within{outline:3px solid rgba(23,134,75,.12)}@media(max-width:700px){.edit-form{top:16px;bottom:84px;transform:translate(-50%);max-height:none;width:calc(100vw - 24px);padding:18px!important}.edit-form .row-between{flex-direction:row;align-items:flex-start}.edit-actions{position:sticky;bottom:-18px;background:#fff;padding:12px 0 2px}.limit-grid{grid-template-columns:1fr}.limit-summary{grid-template-columns:1fr auto}.limit-summary em{grid-column:2}.tx-actions{gap:0}.edit-text,.danger-text{min-width:36px;min-height:36px}}.period-browser{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;gap:10px;align-items:center;margin:-4px 0 18px;max-width:900px}.period-arrow,.today-button{border:1px solid #dce7df;background:#fff;color:#246745;border-radius:13px;padding:10px 14px;font-weight:750;white-space:nowrap}.period-arrow:disabled{opacity:.38;cursor:not-allowed}.period-selection{display:flex;align-items:center;justify-content:center;gap:14px;background:#ffffffbd;border:1px solid #e2ebe4;border-radius:14px;padding:8px 12px;min-width:0}.period-selection strong{font-size:15px;text-transform:none}.period-selection label{display:flex;align-items:center;gap:7px;margin:0;font-size:12px;color:#70837b;font-weight:650}.period-selection input{width:auto;min-width:142px;padding:7px 9px;border-radius:10px}.today-button{background:#edf6ef}.period-arrow:hover:not(:disabled),.today-button:hover{background:#e7f4eb}@media(max-width:760px){.period-browser{grid-template-columns:1fr 1fr;max-width:none}.period-selection{grid-column:1/-1;grid-row:1;flex-wrap:wrap}.period-arrow{grid-row:2}.today-button{grid-column:1/-1;grid-row:3}.period-arrow span{display:none}}@media(max-width:480px){.period-selection{align-items:stretch;flex-direction:column;gap:6px}.period-selection strong{text-align:center;font-size:16px}.period-selection label{justify-content:center}.period-selection input{min-width:0;flex:1}.period-arrow,.today-button{padding:10px 9px}}
