.capm{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:28px}.capm-backdrop{position:absolute;inset:0;background:rgba(20,30,24,.42);backdrop-filter:blur(3px)}.capm-panel{position:relative;width:min(880px,94vw);max-height:88vh;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 32px 80px rgba(var(--shadow-color),.4);overflow:hidden;transform-origin:center;animation:capm-bloom .18s cubic-bezier(.2,.7,.3,1)}@keyframes capm-bloom{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.capm-head{justify-content:space-between;gap:12px;padding:16px 18px 14px;border-bottom:1px solid var(--line-soft)}.capm-head,.capm-title{display:flex;align-items:center}.capm-title{font-size:15px;font-weight:650;color:var(--ink);min-width:0}.capm-close{flex:none;border:none;background:var(--accent-wash);color:var(--stem);width:30px;height:30px;border-radius:9px;cursor:pointer;display:grid;place-items:center}.capm-close:hover{background:var(--dew)}.capm-body{padding:16px 18px;overflow:auto}.capm-foot{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:12px 18px 16px;border-top:1px solid var(--line-soft)}.capm-remember{margin-right:auto;display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--stem);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.capm-remember input{accent-color:var(--moss);cursor:pointer}.capm-tabs{display:inline-flex;gap:4px;padding:3px;margin-bottom:14px;background:var(--accent-wash);border:1px solid var(--line);border-radius:10px}.capm-tab{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;border-radius:7px;padding:7px 16px;font:inherit;font-size:12.5px;font-weight:600;color:var(--stem);cursor:pointer;transition:background .12s,color .12s}.capm-tab:hover{color:var(--ink)}.capm-tab.on{background:var(--paper);color:var(--moss);box-shadow:0 1px 2px rgba(var(--shadow-color),.12)}.capm-tab-n{font-size:10.5px;font-weight:700;color:var(--stem);background:var(--accent-wash);border-radius:999px;padding:1px 7px;min-width:18px;text-align:center}.capm-tab.on .capm-tab-n{background:var(--dew);color:var(--moss)}.cap-pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.cap-pick-tile{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--paper);cursor:pointer;text-align:left;font:inherit;transition:border-color .12s,box-shadow .12s,transform .06s}.cap-pick-tile:hover{border-color:var(--accent);box-shadow:0 2px 10px rgba(var(--shadow-color),.12)}.cap-pick-tile:active{transform:translateY(1px)}.cap-pick-thumb{display:grid;place-items:center;aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:var(--mist);border:1px solid var(--line)}.cap-pick-thumb img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.cap-pick-name{display:flex;align-items:center;gap:6px;min-width:0}.cap-pick-appicon{width:16px;height:16px;flex:none;border-radius:3px}.cap-pick-label{flex:1;min-width:0;font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cap-pick-empty{padding:40px 24px;text-align:center;font-size:13px;color:var(--stem);line-height:1.5}.cap-web-pick{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 24px 24px;text-align:center}.cap-web-ic{display:grid;place-items:center;width:60px;height:60px;border-radius:16px;background:var(--accent-wash);color:var(--moss)}.cap-web-title{font-size:15px;font-weight:650;color:var(--ink)}.cap-web-sub{max-width:380px;font-size:12.5px;line-height:1.5;color:var(--stem)}.cap-web-pick .ltm-btn{margin-top:4px}.cap-src-chip{margin-left:10px;font-size:11.5px;font-weight:600;color:var(--stem);background:var(--accent-wash);border:1px solid var(--line);border-radius:6px;padding:2px 8px}.cap-crop,.cap-stage{cursor:crosshair;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;line-height:0}.cap-crop{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--mist);transition:width .2s ease,height .2s ease,margin .2s ease}.cap-zoomwrap{display:block;position:relative;transform-origin:0 0;transition:transform .2s ease}.cap-crop video{display:block;width:100%;height:auto;max-height:60vh;-o-object-fit:contain;object-fit:contain;-webkit-user-drag:none}.cap-sel{position:absolute;border:1.5px solid var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);box-shadow:0 0 0 9999px rgba(20,30,24,.42);pointer-events:none}.cap-msg{margin-top:14px;font-size:12.5px;color:var(--moss);background:var(--accent-wash);border:1px solid var(--line);border-radius:10px;padding:10px 13px}.capm-loading{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--paper);animation:capm-swipe-in .3s cubic-bezier(.2,.7,.3,1)}@keyframes capm-swipe-in{0%{transform:translateX(100%);opacity:.4}to{transform:translateX(0);opacity:1}}.capm-load-ic{position:relative;width:66px;height:66px;display:grid;place-items:center;border-radius:18px;background:var(--accent-wash);color:var(--moss);animation:capm-load-pulse 1.5s ease-in-out infinite}@keyframes capm-load-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.94);opacity:.82}}.capm-load-ring{position:absolute;inset:-6px;border-radius:50%;border-left:2px solid transparent;border-bottom:2px solid transparent;border-top:2px solid transparent;border-top-color:var(--accent);border-right:2px solid transparent;border-right-color:var(--accent);animation:capm-load-spin .9s linear infinite}@keyframes capm-load-spin{to{transform:rotate(1turn)}}.capm-load-title{font-size:13.5px;font-weight:600;color:var(--stem)}.capm-load-dots{display:flex;gap:6px}.capm-load-dots span{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:capm-load-bounce 1.1s ease-in-out infinite}.capm-load-dots span:nth-child(2){animation-delay:.15s}.capm-load-dots span:nth-child(3){animation-delay:.3s}@keyframes capm-load-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-5px);opacity:1}}.impm-sheet{position:fixed;inset:0;z-index:1100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;background:rgba(20,30,24,.42);backdrop-filter:blur(4px);animation:impm-fade .2s ease}.impm-panels{display:flex;gap:16px;width:min(900px,100%);height:min(340px,56vh)}@media (max-width:680px){.impm-panels{flex-direction:column;height:auto;max-height:82vh;overflow-y:auto}}.impm-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--paper);font:inherit;cursor:pointer;text-align:center;transition:transform .14s ease,border-color .14s ease,background .14s ease;animation:impm-rise .22s cubic-bezier(.2,.7,.3,1)}.impm-panel:hover:not(:disabled){transform:translateY(-2px);border-color:var(--moss);background:var(--accent-wash)}.impm-panel:disabled{opacity:.55;cursor:not-allowed}.impm-ic{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:16px;background:var(--accent-wash);color:var(--moss)}.impm-panel-title{font-size:17px;font-weight:700;color:var(--ink)}.impm-panel-sub{font-size:12.5px;color:var(--stem);max-width:210px;line-height:1.4}.impm-cancel{border:none;background:hsla(0,0%,100%,.14);color:#fff;font:inherit;font-size:13px;font-weight:600;padding:9px 22px;border-radius:999px;cursor:pointer}.impm-cancel:hover{background:hsla(0,0%,100%,.24)}@keyframes impm-fade{0%{opacity:0}to{opacity:1}}@keyframes impm-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.item-editor .field-label{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--stem);margin-bottom:8px}.item-editor .text-input{width:100%;padding:10px 13px;border:1px solid var(--line);border-radius:9px;background:var(--mist);font-size:14px;font-family:Inter,sans-serif;outline:none}.item-editor .text-input:focus{border-color:var(--accent);background:var(--paper)}.item-editor .all-btn{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.06em;padding:5px 9px;border:1px dashed var(--line);border-radius:999px;background:var(--paper);color:var(--stem);cursor:pointer;white-space:nowrap}.item-editor .all-btn:hover{border-color:var(--accent);color:var(--moss)}.item-editor .pay-summary{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:var(--mist)}.item-editor .ss-line{display:flex;align-items:center;justify-content:space-between;padding:5px 0;font-family:JetBrains Mono,monospace;font-size:13px}.item-editor .ss-line .lbl{color:var(--stem)}.item-editor .ss-line.total{border-top:1px solid var(--line);margin-top:6px;padding-top:12px}.item-editor .ss-line.total .lbl{color:var(--ink);font-family:Inter,sans-serif;font-weight:600;font-size:14px}.item-editor .ss-line.total .val{font-size:20px;font-weight:600;color:var(--moss)}.item-editor .de-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.item-editor .de-row input{padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--mist);font-size:13px;font-family:Inter,sans-serif;outline:none}.item-editor .de-row input:focus{border-color:var(--accent);background:var(--paper)}.item-editor .de-row .de-name{flex:1;min-width:0}.item-editor .de-row .de-price{width:96px;font-family:JetBrains Mono,monospace;text-align:right}.item-editor .de-del{width:34px;height:34px;flex-shrink:0;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--stem);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.item-editor .de-del:hover{color:var(--warn);border-color:var(--danger-border)}.item-editor .de-del svg{stroke:currentColor}.item-editor .de-taxtip{display:flex;gap:12px;margin-top:14px}.item-editor .de-taxtip .fld{flex:1}.item-editor .tt-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.item-editor .tt-head .field-label{margin:0}.item-editor .tt-toggle{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--accent-wash)}.item-editor .tt-toggle button{border:0;background:transparent;padding:2px 9px;font-size:12px;font-weight:600;line-height:1.4;color:var(--stem);cursor:pointer}.item-editor .tt-toggle button.on{background:var(--terra);color:var(--on-accent)}.item-editor .tt-input{position:relative}.item-editor .tt-input:before{position:absolute;top:50%;transform:translateY(-50%);color:var(--stem);font-size:14px;pointer-events:none}.item-editor .tt-input.is-amt:before{content:"$";left:12px}.item-editor .tt-input.is-pct:after{content:"%";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--stem);font-size:14px;pointer-events:none}.item-editor .tt-input .text-input{padding-left:24px}.item-editor .tt-input.is-pct .text-input{padding-left:12px;padding-right:24px}.item-editor .tt-equiv{margin-top:4px;font-size:12px;color:var(--stem)}.voe{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center}.voe-backdrop{position:absolute;inset:0;background:rgba(20,30,24,.42);backdrop-filter:blur(2px)}.voe-panel{position:relative;width:min(440px,92vw);max-height:92vh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 48px rgba(20,30,24,.28);padding:16px;display:flex;flex-direction:column;gap:14px}.voe-head{font-weight:600;font-size:15px;color:var(--moss)}.voe-capture{display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px 8px 6px}.voe-rec{width:76px;height:76px;border-radius:50%;border:3px solid var(--accent);background:var(--accent-wash);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .12s ease,background .12s ease}.voe-rec:hover{transform:scale(1.04)}.voe-rec-dot{width:26px;height:26px;border-radius:50%;background:var(--accent);transition:border-radius .15s ease,width .15s ease,height .15s ease}.voe-rec.on{animation:voe-pulse 1.3s ease-in-out infinite}.voe-rec.on .voe-rec-dot{width:22px;height:22px;border-radius:5px}@keyframes voe-pulse{0%,to{box-shadow:0 0 0 0 rgba(62,124,92,.4)}50%{box-shadow:0 0 0 12px rgba(62,124,92,0)}}.voe-timer{font-family:JetBrains Mono,ui-monospace,monospace;font-size:15px;color:var(--ink)}.voe-hint{color:var(--stem);line-height:1.45}.voe-error,.voe-hint{font-size:12.5px;text-align:center;max-width:300px}.voe-error{color:#b23b2e}.voe-stage{display:flex;flex-direction:column;gap:10px}.voe-track{position:relative;height:72px;border-radius:12px;background:var(--paper-soft);border:1px solid var(--line);overflow:hidden;touch-action:none}.voe-wave{display:block;width:100%;height:100%}.voe-track-sel{position:absolute;top:0;bottom:0;background:rgba(62,124,92,.1);border-left:2px solid var(--accent);border-right:2px solid var(--accent);pointer-events:none}.voe-handle{position:absolute;top:50%;width:14px;height:80px;transform:translate(-50%,-50%);background:var(--accent);border-radius:5px;cursor:ew-resize;touch-action:none}.voe-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.voe-play{border:1px solid var(--line);background:var(--paper);color:var(--moss);border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer}.voe-play:hover{border-color:var(--accent);background:var(--accent-wash)}.voe-times{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;color:var(--stem)}.voe-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:2px}.voe-cancel,.voe-redo{border:1px solid var(--line);background:var(--paper);color:var(--stem);border-radius:10px;padding:10px 18px;font-weight:600;cursor:pointer}.voe-cancel:hover:not(:disabled),.voe-redo:hover{border-color:var(--accent)}.voe-use{border:none;background:var(--accent);color:var(--on-accent);border-radius:10px;padding:10px 20px;font-weight:600;cursor:pointer}.voe-use:hover:not(:disabled){background:var(--accent-strong)}.voe-cancel:disabled,.voe-use:disabled{opacity:.6;cursor:default}