:root{color:#1f2933;background:#f4efe6;font-family:Georgia,Times New Roman,serif;line-height:1.5;font-weight:400}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:inherit;text-decoration:none}button{font:inherit}.page{max-width:42rem;margin:0 auto;padding:2rem 1rem 4rem}.top-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.top-bar-brand{min-width:0}.top-bar-user{flex-shrink:0;text-align:right;font-family:Helvetica Neue,Arial,sans-serif}.top-bar-user-name{display:block;font-weight:600;color:#1f2933}.top-bar-user-email{display:block;margin-top:.15rem;font-size:.85rem;color:#7b8794}.eyebrow{margin:0 0 .5rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#8b5e34}h1,h2{margin:0;line-height:1.1}h1{font-size:clamp(2.25rem,8vw,3rem)}h2{font-size:1.35rem}.lede{margin:.75rem 0 0;font-family:Helvetica Neue,Arial,sans-serif;color:#52606d}.fortune{margin:.75rem 0 0;font-family:Helvetica Neue,Arial,sans-serif;font-size:.95rem;font-style:italic;text-align:center;color:#7b8794}.app-layout-fortune{margin:0 0 1rem}.panel-header .lede{margin-top:.5rem;font-size:.9rem;text-align:center}.panel{background:#fffdf8;border:1px solid #d9cbb8;border-radius:1rem;padding:1.25rem;box-shadow:0 12px 30px #43301814}.panel-header{margin-bottom:1.25rem}.panel-nav{margin-bottom:1rem}.back-link{font-family:Helvetica Neue,Arial,sans-serif;font-size:.95rem;color:#8b5e34}.status{margin:0;font-family:Helvetica Neue,Arial,sans-serif}.status.error{color:#9b1c1c}.button{border:0;border-radius:.65rem;padding:.7rem 1rem;cursor:pointer;font-family:Helvetica Neue,Arial,sans-serif;font-weight:600}.button:disabled{opacity:.45;cursor:not-allowed}.button--primary,.button--success{background:#2f855a;color:#fff}.button--ghost{background:transparent;color:#8b5e34;border:1px solid #d9cbb8}.button--block{display:block;width:100%;margin-top:1rem}.marble-list-wrap{display:grid;gap:.75rem}.marble-list-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.marble-list,.picker-list{margin:0;padding:0;list-style:none}.marble-row-wrap{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:stretch}.marble-row{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:center;padding:.85rem 0;border-top:1px solid #eadfce}.marble-copy{display:grid;gap:.2rem;min-width:0}.marble-copy strong{font-family:Helvetica Neue,Arial,sans-serif;font-size:.95rem}.marble-project,.marble-placeholder,.picker-name{font-family:Helvetica Neue,Arial,sans-serif;font-size:.9rem}.marble-placeholder{color:#9aa5b1;font-style:italic}.marble-project{color:#52606d}.marble-select{align-self:center;min-width:5.5rem;border:1px solid #d9cbb8;border-radius:.65rem;background:#fff;color:#52606d;padding:.55rem .75rem;cursor:pointer}.marble-select--active{background:#9b1c1c;border-color:#9b1c1c;color:#fff}.project-swatch,.project-swatch-group .project-swatch{display:inline-block;width:1rem;height:1rem;border-radius:999px;border:1px solid rgba(31,41,51,.12)}.project-swatch-group{display:inline-flex;gap:.2rem}.picker-row{display:grid;grid-template-columns:auto 1fr auto;gap:.85rem;align-items:center;width:100%;padding:.85rem 0;border:0;border-top:1px solid #eadfce;background:transparent;text-align:left;cursor:pointer}.picker-row--selected{background:#2f855a14}.picker-check{width:1.25rem;text-align:center;color:#2f855a;font-weight:700}.view-more{margin-top:1rem}.app-layout{position:relative}.tabs{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.tab{border:1px solid #d9cbb8;border-radius:999px;padding:.45rem .9rem;background:#fffdf8;color:#52606d;font-family:Helvetica Neue,Arial,sans-serif;font-size:.9rem}.tab--active{background:#8b5e34;border-color:#8b5e34;color:#fff}.reports-layout{display:grid;gap:1rem}.sub-tabs{display:flex;gap:.35rem;flex-wrap:wrap}.sub-tab{border:1px solid #d9cbb8;border-radius:.65rem;padding:.4rem .75rem;background:#fffdf8;color:#52606d;font-family:Helvetica Neue,Arial,sans-serif;font-size:.85rem}.sub-tab--active{background:#eadfce;border-color:#c4b5a0;color:#1f2933;font-weight:600}.fab{position:fixed;right:1.25rem;bottom:1.25rem;width:3.25rem;height:3.25rem;border:0;border-radius:999px;background:#2f855a;color:#fff;font-size:2rem;line-height:1;cursor:pointer;box-shadow:0 10px 24px #2f855a59}.panel-header--split{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.month-select,.datetime-field{display:grid;gap:.35rem;font-family:Helvetica Neue,Arial,sans-serif}.month-select-label,.datetime-label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#7b8794}.month-select select,.datetime-field input{border:1px solid #d9cbb8;border-radius:.65rem;padding:.55rem .75rem;background:#fff;font:inherit}.report-stack{display:grid;gap:1.5rem}.report-title{margin:0 0 .75rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:1rem}.report-table{width:100%;border-collapse:collapse;font-family:Helvetica Neue,Arial,sans-serif;font-size:.92rem}.report-table th,.report-table td{padding:.65rem .35rem;border-bottom:1px solid #eadfce;text-align:left}.report-table th{color:#7b8794;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.report-row--clickable{cursor:pointer}.report-row--breakdown td:nth-child(2){padding-left:1.25rem;color:#52606d}.clock-panel{margin-bottom:1rem}.clock-actions{display:flex;gap:.75rem;margin-top:1rem}.clock-bank-line{margin:.75rem 0 0;font-family:Helvetica Neue,Arial,sans-serif;font-size:.9rem;color:#52606d;text-align:center}.clock-status-line{margin:.75rem 0 0;font-family:Helvetica Neue,Arial,sans-serif;color:#52606d}.clock-shift{margin-top:1rem;padding-top:1rem;border-top:1px solid #eadfce}.clock-shift-label{margin:0;font-family:Helvetica Neue,Arial,sans-serif;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#7b8794}.clock-shift-range{margin:.35rem 0 .75rem;font-family:Helvetica Neue,Arial,sans-serif}.clock-edit-form{display:grid;gap:.85rem;margin-top:1rem}.clock-edit-actions{display:flex;gap:.75rem;flex-wrap:wrap}.field{display:grid;gap:.35rem;font-family:Helvetica Neue,Arial,sans-serif;font-size:.9rem}.field input{padding:.55rem .65rem;border:1px solid #d9cbb8;border-radius:.5rem;background:#fff}
