:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#233638;background:#f3f5f1;line-height:1.5}*{box-sizing:border-box}body{margin:0}h1,h2,h3,p{margin:0 0 .7rem}h1{font-size:2rem;letter-spacing:-.04em}h2{font-size:1.08rem}h3{font-size:1rem}button,.button,input,select,textarea{font:inherit}button,.button{border:1px solid #cdd8d3;border-radius:9px;background:#fff;color:#243c37;padding:.6rem .85rem;cursor:pointer;text-decoration:none;text-align:center}button:hover,.button:hover{background:#edf3ee}button:disabled{opacity:.5;cursor:wait}.primary{background:#1b5144;color:#fff;border-color:#1b5144}.primary:hover{background:#153f35}.danger{color:#ab3434}.muted{color:#657774;font-size:.9rem}.brand-mark{background:#204f43;color:#fff;font-size:2rem;font-weight:800;border-radius:15px;display:inline-grid;place-items:center;width:64px;height:64px;margin-bottom:1rem}.brand-mark.small{font-size:1.2rem;width:38px;height:38px;border-radius:9px;margin:0}.brand{display:flex;gap:12px;align-items:center;padding:1.6rem 1.1rem}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{background:#e5ece5;border-right:1px solid #d4dfd5;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}nav{padding:0 .8rem;display:flex;flex-direction:column;gap:.35rem}nav button{background:transparent;border:0;text-align:left;padding:.75rem 1rem}nav button.active{background:#fff;font-weight:700;box-shadow:0 2px 8px #213b3010}.nav-divider{height:1px;background:#cdd9cd;margin:1rem 0}.account{margin-top:auto;padding:1rem;display:grid;gap:.5rem;font-size:.85rem}.content{padding:2.3rem 3rem;max-width:1350px;width:100%;margin:auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem}.eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.16em;color:#607568;margin-bottom:.5rem}.panel,article,.balance{background:#fff;border:1px solid #dee5dc;border-radius:14px;padding:1.4rem;margin-bottom:1rem;box-shadow:0 3px 12px #203b2010}article{display:flex;align-items:center;justify-content:space-between;gap:1rem}article>div:first-child{min-width:0;flex:1}.actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.editor{max-width:720px}.panel h2:not(:first-child){margin-top:1.6rem}.auth{width:min(440px,calc(100% - 2rem));margin:7vh auto;background:#fff;border:1px solid #dee5dc;border-radius:20px;padding:2.4rem;box-shadow:0 15px 50px #12382012}.auth h1{font-size:1.8rem}label{display:grid;gap:.35rem;margin-bottom:1rem;font-size:.86rem;font-weight:600}input,select,textarea{padding:.65rem .75rem;border:1px solid #c8d4cf;background:#fcfdfb;border-radius:8px;width:100%;color:#233638}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #78a595;outline-offset:1px}.check{display:flex;align-items:center}.check input{width:auto}details{margin-top:1.5rem}summary{cursor:pointer;color:#365e52;font-size:.85rem;margin-bottom:.75rem}.notice{padding:1rem 1.5rem;position:sticky;top:0;z-index:2;font-size:.9rem}.error{background:#ffe5e2;color:#8c2424}.success{background:#d9eddf;color:#184832}.empty{padding:2.5rem;text-align:center;color:#698177}.balance{background:#dceadd;display:flex;justify-content:space-between;align-items:center}.balance strong{font-size:1.8rem}.expense{color:#a23b35}.inline{display:flex;align-items:flex-end;gap:.75rem}.inline>*{flex:1}.setlist-entry{display:flex;justify-content:space-between;padding:.65rem 0;border-bottom:1px solid #e3eae1}.lyrics{white-space:pre-wrap;max-height:280px;overflow:auto;font-family:inherit;font-size:.9rem;border-top:1px solid #e7ece6;padding-top:1rem}.loading{padding:3rem;text-align:center}@media(max-width:850px){.shell{grid-template-columns:1fr}aside{height:auto;position:static;border-right:0}.brand{padding:.75rem 1rem}nav{flex-direction:row;overflow-x:auto;padding:0 .6rem .6rem;gap:.2rem}nav button{white-space:nowrap;padding:.6rem .8rem}.nav-divider{display:none}.account{display:flex;padding:.6rem 1rem;align-items:center;justify-content:flex-end}.account span{margin-right:auto}.content{padding:1.3rem 1rem}article{align-items:flex-start;flex-wrap:wrap}.auth{margin:3vh auto;padding:1.7rem}.inline{flex-wrap:wrap}.actions button{font-size:.85rem}}.shell{grid-template-columns:230px minmax(0,1fr)}.content{margin:0 auto;min-width:0}aside{min-width:0;overflow-y:auto}.settings-section{border:0;padding:0;margin:1.5rem 0;min-width:0}.settings-section legend{font-size:1.08rem;font-weight:700;margin-bottom:.7rem}.offline{background:#fff0c9;color:#624600}.readonly .write-only,.readonly main form,.readonly .actions .danger{display:none}.calendar-controls h2{margin:0}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-day{min-height:90px;border:1px solid #dce5dc;padding:5px;overflow-wrap:anywhere}.calendar-day button{display:block;width:100%;font-size:.75rem;padding:4px;text-align:left;overflow-wrap:anywhere}.comment{padding:.8rem 0;border-bottom:1px solid #dce5dc;margin-bottom:1rem}.comment-text{white-space:pre-wrap}@media(max-width:850px){.shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr}nav{min-width:0;max-width:100%}.account{flex-wrap:wrap;margin-top:0}.calendar-day{min-height:65px;padding:2px}.calendar-day button{font-size:.65rem}.calendar-grid{gap:2px}}
