@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}.collapse{visibility:collapse}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.container{width:100%}.block{display:block}.flex{display:flex}.inline-block{display:inline-block}.table{display:table}.table-row{display:table-row}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}:root{--bg:#11141b;--text:#e2e8f0;--text-inverse:#f7fafc;--muted:#a0aec0;--sidebar-width:260px;--sidebar-collapsed-width:72px;--surface:#ffffff08;--surface-2:#ffffff05;--surface-3:#ffffff0d;--border:#ffffff0f;--shadow:0 18px 55px #00000059;--shadow-strong:0 18px 55px #00000073;--sidebar-grad-start:#171b24;--sidebar-grad-end:#121621;--accent:#63b3ed;--accent-strong:#4299e1;--success:#68d391;--danger:#fc8181;--danger-strong:#e53e3e;--warning:#ed8936;--landing-card:#171b24;--landing-action:#1e2430;--loading-bg:#2d313c;--ring:#63b3ed80}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7fafc;--text:#11141b;--text-inverse:#11141b;--muted:#2d313c;--surface:#11141b0a;--surface-2:#11141b08;--surface-3:#11141b0f;--border:#11141b1a;--shadow:0 18px 55px #11141b1f;--shadow-strong:0 18px 55px #11141b29;--sidebar-grad-start:#f7fafc;--sidebar-grad-end:#f7fafc;--landing-card:#f7fafc;--landing-action:#f7fafc;--loading-bg:#f7fafc;--ring:#4299e159}body{background-color:var(--bg);min-height:100vh;color:var(--text);justify-content:flex-start;align-items:stretch;margin:0;font-family:Inter,sans-serif;display:flex;overflow-x:hidden}body>*{width:100%}.app-container{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:1rem;display:flex}.dashboard-shell{width:100%;min-height:100vh}.sidebar{height:100vh;width:var(--sidebar-width);box-sizing:border-box;background:linear-gradient(180deg,var(--sidebar-grad-start)0%,var(--sidebar-grad-end)100%);border-right:1px solid var(--border);padding:1rem;transition:width .2s,padding .2s,border-color .2s;position:fixed;top:0;left:0;overflow:hidden}.sidebar-collapsed{padding:.75rem .6rem}.sidebar-inner{background-color:var(--surface);height:100%;box-shadow:var(--shadow-strong);border-radius:18px;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.sidebar-top{justify-content:flex-start;align-items:center;gap:.75rem;display:flex}.sidebar-top>div{min-width:0}.sidebar-icon-button{appearance:none;border:1px solid var(--border);background-color:var(--surface-2);color:var(--muted);cursor:pointer;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.sidebar-icon-button:hover{background-color:var(--surface-3);color:var(--text-inverse)}.sidebar-mobile-open{display:none}.sidebar-resize-handle{cursor:col-resize;touch-action:none;width:10px;height:100%;position:absolute;top:0;right:0}.sidebar-resize-handle:after{content:"";background-color:var(--border);border-radius:999px;width:2px;position:absolute;top:14px;bottom:14px;left:4px}@supports (color:color-mix(in lab, red, red)){.sidebar-resize-handle:after{background-color:color-mix(in srgb,var(--border)80%,transparent)}}.sidebar-resize-handle:after{opacity:.6}.sidebar-resize-handle:hover:after{opacity:1;background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.sidebar-resize-handle:hover:after{background-color:color-mix(in srgb,var(--accent)55%,transparent)}}.sidebar-brand{color:var(--text-inverse);letter-spacing:.02em;font-size:1.1rem;font-weight:800;line-height:1.2}.sidebar-subtitle{color:var(--muted);margin-top:.2rem;font-weight:500;line-height:1.2}.sidebar-links{flex-direction:column;gap:.5rem;margin-top:.25rem;display:flex}.sidebar-link{color:var(--text);border-radius:14px;align-items:center;padding:.75rem .9rem;text-decoration:none;display:flex}@supports (color:color-mix(in lab, red, red)){.sidebar-link{color:color-mix(in srgb,var(--text)75%,transparent)}}.sidebar-link{background-color:var(--surface-2);border:1px solid var(--border);font-weight:700;transition:transform .2s,background-color .2s,color .2s}.sidebar-link:hover{background-color:var(--surface-3);color:var(--text-inverse);transform:translate(2px)}.sidebar-link-active{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.sidebar-link-active{background-color:color-mix(in srgb,var(--accent)16%,transparent)}}.sidebar-link-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.sidebar-link-active{border-color:color-mix(in srgb,var(--accent)35%,transparent)}}.sidebar-link-active{color:var(--text-inverse)}.sidebar-spacer{flex:1}.sidebar-footer{flex-direction:column;gap:.75rem;display:flex}.sidebar-user{background-color:var(--surface-2);border:1px solid var(--border);border-radius:16px;align-items:center;gap:.75rem;padding:.8rem;display:flex}.sidebar-avatar{object-fit:cover;background-color:var(--accent);border-radius:999px;width:42px;height:42px}@supports (color:color-mix(in lab, red, red)){.sidebar-avatar{background-color:color-mix(in srgb,var(--accent)22%,transparent)}}.sidebar-user-meta{flex-direction:column;gap:.2rem;min-width:0;display:flex}.sidebar-user-name{color:var(--text-inverse);white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.sidebar-user-email{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.sidebar-logout{color:var(--danger);background-color:var(--danger);border-radius:14px;padding:.75rem .9rem;font-weight:800;text-decoration:none}@supports (color:color-mix(in lab, red, red)){.sidebar-logout{background-color:color-mix(in srgb,var(--danger)10%,transparent)}}.sidebar-logout{border:1px solid var(--danger)}@supports (color:color-mix(in lab, red, red)){.sidebar-logout{border:1px solid color-mix(in srgb,var(--danger)24%,transparent)}}.sidebar-logout:hover{background-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.sidebar-logout:hover{background-color:color-mix(in srgb,var(--danger)14%,transparent)}}.theme-toggle{cursor:pointer;background-color:var(--surface-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.theme-toggle:hover{background-color:var(--surface-3)}.theme-toggle-label{color:var(--text-inverse);font-weight:800}.theme-toggle-chip{border:1px solid var(--border);background-color:var(--surface);color:var(--muted);border-radius:999px;padding:.35rem .65rem;font-weight:800}.dashboard-main{margin-left:var(--sidebar-width);box-sizing:border-box;justify-content:center;min-height:100vh;padding:2rem 1.5rem;transition:margin-left .2s;display:flex}.dashboard-page{flex-direction:column;gap:1.25rem;width:100%;max-width:1100px;display:flex}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dashboard-title{letter-spacing:-.02em;color:var(--text-inverse);margin:0;font-size:2rem;font-weight:800}.dashboard-subtitle{color:var(--muted);margin:.35rem 0 0;font-weight:500}.dashboard-header-actions{align-items:center;gap:.75rem;display:flex}.panel{background-color:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;padding:1.2rem}.panel-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.panel-title{color:var(--text-inverse);letter-spacing:-.01em;font-weight:800}.panel-subtitle{color:var(--muted);margin-top:.25rem;font-size:.95rem;font-weight:500}.panel-link{color:var(--accent);border-radius:12px;padding:.35rem .6rem;font-weight:700;text-decoration:none}.panel-link:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.panel-link:hover{background-color:color-mix(in srgb,var(--accent)14%,transparent)}}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.stat-card{padding:1.2rem}.stat-label{color:var(--muted);font-weight:600}.stat-value{letter-spacing:-.02em;color:var(--text-inverse);margin-top:.45rem;font-size:1.8rem;font-weight:900}.stat-meta{color:var(--text);margin-top:.5rem}@supports (color:color-mix(in lab, red, red)){.stat-meta{color:color-mix(in srgb,var(--text)75%,transparent)}}.stat-meta{font-size:.95rem;font-weight:600}.dashboard-grid{grid-template-columns:1.1fr 1fr;gap:1rem;display:grid}.breakdown{grid-template-columns:180px 1fr;align-items:center;gap:1rem;display:grid}.donut{background:conic-gradient(#63b3edf2 0 38%,#68d391f2 38% 62%,#fc8181f2 62% 82%,#ed8936f2 82% 100%);width:180px;height:180px;box-shadow:var(--shadow);border-radius:50%;position:relative}.donut:after{content:"";background-color:var(--bg);border:1px solid var(--border);border-radius:50%;position:absolute;inset:26px}.legend{flex-direction:column;gap:.5rem;display:flex}.legend-item{color:var(--text);align-items:center;gap:.6rem;font-weight:700;display:flex}@supports (color:color-mix(in lab, red, red)){.legend-item{color:color-mix(in srgb,var(--text)75%,transparent)}}.legend-dot{border-radius:999px;width:10px;height:10px}.dot-a{background-color:#63b3edf2}.dot-b{background-color:#68d391f2}.dot-c{background-color:#fc8181f2}.dot-d{background-color:#ed8936f2}.txn-list{flex-direction:column;gap:.6rem;display:flex}.txn-row{background-color:var(--surface-2);border:1px solid var(--border);border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem .9rem;display:flex}.txn-left{flex-direction:column;gap:.2rem;display:flex}.txn-name{color:var(--text-inverse);font-weight:800}.txn-meta{color:var(--muted);font-size:.95rem;font-weight:600}.txn-amount{letter-spacing:-.01em;font-weight:900}.positive{color:var(--success)}.negative{color:var(--danger)}.table{flex-direction:column;gap:.5rem;display:flex}.table-head{color:var(--muted);grid-template-columns:140px 1.4fr 1fr 140px;gap:.75rem;padding:.6rem .75rem;font-size:.95rem;font-weight:700;display:grid}.table-row{background-color:var(--surface-2);border:1px solid var(--border);border-radius:16px;grid-template-columns:140px 1.4fr 1fr 140px;align-items:center;gap:.75rem;padding:.9rem .75rem;display:grid}.table-amount{text-align:right}.table-muted{color:var(--muted);font-weight:650}.setup-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.setup-item{background-color:var(--surface-2);border:1px solid var(--border);color:var(--text-inverse);border-radius:16px;align-items:center;gap:.6rem;padding:.85rem .9rem;font-weight:750;display:flex}.setup-add{align-items:center;gap:.75rem;display:flex}.setup-input{border:1px solid var(--border);background-color:var(--surface-2);min-width:0;color:var(--text);border-radius:14px;outline:none;flex:1;padding:.85rem .9rem}.setup-input:focus{box-shadow:0 0 0 4px var(--ring)}.setup-chips{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.setup-chip{appearance:none;border:1px solid var(--border);background-color:var(--surface);color:var(--muted);cursor:pointer;border-radius:999px;padding:.45rem .7rem;font-weight:850}.setup-chip:hover{background-color:var(--surface-3);color:var(--text-inverse)}.setup-actions{justify-content:flex-end;display:flex}.wide-card{width:100%;max-width:900px}.section-header{flex-direction:column;align-items:center;gap:.75rem;display:flex}@media (max-width:820px){:root{--sidebar-width:220px}.dashboard-main{padding:1.5rem 1rem}}@media (max-width:680px){.dashboard-main{margin-left:0;padding:1.1rem .9rem}.sidebar{z-index:60;width:min(86vw,320px)}.sidebar-resize-handle{display:none}.sidebar-collapsed{transform:translate(-110%)}.sidebar-mobile-open{z-index:70;appearance:none;border:1px solid var(--border);background-color:var(--surface);color:var(--text-inverse);cursor:pointer;box-shadow:var(--shadow);border-radius:14px;padding:.55rem .8rem;font-weight:900;display:inline-flex;position:fixed;top:14px;left:14px}.sidebar-mobile-open:hover{background-color:var(--surface-3)}.dashboard-header{flex-direction:column;align-items:stretch}.dashboard-header-actions{flex-wrap:wrap;justify-content:flex-start}.stats-grid{grid-template-columns:1fr}.table-head{display:none}.table-row{grid-template-columns:1fr;gap:.35rem}.table-amount{text-align:left}.setup-list{grid-template-columns:1fr}.setup-add{flex-direction:column;align-items:stretch}}@media (max-width:1000px){.stats-grid,.dashboard-grid{grid-template-columns:1fr}.breakdown{grid-template-columns:1fr;justify-items:center}.table-head,.table-row{grid-template-columns:110px 1.3fr .9fr 110px}}.loading-state,.error-state{background-color:var(--loading-bg);box-shadow:var(--shadow-strong);text-align:center;border-radius:15px;padding:3rem}.loading-text{color:var(--muted);font-size:1.8rem;font-weight:500;animation:1.5s ease-in-out infinite pulse}.main-card-wrapper{background-color:var(--landing-card);box-shadow:0 18px 55px #0000008c,0 0 0 1px var(--border);border-radius:20px;flex-direction:column;align-items:center;gap:2rem;width:90%;max-width:500px;padding:3rem;animation:.8s ease-out forwards fadeInScale;display:flex}.auth0-logo{opacity:0;width:160px;margin-bottom:1.5rem;animation:1s ease-out .2s forwards slideInDown}.main-title{color:var(--text-inverse);text-align:center;text-shadow:0 4px 10px #0000004d;opacity:0;margin-bottom:1rem;font-size:2.8rem;font-weight:700;animation:1s ease-out .4s forwards fadeIn}.action-card{background-color:var(--landing-action);opacity:0;border-radius:15px;flex-direction:column;align-items:center;gap:1.8rem;width:calc(100% - 2rem);padding:2.5rem;animation:1s ease-out .6s forwards fadeIn;display:flex;box-shadow:inset 0 2px 5px #0000004d,0 5px 15px #0000004d}.action-text{color:var(--text);font-size:1.25rem}@supports (color:color-mix(in lab, red, red)){.action-text{color:color-mix(in srgb,var(--text)75%,transparent)}}.action-text{text-align:center;font-weight:400;line-height:1.6}.button{cursor:pointer;text-transform:uppercase;letter-spacing:.08em;border:none;border-radius:10px;outline:none;padding:1.1rem 2.8rem;font-size:1.2rem;font-weight:600;transition:all .3s cubic-bezier(.25,.8,.25,1);box-shadow:0 8px 20px #0006}.button-ghost{background-color:var(--surface-2);color:var(--text-inverse);border:1px solid var(--border);text-decoration:none}@supports (color:color-mix(in lab, red, red)){.button-ghost{border:1px solid color-mix(in srgb,var(--border)110%,transparent)}}.button-ghost{box-shadow:none;text-transform:none;letter-spacing:0;padding:.75rem 1.1rem;font-size:1rem}.button-ghost:hover{background-color:var(--surface-3);transform:translateY(-2px)}.button:focus{box-shadow:0 0 0 4px var(--ring)}.button.login{background-color:var(--accent);color:#1a1e27}.button.login:hover{background-color:var(--accent-strong);transform:translateY(-5px)scale(1.03);box-shadow:0 12px 25px #00000080}.button.logout{background-color:var(--danger);color:#1a1e27}.button.logout:hover{background-color:var(--danger-strong);transform:translateY(-5px)scale(1.03);box-shadow:0 12px 25px #00000080}.logged-in-section{flex-direction:column;align-items:center;gap:1.5rem;width:100%;display:flex}.logged-in-message{color:var(--success);font-size:1.5rem;font-weight:600;animation:1s ease-out .8s forwards fadeIn}.profile-card{padding:2.2rem;animation:.8s ease-out 1.2s forwards scaleIn}.profile-picture{object-fit:cover;border-radius:50%;width:110px;height:110px;transition:transform .3s ease-in-out}.profile-picture:hover{transform:scale(1.05)}.profile-name{margin-top:.5rem;font-size:2rem}.profile-email{text-align:center;font-size:1.15rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-70px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (max-width:600px){.main-card-wrapper{gap:1.5rem;padding:2rem}.main-title{font-size:2.2rem}.button{padding:.9rem 2rem;font-size:1rem}.auth0-logo{width:120px}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
