:root{--ink:#203b31;--green:#184c3c;--muted:#70786e;--bg:#f4f3eb;--line:#dedfd3}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:10px 15px;background:#fffef8;color:var(--ink)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd8b43;outline-offset:3px}a{color:inherit}header{max-width:1120px;margin:auto;min-height:80px;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;font-size:22px;font-weight:800;text-decoration:none}nav{display:flex;gap:22px;font-size:13px}nav a{text-decoration:none}main{max-width:1020px;padding:35px 24px 50px;margin:auto}.hero{text-align:center;margin-bottom:28px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:#6f825c}h1{font-size:clamp(30px,4vw,44px);line-height:1.25;letter-spacing:-1.7px;margin:13px 0}h2{font-size:19px;margin:0 0 20px}.hero p{color:var(--muted);font-size:14px}.datebar{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap}.datebar label{font-size:12px}.datebar input{width:157px}.datebar button{padding:7px 12px}.tabs{display:flex;border-bottom:1px solid var(--line);margin:27px 0 24px;gap:20px}.tabs button{border:0;border-radius:0;background:none;padding:12px 4px;font-weight:750;color:var(--muted)}.tabs button[aria-selected=true]{border-bottom:3px solid var(--green);color:var(--green)}.schedule-layout{display:grid;grid-template-columns:350px 1fr;gap:24px;align-items:start}.card{border:1px solid var(--line);background:#fffef9;border-radius:18px;padding:25px}label{display:block;font-size:13px;font-weight:650;margin:12px 0 6px}input:not([type=checkbox]),select{display:block;width:100%;min-width:0;padding:10px 12px;border:1px solid #d8ddcf;border-radius:10px;color:var(--ink);background:#fff}input[type=checkbox]{width:18px;height:18px;accent-color:var(--green);flex-shrink:0}.check{display:flex;align-items:center;gap:8px;font-weight:400;font-size:12px}.times{display:grid;grid-template-columns:1fr 15px 1fr;gap:8px;align-items:end}.times>span{padding-bottom:12px}.hint,.storage{font-size:11px;color:var(--muted)}.storage{padding:0 8px}.primary{background:var(--green);border-color:var(--green);color:white}.secondary{background:#edf0e5;border-color:#d8dfcb}.form-actions{display:flex;gap:8px;margin-top:18px}.form-actions .primary{flex:1}#formError{color:#a33d29;font-size:12px}.list-head{display:flex;justify-content:space-between;align-items:baseline}.list-head span{font-size:12px;color:var(--muted)}.stats{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:12px}.stats b{font-size:17px}.entry{padding:17px 0;border-bottom:1px solid var(--line)}.entry-main{display:flex;gap:12px;align-items:flex-start}.entry time{font-size:12px;font-variant-numeric:tabular-nums;min-width:95px;padding-top:4px}.entry-title{font-size:15px;font-weight:700;overflow-wrap:anywhere}.entry-meta{font-size:11px;color:var(--muted);margin-top:3px}.entry-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:9px}.entry-actions button{font-size:11px;padding:6px 10px;min-height:34px}.completed{color:#46744b;background:#eef3e6!important}.wide{width:100%;margin-top:23px}.empty{padding:40px 10px;text-align:center;color:var(--muted);font-size:13px}.receipt-stage{max-width:510px;margin:0 auto;padding:30px 36px;background:#e8eddf;border-radius:18px;background-image:radial-gradient(#bcc8b1 .7px,transparent .7px);background-size:12px 12px}.receipt{background:#fffef8;padding:30px 27px;box-shadow:0 8px 22px #2c442818;font-family:'Courier New',monospace}.receipt-brand{text-align:center;font-size:10px;letter-spacing:2px}.receipt h2{font-size:30px;text-align:center;margin:12px 0 3px}.receipt #receiptDate{text-align:center;font-size:12px}.dash{border-top:1px dashed #a8afa0;margin:18px 0}.receipt-line{display:flex;justify-content:space-between;font-size:12px;gap:10px;margin:12px 0}.receipt-total{display:flex;align-items:center;justify-content:space-between;font-size:12px;gap:10px}.receipt-total strong{font-size:24px}.receipt-note{font-size:11px;color:var(--muted)}.stamp{border:2px solid #46744b;color:#46744b;padding:7px;text-align:center;margin:22px auto 15px;font-size:16px;font-weight:bold}#receiptMessage{text-align:center;font-size:12px;white-space:pre-line}.receipt-foot{text-align:center;font-size:10px;margin:20px 0 0}.barcode{height:34px;width:150px;margin:23px auto 0;background:repeating-linear-gradient(90deg,#293b2e 0px,#293b2e 2px,transparent 2px,transparent 4px,#293b2e 4px,#293b2e 7px,transparent 7px,transparent 10px)}.actions{display:flex;gap:9px;margin-top:25px}.actions button{flex:1;font-size:13px}.text-button{display:block;background:none;border:0;font-size:12px;text-decoration:underline;margin:8px auto 0}.privacy{text-align:center;font-size:11px;color:var(--muted)}.notice{padding:15px;border:1px solid #c4d7b4;border-radius:12px;background:#eef3e6;margin-bottom:20px}.notice button{margin-left:10px}footer{max-width:1050px;margin:auto;border-top:1px solid var(--line);padding:22px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:13px;padding:14px 20px;max-width:90vw;width:max-content;font-size:13px;z-index:100}.datebar #date{width:160px}@media(max-width:700px){header{padding:14px 18px;gap:10px;flex-wrap:wrap}.brand{font-size:20px}nav{gap:14px}main{padding:26px 16px 35px}.schedule-layout{grid-template-columns:1fr;gap:14px}.card{padding:20px}.hero p{font-size:12px}.datebar label{display:none}.tabs{margin-top:20px}.receipt-stage{padding:24px 18px}.receipt{padding:26px 20px}.entry time{min-width:88px}footer{flex-direction:column;gap:6px}.actions button{padding:11px 8px}.receipt-total strong{font-size:22px}}
