@charset "UTF-8";.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--jp-z-overlay);display:none}.sidebar{width:240px;height:100vh;background:var(--jp-bg-sidebar);position:fixed;left:0;top:0;z-index:1000;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.06)}.logo{padding:28px 24px 24px;border-bottom:1px solid rgba(255,255,255,.06)}.logo h1{font-size:16px;font-weight:500;color:var(--jp-text-inverse);letter-spacing:.02em}.logo h1 span{color:var(--jp-accent)}.nav{flex:1;padding:12px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--jp-radius-sm);color:#ffffff8c;text-decoration:none;font-size:13px;font-weight:400;font-family:var(--jp-font-sans);transition:all var(--jp-transition-fast);position:relative;border:none;background:none;width:100%;text-align:left;cursor:pointer}.nav-item svg{width:18px;height:18px;flex-shrink:0;opacity:.7}.nav-item:hover{color:#ffffffd9;background:#ffffff0d}.nav-item:hover svg{opacity:1}.nav-item.active{color:var(--jp-accent);background:#c9a87c1a;font-weight:500}.nav-item.active svg{opacity:1;color:var(--jp-accent)}.nav-item.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:var(--jp-accent);border-radius:0 2px 2px 0;transition:all var(--jp-transition-base)}.support-section{padding:12px;border-top:1px solid rgba(255,255,255,.06)}.support-link{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:var(--jp-radius-sm);color:#ffffff73;text-decoration:none;transition:all var(--jp-transition-fast);font-size:12px;background:#ffffff08}.support-link:hover{background:#ffffff0f;color:var(--jp-accent)}.support-label{display:flex;align-items:center;gap:8px}.support-email{font-size:10px;color:#ffffff4d;word-break:break-all}.desktop-sidebar{display:flex}.mobile-sidebar{display:none;z-index:var(--jp-z-overlay)}.mobile-header{display:none;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06);justify-content:space-between;align-items:center}.close-button{background:none;border:none;cursor:pointer;color:#fff9;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:var(--jp-radius-sm);transition:all var(--jp-transition-fast)}.close-button:hover{background:#ffffff14;color:#ffffffe6}.mobile-sidebar.open{transform:translate(0)}@media (max-width: 768px){.mobile-overlay{display:block}.desktop-sidebar{display:none}.mobile-sidebar{display:flex;transform:translate(-100%);transition:transform var(--jp-transition-base)}.mobile-sidebar.open{transform:translate(0)}.mobile-header{display:flex}.logo{display:none}}@media (max-width: 480px){.mobile-sidebar{width:100%}.nav-item{padding:12px 14px;font-size:14px}.nav-item span{flex:1}.support-section{padding:10px}.support-link{padding:8px 12px;font-size:11px}.support-email{font-size:10px}}.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:.375em;border-bottom-right-radius:.375em}.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,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.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,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.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__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.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:.5em;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:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;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:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.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:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);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:2.125em;line-height:2.125em;text-align:center;margin:.208em}.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:2.125em;line-height:2.125em;text-align:center;margin:.208em}.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;color:#fff}.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:.625em;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__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;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}.react-datepicker-popper-offset{margin-top:-.7em}.react-datepicker-wrapper{width:100%;position:relative}.react-datepicker-popper{z-index:99999!important}.react-datepicker-popper[data-placement^=top]{padding-bottom:10px!important}.react-datepicker-popper[data-placement^=bottom]{padding-top:10px!important}.react-datepicker__month-year-dropdown,.react-datepicker__year-dropdown,.react-datepicker__month-dropdown{z-index:100000!important}.react-datepicker__triangle{display:none!important}.react-datepicker__input-container input{width:100%!important;padding:10px 12px!important;border:1px solid #dee2e6!important;border-radius:var(--jp-radius-lg)!important;font-size:14px!important;transition:all .3s ease!important;background:#fff!important;cursor:pointer!important;position:relative!important;z-index:1!important}.react-datepicker__input-container input:focus{outline:none!important;border-color:#667eea!important;box-shadow:0 0 0 3px #667eea1a!important}.react-datepicker__input-container input:hover{border-color:#667eea!important}.react-datepicker__input-container input::placeholder{color:#adb5bd!important}.react-datepicker{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;border-radius:var(--jp-radius-lg)!important;border:none!important;box-shadow:0 10px 40px #0003!important;overflow:hidden!important;z-index:99999!important;position:relative!important}.react-datepicker__header{background:var(--jp-primary)!important;border-bottom:none!important;border-radius:var(--jp-radius-lg) 12px 0 0!important;padding:15px!important}.react-datepicker__current-month{color:#fff!important;font-size:16px!important;font-weight:600!important;margin-bottom:5px!important;text-transform:capitalize}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{display:inline-block;font-size:14px;font-weight:600;color:#fff!important;cursor:pointer;transition:all .2s ease}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{color:#ffffffe6!important}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown{background:#fff;border:1px solid #dee2e6;border-radius:var(--jp-radius-lg);box-shadow:var(--jp-shadow-lg);max-height:200px;overflow-y:auto}.react-datepicker__year-option,.react-datepicker__month-option{padding:8px 16px;cursor:pointer;transition:all .2s ease;font-size:13px}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover{background:#f8f9fa}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected{background:var(--jp-primary);color:#fff;font-weight:600}.react-datepicker__navigation{top:20px!important;width:32px!important;height:32px!important;border-radius:var(--jp-radius-lg)!important;transition:all .3s ease!important;border:none!important}.react-datepicker__navigation:hover{background:#fff3!important;transform:scale(1.1)!important}.react-datepicker__navigation-icon:before{border-color:#fff!important;border-width:2px 2px 0 0!important;height:8px!important;width:8px!important;top:11px!important}.react-datepicker__navigation--previous{left:15px!important}.react-datepicker__navigation--next{right:15px!important}.react-datepicker__day-names{margin-top:10px!important;display:flex!important;justify-content:space-around}.react-datepicker__day-name{color:#667eea!important;font-size:12px!important;font-weight:600!important;width:36px!important;height:36px!important;line-height:36px!important;text-transform:uppercase;letter-spacing:.5px}.react-datepicker__month{margin:10px!important}.react-datepicker__week{display:flex!important}.react-datepicker__week-number{color:#667eea!important;font-weight:600!important;font-size:12px!important;width:36px!important;height:36px!important;line-height:36px!important}.react-datepicker__day{width:36px!important;height:36px!important;border-radius:50%!important;color:#495057!important;font-size:13px!important;line-height:36px!important;transition:all .2s ease!important;margin:2px!important;cursor:pointer!important}.react-datepicker__day:hover{background:#667eea!important;color:#fff!important;transform:scale(1.1)!important;box-shadow:0 4px 8px #667eea4d!important}.react-datepicker__day--selected{background:var(--jp-primary)!important;color:#fff!important;font-weight:600!important;box-shadow:0 4px 8px #667eea4d!important}.react-datepicker__day--keyboard-selected{background:#667eea!important;color:#fff!important}.react-datepicker__day--today{border:2px solid #667eea!important;font-weight:600!important}.react-datepicker__day--disabled{color:#dee2e6!important;cursor:not-allowed!important;background:#f8f9fa!important}.react-datepicker__day--disabled:hover{background:#f8f9fa!important;transform:none!important;color:#dee2e6!important}.react-datepicker__day--outside-month{color:#adb5bd!important}.react-datepicker__month-text{width:80px!important;height:40px!important;border-radius:var(--jp-radius-lg)!important;color:#495057!important;font-size:13px!important;line-height:40px!important;transition:all .2s ease!important;margin:4px!important;cursor:pointer!important;font-weight:500!important}.react-datepicker__month-text:hover{background:#667eea!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 4px 8px #667eea4d!important}.react-datepicker__month-text--selected{background:var(--jp-primary)!important;color:#fff!important;font-weight:600!important;box-shadow:0 4px 8px #667eea4d!important}.react-datepicker__month-text--keyboard-selected{background:#667eea!important;color:#fff!important}.react-datepicker__month-year-dropdown-container--scroll .react-datepicker__month-year-option{padding:8px 12px;cursor:pointer;transition:all .2s ease;font-size:13px}.react-datepicker__month-year-dropdown-container--scroll .react-datepicker__month-year-option:hover{background:#f8f9fa}.react-datepicker__month-year-dropdown-container--scroll .react-datepicker__month-year-option--selected{background:var(--jp-primary);color:#fff;font-weight:600}.react-datepicker__quarter-text{width:100px!important;height:40px!important;border-radius:var(--jp-radius-lg)!important;color:#495057!important;font-size:13px!important;line-height:40px!important;transition:all .2s ease!important;margin:4px!important;cursor:pointer!important}.react-datepicker__quarter-text:hover{background:#667eea!important;color:#fff!important;transform:translateY(-2px)!important}.react-datepicker__quarter-text--selected{background:var(--jp-primary)!important;color:#fff!important;font-weight:600!important}.react-datepicker__time-container{border-left:1px solid #dee2e6!important;width:80px!important}.react-datepicker__time{background:#fff!important}.react-datepicker__time-header{display:none!important}.react-datepicker__time-list{overflow-y:auto!important;max-height:200px!important}.react-datepicker__time-list-item{padding:8px 12px!important;font-size:13px!important;height:36px!important;line-height:36px!important;cursor:pointer!important;transition:all .2s ease!important;border-radius:4px!important;margin:2px 4px!important}.react-datepicker__time-list-item:hover{background:#f8f9fa!important}.react-datepicker__time-list-item--selected{background:var(--jp-primary)!important;color:#fff!important;font-weight:600!important}.react-datepicker__time-list-item--disabled{color:#dee2e6!important;cursor:not-allowed!important}.react-datepicker__today-button{background:var(--jp-primary)!important;border:none!important;border-radius:0 0 12px 12px!important;color:#fff!important;font-weight:600!important;padding:12px!important;font-size:14px!important;transition:all .3s ease!important;cursor:pointer!important}.react-datepicker__today-button:hover{background:var(--jp-primary)!important;transform:translateY(-2px)!important}@keyframes datepickerFadeIn{0%{opacity:0}to{opacity:1}}.react-datepicker-popper{animation:datepickerFadeIn .2s ease!important}@media (max-width: 768px){.react-datepicker{font-size:13px!important}.react-datepicker__day,.react-datepicker__day-name{width:32px!important;height:32px!important;line-height:32px!important}.react-datepicker__month-text{width:70px!important;height:36px!important;line-height:36px!important}}.react-datepicker__year-dropdown::-webkit-scrollbar,.react-datepicker__month-dropdown::-webkit-scrollbar,.react-datepicker__time-list::-webkit-scrollbar{width:6px}.react-datepicker__year-dropdown::-webkit-scrollbar-track,.react-datepicker__month-dropdown::-webkit-scrollbar-track,.react-datepicker__time-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.react-datepicker__year-dropdown::-webkit-scrollbar-thumb,.react-datepicker__month-dropdown::-webkit-scrollbar-thumb,.react-datepicker__time-list::-webkit-scrollbar-thumb{background:#667eea;border-radius:3px}.react-datepicker__year-dropdown::-webkit-scrollbar-thumb:hover,.react-datepicker__month-dropdown::-webkit-scrollbar-thumb:hover,.react-datepicker__time-list::-webkit-scrollbar-thumb:hover{background:#764ba2}.payment-records-container{padding:24px;width:100%;margin:0 auto;background:var(--jp-bg-thead);min-height:100vh}.payment-records-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px;background:#fff;border-radius:var(--jp-radius-lg);box-shadow:0 4px 6px #0000001a}.payment-records-title{display:flex;align-items:center;gap:12px}.title-icon{color:#667eea}.payment-records-title h1{margin:0;font-size:28px;font-weight:600;color:var(--jp-text-heading)}.payment-records-actions{display:flex;gap:12px;align-items:center}.user-filter-select{padding:8px 12px;border:1px solid #dee2e6;border-radius:var(--jp-radius-lg);font-size:14px;min-width:200px;max-width:350px;cursor:pointer;transition:border-color .3s ease;background:#fff}.user-filter-select:hover{border-color:#667eea}.user-filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.records-table-container{background:#fff;border-radius:var(--jp-radius-lg);box-shadow:0 4px 6px #0000001a;overflow:hidden;margin-bottom:24px}.records-table{width:100%;border-collapse:collapse;table-layout:fixed}.records-table thead{background:#f8f9fa}.records-table th{padding:16px;text-align:left;font-weight:600;font-size:14px;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.records-table th:nth-child(1){width:5%}.records-table th:nth-child(2){width:12%}.records-table th:nth-child(3){width:8%}.records-table th:nth-child(4){width:12%}.records-table th:nth-child(5){width:18%}.records-table th:nth-child(6){width:10%}.records-table th:nth-child(7){width:15%}.records-table th:nth-child(8){width:20%}.records-table td{padding:14px 16px;border-bottom:1px solid #e9ecef;font-size:14px;color:#212529}.records-table tbody tr{transition:background-color .2s ease}.records-table tbody tr:hover{background-color:#f8f9fa}.username-badge{display:inline-block;background:var(--jp-primary);color:#fff;padding:4px 12px;border-radius:var(--jp-radius-xl);font-size:12px;font-weight:500}.amount-cell{font-weight:600;color:#f5576c;font-size:16px}.remark-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6c757d}.loading-cell,.empty-cell{text-align:center!important;color:#6c757d;font-size:16px;padding:60px 20px}.create-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal-content{background:#fff;border-radius:var(--jp-radius-xl);max-width:700px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative;z-index:10001}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#495057}.required{color:#dc3545}.form-input,.date-picker-input{padding:10px 12px;border:1px solid #dee2e6;border-radius:var(--jp-radius-lg);font-size:14px;transition:all .3s ease;background:#fff;width:100%}.form-input:focus,.date-picker-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e9ecef}.invoices-container{padding:32px;max-width:100%;width:100%;margin:0 auto;background:var(--jp-bg-thead);min-height:100vh}.invoices-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:24px 28px;background:var(--jp-bg-card);border-radius:var(--jp-radius-xl);box-shadow:var(--jp-shadow-sm)}.invoices-title{display:flex;align-items:center;gap:12px}.title-icon{color:var(--jp-primary)}.invoices-title h1{margin:0;font-size:28px;font-weight:600;color:var(--jp-text-heading)}.invoices-actions{display:flex;gap:12px}.search-container{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding:16px 20px;background:#fff;border-radius:var(--jp-radius-lg);box-shadow:0 1px 3px #0000001a}.search-input-wrapper{flex:1;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--jp-text-muted);pointer-events:none}.search-input{width:100%;padding:10px 40px 10px 36px;border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:14px;outline:none;transition:all .2s}.search-input:focus{border-color:var(--jp-accent);box-shadow:0 0 0 2px var(--jp-accent-50)}.search-clear-btn{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--jp-border-light);border:none;border-radius:50%;cursor:pointer;color:var(--jp-text-muted);transition:all .2s}.search-clear-btn:hover{background:var(--jp-border);color:var(--jp-text-secondary)}.search-hint{font-size:13px;color:var(--jp-text-muted)}.filter-select{padding:10px 12px;border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:14px;background:#fff;outline:none;cursor:pointer;transition:all .2s;min-width:200px}.filter-select:focus{border-color:var(--jp-accent);box-shadow:0 0 0 2px var(--jp-accent-50)}.generate-panel{background:#fff;border-radius:var(--jp-radius-lg);margin-bottom:24px;padding:20px;box-shadow:0 4px 6px #0000001a}.generate-form{display:flex;gap:20px;align-items:flex-end}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:#fff;border-radius:var(--jp-radius-lg);padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 6px #0000001a;transition:transform .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 12px #00000026}.stat-icon{width:56px;height:56px;border-radius:var(--jp-radius-lg);display:flex;align-items:center;justify-content:center;color:#fff}.stat-icon.total-invoices,.stat-icon.total-cost,.stat-icon.total-impressions,.stat-icon.total-clicks{background:var(--jp-primary)}.stat-value{font-size:28px;font-weight:600;color:var(--jp-text-heading);margin-bottom:4px}.stat-label{font-size:14px;color:#6c757d}.invoices-table-container{background:#fff;border-radius:var(--jp-radius-lg);box-shadow:0 4px 6px #0000001a;overflow:hidden;margin-bottom:24px}.invoices-table{width:100%;border-collapse:collapse;table-layout:fixed}.invoices-table thead{background:#f8f9fa}.invoices-table th{padding:14px 12px;text-align:left;font-weight:600;font-size:14px;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.invoices-table th:nth-child(1){width:5%}.invoices-table th:nth-child(2){width:12%}.invoices-table th:nth-child(3){width:10%}.invoices-table th:nth-child(4){width:10%}.invoices-table th:nth-child(5){width:10%}.invoices-table th:nth-child(6){width:8%}.invoices-table th:nth-child(7){width:10%}.invoices-table th:nth-child(8){width:8%}.invoices-table th:nth-child(9){width:9%}.invoices-table th:nth-child(10){width:10%}.invoices-table th:nth-child(11){width:8%}.invoices-table td{padding:14px 12px;border-bottom:1px solid #e9ecef;font-size:14px;color:#212529;overflow:hidden}.invoices-table tbody tr{transition:background-color .2s ease}.invoices-table tbody tr:hover{background-color:#f8f9fa}.cost-cell{font-weight:600;color:#f5576c}.status-badge{display:inline-block;padding:6px 12px;border-radius:var(--jp-radius-xl);font-size:12px;font-weight:500;cursor:default}.status-badge.clickable{cursor:pointer;transition:all .3s ease}.status-badge.clickable:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.loading-cell,.empty-cell{text-align:center!important;color:#6c757d;font-size:16px}.action-cell{display:flex;align-items:center;justify-content:center;width:100%}.paid-indicator{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:#10b981;color:#fff;border-radius:50%;font-size:18px;font-weight:700}.status-select{padding:5px 8px;border:1px solid #dee2e6;border-radius:6px;font-size:12px;cursor:pointer;transition:all .3s ease;background:#fff;width:100%;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.status-select option[value=pending]{color:#f59e0b}.status-select option[value=generated]{color:#3b82f6}.status-select option[value=paid]{color:#10b981}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-bottom:24px}.pagination-button{padding:10px 20px;background:#fff;border:1px solid #dee2e6;border-radius:var(--jp-radius-lg);cursor:pointer;font-size:14px;transition:all .3s ease}.pagination-button:hover:not(:disabled){background:#f8f9fa;border-color:#667eea;color:#667eea}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:14px;color:#6c757d}.invoice-detail-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal-content{background:#fff;border-radius:var(--jp-radius-xl);max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative;z-index:10001}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #e9ecef}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--jp-text-heading)}.modal-body{padding:24px;overflow-y:auto;overflow-x:visible;flex:1}.invoice-info{background:#f8f9fa;border-radius:var(--jp-radius-lg);padding:20px;margin-bottom:24px}.info-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e9ecef}.info-row:last-child{border-bottom:none}.info-label{font-size:14px;color:#6c757d;font-weight:500}.info-value{font-size:14px;color:#212529;font-weight:600}.info-value.cost-value{font-size:18px;color:#f5576c}.invoice-items-table h3{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--jp-text-heading)}.items-table{width:100%;border-collapse:collapse;table-layout:fixed}.items-table thead{background:#f8f9fa}.items-table th{padding:12px;text-align:left;font-weight:600;font-size:13px;color:#495057;border-bottom:2px solid #dee2e6}.items-table th:nth-child(1){width:25%}.items-table th:nth-child(2){width:20%}.items-table th:nth-child(3){width:15%}.items-table th:nth-child(4){width:15%}.items-table th:nth-child(5){width:10%}.items-table th:nth-child(6){width:15%}.items-table td{padding:12px;border-bottom:1px solid #e9ecef;font-size:13px;color:#212529}.items-table tbody tr:hover{background-color:#f8f9fa}.loading-detail{text-align:center;padding:40px;color:#6c757d;font-size:14px}.system-logs-container{padding:24px;max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{font-size:28px;font-weight:600;color:var(--jp-text-heading)}.filters-section{margin-bottom:24px}.btn-filter{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--jp-border);background:#fff;border-radius:var(--jp-radius-lg);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;color:#333}.btn-filter:hover{border-color:var(--jp-accent);color:var(--jp-accent)}.filters-form{display:flex;gap:16px;margin-top:16px;padding:20px;background:#fff;border-radius:var(--jp-radius-lg);box-shadow:0 1px 3px #0000001a;flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{font-size:13px;font-weight:500;color:var(--jp-text-secondary)}.filter-group input{padding:8px 12px;border:1px solid var(--jp-border);border-radius:6px;font-size:14px;transition:all .2s;min-width:200px}.filter-group input:focus{outline:none;border-color:var(--jp-accent);box-shadow:0 0 0 2px var(--jp-accent-50)}.filter-actions{display:flex;gap:8px;margin-left:auto}.logs-table-wrapper{background:#fff;border-radius:var(--jp-radius-md);box-shadow:var(--jp-shadow-sm);overflow-x:auto}.logs-table{width:100%;border-collapse:collapse;table-layout:fixed}.logs-table thead{background:var(--jp-bg-muted)}.logs-table th{padding:16px;text-align:left;font-size:13px;font-weight:600;color:var(--jp-text-secondary);border-bottom:1px solid var(--jp-border-light);white-space:nowrap}.logs-table td{padding:16px;border-bottom:1px solid var(--jp-border-light);font-size:14px;color:var(--jp-text-heading)}.logs-table tbody tr:hover{background:var(--jp-bg-muted)}.username-cell{font-weight:500;color:var(--jp-accent);width:12%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-cell{font-size:13px;color:var(--jp-text-muted);white-space:nowrap;width:18%}.logs-table th:nth-child(3),.logs-table td:nth-child(3){text-align:center}.method-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap}.method-get{background:var(--jp-info-bg);color:var(--jp-accent);border:1px solid #91d5ff}.method-post{background:var(--jp-success-bg);color:var(--jp-success);border:1px solid #b7eb8f}.method-put{background:var(--jp-warning-bg);color:#faad14;border:1px solid #ffe58f}.method-delete{background:var(--jp-danger-bg);color:#f5222d;border:1px solid #ffa39e}.method-default{background:var(--jp-bg-muted);color:var(--jp-text-muted);border:1px solid var(--jp-border)}.path-cell{font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;color:var(--jp-text-secondary);width:20%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-cell{width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expand-link{color:var(--jp-accent);cursor:pointer;font-size:13px;margin-left:4px}.expand-link:hover{text-decoration:underline}.ip-cell{font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;color:var(--jp-text-secondary);width:13%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actions-cell{white-space:nowrap;width:12%}.btn-icon{padding:6px 12px;border:1px solid var(--jp-border);background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;color:var(--jp-text-secondary);font-size:13px}.btn-icon:hover{border-color:var(--jp-accent);color:var(--jp-accent)}.expanded-row{background:var(--jp-bg-muted)}.expanded-content{padding:20px;display:grid;gap:20px}.expanded-section h4{font-size:13px;font-weight:600;color:var(--jp-text-secondary);margin-bottom:8px}.code-block{background:var(--jp-bg-muted);padding:12px 16px;border-radius:6px;font-family:Monaco,Menlo,Courier New,monospace;font-size:12px;color:var(--jp-text-heading);overflow-x:auto;white-space:pre-wrap;word-break:break-word;margin:0;max-height:400px;overflow-y:auto}.loading-cell,.empty-cell{text-align:center;color:var(--jp-text-muted);padding:48px}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.btn-pagination{padding:8px 20px;border:1px solid var(--jp-border);background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;color:#333;font-size:14px}.btn-pagination:hover:not(:disabled){border-color:var(--jp-accent);color:var(--jp-accent)}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:14px;color:var(--jp-text-secondary)}@media (max-width: 768px){.system-logs-container{padding:16px}.page-header h1{font-size:22px}.filters-form{flex-direction:column}.filter-group input{min-width:100%;width:100%}.filter-actions{margin-left:0;width:100%}.filter-actions .btn{flex:1}}.page-container{padding:24px;max-width:1400px;position:relative}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.page-header-left{display:flex;align-items:center;gap:12px}.page-header-icon{color:var(--jp-primary);flex-shrink:0;margin-top:2px}.page-title-inner{font-size:28px;font-weight:600;color:var(--jp-text-heading);margin:0 0 2px}.page-subtitle{font-size:13px;color:#6b7280;margin:0}.filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:row;align-items:center;gap:8px}.filter-group label{font-size:13px;font-weight:500;color:var(--jp-text-body);white-space:nowrap}.filter-group select{padding:6px 10px;border:1px solid var(--jp-border);border-radius:6px;font-size:13px;background:#fff;color:var(--jp-text-body);cursor:pointer}.total-count{font-size:13px;color:#6b7280;margin-left:auto}.table-card{background:#fff;border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);overflow:hidden;margin-bottom:16px}.data-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.data-table thead tr{background:#f9fafb;border-bottom:1px solid var(--jp-border)}.data-table th{padding:11px 14px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.ssp-manage-container .data-table th:nth-child(1){width:15%}.ssp-manage-container .data-table th:nth-child(2){width:18%}.ssp-manage-container .data-table th:nth-child(3){width:14%}.ssp-manage-container .data-table th:nth-child(4){width:90px!important}.ssp-manage-container .data-table th:nth-child(5){width:90px!important}.ssp-manage-container .data-table th:nth-child(6){width:12%}.ssp-manage-container .data-table th:nth-child(7){width:13%}.ssp-manage-container .data-table th:nth-child(8){width:12%}.data-table td:nth-child(4),.data-table td:nth-child(5){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ssp-manage-container .data-table td:nth-child(1){width:15%}.ssp-manage-container .data-table td:nth-child(2){width:18%}.ssp-manage-container .data-table td:nth-child(3){width:14%}.ssp-manage-container .data-table td:nth-child(4){width:90px!important}.ssp-manage-container .data-table td:nth-child(5){width:90px!important}.ssp-manage-container .data-table td:nth-child(6){width:12%}.ssp-manage-container .data-table td:nth-child(7){width:13%}.ssp-manage-container .data-table td:nth-child(8){width:12%}.data-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .15s}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:#f9fafb}.data-table td{padding:12px 14px;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table td.endpoint-cell,.data-table td.cell-name{white-space:normal}.data-table td .slug-code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-name{display:flex;flex-direction:column;gap:2px}.cell-name strong{font-weight:600;color:#111827}.cell-desc{font-size:12px;color:var(--jp-text-muted)}.endpoint-cell{display:flex;align-items:center;gap:6px}.slug-code{font-family:Menlo,Monaco,Courier New,monospace;font-size:11px;background:#f3f4f6;color:var(--jp-text-body);padding:3px 7px;border-radius:4px;border:1px solid var(--jp-border)}.protocol-badge{font-size:11px;font-weight:600;background:var(--jp-accent-50);color:#c9a87c;padding:2px 8px;border-radius:var(--jp-radius-md)}.auction-badge{font-size:11px;font-weight:500;background:#e0f2fe;color:#0369a1;padding:2px 8px;border-radius:var(--jp-radius-md)}.qps-value{font-size:13px;color:var(--jp-text-body)}.unlimited{color:var(--jp-text-muted);font-style:italic}.api-key-cell{display:flex;align-items:center;gap:6px}.api-key-text{font-family:Menlo,Monaco,Courier New,monospace;font-size:11px;color:var(--jp-text-body);background:#f9fafb;padding:3px 7px;border-radius:4px;border:1px solid var(--jp-border);letter-spacing:.5px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-buttons{display:flex;gap:4px;align-items:center}.status-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:var(--jp-radius-lg);white-space:nowrap}.badge-active{background:#dcfce7;color:#15803d}.badge-paused{background:#fef9c3;color:#854d0e}.badge-blocked{background:#fee2e2;color:#b91c1c}.btn-ghost{background:transparent;color:var(--jp-text-body);border:1px solid var(--jp-border)}.btn-ghost:hover:not(:disabled){background:#f3f4f6}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;border:1px solid var(--jp-border);background:#fff;color:var(--jp-text-body);cursor:pointer;transition:all .15s}.icon-btn:hover{background:#f3f4f6;border-color:var(--jp-text-muted)}.icon-btn-sm{width:22px;height:22px;border-radius:4px;border:none;background:transparent}.icon-btn-sm:hover{background:#f3f4f6;border-color:transparent}.icon-btn-danger{color:#ef4444}.icon-btn-danger:hover{background:#fee2e2;border-color:#fca5a5}.text-green{color:#16a34a}.text-muted{color:var(--jp-text-muted);font-size:12px}.stats-cell{display:flex;flex-direction:column;gap:3px;font-size:11px}.stat-item{display:flex;align-items:center;gap:4px}.stat-label{color:var(--jp-text-muted);font-weight:500}.stat-value{color:var(--jp-text-body);font-weight:600}.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 24px;color:var(--jp-text-muted)}.empty-state p{font-size:14px;color:#6b7280}.loading-state{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px;color:#6b7280}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:8px}.page-info{font-size:13px;color:#6b7280}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px}.modal-container{background:#fff;border-radius:var(--jp-radius-lg);width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000002e;overflow:hidden}.modal-lg{max-width:680px}.modal-xl{max-width:800px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 24px;border-bottom:1px solid var(--jp-border);flex-shrink:0}.modal-header h3{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#111827;margin:0}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:#f3f4f6;border-radius:var(--jp-radius-lg);font-size:18px;cursor:pointer;color:#6b7280;flex-shrink:0}.modal-close:hover{background:var(--jp-border);color:#111827}.modal-body{padding:20px 24px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--jp-border);flex-shrink:0;background:#f9fafb}.form-section{margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid #f3f4f6}.form-section:last-of-type{border-bottom:none;margin-bottom:0}.form-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--jp-text-body);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.optional{font-size:11px;font-weight:400;color:var(--jp-text-muted)}.form-grid{display:grid;gap:14px;margin-bottom:14px}.form-grid-2{grid-template-columns:1fr 1fr}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.form-group{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.form-group:last-child{margin-bottom:0}.form-group label{font-size:13px;font-weight:500;color:var(--jp-text-body);display:flex;align-items:center;gap:6px}.required{color:#ef4444}.label-hint{font-weight:400;font-size:11px;color:var(--jp-text-muted)}.form-group input,.form-group select,.form-group textarea{padding:8px 11px;border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:13px;color:#111827;background:#fff;transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--jp-primary);box-shadow:0 0 0 3px var(--jp-accent-100)}.form-group input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.input-error{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441a!important}.error-msg{font-size:11px;color:#ef4444}.endpoint-preview{font-size:11px;color:#6b7280;background:#f9fafb;padding:4px 8px;border-radius:4px;border:1px solid var(--jp-border)}.info-box{background:#f9fafb;border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);padding:14px 16px;margin-bottom:16px}.info-box strong{display:block;font-size:13px;font-weight:600;color:var(--jp-text-body);margin-bottom:6px}.info-box p{font-size:12px;color:#6b7280;margin:0 0 8px}.auth-method-list{display:flex;flex-direction:column;gap:8px}.auth-method-row{display:flex;flex-direction:column;gap:4px}.auth-method-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.info-box-code{background:#1e1e2e;border-color:#3a3a4c}.info-box-code strong{color:#a6adc8}.code-block{display:flex;align-items:center;gap:6px;background:#f3f4f6;border:1px solid var(--jp-border);border-radius:6px;padding:6px 10px;margin-bottom:6px}.info-box-code .code-block{background:#2a2a3c;border-color:#3a3a4c}.code-block code{font-family:Menlo,Monaco,Courier New,monospace;font-size:12px;color:#1f2937;word-break:break-all;flex:1}.info-box-code .code-block code{color:#89dceb}.endpoint-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.endpoint-item{background:#f9fafb;border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);padding:12px 14px}.endpoint-item-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.endpoint-label{font-size:12px;font-weight:600;color:var(--jp-text-body);white-space:nowrap}.endpoint-desc{font-size:11px;color:var(--jp-text-muted)}.sample-code{font-family:Menlo,Monaco,Courier New,monospace;font-size:11px;color:#a6e3a1;white-space:pre;overflow-x:auto;margin:0;padding:4px 0;background:transparent}.toast{position:fixed;top:20px;right:20px;z-index:9999;display:flex;align-items:center;gap:8px;padding:12px 18px;border-radius:var(--jp-radius-md);font-size:13px;font-weight:500;box-shadow:0 4px 20px #00000026;animation:slideIn .2s ease}.toast-success{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.toast-error{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}@keyframes slideIn{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}@media (max-width: 768px){.page-container{padding:16px}.form-grid-2,.form-grid-3{grid-template-columns:1fr}.data-table th:nth-child(3),.data-table td:nth-child(3),.data-table th:nth-child(4),.data-table td:nth-child(4){display:none}.modal-container{max-width:100%}}.account-balances-container{padding:24px;width:100%;max-width:100%;margin:0 auto;background:var(--jp-bg-page);min-height:100vh;position:relative;box-sizing:border-box}.refresh-button{position:fixed;top:24px;right:24px;width:48px;height:48px;border-radius:50%;border:none;background:var(--jp-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #667eea66;transition:all .3s ease;z-index:1000}.refresh-button:hover:not(:disabled){transform:scale(1.1) rotate(180deg);box-shadow:0 6px 20px #667eea80}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.page-header{background:#fff;border-radius:var(--jp-radius-xl);padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #00000014}.header-left{display:flex;align-items:center;gap:16px}.header-icon{color:var(--jp-accent);background:var(--jp-info-bg);padding:12px;border-radius:var(--jp-radius-lg)}.page-header h1{font-size:28px;font-weight:600;color:var(--jp-text-heading);margin:0}.header-subtitle{font-size:14px;color:var(--jp-text-muted);margin:4px 0 0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.stat-card{background:#fff;border-radius:var(--jp-radius-xl);padding:24px;box-shadow:0 2px 8px #00000014;transition:all .3s ease;display:flex;align-items:center;gap:16px}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.stat-icon-wrapper{width:56px;height:56px;border-radius:var(--jp-radius-lg);display:flex;align-items:center;justify-content:center}.stat-icon{color:#fff}.stat-content{flex:1}.stat-label{font-size:13px;color:var(--jp-text-muted);margin-bottom:8px;font-weight:500}.stat-value{font-size:24px;font-weight:600;color:var(--jp-text-heading);font-family:Monaco,Menlo,Courier New,monospace}.stat-balance .stat-icon-wrapper,.stat-prepaid .stat-icon-wrapper,.stat-used .stat-icon-wrapper{background:var(--jp-primary)}.table-container{background:#fff;border-radius:var(--jp-radius-xl);box-shadow:0 2px 8px #00000014;overflow:hidden;width:100%}.balances-table{width:100%;border-collapse:collapse;table-layout:fixed}.balances-table thead{background:var(--jp-primary)}.balances-table thead th{padding:18px 16px;text-align:left;font-size:14px;font-weight:600;color:#fff;border-right:1px solid rgba(255,255,255,.1)}.balances-table thead th:nth-child(1){width:25%}.balances-table thead th:nth-child(2),.balances-table thead th:nth-child(3),.balances-table thead th:nth-child(4){width:15%}.balances-table thead th:nth-child(5),.balances-table thead th:nth-child(6){width:18%}.balances-table thead th:nth-child(7){width:14%}.balances-table thead th:last-child{border-right:none}.balances-table tbody tr{border-bottom:1px solid var(--jp-border-light);transition:all .2s ease}.balances-table tbody tr:hover{background:#f8f9fa}.balances-table tbody tr:last-child{border-bottom:none}.balances-table tbody td{padding:18px 16px;font-size:14px;color:var(--jp-text-heading);vertical-align:middle}.user-info-inline{display:flex;align-items:center;gap:12px}.user-icon{color:#667eea;background:var(--jp-info-bg);padding:8px;border-radius:var(--jp-radius-lg);flex-shrink:0}.user-info-inline .username{font-size:16px;font-weight:600;color:var(--jp-text-heading);margin:0}.user-info-inline .user-id{font-size:13px;color:var(--jp-text-muted);margin-top:4px}.amount-cell{font-family:Monaco,Menlo,Courier New,monospace;font-weight:600;color:var(--jp-text-heading);font-size:15px}.used-cell{color:var(--jp-danger)}.total-cell{color:#764ba2;font-size:16px;font-weight:600}.date-cell,.operator-cell{color:var(--jp-text-muted);font-size:14px}.actions-cell{text-align:center;padding:16px 12px;white-space:nowrap}.btn-icon-table{padding:8px;border:none;background:var(--jp-info-bg);border-radius:6px;cursor:pointer;transition:all .2s;color:var(--jp-accent)}.btn-icon-table:hover{background:var(--jp-accent);color:#fff;transform:scale(1.1)}.editing-row{background:var(--jp-bg-muted)!important}.table-input{width:100%;min-width:100px;max-width:120px;padding:8px 10px;border:2px solid var(--jp-border);border-radius:6px;font-size:14px;font-family:Monaco,Menlo,Courier New,monospace;transition:all .2s;box-sizing:border-box}.table-input:focus{outline:none;border-color:var(--jp-accent);box-shadow:0 0 0 3px var(--jp-accent-50)}.table-input::placeholder{color:#bfbfbf}.action-buttons-inline{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.btn-small{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;flex-shrink:0}.btn-small:hover:not(:disabled){transform:translateY(-1px)}.btn-small:disabled{opacity:.6;cursor:not-allowed}.btn-save{background:var(--jp-primary);color:#fff;box-shadow:0 2px 8px #43e97b4d}.btn-save:hover:not(:disabled){box-shadow:0 4px 12px #43e97b66}.btn-cancel{background:#fff;border:2px solid var(--jp-danger);color:var(--jp-danger)}.btn-cancel:hover:not(:disabled){background:var(--jp-danger-bg);border-color:#ff7875}.empty-cell{padding:60px!important}.empty-state{text-align:center;color:var(--jp-text-muted)}.empty-icon{color:#bfbfbf;margin-bottom:24px}.empty-state h3{font-size:20px;color:var(--jp-text-heading);margin-bottom:12px}.empty-state p{font-size:14px;margin:0}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px;background:#fff;border-radius:var(--jp-radius-xl);min-height:400px}.loading-state p{margin-top:20px;color:var(--jp-text-muted);font-size:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.account-balances-container{padding:16px}.header-content{flex-direction:column;align-items:flex-start;gap:16px}.stats-grid{grid-template-columns:1fr}.table-container{overflow-x:auto}.balances-table{min-width:800px}}@media (max-width: 480px){.account-balances-container{padding:12px}.page-header h1,.stat-value{font-size:20px}}.asset-upload-section{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--jp-radius-xl);padding:28px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;gap:24px;min-height:400px}.modal-overlay .asset-upload-section{padding:16px;border-radius:var(--jp-radius-lg);gap:16px;min-height:auto;max-height:calc(72vh - 80px);overflow-y:auto}.asset-upload-section h3{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--jp-border)}.modal-overlay .asset-upload-section h3{font-size:16px;margin-bottom:12px;padding-bottom:8px}.upload-step{flex:1;display:flex;flex-direction:column;gap:20px}.modal-overlay .upload-step{gap:12px}.step-label{font-size:16px;font-weight:600;color:var(--jp-text-secondary);margin:0}.modal-overlay .step-label{font-size:14px;margin-bottom:8px}.type-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.modal-overlay .type-buttons{gap:8px;margin-top:12px}.type-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;background:#fff;border:2px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:14px;font-weight:600;color:var(--jp-text-secondary);cursor:pointer;transition:all .3s ease}.modal-overlay .type-button{padding:12px;gap:6px}.type-button:hover{border-color:#667eea;background:#f0f4ff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.type-icon{font-size:32px}.modal-overlay .type-icon{font-size:24px}.type-name{color:#1e293b}.modal-overlay .type-name{font-size:13px}.size-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.modal-overlay .size-buttons{gap:8px;margin-top:12px}.size-button{padding:16px;background:#fff;border:2px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:14px;font-weight:600;color:var(--jp-text-secondary);cursor:pointer;transition:all .3s ease}.modal-overlay .size-button{padding:10px;font-size:13px}.size-button:hover{border-color:#667eea;background:#f0f4ff}.size-button.selected{background:#667eea;border-color:#667eea;color:#fff}.upload-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--jp-bg-thead);border:2px dashed #cbd5e1;border-radius:var(--jp-radius-lg);padding:40px;min-height:300px;margin-top:16px;transition:all .3s ease}.modal-overlay .upload-area{padding:24px;min-height:200px;margin-top:12px}.upload-area:hover{border-color:#667eea;background:#f0f4ff}.file-input{display:none}.upload-label{display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;color:var(--jp-text-muted);transition:color .3s ease}.upload-label:hover{color:#667eea}.file-hint{font-size:12px;color:var(--jp-text-secondary);margin:0}.selected-file{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#d1fae5;border:1px solid #10b981;border-radius:var(--jp-radius-lg);font-size:14px;color:#065f46}.file-size{font-size:12px;color:#047857}.result-step{text-align:center;padding:20px 0}.result-step .success-message{font-size:18px;font-weight:600;color:#10b981;margin:0 0 24px}.result-step h4{font-size:20px;font-weight:600;color:#1e293b;margin:0 0 24px}.result-details{display:flex;flex-direction:column;gap:12px;background:var(--jp-bg-thead);padding:20px;border-radius:var(--jp-radius-lg);text-align:left}.result-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--jp-border);font-size:14px}.result-item:last-child{border-bottom:none}.result-item label{font-weight:600;color:var(--jp-text-secondary)}.result-item span{color:#1e293b}.step-actions{display:flex;gap:12px;justify-content:center;margin-top:auto}.modal-overlay .step-actions{gap:8px}.btn-back-step{padding:10px 20px;background:#fff3;color:#fff;border:none;border-radius:var(--jp-radius-lg);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.modal-overlay .btn-back-step{padding:8px 16px;font-size:13px}.btn-back-step:hover{background:#ffffff4d}.btn-upload{padding:12px 24px;background:var(--jp-primary);color:#fff;border:none;border-radius:var(--jp-radius-lg);font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #667eea66}.modal-overlay .btn-upload{padding:8px 16px;font-size:14px}.btn-upload:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}.btn-upload:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-reset{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:var(--jp-radius-lg);font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-reset:hover{background:#5a67d8}.modal-overlay .btn-reset{padding:8px 16px;font-size:14px}.modal-overlay .result-step .success-message{font-size:16px;margin-bottom:16px}@media (max-width: 1024px){.type-buttons,.size-buttons{grid-template-columns:1fr}}.asset-count-badge{position:absolute;top:-4px;right:-4px;background:#10b981;color:#fff;font-size:12px;font-weight:600;min-width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--jp-radius-md);padding:0 6px;box-shadow:0 2px 4px #0003}.asset-exists-badge{position:absolute;top:-6px;right:-6px;background:#10b981;color:#fff;font-size:14px;font-weight:600;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:0 2px 4px #0003;border:2px solid #ffffff}.size-button.has-asset{border-color:#10b981;background:#ecfdf5;color:#065f46}.size-button.has-asset:hover{border-color:#059669;background:#d1fae5}.type-button,.size-button{position:relative}.creative-set-create{display:flex;flex-direction:column;min-height:100vh;background:var(--jp-primary);padding:20px;min-width:0;max-width:100%;overflow-x:auto}.modal-overlay .creative-set-create{min-height:auto;max-height:90vh;overflow-y:auto;transform:scale(.9);transform-origin:top center}.loading-spinner{text-align:center;padding:60px 20px;font-size:18px;color:#fff;font-weight:600}.create-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px;padding:0 20px}.modal-overlay .create-header{margin-bottom:20px;padding:0 16px;gap:12px}.btn-cancel,.btn-save{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--jp-radius-lg);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.modal-overlay .btn-cancel,.modal-overlay .btn-save{padding:8px 16px;font-size:13px}.btn-cancel{background:#fff3;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-cancel:hover{background:#ffffff4d;transform:translateY(-2px)}.btn-save{background:var(--jp-primary);color:#fff;box-shadow:0 4px 12px #667eea66}.btn-save:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea80}.btn-save:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-save.saving{opacity:.8;cursor:wait}.header-left{display:flex;align-items:center;gap:20px}.modal-overlay .header-left{gap:12px}.header-right{display:flex;align-items:center;gap:12px}.modal-overlay .header-right{gap:8px}.btn-back{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#fff3;color:#fff;border:none;border-radius:var(--jp-radius-lg);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-back:hover{background:#ffffff4d;transform:translate(-3px)}.create-header h2{font-size:24px;font-weight:600;color:#fff;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.2)}.create-content{display:grid;grid-template-columns:350px 1fr 1fr;gap:16px;max-width:1600px;margin:0 auto;align-items:start}.modal-overlay .create-content{grid-template-columns:300px .9fr .9fr;gap:12px}.form-section{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--jp-radius-xl);padding:24px;box-shadow:0 8px 24px #00000026;height:fit-content}.modal-overlay .form-section{padding:16px;border-radius:var(--jp-radius-lg)}.form-section h3{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 24px;padding-bottom:12px;border-bottom:2px solid var(--jp-border)}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--jp-text-secondary);margin-bottom:8px}.form-input,.form-textarea,.form-select{width:100%;padding:12px 16px;border:2px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:14px;transition:all .3s ease;background:#fff}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input::placeholder,.form-textarea::placeholder{color:var(--jp-text-muted)}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.assets-section{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--jp-radius-xl);padding:28px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;gap:24px;overflow:hidden}.modal-overlay .assets-section{padding:16px;border-radius:var(--jp-radius-lg);gap:16px}.assets-list-section{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--jp-radius-xl);padding:28px;box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;height:fit-content;max-height:calc(100vh - 200px);overflow-y:auto}.modal-overlay .assets-list-section{padding:16px;border-radius:var(--jp-radius-lg);max-height:calc(72vh - 100px)}.modal-overlay .assets-list-section h3{font-size:16px;margin:0 0 12px;padding-bottom:8px}.uploaded-assets-list{display:flex;flex-direction:column;gap:12px}.uploaded-assets-list h4{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px}.empty-assets{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--jp-text-muted);font-size:14px;text-align:center}.uploaded-asset-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--jp-bg-thead);border:1px solid var(--jp-border);border-radius:var(--jp-radius-lg);margin-bottom:12px;transition:all .3s ease}.uploaded-asset-item:hover{background:#f0f4ff;border-color:#667eea}.asset-info{flex:1;display:flex;flex-direction:column;gap:4px}.asset-type{font-size:14px;font-weight:600;color:#667eea}.asset-name{font-size:13px;color:var(--jp-text-secondary);word-break:break-all}.asset-time{font-size:12px;color:var(--jp-text-muted)}.btn-remove-asset{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fee2e2;color:#dc2626;border:none;border-radius:6px;font-size:20px;cursor:pointer;transition:all .3s ease;margin-left:12px}.btn-remove-asset:hover{background:#dc2626;color:#fff;transform:scale(1.1)}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.upload-summary{text-align:center;padding:16px;background:#eff6ff;border-radius:var(--jp-radius-lg);border:2px solid #dbeafe}.upload-summary p{font-size:14px;font-weight:600;color:#1e40af;margin:0}@media (max-width: 1200px){.create-content,.form-row{grid-template-columns:1fr}}@media (max-width: 768px){.creative-set-create{padding:16px}.create-header{padding:0;flex-direction:column;align-items:flex-start;gap:12px}.header-left{width:100%}.header-right{width:100%;justify-content:flex-end}.create-header h2{font-size:20px}.form-section,.assets-section{padding:20px}.assets-grid{grid-template-columns:1fr}.btn-cancel,.btn-save{flex:1;justify-content:center}}.creative-set-list{min-height:100vh;background:var(--jp-bg-thead);padding:32px}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding:24px 28px;background:var(--jp-bg-card);border-radius:var(--jp-radius-xl);box-shadow:var(--jp-shadow-sm)}.list-header h1{font-size:28px;font-weight:600;color:var(--jp-text-heading);margin:0}.search-filter-bar{display:grid;grid-template-columns:1fr 200px;gap:16px;margin-bottom:24px;padding:0 20px}.search-box{display:flex;align-items:center;gap:12px;background:#fffffff2;padding:12px 16px;border-radius:var(--jp-radius-lg);box-shadow:var(--jp-shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-icon{color:var(--jp-text-muted)}.search-input{flex:1;border:none;background:transparent;font-size:14px;outline:none}.search-input::placeholder{color:var(--jp-text-muted)}.btn-search{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:var(--jp-radius-lg);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-search:hover{background:#2563eb}.filter-group{display:flex;align-items:center;gap:10px;background:#fffffff2;padding:12px 16px;border-radius:var(--jp-radius-lg);box-shadow:var(--jp-shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.filter-icon{color:var(--jp-text-muted)}.status-filter{border:none;background:transparent;font-size:14px;font-weight:600;color:var(--jp-text-secondary);outline:none;cursor:pointer}.status-filter option{background:#fff;padding:8px 12px}.sets-container{max-width:1400px;margin:0 auto;padding:0 20px}.sets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.set-card{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--jp-radius-xl);padding:20px;box-shadow:0 4px 16px #0000001a;transition:all .3s ease;display:flex;flex-direction:column}.set-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0003}.set-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.set-name{font-size:16px;font-weight:600;color:#1e293b;margin:0;flex:1}.status-badge{padding:4px 10px;border-radius:var(--jp-radius-lg);font-size:11px;font-weight:600;text-transform:uppercase}.status-active{background:#d1fae5;color:#065f46}.status-paused{background:#fef3c7;color:#92400e}.status-draft{background:var(--jp-border);color:var(--jp-text-secondary)}.set-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--jp-border)}.meta-item{font-size:12px;color:var(--jp-text-secondary);display:flex;align-items:center;gap:4px}.meta-label{font-weight:600;color:var(--jp-text-secondary)}.set-description{font-size:13px;color:var(--jp-text-secondary);line-height:1.6;margin-bottom:16px;flex:1;min-height:40px}.set-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.asset-badges{display:flex;gap:8px;flex-wrap:wrap}.asset-badge{padding:4px 10px;background:#eff6ff;color:#1d4ed8;border-radius:var(--jp-radius-lg);font-size:11px;font-weight:600}.set-actions{display:flex;gap:6px}.btn-action{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--jp-radius-lg);font-size:14px;cursor:pointer;transition:all .2s ease}.btn-view{background:#dbeafe;color:#1d4ed8}.btn-view:hover{background:#3b82f6;color:#fff;transform:scale(1.1)}.btn-edit{background:#fef3c7;color:#92400e}.btn-edit:hover{background:#f59e0b;color:#fff;transform:scale(1.1)}.btn-delete{background:#fee2e2;color:#dc2626}.btn-delete:hover{background:#ef4444;color:#fff;transform:scale(1.1)}.loading-state,.empty-state{text-align:center;padding:60px 20px;background:#fffffff2;border-radius:var(--jp-radius-xl)}.loading-state{color:var(--jp-text-secondary);font-size:16px}.empty-state h3{font-size:18px;color:#1e293b;margin:0 0 12px}.empty-state p{color:var(--jp-text-secondary);margin:0}.empty-icon{color:var(--jp-text-muted);margin-bottom:16px}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:32px;padding:16px;background:#fffffff2;border-radius:var(--jp-radius-lg);max-width:300px;margin-left:auto;margin-right:auto}.btn-page{padding:8px 16px;background:#fff;border:2px solid var(--jp-border);border-radius:var(--jp-radius-lg);font-size:13px;font-weight:600;color:var(--jp-text-secondary);cursor:pointer;transition:all .2s ease}.btn-page:hover:not(:disabled){background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-page:disabled{opacity:.4;cursor:not-allowed}.page-info{font-size:14px;font-weight:600;color:var(--jp-text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:80px 20px 40px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.detail-modal{background:#fff;border-radius:var(--jp-radius-xl);padding:32px;max-width:600px;width:100%;box-shadow:0 12px 32px #0000004d;animation:modalSlideIn .3s ease;transform:scale(.9)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--jp-border)}.detail-header h2{font-size:22px;font-weight:600;color:#1e293b;margin:0}.btn-close{background:none;border:none;font-size:28px;color:var(--jp-text-secondary);cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.btn-close:hover{background:#fee2e2;color:#dc2626}.detail-content p{font-size:14px;color:var(--jp-text-secondary);line-height:1.8;margin-bottom:12px}.detail-content strong{color:#1e293b;font-weight:600}@media (max-width: 1024px){.search-filter-bar{grid-template-columns:1fr}.sets-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.creative-set-list{padding:16px}.list-header{flex-direction:column;align-items:stretch;gap:16px;padding:0}.list-header h1{text-align:center}.search-filter-bar{padding:0}.sets-grid{grid-template-columns:1fr}.set-card{padding:16px}.modal-overlay{padding:12px}.detail-modal{padding:24px}.pagination{width:100%}}.app{display:flex}.main-content{flex:1;margin-left:240px;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;position:relative;z-index:1001;animation:pageIn .3s ease}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.top-header{background:var(--jp-bg-header);border-bottom:1px solid var(--jp-border-light);padding:14px var(--jp-space-xl);position:sticky;top:0;z-index:var(--jp-z-header);flex-shrink:0}.header-content{display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:var(--jp-space-md)}.mobile-menu-button{display:none;background:none;border:none;cursor:pointer;color:var(--jp-text-heading);padding:6px;align-items:center;justify-content:center;border-radius:var(--jp-radius-sm);transition:all var(--jp-transition-fast)}.mobile-menu-button:hover{background:var(--jp-bg-muted)}.event-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:var(--jp-radius-sm);font-size:var(--jp-font-caption-size);font-weight:var(--jp-font-label-weight);letter-spacing:.02em}.event-install{background:var(--jp-success-bg);color:var(--jp-success);border:1px solid var(--jp-success-border)}.event-event{background:var(--jp-info-bg);color:var(--jp-info);border:1px solid var(--jp-info-border)}.page-title{font-size:15px;font-weight:var(--jp-font-heading-weight);color:var(--jp-text-heading)}.user-section{position:relative;z-index:10000}.user-info{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 6px;background:var(--jp-bg-muted);border-radius:var(--jp-radius-md);cursor:pointer;transition:all var(--jp-transition-fast);border:1px solid transparent;font-family:var(--jp-font-sans);font-size:var(--jp-font-body-size);color:var(--jp-text-body)}.user-info:hover{border-color:var(--jp-border)}.user-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--jp-bg-card);box-shadow:var(--jp-shadow-xs)}.user-details{display:flex;flex-direction:column;gap:1px}.user-name{font-size:var(--jp-font-body-size);font-weight:var(--jp-font-label-weight);color:var(--jp-text-heading)}.user-email{font-size:var(--jp-font-caption-size);color:var(--jp-text-muted)}.chevron-icon{color:var(--jp-text-muted);transition:transform var(--jp-transition-fast)}.user-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--jp-bg-card);border-radius:var(--jp-radius-md);box-shadow:var(--jp-shadow-lg);border:1px solid var(--jp-border-light);min-width:160px;z-index:10001;animation:menuSlideDown .2s ease}@keyframes menuSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.menu-item{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:var(--jp-font-body-size);font-family:var(--jp-font-sans);color:var(--jp-text-body);cursor:pointer;transition:background var(--jp-transition-fast);border:none;background:none;width:100%;text-align:left}.menu-item:hover{background:var(--jp-bg-hover)}.menu-item svg{color:var(--jp-text-muted);width:16px;height:16px}@media (max-width: 768px){.main-content{margin-left:0}.top-header{padding:10px var(--jp-space-lg)}.header-content{gap:var(--jp-space-md)}.mobile-menu-button{display:flex}.page-title{font-size:14px}.user-details{display:none}.user-avatar{width:32px;height:32px}.user-info{padding:5px 8px 5px 5px}.user-menu{min-width:140px;right:0}}@media (max-width: 480px){.top-header{padding:8px var(--jp-space-md)}.header-left{gap:var(--jp-space-sm)}.mobile-menu-button{padding:4px}.page-title{font-size:13px}.user-avatar{width:28px;height:28px}}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;border-top:1px solid var(--jp-border-light);background:var(--jp-bg-card);width:100%;box-sizing:border-box}.pagination-info{font-size:var(--jp-font-caption-size);color:var(--jp-text-secondary);flex-shrink:0}.pagination-controls{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}.page-size-select{padding:5px 8px;border:1px solid var(--jp-border);border-radius:var(--jp-radius-sm);font-size:var(--jp-font-caption-size);font-family:var(--jp-font-sans);margin-right:8px;outline:none;cursor:pointer;background:var(--jp-bg-card);min-width:80px;color:var(--jp-text-secondary)}.page-size-select:hover{border-color:var(--jp-accent)}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;border:1px solid var(--jp-border);background:var(--jp-bg-card);border-radius:var(--jp-radius-sm);font-size:var(--jp-font-caption-size);font-family:var(--jp-font-sans);cursor:pointer;transition:all var(--jp-transition-fast);text-align:center;white-space:nowrap;font-weight:400}.login-container{min-height:100vh;background:var(--jp-bg-page);display:flex;align-items:center;justify-content:center;position:relative}.language-selector{position:absolute;top:16px;right:16px;z-index:100}.language-selector-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:var(--jp-font-caption-size);font-family:var(--jp-font-sans);color:var(--jp-text-body);background:var(--jp-bg-card);border:1px solid var(--jp-border);border-radius:var(--jp-radius-md);cursor:pointer;transition:all var(--jp-transition-fast);box-shadow:var(--jp-shadow-sm)}.language-selector-btn:hover{border-color:var(--jp-border-input-focus);box-shadow:var(--jp-shadow-md)}.language-selector-btn svg{color:var(--jp-text-muted)}.language-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:140px;background:var(--jp-bg-card);border:1px solid var(--jp-border);border-radius:var(--jp-radius-md);box-shadow:var(--jp-shadow-lg);overflow:hidden;animation:fadeInDown .15s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.language-menu-item{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:10px 14px;font-size:var(--jp-font-body-size);font-family:var(--jp-font-sans);color:var(--jp-text-body);background:transparent;border:none;cursor:pointer;transition:background var(--jp-transition-fast);text-align:left}.language-menu-item:hover{background:var(--jp-bg-hover)}.language-menu-item.active{background:var(--jp-primary);color:var(--jp-text-inverse)}.language-menu-item .lang-native{font-weight:500}.language-menu-item .lang-name{font-size:11px;color:var(--jp-text-muted);margin-top:2px}.language-menu-item.active .lang-name{color:#ffffffb3}.login-container:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--jp-primary) 0%,var(--jp-accent) 100%)}.login-content{width:100%;max-width:400px;padding:20px;animation:loginFadeIn .5s ease}@keyframes loginFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.login-box{background:var(--jp-bg-card);border-radius:var(--jp-radius-xl);border:1px solid var(--jp-border-light);box-shadow:var(--jp-shadow-md);padding:44px 36px}.login-logo{text-align:center;margin-bottom:6px}.login-logo h1{font-size:18px;font-weight:500;color:var(--jp-text-heading);margin:0;letter-spacing:-.01em}.login-logo h1 span{color:var(--jp-accent)}.login-subtitle{text-align:center;font-size:var(--jp-font-caption-size);color:var(--jp-text-muted);margin-bottom:36px}.login-form{display:flex;flex-direction:column;gap:22px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:var(--jp-font-label-size);font-weight:var(--jp-font-label-weight);color:var(--jp-text-body)}.form-group input{width:100%;padding:10px 12px;font-size:var(--jp-font-body-size);font-family:var(--jp-font-sans);border:1px solid var(--jp-border-input);border-radius:var(--jp-radius-md);background:var(--jp-bg-input);color:var(--jp-text-body);transition:all var(--jp-transition-fast);box-sizing:border-box;outline:none}.form-group input:focus{border-color:var(--jp-border-input-focus);box-shadow:var(--jp-shadow-focus)}.form-group input::placeholder{color:var(--jp-text-muted)}.login-button{width:100%;padding:11px;font-size:var(--jp-font-body-size);font-weight:var(--jp-font-label-weight);font-family:var(--jp-font-sans);color:var(--jp-text-inverse);background:var(--jp-primary);border:none;border-radius:var(--jp-radius-md);cursor:pointer;transition:all var(--jp-transition-fast);margin-top:6px;box-shadow:var(--jp-shadow-btn-primary);letter-spacing:.02em}.login-button:hover{background:var(--jp-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1a1a2e40}.login-button:active{transform:translateY(0)}.login-footer{text-align:center;margin-top:28px;padding-top:20px;border-top:1px solid var(--jp-border-light)}.login-footer p{font-size:var(--jp-font-caption-size);color:var(--jp-text-muted);margin:0}.error-message{padding:10px 14px;background:var(--jp-danger-bg);border:1px solid var(--jp-danger-border);border-radius:var(--jp-radius-md);color:var(--jp-danger);font-size:var(--jp-font-body-size)}:root{--jp-primary: #1a1a2e;--jp-primary-hover: #16213e;--jp-primary-light: #232946;--jp-primary-50: rgba(26, 26, 46, .05);--jp-primary-100: rgba(26, 26, 46, .1);--jp-accent: #c9a87c;--jp-accent-hover: #b8956a;--jp-accent-50: rgba(201, 168, 124, .08);--jp-accent-100: rgba(201, 168, 124, .15);--jp-bg-page: #faf9f7;--jp-bg-card: #ffffff;--jp-bg-sidebar: #141422;--jp-bg-header: #ffffff;--jp-bg-hover: #faf8f5;--jp-bg-thead: #f8f7f5;--jp-bg-input: #ffffff;--jp-bg-muted: #f5f4f2;--jp-bg-sunken: #f0eeeb;--jp-text-heading: #2c2c2c;--jp-text-body: #374151;--jp-text-secondary: #6b7280;--jp-text-muted: #9ca3af;--jp-text-inverse: #ffffff;--jp-border: #e5e5e5;--jp-border-light: #f0eeeb;--jp-border-input: #d4d4d4;--jp-border-input-focus: #c9a87c;--jp-success: #4a7c59;--jp-success-bg: #edf5ef;--jp-success-border: #c8dccf;--jp-warning: #c7915e;--jp-warning-bg: #fdf4ec;--jp-warning-border: #edcfb3;--jp-danger: #c75050;--jp-danger-bg: #fef2f2;--jp-danger-border: #f5c6c6;--jp-info: #5b8fb9;--jp-info-bg: #eef5fa;--jp-info-border: #b8d4ea;--jp-shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--jp-shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--jp-shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--jp-shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--jp-shadow-xl: 0 16px 48px rgba(0, 0, 0, .1);--jp-shadow-focus: 0 0 0 3px var(--jp-accent-100);--jp-shadow-btn-primary: 0 2px 8px rgba(26, 26, 46, .2);--jp-radius-xs: 3px;--jp-radius-sm: 4px;--jp-radius-md: 6px;--jp-radius-lg: 8px;--jp-radius-xl: 12px;--jp-radius-pill: 999px;--jp-font-sans: "Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--jp-font-mono: "SF Mono", "Monaco", "Menlo", "Consolas", monospace;--jp-font-heading-size: 22px;--jp-font-heading-weight: 500;--jp-font-body-size: 13px;--jp-font-body-weight: 400;--jp-font-line-height: 1.7;--jp-font-label-size: 12px;--jp-font-label-weight: 500;--jp-font-caption-size: 11px;--jp-space-xs: 4px;--jp-space-sm: 8px;--jp-space-md: 12px;--jp-space-lg: 16px;--jp-space-xl: 24px;--jp-space-2xl: 32px;--jp-space-3xl: 48px;--jp-transition-fast: .15s ease;--jp-transition-base: .25s ease;--jp-transition-slow: .35s ease;--jp-z-sidebar: 100;--jp-z-header: 200;--jp-z-overlay: 300;--jp-z-modal: 400;--jp-z-toast: 500;--jp-z-tooltip: 600}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--jp-font-sans);font-size:var(--jp-font-body-size);font-weight:var(--jp-font-body-weight);line-height:var(--jp-font-line-height);color:var(--jp-text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--jp-bg-page)}#root{min-height:100vh;overflow-x:hidden}::selection{background:var(--jp-accent-100);color:var(--jp-text-heading)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--jp-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--jp-text-muted)}.page-container{padding:var(--jp-space-2xl);background:var(--jp-bg-page);min-height:100vh;min-width:0;max-width:100%;overflow-x:auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--jp-space-2xl);padding:var(--jp-space-xl) var(--jp-space-xl);background:var(--jp-bg-card);border-radius:var(--jp-radius-lg);border:1px solid var(--jp-border-light);box-shadow:var(--jp-shadow-xs)}.page-header h1{font-size:var(--jp-font-heading-size);font-weight:var(--jp-font-heading-weight);color:var(--jp-text-heading);margin:0;letter-spacing:-.01em}.header-actions{display:flex;gap:var(--jp-space-md);align-items:center;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--jp-bg-input);border:1px solid var(--jp-border-input);border-radius:var(--jp-radius-md);transition:all var(--jp-transition-fast)}.search-box:focus-within{border-color:var(--jp-border-input-focus);box-shadow:var(--jp-shadow-focus)}.search-box svg{color:var(--jp-text-muted);flex-shrink:0;width:16px;height:16px}.search-box input{border:none;outline:none;font-size:var(--jp-font-body-size);font-family:var(--jp-font-sans);color:var(--jp-text-body);width:200px;background:transparent}.search-box input::placeholder{color:var(--jp-text-muted)}.filter-box{display:flex;align-items:center}.filter-box select{padding:10px 30px 10px 14px;border:1px solid var(--jp-border-input);border-radius:var(--jp-radius-md);background:var(--jp-bg-input);font-size:var(--jp-font-body-size);font-weight:var(--jp-font-label-weight);font-family:var(--jp-font-sans);color:var(--jp-text-body);outline:none;cursor:pointer;transition:all var(--jp-transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.filter-box select:hover{border-color:var(--jp-border)}.filter-box select:focus{border-color:var(--jp-border-input-focus);box-shadow:var(--jp-shadow-focus)}.table-container{background:var(--jp-bg-card);overflow-x:auto;overflow-y:hidden;border:1px solid var(--jp-border-light);border-radius:var(--jp-radius-md)}.campaign-table,.creative-table,.data-table,.app-table{width:100%;border-collapse:collapse;table-layout:fixed}.creative-table th:nth-child(1){width:60px}.creative-table th:nth-child(2){width:100px}.creative-table th:nth-child(3){width:80px}.creative-table th:nth-child(4){width:280px}.creative-table th:nth-child(5){width:100px}.creative-table th:nth-child(6){width:80px}.creative-table th:nth-child(7){width:150px}.creative-table th:nth-child(8){width:80px}.campaign-table th:nth-child(1){width:50px}.campaign-table th:nth-child(2){width:100px}.campaign-table th:nth-child(3){width:100px}.campaign-table th:nth-child(4){width:200px}.campaign-table th:nth-child(5){width:90px}.campaign-table th:nth-child(6){width:80px}.campaign-table th:nth-child(7){width:150px}.campaign-table th:nth-child(8){width:80px}.campaign-table th:nth-child(9){width:100px}.campaign-table th:nth-child(10){width:120px}.campaign-table th:nth-child(11){width:130px}.campaign-table th:nth-child(12){width:120px}.campaign-table th:nth-child(13){width:80px}.campaign-table th:nth-child(14){width:80px}.campaign-table th:nth-child(15){width:80px}.campaign-table th:nth-child(16){width:80px}.campaign-table th:nth-child(17){width:130px}.data-table th:nth-child(1){width:50px}.data-table th:nth-child(2){width:100px}.data-table th:nth-child(3){width:60px}.data-table th:nth-child(4){width:150px}.data-table th:nth-child(5){width:150px}.data-table th:nth-child(6){width:80px}.data-table th:nth-child(7){width:70px}.data-table th:nth-child(8){width:200px}.data-table th:nth-child(9){width:150px}.data-table th:nth-child(10){width:150px}.data-table th:nth-child(11){width:80px}.data-table th:nth-child(12){width:130px}.data-table th:nth-child(13){width:100px}.data-table td.actions-cell{padding:8px!important;white-space:nowrap;overflow:visible}.data-table td.actions-cell .action-btn{display:inline-flex;margin-right:4px}.data-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-table thead,.creative-table thead,.data-table thead,.app-table thead{background:var(--jp-bg-thead);position:sticky;top:0;z-index:10}.campaign-table th,.creative-table th,.data-table th,.app-table th{text-align:left;padding:14px 18px;font-size:var(--jp-font-label-size);font-weight:var(--jp-font-label-weight);color:var(--jp-text-secondary);border-bottom:1px solid var(--jp-border);white-space:nowrap;letter-spacing:.03em}.campaign-table tbody tr,.creative-table tbody tr,.data-table tbody tr,.app-table tbody tr{transition:background var(--jp-transition-fast);border-bottom:1px solid var(--jp-border-light)}.campaign-table tbody tr:hover,.creative-table tbody tr:hover,.data-table tbody tr:hover,.app-table tbody tr:hover{background:var(--jp-bg-hover)}.campaign-table td,.creative-table td,.data-table td,.app-table td{padding:14px 18px;font-size:var(--jp-font-body-size);color:var(--jp-text-body);white-space:nowrap;max-width:200px}.id-cell{color:var(--jp-text-muted);font-size:var(--jp-font-caption-size);font-family:var(--jp-font-mono);background:var(--jp-bg-muted);padding:4px 8px;border-radius:var(--jp-radius-xs);font-weight:500}.text-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--jp-text-body)}.material-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;color:var(--jp-text-body)}.date-cell{color:var(--jp-text-secondary);font-size:var(--jp-font-caption-size);font-family:var(--jp-font-mono)}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--jp-radius-sm);font-size:var(--jp-font-caption-size);font-weight:var(--jp-font-label-weight);letter-spacing:.02em}.status-badge:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.dsp-badge{display:inline-flex;padding:3px 10px;border-radius:var(--jp-radius-sm);font-size:var(--jp-font-caption-size);font-weight:var(--jp-font-label-weight);background:var(--jp-bg-muted);color:var(--jp-text-secondary);border:1px solid var(--jp-border-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border:none;border-radius:var(--jp-radius-md);font-size:var(--jp-font-body-size);font-weight:var(--jp-font-label-weight);font-family:var(--jp-font-sans);cursor:pointer;transition:all var(--jp-transition-fast);white-space:nowrap;text-decoration:none;line-height:1}.btn:active{transform:translateY(0)!important}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--jp-primary);color:var(--jp-text-inverse);box-shadow:var(--jp-shadow-btn-primary)}.btn-primary:hover{background:var(--jp-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #1a1a2e40}.btn-primary:active{background:var(--jp-primary-light)}.btn-accent{background:var(--jp-accent);color:var(--jp-primary);box-shadow:0 2px 8px #c9a87c40}.btn-accent:hover{background:var(--jp-accent-hover);transform:translateY(-1px)}.btn-secondary{background:transparent;border:1px solid var(--jp-border);color:var(--jp-text-body)}.btn-secondary:hover{border-color:var(--jp-accent);color:var(--jp-accent);background:var(--jp-accent-50)}.btn-danger{background:transparent;color:var(--jp-danger);border:1px solid transparent}.btn-danger:hover{background:var(--jp-danger-bg)}.btn-ghost{background:transparent;color:var(--jp-text-secondary);padding:6px 10px}.btn-ghost:hover{background:var(--jp-bg-muted);color:var(--jp-text-body)}.btn-sm{padding:5px 10px;font-size:12px}.btn-lg{padding:12px 24px;font-size:15px}.btn-icon{display:inline-flex;align-items:center;justify-content:center;padding:7px;border:none;border-radius:var(--jp-radius-sm);background:transparent;color:var(--jp-text-secondary);cursor:pointer;transition:all var(--jp-transition-fast)}.btn-icon:hover{background:var(--jp-bg-muted);color:var(--jp-text-body)}.btn-icon.danger:hover{background:var(--jp-danger-bg);color:var(--jp-danger)}@media (max-width: 1024px){.btn{padding:8px 16px;font-size:13px}}@media (max-width: 768px){.btn{width:100%;justify-content:center}}@media (max-width: 480px){.btn{padding:8px 12px;font-size:12px}}input[type=text],input[type=number],input[type=email],input[type=password],input[type=url],input[type=date],input[type=datetime-local],input[type=search],textarea,select{padding:9px 14px;border:1px solid var(--jp-border-input);border-radius:var(--jp-radius-md);background:var(--jp-bg-input);font-size:var(--jp-font-body-size);font-family:var(--jp-font-sans);color:var(--jp-text-body);outline:none;transition:all var(--jp-transition-fast);line-height:1.5}input:focus,textarea:focus,select:focus{border-color:var(--jp-border-input-focus);box-shadow:var(--jp-shadow-focus)}input::placeholder,textarea::placeholder{color:var(--jp-text-muted)}label{display:block;font-size:var(--jp-font-label-size);font-weight:var(--jp-font-label-weight);color:var(--jp-text-body);margin-bottom:6px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--jp-z-modal);animation:modalOverlayIn .2s ease}@keyframes modalOverlayIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--jp-bg-card);border-radius:var(--jp-radius-xl);box-shadow:var(--jp-shadow-xl);border:1px solid var(--jp-border-light);max-height:90vh;overflow-y:auto;animation:modalContentIn .25s ease}@keyframes modalContentIn{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--jp-space-xl) var(--jp-space-xl);border-bottom:1px solid var(--jp-border-light)}.modal-header h2,.modal-header h3{font-size:16px;font-weight:var(--jp-font-heading-weight);color:var(--jp-text-heading)}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--jp-radius-sm);background:transparent;color:var(--jp-text-muted);cursor:pointer;transition:all var(--jp-transition-fast)}.modal-close:hover{background:var(--jp-bg-muted);color:var(--jp-text-body)}.modal-body{padding:var(--jp-space-xl)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--jp-space-sm);padding:var(--jp-space-lg) var(--jp-space-xl);border-top:1px solid var(--jp-border-light)}.pagination-container{display:flex;justify-content:space-between;align-items:center;margin-top:var(--jp-space-lg);padding:12px 20px;background:var(--jp-bg-card);border:1px solid var(--jp-border-light);border-radius:var(--jp-radius-md)}.pagination-info{font-size:var(--jp-font-caption-size);color:var(--jp-text-secondary);font-weight:400}.pagination-controls{display:flex;gap:4px;align-items:center}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 10px;border:1px solid var(--jp-border);background:var(--jp-bg-card);border-radius:var(--jp-radius-sm);color:var(--jp-text-secondary);font-size:var(--jp-font-caption-size);font-family:var(--jp-font-sans);cursor:pointer;transition:all var(--jp-transition-fast);text-align:center}.pagination-btn:hover:not(:disabled){border-color:var(--jp-accent);color:var(--jp-accent)}.pagination-btn.active{background:var(--jp-primary);color:var(--jp-text-inverse);border-color:var(--jp-primary)}.pagination-btn:disabled{color:var(--jp-border);cursor:not-allowed;background:var(--jp-bg-muted);border-color:var(--jp-border-light)}.page-size-select{padding:6px 10px;border:1px solid var(--jp-border);border-radius:var(--jp-radius-sm);background:var(--jp-bg-card);font-size:var(--jp-font-caption-size);font-family:var(--jp-font-sans);color:var(--jp-text-secondary);margin-right:8px;outline:none;cursor:pointer;min-width:80px}.tabs{display:flex;gap:0;border-bottom:1px solid var(--jp-border);margin-bottom:var(--jp-space-xl)}.tab{padding:12px 20px;font-size:var(--jp-font-body-size);font-weight:var(--jp-font-label-weight);color:var(--jp-text-secondary);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;transition:all var(--jp-transition-fast);font-family:var(--jp-font-sans)}.tab:hover{color:var(--jp-text-body)}.tab.active{color:var(--jp-accent);border-bottom-color:var(--jp-accent)}.card{background:var(--jp-bg-card);border:1px solid var(--jp-border-light);border-radius:var(--jp-radius-lg);box-shadow:var(--jp-shadow-xs);transition:box-shadow var(--jp-transition-fast)}.card:hover{box-shadow:var(--jp-shadow-sm)}.stat-card{background:var(--jp-bg-card);border:1px solid var(--jp-border-light);border-radius:var(--jp-radius-lg);padding:var(--jp-space-xl);box-shadow:var(--jp-shadow-xs);transition:all var(--jp-transition-base)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--jp-shadow-md)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--jp-space-3xl) var(--jp-space-xl);color:var(--jp-text-muted)}.empty-state svg{margin-bottom:var(--jp-space-lg);opacity:.4}.loading-state{display:flex;align-items:center;justify-content:center;min-height:400px;font-size:14px;color:var(--jp-text-muted)}.skeleton{background:linear-gradient(90deg,var(--jp-bg-muted) 25%,var(--jp-bg-sunken) 50%,var(--jp-bg-muted) 75%);background-size:200% 100%;animation:skeletonPulse 1.5s ease infinite;border-radius:var(--jp-radius-sm)}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.page-enter{opacity:0;transform:translateY(6px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}
