@charset "UTF-8";.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;border:none;outline:none;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:active:before{width:300px;height:300px}.btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.btn--sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn--md{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}.btn--lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);border-radius:var(--radius-lg)}.btn--primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;box-shadow:0 2px 8px #4a90e24d}.btn--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #4a90e266}.btn--primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #4a90e24d}.btn--secondary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-dark) 100%);color:#fff;box-shadow:0 2px 8px #7c4dff4d}.btn--secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #7c4dff66}.btn--secondary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #7c4dff4d}.btn--danger{background:linear-gradient(135deg,var(--color-error) 0%,#d32f2f 100%);color:#fff;box-shadow:0 2px 8px #f443364d}.btn--danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #f4433666}.btn--danger:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #f443364d}.btn--ghost{background-color:transparent;color:var(--color-text-primary);border:2px solid var(--color-border)}.btn--ghost:hover:not(:disabled){background-color:var(--color-background);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.btn--ghost:active:not(:disabled){transform:translateY(0)}.btn--full-width{width:100%}.btn--loading{position:relative;color:transparent}.btn__spinner{position:absolute;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .6s linear infinite}.btn__text--loading{visibility:hidden}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}@media(max-width:768px){.btn{min-height:44px;touch-action:manipulation}.btn--sm{min-height:40px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.btn--md{min-height:48px;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base)}.btn--lg{min-height:52px;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg)}.btn:active{transform:scale(.98)}}@media(max-width:640px){.btn--full-width{width:100%}}.input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input-group--full-width{width:100%}.input__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.input__required{color:var(--color-error);margin-left:var(--spacing-xs)}.input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-surface);transition:all var(--transition-fast);width:100%}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4a90e21a}.input:disabled{background-color:var(--color-background);color:var(--color-text-disabled);cursor:not-allowed}.input--error{border-color:var(--color-error)}.input--error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #f443361a}.input__error{font-size:var(--font-size-sm);color:var(--color-error)}textarea.input{min-height:100px;resize:vertical;font-family:inherit}@media(max-width:768px){.input{min-height:44px;padding:var(--spacing-md) var(--spacing-md);font-size:16px;touch-action:manipulation}.input__label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.input-group{gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}textarea.input{min-height:120px;font-size:16px}.input:focus{border-width:2px;border-color:var(--color-primary)}}@media(max-width:480px){.input{padding:var(--spacing-sm) var(--spacing-md)}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media(max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.date-picker{position:relative}.date-picker--full-width,.date-picker-input{width:100%}.date-picker-input__label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-sm)}.date-picker-input__button{width:100%;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-base);cursor:pointer;transition:all var(--transition-fast);text-align:left}.date-picker-input__button:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-background)}.date-picker-input__button:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.date-picker-input__button:disabled{cursor:not-allowed;opacity:.6;background:var(--color-surface)}.date-picker-input--disabled .date-picker-input__button{cursor:not-allowed;opacity:.6}.date-picker-input__icon{font-size:1.2rem;flex-shrink:0}.date-picker-input__value{flex:1;font-weight:var(--font-weight-medium)}.date-picker-input__arrow{font-size:.7rem;color:var(--color-text-secondary);flex-shrink:0}.react-datepicker{font-family:inherit;border:2px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.react-datepicker__header{background-color:var(--color-primary);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;padding-top:var(--spacing-md)}.react-datepicker__current-month,.react-datepicker__day-name{color:#000;font-weight:var(--font-weight-semibold)}.react-datepicker__day{color:#000;border-radius:var(--radius-sm);margin:2px}.react-datepicker__day:hover{background-color:var(--color-primary);color:#fff}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background-color:var(--color-primary);color:#fff;font-weight:var(--font-weight-bold)}.react-datepicker__day--today{font-weight:var(--font-weight-bold);border:2px solid var(--color-primary)}.react-datepicker__day--disabled{color:var(--color-text-disabled);cursor:not-allowed}.react-datepicker__day--disabled:hover{background-color:transparent}.react-datepicker__navigation{top:var(--spacing-md)}.react-datepicker__navigation-icon:before{border-color:#000;border-width:2px 2px 0 0}.react-datepicker__month-select,.react-datepicker__year-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid #000000;border-radius:var(--radius-sm);background:#fff;color:#000;font-weight:var(--font-weight-medium);cursor:pointer}.react-datepicker__month-select option,.react-datepicker__year-select option{background:#fff;color:#000}.react-datepicker__month-select:focus,.react-datepicker__year-select:focus{outline:none;box-shadow:0 0 0 2px #ffffff80}@media(max-width:640px){.react-datepicker{font-size:.9rem}}.card{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base);border:1px solid var(--color-divider);position:relative}.card--padding-none{padding:0}.card--padding-sm{padding:var(--spacing-sm)}.card--padding-md{padding:var(--spacing-md)}.card--padding-lg{padding:var(--spacing-lg)}.card--padding-xl{padding:var(--spacing-xl)}.card--hoverable{cursor:pointer}.card--hoverable:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--color-primary)}.card--hoverable:active{transform:translateY(0);box-shadow:var(--shadow-md)}.card__header{padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-divider);margin-bottom:var(--spacing-md)}.card__header h3,.card__header h4{margin:0;color:var(--color-text-primary)}.card__body{flex:1}.card__footer{padding-top:var(--spacing-md);border-top:1px solid var(--color-divider);margin-top:var(--spacing-md);display:flex;gap:var(--spacing-sm);align-items:center}@media(max-width:640px){.card--padding-lg{padding:var(--spacing-md)}.card--padding-xl{padding:var(--spacing-lg)}.card__header,.card__footer{padding-bottom:var(--spacing-sm);padding-top:var(--spacing-sm)}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-lg)}.loading-fullscreen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);background-color:var(--color-background);z-index:var(--z-index-modal)}.loading-spinner{border:3px solid rgba(74,144,226,.2);border-radius:50%;border-top-color:var(--color-primary);animation:spin .8s linear infinite}.loading-spinner--sm{width:20px;height:20px;border-width:2px}.loading-spinner--md{width:40px;height:40px;border-width:3px}.loading-spinner--lg{width:60px;height:60px;border-width:4px}.loading-text{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.modal-backdrop{position:fixed;inset:0;background-color:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal);padding:var(--spacing-md);animation:fadeIn var(--transition-base)}.modal{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:90vh;width:100%;animation:slideUp var(--transition-slow)}.modal--sm{max-width:400px}.modal--md{max-width:600px}.modal--lg{max-width:800px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-divider)}.modal__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:0}.modal__close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:28px;line-height:1;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal__close:hover{background-color:var(--color-background);color:var(--color-text-primary)}.modal__content{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal__actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding:var(--spacing-lg);border-top:1px solid var(--color-divider)}@media(max-width:768px){.modal-backdrop{padding:0;align-items:stretch}.modal{max-height:100vh;height:100vh;max-width:100%;border-radius:0;margin:0}.modal--sm,.modal--md,.modal--lg{max-width:100%;width:100%}.modal__header{padding:var(--spacing-lg) var(--spacing-md);position:sticky;top:0;background-color:var(--color-surface);z-index:1;box-shadow:0 2px 4px #0000001a}.modal__title{font-size:var(--font-size-lg)}.modal__close{width:44px;height:44px;font-size:24px}.modal__content{padding:var(--spacing-md);flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal__actions{padding:var(--spacing-md);position:sticky;bottom:0;background-color:var(--color-surface);box-shadow:0 -2px 4px #0000001a;flex-direction:column;gap:var(--spacing-sm)}.modal__actions button{width:100%;min-height:48px}@keyframes slideUp{0%{transform:translateY(100%);opacity:1}to{transform:translateY(0);opacity:1}}}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:none;cursor:pointer;border-radius:50%;transition:all var(--transition-fast)}.theme-toggle:hover{background-color:#ffffff1a;transform:scale(1.1)}.theme-toggle:active{transform:scale(.95)}.theme-toggle__icon{font-size:1.5rem;line-height:1;transition:transform var(--transition-base)}.theme-toggle:hover .theme-toggle__icon{transform:rotate(20deg)}@media(max-width:640px){.theme-toggle{width:36px;height:36px}.theme-toggle__icon{font-size:1.25rem}}.privacy-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:none;cursor:pointer;border-radius:50%;transition:all var(--transition-fast)}.privacy-toggle:hover{background-color:#ffffff1a;transform:scale(1.1)}.privacy-toggle:active{transform:scale(.95)}.privacy-toggle__icon{font-size:1.5rem;line-height:1;transition:transform var(--transition-base)}.privacy-toggle:hover .privacy-toggle__icon{transform:rotate(20deg)}@media(max-width:640px){.privacy-toggle{width:36px;height:36px}.privacy-toggle__icon{font-size:1.25rem}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:400px;padding:var(--spacing-xl);animation:fadeIn .3s ease-in}.error-boundary__card{max-width:600px;width:100%;padding:var(--spacing-xxl) var(--spacing-xl);text-align:center;border:2px solid var(--color-error)}.error-boundary__icon{font-size:4rem;margin-bottom:var(--spacing-lg);animation:shake .5s ease-in-out}.error-boundary__title{color:var(--color-error);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-md)}.error-boundary__message{color:var(--color-text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-xl);line-height:var(--line-height-relaxed)}.error-boundary__details{text-align:left;margin:var(--spacing-lg) 0;padding:var(--spacing-md);background:var(--color-background);border-radius:var(--radius-md);border:1px solid var(--color-border)}.error-boundary__details summary{cursor:pointer;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-sm);-webkit-user-select:none;user-select:none}.error-boundary__details summary:hover{color:var(--color-primary)}.error-boundary__stack{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-error);overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:#f443360d;border-radius:var(--radius-sm)}.error-boundary__actions{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}@media(max-width:640px){.error-boundary{padding:var(--spacing-md);min-height:300px}.error-boundary__card{padding:var(--spacing-xl) var(--spacing-lg)}.error-boundary__icon{font-size:3rem}.error-boundary__title{font-size:var(--font-size-xl)}.error-boundary__message{font-size:var(--font-size-base)}.error-boundary__actions{flex-direction:column}.error-boundary__actions button{width:100%}}.skeleton{background:linear-gradient(90deg,var(--color-background) 0%,var(--color-divider) 50%,var(--color-background) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton--text{height:1em;margin-bottom:var(--spacing-xs);border-radius:var(--radius-sm)}.skeleton--circular{border-radius:50%;width:40px;height:40px}.skeleton--rectangular{border-radius:0}.skeleton--rounded{border-radius:var(--radius-md)}.skeleton-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.skeleton-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.skeleton-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-divider)}.skeleton-card__body{display:flex;flex-direction:column;gap:var(--spacing-md)}.skeleton-list-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.skeleton-list-item__content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}[data-theme=dark] .skeleton{background:linear-gradient(90deg,var(--color-surface) 0%,var(--color-border) 50%,var(--color-surface) 100%);background-size:200% 100%}@media(max-width:640px){.skeleton-card{padding:var(--spacing-md)}.skeleton-card__header{margin-bottom:var(--spacing-md)}}.toast{position:fixed;top:var(--spacing-xl);right:var(--spacing-xl);z-index:10000;min-width:300px;max-width:500px;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--spacing-md);animation:toast-slide-in .3s ease-out;border-left:4px solid var(--toast-color)}@keyframes toast-slide-in{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.toast__icon{font-size:1.25rem;flex-shrink:0}.toast__message{flex:1;color:var(--color-text);font-size:.9375rem;line-height:1.4}.toast__close{flex-shrink:0;background:none;border:none;color:var(--color-text-secondary);font-size:1.25rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s ease}.toast__close:hover{background:var(--color-surface-hover);color:var(--color-text)}.toast--info{--toast-color: var(--color-primary)}.toast--success{--toast-color: #22c55e}.toast--warning{--toast-color: #f59e0b}.toast--error{--toast-color: var(--color-danger)}@media(max-width:640px){.toast{top:var(--spacing-md);right:var(--spacing-md);left:var(--spacing-md);max-width:none;min-width:0}}.tabs{width:100%}.tabs__header{display:flex;gap:var(--spacing-sm);border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-lg);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tabs__header::-webkit-scrollbar{display:none}.tabs__tab{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);color:var(--color-text-secondary);background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;position:relative;margin-bottom:-2px}.tabs__tab:hover:not(.tabs__tab--active){color:var(--color-text-primary);background:var(--color-surface);border-bottom-color:var(--color-border)}.tabs__tab:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.tabs__tab--active{color:var(--color-primary);font-weight:var(--font-weight-semibold);border-bottom-color:var(--color-primary)}.tabs__icon{font-size:1.2em;display:inline-flex;align-items:center}.tabs__label{display:inline-block}.tabs__content{position:relative;min-height:200px}.tabs__panel{display:none;animation:fadeIn .3s ease-in}.tabs__panel--active{display:block}@media(max-width:768px){.tabs__header{position:sticky;top:0;background:var(--color-surface);z-index:10;margin-bottom:var(--spacing-md)}.tabs__tab{padding:var(--spacing-md) var(--spacing-sm);font-size:var(--font-size-sm);min-height:56px;flex:1;justify-content:center}.tabs__label{font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabs__icon{font-size:1.5em}.tabs__content{touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}}@media(max-width:480px){.tabs__header{gap:0}.tabs__tab{flex:1;padding:var(--spacing-sm) var(--spacing-xs);min-height:52px}.tabs__icon{font-size:1.3em}.tabs__label{font-size:.7rem}}.header{background:linear-gradient(135deg,#4a90e2,#667eea,#764ba2);color:#fff;padding:var(--spacing-xl) var(--spacing-md);box-shadow:0 4px 20px #0000001a;position:relative;overflow:hidden}.header:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);pointer-events:none}.header__container{max-width:1280px;margin:0 auto;position:relative;z-index:1}.header__content{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.header__branding{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.header__logo{width:48px;height:48px;border-radius:var(--radius-md);box-shadow:0 2px 8px #0003}.header__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0;text-shadow:0 2px 4px rgba(0,0,0,.1);letter-spacing:-.5px}.header__actions{display:flex;align-items:center;gap:var(--spacing-sm)}@media(max-width:640px){.header{padding:var(--spacing-lg) var(--spacing-md)}.header__logo{width:40px;height:40px}.header__title{font-size:var(--font-size-2xl)}.header__branding{gap:var(--spacing-sm)}}@media(min-width:641px)and (max-width:1024px){.header{padding:calc(var(--spacing-xl) * 1.2) var(--spacing-md)}}.navigation{background-color:var(--color-surface);border-bottom:1px solid var(--color-divider);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-index-sticky)}.navigation__container{display:flex;max-width:1280px;margin:0 auto;overflow-x:auto}.navigation__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);color:var(--color-text-secondary);text-decoration:none;transition:all var(--transition-fast);border-bottom:3px solid transparent;white-space:nowrap;flex:1;min-width:0}.navigation__item:hover{color:var(--color-primary);background-color:var(--color-background)}.navigation__item--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.navigation__icon{font-size:var(--font-size-xl)}.navigation__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.navigation__toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);color:var(--color-text-secondary);background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;flex:1;min-width:0}.navigation__toggle:hover{color:var(--color-primary);background-color:var(--color-background)}@media(min-width:769px){.navigation{position:sticky;top:0;border-bottom:1px solid var(--color-divider);border-top:none}.navigation__item{border-bottom:3px solid transparent;border-top:none}.navigation__item--active{border-bottom-color:var(--color-primary);border-top-color:transparent}}@media(max-width:768px){.navigation{position:fixed;inset:auto 0 0;border-bottom:none;border-top:1px solid var(--color-divider);box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom)}.navigation__container{justify-content:space-around;overflow-x:visible}.navigation__item{padding:var(--spacing-sm) var(--spacing-xs);border-bottom:none;border-top:3px solid transparent;flex-direction:column;gap:2px}.navigation__item--active{border-bottom-color:transparent;border-top-color:var(--color-primary)}.navigation__icon{font-size:1.5rem}.navigation__label{font-size:.65rem;overflow:hidden;text-overflow:ellipsis;max-width:100%}.navigation__toggle{padding:var(--spacing-sm) var(--spacing-xs);border-bottom:none;border-top:3px solid transparent;flex-direction:column;gap:2px}}.trend-indicator{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.trend-indicator__icon{font-size:1.2em;line-height:1}.trend-indicator__value{line-height:1}.trend-indicator--positive{color:var(--color-success);background-color:#4caf501a}.trend-indicator--negative{color:var(--color-error);background-color:#f443361a}.trend-indicator--stable{color:var(--color-text-secondary);background-color:#bdbdbd1a}[data-theme=dark] .trend-indicator--positive{background-color:#66bb6a26}[data-theme=dark] .trend-indicator--negative{background-color:#ef535026}[data-theme=dark] .trend-indicator--stable{background-color:#75757526}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary))}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--color-primary)}.stat-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-divider)}.stat-card__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;letter-spacing:-.3px}.stat-card__body{display:flex;flex-direction:column;gap:var(--spacing-lg)}.stat-card__main{display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg) 0;background:linear-gradient(135deg,#4a90e20d,#7c4dff0d);border-radius:var(--radius-md)}.stat-card__current{display:flex;align-items:baseline;gap:var(--spacing-sm)}.stat-card__value{font-size:3rem;font-weight:var(--font-weight-bold);color:var(--color-primary);line-height:1;letter-spacing:-1px}.stat-card__unit{font-size:var(--font-size-xl);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold)}.stat-card__empty{font-size:var(--font-size-lg);color:var(--color-text-disabled);font-style:italic}.stat-card__details{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-background);border-radius:var(--radius-md)}.stat-card__row{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);padding:var(--spacing-xs) 0}.stat-card__label{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.stat-card__detail-value{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base)}.stat-card__change{font-weight:var(--font-weight-bold);font-size:var(--font-size-base);display:inline-flex;align-items:center;gap:4px}.stat-card__change--up:before{content:"↑";font-size:1.2em}.stat-card__change--down:before{content:"↓";font-size:1.2em}.stat-card__change--stable:before{content:"→";font-size:1.2em}.stat-card__change--positive{color:var(--color-success)}.stat-card__change--negative{color:var(--color-error)}.stat-card__change--neutral{color:var(--color-text-secondary)}@media(max-width:640px){.stat-card{padding:var(--spacing-lg)}.stat-card__value{font-size:2.5rem}.stat-card__unit,.stat-card__title{font-size:var(--font-size-lg)}.stat-card__details{padding:var(--spacing-sm)}}.stat-grid{display:flex;flex-direction:column;gap:var(--spacing-xl)}.stat-grid__empty{background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xxl);text-align:center;color:var(--color-text-secondary)}.stat-grid__empty p{font-size:var(--font-size-lg);margin:0}.stat-grid__cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}@media(max-width:640px){.stat-grid{gap:var(--spacing-lg)}.stat-grid__cards{grid-template-columns:1fr;gap:var(--spacing-md)}}@media(min-width:1024px){.stat-grid__cards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}.recent-entries{display:flex;flex-direction:column;gap:var(--spacing-md)}.recent-entries--empty{text-align:center;padding:var(--spacing-xl)!important;color:var(--color-text-secondary)}.recent-entry{padding:var(--spacing-lg)!important;transition:all var(--transition-base);border-left:3px solid transparent}.recent-entry:hover{border-left-color:var(--color-primary);transform:translate(4px);box-shadow:var(--shadow-md)}.recent-entry__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.recent-entry__date{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--font-size-base)}.recent-entry__date-icon{font-size:1.125rem}.recent-entry__badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.recent-entry__values{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.recent-entry__value{display:flex;flex-direction:column;gap:var(--spacing-xs)}.recent-entry__field{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.recent-entry__number{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.recent-entry__unit{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-normal)}.recent-entry__notes{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface-hover);border-radius:var(--radius-sm);margin-top:var(--spacing-sm)}.recent-entry__notes-icon{font-size:1rem;flex-shrink:0;margin-top:2px}.recent-entry__notes-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);word-break:break-word}@media(max-width:640px){.recent-entry__values{grid-template-columns:1fr;gap:var(--spacing-sm)}.recent-entry__header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.recent-entry__badge{align-self:flex-start}}.home-page{padding:var(--spacing-xl) 0;animation:fadeIn .3s ease-in}.home-page__header{margin-bottom:var(--spacing-xl)}.home-page__title{margin-bottom:var(--spacing-xs);color:var(--color-text-primary);font-size:var(--font-size-3xl)}.home-page__subtitle{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.home-page__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xxl)}.stat-card{text-align:center;padding:var(--spacing-xl) var(--spacing-lg)!important;transition:transform var(--transition-base),box-shadow var(--transition-base);cursor:default;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity var(--transition-base)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-card:hover:before{opacity:1}.stat-card__icon{font-size:3rem;margin-bottom:var(--spacing-md);display:inline-block;transition:transform var(--transition-base)}.stat-card:hover .stat-card__icon{transform:scale(1.1)}.stat-card__value{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--spacing-xs);line-height:1}.stat-card__value--small{font-size:var(--font-size-xl)}.stat-card__label{font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.stat-card--primary:before{background:linear-gradient(90deg,#4a90e2,#5ba3f5)}.stat-card--secondary:before{background:linear-gradient(90deg,#7c4dff,#9575ff)}.stat-card--accent:before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.stat-card--success:before{background:linear-gradient(90deg,#22c55e,#4ade80)}.home-page__content{display:flex;flex-direction:column;gap:var(--spacing-xxl)}.home-page__section{animation:fadeIn .4s ease-in}.home-page__section-title{margin:0 0 var(--spacing-lg) 0;color:var(--color-text);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);display:flex;align-items:center;gap:var(--spacing-sm)}.home-page__section-title:before{content:"";width:4px;height:24px;background:var(--color-primary);border-radius:var(--radius-full)}.home-page__section-description{margin:calc(var(--spacing-sm) * -1) 0 var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.home-page__view-configs{margin-bottom:var(--spacing-xl);animation:fadeIn .3s ease-in}.view-config-selector{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.home-page__welcome{background:linear-gradient(135deg,#4a90e20d,#7c4dff0d);border:2px solid var(--color-border)}.home-page__welcome h3{margin-top:0;color:var(--color-primary);font-size:var(--font-size-2xl)}.home-page__welcome p{color:var(--color-text-primary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.home-page__welcome ol{list-style:decimal;padding-left:var(--spacing-xl)}.home-page__welcome li{margin-bottom:var(--spacing-md);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.home-page__welcome a{font-weight:var(--font-weight-semibold);color:var(--color-primary);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--transition-fast)}.home-page__welcome a:hover{border-bottom-color:var(--color-primary)}@media(max-width:768px){.home-page__stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.home-page{padding:var(--spacing-lg) 0}.home-page__header{margin-bottom:var(--spacing-lg)}.home-page__title{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xs)}.home-page__subtitle{font-size:var(--font-size-sm)}.home-page__stats{grid-template-columns:1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card__value{font-size:var(--font-size-3xl)}.stat-card__value--small{font-size:var(--font-size-lg)}.stat-card__icon{font-size:2.5rem}.home-page__content{gap:var(--spacing-xl)}.home-page__section-title{font-size:var(--font-size-lg)}}.field-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.field-form__type{display:flex;flex-direction:column;gap:var(--spacing-sm)}.field-form__type-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.field-form__type-options{display:flex;gap:var(--spacing-md)}.field-form__type-option{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.field-form__type-option:hover{border-color:var(--color-primary);background-color:#4a90e20d}.field-form__type-option input[type=radio]{cursor:pointer}.field-form__type-option input[type=radio]:checked+span{color:var(--color-primary);font-weight:var(--font-weight-medium)}.field-form__goal{display:flex;flex-direction:column;gap:var(--spacing-sm)}.field-form__goal-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.field-form__goal-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.field-form__goal-options{display:flex;flex-direction:column;gap:var(--spacing-sm)}.field-form__goal-option{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.field-form__goal-option:hover{border-color:var(--color-primary);background-color:#4a90e20d}.field-form__goal-option input[type=radio]{cursor:pointer;margin-top:2px}.field-form__goal-option input[type=radio]:checked{accent-color:var(--color-primary)}.field-form__goal-option-text{display:flex;flex-direction:column;gap:4px}.field-form__goal-option-text strong{color:var(--color-text-primary);font-size:var(--font-size-base)}.field-form__goal-option-text small{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.field-form__goal-option input[type=radio]:checked+.field-form__goal-option-text strong{color:var(--color-primary)}.field-form__error{padding:var(--spacing-sm) var(--spacing-md);background-color:#f443361a;border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.field-form__actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.field-card{border:1px solid var(--color-border);transition:all var(--transition-fast)}.field-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.field-card__content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.field-card__info{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.field-card__name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0;color:var(--color-text-primary)}.field-card__unit{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-family:var(--font-family-mono);background-color:var(--color-background);padding:2px 8px;border-radius:var(--radius-sm);display:inline-block;width:fit-content}.field-card__type{font-size:var(--font-size-xs);color:var(--color-text-disabled);text-transform:uppercase}.field-card__actions{display:flex;gap:var(--spacing-sm)}@media(max-width:640px){.field-card__content{flex-direction:column;align-items:stretch}.field-card__actions{justify-content:stretch}.field-card__actions button{flex:1}}.field-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.field-list-empty{text-align:center;padding:var(--spacing-xxl) var(--spacing-md);color:var(--color-text-secondary)}.field-list-empty p{margin-bottom:var(--spacing-sm)}.field-list-empty__hint{font-size:var(--font-size-sm);color:var(--color-text-disabled)}.fields-page{padding:var(--spacing-xl) 0}.fields-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.fields-page__header h2{margin:0}@media(max-width:640px){.fields-page__header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}}.image-upload{width:100%}.image-upload__dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;cursor:pointer;transition:all var(--transition-fast);background-color:var(--color-background)}.image-upload__dropzone:hover:not(.image-upload__dropzone--disabled){border-color:var(--color-primary);background-color:#4a90e20d}.image-upload__dropzone--dragging{border-color:var(--color-primary);background-color:#4a90e21a;transform:scale(1.02)}.image-upload__dropzone--disabled{opacity:.6;cursor:not-allowed}.image-upload__icon{font-size:3rem;margin-bottom:var(--spacing-sm)}.image-upload__text{font-size:var(--font-size-base);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.image-upload__hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.image-upload__input{display:none}.image-upload__preview{position:relative;border-radius:var(--radius-lg);overflow:hidden;max-width:100%}.image-upload__preview-img{width:100%;height:auto;display:block;border-radius:var(--radius-lg)}.image-upload__remove{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:32px;height:32px;border-radius:50%;background-color:var(--color-error);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);transition:all var(--transition-fast);box-shadow:var(--shadow-md)}.image-upload__remove:hover{background-color:#d32f2f;transform:scale(1.1)}.entry-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.entry-form__empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.entry-form__empty p{margin-bottom:var(--spacing-sm)}.entry-form__fields{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md)}.entry-form__section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-sm) 0;color:var(--color-text-primary)}.entry-form__image,.entry-form__notes{display:flex;flex-direction:column;gap:var(--spacing-sm)}.entry-form__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.entry-form__textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit;color:var(--color-text-primary);background-color:var(--color-surface);resize:vertical;transition:all var(--transition-fast)}.entry-form__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4a90e21a}.entry-form__textarea:disabled{background-color:var(--color-background);color:var(--color-text-disabled);cursor:not-allowed}.entry-form__error{padding:var(--spacing-sm) var(--spacing-md);background-color:#f443361a;border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm)}.entry-form__actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.entry-card{border:1px solid var(--color-border);transition:all var(--transition-fast)}.entry-card:hover{box-shadow:var(--shadow-md)}.entry-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-divider)}.entry-card__date{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.entry-card__actions{display:flex;gap:var(--spacing-sm)}.entry-card__image{margin-bottom:var(--spacing-md);border-radius:var(--radius-md);overflow:hidden;max-width:500px;max-height:500px;margin-left:auto;margin-right:auto;position:relative;aspect-ratio:1 / 1}.entry-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:filter var(--transition-normal)}.entry-card__image img.image-blurred{filter:blur(20px);cursor:pointer}.entry-card__image-toggle{position:absolute;top:var(--spacing-md);right:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:#000000b3;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1}.entry-card__image-toggle:hover{background-color:#000000d9;transform:scale(1.05)}.entry-card__values{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.entry-card__value{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);background-color:var(--color-background);border-radius:var(--radius-sm)}.entry-card__value-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.entry-card__value-data{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.entry-card__notes{padding:var(--spacing-sm);background-color:var(--color-background);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.entry-card__notes strong{color:var(--color-text-primary)}@media(max-width:768px){.entry-card__image{max-width:100%;max-height:400px}.entry-card__image-toggle{padding:var(--spacing-sm);font-size:var(--font-size-xs);min-height:36px;min-width:80px}.entry-card__values{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-sm)}.entry-card__value{padding:var(--spacing-sm)}.entry-card__value-label{font-size:.75rem}.entry-card__value-data{font-size:var(--font-size-base)}}@media(max-width:640px){.entry-card__header{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.entry-card__actions{justify-content:stretch;flex-wrap:wrap}.entry-card__actions button{flex:1;min-width:120px}.entry-card__values{grid-template-columns:1fr}.entry-card__image{max-height:350px}}.entry-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.entry-list-empty{text-align:center;padding:var(--spacing-xxl) var(--spacing-md);color:var(--color-text-secondary)}.entry-list-empty p{margin-bottom:var(--spacing-sm)}.entry-list-empty__hint{font-size:var(--font-size-sm);color:var(--color-text-disabled)}.image-compare{position:relative;width:100%;aspect-ratio:3 / 4;max-height:600px;overflow:hidden;border-radius:var(--radius-lg);background:var(--color-background);-webkit-user-select:none;user-select:none;touch-action:none}.image-compare__before,.image-compare__after{position:absolute;top:0;left:0;width:100%;height:100%}.image-compare__img{width:100%;height:100%;object-fit:cover;display:block;transition:filter var(--transition-normal)}.image-compare__img.image-blurred{filter:blur(20px)}.image-compare__before{z-index:2}.image-compare__after{z-index:1}.image-compare__label{position:absolute;top:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);background:#000000b3;color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10}.image-compare__label--before{left:var(--spacing-md)}.image-compare__label--after{right:var(--spacing-md)}.image-compare__toggle{position:absolute;bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background-color:#000000b3;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.image-compare__toggle:hover{background-color:#000000d9;transform:scale(1.05)}.image-compare__toggle--before{left:var(--spacing-md)}.image-compare__toggle--after{right:var(--spacing-md)}.image-compare__slider{position:absolute;top:0;bottom:0;width:4px;margin-left:-2px;z-index:3;cursor:ew-resize;display:flex;flex-direction:column;align-items:center;justify-content:center}.image-compare__slider-line{position:absolute;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 8px #00000080}.image-compare__slider-handle{position:relative;width:48px;height:48px;background:#fff;border-radius:50%;box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;justify-content:center;gap:4px;z-index:1;transition:transform var(--transition-fast)}.image-compare__slider:hover .image-compare__slider-handle,.image-compare__slider:active .image-compare__slider-handle{transform:scale(1.1)}.image-compare__slider-arrow{color:var(--color-primary);font-size:12px;line-height:1}@media(max-width:640px){.image-compare{max-height:500px}.image-compare__slider-handle{width:40px;height:40px}.image-compare__slider-arrow{font-size:10px}.image-compare__label{font-size:var(--font-size-xs);padding:4px 8px}}.image-selector{display:flex;flex-direction:column;gap:var(--spacing-md)}.image-selector__label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.image-selector__empty{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);background:var(--color-background);border:2px dashed var(--color-border);border-radius:var(--radius-md)}.image-selector__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-md);max-height:400px;overflow-y:auto;padding:var(--spacing-xs)}.image-selector__item{position:relative;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-xs);cursor:pointer;transition:all var(--transition-fast);overflow:hidden}.image-selector__item:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.image-selector__item--selected{border-color:var(--color-primary);background:#4a90e21a}.image-selector__item--disabled{opacity:.4;cursor:not-allowed!important;pointer-events:none!important;filter:grayscale(100%)}.image-selector__item--disabled:hover{border-color:var(--color-border)!important;transform:none!important;box-shadow:none!important}.image-selector__item--disabled *{pointer-events:none!important;cursor:not-allowed!important}.image-selector__image{position:relative;width:100%;aspect-ratio:3 / 4;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs);background:var(--color-background)}.image-selector__image img{width:100%;height:100%;object-fit:cover;transition:filter var(--transition-normal)}.image-selector__image img.image-blurred{filter:blur(20px)}.image-selector__toggle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:var(--spacing-xs) var(--spacing-sm);background-color:#000000b3;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-lg);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2}.image-selector__toggle:hover{background-color:#000000d9;transform:translate(-50%,-50%) scale(1.1)}.image-selector__date{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:center;font-weight:var(--font-weight-medium)}.image-selector__check{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:24px;height:24px;background:var(--color-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;box-shadow:var(--shadow-md)}.image-selector__grid::-webkit-scrollbar{width:8px}.image-selector__grid::-webkit-scrollbar-track{background:var(--color-background);border-radius:var(--radius-sm)}.image-selector__grid::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}.image-selector__grid::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}@media(max-width:640px){.image-selector__grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-sm);max-height:300px}.image-selector__check{width:20px;height:20px;font-size:12px}}.image-compare-modal{display:flex;flex-direction:column;gap:var(--spacing-xl);min-height:400px}.image-compare-modal__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-md);min-height:400px;color:var(--color-text-secondary)}.loading-spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-compare-modal__comparison{width:100%;max-width:600px;margin:0 auto}.image-compare-modal__placeholder{padding:var(--spacing-xxl);text-align:center;color:var(--color-text-secondary);background:var(--color-background);border:2px dashed var(--color-border);border-radius:var(--radius-lg);min-height:300px;display:flex;align-items:center;justify-content:center}.image-compare-modal__placeholder p{font-size:var(--font-size-lg);margin:0}.image-compare-modal__selectors{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl)}.image-compare-modal__actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-divider)}@media(max-width:768px){.image-compare-modal__selectors{grid-template-columns:1fr;gap:var(--spacing-lg)}.image-compare-modal__comparison{max-width:100%}}.entries-page{padding:var(--spacing-xl) 0}.entries-page h2{margin:0 0 var(--spacing-lg) 0}.entries-page__header,.fields-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.entries-page__header h3,.fields-page__header h3{margin:0;font-size:var(--font-size-xl);color:var(--color-text-primary)}.entries-page__actions{display:flex;gap:var(--spacing-sm);align-items:center}@media(max-width:640px){.entries-page{padding:var(--spacing-lg) 0}.entries-page__header,.fields-page__header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.entries-page__actions{flex-direction:column;width:100%}}.line-chart{width:100%;padding:var(--spacing-md);background-color:var(--color-surface);border-radius:var(--radius-lg)}.line-chart__container{width:100%;height:400px;position:relative}.line-chart-empty{text-align:center;padding:var(--spacing-xxl) var(--spacing-md);color:var(--color-text-secondary)}.line-chart-empty p{margin-bottom:var(--spacing-sm)}.line-chart-empty__hint{font-size:var(--font-size-sm);color:var(--color-text-disabled)}@media(max-width:768px){.line-chart__container{height:300px}}.bar-chart{width:100%;padding:var(--spacing-md);background-color:var(--color-surface);border-radius:var(--radius-lg)}.bar-chart__container{width:100%;height:400px;position:relative}.bar-chart-empty{text-align:center;padding:var(--spacing-xxl) var(--spacing-md);color:var(--color-text-secondary)}.bar-chart-empty p{margin-bottom:var(--spacing-sm)}.bar-chart-empty__hint{font-size:var(--font-size-sm);color:var(--color-text-disabled)}@media(max-width:768px){.bar-chart__container{height:300px}}.pie-chart{width:100%;display:flex;flex-direction:column;gap:var(--spacing-lg)}.pie-chart__info{text-align:center;padding:var(--spacing-md);background:linear-gradient(135deg,#4a90e20d,#7c4dff0d);border-radius:var(--radius-md);border:1px solid var(--color-border)}.pie-chart__description{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.pie-chart__container{width:100%;height:400px;position:relative}.pie-chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:var(--spacing-xxl);text-align:center;background:var(--color-background);border:2px dashed var(--color-border);border-radius:var(--radius-lg)}.pie-chart-empty p{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.pie-chart-empty__hint{font-size:var(--font-size-sm)!important;color:var(--color-text-disabled)!important}@media(max-width:768px){.pie-chart__container{height:350px}}@media(max-width:640px){.pie-chart__container{height:300px}.pie-chart__info{padding:var(--spacing-sm)}.pie-chart__description{font-size:var(--font-size-xs)}.pie-chart-empty{min-height:300px;padding:var(--spacing-xl)}}.chart-filters{display:flex;flex-direction:column;gap:var(--spacing-lg)}.chart-filters-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.chart-filters-empty p{margin-bottom:var(--spacing-sm)}.chart-filters__section{padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md)}.chart-filters__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.chart-filters__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-md) 0;color:var(--color-text-primary)}.chart-filters__actions{display:flex;gap:var(--spacing-xs)}.chart-filters__fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-sm)}.chart-filters__field{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.chart-filters__field:hover{border-color:var(--color-primary);background-color:#4a90e20d}.chart-filters__field input[type=checkbox]{cursor:pointer}.chart-filters__presets{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.chart-filters__date-range{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.chart-filters__date-input{display:flex;flex-direction:column;gap:var(--spacing-xs)}.chart-filters__date-input label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.chart-filters__date-input input[type=date]{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-surface);transition:all var(--transition-fast)}.chart-filters__date-input input[type=date]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4a90e21a}.chart-filters__chart-types{display:flex;gap:var(--spacing-md)}.chart-filters__chart-type{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.chart-filters__chart-type:hover{border-color:var(--color-primary);background-color:#4a90e20d}.chart-filters__chart-type input[type=radio]{cursor:pointer}@media(max-width:768px){.chart-filters__section{padding:var(--spacing-md)}.chart-filters__fields{grid-template-columns:1fr;gap:var(--spacing-md)}.chart-filters__field{padding:var(--spacing-md);min-height:48px}.chart-filters__field input[type=checkbox]{width:20px;height:20px}.chart-filters__date-range{grid-template-columns:1fr;gap:var(--spacing-md)}.chart-filters__date-input input[type=date]{min-height:48px;font-size:16px}.chart-filters__chart-types{flex-direction:column;gap:var(--spacing-sm)}.chart-filters__chart-type{padding:var(--spacing-md);min-height:48px}.chart-filters__chart-type input[type=radio]{width:20px;height:20px}}@media(max-width:640px){.chart-filters__section{padding:var(--spacing-sm)}.chart-filters__title{font-size:var(--font-size-base)}}.chart-view{display:flex;flex-direction:column;gap:var(--spacing-lg)}.chart-view__filters,.chart-view__chart{background-color:var(--color-surface)}.chart-presets{margin-bottom:var(--spacing-xl)}.chart-presets__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0}.chart-presets__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0}.chart-presets__list{display:flex;flex-direction:column;gap:var(--spacing-md)}.chart-preset-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:linear-gradient(135deg,#4a90e20d,#7c4dff0d);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.chart-preset-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.chart-preset-card__icon{font-size:3rem;flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.chart-preset-card__content{flex:1;min-width:0}.chart-preset-card__name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0}.chart-preset-card__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-sm) 0;line-height:var(--line-height-normal)}.chart-preset-card__info{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.chart-preset-card__badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.chart-preset-card__badge--warning{background:#ff98001a;border-color:var(--color-warning);color:var(--color-warning)}@media(max-width:768px){.chart-preset-card{flex-direction:column;align-items:stretch;text-align:center;gap:var(--spacing-md)}.chart-preset-card__icon{width:100%;height:60px}.chart-preset-card__content{text-align:left}.chart-preset-card__info{justify-content:flex-start}}@media(max-width:640px){.chart-presets{margin-bottom:var(--spacing-lg)}.chart-preset-card{padding:var(--spacing-md)}.chart-preset-card__icon{font-size:2.5rem;height:50px}.chart-preset-card__name{font-size:var(--font-size-base)}.chart-preset-card__description{font-size:var(--font-size-xs)}}.charts-page{padding:var(--spacing-xl) 0}.charts-page h2{margin-bottom:var(--spacing-lg)}.charts-page__view-configs,.charts-page__presets{margin-bottom:var(--spacing-xl)}@media(max-width:640px){.charts-page{padding:var(--spacing-lg) 0}.charts-page h2{margin-bottom:var(--spacing-md)}.charts-page__view-configs,.charts-page__presets{margin-bottom:var(--spacing-lg)}.charts-page__section-header{flex-direction:column;align-items:flex-start}.view-config-quick-card{flex-direction:column;align-items:flex-start;text-align:left}.view-config-quick-card__content{width:100%}}.backup-page{padding:var(--spacing-xl) 0}.backup-page h2,.backup-page__card{margin-bottom:var(--spacing-lg)}.backup-page__card h3{margin-top:0;margin-bottom:var(--spacing-md)}.backup-page__card p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}.backup-page__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.backup-page__stat{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md)}.backup-page__stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.backup-page__stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.backup-page__actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.backup-page__result{margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md);border:1px solid var(--color-border)}.backup-page__result pre{margin:0;white-space:pre-wrap;font-size:var(--font-size-sm);color:var(--color-text-primary)}.backup-page__info{background-color:#4a90e20d;border:1px solid var(--color-primary)}.backup-page__info h3{color:var(--color-primary)}.backup-page__info ul{list-style:disc;padding-left:var(--spacing-lg)}.backup-page__info li{margin-bottom:var(--spacing-xs);color:var(--color-text-secondary)}@media(max-width:640px){.backup-page__actions{flex-direction:column}.backup-page__actions button{width:100%}}.view-configs-page{padding:var(--spacing-xl) 0;animation:fadeIn .3s ease-in}.view-configs-page__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl);gap:var(--spacing-lg)}.view-configs-page__header h2{margin:0 0 var(--spacing-sm) 0;color:var(--color-text)}.view-configs-page__description{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);max-width:600px}.view-configs-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.view-config-card{padding:var(--spacing-lg)!important;transition:all var(--transition-base)}.view-config-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.view-config-card__header{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.view-config-card__icon{font-size:2rem;flex-shrink:0}.view-config-card__info{flex:1}.view-config-card__name{margin:0 0 var(--spacing-xs) 0;color:var(--color-text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);display:flex;align-items:center;gap:var(--spacing-sm)}.view-config-card__badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.view-config-card__description{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.view-config-card__fields{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.view-config-card__chart-type{margin:var(--spacing-xs) 0 0 0;color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.view-config-card__actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.view-config-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.view-config-form__field{display:flex;flex-direction:column;gap:var(--spacing-sm)}.view-config-form__field label{font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--font-size-sm)}.view-config-form__field input[type=text],.view-config-form__field textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-surface);transition:all var(--transition-fast)}.view-config-form__field input[type=text]:focus,.view-config-form__field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.view-config-form__field textarea{resize:vertical;min-height:60px;font-family:inherit;line-height:var(--line-height-relaxed)}.icon-selector{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.icon-selector__item{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.icon-selector__item:hover{border-color:var(--color-primary);background:#4a90e226}.icon-selector__item--selected{border-color:var(--color-primary);background:#4a90e226;box-shadow:0 0 0 3px #4a90e226}.chart-type-selector{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.chart-type-selector__item{flex:1;min-width:150px;display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.chart-type-selector__item:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.chart-type-selector__item input[type=radio]{cursor:pointer}.chart-type-selector__item input[type=radio]:checked+span{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.chart-type-selector__item:has(input[type=radio]:checked){border-color:var(--color-primary);background:var(--color-primary-light)}.field-selector{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:300px;overflow-y:auto;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-hover)}.field-selector__item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.field-selector__item:hover{background:var(--color-surface)}.field-selector__item input[type=checkbox]{cursor:pointer}.field-selector__item span{color:var(--color-text);font-size:var(--font-size-base)}.view-config-form__error{padding:var(--spacing-sm) var(--spacing-md);background:#fee;color:#c00;border-radius:var(--radius-md);font-size:var(--font-size-sm)}.view-config-form__actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}@media(max-width:640px){.view-configs-page__header{flex-direction:column;align-items:stretch}.view-config-card__header,.view-config-card__actions{flex-direction:column}.icon-selector{justify-content:center}}.image-comparison-page{padding:var(--spacing-xl) 0;animation:fadeIn .3s ease-in}.image-comparison-page h2{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-primary)}@media(max-width:640px){.image-comparison-page{padding:var(--spacing-lg) 0}.image-comparison-page__subtitle{font-size:var(--font-size-base)}.image-comparison-page__time-selector{gap:var(--spacing-md)}.time-input-group{flex-direction:column;align-items:stretch}.time-input{width:100%}.time-unit-selector,.image-comparison-page__dates,.selection-mode-toggle{flex-direction:column}.image-comparison-page__selectors{grid-template-columns:1fr;gap:var(--spacing-lg)}}.analytics-page{padding:var(--spacing-xl) 0}.analytics-page h2{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-primary)}.analytics-page__charts{animation:fadeIn .3s ease-in}.charts-page__view-configs{margin-bottom:var(--spacing-xl)}.charts-page__section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.charts-page__section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0}.charts-page__section-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.charts-page__view-config-list{display:grid;gap:var(--spacing-md)}.view-config-quick-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-background);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all .2s ease}.view-config-quick-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.view-config-quick-card__icon{font-size:2rem;flex-shrink:0}.view-config-quick-card__content{flex:1;min-width:0}.view-config-quick-card__name{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0}.view-config-quick-card__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-xs) 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.view-config-quick-card__badges{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.view-config-quick-card__badge{display:inline-block;font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-surface);padding:2px 8px;border-radius:var(--radius-sm)}.view-config-quick-card__badge--primary{color:#fff;background:var(--color-primary);font-weight:var(--font-weight-medium)}.analytics-page__image-comparison{animation:fadeIn .3s ease-in}.image-comparison-page__subtitle{margin:0 0 var(--spacing-xl) 0;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.image-comparison-page__empty{text-align:center;padding:var(--spacing-xxl)}.image-comparison-page__empty p{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg)}.image-comparison-page__empty-hint{color:var(--color-text-secondary);font-size:var(--font-size-base)!important}.image-comparison-page__controls{margin-bottom:var(--spacing-xl)}.image-comparison-page__controls h3{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-primary)}.image-comparison-page__controls-description{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.image-comparison-page__time-selector{display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-background);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.time-input-group{display:flex;align-items:center;gap:var(--spacing-md)}.time-input-group label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-lg)}.time-input{width:100px;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);background:var(--color-surface);text-align:center;transition:all var(--transition-fast)}.time-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.time-unit-selector{display:flex;gap:var(--spacing-sm)}.time-unit-btn{flex:1;padding:var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.time-unit-btn:hover{border-color:var(--color-primary);background:#4a90e226;color:var(--color-text-primary)}.time-unit-btn--active{border-color:var(--color-primary);background:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold)}.image-comparison-page__info{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--color-surface);border-radius:var(--radius-sm);border-left:4px solid var(--color-primary)}.image-comparison-page__info p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.image-comparison-page__info strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.image-comparison-page__result{margin-bottom:var(--spacing-xl)}.image-comparison-page__result h3{margin:0 0 var(--spacing-md) 0;color:var(--color-text-primary)}.image-comparison-page__dates{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.date-badge{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.date-badge--before{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.date-badge--after{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.image-comparison-page__compare{margin-bottom:var(--spacing-lg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.image-comparison-page__hint{margin:0;text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.selection-mode-toggle{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.mode-btn{flex:1;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.mode-btn:hover{border-color:var(--color-primary);background:#4a90e20d;transform:translateY(-1px)}.mode-btn--active{border-color:var(--color-primary);background:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md)}.image-comparison-page__manual-selection{margin-bottom:var(--spacing-xl)}.image-comparison-page__manual-selection h3{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-primary)}.image-comparison-page__selectors{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin:var(--spacing-lg) 0}.image-comparison-page__manual-actions{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-background);border-radius:var(--radius-md)}.image-comparison-page__manual-hint{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.analytics-page{padding:var(--spacing-md) 0}.analytics-page h2{margin-bottom:var(--spacing-md);padding:0 var(--spacing-md)}.analytics-page .container{padding:0 var(--spacing-md)}.charts-page__section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.view-config-quick-card{flex-direction:column;align-items:flex-start;text-align:left;padding:var(--spacing-md)}.view-config-quick-card__content{width:100%}.view-config-quick-card__icon{font-size:1.5rem}.time-unit-btn,.mode-btn{min-height:48px;padding:var(--spacing-md)}}@media(max-width:640px){.analytics-page{padding:var(--spacing-sm) 0}.analytics-page h2{font-size:var(--font-size-2xl)}.image-comparison-page__subtitle{font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.image-comparison-page__time-selector{gap:var(--spacing-md);padding:var(--spacing-md)}.time-input-group{flex-direction:column;align-items:stretch}.time-input{width:100%;font-size:1.2rem;padding:var(--spacing-md)}.time-unit-selector{flex-direction:column}.image-comparison-page__dates{flex-direction:column;gap:var(--spacing-sm)}.selection-mode-toggle{flex-direction:column}.image-comparison-page__selectors{grid-template-columns:1fr;gap:var(--spacing-lg)}.charts-page__view-config-list{gap:var(--spacing-sm)}}.app{min-height:100vh;display:flex;flex-direction:column}.app__main{flex:1;background-color:var(--color-background)}.app__error{background-color:#f443361a;border:1px solid var(--color-error);border-radius:var(--radius-md);padding:var(--spacing-md);margin:var(--spacing-md);color:var(--color-error);text-align:center}.app__error p{margin:0}.app__page{min-height:100%}@media(max-width:768px){.app__main{padding-bottom:80px}.app h1{font-size:var(--font-size-2xl);line-height:1.2}.app h2{font-size:var(--font-size-xl);line-height:1.3}.app h3{font-size:var(--font-size-lg);line-height:1.4}.app h4{font-size:var(--font-size-base);line-height:1.4}.app p{font-size:var(--font-size-base);line-height:1.6}.app .container{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}}@media(max-width:640px){.app__main{padding-bottom:70px}.app h1{font-size:var(--font-size-xl)}.app h2{font-size:var(--font-size-lg)}.app .container{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}}:root{--color-primary: #4A90E2;--color-primary-dark: #3A7BC8;--color-primary-light: #6BA9F0;--color-secondary: #7C4DFF;--color-secondary-dark: #651FFF;--color-secondary-light: #9575CD;--color-success: #4CAF50;--color-error: #F44336;--color-danger: #F44336;--color-warning: #FF9800;--color-info: #2196F3;--color-text-primary: #212121;--color-text-secondary: #757575;--color-text-disabled: #BDBDBD;--color-border: #E0E0E0;--color-divider: #EEEEEE;--color-background: #FAFAFA;--color-surface: #FFFFFF;--color-surface-hover: #F5F5F5;--color-overlay: rgba(0, 0, 0, .5);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-mono: "SF Mono", "Monaco", "Inconsolata", "Fira Code", "Droid Sans Mono", "Source Code Pro", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.0625rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px}[data-theme=dark]{--color-primary: #6BA9F0;--color-primary-dark: #4A90E2;--color-primary-light: #8DC5FF;--color-secondary: #9575CD;--color-secondary-dark: #7C4DFF;--color-secondary-light: #B39DDB;--color-success: #66BB6A;--color-error: #EF5350;--color-danger: #EF5350;--color-warning: #FFA726;--color-info: #42A5F5;--color-text-primary: #E0E0E0;--color-text-secondary: #B0B0B0;--color-text-disabled: #757575;--color-border: #404040;--color-divider: #303030;--color-background: #121212;--color-surface: #1E1E1E;--color-surface-hover: #2A2A2A;--color-overlay: rgba(0, 0, 0, .7);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .6)}.animate-fade-in{animation:fadeIn var(--transition-base)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in-up{animation:slideInUp var(--transition-base)}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-in-down{animation:slideInDown var(--transition-base)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn var(--transition-base)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-bounce{animation:bounce .6s ease-in-out}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.animate-shake{animation:shake .5s ease-in-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate-fade-out{animation:fadeOut var(--transition-base)}.stagger-children>*{animation:slideInUp var(--transition-base)}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:50ms}.stagger-children>*:nth-child(3){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.15s}.stagger-children>*:nth-child(5){animation-delay:.2s}.stagger-children>*:nth-child(6){animation-delay:.25s}.stagger-children>*:nth-child(7){animation-delay:.3s}.stagger-children>*:nth-child(8){animation-delay:.35s}.stagger-children>*:nth-child(9){animation-delay:.4s}.stagger-children>*:nth-child(10){animation-delay:.45s}.hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.hover-lift:active{transform:translateY(0)}a,button,input,select,textarea{transition:all var(--transition-fast)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-background);min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--spacing-md)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark);text-decoration:underline}input,textarea,select,button{font-family:inherit;font-size:inherit;line-height:inherit}button{cursor:pointer;border:none;background:none}button:disabled{cursor:not-allowed;opacity:.6}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-disabled)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--spacing-md)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-spin{animation:spin 1s linear infinite}.animate-fadeIn{animation:fadeIn var(--transition-base)}.animate-slideUp{animation:slideUp var(--transition-slow)}
