@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{--brand: #f03b1f;--brand-dark: #c92e15;--brand-tint: #fdeae6;--danger: #dc2626;--danger-tint: #fdecea;--ink: #1a1a1a;--ink-soft: #767676;--bg: #f7f6f4;--card: #ffffff;--border: #ececea;--radius: 14px;--radius-sm: 10px;--shadow: 0 1px 2px rgba(20, 15, 10, .04), 0 6px 16px rgba(20, 15, 10, .05);--pending-bg: #fff4e0;--pending-text: #b45309;--approved-bg: #e6f7ec;--approved-text: #15803d;--rejected-bg: #fdecea;--rejected-text: #c92e15}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}#app{max-width:480px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;background:var(--bg)}.app-header{padding:16px 18px;background:var(--card);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:5}.app-header .logo-mark{width:40px;height:40px;border-radius:12px;flex-shrink:0;object-fit:cover;box-shadow:0 2px 6px #f03b1f40}.app-header .header-text{display:flex;flex-direction:column;min-width:0}.app-header .brand{font-weight:800;letter-spacing:.01em;font-size:17px;color:var(--ink);line-height:1.2}.app-header .subtitle{font-size:12.5px;color:var(--ink-soft);font-weight:500;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-content{flex:1;padding:16px 16px 96px;overflow-y:auto}.receipt-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:14px;box-shadow:var(--shadow)}.receipt-title{font-weight:700;font-size:14.5px;color:var(--ink);margin-bottom:10px;letter-spacing:-.01em}.receipt-row{display:flex;justify-content:space-between;gap:8px;font-size:13.5px;padding:7px 0;border-bottom:1px solid var(--border)}.receipt-row:last-child{border-bottom:none}.receipt-row .label{color:var(--ink-soft)}.divider{border:none;border-top:1px solid var(--border);margin:12px 0}.btn{font-family:inherit;font-size:14px;font-weight:700;letter-spacing:0;padding:12px 16px;border-radius:var(--radius-sm);border:none;background:var(--brand);color:#fff;cursor:pointer;width:100%;transition:transform .05s ease,opacity .15s ease,background .15s ease}.btn:hover{background:var(--brand-dark)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-outline{background:transparent;color:var(--brand);border:1.5px solid var(--brand)}.btn-outline:hover{background:var(--brand-tint)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#b91c1c}.btn-danger.btn-outline{background:transparent;color:var(--danger);border:1.5px solid var(--danger)}.btn-danger.btn-outline:hover{background:var(--danger-tint)}.btn-row{display:flex;gap:8px}.field{margin-bottom:14px}.field label{display:block;font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:5px}.field input[type=text],.field input[type=number],.field select,.field textarea{width:100%;font-family:inherit;font-size:14px;padding:10px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:#fbfbfa;color:var(--ink);transition:border-color .15s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brand);background:#fff}.field textarea{resize:vertical;min-height:64px}.field-row{display:flex;gap:8px}.field-row .field{flex:1}.file-drop{border:1.5px dashed var(--border);border-radius:var(--radius-sm);padding:14px;text-align:center;font-size:13px;font-weight:500;color:var(--ink-soft);cursor:pointer;display:block}.file-drop img{max-width:100%;max-height:140px;border-radius:8px;margin-top:8px}.stamp{display:inline-block;font-weight:700;font-size:11.5px;letter-spacing:.01em;padding:5px 12px;border-radius:999px;white-space:nowrap}.stamp-pending{background:var(--pending-bg);color:var(--pending-text)}.stamp-approved{background:var(--approved-bg);color:var(--approved-text)}.stamp-rejected{background:var(--rejected-bg);color:var(--rejected-text)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:var(--card);border-top:1px solid var(--border);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:4px}.bottom-nav button{flex:1;background:none;border:none;font-family:inherit;font-size:11px;font-weight:600;color:var(--ink-soft);padding:8px 4px;cursor:pointer;border-radius:var(--radius-sm);transition:background .15s ease,color .15s ease}.bottom-nav button.active{color:var(--brand);background:var(--brand-tint)}.bottom-nav .icon{display:block;font-size:18px;margin-bottom:2px}.muted{color:var(--ink-soft);font-size:12.5px}.center{text-align:center}.empty-state{text-align:center;padding:40px 16px;color:var(--ink-soft);font-size:13px}.day-header{font-weight:800;font-size:13px;color:var(--ink);margin:20px 0 8px}.day-header:first-child{margin-top:0}.task-row{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13.5px}.task-row:last-child{border-bottom:none}.task-checkbox{width:22px;height:22px;flex-shrink:0;border:1.5px solid var(--border);border-radius:7px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;font-weight:700;background:#fbfbfa;transition:background .15s ease,border-color .15s ease}.task-row.done{color:var(--ink-soft);text-decoration:line-through}.task-checkbox.done{background:var(--brand);border-color:var(--brand)}.progress-bar-track{height:7px;border-radius:4px;background:var(--bg);overflow:hidden}.progress-bar-fill{height:100%;background:var(--brand);border-radius:4px}.badge{display:inline-block;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--brand-tint);color:var(--brand-dark)}.error-banner{background:var(--danger-tint);color:var(--danger);border:1px solid #f5b8b1;border-radius:var(--radius-sm);padding:10px 12px;font-size:12.5px;font-weight:500;margin-bottom:12px}
