:root{--swal2-outline: 0 0 0 3px rgba(100, 150, 200, .5);--swal2-container-padding: .625em;--swal2-backdrop: rgba(0, 0, 0, .4);--swal2-backdrop-transition: background-color .15s;--swal2-width: 32em;--swal2-padding: 0 0 1.25em;--swal2-border: none;--swal2-border-radius: .3125rem;--swal2-background: white;--swal2-color: #545454;--swal2-show-animation: swal2-show .3s;--swal2-hide-animation: swal2-hide .15s forwards;--swal2-icon-zoom: 1;--swal2-icon-animations: true;--swal2-title-padding: .8em 1em 0;--swal2-html-container-padding: 1em 1.6em .3em;--swal2-input-border: 1px solid #d9d9d9;--swal2-input-border-radius: .1875em;--swal2-input-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .06), 0 0 0 3px transparent;--swal2-input-background: transparent;--swal2-input-transition: border-color .2s, box-shadow .2s;--swal2-input-hover-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .06), 0 0 0 3px transparent;--swal2-input-focus-border: 1px solid #b4dbed;--swal2-input-focus-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .06), 0 0 0 3px rgba(100, 150, 200, .5);--swal2-progress-step-background: #add8e6;--swal2-validation-message-background: #f0f0f0;--swal2-validation-message-color: #666;--swal2-footer-border-color: #eee;--swal2-footer-background: transparent;--swal2-footer-color: inherit;--swal2-timer-progress-bar-background: rgba(0, 0, 0, .3);--swal2-close-button-position: initial;--swal2-close-button-inset: auto;--swal2-close-button-font-size: 2.5em;--swal2-close-button-color: #ccc;--swal2-close-button-transition: color .2s, box-shadow .2s;--swal2-close-button-outline: initial;--swal2-close-button-box-shadow: inset 0 0 0 3px transparent;--swal2-close-button-focus-box-shadow: inset var(--swal2-outline);--swal2-close-button-hover-transform: none;--swal2-actions-justify-content: center;--swal2-actions-width: auto;--swal2-actions-margin: 1.25em auto 0;--swal2-actions-padding: 0;--swal2-actions-border-radius: 0;--swal2-actions-background: transparent;--swal2-action-button-transition: background-color .2s, box-shadow .2s;--swal2-action-button-hover: black 10%;--swal2-action-button-active: black 10%;--swal2-confirm-button-box-shadow: none;--swal2-confirm-button-border-radius: .25em;--swal2-confirm-button-background-color: #7066e0;--swal2-confirm-button-color: #fff;--swal2-deny-button-box-shadow: none;--swal2-deny-button-border-radius: .25em;--swal2-deny-button-background-color: #dc3741;--swal2-deny-button-color: #fff;--swal2-cancel-button-box-shadow: none;--swal2-cancel-button-border-radius: .25em;--swal2-cancel-button-background-color: #6e7881;--swal2-cancel-button-color: #fff;--swal2-toast-show-animation: swal2-toast-show .5s;--swal2-toast-hide-animation: swal2-toast-hide .1s forwards;--swal2-toast-border: none;--swal2-toast-box-shadow: 0 0 1px hsl(0deg 0% 0% / .075), 0 1px 2px hsl(0deg 0% 0% / .075), 1px 2px 4px hsl(0deg 0% 0% / .075), 1px 3px 8px hsl(0deg 0% 0% / .075), 2px 4px 16px hsl(0deg 0% 0% / .075)}[data-swal2-theme=dark]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, .7)}@media(prefers-color-scheme:dark){[data-swal2-theme=auto]{--swal2-dark-theme-black: #19191a;--swal2-dark-theme-white: #e1e1e1;--swal2-background: var(--swal2-dark-theme-black);--swal2-color: var(--swal2-dark-theme-white);--swal2-footer-border-color: #555;--swal2-input-background: color-mix(in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10%);--swal2-validation-message-background: color-mix( in srgb, var(--swal2-dark-theme-black), var(--swal2-dark-theme-white) 10% );--swal2-validation-message-color: var(--swal2-dark-theme-white);--swal2-timer-progress-bar-background: rgba(255, 255, 255, .7)}}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto!important}body.swal2-no-backdrop .swal2-container{background-color:#0000!important;pointer-events:none}body.swal2-no-backdrop .swal2-container .swal2-popup{pointer-events:auto}body.swal2-no-backdrop .swal2-container .swal2-modal{box-shadow:0 0 10px var(--swal2-backdrop)}body.swal2-toast-shown .swal2-container{box-sizing:border-box;width:360px;max-width:100%;background-color:#0000;pointer-events:none}body.swal2-toast-shown .swal2-container.swal2-top{inset:0 auto auto 50%;transform:translate(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{inset:0 0 auto auto}body.swal2-toast-shown .swal2-container.swal2-top-start,body.swal2-toast-shown .swal2-container.swal2-top-left{inset:0 auto auto 0}body.swal2-toast-shown .swal2-container.swal2-center-start,body.swal2-toast-shown .swal2-container.swal2-center-left{inset:50% auto auto 0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{inset:50% auto auto 50%;transform:translate(-50%,-50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{inset:50% 0 auto auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-start,body.swal2-toast-shown .swal2-container.swal2-bottom-left{inset:auto auto 0 0}body.swal2-toast-shown .swal2-container.swal2-bottom{inset:auto auto 0 50%;transform:translate(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{inset:auto 0 0 auto}@media print{body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown){overflow-y:scroll!important}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop,.swal2-toast-shown) .swal2-container{position:static!important}}div:where(.swal2-container){display:grid;position:fixed;z-index:1060;inset:0;box-sizing:border-box;grid-template-areas:"top-start     top            top-end" "center-start  center         center-end" "bottom-start  bottom-center  bottom-end";grid-template-rows:minmax(min-content,auto) minmax(min-content,auto) minmax(min-content,auto);height:100%;padding:var(--swal2-container-padding);overflow-x:hidden;transition:var(--swal2-backdrop-transition);-webkit-overflow-scrolling:touch}div:where(.swal2-container).swal2-backdrop-show,div:where(.swal2-container).swal2-noanimation{background:var(--swal2-backdrop)}div:where(.swal2-container).swal2-backdrop-hide{background:#0000!important}div:where(.swal2-container).swal2-top-start,div:where(.swal2-container).swal2-center-start,div:where(.swal2-container).swal2-bottom-start{grid-template-columns:minmax(0,1fr) auto auto}div:where(.swal2-container).swal2-top,div:where(.swal2-container).swal2-center,div:where(.swal2-container).swal2-bottom{grid-template-columns:auto minmax(0,1fr) auto}div:where(.swal2-container).swal2-top-end,div:where(.swal2-container).swal2-center-end,div:where(.swal2-container).swal2-bottom-end{grid-template-columns:auto auto minmax(0,1fr)}div:where(.swal2-container).swal2-top-start>.swal2-popup{align-self:start}div:where(.swal2-container).swal2-top>.swal2-popup{grid-column:2;place-self:start center}div:where(.swal2-container).swal2-top-end>.swal2-popup,div:where(.swal2-container).swal2-top-right>.swal2-popup{grid-column:3;place-self:start end}div:where(.swal2-container).swal2-center-start>.swal2-popup,div:where(.swal2-container).swal2-center-left>.swal2-popup{grid-row:2;align-self:center}div:where(.swal2-container).swal2-center>.swal2-popup{grid-column:2;grid-row:2;place-self:center center}div:where(.swal2-container).swal2-center-end>.swal2-popup,div:where(.swal2-container).swal2-center-right>.swal2-popup{grid-column:3;grid-row:2;place-self:center end}div:where(.swal2-container).swal2-bottom-start>.swal2-popup,div:where(.swal2-container).swal2-bottom-left>.swal2-popup{grid-column:1;grid-row:3;align-self:end}div:where(.swal2-container).swal2-bottom>.swal2-popup{grid-column:2;grid-row:3;place-self:end center}div:where(.swal2-container).swal2-bottom-end>.swal2-popup,div:where(.swal2-container).swal2-bottom-right>.swal2-popup{grid-column:3;grid-row:3;place-self:end end}div:where(.swal2-container).swal2-grow-row>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-column:1/4;width:100%}div:where(.swal2-container).swal2-grow-column>.swal2-popup,div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup{grid-row:1/4;align-self:stretch}div:where(.swal2-container).swal2-no-transition{transition:none!important}div:where(.swal2-container)[popover]{width:auto;border:0}div:where(.swal2-container) div:where(.swal2-popup){display:none;position:relative;box-sizing:border-box;grid-template-columns:minmax(0,100%);width:var(--swal2-width);max-width:100%;padding:var(--swal2-padding);border:var(--swal2-border);border-radius:var(--swal2-border-radius);background:var(--swal2-background);color:var(--swal2-color);font-family:inherit;font-size:1rem;container-name:swal2-popup}div:where(.swal2-container) div:where(.swal2-popup):focus{outline:none}div:where(.swal2-container) div:where(.swal2-popup).swal2-loading{overflow-y:hidden}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable{cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-draggable div:where(.swal2-icon){cursor:grab}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging{cursor:grabbing}div:where(.swal2-container) div:where(.swal2-popup).swal2-dragging div:where(.swal2-icon){cursor:grabbing}div:where(.swal2-container) h2:where(.swal2-title){position:relative;max-width:100%;margin:0;padding:var(--swal2-title-padding);color:inherit;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;overflow-wrap:break-word;cursor:initial}div:where(.swal2-container) div:where(.swal2-actions){display:flex;z-index:1;box-sizing:border-box;flex-wrap:wrap;align-items:center;justify-content:var(--swal2-actions-justify-content);width:var(--swal2-actions-width);margin:var(--swal2-actions-margin);padding:var(--swal2-actions-padding);border-radius:var(--swal2-actions-border-radius);background:var(--swal2-actions-background)}div:where(.swal2-container) div:where(.swal2-loader){display:none;align-items:center;justify-content:center;width:2.2em;height:2.2em;margin:0 1.875em;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border-width:.25em;border-style:solid;border-radius:100%;border-color:#2778c4 rgba(0,0,0,0) #2778c4 rgba(0,0,0,0)}div:where(.swal2-container) button:where(.swal2-styled){margin:.3125em;padding:.625em 1.1em;transition:var(--swal2-action-button-transition);border:none;box-shadow:0 0 0 3px #0000;font-weight:500}div:where(.swal2-container) button:where(.swal2-styled):not([disabled]){cursor:pointer}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){border-radius:var(--swal2-confirm-button-border-radius);background:initial;background-color:var(--swal2-confirm-button-background-color);box-shadow:var(--swal2-confirm-button-box-shadow);color:var(--swal2-confirm-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):hover{background-color:color-mix(in srgb,var(--swal2-confirm-button-background-color),var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):active{background-color:color-mix(in srgb,var(--swal2-confirm-button-background-color),var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny){border-radius:var(--swal2-deny-button-border-radius);background:initial;background-color:var(--swal2-deny-button-background-color);box-shadow:var(--swal2-deny-button-box-shadow);color:var(--swal2-deny-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):hover{background-color:color-mix(in srgb,var(--swal2-deny-button-background-color),var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):active{background-color:color-mix(in srgb,var(--swal2-deny-button-background-color),var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel){border-radius:var(--swal2-cancel-button-border-radius);background:initial;background-color:var(--swal2-cancel-button-background-color);box-shadow:var(--swal2-cancel-button-box-shadow);color:var(--swal2-cancel-button-color);font-size:1em}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):hover{background-color:color-mix(in srgb,var(--swal2-cancel-button-background-color),var(--swal2-action-button-hover))}div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):active{background-color:color-mix(in srgb,var(--swal2-cancel-button-background-color),var(--swal2-action-button-active))}div:where(.swal2-container) button:where(.swal2-styled):focus-visible{outline:none;box-shadow:var(--swal2-action-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-styled)[disabled]:not(.swal2-loading){opacity:.4}div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-footer){margin:1em 0 0;padding:1em 1em 0;border-top:1px solid var(--swal2-footer-border-color);background:var(--swal2-footer-background);color:var(--swal2-footer-color);font-size:1em;text-align:center;cursor:initial}div:where(.swal2-container) .swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;grid-column:auto!important;overflow:hidden;border-bottom-right-radius:var(--swal2-border-radius);border-bottom-left-radius:var(--swal2-border-radius)}div:where(.swal2-container) div:where(.swal2-timer-progress-bar){width:100%;height:.25em;background:var(--swal2-timer-progress-bar-background)}div:where(.swal2-container) img:where(.swal2-image){max-width:100%;margin:2em auto 1em;cursor:initial}div:where(.swal2-container) button:where(.swal2-close){position:var(--swal2-close-button-position);inset:var(--swal2-close-button-inset);z-index:2;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin-top:0;margin-right:0;margin-bottom:-1.2em;padding:0;overflow:hidden;transition:var(--swal2-close-button-transition);border:none;border-radius:var(--swal2-border-radius);outline:var(--swal2-close-button-outline);background:#0000;color:var(--swal2-close-button-color);font-family:monospace;font-size:var(--swal2-close-button-font-size);cursor:pointer;justify-self:end}div:where(.swal2-container) button:where(.swal2-close):hover{transform:var(--swal2-close-button-hover-transform);background:#0000;color:#f27474}div:where(.swal2-container) button:where(.swal2-close):focus-visible{outline:none;box-shadow:var(--swal2-close-button-focus-box-shadow)}div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner{border:0}div:where(.swal2-container) div:where(.swal2-html-container){z-index:1;justify-content:center;margin:0;padding:var(--swal2-html-container-padding);overflow:auto;color:inherit;font-size:1.125em;font-weight:400;line-height:normal;text-align:center;overflow-wrap:break-word;word-break:break-word;cursor:initial}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea),div:where(.swal2-container) select:where(.swal2-select),div:where(.swal2-container) div:where(.swal2-radio),div:where(.swal2-container) label:where(.swal2-checkbox){margin:1em 2em 3px}div:where(.swal2-container) input:where(.swal2-input),div:where(.swal2-container) input:where(.swal2-file),div:where(.swal2-container) textarea:where(.swal2-textarea){box-sizing:border-box;width:auto;transition:var(--swal2-input-transition);border:var(--swal2-input-border);border-radius:var(--swal2-input-border-radius);background:var(--swal2-input-background);box-shadow:var(--swal2-input-box-shadow);color:inherit;font-size:1.125em}div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror{border-color:#f27474!important;box-shadow:0 0 2px #f27474!important}div:where(.swal2-container) input:where(.swal2-input):hover,div:where(.swal2-container) input:where(.swal2-file):hover,div:where(.swal2-container) textarea:where(.swal2-textarea):hover{box-shadow:var(--swal2-input-hover-box-shadow)}div:where(.swal2-container) input:where(.swal2-input):focus,div:where(.swal2-container) input:where(.swal2-file):focus,div:where(.swal2-container) textarea:where(.swal2-textarea):focus{border:var(--swal2-input-focus-border);outline:none;box-shadow:var(--swal2-input-focus-box-shadow)}div:where(.swal2-container) input:where(.swal2-input)::placeholder,div:where(.swal2-container) input:where(.swal2-file)::placeholder,div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder{color:#ccc}div:where(.swal2-container) .swal2-range{margin:1em 2em 3px;background:var(--swal2-background)}div:where(.swal2-container) .swal2-range input{width:80%}div:where(.swal2-container) .swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}div:where(.swal2-container) .swal2-range input,div:where(.swal2-container) .swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}div:where(.swal2-container) .swal2-input{height:2.625em;padding:0 .75em}div:where(.swal2-container) .swal2-file{width:75%;margin-right:auto;margin-left:auto;background:var(--swal2-input-background);font-size:1.125em}div:where(.swal2-container) .swal2-textarea{height:6.75em;padding:.75em}div:where(.swal2-container) .swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:var(--swal2-input-background);color:inherit;font-size:1.125em}div:where(.swal2-container) .swal2-radio,div:where(.swal2-container) .swal2-checkbox{align-items:center;justify-content:center;background:var(--swal2-background);color:inherit}div:where(.swal2-container) .swal2-radio label,div:where(.swal2-container) .swal2-checkbox label{margin:0 .6em;font-size:1.125em}div:where(.swal2-container) .swal2-radio input,div:where(.swal2-container) .swal2-checkbox input{flex-shrink:0;margin:0 .4em}div:where(.swal2-container) label:where(.swal2-input-label){display:flex;justify-content:center;margin:1em auto 0}div:where(.swal2-container) div:where(.swal2-validation-message){align-items:center;justify-content:center;margin:1em 0 0;padding:.625em;overflow:hidden;background:var(--swal2-validation-message-background);color:var(--swal2-validation-message-color);font-size:1em;font-weight:300}div:where(.swal2-container) div:where(.swal2-validation-message):before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}div:where(.swal2-container) .swal2-progress-steps{flex-wrap:wrap;align-items:center;max-width:100%;margin:1.25em auto;padding:0;background:#0000;font-weight:600}div:where(.swal2-container) .swal2-progress-steps li{display:inline-block;position:relative}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step{z-index:20;flex-shrink:0;width:2em;height:2em;border-radius:2em;background:#2778c4;color:#fff;line-height:2em;text-align:center}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#2778c4}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:var(--swal2-progress-step-background);color:#fff}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:var(--swal2-progress-step-background)}div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line{z-index:10;flex-shrink:0;width:2.5em;height:.4em;margin:0 -1px;background:#2778c4}div:where(.swal2-icon){position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:2.5em auto .6em;zoom:var(--swal2-icon-zoom);border:.25em solid rgba(0,0,0,0);border-radius:50%;border-color:#000;font-family:inherit;line-height:5em;cursor:default;-webkit-user-select:none;user-select:none}div:where(.swal2-icon) .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}div:where(.swal2-icon).swal2-error{border-color:#f27474;color:#f27474}div:where(.swal2-icon).swal2-error .swal2-x-mark{position:relative;flex-grow:1}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-error.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark{animation:swal2-animate-error-x-mark .5s}}div:where(.swal2-icon).swal2-warning{border-color:#f8bb86;color:#f8bb86}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-warning.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .5s}}div:where(.swal2-icon).swal2-info{border-color:#3fc3ee;color:#3fc3ee}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-info.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content{animation:swal2-animate-i-mark .8s}}div:where(.swal2-icon).swal2-question{border-color:#87adbd;color:#87adbd}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-question.swal2-icon-show{animation:swal2-animate-error-icon .5s}div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content{animation:swal2-animate-question-mark .8s}}div:where(.swal2-icon).swal2-success{border-color:#a5dc86;color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;border-radius:50%}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}div:where(.swal2-icon).swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-.25em;left:-.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}div:where(.swal2-icon).swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}@container swal2-popup style(--swal2-icon-animations:true){div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-animate-success-line-tip .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-animate-success-line-long .75s}div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right{animation:swal2-rotate-success-circular-line 4.25s ease-in}}[class^=swal2]{-webkit-tap-highlight-color:rgba(0,0,0,0)}.swal2-show{animation:var(--swal2-show-animation)}.swal2-hide{animation:var(--swal2-hide-animation)}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{margin-right:initial;margin-left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}.swal2-toast{box-sizing:border-box;grid-column:1/4!important;grid-row:1/4!important;grid-template-columns:min-content auto min-content;padding:1em;overflow-y:hidden;border:var(--swal2-toast-border);background:var(--swal2-background);box-shadow:var(--swal2-toast-box-shadow);pointer-events:auto}.swal2-toast>*{grid-column:2}.swal2-toast h2:where(.swal2-title){margin:.5em 1em;padding:0;font-size:1em;text-align:initial}.swal2-toast .swal2-loading{justify-content:center}.swal2-toast input:where(.swal2-input){height:2em;margin:.5em;font-size:1em}.swal2-toast .swal2-validation-message{font-size:1em}.swal2-toast div:where(.swal2-footer){margin:.5em 0 0;padding:.5em 0 0;font-size:.8em}.swal2-toast button:where(.swal2-close){grid-column:3/3;grid-row:1/99;align-self:center;width:.8em;height:.8em;margin:0;font-size:2em}.swal2-toast div:where(.swal2-html-container){margin:.5em 1em;padding:0;overflow:initial;font-size:1em;text-align:initial}.swal2-toast div:where(.swal2-html-container):empty{padding:0}.swal2-toast .swal2-loader{grid-column:1;grid-row:1/99;align-self:center;width:2em;height:2em;margin:.25em}.swal2-toast .swal2-icon{grid-column:1;grid-row:1/99;align-self:center;width:2em;min-width:2em;height:2em;margin:0 .5em 0 0}.swal2-toast .swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:1.8em;font-weight:700}.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{top:.875em;width:1.375em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:.3125em}.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:.3125em}.swal2-toast div:where(.swal2-actions){justify-content:flex-start;height:auto;margin:.5em 0 0;padding:0 .5em}.swal2-toast button:where(.swal2-styled){margin:.25em .5em;padding:.4em .6em;font-size:1em}.swal2-toast .swal2-success{border-color:#a5dc86}.swal2-toast .swal2-success [class^=swal2-success-circular-line]{position:absolute;width:1.6em;height:3em;border-radius:50%}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.8em;left:-.5em;transform:rotate(-45deg);transform-origin:2em 2em;border-radius:4em 0 0 4em}.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.25em;left:.9375em;transform-origin:0 1.5em;border-radius:0 4em 4em 0}.swal2-toast .swal2-success .swal2-success-ring{width:2em;height:2em}.swal2-toast .swal2-success .swal2-success-fix{top:0;left:.4375em;width:.4375em;height:2.6875em}.swal2-toast .swal2-success [class^=swal2-success-line]{height:.3125em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{top:1.125em;left:.1875em;width:.75em}.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{top:.9375em;right:.1875em;width:1.375em}@container swal2-popup style(--swal2-icon-animations:true){.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip{animation:swal2-toast-animate-success-line-tip .75s}.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long{animation:swal2-toast-animate-success-line-long .75s}}.swal2-toast.swal2-show{animation:var(--swal2-toast-show-animation)}.swal2-toast.swal2-hide{animation:var(--swal2-toast-hide-animation)}@keyframes swal2-show{0%{transform:translate3d(0,-50px,0) scale(.9);opacity:0}to{transform:translateZ(0) scale(1);opacity:1}}@keyframes swal2-hide{0%{transform:translateZ(0) scale(1);opacity:1}to{transform:translate3d(0,-50px,0) scale(.9);opacity:0}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}to{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}to{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}to{transform:rotate(-405deg)}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}to{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}to{transform:rotateX(0);opacity:1}}@keyframes swal2-rotate-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes swal2-animate-question-mark{0%{transform:rotateY(-360deg)}to{transform:rotateY(0)}}@keyframes swal2-animate-i-mark{0%{transform:rotate(45deg);opacity:0}25%{transform:rotate(-25deg);opacity:.4}50%{transform:rotate(15deg);opacity:.8}75%{transform:rotate(-5deg);opacity:1}to{transform:rotateX(0);opacity:1}}@keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotate(2deg)}33%{transform:translateY(0) rotate(-2deg)}66%{transform:translateY(.3125em) rotate(2deg)}to{transform:translateY(0) rotate(0)}}@keyframes swal2-toast-hide{to{transform:rotate(1deg);opacity:0}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}to{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}to{top:.9375em;right:.1875em;width:1.375em}}:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--ink: #263238;--muted: #687780;--line: #d9e3e0;--paper: #ffffff;--wash: #f5f8f4;--green: #2f8f68;--mint: #77bfa3;--coral: #d56b5a;--amber: #d89b36;--blue: #4c7ea8;--violet: #7d6fb0;--red: #bb4d48;--shadow: 0 16px 45px rgba(41, 61, 54, .11)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#edf5ef,#f8faf7 48%,#fff);color:var(--ink);overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:wait;opacity:.72}.auth-shell{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#edf5ef,#fff)}.auth-panel{width:min(100%,480px);background:#fffffff0;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:26px;display:grid;gap:22px}.compact-auth{width:min(100%,360px)}.auth-brand .brand-mark{background:#e8f4ed}.auth-brand span{color:var(--muted)}.auth-copy{color:var(--muted);margin:10px 0 0}.form-message{margin:0;border:1px solid #f0d9a7;border-radius:8px;background:#fff9eb;color:#7a5a18;padding:12px}.form-hint{margin:0;border:1px solid var(--line);border-radius:8px;background:#f7fbf8;color:var(--muted);font-weight:800;line-height:1.4;padding:12px}.movement-form label small{color:var(--muted);font-weight:700;line-height:1.35}.setup-steps{display:grid;gap:10px}.setup-steps code{display:block;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f5f8f4;color:var(--ink);white-space:normal;overflow-wrap:anywhere}.landing-page{min-height:100vh;background:#f4f8f5}.landing-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px clamp(18px,5vw,72px);background:#f4f8f5f0;border-bottom:1px solid rgba(217,227,224,.72);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.landing-nav .brand span{color:var(--muted)}.landing-nav-links,.landing-nav-actions,.landing-hero-actions,.landing-trust-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.landing-nav-links{color:var(--muted);font-weight:800}.landing-nav-links a{padding:9px 4px}.landing-nav-links a:hover{color:var(--green)}.landing-hero{position:relative;min-height:calc(100svh - 130px);overflow:hidden;display:flex;align-items:center;padding:clamp(42px,7vw,88px) clamp(18px,5vw,72px);background:#eaf4ef;border-bottom:1px solid var(--line)}.landing-hero:after{content:"";position:absolute;inset:0;background:#eaf4ef38;pointer-events:none}.landing-product-scene{position:absolute;inset:0;pointer-events:none}.landing-dashboard-preview,.landing-receipt-preview,.landing-phone-preview{position:absolute;border:1px solid rgba(148,177,166,.55);border-radius:8px;background:#ffffffe0;box-shadow:0 20px 70px #293d362e}.landing-dashboard-preview{right:clamp(18px,7vw,120px);top:16%;width:min(46vw,620px);min-width:440px;padding:20px;display:grid;gap:16px}.preview-top{display:flex;justify-content:space-between;gap:14px;align-items:center}.preview-top span,.preview-kpis span{color:var(--muted);font-weight:800}.preview-top strong{font-size:2.3rem;color:var(--green)}.preview-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.preview-kpis span{display:grid;gap:4px;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:12px}.preview-kpis b{color:var(--ink);font-size:1.25rem}.preview-bars{display:grid;gap:9px}.preview-bars i{display:block;height:12px;border-radius:999px;background:#dce8e4;overflow:hidden}.preview-bars i:before{content:"";display:block;width:var(--bar);height:100%;background:#2f8f68}.landing-receipt-preview{right:min(58vw,720px);bottom:14%;width:250px;padding:16px;display:grid;gap:6px}.landing-phone-preview{right:clamp(28px,11vw,180px);bottom:11%;width:210px;padding:16px;display:grid;gap:6px}.landing-receipt-preview svg,.landing-phone-preview svg{color:var(--green)}.landing-receipt-preview span,.landing-phone-preview span{color:var(--muted)}.landing-hero-copy{position:relative;z-index:2;width:min(720px,100%)}.landing-hero-copy h1{max-width:760px;font-size:clamp(3rem,7vw,6rem);line-height:.96;margin-bottom:22px}.landing-hero-copy>p:not(.eyebrow){max-width:620px;color:#4c5f68;font-size:clamp(1.05rem,1.6vw,1.26rem);line-height:1.45}.landing-hero-actions{margin-top:24px}.landing-trust-row{margin-top:24px;color:#375d51;font-weight:800}.landing-trust-row span{display:inline-flex;align-items:center;gap:7px;background:#ffffffb8;border:1px solid rgba(207,225,216,.85);border-radius:999px;padding:8px 12px}.landing-section,.landing-band,.landing-cta{padding:clamp(44px,7vw,86px) clamp(18px,5vw,72px)}.landing-section-head{max-width:780px;margin-bottom:24px}.landing-section-head h2,.landing-band h2,.landing-cta h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1;margin-bottom:14px}.landing-section-head p,.landing-band p,.landing-cta p{color:var(--muted);font-size:1.05rem;line-height:1.45}.landing-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.landing-feature{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow);padding:20px;min-width:0}.landing-feature h3{margin:14px 0 8px;font-size:1.2rem}.landing-feature p{margin:0;color:var(--muted);line-height:1.45}.landing-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:clamp(24px,5vw,64px);align-items:center;background:#213c38;color:#f4fbf7}.landing-band .eyebrow,.landing-band p{color:#b9d6cb}.landing-ticket-visual{border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff14;padding:20px;display:grid;gap:10px}.landing-ticket-visual span{color:#b9d6cb;font-weight:900;text-transform:uppercase}.landing-ticket-visual p{margin:0;display:flex;justify-content:space-between;gap:14px;color:#f4fbf7}.landing-ticket-visual b{border-top:1px solid rgba(255,255,255,.2);padding-top:12px;color:#aee3c5;text-align:right}.landing-price-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:12px}.landing-price-grid div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:16px;min-width:0}.landing-price-grid span,.landing-price-grid small{display:block;color:var(--muted);font-weight:800}.landing-price-grid span{font-size:.78rem;text-transform:uppercase;margin-bottom:8px}.landing-price-grid strong{display:block;font-size:1.35rem;overflow-wrap:anywhere}.landing-guides{background:#fbfdfb}.landing-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.landing-guide-card{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);min-width:0;padding:18px;box-shadow:var(--shadow);transition:transform .16s ease,border-color .16s ease,background .16s ease}.landing-guide-card:hover{transform:translateY(-2px);border-color:#9ccdb8;background:#f3faf6}.landing-guide-card span{display:block;font-weight:900;margin-bottom:8px}.landing-guide-card p{margin:0;color:var(--muted);line-height:1.45}.landing-about{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(24px,5vw,64px);align-items:start;padding:clamp(44px,7vw,86px) clamp(18px,5vw,72px);background:#f9fbf8;border-top:1px solid var(--line)}.landing-about h2{max-width:720px;font-size:clamp(2rem,4vw,3.6rem);line-height:1;margin-bottom:14px}.landing-about p{max-width:680px;color:var(--muted);font-size:1.05rem;line-height:1.45}.landing-about-list{display:grid;gap:12px}.landing-about-list div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:18px;box-shadow:var(--shadow)}.landing-about-list span,.landing-about-list strong,.landing-about-list a{display:block}.landing-about-list span{color:var(--green);font-size:.78rem;font-weight:900;text-transform:uppercase;margin-bottom:10px}.landing-about-list strong,.landing-about-list a{color:var(--ink);font-size:1.05rem;font-weight:900;line-height:1.35}.landing-cta{background:#fff;border-top:1px solid var(--line)}.landing-cta h2{max-width:920px}.landing-footer{display:grid;grid-template-columns:1.5fr repeat(4,minmax(140px,1fr));gap:24px;padding:36px clamp(18px,5vw,72px);background:#183630;color:#eff8f3}.landing-footer p,.landing-footer span,.landing-footer a,.landing-footer button{color:#bfd5cd}.landing-footer p{max-width:420px;margin:14px 0 0;line-height:1.45}.landing-footer h3{margin-bottom:12px;font-size:.86rem;text-transform:uppercase}.landing-footer a,.landing-footer button,.landing-footer span{display:block;width:fit-content;margin:8px 0;font:inherit;font-weight:800}.landing-footer button{padding:0;border:0;background:transparent}.landing-footer a:hover,.landing-footer button:hover{color:#fff}.brand-button{border:0;background:transparent;color:inherit;padding:0;text-align:left}.legal-page{min-height:100vh;background:#f4f8f5}.legal-nav .brand{cursor:pointer}.legal-hero{padding:clamp(52px,8vw,96px) clamp(18px,5vw,72px) 28px;background:#eaf4ef;border-bottom:1px solid var(--line)}.legal-hero h1{max-width:920px;font-size:clamp(2.5rem,6vw,5rem);line-height:.98;margin-bottom:18px}.legal-hero p:not(.eyebrow){max-width:820px;color:var(--muted);font-size:1.15rem;line-height:1.5}.legal-content{display:grid;gap:16px;padding:clamp(32px,5vw,64px) clamp(18px,5vw,72px)}.legal-section{border:1px solid var(--line);border-radius:8px;background:#fff;padding:clamp(18px,3vw,28px);box-shadow:var(--shadow)}.legal-section h2{margin-bottom:10px;font-size:clamp(1.35rem,2vw,1.8rem)}.legal-section p,.legal-section li{color:var(--muted);font-size:1rem;line-height:1.55}.legal-section ul{margin:0;padding-left:20px}.faq-section{display:grid;gap:10px}.faq-section h2{margin-bottom:2px}.faq-section details{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:14px 16px}.faq-section summary{cursor:pointer;color:var(--ink);font-weight:900}.faq-section details p{margin-top:10px}.legal-cta{display:grid;gap:14px;justify-items:start}.legal-cta h2,.legal-cta p{max-width:780px}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:#213c38;color:#f4fbf7;padding:28px 20px;display:flex;flex-direction:column;gap:28px;position:sticky;top:0;height:100vh}.sidebar-header{display:contents}.sidebar-menu{display:flex;flex:1;min-height:0;flex-direction:column;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand-mark,.kpi-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:8px;background:#e8f4ed;color:var(--green)}.brand-logo-mark{overflow:hidden;background:transparent;padding:0}.brand-logo-mark img{width:86%;height:86%;object-fit:contain}.brand strong{display:block;font-size:1.12rem}.brand span{color:#b7cac5;font-size:.9rem}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#ffffff14;color:#f4fbf7;min-height:42px;padding:0 14px;font-weight:800}.nav-list{display:grid;gap:8px}.nav-button{border:0;border-radius:8px;background:transparent;color:#d7e8e2;display:flex;align-items:center;gap:11px;padding:13px 12px;text-align:left;min-width:0}.nav-button svg{width:20px;height:20px}.nav-button.active,.nav-button:hover{background:#345c55;color:#fff}.sidebar-note{margin-top:auto;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:14px;display:flex;align-items:center;gap:10px;color:#d9ebe6}.main-content{padding:32px clamp(18px,4vw,48px) 56px;min-width:0;width:100%}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.eyebrow{margin:0 0 6px;color:var(--green);text-transform:uppercase;letter-spacing:0;font-size:.78rem;font-weight:800}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(2rem,4vw,3rem);line-height:1}.topbar-pill{display:flex;align-items:center;gap:8px;border:0;background:#e8f4ed;color:#216447;border-radius:999px;padding:10px 14px;font-weight:700;white-space:nowrap}button.topbar-pill{cursor:pointer}button.topbar-pill:hover{transform:translateY(-1px)}.credit-pill{background:#fff8e9;color:#8a5a00}.credit-pill.is-empty{background:#fff0e8;color:#a13f1d}.view-stack{display:grid;gap:20px}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px}.kpi-card,.panel,.alert-panel,.report-hero{background:#ffffffeb;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.kpi-card{padding:18px;min-height:154px;display:flex;flex-direction:column;gap:14px}.kpi-card span{color:var(--muted);font-weight:700}.kpi-card strong{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1}.kpi-card.green .kpi-icon{color:var(--green);background:#e8f4ed}.kpi-card.coral .kpi-icon{color:var(--coral);background:#fff0eb}.kpi-card.blue .kpi-icon{color:var(--blue);background:#eaf3fb}.kpi-card.mint .kpi-icon{color:#3d8067;background:#e3f2eb}.kpi-card.violet .kpi-icon{color:var(--violet);background:#f0eefb}.kpi-card.red .kpi-icon{color:var(--red);background:#fdecea}.alert-panel{padding:18px 20px;display:flex;gap:14px;align-items:flex-start;background:#fff9eb;border-color:#f0d9a7}.alert-panel svg{color:var(--amber);flex:0 0 auto}.alert-panel.danger{background:#fff0ed;border-color:#f0b8af}.alert-panel.danger svg{color:var(--red)}.alert-panel p{margin:5px 0 0;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.dashboard-grid.compact{align-items:start}.chart-grid{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr)}.panel{padding:20px;min-width:0}.panel-title{display:flex;align-items:center;gap:10px;margin-bottom:18px}.panel-title svg{color:var(--green)}.panel h2{margin:0;font-size:1.08rem}.bar-list,.budget-list,.movement-list,.recommendations,.status-list{display:grid;gap:14px}.bar-copy,.budget-head,.goal-head,.movement-row,.budget-edit-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.bar-copy span,.budget-head span,.goal-head span{color:var(--muted);font-weight:700}.bar-track{height:10px;border-radius:999px;background:#e7eeeb;overflow:hidden}.bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--mint))}.budget-row.exceeded .bar-track span{background:linear-gradient(90deg,var(--coral),var(--red))}.budget-row small,.goal-row small,.comparison-card small{color:var(--muted)}.donut-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:center;min-height:220px}.donut-layout.empty{grid-template-columns:140px minmax(0,1fr)}.donut-layout.empty p{color:var(--muted);margin:0;line-height:1.45}.donut-chart{width:210px;height:210px;transform:rotate(-90deg)}.donut-bg{fill:none;stroke:#e7eeeb;stroke-width:15}.donut-segment{fill:none;stroke-width:15;stroke-linecap:round}.donut-total,.donut-label{transform:rotate(90deg);transform-origin:60px 60px;fill:var(--ink)}.donut-total{font-size:15px;font-weight:900}.donut-label{fill:var(--muted);font-size:8px;font-weight:800}.donut-empty{width:130px;height:130px;border-radius:50%;border:15px solid #e7eeeb;display:grid;place-items:center;color:var(--muted);font-weight:900}.chart-legend{display:grid;gap:10px}.legend-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:9px;align-items:center}.legend-row span{width:12px;height:12px;border-radius:50%}.legend-row b{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pulse-chart{display:grid;gap:16px;min-height:220px;align-content:center}.pulse-row{display:grid;gap:7px}.pulse-head{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-weight:800}.pulse-track{height:18px;border-radius:999px;background:#e7eeeb;overflow:hidden}.pulse-track span{display:block;height:100%;border-radius:inherit}.pulse-note{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#f5f8f4;border:1px solid var(--line);border-radius:8px;color:var(--muted)}.pulse-note strong{color:var(--green)}.goal-row{display:grid;gap:8px;margin-bottom:18px}.bar-track.success span{background:linear-gradient(90deg,var(--blue),var(--green))}.movement-row{padding-bottom:12px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.movement-row:last-child{border-bottom:0}.movement-row strong,.movement-row span{display:block}.movement-row span{color:var(--muted);margin-top:3px;font-size:.92rem}.movement-actions{display:flex;gap:6px}.history-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-items:end;margin-bottom:16px;max-width:none}.history-toolbar label,.period-filter-group{display:grid;gap:7px;color:var(--muted);font-weight:800;min-width:0}.history-toolbar input{min-width:0}.compact-segmented{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-segmented button{min-height:40px;padding:8px 10px;white-space:nowrap}.history-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.table-export-bar{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-bottom:14px}.table-export-bar>span{color:var(--muted);font-weight:800}.mini-kpi{border:1px solid var(--line);background:#fbfdfb;border-radius:8px;padding:13px;display:grid;gap:5px}.mini-kpi span{color:var(--muted);font-weight:800;font-size:.9rem}.mini-kpi strong{font-size:1.3rem}.mini-kpi.positive strong{color:var(--green)}.mini-kpi.negative strong{color:var(--red)}.movement-table{display:grid;gap:8px;overflow-x:auto;padding-bottom:2px}.movement-table-head,.movement-table-row{display:grid;grid-template-columns:120px minmax(160px,1.4fr) minmax(140px,1fr) 100px 110px 86px;gap:12px;align-items:center;min-width:900px}.movement-table-head{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;padding:0 10px}.movement-table-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.type-pill{border-radius:999px;background:#e8f4ed;color:var(--green);padding:5px 9px;font-size:.84rem;font-weight:900;text-transform:capitalize;width:fit-content}.empty-history{border:1px dashed var(--line);border-radius:8px;padding:18px;color:var(--muted);text-align:center}.icon-button{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:#f8fbf9;color:var(--green);display:inline-grid;place-items:center;font-weight:900}.icon-button:hover{background:#e8f4ed}.icon-button.danger{color:var(--red)}.icon-button.danger:hover{background:#fff0ed}.icon-button.success{color:#216447}.icon-button:disabled{cursor:not-allowed;opacity:.45}.danger-icon{color:var(--red)}.danger-icon:hover{background:#fff0ed}.positive{color:var(--green)}.negative{color:var(--red)}.primary-button,.secondary-button{border:0;border-radius:8px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;font-weight:800;min-width:0}.primary-button{background:#2f8f68;color:#fff}.secondary-button{background:#edf5ef;color:#23634a;border:1px solid #cfe1d8}.text-button{border:0;background:transparent;color:#23634a;font-weight:900;min-height:32px;padding:2px;text-align:center}.text-button:hover{color:#183630}.auth-dev-link{display:block;border:1px dashed #b8d1c7;border-radius:8px;background:#f5f8f4;color:#23634a;font-weight:900;padding:10px;text-align:center}.verification-state{display:grid;gap:10px;justify-items:start}.verification-state svg{color:var(--green)}.verification-state.error svg{color:var(--red)}.verification-state p{color:var(--muted);line-height:1.45}.invitation-panel{width:min(100%,440px)}.invitation-actions{display:grid;gap:10px}.invitation-summary{width:100%;border:1px solid var(--line);border-radius:8px;background:#f7fbf8;padding:12px}.invitation-summary span,.invitation-summary strong{display:block}.invitation-summary span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.invitation-summary strong{margin-top:4px}.secondary-button:hover{background:#dfeee7}.danger-button{border:0;border-radius:8px;min-height:46px;background:var(--red);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;font-weight:800}.export-actions{display:flex;flex-wrap:wrap;gap:12px}.form-layout{max-width:780px}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#152b2757;display:grid;place-items:center;padding:20px}.modal-panel{width:min(100%,720px);max-height:min(90vh,900px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 80px #152b2740;padding:22px}.modal-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.modal-head h2{margin:0}.movement-form,.budget-editor,.category-form{display:grid;gap:15px}.movement-form label,.budget-editor label,.category-form label{display:grid;gap:7px;color:var(--muted);font-weight:800}.category-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.account-view{max-width:980px}.household-access{display:grid;gap:16px}.household-access-head{display:flex;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;background:#f7fbf8;padding:14px}.household-access-head p{margin:5px 0 0;color:var(--muted);line-height:1.4}.household-access-head span{flex:0 0 auto;color:var(--green);font-weight:900}.member-list,.pending-invitations{display:grid;gap:8px}.pending-invitations>strong{color:var(--muted);font-size:.8rem;text-transform:uppercase}.member-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px}.member-row strong,.member-row span{display:block}.member-row span{margin-top:3px;color:var(--muted);font-size:.92rem;font-weight:700}.member-row small{border-radius:999px;background:#e8f4ed;color:#23634a;font-weight:900;padding:6px 10px}.member-row .member-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:0;color:inherit;font-size:inherit;font-weight:inherit}.household-upgrade-box{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #f0d493;border-radius:8px;background:#fff8e8;padding:14px}.household-upgrade-box p{margin:5px 0 0;color:var(--muted);line-height:1.4}.invite-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.notifications-view .dashboard-grid.compact{align-items:start}.toggle-row{display:flex!important;grid-template-columns:none;align-items:center;gap:12px!important;border:1px solid var(--line);border-radius:8px;background:#f7fbf8;padding:12px}.toggle-row input{width:22px;min-height:22px;flex:0 0 auto}.toggle-row strong,.toggle-row small{display:block}.toggle-row small{margin-top:3px;color:var(--muted);font-weight:700}.notification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.notification-actions{display:flex;flex-wrap:wrap;gap:10px}.notification-preview{display:grid;gap:16px}.notification-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.notification-kpis div,.summary-category{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:12px}.notification-kpis span,.summary-category span{display:block;color:var(--muted);font-weight:800}.notification-kpis strong{display:block;margin-top:4px;font-size:1.25rem}.summary-lines{display:grid;gap:8px}.summary-lines p{margin:0;border:1px solid var(--line);border-radius:8px;background:#f7fbf8;padding:10px 12px}.summary-categories{display:grid;gap:8px}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #f0b8af;background:#fff0ed;border-radius:8px;padding:16px}.danger-zone p{margin:5px 0 0;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}input,select{min-height:45px;padding:0 12px}input:focus,select:focus,textarea:focus{outline:3px solid #cfe8dc;border-color:var(--green)}textarea{min-height:180px;padding:12px;resize:vertical}.segmented{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:#edf3f0;padding:6px;border-radius:8px}.segmented button{border:0;border-radius:6px;padding:11px 8px;background:transparent;color:var(--muted);font-weight:800;text-transform:capitalize}.segmented button.active{background:#fff;color:var(--green);box-shadow:0 6px 20px #36534a1f}.inline-controls{display:flex;gap:18px;flex-wrap:wrap}.checkbox{display:flex!important;align-items:center;grid-template-columns:auto 1fr}.checkbox input{width:18px;min-height:18px}.two-cols{grid-template-columns:1fr 1fr}.budget-table{display:grid;gap:8px}.budget-edit-row{display:grid;grid-template-columns:minmax(160px,1.3fr) minmax(110px,.7fr) minmax(90px,.6fr) minmax(120px,.8fr);padding:10px;border:1px solid var(--line);border-radius:8px;background:#fbfdfb}.budget-edit-row input{min-height:38px}.report-hero{padding:24px;display:flex;justify-content:space-between;gap:24px;align-items:center;background:#eaf5ef}.report-hero h2{margin:0 0 8px;font-size:clamp(1.5rem,3vw,2.3rem)}.report-hero p{margin-bottom:0;color:var(--muted)}.report-hero strong{font-size:clamp(2rem,5vw,3.5rem);color:var(--green);white-space:nowrap}.recommendations p,.status-list p{margin:0;background:var(--wash);border:1px solid var(--line);border-radius:8px;padding:13px;color:var(--ink)}.comparison-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.comparison-card{border:1px solid var(--line);background:#fbfdfb;border-radius:8px;padding:14px;display:grid;gap:7px}.comparison-card span{color:var(--muted);font-weight:800}.comparison-card strong{font-size:1.35rem}.merchant-rule-form{display:grid;gap:12px}.ticket-upload-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:stretch;margin-bottom:16px}.ticket-upload-actions{display:grid;grid-template-columns:repeat(2,max-content);gap:10px;align-items:stretch}.ticket-upload-actions .primary-button,.ticket-upload-actions .secondary-button{white-space:nowrap}.ocr-action-button{background:#eef7f2;color:#23634a}.ai-action-button{border:1px solid #c59739;background:#9b6500;box-shadow:0 14px 28px #9b650033}.ai-action-button:hover{background:#865700}.ai-action-button:disabled{box-shadow:none}.ai-credit-banner{display:flex;align-items:center;gap:9px;border:1px solid #f2d59c;background:#fff9ed;color:#8a5a00;border-radius:8px;padding:10px 12px;margin-bottom:12px;font-weight:800}.ai-credit-banner.is-empty{border-color:#f2bfaa;background:#fff3ed;color:#9c3d1c}.ocr-review-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #b8d1c7;border-radius:8px;background:#f2f8f5;padding:12px;margin-bottom:14px}.ocr-review-panel strong,.ocr-review-panel span{display:block}.ocr-review-panel strong{color:var(--green);font-weight:900;margin-bottom:4px}.ocr-review-panel span{color:var(--muted);line-height:1.35}.ocr-confidence-badge{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:6px 10px;margin-bottom:8px}.ocr-confidence-badge span{color:var(--muted);font-size:.74rem;font-weight:900;text-transform:uppercase}.ocr-confidence-badge strong{margin:0;font-size:1rem}.ocr-confidence-badge.is-good strong{color:var(--green)}.ocr-confidence-badge.is-medium strong{color:#9b6500}.ocr-confidence-badge.is-low strong{color:var(--red)}.ocr-review-panel>div:last-child{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.ticket-save-main{min-height:52px;background:#23634a;box-shadow:0 14px 28px #23634a38}.file-drop{border:1px dashed #b8d1c7;border-radius:8px;background:#f5f8f4;color:var(--muted);display:flex;gap:10px;align-items:center;padding:13px;font-weight:800;min-width:0;cursor:pointer}.file-drop svg{color:var(--green);flex:0 0 auto}.file-drop span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-drop input{position:absolute;opacity:0;pointer-events:none;width:1px;min-height:1px}.ticket-file-list{grid-column:1 / -1;display:grid;gap:7px;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.ticket-file-list>strong{color:var(--green);font-weight:900}.ticket-file-list>span{color:var(--muted);font-size:.86rem;font-weight:800}.ticket-file-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #dbe7e1;border-radius:8px;padding:8px 10px;min-width:0}.ticket-file-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-weight:800}.ticket-preview-zone,.receipt-image-gallery{grid-column:1 / -1;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:12px;display:grid;gap:10px;min-width:0}.ticket-preview-zone.compact{background:#f5f8f4}.ticket-preview-head,.receipt-image-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-weight:900}.ticket-preview-head span,.receipt-image-gallery-head span{display:inline-flex;align-items:center;gap:7px}.ticket-preview-head svg,.receipt-image-gallery-head svg{color:var(--green)}.ticket-preview-head strong,.receipt-image-gallery-head strong{color:var(--green)}.ticket-preview-stage,.receipt-image-stage{height:clamp(260px,42vh,540px);border:1px solid #dbe7e1;border-radius:8px;background:#f0f4f2;display:grid;place-items:center;overflow:auto}.ticket-preview-zone.compact .ticket-preview-stage{height:clamp(220px,34vh,420px)}.ticket-preview-stage img,.receipt-image-stage img{max-width:100%;height:auto;display:block;filter:grayscale(1)}.ticket-preview-thumbs,.receipt-image-thumbs{display:flex;gap:8px;align-items:center;overflow-x:auto;padding-bottom:2px}.ticket-preview-thumbs button,.receipt-image-thumbs button{border:1px solid #dbe7e1;border-radius:8px;background:#fff;color:var(--muted);padding:4px;min-width:58px;height:64px;display:grid;place-items:center;position:relative;flex:0 0 auto}.ticket-preview-thumbs button.active,.receipt-image-thumbs button.active{border-color:var(--green);box-shadow:0 0 0 2px #2f8f6824}.ticket-preview-thumbs img,.receipt-image-thumbs img{width:46px;height:52px;object-fit:cover;filter:grayscale(1);border-radius:6px}.ticket-preview-thumbs span,.receipt-image-thumbs span{position:absolute;right:5px;bottom:4px;min-width:18px;height:18px;border-radius:999px;background:#243039e0;color:#fff;font-size:.7rem;font-weight:900;display:grid;place-items:center}.ticket-preview-thumbs .ticket-preview-remove{grid-auto-flow:column;gap:6px;min-width:84px;color:#9d302a;font-weight:900}.ticket-preview-remove svg{color:#9d302a}.receipt-image-gallery{margin-bottom:18px}.receipt-image-loading,.receipt-image-error{color:var(--muted);font-weight:900}.receipt-image-loading.thumbnail{font-size:0;width:46px;height:52px;border-radius:6px;background:#e9f0ed}.ticket-floating-actions{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:18;display:grid;gap:12px;justify-items:end}.floating-file-input{position:absolute;opacity:0;pointer-events:none;width:1px;min-height:1px}.floating-ticket-button{width:62px;height:62px;border:0;border-radius:999px;background:#2f8f68;color:#fff;display:grid;place-items:center;box-shadow:0 18px 40px #2f8f6857}.floating-ticket-button.secondary{width:52px;height:52px;background:#edf5ef;color:#23634a;border:1px solid #cfe1d8;box-shadow:0 14px 30px #293d3629}.floating-ticket-button:hover{transform:translateY(-1px)}.floating-ticket-button:disabled{cursor:wait;opacity:.72}.merchant-rule-form label{display:grid;gap:7px;color:var(--muted);font-weight:800}.rule-list{display:grid;gap:9px;margin-top:16px}.rule-row,.receipt-table-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.rule-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.rule-row span{display:block;margin-top:3px;color:var(--muted);font-size:.9rem}.receipt-review{display:grid;gap:18px}.receipt-fields{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) minmax(120px,.7fr) minmax(180px,1fr);gap:12px}.receipt-fields label{display:grid;gap:7px;color:var(--muted);font-weight:800}.receipt-lines,.receipt-table{display:grid;gap:8px;overflow-x:auto}.receipt-line-head,.receipt-line-row{display:grid;grid-template-columns:minmax(240px,1.4fr) 90px 120px minmax(170px,1fr);gap:10px;min-width:760px;align-items:center}.receipt-line-head,.receipt-table-head{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;padding:0 10px}.receipt-line-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.receipt-line-row input,.receipt-line-row select{min-height:38px}.receipt-save-bar{border:1px solid var(--line);border-radius:8px;background:#f5f8f4;padding:12px;display:flex;gap:14px;justify-content:flex-end;align-items:center;flex-wrap:wrap}.receipt-save-bar span{color:var(--muted)}.receipt-save-bar .receipt-total-warning{border:1px solid #efb5ac;border-radius:8px;background:#fff0ed;color:#9d302a;padding:8px 10px}.receipt-total-warning strong,.receipt-total-warning small{color:#9d302a}.receipt-total-warning small{display:block;margin-top:3px;font-weight:800}.pending-ticket-card{border:1px solid #f2d59c;border-radius:8px;background:#fff9ed;color:#8a5a00;padding:16px;display:flex;gap:16px;align-items:center;justify-content:space-between;box-shadow:0 16px 42px #293d361a}.pending-ticket-card strong,.pending-ticket-card span{display:block}.pending-ticket-card strong{color:var(--ink);font-size:1.1rem;font-weight:900;margin-bottom:3px}.pending-ticket-card span{color:var(--muted);font-weight:800}.receipt-review-backdrop{z-index:35}.receipt-review-modal{width:min(1080px,100%);padding:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.receipt-review-head{margin:0;padding:22px 22px 14px;border-bottom:1px solid var(--line)}.receipt-review-head span{display:block;color:var(--muted);font-weight:700;margin-top:5px}.receipt-review-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:16px 22px;background:#f5f8f4;border-bottom:1px solid var(--line)}.receipt-review-summary div,.receipt-review-footer>div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 12px;min-width:0}.receipt-review-summary span,.receipt-review-footer span{display:block;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.receipt-review-summary strong,.receipt-review-footer strong{display:block;color:var(--ink);font-size:1.08rem;font-weight:900;margin-top:4px;overflow-wrap:anywhere}.receipt-review-summary small,.receipt-review-footer small{display:block;color:#9d302a;font-weight:800;margin-top:3px}.receipt-review-modal .receipt-review{overflow:auto;padding:18px 22px}.receipt-review-footer{position:sticky;bottom:0;z-index:2;border-top:1px solid var(--line);background:#fffffff5;padding:14px 22px;display:grid;grid-template-columns:minmax(220px,auto) minmax(260px,420px);gap:12px;align-items:center;justify-content:end;box-shadow:0 -14px 30px #293d3614}.receipt-review-footer .primary-button{min-height:52px;font-size:1rem}.receipt-review-footer .receipt-total-warning{border-color:#efb5ac;background:#fff0ed}.receipt-table-head,.receipt-table-row{display:grid;grid-template-columns:120px minmax(180px,1.2fr) minmax(160px,1fr) 120px 94px;gap:12px;min-width:820px;align-items:center}.receipt-table-row b{text-align:right;color:var(--green)}.receipt-table-row .movement-actions{justify-content:flex-end}.receipt-source-badge{display:inline-flex;align-items:center;margin-left:8px;border-radius:999px;padding:3px 7px;font-size:.72rem;font-weight:900;vertical-align:middle;background:#e8f4ed;color:#216447}.receipt-source-badge.source-ai{background:#fff8e9;color:#8a5a00}.receipt-source-badge.source-ocr{background:#edf5ff;color:#2e6796}.receipt-image-badge{display:inline-flex;align-items:center;gap:4px;margin-left:6px;border-radius:999px;padding:3px 7px;font-size:.72rem;font-weight:900;vertical-align:middle;background:#f0f4f2;color:#466058}.receipt-image-badge svg{width:13px;height:13px}.scan-drive-view .panel{overflow:visible}.scan-drive-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,240px) auto;gap:12px;align-items:end;margin-bottom:14px}.scan-drive-toolbar label{display:grid;gap:7px;color:var(--muted);font-weight:800;min-width:0}.scan-drive-toolbar input,.scan-drive-toolbar select{width:100%;min-width:0}.scan-drive-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.scan-drive-stats div{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:12px;display:grid;gap:4px}.scan-drive-stats span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.scan-drive-stats strong{color:var(--ink);font-size:1.25rem;font-weight:900}.scan-drive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.scan-drive-card{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;color:var(--ink);padding:10px;display:grid;gap:10px;text-align:left;min-width:0}.scan-drive-card:hover{border-color:#b8d1c7;box-shadow:0 14px 34px #293d361f;transform:translateY(-1px)}.scan-drive-card:disabled{opacity:.72;cursor:wait;transform:none}.scan-card-preview{aspect-ratio:4 / 5;border:1px solid #dbe7e1;border-radius:8px;background:#f0f4f2;display:grid;place-items:center;overflow:hidden}.scan-card-preview img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.scan-card-copy{display:grid;gap:4px;min-width:0}.scan-card-copy strong,.scan-card-copy small,.scan-card-copy span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scan-card-copy strong{font-weight:900}.scan-card-copy small,.scan-card-copy span{color:var(--muted);font-weight:800}.scan-drive-card b{color:var(--green);font-size:1.05rem}.scan-drive-empty{border:1px dashed #b8d1c7;border-radius:8px;background:#f5f8f4;color:var(--muted);min-height:220px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;padding:24px}.scan-drive-empty svg{color:var(--green)}.scan-drive-empty strong{color:var(--ink);font-size:1.05rem}.credit-pack-list{display:grid;gap:10px;margin-top:12px}.credit-pack-option{border:1px solid #cfe1d8;border-radius:8px;background:#fbfdfb;color:var(--text);padding:14px 16px;display:flex;justify-content:space-between;gap:12px;align-items:center;font:inherit;font-weight:900;cursor:pointer}.credit-pack-option:hover{border-color:#2f8f68;background:#eef7f1}.swal-help-text{margin:12px 0 0;color:var(--muted);font-weight:700}.swal-admin-form{display:grid;gap:12px;text-align:left}.swal-admin-form label{display:grid;gap:6px;color:var(--muted);font-weight:900}.swal-admin-form input{width:100%;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;color:var(--text);font:inherit;font-weight:800;padding:11px 12px}.swal-admin-form p{margin:0;color:var(--muted);font-weight:800}.swal-check-row{grid-template-columns:18px 1fr;align-items:center}.swal-check-row input{width:18px;height:18px;padding:0}.ai-credit-confirm{display:grid;gap:10px;text-align:left;color:var(--text)}.ai-credit-confirm p{margin:0;color:var(--muted);font-weight:700}.ai-credit-confirm strong{border:1px solid #f2d59c;border-radius:8px;background:#fff9ed;color:#8a5a00;padding:10px 12px}.ai-credit-confirm span{color:#216447;font-weight:900}.receipt-detail-modal{width:min(100%,980px)}.receipt-detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.receipt-detail-summary div{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:12px;min-width:0}.receipt-detail-summary .receipt-summary-warning{border-color:#efb5ac;background:#fff0ed}.receipt-detail-summary span{display:block;color:var(--muted);font-weight:900;font-size:.78rem;text-transform:uppercase;margin-bottom:5px}.receipt-detail-summary strong{display:block;overflow-wrap:anywhere}.receipt-summary-warning span,.receipt-summary-warning strong,.receipt-summary-warning small{color:#9d302a}.receipt-summary-warning small{display:block;margin-top:4px;font-weight:800}.receipt-detail-lines{display:grid;gap:8px;overflow-x:auto}.receipt-detail-line-head,.receipt-detail-line-row{display:grid;grid-template-columns:minmax(230px,1.4fr) 80px 120px 120px minmax(150px,1fr);gap:10px;min-width:780px;align-items:center}.receipt-detail-line-head{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;padding:0 10px}.receipt-detail-line-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.receipt-detail-line-row b{color:var(--green)}.receipt-detail-line-row b.negative-line{color:#b64235}.receipt-raw-text{margin-top:16px;border:1px solid var(--line);border-radius:8px;background:#f5f8f4;padding:12px}.receipt-raw-text summary{cursor:pointer;color:var(--green);font-weight:900}.receipt-raw-text pre{margin:12px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);font:.9rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.product-history-toolbar{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:14px}.product-history-toolbar label{display:grid;gap:7px;color:var(--muted);font-weight:800;width:min(420px,100%)}.product-history-toolbar span{color:var(--muted);font-weight:800}.product-history-table{display:grid;gap:8px;overflow-x:auto}.product-history-head,.product-history-row{display:grid;grid-template-columns:minmax(230px,1.4fr) 70px 130px 130px 130px minmax(170px,1fr);gap:12px;min-width:920px;align-items:center}.product-history-head{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;padding:0 10px}.product-history-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.product-history-row span,.product-history-row small{color:var(--muted)}.product-history-row div span,.product-history-row small{display:block;margin-top:3px;font-size:.88rem}.price-study-kpis{margin-bottom:8px}.product-study-toolbar{display:grid;grid-template-columns:minmax(240px,420px) minmax(0,1fr);gap:14px;align-items:end;margin-bottom:18px}.product-study-toolbar label{display:grid;gap:7px;color:var(--muted);font-weight:800}.price-study-insights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.price-insight{border:1px solid var(--line);border-radius:8px;background:#f8fbf9;padding:10px 12px;min-width:0}.price-insight span,.price-insight small{color:var(--muted)}.price-insight span{display:block;font-size:.78rem;font-weight:900;text-transform:uppercase;margin-bottom:4px}.price-insight strong,.price-insight small{display:block;overflow-wrap:anywhere}.price-rise-detector{border:1px solid #d4e2dc;border-radius:8px;background:linear-gradient(135deg,#fbfdfb,#f4f9fb);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;margin-bottom:18px;padding:14px}.price-rise-detector.is-empty{background:#f8fbf9}.price-rise-summary{display:grid;gap:8px;min-width:0}.price-rise-main{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.price-rise-main h3{margin:0 0 4px;font-size:1.15rem}.price-rise-main span,.price-rise-products small,.price-rise-products p{color:var(--muted)}.price-rise-main>strong{font-size:clamp(1.55rem,3vw,2.05rem);line-height:1;white-space:nowrap}.price-rise-products{display:grid;gap:8px}.price-rise-products button,.price-rise-products p{border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0;padding:10px 12px}.price-rise-products button{color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left}.price-rise-products button:hover{border-color:#9ccdb8;background:#eef7f2}.price-rise-products span,.price-rise-products strong,.price-rise-products small,.price-rise-products b{display:block}.price-rise-products span{min-width:0}.price-rise-products strong{overflow-wrap:anywhere}.price-rise-products b{color:var(--coral);text-align:right;white-space:nowrap}.price-study-layout{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(0,1.55fr);gap:18px;align-items:start}.product-watch-list{display:grid;gap:8px;max-height:680px;overflow:auto;padding-right:4px}.product-watch-row{width:100%;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;text-align:left}.product-watch-row:hover,.product-watch-row.active{border-color:#9ccdb8;background:#eef7f2}.product-watch-row.active{box-shadow:inset 3px 0 0 var(--green)}.product-watch-row span{min-width:0}.product-watch-row strong,.product-watch-row small,.product-watch-row b{display:block}.product-watch-row strong{overflow-wrap:anywhere}.product-watch-row small{color:var(--muted);margin-top:3px;font-size:.86rem}.product-watch-row b{text-align:right;white-space:nowrap}.product-study-detail{border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f8fbf9);padding:16px;min-width:0}.product-study-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.product-study-head h2{margin:0 0 4px;font-size:clamp(1.35rem,3vw,2rem);overflow-wrap:anywhere}.product-study-head span,.product-study-head small{color:var(--muted)}.product-study-head>strong{display:grid;text-align:right;white-space:nowrap;font-size:1.2rem}.product-price-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.product-price-metrics div{border:1px solid var(--line);border-radius:8px;background:#fff;padding:12px;min-width:0}.product-price-metrics span,.product-price-metrics small{display:block;color:var(--muted)}.product-price-metrics span{font-size:.78rem;font-weight:900;text-transform:uppercase;margin-bottom:5px}.product-price-metrics strong{display:block;overflow-wrap:anywhere}.price-chart-card,.price-chart-empty{border:1px solid var(--line);border-radius:8px;background:#fff;margin-bottom:14px}.price-chart-card{padding:12px}.price-chart-empty{min-height:180px;display:grid;place-items:center;gap:8px;padding:24px;color:var(--muted);text-align:center}.price-chart-head{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-weight:800;margin-bottom:8px}.price-chart-head strong{color:var(--ink)}.price-line-chart{width:100%;height:230px;display:block;overflow:visible}.price-line-chart line,.price-chart-gridline line{stroke:#e0ebe7;stroke-width:1;vector-effect:non-scaling-stroke}.price-chart-axis{stroke:#b9cbc5}.price-chart-gridline text,.price-chart-date{fill:var(--muted);font-size:13px;font-weight:800}.price-line-chart path{fill:none;stroke:var(--green);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.price-line-chart circle{fill:#fff;stroke:var(--green);stroke-width:3;vector-effect:non-scaling-stroke}.product-purchase-table{display:grid;gap:8px}.product-purchase-head,.product-purchase-row{display:grid;grid-template-columns:110px minmax(170px,1fr) 90px 110px 110px 44px;gap:10px;align-items:center}.product-purchase-head{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase;padding:0 10px}.product-purchase-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.product-purchase-row span{color:var(--muted)}.product-purchase-row b{color:var(--green);text-align:right}.product-purchase-row .icon-button{justify-self:end}.price-compare-warning{margin-bottom:14px}.activity-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,220px) minmax(120px,150px) auto;gap:12px;align-items:end;margin-bottom:16px}.activity-toolbar label{display:grid;gap:7px;color:var(--muted);font-weight:800}.admin-toolbar{grid-template-columns:minmax(220px,1fr) minmax(120px,160px)}.compact-export{margin:0;justify-content:flex-end}.page-size-select{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-weight:900}.page-size-select select{width:auto;min-height:40px;padding-inline:10px}.activity-table{display:grid;gap:8px;overflow-x:auto}.activity-table-head,.activity-table-row{display:grid;grid-template-columns:150px minmax(160px,.9fr) minmax(140px,.8fr) minmax(260px,1.5fr) 120px;gap:12px;min-width:980px;align-items:center}.activity-table-head{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;padding:0 10px}.activity-table-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.activity-table-row b{color:var(--green)}.activity-table-row small{display:block;margin-top:3px;color:var(--muted);font-size:.82rem;font-weight:800}.admin-users-table{display:grid;gap:8px;overflow-x:auto}.admin-users-head,.admin-users-row{display:grid;grid-template-columns:minmax(230px,1.2fr) 155px minmax(185px,.9fr) minmax(170px,1fr) minmax(150px,.8fr) 110px 225px;gap:12px;min-width:1305px;align-items:center}.admin-users-head{color:var(--muted);font-size:.82rem;font-weight:900;text-transform:uppercase;padding:0 10px}.admin-users-row{border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:10px}.admin-users-row.is-blocked{background:#fff9f7;border-color:#f0c8c1}.admin-users-row small{display:block;margin-top:3px;color:var(--muted);font-size:.82rem;font-weight:800}.admin-users-row b{color:#8a5a00;text-align:right}.admin-user-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.status-badge{display:inline-flex;width:fit-content;align-items:center;border-radius:999px;padding:4px 8px;margin:2px 4px 2px 0;font-size:.75rem;font-weight:900;background:#eef4f2;color:var(--muted)}.status-badge.ok{background:#e8f4ed;color:#216447}.status-badge.warning{background:#fff8e9;color:#8a5a00}.status-badge.admin{background:#edf5ff;color:#2e6796}.status-badge.blocked{background:#fff0ed;color:var(--red)}.pagination-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;color:var(--muted);font-weight:800;flex-wrap:wrap}.pagination-bar div{display:flex;gap:8px}.pagination-bar .secondary-button{min-width:118px}@media(max-width:1060px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;z-index:10;height:auto;padding:14px;top:0;gap:14px}.brand{justify-content:center}.nav-list{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px}.sidebar-note{display:none}.sidebar-menu>.nav-button{justify-content:center}.kpi-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:1220px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.app-shell{display:block;width:100%;max-width:100vw}.sidebar{position:sticky;z-index:10;top:0;height:auto;gap:14px;width:100%;max-width:100vw;padding:12px;overflow-x:hidden;overflow-y:visible}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar .brand{justify-content:flex-start;min-width:0}.sidebar .brand>div:last-child{min-width:0}.mobile-menu-toggle{display:inline-flex;flex:0 0 auto}.sidebar-menu{display:none;gap:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}.sidebar-note{display:none}.sidebar.menu-open .sidebar-menu{display:flex}.nav-list{display:grid;grid-template-columns:1fr;gap:8px;overflow:visible;padding-bottom:0}.nav-button{width:100%;min-height:44px;padding:10px 12px;white-space:normal}.main-content{width:100%;max-width:100vw;padding:22px 14px 44px;overflow:hidden}.topbar,.dashboard-grid,.chart-grid,.report-hero,.ticket-upload-box{display:grid;grid-template-columns:1fr}.topbar{align-items:start;gap:14px;margin-bottom:18px}.topbar-actions{justify-content:flex-start}h1{font-size:clamp(1.9rem,6vw,2.5rem);line-height:1.05;overflow-wrap:anywhere}.view-stack,.dashboard-grid,.chart-grid,.panel,.receipt-review,.receipt-lines,.receipt-table,.product-history-table,.receipt-detail-lines{width:100%;min-width:0;max-width:100%}.panel{padding:16px;overflow:hidden}.ticket-upload-actions,.ocr-review-panel,.table-export-bar{display:grid;grid-template-columns:1fr;align-items:stretch}.table-export-bar .compact-export,.ocr-review-panel>div:last-child{display:grid;grid-template-columns:1fr;justify-content:stretch}.product-study-toolbar,.price-study-layout,.price-study-insights,.price-rise-detector,.product-price-metrics{grid-template-columns:1fr}.product-watch-list{max-height:340px;padding-right:0}.price-rise-main,.product-study-head,.price-chart-head{display:grid;gap:8px}.price-rise-main>strong,.product-study-head>strong,.product-purchase-row b{text-align:left}.product-study-detail{overflow:hidden}.price-line-chart{height:190px}.product-purchase-table{overflow-x:visible}.product-purchase-head{display:none}.product-purchase-row{grid-template-columns:1fr 1fr;min-width:0}.product-purchase-row strong{grid-column:1 / -1}.product-purchase-row .icon-button{justify-self:start}.product-purchase-row [data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.74rem;font-weight:900;margin-bottom:2px;text-transform:uppercase}.ticket-floating-actions{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom))}.floating-ticket-button{width:56px;height:56px}.floating-ticket-button.secondary{width:46px;height:46px}}@media(max-width:760px){.auth-shell{place-items:center;padding:18px 14px}.auth-panel{padding:18px;max-height:calc(100svh - 28px);overflow-y:auto}.brand-mark,.kpi-icon{width:42px;height:42px}.sidebar{padding:12px;overflow:visible}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar .brand{justify-content:flex-start;min-width:0}.sidebar .brand>div:last-child{min-width:0}.mobile-menu-toggle{display:inline-flex;flex:0 0 auto}.sidebar-menu{display:none;gap:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}.sidebar.menu-open .sidebar-menu{display:flex}.nav-list{display:grid;grid-template-columns:1fr;overflow:visible;gap:8px;padding-bottom:0;scrollbar-width:none}.nav-list::-webkit-scrollbar{display:none}.nav-button{width:100%;min-height:44px;padding:10px 12px;white-space:normal}.nav-list .nav-button{min-width:0}.main-content{padding:22px 14px 40px}.topbar,.dashboard-grid,.chart-grid,.report-hero,.ticket-upload-box{display:grid}.dashboard-grid,.chart-grid,.report-hero{grid-template-columns:1fr}.topbar{align-items:start;gap:14px}.topbar-actions{justify-content:flex-start}h1{font-size:clamp(2rem,9vw,2.6rem);line-height:1.04}.topbar-pill{justify-content:start;width:fit-content;white-space:normal}.nav-button span{font-size:.9rem}.kpi-grid,.comparison-grid,.two-cols,.receipt-fields,.notification-grid,.notification-kpis{grid-template-columns:1fr}.segmented{grid-template-columns:1fr 1fr}.panel,.kpi-card,.report-hero{padding:16px}.kpi-card{min-height:128px}.budget-edit-row{grid-template-columns:1fr;align-items:stretch}.donut-layout,.donut-layout.empty{grid-template-columns:1fr;justify-items:center;text-align:center}.chart-legend{width:100%;text-align:left}.category-form{grid-template-columns:1fr}.household-access-head,.member-row,.household-upgrade-box,.invite-form{display:grid;grid-template-columns:1fr}.household-access-head span,.member-row-actions{width:fit-content}.danger-zone{display:grid}.history-toolbar,.history-summary,.movement-table-head,.movement-table-row{grid-template-columns:1fr;min-width:0}.history-toolbar{max-width:none}.history-toolbar .secondary-button{width:100%}.table-export-bar{align-items:stretch;flex-direction:column}.table-export-bar .compact-export{justify-content:stretch}.history-summary{gap:8px}.movement-table-head{display:none}.movement-table-row{gap:8px}.bar-copy,.budget-head,.goal-head{align-items:flex-start}.ticket-upload-box,.ticket-upload-actions{grid-template-columns:1fr}.receipt-line-head,.receipt-line-row{min-width:680px}.receipt-table-head,.receipt-table-row{min-width:760px}.product-history-toolbar{display:grid;align-items:stretch}.product-history-head,.product-history-row{min-width:860px}.receipt-save-bar{justify-content:stretch}.notification-actions{display:grid}.receipt-save-bar .primary-button,.export-actions .primary-button,.export-actions .secondary-button{width:100%}}@media(max-width:520px){.main-content{padding-inline:10px}.sidebar{border-bottom-left-radius:0;border-bottom-right-radius:0}.brand strong{font-size:1rem}.brand span{font-size:.82rem}.nav-list .nav-button{min-width:0}.nav-button{gap:7px;padding-inline:10px}.nav-button svg{width:18px;height:18px}.kpi-grid{grid-template-columns:1fr}.movement-row{grid-template-columns:minmax(0,1fr) auto}.movement-row .movement-actions{grid-column:1 / -1;justify-content:flex-end}.rule-row,.danger-zone,.report-hero{display:grid}.report-hero strong{white-space:normal}.primary-button,.secondary-button,.danger-button{width:100%}.panel-title{align-items:flex-start}.ticket-textarea{min-height:130px}.receipt-line-head,.receipt-table-head,.product-history-head,.receipt-detail-line-head{display:none}.receipt-line-row{grid-template-columns:minmax(0,1fr) 96px;min-width:0;align-items:stretch}.receipt-line-row input:first-child,.receipt-line-row select{grid-column:1 / -1}.receipt-table-row,.product-history-row{grid-template-columns:minmax(0,1fr) auto;min-width:0;gap:8px;align-items:start}.receipt-table-row>span:first-child,.receipt-table-row>strong,.receipt-table-row>span:nth-child(3){grid-column:1 / 2}.receipt-table-row>b{grid-column:2 / 3;grid-row:1 / 3;text-align:right}.receipt-table-row>.movement-actions{grid-column:2 / 3;grid-row:3 / 4;justify-content:flex-end}.receipt-table-row [data-label]:before,.product-history-row [data-label]:before,.receipt-detail-line-row [data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.74rem;font-weight:900;margin-bottom:2px;text-transform:uppercase}.product-history-row{grid-template-columns:1fr}.product-history-row>div{min-width:0}.receipt-detail-summary{grid-template-columns:1fr}.receipt-detail-line-row{grid-template-columns:1fr 1fr;min-width:0}.receipt-detail-line-row strong,.receipt-detail-line-row span:last-child{grid-column:1 / -1}.modal-backdrop{align-items:end;padding:8px}.modal-panel{max-height:94vh;padding:16px}}@media(max-width:760px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.app-shell{display:block;width:100%;max-width:100vw}.sidebar{width:100%;max-width:100vw;overflow:hidden}.main-content{width:100%;max-width:100vw;padding:18px 10px 44px;overflow:hidden}.topbar{display:grid;grid-template-columns:1fr;margin-bottom:18px}h1{font-size:clamp(1.75rem,8vw,2.25rem);line-height:1.05;overflow-wrap:anywhere}.view-stack,.dashboard-grid,.chart-grid,.panel,.receipt-review,.receipt-lines,.receipt-table,.product-history-table,.receipt-detail-lines{width:100%;min-width:0;max-width:100%}.panel{padding:14px;overflow:hidden}.kpi-grid,.history-summary,.comparison-grid,.receipt-fields,.receipt-detail-summary,.notification-grid,.notification-kpis{grid-template-columns:1fr}.ticket-upload-box,.ticket-upload-actions,.ocr-review-panel,.pending-ticket-card,.category-form,.history-toolbar,.product-history-toolbar,.receipt-save-bar,.receipt-review-footer{display:grid;grid-template-columns:1fr;align-items:stretch}.ocr-review-panel>div:last-child{display:grid;grid-template-columns:1fr;justify-content:stretch}.file-drop{min-height:54px}.file-drop span{white-space:normal;overflow-wrap:anywhere}.movement-table,.receipt-table,.product-history-table,.receipt-lines,.receipt-detail-lines{overflow-x:visible}.movement-table-head,.receipt-line-head,.receipt-table-head,.product-history-head,.receipt-detail-line-head{display:none}.movement-table-row,.receipt-table-row,.product-history-row,.receipt-detail-line-row{min-width:0;width:100%;grid-template-columns:1fr;gap:8px;align-items:stretch}.movement-table-row>*,.receipt-table-row>*,.product-history-row>*,.receipt-detail-line-row>*{min-width:0}.receipt-line-row{min-width:0;width:100%;grid-template-columns:1fr 1fr;gap:8px;align-items:stretch}.receipt-line-row input:first-child,.receipt-line-row select{grid-column:1 / -1}.receipt-table-row>span:first-child,.receipt-table-row>strong,.receipt-table-row>span:nth-child(3),.receipt-table-row>b,.receipt-table-row>.movement-actions,.receipt-detail-line-row strong,.receipt-detail-line-row span:last-child{grid-column:auto;grid-row:auto}.receipt-table-row>b{text-align:left}.movement-actions{justify-content:flex-start;flex-wrap:wrap}.receipt-table-row [data-label]:before,.product-history-row [data-label]:before,.receipt-detail-line-row [data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.74rem;font-weight:900;margin-bottom:2px;text-transform:uppercase}.primary-button,.secondary-button,.danger-button,.receipt-save-bar .primary-button,.export-actions .primary-button,.export-actions .secondary-button,.notification-actions .primary-button,.notification-actions .secondary-button{width:100%}.modal-backdrop{align-items:end;padding:8px}.modal-panel{width:100%;max-height:92dvh;padding:14px}.receipt-review-modal{padding:0;max-height:96dvh}.receipt-review-head{padding:16px 16px 12px}.receipt-review-summary{grid-template-columns:1fr 1fr;padding:12px 16px}.receipt-review-modal .receipt-review{padding:14px 16px}.receipt-review-footer{padding:12px 16px}.ticket-floating-actions{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}.scan-drive-view .panel{overflow:hidden}.scan-drive-toolbar{grid-template-columns:1fr;gap:10px}.scan-drive-toolbar .secondary-button{width:100%}.scan-drive-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.scan-drive-stats div{padding:10px}.scan-drive-stats span{font-size:.68rem}.scan-drive-stats strong{font-size:1.08rem}.scan-drive-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px}.scan-drive-empty{min-height:180px;padding:20px 14px}.floating-ticket-button{width:58px;height:58px}.floating-ticket-button.secondary{width:48px;height:48px}.product-study-toolbar,.price-study-layout,.price-study-insights,.price-rise-detector,.product-price-metrics{grid-template-columns:1fr}.price-rise-main{display:grid;gap:8px}.price-rise-main>strong{text-align:left}.product-watch-list{max-height:none;padding-right:0}.product-study-head,.price-chart-head{display:grid;gap:8px}.product-study-head>strong,.product-purchase-row b{text-align:left}.price-line-chart{height:190px}.product-purchase-head{display:none}.product-purchase-row{grid-template-columns:1fr 1fr}.product-purchase-row strong{grid-column:1 / -1}.product-purchase-row .icon-button{justify-self:start}.product-purchase-row [data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.74rem;font-weight:900;margin-bottom:2px;text-transform:uppercase}.activity-toolbar,.admin-toolbar,.pagination-bar,.pagination-bar div{display:grid;grid-template-columns:1fr;width:100%}.activity-table,.admin-users-table{overflow-x:visible}.activity-table-head,.admin-users-head{display:none}.activity-table-row,.admin-users-row{min-width:0;grid-template-columns:1fr;gap:8px}.admin-users-row b{text-align:left}.admin-user-actions{justify-content:flex-start}.activity-table-row [data-label]:before,.admin-users-row [data-label]:before{content:attr(data-label);display:block;color:var(--muted);font-size:.74rem;font-weight:900;margin-bottom:2px;text-transform:uppercase}}@media(max-width:900px){.landing-nav{display:grid;align-items:start}.landing-nav-links{order:3}.landing-hero{min-height:calc(100svh - 112px)}.landing-product-scene{opacity:.34}.landing-dashboard-preview{right:-180px;top:12%}.landing-receipt-preview{left:auto;right:38px;bottom:9%}.landing-phone-preview{right:220px;bottom:16%}.landing-feature-grid,.landing-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-about,.landing-band{grid-template-columns:1fr}.landing-footer{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.landing-nav{padding:12px;gap:12px}.landing-nav-links{width:100%;justify-content:space-between;gap:6px;font-size:.88rem}.landing-nav-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.landing-nav-actions .primary-button,.landing-nav-actions .secondary-button{width:100%;padding-inline:10px}.landing-hero{min-height:calc(100svh - 130px);padding:34px 14px 54px}.landing-hero-copy h1{font-size:clamp(2.35rem,12vw,3.4rem)}.landing-product-scene{opacity:.24}.landing-dashboard-preview{min-width:390px;right:-245px;top:18%}.landing-receipt-preview{right:-42px;bottom:8%}.landing-phone-preview{right:92px;bottom:17%}.landing-hero-actions,.landing-trust-row{display:grid;grid-template-columns:1fr}.landing-section,.landing-about,.landing-band,.landing-cta{padding:40px 14px}.landing-feature-grid,.landing-price-grid{grid-template-columns:1fr}.landing-footer{grid-template-columns:1fr;padding:32px 14px}.legal-hero,.legal-content{padding-left:14px;padding-right:14px}}
