:root{--bg:#f5f7f4;--surface:#ffffff;--surface-2:#edf2ea;--border:#d9e2d5;--text:#151c17;--muted:#5b6a5e;--primary:#1d6b35;--primary-2:#2f8a45;--primary-soft:#e3f0e5;--on-primary:#ffffff;--brand-lime:#86c54e;--amber:#c77700;--amber-soft:#fff3df;--green:#2f7a4d;--green-soft:#e4f2e9;--red:#b3352f;--red-soft:#fbe6e5;--info:#2563b0;--info-soft:#e6eefa;--shadow:0 1px 2px rgba(20,40,24,.06),0 8px 24px rgba(20,40,24,.06);--radius:14px;--maxw:1040px;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--bg:#0f1411;--surface:#161d18;--surface-2:#1d261f;--border:#2a372d;--text:#e8efe9;--muted:#9fb0a3;--primary:#8fd46a;--primary-2:#6fbf54;--primary-soft:#1f3524;--on-primary:#0f1411;--amber:#f0a93c;--amber-soft:#2e2313;--green:#6fce97;--green-soft:#16291e;--red:#f08a84;--red-soft:#2c1918;--info:#7fb0f0;--info-soft:#172334;--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 30px rgba(0,0,0,.35)}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:IBM Plex Sans Thai,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1{font-size:clamp(1.4rem,3.5vw,1.9rem);margin:0 0 .3rem;line-height:1.3;text-wrap:balance}h1,h2{font-weight:700}h2{font-size:1.15rem;margin:0 0 .5rem}p{margin:0 0 .8rem}.lede,.muted{color:var(--muted)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px}.section{padding-top:1.6rem;padding-bottom:2rem}.center{min-height:100dvh;display:grid;place-items:center;padding:1.5rem 16px;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:var(--shadow)}.grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:720px){.grid{grid-template-columns:minmax(0,1fr)}}.note{background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:10px;padding:.7rem .9rem;font-size:.92rem;margin-bottom:.9rem}.note.bad{background:var(--red-soft);border-left-color:var(--red)}.note.ok{background:var(--green-soft);border-left-color:var(--green)}.pill{display:inline-block;padding:.05rem .6rem;border-radius:999px;font-size:.78rem;border:1px solid var(--border);background:var(--surface-2);color:var(--muted)}label{display:block;font-size:.9rem;font-weight:500;margin-bottom:.25rem}label .hint{display:block;font-weight:400;font-size:.8rem;color:var(--muted)}input{width:100%;padding:.6rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}input:focus{outline:2px solid var(--primary-2);outline-offset:-1px}.field{margin-bottom:.8rem}button{font:inherit;font-weight:700;padding:.6rem 1.1rem;border-radius:10px;cursor:pointer;border:1px solid var(--primary);background:var(--primary);color:var(--on-primary)}button:hover:not(:disabled){background:var(--primary-2);border-color:var(--primary-2)}button:disabled{opacity:.55;cursor:not-allowed}a:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button.ghost{background:transparent;color:var(--primary);border-color:var(--border)}button.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--border)}button.small{padding:.3rem .7rem;font-size:.85rem;font-weight:500}button.full{width:100%}.spinner{display:inline-block;width:1em;height:1em;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-.15em}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.authwrap{flex:1 1;display:grid;place-items:center;padding:1.5rem 16px}.authbox{width:100%;max-width:420px}.authhead{text-align:center;margin-bottom:1.1rem}.authhead img{display:block;margin:0 auto .7rem;height:130px;width:auto}.authhead p{font-size:.92rem;margin:0}.small-note{font-size:.82rem;color:var(--muted);margin:.9rem 0 0}.top{background:var(--surface);border-bottom:1px solid var(--border);border-top:3px solid var(--brand-lime)}.top-in{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand out" "nav nav";grid-gap:.4rem 1rem;gap:.4rem 1rem;padding-top:.6rem;padding-bottom:.5rem}.brand,.top-in{align-items:center}.brand{grid-area:brand;display:flex;gap:.65rem;min-width:0}.brand img{flex:none}.brand span{min-width:0;display:grid;line-height:1.3}.brand b,.brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand small{color:var(--muted);font-size:.78rem}.top-in>button{grid-area:out}.top nav{grid-area:nav;display:flex;gap:.15rem;overflow-x:auto;scrollbar-width:none;margin:0 -4px;padding:2px 4px}.top nav::-webkit-scrollbar{display:none}.top nav a{flex:none;padding:.3rem .7rem;border-radius:8px;color:var(--muted);font-size:.92rem;font-weight:500;white-space:nowrap}.top nav a:hover{background:var(--surface-2);color:var(--text)}.top nav a[aria-current=page]{background:var(--primary-soft);color:var(--primary)}body{min-height:100dvh;display:flex;flex-direction:column}body>main{flex:1 1;width:100%}.foot{margin-top:auto;background:var(--surface);border-top:1px solid var(--border);color:var(--muted);font-size:.88rem}.foot-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:1.2rem 2rem;gap:1.2rem 2rem;padding-top:1.5rem;padding-bottom:1.3rem}.foot-in>*{min-width:0}.foot-brand{display:flex;align-items:center;gap:.7rem;align-self:start}.foot-brand img{flex:none}.foot-brand div{display:grid;line-height:1.4}.foot-brand b{color:var(--text)}.foot-brand small{font-size:.8rem}.foot-col h2{font-size:.78rem;font-weight:700;letter-spacing:.04em;color:var(--text);margin:0 0 .35rem}.foot-col p{margin:0;overflow-wrap:anywhere}.foot-col dl{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:.1rem .8rem;gap:.1rem .8rem;margin:0}.foot-col dd{margin:0;overflow-wrap:anywhere}.foot a,a.tel{color:var(--primary);font-weight:500}a.tel{white-space:nowrap}.foot a:hover,a.tel:hover{text-decoration:underline}.foot-base{border-top:1px solid var(--border);font-size:.78rem}.foot-base .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.1rem 1.5rem;padding-top:.7rem;padding-bottom:1rem}dl.facts{display:grid;grid-template-columns:8.5rem minmax(0,1fr);grid-gap:.35rem .8rem;gap:.35rem .8rem;margin:0}dl.facts dt{color:var(--muted);font-size:.9rem}dl.facts dd{margin:0;overflow-wrap:anywhere}ul.soon{margin:0;padding:0;list-style:none;display:grid;grid-gap:.5rem;gap:.5rem}ul.soon li{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.2rem .8rem;gap:.2rem .8rem;align-items:baseline;padding-bottom:.5rem;border-bottom:1px solid var(--border)}ul.soon li:last-child{border-bottom:0;padding-bottom:0}ul.soon small{grid-column:1;color:var(--muted);font-size:.84rem;line-height:1.5}h3{font-size:1rem;font-weight:700;margin:0 0 .4rem}select,textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}select:focus,textarea:focus{outline:2px solid var(--primary-2);outline-offset:-1px}input[type=checkbox],input[type=radio]{width:auto}.linkish{text-decoration:underline;text-underline-offset:2px}.btn,.linkish{color:var(--primary)}.btn{display:inline-block;font-weight:700;padding:.3rem .7rem;border-radius:8px;border:1px solid var(--border);font-size:.85rem;white-space:nowrap}.btn:hover{background:var(--surface-2)}.stack{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr)}.grid>*,.stack>*{min-width:0}.table-wrap table.wide{min-width:36rem}table.wide td:last-child,td.nw{white-space:nowrap}.head{display:flex;align-items:flex-end;justify-content:space-between;gap:.6rem 1rem;flex-wrap:wrap;margin-bottom:1rem}.head h1{margin:0}.tools{display:flex;gap:.5rem;align-items:flex-end;flex-wrap:wrap}.tools .field{margin:0}.tools input,.tools select{width:auto;padding:.4rem .6rem}.tools label{font-size:.78rem;color:var(--muted);margin-bottom:.1rem}.tiles{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1rem;box-shadow:var(--shadow);display:grid;grid-gap:.1rem;gap:.1rem}a.tile:hover{border-color:var(--primary-2)}.tile small{color:var(--muted);font-size:.8rem;font-weight:500}.tile b{font-size:1.6rem;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tile span{color:var(--muted);font-size:.82rem}.tile.bad{border-top:3px solid var(--red)}.tile.bad b{color:var(--red)}.tile.warn{border-top:3px solid var(--amber)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}table{border-collapse:collapse;width:100%;font-size:.92rem}th{text-align:left;font-size:.8rem;color:var(--muted);font-weight:700;background:var(--surface-2);white-space:nowrap}td,th{padding:.5rem .8rem;border-bottom:1px solid var(--border);vertical-align:top}tbody tr:last-child td{border-bottom:0}td.n,th.n{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}td .sub{display:block;color:var(--muted);font-size:.82rem}.pill.ok{color:var(--green);background:var(--green-soft);border-color:var(--green)}.pill.wait{color:var(--amber);background:var(--amber-soft);border-color:var(--amber)}.pill.bad{color:var(--red);background:var(--red-soft);border-color:var(--red)}.plus{color:var(--green)}.minus{color:var(--red)}.empty{color:var(--muted);margin:0}.struck{text-decoration:line-through;opacity:.6}.prod{display:flex;align-items:center;gap:.65rem}.prod,.prod>span:last-child{min-width:0}.thumb{flex:none;width:48px;height:48px;border-radius:8px;object-fit:cover;background:var(--surface-2);border:1px solid var(--border);display:block}.thumb.none{background:repeating-linear-gradient(45deg,var(--surface-2) 0 6px,var(--surface) 6px 12px)}.cdots{display:flex;flex-wrap:wrap;gap:.1rem .8rem;font-size:.84rem;color:var(--muted);margin-top:.15rem}.cdots>span{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap}.cdots b{color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cdot{width:.8rem;height:.8rem;border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 35%,transparent)}.cdot.unknown{background:repeating-linear-gradient(45deg,var(--muted) 0 2px,var(--surface) 2px 4px)}.chart{width:100%;height:auto;display:block}.chart .area{fill:var(--primary-soft)}.chart .line{fill:none;stroke:var(--primary);stroke-width:2}.chart .axis{stroke:var(--border);stroke-width:1}.chart text{fill:var(--muted);font-size:11px}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:4px;gap:4px}.week a{display:grid;justify-items:center;grid-gap:1px;gap:1px;padding:.35rem 0 .4rem;border-radius:10px;border:1px solid var(--border);background:var(--surface)}.week a:hover{background:var(--surface-2)}.week a.today{border-color:var(--primary);background:var(--primary-soft)}.week small{font-size:.7rem;color:var(--muted);white-space:nowrap}.week b{font-size:1rem;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dot.none{background:transparent}.calnav{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.calnav b{min-width:9.5rem;text-align:center;font-size:1.05rem}.calnav button[aria-label]{width:2.2rem;height:2.2rem;padding:0;font-size:1.1rem}.callayout{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr);align-items:start}@media (min-width:980px){.callayout{grid-template-columns:minmax(0,1fr) 300px}.calside{position:-webkit-sticky;position:sticky;top:1rem}}.calside h2{font-size:1rem}.calgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:12px;overflow:hidden}.calgrid-w{background:var(--surface-2);text-align:center;font-size:.76rem;font-weight:700;color:var(--muted);padding:.3rem 0}.calcell{display:flex;flex-direction:column;align-items:stretch;gap:3px;min-height:6rem;padding:.3rem .3rem .4rem;background:var(--surface);border:0;border-radius:0;color:var(--text);font:inherit;font-weight:400;text-align:left;cursor:pointer;min-width:0}.calcell:hover:not(:disabled){background:var(--surface-2);border:0;color:var(--text)}.calcell.we{background:color-mix(in srgb,var(--surface) 70%,var(--surface-2))}.calcell.out{background:color-mix(in srgb,var(--surface) 40%,var(--surface-2))}.calcell.out .calcell-n b{color:var(--muted);opacity:.55;font-weight:400}.calcell.pick{box-shadow:inset 0 0 0 2px var(--primary)}.calcell:focus-visible{outline-offset:-2px}.calcell-n b{display:inline-grid;place-items:center;min-width:1.55rem;height:1.55rem;border-radius:50%;font-size:.82rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calcell.today .calcell-n b{background:var(--primary);color:var(--on-primary)}.calcell-chips{display:flex;flex-direction:column;gap:2px;min-width:0}.calchip{display:block;font-size:.72rem;line-height:1.4;padding:.05rem .35rem;border-radius:4px;border-left:3px solid var(--muted);background:var(--surface-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calchip.late{border-left-color:var(--red);background:var(--red-soft)}.calchip.due{border-left-color:var(--amber);background:var(--amber-soft)}.calchip.done{border-left-color:var(--green);background:var(--green-soft)}.calchip.info{border-left-color:var(--info);background:var(--info-soft)}.calmore{font-size:.7rem;color:var(--muted);padding-left:.35rem}.calcell-dots{display:none;gap:3px;justify-content:center;flex-wrap:wrap}.calcell-dots .dot{width:6px;height:6px}.evlist{list-style:none;margin:0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.evlist li{display:grid;grid-template-columns:.6rem minmax(0,1fr);grid-gap:.5rem;gap:.5rem;align-items:baseline}.evlist .sub{display:block;color:var(--muted);font-size:.82rem}.evlist .sub.minus{color:var(--red)}@media (max-width:640px){.calcell{min-height:3.3rem;align-items:center;padding:.25rem .1rem}.calcell-chips{display:none}.calcell-dots{display:flex}}.dot{width:.6rem;height:.6rem;border-radius:50%;background:var(--muted);display:inline-block}.dot.late{background:var(--red)}.dot.due{background:var(--amber)}.dot.done{background:var(--green)}.dot.info{background:var(--info)}.legend{display:flex;flex-wrap:wrap;gap:.2rem .9rem;font-size:.8rem;color:var(--muted);margin:.6rem 0 0}.legend span{display:inline-flex;align-items:center;gap:.3rem}.reqs{grid-gap:.8rem;gap:.8rem}.req,.reqs{display:grid}.req{grid-gap:.35rem;gap:.35rem}.acts{gap:.5rem;margin-top:.7rem}.acts,.req-top{display:flex;flex-wrap:wrap}.req-top{gap:.5rem 1rem;align-items:baseline;justify-content:space-between}.req ul{margin:0;padding-left:1.1rem}.seg{display:inline-flex;border:1px solid var(--border);border-radius:10px;padding:3px;background:var(--surface-2);gap:3px}.seg button{background:transparent;border-color:transparent;color:var(--muted);padding:.35rem .9rem;font-weight:500}.seg button:hover:not(:disabled){background:var(--surface);border-color:transparent;color:var(--text)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--primary);font-weight:700;box-shadow:0 1px 2px rgba(0,0,0,.12)}@media (max-width:640px){body{font-size:15.5px}.section{padding-top:1.1rem;padding-bottom:1.5rem}.card{padding:.9rem .95rem}.btn,button,input:not([type=checkbox]):not([type=radio]),select{min-height:44px}input,select,textarea{font-size:16px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .9rem}.linkish{display:inline-block;padding:.55rem 0}a.tel{padding:.5rem 0}button.small{padding:.3rem .8rem}.top-in{padding-top:.5rem;padding-bottom:.45rem}.top nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px;overflow:visible;margin:0;padding:0}.top nav a{display:grid;place-items:center;min-height:40px;padding:.2rem .1rem;font-size:.8rem;background:var(--surface-2);text-align:center;white-space:normal;line-height:1.25}.head{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));align-items:end}.tools input,.tools select{width:100%}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.tiles>:first-child:nth-last-child(odd){grid-column:1/-1}.tile{padding:.65rem .8rem}.tile b{font-size:1.35rem;overflow-wrap:anywhere}dl.facts{grid-template-columns:4.5rem minmax(0,1fr)}.table-wrap table.rows{min-width:0}table.rows,table.rows tbody,table.rows td,table.rows tr{display:block}table.rows thead{display:none}table.rows tr{padding:.6rem .8rem;border-bottom:1px solid var(--border)}table.rows tbody tr:last-child{border-bottom:0}table.rows td{padding:.12rem 0;border:0;white-space:normal!important}table.rows td:empty{display:none}table.rows td[data-l]{position:relative;padding-left:7.4rem;min-height:1.75em;text-align:right;overflow-wrap:anywhere}table.rows td[data-l]:before{content:attr(data-l);position:absolute;left:0;top:.12rem;width:7rem;text-align:left;color:var(--muted);font-size:.84rem;font-weight:400}table.rows td.main{text-align:left;font-weight:500;padding-bottom:.3rem}table.rows td.act{text-align:left;padding-top:.45rem}table.rows td.act .btn{width:100%}.seg{display:flex;flex:1 1 100%}.seg button{flex:1 1;white-space:nowrap}.req-top{align-items:flex-start}.acts .btn{flex:1 1}.calnav{justify-content:space-between}.calnav b{min-width:0;flex:1 1}.calnav button[aria-label]{width:44px;height:44px}.week a{padding:.5rem 0 .55rem}.foot-in{gap:.9rem;padding-top:1.1rem;padding-bottom:1rem}.foot-col dl{align-items:center}.foot a{display:inline-block;padding:.3rem 0}}.ret{display:grid;grid-gap:1.2rem;gap:1.2rem;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}.ret.solo{grid-template-columns:minmax(0,1fr)}.ret>*{min-width:0}.ret-sent h2{margin:0 0 .6rem;font-size:1.1rem}.ret-sent h2 .muted{font-weight:400;font-size:.9rem}.rtabs{display:none}.rcount{display:inline-block;min-width:1.4em;margin-left:.4rem;padding:0 .4em;border-radius:999px;background:var(--amber);color:#fff;font-size:.78rem;font-weight:700;line-height:1.5;text-align:center}.rform fieldset{border:0;padding:0;margin:0 0 1.1rem;min-width:0}.rform legend{padding:0;margin-bottom:.6rem;font-weight:700;font-size:1.02rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.rno{flex:none;display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--primary);color:var(--on-primary);font-size:.85rem}.rlines{display:grid;grid-gap:.5rem;gap:.5rem}.rline{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.5rem .8rem;gap:.5rem .8rem;align-items:center;padding:.55rem .65rem;border:1px solid var(--border);border-radius:12px}.rline.on{border-color:var(--primary);background:var(--primary-soft)}.rline .rsub{display:block;font-size:.82rem}.rline .rerr{grid-column:1/-1;color:var(--red);font-size:.85rem;font-weight:700}.rqty{display:flex;align-items:center;gap:.3rem}.rqty input{width:4.6rem;padding-left:.3rem;padding-right:.3rem;text-align:center;font-weight:700}.rqty button{min-width:2.6rem;min-height:2.6rem;padding:0 .5rem;font-size:1.1rem;line-height:1;background:var(--surface)}.rqty button.rall{font-size:.82rem;font-weight:700;padding:0 .65rem}.rdate button[aria-pressed=true],.rqty button[aria-pressed=true]{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.rdate{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.rdate input{flex:1 1 11rem;width:auto}.rdate button{min-height:2.6rem}.note.rwarn{border-left-color:var(--amber);background:var(--amber-soft);margin-bottom:.8rem}.rbar{display:flex;gap:.6rem 1rem;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-top:.8rem;border-top:1px solid var(--border)}.rbar button{min-width:9rem}.rsteps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:.2rem 0 .1rem;padding:0;font-size:.76rem;color:var(--muted);text-align:center}.rsteps li{position:relative;padding-top:1.1rem}.rsteps li i{position:absolute;top:.15rem;left:50%;width:.7rem;height:.7rem;margin-left:-.35rem;border-radius:50%;background:var(--surface);border:2px solid var(--border);z-index:1}.rsteps li:before{content:"";position:absolute;top:.44rem;left:-50%;width:100%;height:2px;background:var(--border)}.rsteps li:first-child:before{display:none}.rsteps li.done i,.rsteps li.now i{background:var(--primary);border-color:var(--primary)}.rsteps li.done:before,.rsteps li.now:before{background:var(--primary)}.rsteps li.now{color:var(--text);font-weight:700}@media (min-width:900px){.ret:not(.solo) .ret-sent{position:-webkit-sticky;position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto}}@media (max-width:899px){.ret{grid-template-columns:minmax(0,1fr)}.rtabs{display:flex;width:100%}.rtabs button{flex:1 1;min-height:2.75rem}.ret:not(.solo) .ret-sent h2,.ret:not(.solo)[data-tab=new] .ret-sent,.ret:not(.solo)[data-tab=sent] .ret-new{display:none}.rline{grid-template-columns:minmax(0,1fr)}.rqty{justify-content:flex-start}.rqty input{flex:1 1;width:auto;max-width:8rem}.rbar{position:-webkit-sticky;position:sticky;bottom:0;background:var(--surface);margin:0 -1.2rem;padding:.7rem 1.2rem calc(.7rem + env(safe-area-inset-bottom, 0px));box-shadow:0 -6px 14px rgba(0,0,0,.06);z-index:2}.rbar button{flex:1 1}}.hhero{display:flex;gap:1rem 2rem;align-items:center;justify-content:space-between;flex-wrap:wrap;border-top:4px solid var(--primary)}.hhero-n{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0}.hhero-n small{color:var(--muted);font-size:.86rem}.hhero-n>b{font-size:clamp(2.2rem,7vw,3.2rem);line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--primary)}.hhero-n>span{color:var(--muted);font-size:.92rem}.hhero-a{display:flex;gap:.8rem 1.2rem;align-items:flex-end;flex-wrap:wrap}.hbtn{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.5rem 1.6rem;border-radius:10px;background:var(--primary);color:var(--on-primary);font-weight:700}.hbtn:hover{background:var(--primary-2)}.htabs{display:flex;width:100%}.htabs button{flex:1 1;min-height:2.75rem}.hcards{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.hcard{display:grid;grid-gap:.55rem;gap:.55rem;align-content:start}.hcard-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:.7rem;gap:.7rem;align-items:center}.hcard-top .thumb{width:60px;height:60px}.hcard-name{display:grid;min-width:0}.hcard-name b{line-height:1.35;overflow-wrap:anywhere}.hcard-name span{font-size:.82rem}.hcard-qty{display:grid;justify-items:end}.hcard-qty b{font-size:1.6rem;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hcard-qty span{font-size:.82rem}.hshare,.hterm-bar{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.hshare i,.hterm-bar i{display:block;height:100%;border-radius:999px;background:var(--primary)}.hcard-ct{list-style:none;margin:0;padding:.5rem 0 0;border-top:1px solid var(--border);display:grid;grid-gap:.2rem;gap:.2rem;font-size:.88rem}.hcard-ct li{display:flex;justify-content:space-between;gap:.8rem}.hcard-ct span{color:var(--muted);min-width:0;overflow-wrap:anywhere}.hcard-ct b{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hfilter{display:flex;gap:.8rem 1.2rem;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;padding:.8rem 1rem}.hdays{display:grid;grid-gap:1rem;gap:1rem}.hday h3{margin:0 0 .35rem;font-size:.9rem;color:var(--muted);font-weight:700}.hmoves{padding:0 1rem}.hmove{display:grid;grid-template-columns:5.5rem minmax(0,1fr) auto;grid-gap:.5rem .8rem;gap:.5rem .8rem;align-items:center;padding:.65rem 0;border-top:1px solid var(--border)}.hmove:first-child{border-top:0}.hmove-q{font-size:1.15rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.hmove-t{display:grid;min-width:0}.hmove-t>span{overflow-wrap:anywhere}.hmove-d,.hmove-t>span:last-child{font-size:.84rem}.hct.off{opacity:.8}.hct-no{font-size:1.05rem}.hterm{margin-bottom:.7rem}.hterm-t{display:flex;justify-content:space-between;gap:.5rem;margin:.3rem 0 0;font-size:.8rem;flex-wrap:wrap}.hterm-t b{color:var(--text)}.hterm-t b.soon{color:var(--amber)}.hct-lines{list-style:none;margin:0;padding:0;display:grid}.hct-lines li{display:flex;justify-content:space-between;align-items:center;gap:.5rem 1rem;flex-wrap:wrap;padding:.55rem 0;border-top:1px solid var(--border)}.hct-rate{text-align:right;font-size:.9rem;margin-left:auto}.hct-rate b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hsub{display:block;font-size:.82rem}@media (max-width:640px){.hhero-a{width:100%}.hbtn{flex:1 1 100%}.htabs button{padding-left:.3rem;padding-right:.3rem;font-size:.9rem}.hmove{grid-template-columns:4.6rem minmax(0,1fr)}.hmove>.btn,.hmove>.hmove-d{grid-column:2;justify-self:start}.hfilter .seg{width:100%}.hfilter .seg button{flex:1 1;padding-left:.3rem;padding-right:.3rem}}.fhero{display:grid;grid-gap:1rem 2rem;gap:1rem 2rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-top:4px solid var(--primary)}.fhero.bad{border-top-color:var(--red)}.fhero-n{display:grid;grid-gap:.15rem;gap:.15rem;min-width:0}.fhero-n small{color:var(--muted);font-size:.86rem}.fhero-n>b{font-size:clamp(2.1rem,7vw,3.1rem);line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fhero.bad .fhero-n>b{color:var(--red)}.fhero-n>span{color:var(--muted);font-size:.92rem}.fhero-s{display:flex;gap:.6rem;flex-wrap:wrap}button.fstat{display:grid;grid-gap:.05rem;gap:.05rem;justify-items:start;text-align:left;min-width:11rem;padding:.6rem .9rem;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:12px;font-weight:400}button.fstat:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary);color:var(--text)}.fstat small{color:var(--muted);font-size:.8rem}.fstat b{font-size:1.3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fstat span{color:var(--primary);font-size:.8rem}.fage{grid-column:1/-1}.fage-bar{display:flex;gap:2px;height:10px;border-radius:999px;overflow:hidden;background:var(--surface-2)}.fage-bar i{display:block;min-width:6px}.fage ul{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.2rem 1.2rem;font-size:.84rem;color:var(--muted)}.fage li{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.fage li i{width:.7rem;height:.7rem;border-radius:3px;display:inline-block}.fage li b{color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fh2{margin:0 0 .6rem;font-size:1.1rem}.fh2 .muted{font-weight:400;font-size:.9rem}.flist,.ftodo{display:grid;grid-gap:.6rem;gap:.6rem}.fdue,.finv{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr) 5.6rem;grid-gap:.5rem 1rem;gap:.5rem 1rem;align-items:center;padding:.8rem 1rem}.fdue>.btn,.finv>.btn{text-align:center}.fdue .pill,.finv .pill{white-space:nowrap}.fdue{border-left:4px solid var(--amber)}.fdue.late{border-left-color:var(--red)}.fdue-d,.fdue-t,.finv-a,.finv-s,.finv-t{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0;justify-items:start}.fdue-d span.muted,.fdue-t span,.finv-s span.muted,.finv-t span{font-size:.84rem;overflow-wrap:anywhere}.fdue-a{display:flex;gap:.3rem;align-items:baseline;justify-content:flex-end}.fdue-a b{font-size:1.3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.finv-a{justify-items:end;text-align:right}.finv-a b{font-size:1.1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fsub{font-size:.82rem}.fpaid{display:block;width:100%;max-width:10rem;height:5px;border-radius:999px;background:var(--surface-2);overflow:hidden}.fpaid i{display:block;height:100%;background:var(--green)}.finv.struck{opacity:.65}.finv.struck .finv-a b,.finv.struck .finv-t b,.fmove.struck .hmove-q{text-decoration:line-through}.fdep{display:grid;grid-gap:.1rem;gap:.1rem}.fdep b{font-size:1.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fmove{grid-template-columns:8.5rem minmax(0,1fr)}@media (max-width:720px){.fhero{grid-template-columns:minmax(0,1fr)}.fhero-s{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}button.fstat{min-width:0}.fdue,.finv{grid-template-columns:minmax(0,1fr)}.fdue-d,.finv-s{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .6rem}.fdue-a{justify-content:flex-start}.finv-a{justify-items:start;text-align:left}.fpaid{max-width:none}.fmove{grid-template-columns:6.8rem minmax(0,1fr)}}.finv-w{font-size:.86rem;overflow-wrap:anywhere}.linklike{all:unset;cursor:pointer;color:var(--primary);font-size:.84rem;font-weight:600}.linklike:hover{text-decoration:underline}.linklike:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:3px}.finv-d{grid-column:1/-1;border-top:1px solid var(--border);padding-top:.6rem}.finv-lines{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.9rem}.finv-lines>div{display:flex;justify-content:space-between;gap:.6rem 1rem}.finv-lines>div>span{min-width:0;overflow-wrap:anywhere}.finv-lines b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.finv-lines .sum{color:var(--muted);font-size:.86rem;justify-content:flex-end;gap:1.2rem}.finv-lines .sum.first{border-top:1px solid var(--border);padding-top:.35rem;margin-top:.2rem}.finv-lines .sum b{min-width:6.5rem;text-align:right}.finv-lines .sum.total{color:var(--text);font-weight:700}.finv-lines .sum.total b{font-weight:700}.rmode{display:flex}.rmode button{flex:1 1}.rmode-h{display:block;margin-top:.35rem;font-size:.82rem;color:var(--muted);line-height:1.45}.hct-end{margin:.5rem 0 0}.pwfield{position:relative;display:block}.pwfield input{width:100%;padding-right:2.9rem}.pwfield .pweye,.pwfield button.pweye:hover:not(:disabled){all:unset;box-sizing:border-box;position:absolute;top:0;right:0;height:100%;width:2.8rem;display:grid;place-items:center;cursor:pointer;color:var(--muted);border-radius:0 10px 10px 0}.pwfield button.pweye:hover:not(:disabled){color:var(--text)}.pwfield .pweye[aria-pressed=true]{color:var(--primary)}.pwfield .pweye:focus-visible{outline:2px solid var(--primary);outline-offset:-3px}.hgroups{display:grid;grid-gap:.8rem;gap:.8rem}.hct-held{margin-left:auto;white-space:nowrap}.hct-held b{font-size:1.35rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hct-q{white-space:nowrap;text-align:right;margin-left:auto}.hct-q b{font-size:1.25rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hct-lines li.none{opacity:.65}.hgroups .hct-lines li{flex-wrap:nowrap;align-items:center}.hgroups .hct-lines .prod{flex:1 1}.hct-lines .cdots{margin-top:.2rem}.hclosed summary{cursor:pointer;color:var(--muted);font-size:.9rem;padding:.3rem 0}.hclosed[open] summary{margin-bottom:.6rem}.rcolors{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.4rem .6rem}.rcolor,.rcolors{align-items:center}.rcolor{display:inline-flex;gap:.4rem;padding:.25rem .25rem .25rem .6rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:.88rem}.rcolor.bad{border-color:var(--red)}.rcolor input{width:4.2rem;padding:.3rem;text-align:center;font-weight:700}.rsum b{font-size:1.3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rconfirm{width:min(30rem,calc(100vw - 2rem));border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.rconfirm::-webkit-backdrop{background:rgba(10,20,12,.45)}.rconfirm::backdrop{background:rgba(10,20,12,.45)}.rconfirm h2{margin:0 0 .6rem;font-size:1.1rem}.rconfirm-l{list-style:none;margin:0;padding:0;display:grid}.rconfirm-l li{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.5rem 0;border-top:1px solid var(--border)}.rconfirm-l .rsub{display:block;font-size:.84rem}.rconfirm-q{white-space:nowrap;display:grid;justify-items:end;grid-gap:.15rem;gap:.15rem}.rconfirm-q b{font-size:1.15rem}.rconfirm-sum{margin:.6rem 0 0;padding-top:.6rem;border-top:1px solid var(--border)}.rconfirm-a{justify-content:flex-end;gap:.5rem;margin-top:1rem}.fsec-h,.rconfirm-a{display:flex;flex-wrap:wrap}.fsec-h{align-items:center;justify-content:space-between;gap:.5rem 1rem}.fsec-h .fh2{margin:0}.fsum{display:grid;grid-gap:.9rem;gap:.9rem;border-top:4px solid var(--green)}.fsum.wait{border-top-color:var(--amber)}.fsum.bad{border-top-color:var(--red)}.fsum-line{margin:0;font-size:1.05rem;color:var(--muted)}.fsum-line b{font-size:1.25rem;color:var(--green)}.fsum.wait .fsum-line b{color:var(--amber)}.fsum.bad .fsum-line b{color:var(--red)}.fstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-gap:.6rem;gap:.6rem}.fstats .fstat{min-width:0}.fsec{display:grid;grid-gap:.6rem;gap:.6rem;scroll-margin-top:1rem}.fempty,.fsec>.fh2{margin:0}.fempty{padding:.9rem 1rem;border:1px dashed var(--border);border-radius:var(--radius)}.fmore{justify-self:start}.frows{display:grid;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.frow{display:grid;grid-template-columns:11.5rem minmax(0,1fr) 9.5rem 9rem 4.5rem;grid-gap:.3rem 1rem;gap:.3rem 1rem;align-items:center;padding:.7rem 1rem;border-top:1px solid var(--border)}.frow:first-child{border-top:0}.frow>div{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0;justify-items:start}.frow .muted{font-size:.82rem;overflow-wrap:anywhere}.frow-id b{font-size:.92rem;white-space:nowrap}.frow-w>span:first-child{overflow-wrap:anywhere}.frow-a{justify-items:end!important;text-align:right}.frow-a b{font-size:1.1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.frow-x{justify-items:end!important}.frow .pill{white-space:nowrap}.frow.struck{opacity:.6}.frow.struck .frow-a b,.frow.struck .frow-id b{text-decoration:line-through}.frow.open{background:var(--surface-2)}.frow .finv-d{grid-column:1/-1;display:block}.fdue2{box-shadow:inset 4px 0 0 var(--amber)}.fdue2.late{box-shadow:inset 4px 0 0 var(--red)}.fdue2 .frow-a b{font-size:1.25rem}a.btn.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}a.btn.primary:hover{background:var(--primary-2)}@media (max-width:720px){.frow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"id a" "w w" "s x";gap:.35rem .8rem}.frow-id{grid-area:id}.frow-w{grid-area:w}.frow-s{grid-area:s;display:flex!important;flex-wrap:wrap;align-items:center;gap:.3rem .6rem}.frow-a{grid-area:a}.frow-x{grid-area:x}}.htools{align-items:flex-end}.htools,.htools .field{margin:0}.pcat{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}.pcard{display:grid;grid-template-rows:auto 1fr;padding:0;overflow:hidden}.pcard-ph{position:relative;aspect-ratio:4/3;background:var(--surface-2);display:grid;place-items:center}.pcard-ph img{width:100%;height:100%;object-fit:contain}.pcard-none{width:40%;aspect-ratio:1;border-radius:12px;background:var(--border);opacity:.5}.pcard-tag{position:absolute;top:.6rem;left:.6rem}.pcard-b{display:grid;grid-gap:.45rem;gap:.45rem;padding:.9rem 1rem 1rem;align-content:start}.pcard-b h2{margin:0;font-size:1.05rem}.pcard-code{margin:0;font-size:.85rem}.pcard-spec{margin:.2rem 0 0;display:grid;grid-gap:.2rem;gap:.2rem;font-size:.86rem}.pcard-spec>div{display:grid;grid-template-columns:9rem minmax(0,1fr);grid-gap:.5rem;gap:.5rem}.pcard-spec dt{color:var(--muted)}.pcard-spec dd{margin:0;overflow-wrap:anywhere}.pcard-a{gap:.4rem;margin-top:.4rem;align-self:end}.pcard-a,.pcontact{display:flex;flex-wrap:wrap}.pcontact{align-items:center;justify-content:space-between;gap:.6rem 1rem;padding:.75rem 1rem;border-radius:var(--radius);background:var(--primary-soft);border:1px solid var(--border)}.pcontact .muted{font-size:.88rem}.pcontact-a{display:flex;gap:.4rem;flex:none}@media (max-width:640px){.pcontact{position:-webkit-sticky;position:sticky;bottom:.6rem;z-index:5;box-shadow:var(--shadow);order:99}.pcontact>span:first-child .muted{display:none}.pcontact-a{width:100%}.pcontact-a .btn{flex:1 1;text-align:center;padding:.55rem .7rem}}.pcard.mine{border-color:var(--green)}.pcard-ph{aspect-ratio:16/10}.pcard-none{display:grid;place-items:center;grid-gap:.1rem;gap:.1rem;width:auto;aspect-ratio:auto;background:none;opacity:1;color:var(--muted);font-size:1.4rem;font-weight:700;text-align:center}.pcard-none small{font-size:.78rem;font-weight:400}.pcard-b{gap:.6rem}.pcard-b h2{font-size:1.15rem}.pcard-b h2 .muted{font-weight:400;font-size:.92rem}.pcard-tags{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center;min-height:1.6rem}.pcard-kind{padding:.1rem .55rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:.78rem;font-weight:600;color:var(--muted)}.pcard-kind.fg{color:var(--info);background:var(--info-soft);border-color:transparent}.pcard-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));grid-gap:.4rem;gap:.4rem;margin:0}.pcard-facts>div{padding:.45rem .55rem;border-radius:10px;background:var(--surface-2);min-width:0}.pcard-facts dt{font-size:.72rem;color:var(--muted)}.pcard-facts dd{margin:.1rem 0 0;font-weight:700;font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.pcard-colors{display:flex;gap:.5rem;align-items:baseline;flex-wrap:wrap;font-size:.88rem}.pcard-more summary{cursor:pointer;color:var(--primary);font-size:.86rem;font-weight:600}.pcard-more[open] summary{margin-bottom:.4rem}.pcard-unit{margin:0;font-size:.8rem;align-self:end}.pcard-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pcard-facts>div:first-child:nth-last-child(odd){grid-column:1/-1}.pcard-colors{display:grid;grid-template-columns:auto minmax(0,1fr)}.plist{display:grid;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.prow{display:grid;grid-template-columns:104px minmax(0,1.4fr) repeat(3,minmax(0,1fr)) minmax(0,1.3fr);grid-gap:.4rem 1rem;gap:.4rem 1rem;align-items:center;padding:.75rem 1rem;border-top:1px solid var(--border)}.prow:first-child{border-top:0}.prow.prow-head{background:var(--surface-2);font-size:.78rem;color:var(--muted);font-weight:700;padding-block:.5rem}.prow.mine{background:color-mix(in srgb,var(--green-soft) 55%,var(--surface))}.prow-ph{width:104px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#fff;border:1px solid var(--border);display:grid;place-items:center}.prow-ph img{width:100%;height:100%;object-fit:contain}.prow-none{display:grid;justify-items:center;color:var(--muted);font-weight:700;font-size:.85rem}.prow-none small{font-weight:400;font-size:.7rem}.prow-t{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0}.prow-t b{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;font-size:1rem}.prow-t>span{color:var(--muted);font-size:.84rem}.prow-vs{display:contents}.prow-v{font-weight:700;font-size:.95rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:0;overflow-wrap:anywhere}.prow-v small{display:none;font-size:.72rem}.prow-v em,.prow-v small{color:var(--muted);font-weight:400}.prow-v em{display:block;font-style:normal;font-size:.74rem}.prow-c{min-width:0}@media (max-width:760px){.prow.prow-head{display:none}.prow{grid-template-columns:88px minmax(0,1fr)}.prow-ph{width:88px;grid-row:span 2}.prow-vs{display:flex;gap:.3rem 1.1rem;flex-wrap:wrap;grid-column:2}.prow-v small{display:block}.prow-v em{display:none}.prow-c{grid-column:1/-1}}.prow-t .nw{white-space:nowrap}.fpay{display:flex;align-items:center;justify-content:space-between;gap:.6rem 1rem;flex-wrap:wrap;margin-top:.7rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--primary-soft)}.fpay-t{display:flex;flex-direction:column;gap:.2rem;min-width:0}.fpay-bank{white-space:pre-line;font-weight:700;font-size:1.02rem}.fpay button{flex:none}