*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 100% 0,#f1e2ff,transparent 60%),#faf4ff;color:#39234c;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:#79509c;text-decoration:none}[hidden]{display:none!important}:focus-visible{outline:3px solid #b485dc;outline-offset:4px}.abc-wrap{max-width:1180px;margin:auto;padding:24px 28px 45px}.abc-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.abc-brand{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.08em;color:#603885}.abc-brand img{object-fit:contain}.abc-brand b{display:block;font-size:8px;font-weight:500;margin-top:4px;letter-spacing:.18em}.abc-header nav{display:flex;gap:20px;font-size:11px}.abc-header nav>a{display:flex;align-items:center;min-height:48px}.abc-hero{display:flex;align-items:center;justify-content:space-between;padding:44px 0 30px;gap:35px}.eyebrow{font-size:9px;letter-spacing:.18em;font-weight:800;color:#8b639f}.abc-hero h1{font-size:clamp(38px,5vw,62px);line-height:1.06;letter-spacing:-.055em;margin:18px 0 22px}.abc-hero h1 em{font-family:Georgia,serif;font-weight:400;color:#9867b8}.abc-hero p{font-size:13px;line-height:1.9;color:#9b829f;max-width:450px}.abc-mark{position:relative;width:210px;height:175px;display:grid;place-items:center;border-radius:52% 48% 61% 39%;background:linear-gradient(140deg,#e4d3fb,#ffe6d6);border:1px solid #ead8f5;color:#9872b7;font:italic 90px Georgia,serif;transform:rotate(-8deg);margin-right:30px}.abc-mark span{position:absolute;right:-20px;bottom:0;background:#fff;border:1px solid #e8d8f2;border-radius:20px;padding:12px 16px;font:600 12px system-ui;letter-spacing:.05em}.pending-banner{display:flex;align-items:center;gap:21px;border:1px solid #e8d6c8;background:#fff4e9;border-radius:20px;padding:20px 23px;margin-bottom:22px}.pending-banner>span{font-size:9px;letter-spacing:.1em;font-weight:800;white-space:nowrap;color:#a07350}.pending-banner p{font-size:11px;line-height:1.9;color:#9a7a63;margin:0}.offline-panel{display:flex;gap:25px;align-items:center;justify-content:space-between;background:#efe4fb;border:1px solid #e2cdef;border-radius:24px;padding:22px 25px;margin-bottom:25px}.offline-panel h2{font-size:16px;margin:0 0 8px;letter-spacing:-.02em}.offline-panel p{font-size:11px;line-height:1.8;margin:0;color:#9475a6;max-width:430px}.offline-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:450px}button{min-height:48px;border:1px solid #dfcdec;border-radius:16px;padding:12px 15px;background:#fff;color:#7d5895;font-size:11px}.offline-buttons button{font-size:10px}.offline-buttons #save-offline,.primary{background:#7847b1;color:#fff;border-color:transparent}.abc-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:start}.abc-panel{background:#fff;border:1px solid #e8d9f1;border-radius:24px;padding:28px;min-width:0}.abc-panel h2{font-size:27px;letter-spacing:-.045em;line-height:1.15;margin:14px 0 22px}.abc-kind{border:0;display:flex;gap:8px;padding:0;margin:0}.abc-kind legend{font-size:11px;font-weight:700;margin-bottom:11px}.abc-kind label{flex:1;position:relative;cursor:pointer}.abc-kind input{position:absolute;opacity:0}.abc-kind label>span{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:89px;justify-content:center;border:1px solid #e5d6ef;border-radius:17px;background:#fff;font-size:10px;color:#9f85af}.abc-kind b{font:italic 29px Georgia,serif;color:#9871b4}.abc-kind input:checked+span{background:#eee1fc;border-color:#caa6e3;color:#85509f}.abc-kind input:focus-visible+span{outline:3px solid #ac7dd0;outline-offset:3px}#kind-note{font-size:11px;line-height:1.9;color:#987fa5;min-height:42px;margin:18px 0}.field{display:block;font-size:11px;font-weight:650;margin:19px 0}.field small{display:block;font-size:9px;color:#aa95b3;font-weight:400;margin:5px 0}.field input,.field textarea{display:block;width:100%;min-height:48px;margin-top:9px;padding:13px;border:1px solid #e2d1ed;border-radius:15px;background:#fffdff;color:#765187;font-size:12px;min-width:0}.field textarea{resize:vertical;line-height:1.8}.field input[type=file]{font-size:10px;padding:11px}.field input[type=file]::file-selector-button{border:1px solid #dbc5ea;background:#f4e9ff;padding:9px;border-radius:10px;color:#845c9c;margin-right:10px;cursor:pointer}.small-note{font-size:10px;line-height:1.9;color:#ab95b2;margin:16px 0}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:20px;padding:15px 19px}.status{font-size:11px;line-height:1.9;overflow-wrap:anywhere;color:#9777a7;margin:17px 0 0}.ledger-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.ledger-heading h2{font-size:23px;margin-bottom:9px}.ledger-heading h2>span{font-size:11px;display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;background:#f2e7fc;border:1px solid #e4d1f0;border-radius:9px;margin-left:6px;vertical-align:middle}.ledger-heading>button{flex-shrink:0;font-size:10px}.import-box{padding:17px 18px;background:#fcf8ff;border:1px solid #eee0f6;border-radius:18px;margin:21px 0}.import-box .field{margin:0}.import-box p{font-size:10px;line-height:1.8;color:#a589b3}.import-box>button{font-size:10px;margin:5px 5px 0 0}.receipt-list{display:grid;gap:15px;max-height:900px;overflow:auto}.receipt{border:1px solid #eadcf2;border-radius:18px;padding:18px;background:#fffdff}.receipt>header{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;margin-bottom:12px}.pending-pill{font-size:7px;font-weight:800;letter-spacing:.11em;background:#fff0e1;border:1px solid #eedbc4;padding:6px 7px;border-radius:7px;color:#a5825c}.receipt p{font-size:12px;line-height:1.8;margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#846590}.receipt .receipt-detail{font-size:10px;color:#ac94b6}.receipt code{display:block;font-size:8px;overflow-wrap:anywhere;color:#b5a1c0;margin:10px 0}.receipt .photo-hash{font-size:9px;word-break:break-all;color:#a58bb4;background:#f6effb;padding:11px;border-radius:12px}.receipt>button{font-size:9px;padding:10px 12px;min-height:42px;margin-top:7px}.empty{padding:37px 20px;font-size:12px;line-height:1.9;text-align:center;color:#af98bb;background:#fdf9ff;border:1px dashed #e3d0ef;border-radius:18px}#photo-status{font-size:10px;line-height:1.9;overflow-wrap:anywhere;color:#a388b2}.abc-footer{display:flex;gap:25px;justify-content:space-between;align-items:center;margin-top:25px;font-size:10px;color:#b098ba;line-height:1.8}.abc-footer p{max-width:780px}.abc-footer a{flex-shrink:0;min-height:48px;display:flex;align-items:center}@media(max-width:820px){.abc-layout{grid-template-columns:1fr}.offline-panel{align-items:flex-start;flex-direction:column;gap:17px}.offline-buttons{justify-content:flex-start;max-width:none}.abc-mark{width:160px;height:140px;font-size:75px;margin-right:20px}.abc-panel{padding:26px}.abc-footer{align-items:flex-start;flex-direction:column;gap:4px}}@media(max-width:520px){.abc-wrap{padding:19px 15px 30px}.abc-header nav{gap:12px;font-size:9px}.abc-brand{font-size:9px;gap:7px}.abc-brand b{font-size:6px}.abc-brand img{width:31px;height:31px}.abc-hero{padding:35px 3px 22px;gap:10px;position:relative}.abc-hero h1{font-size:41px;margin:15px 0 20px}.abc-hero p{font-size:11px;max-width:290px;padding-right:40px}.abc-mark{position:absolute;width:86px;height:90px;font-size:47px;right:-7px;top:64px;opacity:.7;margin:0}.abc-mark span{font-size:8px;padding:9px;right:0;bottom:-14px}.eyebrow{font-size:8px}.pending-banner{display:block;padding:18px 20px}.pending-banner>span{font-size:8px}.pending-banner p{font-size:10px;margin-top:10px}.offline-panel{padding:21px}.offline-buttons button{font-size:9px;padding:10px 12px;flex:1}.abc-panel{padding:23px}.abc-panel h2{font-size:26px}.ledger-heading h2{font-size:21px}.ledger-heading>button{font-size:9px;padding:10px 12px}.field input,.field textarea{font-size:16px}.field input[type=file]{font-size:10px}.abc-kind label>span{font-size:9px}.abc-footer{font-size:9px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
