header{z-index:var(--z-index-header)}main.ssr-page{width:100%;min-height:80vh;background-color:var(--color-surface);text-align:left}.ssr-page-content{max-width:700px;margin:auto}main-app{display:block;width:100%;height:100%}.container{margin:0 auto;padding:.25rem}.menu-button{font-size:1.5rem;padding:0 .5rem}.menu-button:focus{border:none}.navbar:not(.signed-in) nav-links{display:none}.logo a{margin-top:10px;display:block;height:18px}.logo img{height:18px;margin-left:.5rem}.navbar .container{display:flex}.navbar .container .spacer{flex:1 1 auto}.sidenav-container{background-color:var(--color-surface);margin:0 .5rem 0 0;padding:.25rem}.cta-button:hover{background-color:var(--color-accent)}.footer{margin-top:5rem;text-align:center;font-size:.85rem;color:#888;padding-bottom:2rem}.page-container>.card{display:block;width:100%;max-width:calc(100vw - .5rem);min-height:80vh;background-color:var(--color-surface);padding:.5rem}router-element{width:100%;height:100%}.main.container{display:flex;flex-direction:row;position:relative}.main.container.signed-in>*{display:flex}main.main.container:not(.signed-in)>side-nav-element,.main.container:not(.signed-in) .sidenav-container{display:none!important}.page-container{flex:1 1 auto;min-height:80vh}.page-container main-app>*{height:100%}.data-object-div{display:flex;flex-direction:row;flex-wrap:wrap}.data-object-div>div{flex:1 1 auto}.data-object-div label{margin-right:.25rem;font-weight:700;margin:.25rem .5rem}@media screen and (max-width: 992px){body:not(.side-nav-hidden){height:100vh;overflow:hidden}.main.container{padding:0}main-app>.card{border-radius:0}}.pwa-back-button{display:none;position:fixed;bottom:3.25rem;left:1.5rem;z-index:120;font-size:1.25rem;padding:.65rem .9rem;align-items:center;box-shadow:var(--shadow-elevated);border-radius:999px}:root{--color-primary: #111827;--color-primary-light: #4b5563;--color-primary-dark: #030712;--color-accent: #0277BD;--color-accent-light: #03A9F4;--color-accent-bg: #E3F2FD;--color-accent-dark: #111827;--color-bg: #f5f5f5;--color-surface: #ffffff;--color-border: #e5e7eb;--color-text: #111827;--color-text-light: #4b5563;--color-text-muted: #9ca3af;--color-success: #1f2933;--color-warning: #6b7280;--color-error: #111827;--color-info: #4b5563;--active-box-shadow: 0 6px 24px rgba(0, 0, 0, .12), 0 0 0 1px rgba(0, 0, 0, .12);--font-family-base: "Roboto", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-md: .875rem;--font-size-lg: 1rem;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.45;--space-2xs: 2px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 10px;--shadow-soft: 0 1px 2px rgba(0, 0, 0, .06);--shadow-elevated: 0 4px 12px rgba(0, 0, 0, .08);--transition-fast: .12s ease-out;--z-index-header: 100;--z-index-side-nav: 90;--z-index-side-nav-overlay: 80;--z-index-dropdown-menu: 10;--header-height: 40px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-family-base);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-sm);font-weight:500;line-height:var(--line-height-snug);letter-spacing:.01em}h1{font-size:1.35rem}h2{font-size:1.2rem}h3{font-size:1.05rem}h4,h5,h6{font-size:.95rem}p{margin:0 0 var(--space-sm)}small{font-size:var(--font-size-xs)}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr;background-color:var(--color-bg)}.app-main{padding:var(--space-md)}.row{display:flex}.row--center{align-items:center}.row--between{justify-content:space-between}.row--wrap{flex-wrap:wrap}.row--gap-xs{gap:var(--space-xs)}.row--gap-sm{gap:var(--space-sm)}.grid{display:grid;gap:var(--space-sm)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.surface,.card{background-color:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-soft)}.card{padding:var(--space-md)}.card:hover{text-decoration:none}.card--tight{padding:var(--space-sm)}.card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.card__title{font-size:var(--font-size-sm);font-weight:500;letter-spacing:.06em;color:var(--color-text-light)}.card__body{font-size:var(--font-size-md)}.metric{display:flex;flex-direction:column;gap:var(--space-xs)}.metric__label{font-size:var(--font-size-xs);letter-spacing:.08em;color:var(--color-text-muted)}.metric__value{font-size:var(--font-size-lg);font-weight:500;line-height:var(--line-height-tight)}.metric__delta{font-size:var(--font-size-xs)}input,select,textarea{font-family:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-surface);border-radius:var(--radius-sm);border:1px solid var(--color-border);padding:4px 8px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 1px #0000001f}.field{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-sm)}.field--inline{flex-direction:row;align-items:center;gap:var(--space-sm)}.field__label{font-size:var(--font-size-xs);font-weight:500;letter-spacing:.06em;color:var(--color-text-light)}.field__description{font-size:var(--font-size-xs);color:var(--color-text-muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:4px 10px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:var(--font-size-sm);font-weight:500;letter-spacing:.02em;cursor:pointer;background-color:transparent;color:var(--color-text);transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.button:hover{text-decoration:none}.button--primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary-dark)}.button--primary:hover{background-color:var(--color-primary-dark);box-shadow:var(--active-box-shadow)}.button--ghost{background-color:transparent;border-color:var(--color-border);color:var(--color-text-light)}.button--ghost:hover{background-color:#00000008}.button--icon{padding-inline:6px}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table thead{background-color:#f3f4f6}.data-table th,.data-table td{padding:4px 8px;border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table th{text-align:left;font-weight:500;font-size:var(--font-size-xs);letter-spacing:.06em;color:var(--color-text-light)}.data-table td{line-height:var(--line-height-tight)}.data-table tbody tr:hover{background-color:#00000005}.data-table--numeric td,.data-table--numeric th{text-align:right}.data-table__cell--muted{color:var(--color-text-muted)}.badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;font-size:var(--font-size-xs);font-weight:500;letter-spacing:.04em;border:1px solid transparent}.badge--success{border-color:#0003;color:var(--color-success);background-color:#0000000a}.badge--warning{border-color:#00000040;color:var(--color-warning);background-color:#0000000f}.badge--error{border-color:#0006;color:var(--color-error);background-color:#00000014}.badge--info{border-color:#00000040;color:var(--color-info);background-color:#0000000d}.text-muted{color:var(--color-text-muted)}.text-light{color:var(--color-text-light)}.text-small{font-size:var(--font-size-xs)}.text-right{text-align:right}.text-center{text-align:center}.m-0{margin:0}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.brand-mark{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.brand-mark img,.brand-mark svg{width:100%;height:100%;display:block}.float-right{float:right}button+button{margin:auto .25rem}button,.button{appearance:none;border:none;background:none;padding:0;margin:0;font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:30px;padding:0 .9rem;border-radius:999px;cursor:pointer;white-space:nowrap;background-color:var(--color-accent);border:var(--color-accent);color:var(--color-surface);border:1px solid #e4e4e7;transition:background-color .12s ease-out,border-color .12s ease-out,color .12s ease-out,transform 80ms ease-out,box-shadow .12s ease-out}button:disabled,.button:disabled{opacity:.4;cursor:default;pointer-events:none}button:hover,.button:hover{background-color:var(--color-accent-light);border-color:#d4d4d8}button:active,.button:active{transform:translateY(1px)}button:focus-visible,.button:focus-visible{outline:none;box-shadow:0 0 0 1px #fff,0 0 0 3px #1118278c}.button--primary{background-color:#111827;border-color:#020617;color:#f9fafb}.button--primary:hover{background-color:#020617;border-color:#020617}.button--primary:active{transform:translateY(1px)}.button--ghost{background-color:transparent;border-color:transparent;color:var(--color-text-light)}.button--ghost:hover{background-color:#f4f4f5;border-color:#e4e4e7}.button--danger{background-color:#18181b;border-color:#09090b;color:#fafafa}.button--danger:hover{background-color:#030712}.button--icon{padding:0;width:28px;min-height:28px;border-radius:999px;justify-content:center}.button--icon svg{width:14px;height:14px}button[type=reset],.button--reset{background-color:#f7f7f8;border:1px solid #d4d4d8;color:#374151;font-weight:500}button[type=reset]:hover,.button--reset:hover{background-color:#ececef;border-color:#c5c5c9;color:#111827}button[type=reset]:active,.button--reset:active{background-color:#e5e5e7;transform:translateY(1px)}.button--sm{min-height:26px;padding:0 .7rem;font-size:var(--font-size-xs)}.button--lg{min-height:36px;padding:0 1.1rem;font-size:var(--font-size-md)}.form-small-header h3{font-size:.85rem}.navbar nav-links{display:none}.nav{position:relative;min-height:400px}.nav a{color:unset}.nav a.active{font-weight:700;color:var(--color-accent);border-bottom:2px solid var(--color-accent-light);background-color:var(--color-accent-bg);border-radius:.25rem}.nav a.active:hover{text-decoration:none}.nav-item .nav-item{margin-left:1rem}.message-section{text-align:center}.nav-links{display:flex;flex-direction:row;gap:.5rem;align-items:center}.nav-links>a{flex:0 0 auto}balance-sheet>a{border:1px solid gray;border-radius:.25rem;display:block;margin:0 0 .5rem;padding:.25rem .5rem}balance-sheet>a div{color:var(--color-text)}balance-sheet>a:hover{background-color:var(--color-bg);box-shadow:var(--active-box-shadow)}balance-sheet .line-items,balance-sheet .notes{padding-left:1rem}balance-sheet .line-items{display:flex;flex-direction:row;flex-wrap:wrap}balance-sheet .line-items>*{flex:1 1 auto}page-header-element{display:flex;flex-direction:row;justify-content:space-between}page-header-element>*{flex:1 1 auto}page-header-element>*:last-child{flex:0 0 auto}.action-button{display:flex;flex-direction:row;align-items:center}button-menu-element{display:inline}button-menu-element .dropdown-menu-button{width:100%;border-radius:var(--radius-sm);text-align:left;margin:0}button-menu-element .dropdown-content.card{padding:0}button-menu-element button{font-weight:700}popover-menu{position:relative;display:inline}.dropdown-content{display:none;position:absolute;top:1.5rem}.dropdown-content>*{display:block}.dropdown-content.visible{display:unset;z-index:var(--z-index-dropdown-menu);min-width:200px;left:0}.dropdown-content.right{left:unset;right:0}balance-sheet-charts-element{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap}balance-sheet-charts-element>*{flex:0 0 auto}pie-chart-element{--size: 360px;height:var(--size);width:var(--size)}pie-chart-element,pie-chart-element>.pie-chart-container{display:inline-block;height:var(--size);width:var(--size)}line-chart-element{--size: 360px;height:var(--size);width:var(--size)}line-chart-element,line-chart-element>.line-chart-container{display:inline-block;height:var(--size);width:var(--size)}.header-container{display:flex;flex-direction:row;justify-content:center;align-items:center}.header-container h1{flex:1 1 auto}.notes-section{padding-bottom:1rem}.notes-section>pre{font-style:italic;white-space:wrap;font-family:var(--font-family-base)}.balance-sheet-items{display:flex;flex-direction:row;gap:1rem;flex-wrap:wrap}.balance-sheet-items>custom-table-el{flex:1 0 400px;max-width:500px}custom-table-el{margin-bottom:1rem}custom-table-el table tbody tr:last-child{font-weight:700;background-color:var(--color-bg)}.balance-sheet-line-item{width:100%}.balance-sheet-line-item>*:nth-child(2){float:right}.assets-and-liabilities{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem}.assets-and-liabilities>*{flex:1 1 auto}custom-table-el{display:block}custom-table-el table{width:100%;border-collapse:collapse}custom-table-el th,custom-table-el td{border:1px solid var(--color-border);padding:3px 5px;font-variant-numeric:tabular-nums}custom-table-el th{text-align:left;font-weight:600;background:var(--color-bg)}custom-table-el td{text-align:left}.form-group-balances .form-group{display:inline-block;vertical-align:top;padding:0 1rem 1rem 0}.form-group-balances form-field-element label{display:flex;flex-direction:row}.form-group-balances form-field-element label>*{flex:0 1 150px}.form-group-balances form-field-element label>*:first-child{flex:0 0 150px}.form-group-balances form-field-element{display:block;width:100%}.form-group-balances form-field-element .validation-message{display:none}.form-group-balances form-element.item-balance-group{display:block;padding:0 1rem 0 0}.item-balance-group section section{display:flex;flex-direction:row;align-items:flex-start}.item-balance-group form-field-element{display:flex;width:auto;flex:1 1 auto;padding:.25rem .25rem 0 0}.item-balance-group button{margin:0;height:1.2rem;line-height:.75rem}form-field-element[name=notes],form-field-element[name=notes] textarea,form-field-element[name=notes] label{width:100%;min-height:100px}@media screen and (max-width: 992px){.form-group-balances form-element.item-balance-group,.form-group-balances .form-group{padding-right:0;width:100%}.item-balance-group section section>form-field-element{flex:1 1 auto}.item-balance-group section section form-field-element[type=button]{justify-content:flex-end}}form-field-element{display:inline-block;padding:.25rem .5rem 0 0}form-field-element[type=hidden]{display:none}form-field-element>label,form-field-element>.field-container{display:flex;flex-direction:column;align-items:flex-start}form-field-element>.field-container{height:100%;justify-content:flex-end}form-field-element.header{display:block}form-field-element>label>span{display:block;font-size:small}form-field-element .validation-error:before{content:"* "}form-field-element.invalid .field-input-element{border:1px solid red}form-field-element .validation-message{display:block;font-size:x-small;color:red;min-height:1rem;min-width:0;white-space:normal;word-break:break-word}.popover-trigger{margin-left:.5rem;position:relative}.popover-content{display:none;position:absolute;left:.25rem;top:.25rem;background-color:#fff;min-width:200px;padding:.25rem .5rem;box-shadow:var(--active-box-shadow);z-index:1}.popover-trigger:hover .popover-content,.popover-trigger:active .popover-content{display:block}.custom-dialog{display:contents}.custom-dialog>dialog{position:fixed;left:50%;transform:translate(-50%);max-width:min(90vw,720px);width:fit-content;max-height:min(80svh,80vh);padding:0;border:none;border-radius:12px;background:Canvas;color:CanvasText;box-shadow:0 10px 40px #00000059;overflow:hidden}.custom-dialog.full-screen>dialog{position:fixed;top:0;left:0;transform:unset;max-width:unset;width:100%;height:100%;max-height:unset;padding:0;border:none;border-radius:0;background:Canvas;color:CanvasText;box-shadow:0 10px 40px #00000059;overflow:hidden}.custom-dialog>dialog>.content{display:block;max-height:inherit;overflow:auto;position:relative;padding:1rem}.custom-dialog>dialog::backdrop{background:#00000073}.custom-dialog .custom-dialog-close{position:absolute;top:.5rem;right:.5rem;font-size:1.25rem;line-height:1;background:transparent;border:none;cursor:pointer;color:unset}@media screen and (max-width: 992px){.custom-dialog>dialog{position:fixed;top:0;left:0;transform:unset;max-width:unset;width:100%;height:100%;max-height:unset;padding:0;border:none;border-radius:0;background:Canvas;color:CanvasText;box-shadow:0 10px 40px #00000059;overflow:hidden}.custom-dialog>dialog>.content{height:100%;width:100%}}.balance-sheet-item-close-dialog{min-width:300px;min-height:200px}.balance-sheet-item-close-dialog form-element form-field-element{display:block;width:100%}.balance-sheet-item-close-dialog form-element form-field-element .field-input-element{width:100%}.balance-sheet-item-close-dialog form-action-buttons{display:block}.balance-sheet-item-close-dialog form-action-buttons button{float:right}balance-sheet-item-detail-page .tables-container{margin:1rem auto;display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem}balance-sheet-item-detail-page .tables-container>*{flex:1 1 auto}sign-in-page{display:block;width:100%;height:100%;text-align:center;padding-top:5rem}.sign-in-page-container{max-width:300px;margin:auto}.sign-in-page-container>*{display:block;margin:auto}.sign-in-page-container>img{width:100%;margin-bottom:1rem}.google-sign-in-button{padding:1px 3px;border:0}.google-sign-in-button img{margin-top:2px}balance-sheet-item-list{display:block;margin-bottom:2rem}balance-sheet-item-list .items-container balance-sheet-item-element{border-bottom:1px solid var(--color-primary-dark)}.add-item-button{margin-top:.5rem}balance-sheet-item-element{display:block}balance-sheet-item-element:not(.edit):hover{background-color:var(--color-bg);cursor:pointer}balance-sheet-item-element label{font-size:small}balance-sheet-item-element a{color:var(--colo-text);display:block}balance-sheet-item-element:not(.edit) a>*{width:15%;min-width:100px;display:inline-block;margin-right:.75rem;white-space:nowrap;word-wrap:break-word;overflow:hidden;text-overflow:ellipsis}balance-sheet-item-element:not(.edit) .buttons{width:unset;min-width:200px;padding-top:.25rem}balance-sheet-item-element.edit{padding-bottom:.5rem}side-nav-element{min-width:165px;white-space:nowrap;overflow:hidden;display:flex;flex-direction:column;transition:width .1s ease,min-width .1s ease;margin-right:.5rem;position:relative;z-index:var(--z-index-side-nav)}side-nav-element *{flex-shrink:0;min-width:100%}.side-nav-hidden side-nav-element{width:0;min-width:0;overflow:hidden}side-nav-element>aside{width:100%;z-index:var(--z-index-side-nav)}.nav a{display:block;padding:.25rem .5rem;word-wrap:break-word;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.nav a:hover{color:var(--color-accent-dark);background-color:var(--color-accent-bg);text-decoration:none}side-nav-element .overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity .2s ease;opacity:1;pointer-events:auto;z-index:var(--z-index-side-nav-overlay);display:none;top:var(--header-height)}@media screen and (max-width: 992px){side-nav-element{display:none;position:fixed;top:var(--header-height);left:0;height:calc(100vh - var(--header-height))}.sidenav-container{border-radius:0}nav-links,.sidenav-container,.nav{height:100%}side-nav-element:not(.side-nav-hidden) .overlay{display:block}}header-user-info{padding-top:.25rem}header-user-info popover-menu{--size: 28px;margin-right:.5rem;height:var(--size);display:flex;flex-direction:row;align-items:center;justify-content:center}header-user-info popover-menu .button--ghost{padding-right:0}header-user-info popover-menu .button--ghost:focus{border:0}.user-icon{height:var(--size);width:var(--size);background-image:url(/user-icon.svg);background-size:contain;background-repeat:no-repeat;border-radius:100%;margin-right:2px}.caret{margin-top:.75rem;width:0;height:0;display:inline-block;border:4px solid transparent}.caret.down{border-top-color:var(--color-text-light)}
