.vault-locked>aside,.vault-locked>.shell{display:none}#vault-gate{min-height:100vh;display:grid;place-items:center;padding:30px 18px}.gate-card{width:min(550px,100%);padding:32px}.gate-card h1{margin-top:20px}.gate-card label{display:block;margin:18px 0;font-size:15px}.gate-card input{display:block;width:100%;margin-top:8px}.gate-card button[type=submit]{width:100%}.form-error{color:#800000;font-size:14px;white-space:pre-wrap}.check-label{display:flex!important;gap:10px;align-items:flex-start;font-size:14px;margin:20px 0}.check-label input{width:18px!important;height:18px!important;flex-shrink:0;margin:4px 0 0!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-size:14px;display:block}.form-grid input,.form-grid select{display:block;width:100%;margin-top:6px}#lock-now{font-size:13px;padding:7px 12px}header{gap:12px}header .pill{margin-left:auto}button:disabled{cursor:not-allowed;opacity:.55}#import-stage small{display:block}#import-stage input[type=checkbox]{width:18px;height:18px}.gate-card .actions{justify-content:center}.notice-list{margin:20px 0}.notice-list p{margin:8px 0}.gate-card .brand-logo{margin-bottom:10px}@media(max-width:760px){.form-grid{grid-template-columns:1fr}header>span:first-child{display:none}.gate-card{padding:23px}#import-stage .table-wrap{max-height:480px;overflow:auto}#lock-now{font-size:12px}header .pill{margin-left:0}}
.donut-layout{display:grid;grid-template-columns:260px 1fr;align-items:center;gap:32px;margin:24px 0}.donut{width:240px;height:240px;border-radius:50%;display:grid;place-items:center}.donut>div{background:#fff;width:170px;height:170px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px}.donut strong{font-size:24px}.category-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:10px}.cost-row .check-label{flex:1;margin:0}.cost-row input[type=checkbox]{width:23px;height:23px;accent-color:#003049}.cost-row{gap:14px}.donut-layout .row{gap:20px}@media(max-width:700px){.donut-layout{grid-template-columns:1fr}.donut{margin:auto}.cost-row{flex-wrap:wrap}.cost-row .check-label{min-width:55%}}
/* Give the dashboard actions their own row, separate from the figures. */
.overview-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin:0 0 28px;padding:0;clear:both}
.overview-actions button{max-width:100%;white-space:normal;min-height:46px}
@media(max-width:600px){.overview-actions{display:grid;grid-template-columns:1fr;margin-bottom:24px;gap:12px}.overview-actions button{width:100%;text-align:center}}
.category-link{width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:15px 8px;min-height:48px;color:var(--ink);font:inherit;gap:16px}.category-link:hover{background:#e8eddf;border-radius:8px}.category-link>span{display:flex;align-items:center;gap:0}.category-link strong{font-size:14px}.category-link:focus-visible{outline:3px solid #93733d;outline-offset:2px}.category-context{margin-bottom:24px}@media(max-width:550px){.category-link{flex-wrap:wrap}.category-link strong{margin-left:22px}}
.donut.interactive-donut{position:relative;background:none;isolation:isolate}.interactive-donut svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.interactive-donut .donut-center{position:relative;pointer-events:none;z-index:1}.ring-segment{cursor:pointer;pointer-events:visiblePainted;outline:none}.ring-segment:hover,.ring-segment:focus-visible{filter:brightness(1.22);stroke-width:42px}.ring-tooltip{position:fixed;z-index:100;max-width:min(340px,calc(100vw - 16px));padding:12px 16px;border-radius:12px;background:#203f32;color:#fffdf4;font-size:14px;box-shadow:0 8px 24px #162f3433;pointer-events:none}.ring-tooltip[hidden]{display:none}
.transaction-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.delete-transaction{display:inline-grid;place-items:center;min-width:44px;min-height:44px;padding:4px 10px;font-size:25px;line-height:1;color:#9b2929;background:#fff3f0;border:1px solid #e3b6ae}.delete-transaction:hover{background:#fbe0da;color:#7f1919}#deletion-notice{position:fixed;z-index:30;bottom:24px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px 20px;background:#203f32;color:#fffdf4;border-radius:14px;box-shadow:0 8px 28px #152f3433}#deletion-notice small{color:#e3eadf;flex-basis:100%;font-size:12px}#deletion-notice span{overflow-wrap:anywhere}#deletion-notice button{flex-shrink:0}
.sort-heading{border:0;background:transparent;padding:6px 0;color:var(--forest);font-size:12px;font-weight:600;white-space:nowrap}.sort-heading:hover{background:#e8eddf}.bank-assignment{font-size:13px;padding:6px 9px;text-align:left;white-space:nowrap}.bank-assignment+small{display:block;margin-top:5px}

.cost-remove{color:#a72b2b;border-color:#e5b5af;background:#fff5f2;min-width:42px;min-height:42px;font-size:20px;flex-shrink:0}.cost-remove:hover{background:#ffe6e0}.cost-row{flex-wrap:wrap;gap:12px}
