.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--ms-primary:#0078d4;--ms-primary-hover:#005a9e;--ms-primary-active:#004578;--ms-bg:#f3f2f1;--ms-surface:#fff;--ms-border:#8a8886;--ms-border-light:#edebe9;--ms-text-primary:#323130;--ms-text-secondary:#605e5c;--ms-text-on-primary:#fff;--ms-shadow:0 2px 4px #00000024,0 0 2px #0000001f;--ms-shadow-lg:0 6.4px 14.4px 0 rgba(0,0,0,.132),0 1.2px 3.6px 0 rgba(0,0,0,.108);--ms-radius:2px;--ms-font:"Segoe UI",-apple-system,BlinkMacSystemFont,"Roboto","Helvetica Neue",sans-serif;--surface:var(--ms-surface);--border:var(--ms-border-light);--primary:var(--ms-primary);--text:var(--ms-text-primary);--muted:var(--ms-text-secondary);--surface-strong:#fffffff7;--glass-blur:12px;--glass-saturate:1.8;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001a;--primary-600:#0062ad}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f3f2f1;background-color:var(--ms-bg);color:#323130;color:var(--ms-text-primary);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font);height:100%;margin:0;overflow-x:hidden;padding:0}.f-card{background:#fff;background:var(--ms-surface);border-radius:2px;border-radius:var(--ms-radius);box-shadow:0 2px 4px #00000024,0 0 2px #0000001f;box-shadow:var(--ms-shadow);margin-bottom:16px;padding:20px}.f-title{color:#323130;color:var(--ms-text-primary);font-size:24px;font-weight:600;margin-bottom:8px}.f-subtitle{color:#605e5c;color:var(--ms-text-secondary);font-size:14px;margin-bottom:24px}.f-button{align-items:center;background:#0078d4;background:var(--ms-primary);border:1px solid #0078d4;border:1px solid var(--ms-primary);border-radius:2px;border-radius:var(--ms-radius);color:#fff;color:var(--ms-text-on-primary);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:32px;justify-content:center;padding:0 16px;transition:all .1s ease}.f-button:hover{background:#005a9e;background:var(--ms-primary-hover);border-color:#005a9e;border-color:var(--ms-primary-hover)}.f-button:active{background:#004578;background:var(--ms-primary-active);border-color:#004578;border-color:var(--ms-primary-active)}.f-button-secondary{background:#fff;background:var(--ms-surface);border:1px solid #8a8886;border:1px solid var(--ms-border);color:#323130;color:var(--ms-text-primary)}.f-button-secondary:hover{background:#f3f2f1;background:var(--ms-bg);border-color:#323130;border-color:var(--ms-text-primary)}.f-input{background:#fff;background:var(--ms-surface);border:1px solid #8a8886;border:1px solid var(--ms-border);border-radius:2px;border-radius:var(--ms-radius);color:#323130;color:var(--ms-text-primary);font-size:14px;height:32px;outline:none;padding:0 10px;transition:all .1s ease}.f-input:focus{border-color:#0078d4;border-color:var(--ms-primary);border-width:2px;padding:0 9px}.f-table{background:#fff;background:var(--ms-surface);border-collapse:collapse;width:100%}.f-table th{background:#f3f2f1;background:var(--ms-bg);color:#605e5c;color:var(--ms-text-secondary);font-size:13px;font-weight:600;text-align:left}.f-table td,.f-table th{border-bottom:1px solid #edebe9;border-bottom:1px solid var(--ms-border-light);padding:12px 16px}.f-table td{font-size:14px}.f-table tr:hover td{background:#f3f2f1;background:var(--ms-bg)}.f-header{align-items:center;background:#fff;background:var(--ms-surface);border-bottom:1px solid #edebe9;border-bottom:1px solid var(--ms-border-light);display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 32px}.f-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.f-stat-card{display:flex;flex-direction:column;padding:16px 20px}.f-stat-value{color:#0078d4;color:var(--ms-primary);font-size:28px;font-weight:600;margin:4px 0}.f-stat-label{color:#605e5c;color:var(--ms-text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.f-panel-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:10000}.f-panel{animation:f-slide-in .3s cubic-bezier(.1,.9,.2,1);background:#fff;background:var(--ms-surface);box-shadow:-8px 0 16px #0000001a;display:flex;flex-direction:column;height:100vh;max-width:450px;width:100%}@keyframes f-slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.f-panel-header{align-items:center;border-bottom:1px solid #edebe9;border-bottom:1px solid var(--ms-border-light);display:flex;justify-content:space-between;padding:24px 32px}.f-panel-content{flex:1 1;overflow-y:auto;padding:32px}.f-panel-footer{background:#f3f2f1;background:var(--ms-bg);border-top:1px solid #edebe9;border-top:1px solid var(--ms-border-light);display:flex;gap:12px;padding:24px 32px}.f-page-enter{animation:f-fade-in .3s ease-out forwards}@keyframes f-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.f-header{align-items:flex-start;flex-direction:column;gap:12px;padding:16px}.f-page-content{padding:0 16px 24px!important}.f-header>div:last-child{width:100%}.f-panel-overlay{align-items:flex-end;justify-content:stretch}.f-panel{animation:f-slide-up .3s cubic-bezier(.1,.9,.2,1);border-radius:12px 12px 0 0;height:92vh;max-width:100%;width:100%}.f-panel-header{padding:16px 20px}.f-panel-content{padding:20px}.f-panel-footer{padding:16px 20px}.f-title{font-size:20px}.f-card{padding:14px}.f-table td,.f-table th{font-size:13px;padding:10px 12px}}@keyframes f-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (hover:none){.f-input{font-size:16px}.f-button,.f-input{min-height:44px}}.m365-login-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;min-height:100vh;min-height:-webkit-fill-available;overflow:hidden;position:relative}.m365-background{background:url(https://ema-bucket-main.s3.us-east-2.amazonaws.com/app_assets/1tsq-vue.jpg) 50%/cover no-repeat;height:100%;left:0;position:fixed;top:0;width:100%;z-index:0}.m365-background:after{background:linear-gradient(135deg,#0006,#00000040);content:"";height:100%;left:0;position:absolute;top:0;width:100%}.m365-content{display:flex;flex-direction:column;min-height:100vh;position:relative;width:100%;z-index:1}.m365-header{display:flex;justify-content:flex-start;padding:48px 0 0 48px}.vue-logo{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:36px;object-fit:contain;width:auto}.m365-main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:20px}.m365-card{background:#fff;border-radius:0;box-shadow:0 2px 6px #0003,0 0 0 1px #0000000d;max-width:440px}.m365-card,.m365-card-inner{overflow:hidden;width:100%}.m365-slide-container{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1);width:200%}.m365-slide-container.slide-out{transform:translateX(-50%)}.m365-view{box-sizing:border-box;flex-shrink:0;padding:44px;width:50%}.m365-login-view{display:flex;flex-direction:column;min-height:440px}.m365-auth-view{align-items:center;display:flex;justify-content:center;min-height:440px}.m365-auth-content{max-width:100%;text-align:center;width:100%}.m365-auth-content .m365-title{word-wrap:break-word;overflow-wrap:break-word}.m365-auth-status{align-items:center;display:flex;flex-direction:column;gap:20px;margin-top:48px}.m365-auth-text{color:#605e5c;font-size:15px;font-weight:400;margin:0}.success-checkmark{margin:0 auto}.checkmark,.success-checkmark{height:80px;position:relative;width:80px}.checkmark{animation:scale-success .3s ease-in-out .9s both;border-radius:50%;display:block}.checkmark,.checkmark-circle{stroke-width:3;stroke-miterlimit:10}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke:#16a34a;fill:#16a34a;animation:stroke-circle .6s cubic-bezier(.65,0,.45,1) forwards,fill-circle .4s ease-in-out .4s forwards}.checkmark-check{stroke-dasharray:48;stroke-dashoffset:48;stroke:#fff;stroke-width:3;stroke-linecap:round;animation:stroke-check .3s cubic-bezier(.65,0,.45,1) .8s forwards;transform-origin:50% 50%}@keyframes stroke-circle{to{stroke-dashoffset:0}}@keyframes fill-circle{to{fill-opacity:1}}@keyframes stroke-check{to{stroke-dashoffset:0}}@keyframes scale-success{0%,to{transform:none}50%{transform:scale3d(1.1,1.1,1)}}.success-text{color:#16a34a;font-size:16px;font-weight:600}.error-icon{animation:fadeIn .3s ease-in-out;height:52px;margin:0 auto;width:52px}.m365-error-title{color:#1b1b1b;font-size:20px;font-weight:600;margin:0}.m365-error-message{color:#605e5c;font-size:15px;line-height:1.5;margin:8px 0 0}.m365-back-btn{background:#0067b8;border:1px solid #0067b8;border-radius:2px;color:#fff;cursor:pointer;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;font-size:15px;font-weight:600;height:32px;margin-top:24px;max-width:200px;padding:0 16px;transition:all .1s ease;width:100%}.m365-back-btn:hover{background:#005a9e;border-color:#005a9e}.m365-back-btn:active{background:#004578;border-color:#004578}.m365-title{color:#1b1b1b;font-size:24px;font-weight:600;letter-spacing:-.015em;margin:0 0 4px}.m365-subtitle{color:#1b1b1b;font-size:15px;font-weight:400;margin:0 0 24px}.m365-form{display:flex;flex-direction:column}.m365-label{color:#1b1b1b;display:block;font-size:13px;font-weight:600;margin:0 0 4px}.m365-input{background:#fff;border:1px solid #8a8886;border-radius:2px;color:#323130;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;font-size:15px;height:32px;margin:0 0 16px;outline:none;padding:0 10px;transition:all .1s ease;width:100%}.m365-input:hover:not(:disabled){border-color:#323130}.m365-input:focus:not(:disabled){border-color:#0078d4;border-width:2px;padding:0 9px}.m365-input:disabled{background:#f3f2f1;border-color:#c8c6c4;color:#a19f9d;cursor:not-allowed}.m365-input::placeholder{color:#605e5c;opacity:1}.m365-row{align-items:center;display:flex;justify-content:flex-start;margin:0 0 24px}.m365-remember{align-items:center;color:#1b1b1b;cursor:pointer;display:inline-flex;font-size:15px;gap:8px;-webkit-user-select:none;user-select:none}.m365-remember input[type=checkbox]{cursor:pointer;height:16px;width:16px}.m365-remember input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.m365-submit{align-items:center;background:#0067b8;border:1px solid #0067b8;border-radius:2px;color:#fff;cursor:pointer;display:flex;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;font-size:15px;font-weight:600;gap:8px;height:32px;justify-content:center;padding:0 16px;transition:all .1s ease;width:100%}.m365-submit:hover:not(:disabled){background:#005a9e;border-color:#005a9e}.m365-submit:active:not(:disabled){background:#004578;border-color:#004578}.m365-submit:disabled{background:#f3f2f1;border-color:#f3f2f1;color:#a19f9d;cursor:not-allowed}.ms-dots{align-items:center;display:flex;gap:5px;height:20px;justify-content:center}.ms-dot{animation:ms-bounce 1.4s ease-in-out infinite both;background:#0067b8;border-radius:50%;height:8px;width:8px}.m365-submit .ms-dot{background:#fff}.ms-dot:first-child{animation-delay:-.32s}.ms-dot:nth-child(2){animation-delay:-.16s}@keyframes ms-bounce{0%,80%,to{transform:translateY(0) scale(1)}40%{transform:translateY(-10px) scale(1.1)}}.m365-help{margin-top:16px;text-align:left}.m365-help-link{color:#0067b8;font-size:13px;font-weight:400;text-decoration:none}.m365-help-link:hover{text-decoration:underline}.m365-footer{align-items:center;color:#fff;display:flex;font-size:12px;gap:12px;justify-content:center;padding:0 20px 24px;text-shadow:0 1px 2px #0000004d}.m365-footer a{color:#fff;text-decoration:none;transition:opacity .2s ease}.m365-footer a:hover{opacity:.9;text-decoration:underline}.m365-footer .sep{color:#ffffffb3}@media (max-width:768px){.m365-login-page{min-height:100vh;min-height:-webkit-fill-available}.m365-content{width:100%}.m365-main{align-items:center;justify-content:flex-start;padding:20px 16px}.m365-header{padding:16px}.vue-logo{height:32px}.m365-card{background:#fffffffa;box-shadow:none;max-width:100%;width:100%}.m365-view{padding:32px 24px}.m365-title{font-size:24px;margin-bottom:6px}.m365-subtitle{font-size:15px;margin-bottom:24px}.m365-label{font-size:14px;margin-bottom:6px;margin-top:12px}.m365-input{font-size:16px;height:44px;margin-bottom:16px;padding:0 12px}.m365-input:focus:not(:disabled){padding:0 11px}.m365-submit{font-size:16px;height:44px}.m365-row{margin:4px 0 20px}.m365-remember{font-size:15px}.m365-remember input[type=checkbox]{height:20px;width:20px}.m365-help{margin-top:20px}.m365-help-link{font-size:14px}.m365-auth-view,.m365-login-view{min-height:500px}.m365-error-title{font-size:20px}.m365-error-message{font-size:15px;line-height:1.6}.m365-back-btn{font-size:16px;height:44px;max-width:100%}.m365-footer{font-size:13px;padding:0 20px 24px}}@media (max-width:480px){.m365-main{padding:16px 12px}.m365-header{padding:12px}.vue-logo{height:30px}.m365-card{box-shadow:none}.m365-view{padding:28px 20px}.m365-title{font-size:22px}.m365-subtitle{font-size:14px}.m365-label{font-size:13px}.m365-input{border-radius:4px;font-size:16px;height:48px}.m365-input:focus:not(:disabled){padding:0 11px}.m365-submit{border-radius:4px;height:48px}.m365-row{margin:8px 0 24px}.m365-remember{font-size:14px}.m365-help{margin-top:16px}.m365-auth-view,.m365-login-view{min-height:480px}.m365-auth-status{margin-top:40px}.checkmark,.success-checkmark{height:64px;width:64px}.error-icon,.error-icon svg{height:50px;width:50px}.m365-error-title{font-size:18px}.m365-error-message{font-size:14px}.m365-back-btn{border-radius:4px;height:48px;margin-top:24px}.m365-footer{flex-direction:column;font-size:12px;gap:10px;padding:0 12px 20px}.m365-footer .sep{display:none}}@media (max-width:375px){.m365-main{padding:12px 8px}.m365-view{padding:24px 18px}.m365-title{font-size:20px}.m365-subtitle{font-size:13px}}@media (hover:none) and (pointer:coarse){.m365-back-btn,.m365-input,.m365-submit{min-height:48px}.m365-remember input[type=checkbox]{min-height:22px;min-width:22px}.m365-help-link{align-items:center;display:inline-block;display:flex;min-height:44px;padding:10px 0}}@media (max-height:600px) and (orientation:landscape){.m365-login-page{min-height:100vh}.m365-main{padding:8px 16px}.m365-header{padding:8px 12px}.vue-logo{height:24px}.m365-view{padding:20px}.m365-login-view{min-height:auto}.m365-auth-view{min-height:auto;padding:20px}.m365-title{font-size:20px}.m365-subtitle{font-size:13px;margin-bottom:16px}.m365-label{margin-top:8px}.m365-input{height:40px;margin-bottom:12px}.m365-submit{height:40px}.m365-row{margin:6px 0 16px}.m365-help{margin-top:12px}.m365-auth-status{gap:16px;margin-top:24px}.checkmark,.success-checkmark{height:50px;width:50px}.error-icon,.error-icon svg{height:40px;width:40px}.m365-footer{font-size:11px;padding:0 16px 12px}}.layout{background-color:var(--ms-bg);display:flex;min-height:100vh;position:relative}.sidebar{background:var(--ms-surface);border-right:1px solid var(--ms-border-light);box-shadow:none;display:flex;flex-direction:column;height:100vh;position:fixed;transition:all .2s ease;z-index:1000}.sidebar.open{width:240px}.sidebar.closed{width:48px}.sidebar-header{align-items:center;box-sizing:border-box;display:flex;height:48px;justify-content:space-between;padding:16px}.logo{height:24px;transition:opacity .2s ease;width:auto}.sidebar.closed .logo{opacity:0;pointer-events:none;width:0}.toggle-btn{background:none;border:none;color:var(--ms-text-secondary);font-size:16px;justify-content:center;padding:8px;transition:all .1s ease}.toggle-btn:hover{background-color:var(--ms-bg);color:var(--ms-text-primary)}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;padding:8px 0}.nav-item{align-items:center;background:none;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font-family:var(--ms-font);font-size:14px;font-weight:400;height:40px;padding:0 16px;position:relative;text-align:left;transition:all .1s ease;width:100%}.nav-item:hover{background-color:var(--ms-bg)}.nav-item.active{background-color:#f1f5f9;color:var(--ms-primary);font-weight:600}.nav-item.active:before{background-color:var(--ms-primary);bottom:8px;content:"";left:0;position:absolute;top:8px;width:3px}.nav-icon{align-items:center;display:flex;font-size:16px;justify-content:center;min-width:20px}.nav-label{margin-left:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-content{background-color:var(--ms-bg);flex:1 1;min-height:100vh;transition:margin-left .2s ease}.main-content.sidebar-open{margin-left:240px}.main-content.sidebar-closed{margin-left:48px}.logout-btn{align-items:center;background:none;border:none;color:#d13438;cursor:pointer;display:flex;font-family:var(--ms-font);font-size:14px;height:40px;padding:0 16px;transition:all .1s ease;width:100%}.logout-btn:hover{background-color:#fde7e9}@media (max-width:768px){.sidebar{transform:translateX(-100%);width:280px!important}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0!important;padding-bottom:60px}}@media (min-width:769px){.main-content{min-height:100vh;overflow-y:auto}}@media (max-width:768px){.layout{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0);padding-top:env(safe-area-inset-top,0)}.sidebar{box-shadow:2px 0 24px #1e293b29;transform:translateX(-100%);width:280px!important}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0!important;min-height:100dvh;overflow-y:auto;padding:calc(16px + env(safe-area-inset-top, 0)) 16px calc(74px + env(safe-area-inset-bottom, 0));width:100%}.main-content.has-tabbar{padding-bottom:calc(72px + env(safe-area-inset-bottom, 0))!important}.main-content.sidebar-open{margin-left:0}.nav-item{min-height:48px;padding:16px 12px}.nav-icon{font-size:1.4rem}.nav-label{font-size:1.1rem}.toggle-btn{font-size:1.4rem;padding:12px}.logo{height:48px}}@media (hover:none){.nav-item:active{background-color:#f1f5f9;color:#1e293b}.nav-item.active:active{background-color:#1d4ed8}.toggle-btn:active{background-color:#f1f5f9;color:#1e293b}.logout-btn:active{background-color:#fee2e2}}@media (max-width:480px){.main-content{padding:12px}.sidebar{width:260px!important}.nav-item{padding:14px 12px}.nav-icon{font-size:1.3rem}.nav-label{font-size:1rem}}@media (max-height:500px) and (orientation:landscape){.sidebar{overflow-y:auto}.sidebar-header{padding:12px 20px}.sidebar-nav{padding:12px}.nav-item{padding:10px 12px}}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.mobile-tab-bar{display:none}@media (max-width:768px){.mobile-tab-bar{align-items:center;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));background:var(--surface-strong);border-top:1.5px solid var(--border);bottom:0;box-shadow:0 -8px 24px #1e293b1f;display:flex;height:62px;justify-content:space-around;left:0;overflow-x:hidden;padding:0;position:fixed;right:0;z-index:2000}.main-content{padding-bottom:calc(74px + env(safe-area-inset-bottom, 0))}.tab-btn{align-items:center;background:none;border:none;color:#64748b;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:1.1rem;height:100%;justify-content:center;min-width:0;outline:none;padding:0 0 2px;position:relative;transition:color .18s}.tab-btn.active{background:none;color:var(--primary);font-weight:700}.tab-btn.active:after{background:currentColor;border-radius:9999px;bottom:6px;content:"";height:4px;position:absolute;width:24px}.tab-icon{display:block;font-size:1.5rem;margin-bottom:2px}.tab-label{display:block;font-size:.85rem;font-weight:500;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width:390px){.mobile-tab-bar{height:54px}.tab-label{display:none}.tab-icon{font-size:1.6rem;margin-bottom:0}.tab-btn.active:after{bottom:8px}}:root{--vue-primary:#0078d4;--vue-primary-hover:#106ebe;--vue-primary-light:#e1f0ff;--vue-secondary:#005a9e;--vue-accent:#00bcf2;--vue-success:#107c10;--vue-warning:#f7b500;--vue-danger:#d83b01;--vue-neutral-100:#f3f2f1;--vue-neutral-200:#edebe9;--vue-neutral-300:#e1dfdd;--vue-neutral-400:#d2d0ce;--vue-neutral-500:#c8c6c4;--vue-neutral-600:#a19f9d;--vue-neutral-700:#605e5c;--vue-neutral-800:#323130;--vue-neutral-900:#201f1e;--vue-white:#fff;--vue-bg:#faf9f8;--vue-shadow-sm:0 1.6px 3.6px 0 #0000000d,0 0.3px 0.9px 0 #0000000a;--vue-shadow-md:0 3.2px 7.2px 0 #00000012,0 0.6px 1.8px 0 #0000000d;--vue-shadow-lg:0 6.4px 14.4px 0 #00000017,0 1.2px 3.6px 0 #0000000f;--vue-border-radius:8px;--vue-border-radius-lg:12px}.dashboard-container{background-color:#faf9f8;background-color:var(--vue-bg);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-size:14px;letter-spacing:.01em;min-height:100vh}.dashboard-content{background:#faf9f8;background:var(--vue-bg);margin:0 auto;max-width:1920px;padding:32px 40px}.dashboard-home{display:flex;flex-direction:column;gap:28px}.dashboard-header{background:#fff;background:var(--vue-white);border:1px solid #edebe9;border:1px solid var(--vue-neutral-200);border-radius:12px;border-radius:var(--vue-border-radius-lg);box-shadow:0 1.6px 3.6px 0 #0000000d,0 .3px .9px 0 #0000000a;box-shadow:var(--vue-shadow-sm);margin-bottom:8px;padding:28px 32px}.dashboard-greeting{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.dashboard-greeting-text{display:flex;flex-direction:column;gap:4px}.dashboard-greeting-time{color:#605e5c;color:var(--vue-neutral-700);font-size:15px;font-weight:400;letter-spacing:.015em}.dashboard-greeting-name{color:#201f1e;color:var(--vue-neutral-900);font-size:28px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.dashboard-stats-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:8px}.dashboard-stat-card{background:#fff;background:var(--vue-white);border:1px solid #edebe9;border:1px solid var(--vue-neutral-200);border-radius:8px;border-radius:var(--vue-border-radius);box-shadow:0 1.6px 3.6px 0 #0000000d,0 .3px .9px 0 #0000000a;box-shadow:var(--vue-shadow-sm);display:flex;flex-direction:column;gap:12px;overflow:hidden;padding:20px 24px;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1)}.dashboard-stat-card:before{background:linear-gradient(90deg,#0078d4,#00bcf2);background:linear-gradient(90deg,var(--vue-primary),var(--vue-accent));content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.dashboard-stat-card:hover{border-color:#e1dfdd;border-color:var(--vue-neutral-300);box-shadow:0 3.2px 7.2px 0 #00000012,0 .6px 1.8px 0 #0000000d;box-shadow:var(--vue-shadow-md);transform:translateY(-2px)}.dashboard-stat-card:hover:before{opacity:1}.dashboard-stat-icon{color:#0078d4;color:var(--vue-primary);font-size:20px;opacity:.9}.dashboard-stat-label{color:#605e5c;color:var(--vue-neutral-700);font-size:13px;font-weight:400;letter-spacing:.05em;text-transform:uppercase}.dashboard-stat-value{color:#201f1e;color:var(--vue-neutral-900);font-size:32px;font-weight:600;letter-spacing:-.02em;line-height:1}.dashboard-stat-clickable{cursor:pointer}.dashboard-todo-section{background:#fff;background:var(--vue-white);border:1px solid #edebe9;border:1px solid var(--vue-neutral-200);border-radius:12px;border-radius:var(--vue-border-radius-lg);box-shadow:0 1.6px 3.6px 0 #0000000d,0 .3px .9px 0 #0000000a;box-shadow:var(--vue-shadow-sm);padding:28px 32px}.dashboard-todo-title{color:#201f1e;color:var(--vue-neutral-900);font-size:20px;font-weight:600;letter-spacing:-.01em;margin-bottom:20px}.dashboard-todo-list{display:flex;flex-direction:column;gap:10px}.dashboard-todo-item{align-items:center;background:#f3f2f1;background:var(--vue-neutral-100);border:1px solid #0000;border-radius:8px;border-radius:var(--vue-border-radius);display:flex;justify-content:space-between;padding:14px 18px;transition:all .15s cubic-bezier(.4,0,.2,1)}.dashboard-todo-item:hover{background:#edebe9;background:var(--vue-neutral-200);border-color:#e1dfdd;border-color:var(--vue-neutral-300)}.dashboard-todo-link{cursor:pointer}.dashboard-todo-label{color:#201f1e;color:var(--vue-neutral-900);font-size:14px;font-weight:500}.dashboard-todo-badge{background:#0078d4;background:var(--vue-primary);border-radius:16px;color:#fff;color:var(--vue-white);font-size:12px;font-weight:600;min-width:28px;padding:6px 12px;text-align:center}.dashboard-graphs-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(480px,1fr))}.dashboard-2x2-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-bottom:8px}.dashboard-graph-card{background:#fff;background:var(--vue-white);border:1px solid #edebe9;border:1px solid var(--vue-neutral-200);border-radius:12px;border-radius:var(--vue-border-radius-lg);box-shadow:0 1.6px 3.6px 0 #0000000d,0 .3px .9px 0 #0000000a;box-shadow:var(--vue-shadow-sm);padding:28px 32px;transition:all .2s ease}.dashboard-graph-card:hover{box-shadow:0 3.2px 7.2px 0 #00000012,0 .6px 1.8px 0 #0000000d;box-shadow:var(--vue-shadow-md)}.dashboard-graph-title{border-bottom:2px solid #edebe9;border-bottom:2px solid var(--vue-neutral-200);color:#201f1e;color:var(--vue-neutral-900);font-size:16px;font-weight:600;letter-spacing:-.01em;margin-bottom:20px;padding-bottom:12px}.dashboard-modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.dashboard-modal-content{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:#fff;background:var(--vue-white);border:1px solid #edebe9;border:1px solid var(--vue-neutral-200);border-radius:12px;border-radius:var(--vue-border-radius-lg);box-shadow:0 6.4px 14.4px 0 #00000017,0 1.2px 3.6px 0 #0000000f;box-shadow:var(--vue-shadow-lg);max-height:90vh;max-width:900px;overflow-y:auto;padding:32px;position:relative;width:90%}.dashboard-modal-close{background:#f3f2f1;background:var(--vue-neutral-100);border:1px solid #e1dfdd;border:1px solid var(--vue-neutral-300);border-radius:6px;color:#605e5c;color:var(--vue-neutral-700);cursor:pointer;font-size:20px;line-height:1;padding:6px 10px;position:absolute;right:20px;top:20px;transition:all .15s ease}.dashboard-modal-close:hover{background:#edebe9;background:var(--vue-neutral-200);color:#201f1e;color:var(--vue-neutral-900)}.dashboard-revenue-card{cursor:pointer}.dashboard-revenue-section{margin-bottom:28px}.dashboard-revenue-section h3{color:#201f1e;color:var(--vue-neutral-900);font-size:18px;font-weight:600;letter-spacing:-.01em;margin-bottom:16px}.dashboard-revenue-item{align-items:center;border-bottom:1px solid #edebe9;border-bottom:1px solid var(--vue-neutral-200);display:flex;justify-content:space-between;padding:12px 0}.dashboard-revenue-label{color:#605e5c;color:var(--vue-neutral-700);font-size:14px;font-weight:500}.dashboard-revenue-value{color:#201f1e;color:var(--vue-neutral-900);font-size:14px;font-weight:600}.dashboard-revenue-total{color:#605e5c;color:var(--vue-neutral-700);font-size:14px;margin-top:12px;text-align:right}.dashboard-revenue-grandtotal{border-top:2px solid #e1dfdd;border-top:2px solid var(--vue-neutral-300);color:#201f1e;color:var(--vue-neutral-900);font-size:20px;font-weight:600;margin-top:28px;padding-top:20px;text-align:right}.dashboard-calendar-row{padding:0}.calendar-toggle{background:#fff;background:var(--vue-white);border:1px solid #e1dfdd;border:1px solid var(--vue-neutral-300);border-radius:8px;border-radius:var(--vue-border-radius);color:#605e5c;color:var(--vue-neutral-700);cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px;transition:all .15s cubic-bezier(.4,0,.2,1)}.calendar-toggle:hover{background:#f3f2f1;background:var(--vue-neutral-100);border-color:#d2d0ce;border-color:var(--vue-neutral-400);color:#201f1e;color:var(--vue-neutral-900)}.calendar-toggle-active{background:#0078d4;background:var(--vue-primary);border:1px solid #0078d4;border:1px solid var(--vue-primary);border-radius:8px;border-radius:var(--vue-border-radius);color:#fff;color:var(--vue-white);cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .15s cubic-bezier(.4,0,.2,1)}.calendar-toggle-active:hover{background:#106ebe;background:var(--vue-primary-hover);border-color:#106ebe;border-color:var(--vue-primary-hover)}@media (max-width:1200px){.dashboard-2x2-grid,.dashboard-graphs-row{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-content{padding:20px}.dashboard-header{padding:20px 24px}.dashboard-greeting-name{font-size:24px}.dashboard-stats-row{display:flex;flex-direction:column;gap:12px}.dashboard-stat-card{align-items:center;flex-direction:row;gap:16px;justify-content:space-between;min-height:60px;padding:16px 20px}.dashboard-stat-card:before{height:100%;left:0;right:auto;top:0;width:3px}.dashboard-stat-icon{font-size:22px;margin-right:12px}.dashboard-stat-label{flex:1 1;font-size:12px;text-transform:none}.dashboard-stat-value{font-size:24px;margin-left:auto}.dashboard-2x2-grid,.dashboard-graphs-row{grid-template-columns:1fr}.dashboard-graphs-row{gap:16px}.dashboard-graph-card{padding:20px 24px}.dashboard-modal-content{margin:16px;padding:24px;width:95%}.dashboard-todo-section{padding:20px 24px}.dashboard-todo-title{font-size:18px}.dashboard-graph-title{font-size:15px}}@media (max-width:480px){.dashboard-content{padding:16px}.dashboard-header{padding:16px 20px}.dashboard-greeting-name{font-size:20px}.dashboard-graphs-row,.dashboard-stats-row{gap:12px}.dashboard-stat-card{min-height:52px;padding:14px 16px}.dashboard-stat-icon{font-size:18px}.dashboard-stat-label{font-size:11px}.dashboard-stat-value{font-size:20px}.dashboard-graph-card,.dashboard-todo-section{padding:16px 20px}.dashboard-todo-item{padding:12px 14px}.dashboard-todo-label{font-size:13px}.dashboard-todo-badge{font-size:11px;padding:5px 10px}}@media (hover:none){.dashboard-stat-card:active{box-shadow:0 3.2px 7.2px 0 #00000012,0 .6px 1.8px 0 #0000000d;box-shadow:var(--vue-shadow-md);transform:translateY(-1px)}.calendar-toggle:active,.dashboard-todo-item:active{background:#edebe9;background:var(--vue-neutral-200)}}@media (max-height:500px) and (orientation:landscape){.dashboard-modal-content{max-height:85vh;padding:20px}.dashboard-graphs-row,.dashboard-stats-row{gap:12px}.dashboard-graph-card,.dashboard-stat-card,.dashboard-todo-section{padding:16px}}.fa-spin{animation:fa-spin 1s linear infinite}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dashboard-modal-content{scrollbar-color:#d2d0ce #f3f2f1;scrollbar-color:var(--vue-neutral-400) var(--vue-neutral-100);scrollbar-width:thin}.dashboard-modal-content::-webkit-scrollbar{width:8px}.dashboard-modal-content::-webkit-scrollbar-track{background:#f3f2f1;background:var(--vue-neutral-100);border-radius:4px}.dashboard-modal-content::-webkit-scrollbar-thumb{background:#d2d0ce;background:var(--vue-neutral-400);border-radius:4px}.dashboard-modal-content::-webkit-scrollbar-thumb:hover{background:#c8c6c4;background:var(--vue-neutral-500)}.recharts-default-tooltip{background:#fff!important;background:var(--vue-white)!important;border:1px solid #e1dfdd!important;border:1px solid var(--vue-neutral-300)!important;border-radius:8px!important;border-radius:var(--vue-border-radius)!important;box-shadow:0 3.2px 7.2px 0 #00000012,0 .6px 1.8px 0 #0000000d!important;box-shadow:var(--vue-shadow-md)!important;padding:12px!important}.recharts-tooltip-label{color:#201f1e!important;color:var(--vue-neutral-900)!important;font-weight:600!important;margin-bottom:8px!important}.recharts-legend-wrapper{padding-top:16px!important}.rbc-calendar{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif!important}.rbc-header{background:#f3f2f1!important;background:var(--vue-neutral-100)!important;border-bottom:2px solid #e1dfdd!important;border-bottom:2px solid var(--vue-neutral-300)!important;color:#201f1e!important;color:var(--vue-neutral-900)!important;font-weight:600!important;padding:12px 6px!important}.rbc-event,.rbc-header{font-size:13px!important}.rbc-event{background:#0078d4!important;background:var(--vue-primary)!important;border-radius:4px!important;font-weight:500!important;padding:4px 8px!important}.rbc-today{background-color:#e1f0ff!important;background-color:var(--vue-primary-light)!important}.rbc-toolbar button{background:#fff!important;background:var(--vue-white)!important;border:1px solid #e1dfdd!important;border:1px solid var(--vue-neutral-300)!important;border-radius:8px!important;border-radius:var(--vue-border-radius)!important;color:#201f1e!important;color:var(--vue-neutral-900)!important;font-weight:500!important;padding:8px 14px!important;transition:all .15s ease!important}.rbc-toolbar button:hover{background:#f3f2f1!important;background:var(--vue-neutral-100)!important;border-color:#d2d0ce!important;border-color:var(--vue-neutral-400)!important}.rbc-toolbar button.rbc-active{background:#0078d4!important;background:var(--vue-primary)!important;border-color:#0078d4!important;border-color:var(--vue-primary)!important;color:#fff!important;color:var(--vue-white)!important}.settings-btn{background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:1.2rem;margin-left:8px;padding:8px;transition:all .2s ease}.settings-btn:hover{background-color:#f1f5f9;color:#1e293b}.settings-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e293b73;justify-content:center;position:fixed;z-index:1100}.settings-modal,.settings-modal-overlay{bottom:0;display:flex;left:0;right:0;top:0}.settings-modal{background:#fff;border-radius:20px;box-shadow:0 8px 32px #1e293b2e;flex-direction:column;height:90vh;margin:auto;max-height:90vh;max-width:1200px;overflow:hidden;position:relative;width:95vw}@media (max-width:900px){.settings-modal{border-radius:0;height:99vh;max-height:99vh;max-width:99vw;width:99vw}}.settings-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px}.settings-header h2{color:#1e293b;font-size:1.5rem;margin:0}.header-actions{align-items:center;gap:16px}.filter-container{align-items:center;color:#64748b;display:flex;gap:8px}.action-filter{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px}.action-filter,.refresh-btn{color:#1e293b;cursor:pointer;font-size:.9rem}.refresh-btn{background-color:#f1f5f9;border:none;border-radius:8px;padding:8px 16px;transition:all .2s ease}.refresh-btn:hover{background-color:#e2e8f0}.close-btn{border-radius:8px;color:#64748b;font-size:1.5rem;padding:8px;transition:all .2s ease}.close-btn:hover{background-color:#f1f5f9;color:#1e293b}.settings-content{display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding:24px}.user-info{background-color:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.user-info h3{color:#1e293b;margin:0 0 8px}.user-info p{color:#64748b;font-size:.9rem;margin:0}.activity-logs{flex:1 1;overflow-y:auto}.logs-list{display:flex;flex-direction:column;gap:12px}.log-item{align-items:flex-start;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.log-item:hover{background:#f1f5f9;transform:translateX(4px)}.log-icon{align-items:center;display:flex;font-size:1.5rem;justify-content:center;min-width:32px}.log-content{flex:1 1}.log-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.log-action{color:#1e293b;font-size:1rem;font-weight:500}.log-time{color:#64748b;font-size:.85rem;margin-left:16px;white-space:nowrap}.log-reason{background-color:#f1f5f9;border-left:3px solid #94a3b8;border-radius:8px;color:#64748b;font-size:.9rem;margin:8px 0;padding:8px 12px}.log-details{display:flex;flex-wrap:wrap;font-size:.85rem;gap:12px;margin-top:8px}.log-user{color:#3b82f6;font-weight:500}.log-id{background-color:#f1f5f9;border-radius:4px;color:#64748b;padding:2px 8px}.loading,.no-logs{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;color:#64748b;font-size:1.1rem;padding:48px;text-align:center}:root{--ms-blue:#0078d4;--ms-blue-dark:#005a9e;--ms-blue-light:#2b88d8;--ms-green:#107c10;--ms-red:#d13438;--ms-yellow:#fde300;--ms-orange:#d83b01;--ms-gray-10:#faf9f8;--ms-gray-20:#f3f2f1;--ms-gray-30:#edebe9;--ms-gray-40:#e1dfdd;--ms-gray-50:#d2d0ce;--ms-gray-60:#c8c6c4;--ms-gray-70:#bebbb8;--ms-gray-80:#a19f9d;--ms-gray-90:#979593;--ms-gray-100:#8a8886;--ms-gray-110:#7a7574;--ms-gray-120:#6d6a67;--ms-gray-130:#605e5c;--ms-gray-140:#52504e;--ms-gray-150:#484644;--ms-gray-160:#3b3a39;--ms-gray-170:#323130;--ms-gray-180:#292827;--ms-gray-190:#201f1e;--ms-depth-4:0 1.6px 3.6px rgba(0,0,0,.132),0 0.3px 0.9px rgba(0,0,0,.108);--ms-depth-8:0 3.2px 7.2px rgba(0,0,0,.132),0 0.6px 1.8px rgba(0,0,0,.108);--ms-depth-16:0 6.4px 14.4px rgba(0,0,0,.132),0 1.2px 3.6px rgba(0,0,0,.108);--ms-depth-64:0 25.6px 57.6px #00000038,0 4.8px 14.4px #0000002e;--ms-font-family:"Segoe UI",-apple-system,BlinkMacSystemFont,"Roboto","Helvetica Neue",sans-serif;--ms-font-weight-regular:400;--ms-font-weight-semibold:600;--ms-duration-fast:0.1s;--ms-duration-normal:0.2s;--ms-duration-slow:0.3s;--ms-ease:cubic-bezier(0.1,0.9,0.2,1);--ms-radius-small:2px;--ms-radius-medium:4px;--ms-radius-large:8px}.campaign-detail-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.campaign-detail-modal{animation:slideUp .2s cubic-bezier(.1,.9,.2,1);animation:slideUp var(--ms-duration-normal) var(--ms-ease);background:#fff;border-radius:8px;border-radius:var(--ms-radius-large);box-shadow:0 25.6px 57.6px #00000038,0 4.8px 14.4px #0000002e;box-shadow:var(--ms-depth-64);max-height:90vh;max-width:1400px;outline:none;overflow-x:hidden;overflow-y:auto;position:relative;width:95%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.campaign-detail-header{align-items:flex-start;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#faf9f8;background:var(--ms-gray-10);border-bottom:1px solid #edebe9;border-bottom:1px solid var(--ms-gray-30);display:flex;justify-content:space-between;padding:24px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.campaign-detail-header-left{display:flex;flex:1 1;flex-direction:column;gap:8px}.campaign-detail-title{color:#323130;color:var(--ms-gray-170);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);font-size:24px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin:0}.campaign-detail-meta{align-items:center;display:flex;gap:12px;margin-bottom:4px}.campaign-id-display{background:#f3f2f1;background:var(--ms-gray-20);border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:2px;border-radius:var(--ms-radius-small);color:#605e5c;color:var(--ms-gray-130);font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;padding:4px 10px}.campaign-id-display strong{color:#3b3a39;color:var(--ms-gray-160);margin-right:6px}.campaign-detail-badges{display:flex;flex-wrap:wrap;gap:8px}.campaign-detail-header-actions{align-items:flex-start;display:flex;gap:12px}.campaign-detail-close{align-items:center;background:none;border:none;border-radius:2px;border-radius:var(--ms-radius-small);color:#605e5c;color:var(--ms-gray-130);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease);width:40px}.campaign-detail-close:hover{background:#f3f2f1;background:var(--ms-gray-20);color:#323130;color:var(--ms-gray-170)}.campaign-detail-close:active{background:#edebe9;background:var(--ms-gray-30)}.campaign-detail-tabs{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#faf9f8;background:var(--ms-gray-10);border-bottom:2px solid #edebe9;border-bottom:2px solid var(--ms-gray-30);display:flex;gap:0;padding:0 32px;position:-webkit-sticky;position:sticky;top:89px;z-index:9}.campaign-detail-tabs .tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#605e5c;color:var(--ms-gray-130);cursor:pointer;display:flex;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);font-size:14px;font-weight:600;font-weight:var(--ms-font-weight-semibold);gap:6px;margin-bottom:-2px;padding:12px 20px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.campaign-detail-tabs .tab:hover{background:#f3f2f1;background:var(--ms-gray-20);color:#323130;color:var(--ms-gray-170)}.campaign-detail-tabs .tab.active{background:none;border-bottom-color:#0078d4;border-bottom-color:var(--ms-blue);color:#0078d4;color:var(--ms-blue)}.campaign-detail-tabs .tab:focus-visible{outline:2px solid #201f1e;outline:2px solid var(--ms-gray-190);outline-offset:2px}.campaign-detail-body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);max-height:calc(90vh - 200px);overflow-y:auto;padding:24px 32px}.tab-content{animation:fadeIn .2s ease;animation:fadeIn var(--ms-duration-normal) ease}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.detail-card{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);padding:20px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.detail-card:hover{border-color:#e1dfdd;border-color:var(--ms-gray-40);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8)}.detail-card.card-full-width{grid-column:1/-1}.card-header{justify-content:space-between;margin-bottom:16px}.card-header,.card-header h3{align-items:center;display:flex}.card-header h3{color:#323130;color:var(--ms-gray-170);font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold);gap:8px;margin:0}.card-icon{color:#0078d4;color:var(--ms-blue);opacity:.8}.card-highlight-green{border-left:4px solid #107c10;border-left:4px solid var(--ms-green)}.card-highlight-blue{border-left:4px solid #0078d4;border-left:4px solid var(--ms-blue)}.card-highlight-red{border-left:4px solid #d13438;border-left:4px solid var(--ms-red)}.card-highlight-yellow{border-left:4px solid #fde300;border-left:4px solid var(--ms-yellow)}.btn{border:1px solid #0000;border-radius:2px;border-radius:var(--ms-radius-small);box-shadow:none;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);font-weight:var(--ms-font-weight-semibold);outline-offset:2px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.btn:focus-visible{outline:2px solid #201f1e;outline:2px solid var(--ms-gray-190);outline-offset:2px}.btn-primary{background:#0078d4;background:var(--ms-blue);border-color:#0078d4;border-color:var(--ms-blue)}.btn-primary:hover{background:#005a9e;background:var(--ms-blue-dark);border-color:#005a9e;border-color:var(--ms-blue-dark);transform:none}.btn-primary:active{background:#004578;border-color:#004578}.btn-secondary{background:#fff;border-color:#d2d0ce;border-color:var(--ms-gray-50);color:#3b3a39;color:var(--ms-gray-160)}.btn-secondary:hover{background:#f3f2f1;background:var(--ms-gray-20);border-color:#c8c6c4;border-color:var(--ms-gray-60)}.btn-secondary:active{background:#edebe9;background:var(--ms-gray-30);border-color:#a19f9d;border-color:var(--ms-gray-80)}.btn-success{background:#107c10;background:var(--ms-green);border-color:#107c10;border-color:var(--ms-green)}.btn-success:hover{background:#0b6a0b;border-color:#0b6a0b}.btn-danger{background:#d13438;background:var(--ms-red);border-color:#d13438;border-color:var(--ms-red);color:#fff}.btn-danger:hover{background:#a4262c;border-color:#a4262c}.btn-sm{font-size:13px;padding:6px 12px}.btn-md{font-size:14px;padding:8px 16px}.btn-lg{font-size:16px;padding:10px 20px}.badge{align-items:center;border:1px solid #0000;border-radius:2px;border-radius:var(--ms-radius-small);display:inline-flex;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);font-size:12px;font-weight:600;font-weight:var(--ms-font-weight-semibold);gap:4px;padding:4px 8px}.badge-success{background:#dff6dd;border-color:#107c10;border-color:var(--ms-green);color:#107c10;color:var(--ms-green)}.badge-danger{background:#fde7e9;border-color:#d13438;border-color:var(--ms-red);color:#d13438;color:var(--ms-red)}.badge-warning{background:#fff4ce;border-color:#fde300;border-color:var(--ms-yellow);color:#797673}.badge-primary{background:#deecf9;border-color:#0078d4;border-color:var(--ms-blue);color:#0078d4;color:var(--ms-blue)}.badge-secondary{background:#f3f2f1;background:var(--ms-gray-20);border-color:#c8c6c4;border-color:var(--ms-gray-60)}.badge-default,.badge-secondary{color:#605e5c;color:var(--ms-gray-130)}.badge-default{background:#faf9f8;background:var(--ms-gray-10);border-color:#e1dfdd;border-color:var(--ms-gray-40)}.input{background:#fff;border:1px solid #c8c6c4;border:1px solid var(--ms-gray-60);border-radius:2px;border-radius:var(--ms-radius-small);color:#323130;color:var(--ms-gray-170);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);font-size:14px;outline:none;padding:8px 12px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.input:hover{border-color:#a19f9d;border-color:var(--ms-gray-80)}.input:focus{border-color:#0078d4;border-color:var(--ms-blue);box-shadow:0 0 0 1px #0078d4;box-shadow:0 0 0 1px var(--ms-blue)}.input-sm{font-size:13px;padding:4px 8px}.input-lg{font-size:16px;padding:12px 16px}select.input{cursor:pointer}textarea.input{min-height:80px;resize:vertical}.label{color:#323130;color:var(--ms-gray-170);display:block;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);font-size:14px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin-bottom:6px}.detail-row{align-items:center;border-bottom:1px solid #f3f2f1;border-bottom:1px solid var(--ms-gray-20);display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#605e5c;color:var(--ms-gray-130);font-weight:400;font-weight:var(--ms-font-weight-regular);margin-bottom:0}.detail-row .value{color:#323130;color:var(--ms-gray-170);font-weight:600;font-weight:var(--ms-font-weight-semibold)}.loading-state{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);gap:16px;justify-content:center;padding:60px 20px}.loading-state .fa-spin{color:#0078d4;color:var(--ms-blue);font-size:32px}.empty-state{align-items:center;color:#605e5c;color:var(--ms-gray-130);display:flex;flex-direction:column;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family);gap:16px;justify-content:center}.empty-state svg{color:#a19f9d;color:var(--ms-gray-80);opacity:.5}.pacing-overview{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.pacing-metric{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);padding:16px}.pacing-metric-label{color:#605e5c;color:var(--ms-gray-130);font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.pacing-metric-label,.pacing-metric-value{font-weight:600;font-weight:var(--ms-font-weight-semibold)}.pacing-metric-value{align-items:center;color:#323130;color:var(--ms-gray-170);display:flex;font-size:28px;gap:8px}.pacing-metric-value.positive{color:#107c10;color:var(--ms-green)}.pacing-metric-value.negative{color:#d13438;color:var(--ms-red)}.pacing-metric-subtext{color:#7a7574;color:var(--ms-gray-110);font-size:12px;margin-top:4px}.schedule-container-modern{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(7,1fr)}.schedule-day-card{border:1px solid #edebe9;border:1px solid var(--ms-gray-30);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.schedule-day-card:hover{box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8)}.schedule-day-header{background:#0078d4;background:var(--ms-blue);color:#fff;font-size:14px;font-weight:600;font-weight:var(--ms-font-weight-semibold);padding:12px;text-align:center}.schedule-day-header.has-segments{background:#107c10;background:var(--ms-green)}.schedule-day-body{padding:12px}.schedule-segment{align-items:center;background:#faf9f8;background:var(--ms-gray-10);border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:2px;border-radius:var(--ms-radius-small);display:flex;font-size:13px;gap:8px;margin-bottom:8px;padding:8px}.schedule-segment-number{align-items:center;background:#0078d4;background:var(--ms-blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:11px;font-weight:600;font-weight:var(--ms-font-weight-semibold);height:20px;justify-content:center;width:20px}.schedule-segment-times{align-items:center;color:#323130;color:var(--ms-gray-170);display:flex;flex:1 1;gap:4px}.schedule-segment-actions{display:flex;gap:4px}.schedule-segment-actions button{background:none;border:none;border-radius:2px;border-radius:var(--ms-radius-small);color:#7a7574;color:var(--ms-gray-110);cursor:pointer;padding:4px;transition:color .1s cubic-bezier(.1,.9,.2,1);transition:color var(--ms-duration-fast) var(--ms-ease)}.schedule-segment-actions button:hover{background:#f3f2f1;background:var(--ms-gray-20);color:#0078d4;color:var(--ms-blue)}.schedule-add-segment{align-items:center;background:#f3f2f1;background:var(--ms-gray-20);border:1px dashed #c8c6c4;border:1px dashed var(--ms-gray-60);border-radius:2px;border-radius:var(--ms-radius-small);color:#605e5c;color:var(--ms-gray-130);cursor:pointer;display:flex;font-size:13px;gap:4px;justify-content:center;padding:8px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease);width:100%}.schedule-add-segment:hover{background:#edebe9;background:var(--ms-gray-30);border-color:#a19f9d;border-color:var(--ms-gray-80);color:#323130;color:var(--ms-gray-170)}.schedule-templates{border-top:2px solid #edebe9;border-top:2px solid var(--ms-gray-30);display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px}.schedule-template-btn{background:#fff;border:1px solid #c8c6c4;border:1px solid var(--ms-gray-60);border-radius:2px;border-radius:var(--ms-radius-small);color:#323130;color:var(--ms-gray-170);cursor:pointer;font-size:13px;font-weight:600;font-weight:var(--ms-font-weight-semibold);padding:8px 16px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.schedule-template-btn:hover{background:#f3f2f1;background:var(--ms-gray-20);border-color:#0078d4;border-color:var(--ms-blue);color:#0078d4;color:var(--ms-blue)}.schedule-save-btn{background:#0078d4;background:var(--ms-blue);border:none;border-radius:2px;border-radius:var(--ms-radius-small);color:#fff;cursor:pointer;font-size:14px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin-top:16px;padding:10px 20px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.schedule-save-btn:hover{background:#005a9e;background:var(--ms-blue-dark)}.schedule-save-btn:disabled{background:#c8c6c4;background:var(--ms-gray-60);cursor:not-allowed}.signs-grid-modern{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.sign-card-modern{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);overflow:hidden;transition:all .2s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-normal) var(--ms-ease)}.sign-card-modern:hover{border-color:#0078d4;border-color:var(--ms-blue);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8)}.sign-card-modern.sign-disabled{opacity:.6}.sign-header-modern{align-items:center;background:linear-gradient(135deg,#0078d4,#005a9e);background:linear-gradient(135deg,var(--ms-blue) 0,var(--ms-blue-dark) 100%);display:flex;height:180px;justify-content:center;overflow:hidden;position:relative}.sign-thumbnail{height:100%;object-fit:cover;width:100%}.sign-thumbnail-placeholder{align-items:center;background:linear-gradient(135deg,#0078d4,#005a9e);background:linear-gradient(135deg,var(--ms-blue) 0,var(--ms-blue-dark) 100%);color:#fff;display:flex;font-size:48px;height:100%;justify-content:center;width:100%}.sign-status-badge{position:absolute;right:12px;top:12px;z-index:1}.sign-body-modern{padding:16px}.sign-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#323130;color:var(--ms-gray-170);display:-webkit-box;font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin:0 0 8px;overflow:hidden}.sign-location{align-items:center;color:#605e5c;color:var(--ms-gray-130);display:flex;font-size:13px;gap:6px;margin-bottom:12px}.sign-metrics-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-top:12px}.metric-item{align-items:center;background:#faf9f8;background:var(--ms-gray-10);border-radius:2px;border-radius:var(--ms-radius-small);display:flex;gap:8px;padding:8px}.metric-icon{color:#0078d4;color:var(--ms-blue);font-size:16px}.metric-value{font-size:18px;line-height:1}.metric-label{color:#7a7574;color:var(--ms-gray-110);font-size:11px}.sign-performance{border-top:1px solid #edebe9;border-top:1px solid var(--ms-gray-30);margin-top:12px;padding-top:12px}.sign-performance-title{color:#605e5c;color:var(--ms-gray-130);font-size:12px;font-weight:600;font-weight:var(--ms-font-weight-semibold);letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.sign-performance-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.sign-stat{text-align:center}.sign-stat-value{color:#323130;color:var(--ms-gray-170);display:block;font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold)}.sign-stat-label{color:#7a7574;color:var(--ms-gray-110);display:block;font-size:10px;text-transform:uppercase}.sign-actions{margin-top:12px}.sign-actions button{background:#fff;border:1px solid #c8c6c4;border:1px solid var(--ms-gray-60);border-radius:2px;border-radius:var(--ms-radius-small);color:#323130;color:var(--ms-gray-170);cursor:pointer;flex:1 1;font-size:13px;font-weight:600;font-weight:var(--ms-font-weight-semibold);padding:8px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.sign-actions button:hover{background:#f3f2f1;background:var(--ms-gray-20);border-color:#0078d4;border-color:var(--ms-blue);color:#0078d4;color:var(--ms-blue)}.rtb-events-container{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;font-family:var(--ms-font-family)}.rtb-header{align-items:center;border-bottom:2px solid #edebe9;border-bottom:2px solid var(--ms-gray-30);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.rtb-header h3{color:#323130;color:var(--ms-gray-170);font-size:20px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin:0}.rtb-controls,.rtb-header h3{align-items:center;display:flex;gap:8px}.rtb-search{align-items:center;display:flex;position:relative}.rtb-search svg{color:#7a7574;color:var(--ms-gray-110);left:10px;pointer-events:none;position:absolute}.rtb-search input{min-width:250px;padding-left:32px}.rtb-section{margin-bottom:24px}.rtb-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.rtb-section-header h4{align-items:center;color:#323130;color:var(--ms-gray-170);display:flex;font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold);gap:8px;margin:0}.rtb-events-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.rtb-event-card{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);padding:12px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.rtb-event-card:hover{box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8)}.rtb-event-card.win{border-left:4px solid #107c10;border-left:4px solid var(--ms-green)}.rtb-event-card.loss{border-left:4px solid #d13438;border-left:4px solid var(--ms-red)}.rtb-event-card.impression{border-left:4px solid #0078d4;border-left:4px solid var(--ms-blue)}.rtb-event-card.no_bid{border-left:4px solid #fde300;border-left:4px solid var(--ms-yellow)}.rtb-event-card.bid{border-left:4px solid #a19f9d;border-left:4px solid var(--ms-gray-80)}.rtb-event-header{align-items:center;border-bottom:1px solid #f3f2f1;border-bottom:1px solid var(--ms-gray-20);display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:8px}.rtb-event-status{align-items:center;display:flex;gap:4px}.rtb-event-time{color:#7a7574;color:var(--ms-gray-110);font-family:Consolas,Monaco,monospace;font-size:11px}.rtb-event-body{display:flex;flex-direction:column;gap:6px}.rtb-event-row{align-items:center;display:flex;font-size:13px;justify-content:space-between}.rtb-event-row .label{color:#605e5c;color:var(--ms-gray-130);font-size:12px;margin-bottom:0}.rtb-event-row code{background:#faf9f8;background:var(--ms-gray-10);border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:2px;border-radius:var(--ms-radius-small);color:#323130;color:var(--ms-gray-170);font-family:Consolas,Monaco,monospace;font-size:11px;padding:2px 6px}.rtb-event-row .price{color:#107c10;color:var(--ms-green);font-weight:600;font-weight:var(--ms-font-weight-semibold)}.pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.rtb-charts-section{margin-bottom:24px}.rtb-charts-section .detail-card{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4)}.rtb-charts-section .card-header{align-items:center;border-bottom:1px solid #edebe9;border-bottom:1px solid var(--ms-gray-30);display:flex;justify-content:space-between;padding:16px 20px}.rtb-charts-section .card-header h3{color:#323130;color:var(--ms-gray-170);font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin:0}.rtb-charts-section .mt-4{margin-top:16px}.campaign-detail-body::-webkit-scrollbar,.campaign-detail-modal::-webkit-scrollbar{width:12px}.campaign-detail-body::-webkit-scrollbar-track,.campaign-detail-modal::-webkit-scrollbar-track{background:#0000}.campaign-detail-body::-webkit-scrollbar-thumb,.campaign-detail-modal::-webkit-scrollbar-thumb{background:#c8c6c4;background:var(--ms-gray-60);border:3px solid #fff;border-radius:6px}.campaign-detail-body::-webkit-scrollbar-thumb:hover,.campaign-detail-modal::-webkit-scrollbar-thumb:hover{background:#a19f9d;background:var(--ms-gray-80)}@media (max-width:1024px){.campaign-detail-modal{max-height:95vh;width:98%}.detail-grid{grid-template-columns:1fr}.schedule-grid-modern{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.signs-grid-modern{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.rtb-events-list{grid-template-columns:1fr}}@media (max-width:768px){.campaign-detail-header{padding:16px 20px}.campaign-detail-tabs{overflow-x:auto;padding:0 20px;scrollbar-width:none}.campaign-detail-tabs::-webkit-scrollbar{display:none}.campaign-detail-body{padding:16px 20px}.schedule-grid-modern{grid-template-columns:1fr}.schedule-templates-modern{align-items:stretch;flex-direction:column}.templates-label{margin-bottom:8px;margin-right:0;text-align:center}.template-btn{justify-content:center;width:100%}.sign-metrics-row{grid-template-columns:1fr}}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.text-center{text-align:center}.text-right{text-align:right}.fw-normal{font-weight:400;font-weight:var(--ms-font-weight-regular)}.fw-semibold{font-weight:600;font-weight:var(--ms-font-weight-semibold)}.text-sm{font-size:12px}.text-md{font-size:14px}.text-lg{font-size:16px}.text-xl{font-size:18px}.metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.metric{display:flex;flex-direction:column;gap:4px}.metric-label{color:#605e5c;color:var(--ms-gray-130);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.metric-label,.metric-value{font-weight:600;font-weight:var(--ms-font-weight-semibold)}.metric-value{color:#323130;color:var(--ms-gray-170);font-size:20px}.metric-value-large{font-size:28px}.metric-note{color:#7a7574;color:var(--ms-gray-110);display:block;font-size:11px;margin-top:4px}.text-success{color:#107c10!important;color:var(--ms-green)!important}.text-danger{color:#d13438!important;color:var(--ms-red)!important}.text-warning{color:#d83b01!important;color:var(--ms-orange)!important}.payment-details{border-top:1px solid #edebe9;border-top:1px solid var(--ms-gray-30);margin-top:16px;padding-top:16px}.payment-info{color:#605e5c;color:var(--ms-gray-130);font-size:14px;margin-bottom:12px}.payment-actions{display:flex;flex-wrap:wrap;gap:8px}.customer-info{align-items:flex-start;display:flex;gap:16px}.customer-avatar{align-items:center;background:#0078d4;background:var(--ms-blue);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:20px;font-weight:600;font-weight:var(--ms-font-weight-semibold);height:48px;justify-content:center;width:48px}.customer-details{display:flex;flex:1 1;flex-direction:column;gap:4px}.customer-name{color:#323130;color:var(--ms-gray-170);font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold)}.customer-company,.customer-email,.customer-phone{color:#605e5c;color:var(--ms-gray-130);font-size:13px}.customer-company,.customer-phone{align-items:center;display:flex;gap:6px}.loading-text{color:#7a7574;color:var(--ms-gray-110);font-size:13px;font-style:italic}.alert{border-radius:2px;border-radius:var(--ms-radius-small);font-size:13px;font-weight:600;font-weight:var(--ms-font-weight-semibold);gap:8px;margin:12px 0;padding:12px 16px}.alert-danger{background:#fde7e9;border:1px solid #d13438;border:1px solid var(--ms-red);color:#d13438;color:var(--ms-red)}.alert-success{background:#dff6dd;border:1px solid #107c10;border:1px solid var(--ms-green);color:#107c10;color:var(--ms-green)}.alert-warning{background:#fff4ce;border:1px solid #fde300;border:1px solid var(--ms-yellow);color:#797673}.alert-info{background:#deecf9;border:1px solid #0078d4;border:1px solid var(--ms-blue);color:#0078d4;color:var(--ms-blue)}.creatives-approval-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.creative-approval-item{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);padding:16px}.creative-approval-thumb{background:#faf9f8;background:var(--ms-gray-10);border-radius:2px;border-radius:var(--ms-radius-small);height:180px;margin-bottom:12px;object-fit:cover;width:100%}.creative-approval-info{display:flex;flex-direction:column;gap:8px}.creative-approval-title{color:#323130;color:var(--ms-gray-170);font-size:14px;font-weight:600;font-weight:var(--ms-font-weight-semibold)}.creative-approval-res{color:#7a7574;color:var(--ms-gray-110);font-size:12px}.creative-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.creative-card{background:#fff;border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 1.6px 3.6px rgba(0,0,0,.132),0 .3px .9px rgba(0,0,0,.108);box-shadow:var(--ms-depth-4);cursor:pointer;overflow:hidden;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.creative-card:hover{border-color:#0078d4;border-color:var(--ms-blue);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8)}.creative-preview{background:#faf9f8;background:var(--ms-gray-10);display:block;height:160px;object-fit:cover;width:100%}.creative-info{padding:12px}.creative-title{color:#323130;color:var(--ms-gray-170);font-size:13px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creative-format{color:#7a7574;color:var(--ms-gray-110);font-size:11px}.creative-stats{border-top:1px solid #f3f2f1;border-top:1px solid var(--ms-gray-20);color:#605e5c;color:var(--ms-gray-130);display:flex;font-size:11px;gap:12px;margin-top:8px;padding-top:8px}.creative-stat{align-items:center;display:flex;gap:4px}.action-buttons{border-top:1px solid #edebe9;border-top:1px solid var(--ms-gray-30);display:flex;gap:8px;margin-top:16px;padding-top:16px}.action-buttons button{flex:1 1}.date-range-display{display:flex;flex-wrap:wrap;gap:16px}.date-item{flex-direction:column;gap:4px}.date-item-label{color:#605e5c;color:var(--ms-gray-130);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.date-item-label,.date-item-value{font-weight:600;font-weight:var(--ms-font-weight-semibold)}.date-item-value{color:#323130;color:var(--ms-gray-170);font-size:16px}.status-message{border-radius:2px;border-radius:var(--ms-radius-small);font-size:14px;margin:16px 0;padding:16px}.status-message.info{background:#deecf9;border-left:4px solid #0078d4;border-left:4px solid var(--ms-blue);color:#0078d4;color:var(--ms-blue)}.status-message.success{background:#dff6dd;border-left:4px solid #107c10;border-left:4px solid var(--ms-green);color:#107c10;color:var(--ms-green)}.status-message.warning{background:#fff4ce;border-left:4px solid #fde300;border-left:4px solid var(--ms-yellow);color:#797673}.status-message.error{background:#fde7e9;border-left:4px solid #d13438;border-left:4px solid var(--ms-red);color:#d13438;color:var(--ms-red)}.pagination{align-items:center;border-top:1px solid #edebe9;border-top:1px solid var(--ms-gray-30);display:flex;gap:8px;justify-content:center;margin-top:24px;padding-top:16px}.pagination-info{color:#605e5c;color:var(--ms-gray-130);font-size:13px;margin:0 16px}.pagination button{height:32px;min-width:40px;padding:0 12px}.iab-category-select{margin-top:8px;width:100%}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.w-full{width:100%}.h-full{height:100%}.creative-format-section{margin-bottom:32px}.creative-format-header{align-items:center;background:linear-gradient(135deg,#0078d4,#005a9e);background:linear-gradient(135deg,var(--ms-blue) 0,#005a9e 100%);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8);color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.creative-format-header h3{font-size:20px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin:0}.creative-grid-large{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.creative-card-large{background:#fff;border:2px solid #edebe9;border:2px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8);overflow:hidden;transition:all .2s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-normal) var(--ms-ease)}.creative-card-large:hover{border-color:#0078d4;border-color:var(--ms-blue);box-shadow:0 6.4px 14.4px rgba(0,0,0,.132),0 1.2px 3.6px rgba(0,0,0,.108);box-shadow:var(--ms-depth-16);transform:translateY(-4px)}.creative-media-large{align-items:center;background:#faf9f8;background:var(--ms-gray-10);display:flex;height:320px;justify-content:center;overflow:hidden;width:100%}.creative-preview-large{display:block;height:100%;object-fit:contain;width:100%}.creative-card-info{padding:16px}.creative-card-title{color:#323130;color:var(--ms-gray-170);font-size:16px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin-bottom:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creative-card-meta{align-items:center;display:flex;gap:12px;margin-bottom:8px}.creative-dimensions{border-radius:2px;border-radius:var(--ms-radius-small);font-size:12px;font-weight:600;font-weight:var(--ms-font-weight-semibold);padding:4px 8px}.creative-dimensions,.empty-format-state{background:#faf9f8;background:var(--ms-gray-10);color:#7a7574;color:var(--ms-gray-110)}.empty-format-state{align-items:center;border:2px dashed #edebe9;border:2px dashed var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);display:flex;flex-direction:column;gap:12px;padding:40px;text-align:center}.empty-format-state svg{font-size:32px;opacity:.5}.creative-preview-placeholder{align-items:center;background:#faf9f8;background:var(--ms-gray-10);color:#7a7574;color:var(--ms-gray-110);display:flex;flex-direction:column;font-size:13px;gap:8px;height:100%;justify-content:center;width:100%}.creative-pool{border-top:1px solid #edebe9;border-top:1px solid var(--ms-gray-30);display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px}.creative-pool-item{align-items:center;display:flex;flex-direction:column;gap:6px}.creative-thumb{border:1px solid #edebe9;border:1px solid var(--ms-gray-30);border-radius:2px;border-radius:var(--ms-radius-small);height:80px;object-fit:cover;width:80px}.status-badge{border-radius:4px;font-size:11px;padding:2px 8px;text-transform:uppercase}.status-active,.status-approved{background:#107c10;background:var(--ms-green);color:#fff}.status-pending,.status-uploaded{background:#fde300;background:var(--ms-yellow);color:#000}.status-rejected{background:#d13438;background:var(--ms-red);color:#fff}.status-partial{background:linear-gradient(90deg,#107c10,#fde300);background:linear-gradient(90deg,var(--ms-green) 0,var(--ms-yellow) 100%);color:#fff}.creative-approval-actions{display:flex;gap:8px;margin-top:12px}.label-sm{color:#605e5c;color:var(--ms-gray-130);display:block;font-size:12px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin-bottom:4px}.input-sm,.input.input-sm{border:1px solid #d2d0ce;border:1px solid var(--ms-gray-50);border-radius:2px;border-radius:var(--ms-radius-small);font-size:13px;padding:6px 10px;width:100%}.btn-xs{font-size:11px;min-height:24px;padding:4px 8px}.empty-state{color:#7a7574;color:var(--ms-gray-110);font-size:14px;padding:40px}.loading-state{align-items:center;color:#605e5c;color:var(--ms-gray-130);display:flex;flex-direction:column;gap:12px;padding:40px;text-align:center}.schedule-container-modern{display:flex;flex-direction:column;gap:0}.schedule-header-modern{align-items:center;border-bottom:2px solid #0078d4;border-bottom:2px solid var(--ms-blue);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:20px}.schedule-header-modern h3{color:#323130;color:var(--ms-gray-170);font-size:24px;font-weight:600;font-weight:var(--ms-font-weight-semibold);margin:0}.schedule-actions-top{display:flex;gap:8px}.schedule-templates-modern{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #0078d4;border:2px solid var(--ms-blue);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8);display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:32px;padding:20px}.templates-label{color:#323130;color:var(--ms-gray-170);font-size:15px;margin-right:16px}.template-btn,.templates-label{font-weight:600;font-weight:var(--ms-font-weight-semibold)}.template-btn{align-items:center;background:#fff;border:2px solid #0078d4;border:2px solid var(--ms-blue);border-radius:2px;border-radius:var(--ms-radius-small);box-shadow:0 2px 4px #0078d41a;color:#0078d4;color:var(--ms-blue);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 20px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.template-btn:hover{background:#0078d4;background:var(--ms-blue);box-shadow:0 4px 8px #0078d433;color:#fff;transform:translateY(-2px)}.template-btn-clear{background:#fff;border-color:#d13438;border-color:var(--ms-red);color:#d13438;color:var(--ms-red)}.template-btn-clear:hover{background:#d13438;background:var(--ms-red);color:#fff}.schedule-grid-modern{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(7,1fr);width:100%}.schedule-day-card{background:#fff;border:2px solid #edebe9;border:2px solid var(--ms-gray-30);border-radius:4px;border-radius:var(--ms-radius-medium);box-shadow:0 3.2px 7.2px rgba(0,0,0,.132),0 .6px 1.8px rgba(0,0,0,.108);box-shadow:var(--ms-depth-8);display:flex;flex-direction:column;overflow:hidden;transition:all .2s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-normal) var(--ms-ease)}.schedule-day-card:hover{border-color:#0078d4;border-color:var(--ms-blue);box-shadow:0 6.4px 14.4px rgba(0,0,0,.132),0 1.2px 3.6px rgba(0,0,0,.108);box-shadow:var(--ms-depth-16);transform:translateY(-4px)}.schedule-day-card.has-segments{background:linear-gradient(135deg,#fff,#f0f9ff);border-color:#0078d4;border-color:var(--ms-blue)}.day-card-header{background:#0078d4;background:var(--ms-blue);color:#fff;gap:8px;padding:12px}.day-card-header,.day-name-row{display:flex;flex-direction:column}.day-name-row{gap:4px;text-align:center}.day-name{font-size:15px;font-weight:600;font-weight:var(--ms-font-weight-semibold)}.day-abbr{font-size:10px;letter-spacing:1px;opacity:.8;text-transform:uppercase}.add-segment-btn{align-items:center;background:#fff3;border:1px solid #fff;border-radius:2px;border-radius:var(--ms-radius-small);color:#fff;cursor:pointer;display:flex;font-size:11px;font-weight:600;font-weight:var(--ms-font-weight-semibold);gap:4px;justify-content:center;padding:6px 10px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.add-segment-btn:hover{background:#fff;color:#0078d4;color:var(--ms-blue)}.day-card-body{flex:1 1;max-height:400px;min-height:200px;overflow-y:auto;padding:12px}.empty-day-message{align-items:center;color:#7a7574;color:var(--ms-gray-110);display:flex;font-size:13px;font-style:italic;gap:8px;justify-content:center;padding:32px}.segments-list{gap:12px}.segments-list,.time-segment-row{display:flex;flex-direction:column}.time-segment-row{background:linear-gradient(135deg,#f0f9ff,#fff);border:1px solid #0078d4;border:1px solid var(--ms-blue);border-radius:2px;border-radius:var(--ms-radius-small);gap:8px;padding:10px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease)}.time-segment-row:hover{box-shadow:0 2px 8px #0078d426}.segment-number{align-items:center;background:#0078d4;background:var(--ms-blue);border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:10px;font-weight:600;font-weight:var(--ms-font-weight-semibold);height:20px;justify-content:center;margin-bottom:4px;width:20px}.time-inputs-group{display:flex;flex-direction:column;gap:6px}.time-input{border:2px solid #edebe9;border:2px solid var(--ms-gray-30);border-radius:2px;border-radius:var(--ms-radius-small);color:#323130;color:var(--ms-gray-170);font-size:12px;font-weight:600;font-weight:var(--ms-font-weight-semibold);padding:6px 8px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease);width:100%}.time-input:focus{border-color:#0078d4;border-color:var(--ms-blue);box-shadow:0 0 0 3px #0078d41a;outline:none}.time-separator{color:#0078d4;color:var(--ms-blue);font-size:12px;font-weight:700;text-align:center}.delete-segment-btn{align-items:center;background:#d13438;background:var(--ms-red);border:none;border-radius:2px;border-radius:var(--ms-radius-small);color:#fff;cursor:pointer;display:flex;font-size:11px;justify-content:center;padding:6px;transition:all .1s cubic-bezier(.1,.9,.2,1);transition:all var(--ms-duration-fast) var(--ms-ease);width:100%}.delete-segment-btn:hover{background:#c81e1e}.campaign-detail-container{background-color:#f9f9f9;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:0 auto;max-width:800px;padding:20px}.campaign-detail-container h3{color:#333;font-size:1.8em;margin-bottom:10px}.campaign-detail-container p{color:#555;font-size:1em;margin-bottom:8px}.status-active{color:green;font-weight:700}.campaign-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.campaign-actions button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 15px;transition:background-color .3s ease}.campaign-actions button:hover{background-color:#0056b3}.creative-detail{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:10px}.creative-detail img{display:block;margin-bottom:10px}.creative-actions{display:flex;flex-direction:column;gap:10px}.creative-actions button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 12px;transition:background-color .3s ease}.creative-actions button:hover{background-color:#218838}.creative-actions input[type=text]{border:1px solid #ddd;border-radius:4px;padding:8px}.upload-creative-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:20px}.upload-creative-container input[type=file]{margin-bottom:10px}.upload-creative-container button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:10px 15px;transition:background-color .3s ease}.upload-creative-container button:hover{background-color:#0056b3}.sign-detail{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:10px}.sign-detail img{display:block;margin-bottom:10px}.sign-detail p{color:#555;font-size:1em;margin:4px 0}.signs-converter{margin:0 auto;max-width:800px;padding:20px}.signs-converter h2{color:#333;margin-bottom:30px;text-align:center}.current-signs-info{background-color:#f5f5f5;border-radius:8px;margin-bottom:30px;padding:20px}.current-signs-info h3{color:#444;margin-bottom:10px}.converter-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.converter-section h3{color:#444;margin-bottom:15px}.file-input{border:1px solid #ddd;border-radius:4px;display:block;margin-bottom:15px;padding:10px}.convert-button,.save-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .2s}.convert-button:hover,.save-button:hover{background-color:#0056b3}.preview-section{background-color:#f8f9fa;border-radius:8px;padding:20px}.preview-section h3{color:#444;margin-bottom:15px}.error{background-color:#ffebee;color:#c62828;margin-bottom:1rem;padding:1rem}.error-actions{display:flex;gap:1rem;margin-top:1rem}.create-file-button,.retry-button,.skip-button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.retry-button{background-color:#2196f3}.retry-button:hover{background-color:#1976d2}.create-file-button{background-color:#4caf50;color:#fff}.create-file-button:hover{background-color:#388e3c}.skip-button{background-color:#9e9e9e;color:#fff}.skip-button:hover{background-color:#757575}.loading{padding:2rem}.progress-bar{background-color:#e0e0e0;border-radius:10px;height:20px;margin:1rem 0;overflow:hidden;width:100%}.progress-bar-fill{background-color:#2196f3;height:100%;transition:width .3s ease}.no-signs-info{background-color:#f5f5f5;padding:2rem;text-align:center}.current-signs-info,.no-signs-info{border-radius:4px;margin-bottom:1rem}.current-signs-info{align-items:center;background-color:#e3f2fd;display:flex;justify-content:space-between;padding:1rem}.refresh-button{background-color:#2196f3;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.refresh-button:hover{background-color:#1976d2}.converter-section{margin:20px 0}.file-input{margin:10px 0}.convert-button,.save-button,.skip-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:5px;padding:8px 16px}.convert-button:disabled{background-color:#ccc}.preview-section{margin-top:20px}.preview-section pre{background-color:#f8f9fa;border-radius:4px;overflow:auto;padding:15px}.signs-list{margin:0 auto;max-width:1200px;padding:20px}.signs-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.signs-controls{display:flex;gap:10px}.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;padding:8px 12px}.refresh-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.refresh-button:hover{background-color:#0056b3}.table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}table{border-collapse:collapse;font-size:14px;width:100%}th{background-color:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;cursor:pointer;font-weight:600;padding:12px;text-align:left;-webkit-user-select:none;user-select:none}th:hover{background-color:#e9ecef}td{border-bottom:1px solid #dee2e6;color:#212529;padding:12px}tr:hover{background-color:#f8f9fa}.cancel-button,.edit-button,.save-button{border:none;border-radius:4px;cursor:pointer;font-size:13px;margin-right:5px;padding:6px 12px}.edit-button{background-color:#28a745}.edit-button:hover{background-color:#218838}.save-button{background-color:#007bff}.save-button:hover{background-color:#0056b3}.cancel-button{background-color:#dc3545}.cancel-button:hover{background-color:#c82333}input[type=number],input[type=text]{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:6px 8px;width:100%}input[type=number]:focus,input[type=text]:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.loading{color:#6c757d;font-size:16px;padding:40px}.error,.loading{text-align:center}.error{padding:20px}.error button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:10px;padding:8px 16px}.error button:hover{background-color:#c82333}@media (max-width:768px){.signs-list{padding:12px}.signs-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:14px}.signs-controls{flex-wrap:wrap;width:100%}.search-input{flex:1 1 140px;font-size:16px;min-height:44px;min-width:0}.refresh-button{flex-shrink:0;font-size:15px;min-height:44px}td,th{font-size:13px;padding:10px 8px}.cancel-button,.edit-button,.save-button{font-size:12px;min-height:36px;padding:6px 10px}}@media (hover:none) and (pointer:coarse){.cancel-button,.edit-button,.refresh-button,.save-button{min-height:44px}}.json-converter-container{margin:0 auto;max-width:1200px;padding:32px}.json-converter-header{margin-bottom:48px;text-align:center}.json-converter-header h2{color:#1e293b;font-size:2.5rem;font-weight:700;margin-bottom:16px}.json-converter-description{color:#64748b;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:600px}.json-converter-upload-section{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:48px}.upload-card{background:#fff;border-radius:16px;box-shadow:0 4px 16px #1e293b14;padding:24px;transition:transform .2s ease,box-shadow .2s ease}.upload-card:hover{box-shadow:0 8px 24px #1e293b1f;transform:translateY(-2px)}.upload-card-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.upload-icon{color:#2563eb;font-size:24px}.upload-card-header h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0}.upload-card-content{display:flex;flex-direction:column;gap:16px}.file-input{background:#f8fafc;border:2px dashed #e5e7eb;border-radius:8px;cursor:pointer;padding:12px;transition:border-color .2s ease;width:100%}.file-input:hover{border-color:#2563eb}.file-info{background:#f1f5f9;border-radius:8px;justify-content:space-between;padding:12px}.file-name{color:#1e293b;font-weight:500}.file-size{color:#64748b;font-size:.9rem}.convert-button{align-items:center;background:#2563eb;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:12px;justify-content:center;margin:0 auto 48px;max-width:300px;padding:16px 32px;transition:background-color .2s ease;width:100%}.convert-button:hover:not(:disabled){background:#1d4ed8}.convert-button:disabled{background:#94a3b8;cursor:not-allowed}.convert-icon{font-size:1.2rem}.loading-spinner{border:3px solid #fff;border-top-color:#0000;height:24px;width:24px}.changes-summary{background:#fff;border-radius:16px;box-shadow:0 4px 16px #1e293b14;margin-bottom:48px;padding:32px}.changes-summary h3{color:#1e293b;font-size:1.5rem;font-weight:600;margin-bottom:24px}.changes-stats{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:#f8fafc}.stat-value{color:#2563eb;display:block;font-size:2rem;font-weight:700;margin-bottom:8px}.stat-label{color:#64748b;font-size:.9rem}.changes-details h4{color:#1e293b;font-size:1.25rem;font-weight:600;margin-bottom:16px}.changes-list{grid-gap:16px;display:grid;gap:16px;max-height:400px;overflow-y:auto;padding-right:8px}.change-item{background:#f8fafc;border-left:4px solid #2563eb;border-radius:16px;box-shadow:0 2px 8px #1e293b0a;display:flex;flex-direction:column;gap:8px;padding:20px 24px 16px;transition:box-shadow .2s,transform .2s}.change-item.new{border-left-color:#22c55e}.change-item.updated{border-left-color:#f59e0b}.change-item:hover{box-shadow:0 6px 24px #1e293b1a;transform:translateY(-2px) scale(1.01)}.change-header{align-items:flex-start;display:flex;flex-direction:column;gap:8px;margin-bottom:4px}.change-asset-name{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:2px}.change-asset-image{border-radius:10px;box-shadow:0 1px 6px #1e293b14;height:auto;margin-bottom:8px;max-width:320px;width:100%}.change-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:1rem;gap:12px;margin-bottom:2px}.change-address,.change-dma,.change-state{background:#e0e7ef;border-radius:6px;color:#2563eb;font-size:.98rem;font-weight:500;padding:2px 10px}.change-type-label{background:#2563eb;border-radius:6px;color:#fff;font-size:.98rem;font-weight:600;letter-spacing:.01em;margin-top:4px;padding:2px 12px}.change-item.new .change-type-label{background:#22c55e}.change-item.updated .change-type-label{background:#f59e0b;color:#fff}.change-content{display:flex;flex-direction:column;gap:8px;margin-top:2px}.change-publisher{align-self:flex-end;background:#f1f5f9;border-radius:6px;color:#64748b;font-size:.98rem;font-weight:500;margin-bottom:2px;margin-top:2px;padding:2px 10px}.change-fields-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.change-field-row{align-items:center;background:#f3f4f6;border-radius:6px;display:flex;font-size:.98rem;gap:8px;padding:4px 10px}.change-field-name{color:#1e293b;font-weight:600;min-width:120px}.change-field-old{color:#ef4444;text-decoration:line-through}.change-field-arrow{color:#64748b;font-size:1.1rem}.change-field-new{color:#22c55e;font-weight:600}.download-section{text-align:center}.download-button{align-items:center;background:#22c55e;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:12px;padding:16px 32px;text-decoration:none;transition:background-color .2s ease}.download-button:hover{background:#16a34a}.download-icon{font-size:1.2rem}.changes-list::-webkit-scrollbar{width:8px}.changes-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.changes-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.changes-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.json-converter-container{padding:24px 16px}.json-converter-header h2{font-size:2rem}.json-converter-description{font-size:1rem}.upload-card{padding:20px}.changes-summary{padding:24px}.stat-value{font-size:1.75rem}.change-item{padding:14px 8px 10px}.change-asset-image{max-width:100%}.change-header{gap:4px}.change-meta{font-size:.95rem;gap:6px}.change-field-row{font-size:.95rem;padding:3px 6px}}.sign-modal-overlay{align-items:center;background:#1e293b73;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.sign-modal{background:#fff;border-radius:16px;box-shadow:0 8px 32px #1e293b2e;max-width:400px;padding:32px 28px 24px;position:relative;text-align:center;width:100%}.sign-modal-close{background:none;border:none;color:#64748b;cursor:pointer;font-size:2rem;position:absolute;right:16px;top:12px}.sign-modal-image{border-radius:12px;box-shadow:0 2px 12px #1e293b1a;height:auto;margin-bottom:18px;max-width:320px;width:100%}.sign-modal-info{margin-top:8px;text-align:left}.sign-modal-name{font-size:1.1rem;font-weight:600;margin-bottom:8px}.sign-modal-address{color:#64748b;font-size:1rem}.changes-filter-bar{display:flex;gap:12px;justify-content:flex-end;margin-bottom:18px}.changes-filter-bar button{background:#f1f5f9;border:none;border-radius:8px;color:#2563eb;cursor:pointer;font-size:1rem;font-weight:600;padding:8px 20px;transition:background .2s,color .2s}.changes-filter-bar button.active,.changes-filter-bar button:hover{background:#2563eb;color:#fff}.changes-list-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:32px;margin-top:12px}.change-item-card{background:#fffffffa;border:1.5px solid #e5e7eb;border-radius:18px;box-shadow:0 4px 16px #1e293b1a;display:flex;flex-direction:column;gap:10px;margin-bottom:0;max-width:400px;min-width:0;padding:24px 32px;position:relative;transition:all .2s ease;width:100%;word-break:break-word}.change-item-card.new{border-left:5px solid #22c55e}.change-item-card.updated{border-left:5px solid #f59e0b}.change-item-card:hover{border-color:#2563eb;box-shadow:0 8px 32px #1e293b21;transform:translateY(-2px) scale(1.01)}.change-card-header{align-items:flex-start;display:flex;flex-direction:column;gap:8px;margin-bottom:4px}.change-asset-image-large{border-radius:12px;box-shadow:0 2px 12px #1e293b1a;height:auto;margin-bottom:8px;max-width:320px;width:100%}@media (max-width:768px){.changes-list-grid{gap:16px;grid-template-columns:1fr}.change-item-card{max-width:100%;padding:16px 10px}.change-asset-image-large{max-width:100%}}.sign-modal-link-section{margin-top:18px;text-align:center}.sign-modal-raw-link{background:#f1f5f9;border-radius:8px;color:#2563eb;display:inline-block;font-size:.98rem;font-weight:500;padding:8px 16px;text-decoration:underline;transition:background .2s,color .2s;word-break:break-all}.sign-modal-raw-link:hover{background:#2563eb;color:#fff;text-decoration:underline}.soldout-section{background:#fff7ed;border-radius:18px;box-shadow:0 2px 12px #ffab0014;margin-bottom:36px;padding:28px 24px 18px}.soldout-section h3{color:#ea580c;font-size:1.3rem;font-weight:700;margin-bottom:18px}.soldout-list-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.soldout-item-card{align-items:flex-start;background:#fff;border:2px solid #fdba74;border-radius:14px;box-shadow:0 2px 8px #ffab001a;display:flex;flex-direction:column;gap:8px;padding:18px 16px 14px;transition:box-shadow .2s,border .2s}.soldout-item-card:hover{border-color:#ea580c;box-shadow:0 6px 24px #ffab002e}.soldout-asset-name{color:#ea580c;font-size:1.1rem;font-weight:700;margin-bottom:2px}.soldout-asset-image{border-radius:8px;box-shadow:0 1px 6px #ffab001a;height:auto;margin-bottom:6px;max-width:220px;width:100%}.soldout-meta{color:#ea580c;display:flex;flex-wrap:wrap;font-size:.98rem;gap:8px;margin-bottom:2px}.soldout-address,.soldout-dma,.soldout-state{background:#fff7ed;border-radius:6px;color:#ea580c;font-size:.97rem;font-weight:500;padding:2px 8px}.soldout-bidstream{background:#fff3e0;border-radius:6px;color:#ea580c;font-size:.98rem;font-weight:600;padding:2px 10px}.soldout-publisher{align-self:flex-end;background:#fff7ed;border-radius:6px;color:#ea580c;font-size:.97rem;font-weight:500;margin-top:2px;padding:2px 8px}@media (max-width:768px){.soldout-list-grid{gap:12px;grid-template-columns:1fr}.soldout-item-card{max-width:100%;padding:12px 6px 10px}.soldout-asset-image{max-width:100%}}.sign-details-section{background:#fff;border-radius:18px;box-shadow:0 4px 24px #1e293b21;margin:32px auto 0;max-width:480px;padding:32px 28px 24px;position:relative;text-align:center;z-index:10}.sign-details-close{font-size:2rem;right:16px;top:12px}.json-converter-exit-btn,.sign-details-close{background:none;border:none;color:#64748b;cursor:pointer;position:absolute}.json-converter-exit-btn{font-size:2.2rem;right:24px;top:18px;transition:color .2s;z-index:20}.json-converter-exit-btn:hover{color:#ef4444}.signs-manager{background:#f8fafc;min-height:100vh;padding:24px}.signs-manager-header{margin:0 auto 32px;max-width:1200px;text-align:center}.signs-manager-header h1{color:#1e293b;font-size:32px;font-weight:800;margin-bottom:8px}.signs-manager-header p{color:#64748b;font-size:16px;margin:0 0 16px}.header-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px}.bulk-image-button,.bulk-mode-button,.bulk-multiplier-button,.update-avails-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.update-avails-button{background:#2563eb;color:#fff}.update-avails-button:hover{background:#1d4ed8}.bulk-image-button{background:#059669;color:#fff}.bulk-image-button:hover{background:#047857}.bulk-multiplier-button{background:#f59e0b;color:#fff}.bulk-multiplier-button:hover{background:#d97706}.bulk-mode-button{background:#64748b;color:#fff}.bulk-mode-button:hover{background:#475569}.bulk-mode-button.active{background:#dc2626;color:#fff}.bulk-mode-button.active:hover{background:#b91c1c}.tab-navigation{background:#fff;border-radius:12px;box-shadow:0 2px 8px #1e293b0f;display:flex;gap:4px;margin:0 auto 24px;max-width:1200px;padding:8px}.tab-button{align-items:center;background:#0000;border-radius:8px;display:flex;flex:1 1;font-weight:600;gap:8px;justify-content:center;padding:12px 16px}.tab-button:hover{background:#f1f5f9;color:#1e293b}.tab-button.active{background:#2563eb}.tab-button.active:hover{background:#1d4ed8}.exec-table{background:#fff;border-radius:12px;box-shadow:0 2px 10px #1e293b14;margin:0 auto 32px;max-width:1200px;overflow:hidden}.exec-table-header{grid-gap:0;align-items:center;background:#0f172a;color:#fff;display:grid;gap:0;grid-template-columns:220px 140px 160px 1fr 110px 110px 110px 40px;padding:12px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:1}.exec-table-header .hdr{align-items:center;cursor:pointer;display:flex;font-size:13px;font-weight:700;opacity:.95}.exec-table-list{background:#fff}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-action{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#1e293b;cursor:pointer;display:inline-flex;height:32px;justify-content:center;width:32px}.table-action:hover{background:#f1f5f9}.signs-manager-filters{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #1e293b0f;display:flex;flex-wrap:wrap;gap:16px;margin:0 auto 24px;max-width:1200px;padding:20px}.filter-group{align-items:center;display:flex;flex:1 1;gap:8px;min-width:200px}.filter-icon{color:#64748b;font-size:14px}.filter-select,.search-input{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;flex:1 1;font-size:14px;padding:10px 14px;transition:border-color .2s}.filter-select:focus,.search-input:focus{border-color:#2563eb;outline:none}.signs-manager-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto 32px;max-width:1200px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #1e293b0f;padding:20px;text-align:center}.stat-card h3{color:#64748b;font-size:14px;font-weight:600;margin:0 0 8px}.stat-card p{color:#1e293b;font-size:24px;font-weight:700;margin:0}.stat-subtitle{color:#64748b;display:block;font-size:11px;font-weight:500;margin-top:4px}.availability-stats{border-top:2px solid #e5e7eb;margin-top:16px;padding-top:16px}.sold-out-card{background:linear-gradient(135deg,#fef2f2,#f8fafc);border-left:4px solid #dc2626}.available-card{background:linear-gradient(135deg,#ecfdf5,#f8fafc);border-left:4px solid #059669}.sold-out-card h3{color:#b91c1c}.available-card h3{color:#047857}.signs-by-state{margin:0 auto;max-width:1200px}.state-section{margin-bottom:40px}.state-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #1e293b0f;color:#1e293b;display:flex;font-size:24px;font-weight:700;gap:12px;margin-bottom:20px;padding:16px 20px}.state-header.collapsible{cursor:pointer;position:relative;transition:all .2s;-webkit-user-select:none;user-select:none}.state-header.collapsible:hover{background:#f8fafc;box-shadow:0 4px 12px #1e293b1a;transform:translateY(-1px)}.state-icon{color:#2563eb;font-size:20px}.signs-grid{background:none;display:block;padding:0}.signs-grid,.virtualized-sign-grid-container{box-sizing:border-box;margin:0 auto;min-height:400px;width:100%}.virtualized-sign-grid-container{background:#f8fafc;border-radius:16px;box-shadow:0 4px 24px #0000000f;max-width:1400px;padding:24px}.sign-card{border:1.5px solid #e5e7eb;border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;height:420px;margin:0 20px 40px 0;padding:28px 20px 24px;transition:box-shadow .2s,border .2s;width:340px}.sign-card:last-child{margin-right:0}.sign-card .sign-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;overflow:visible;padding-top:20px}.sign-card button{opacity:1!important;transition:none!important;visibility:visible!important}.sign-card:hover{border:1.5px solid #3b82f6;box-shadow:0 8px 32px #0000001a;z-index:2}@media (max-width:1200px){.virtualized-sign-grid-container{min-width:600px}}@media (max-width:900px){.virtualized-sign-grid-container{min-width:320px}}@media (max-width:600px){.virtualized-sign-grid-container{min-width:0;padding:0}.sign-card{max-width:98vw;min-width:90vw}}.sign-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #1e293b0f;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.sign-card:hover{box-shadow:0 4px 16px #1e293b1f;transform:translateY(-2px)}.sign-card.selected{border:2px solid #2563eb;box-shadow:0 4px 16px #2563eb33}.sign-checkbox{background:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a;padding:4px;position:absolute;right:12px;top:12px;z-index:10}.sign-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.sign-display{padding:20px}.sign-image{background:#f1f5f9;height:140px;margin-bottom:16px;position:relative}.no-image{align-items:center;color:#94a3b8;display:flex;flex-direction:column;font-size:14px;gap:8px;height:100%;justify-content:center}.no-image svg{font-size:32px}.sign-info h3{color:#1e293b;font-size:18px;font-weight:700;margin:0 0 12px}.sign-info p{gap:8px;margin:8px 0}.sign-info svg{color:#2563eb;font-size:12px}.sign-status{font-weight:600}.status-live{color:#22c55e}.status-inactive{color:#ef4444}.status-maintenance{color:#f59e0b}.sign-actions{border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;overflow:visible;padding-top:16px}.edit-button{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:10px 16px;transition:background-color .2s}.edit-button:hover{background:#1d4ed8}.streetview-button{align-items:center;background:#059669;border:1.5px solid #059669;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-width:120px;padding:10px 16px;text-decoration:none;transition:all .2s}.streetview-button:hover{background:#047857;border-color:#047857}.streetview-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.streetview-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.streetview-modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.streetview-modal-header h2{color:#1e293b;font-size:18px;font-weight:700;margin:0}.streetview-modal-header button{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:20px;padding:4px;transition:all .2s}.streetview-modal-header button:hover{background:#e5e7eb;color:#374151}.streetview-modal-content{padding:24px}.streetview-info{background:#f8fafc;border-left:4px solid #059669;border-radius:8px;margin-bottom:20px;padding:16px}.streetview-info p{color:#374151;font-size:14px;margin:8px 0}.streetview-info strong{color:#1e293b}.streetview-controls{background:#f8fafc;border-left:4px solid #2563eb;border-radius:8px;margin:20px 0;padding:16px}.control-note{background:#dbeafe;border-left:3px solid #2563eb;border-radius:6px;margin-bottom:16px;padding:12px}.control-note p{color:#1e40af;font-size:14px;line-height:1.4;margin:0}.control-group{align-items:center;display:flex;gap:12px;margin-bottom:12px}.control-group:last-child{margin-bottom:0}.control-group label{color:#374151;font-size:14px;font-weight:600;min-width:120px}.control-slider{-webkit-appearance:none;appearance:none;background:#e5e7eb;border-radius:3px;flex:1 1;height:6px;outline:none}.control-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#2563eb;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:18px;width:18px}.control-slider::-moz-range-thumb{background:#2563eb;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:18px;width:18px}.control-value{color:#2563eb;font-size:14px;font-weight:600;min-width:40px;text-align:right}.streetview-iframe-container{border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;overflow:hidden}.streetview-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;padding:40px 20px;text-align:center}.streetview-error p{font-size:16px;margin-bottom:16px}.fallback-button{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.fallback-button:hover{background:#047857}.streetview-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:16px}.open-new-tab-button{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.open-new-tab-button:hover{background:#1d4ed8}.save-frame-button{align-items:center;background:#059669;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.save-frame-button:hover:not(:disabled){background:#047857}.save-frame-button:disabled{cursor:not-allowed;opacity:.6}.save-frame-button .spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.streetview-modal{margin:10px;max-height:95vh}.streetview-modal-content{padding:16px}.streetview-iframe-container iframe{height:300px}}.sign-info .sign-impressions,.sign-info .sign-multiplier{background:#f1f5f9;border-left:3px solid #2563eb;border-radius:6px;color:#1e293b;font-weight:600;margin:8px 0;padding:6px 10px}.sign-info .sign-impressions strong,.sign-info .sign-multiplier strong{color:#2563eb}.sign-edit-form{background:#fff;border-radius:16px;box-shadow:0 8px 32px #1e293b1f;max-height:80vh;overflow-y:auto;padding:0}.edit-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 32px 12px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.edit-header h3{color:#1e293b;font-size:18px;font-weight:700;margin:0}.cancel-button,.save-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.save-button{background:#22c55e;color:#fff}.save-button:hover:not(:disabled){background:#16a34a}.save-button:disabled{cursor:not-allowed;opacity:.6}.cancel-button{background:#ef4444}.cancel-button:hover{background:#dc2626}.edit-fields{grid-gap:18px;display:grid;gap:18px;grid-template-columns:1fr 1fr;padding:24px 32px}.edit-field{display:flex;flex-direction:column;gap:6px;margin-bottom:0}.edit-field input,.edit-field select{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;font-size:15px;padding:10px 14px;transition:border-color .2s;width:100%}.edit-field input:focus,.edit-field select:focus{border-color:#2563eb;outline:none}.edit-field input[type=number]{-webkit-appearance:textfield;appearance:textfield}.edit-field input[type=number]::-webkit-inner-spin-button,.edit-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.edit-field label input[type=checkbox]{cursor:pointer;margin-right:8px;transform:scale(1.2);width:auto}.edit-field label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.edit-field .loading-indicator{color:#6b7280;font-size:12px;font-style:italic}.edit-field .field-help{color:#6b7280;display:block;font-size:12px;line-height:1.4;margin-top:4px}.edit-field label{color:#374151;cursor:pointer;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.edit-field label:has(input[type=checkbox]){align-items:center;cursor:pointer;display:flex;font-weight:500}.signs-manager-error,.signs-manager-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.loading-spinner{margin-bottom:16px}.signs-manager-error h2{color:#ef4444;margin-bottom:12px}.retry-button{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:16px;padding:10px 20px;transition:background-color .2s}.retry-button:hover{background:#1d4ed8}.csv-upload-section{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;margin-top:20px;padding:20px;text-align:center}.csv-upload-button{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease}.csv-upload-button:hover{background:#0056b3;transform:translateY(-1px)}.upload-hint{color:#6c757d;display:block;font-size:14px;margin-top:8px}.review-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.review-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:80vh;max-width:800px;overflow-y:auto;width:90%}.review-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding:24px 24px 0}.review-header h2{color:#212529;font-size:24px;font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;font-size:20px;padding:8px;transition:color .2s ease}.close-button:hover{color:#dc3545}.review-content{padding:0 24px 24px}.review-summary{margin-bottom:24px}.review-summary h3{color:#212529;font-size:18px;font-weight:600;margin:0 0 16px}.summary-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat{background:#f8f9fa;border-radius:8px;padding:16px;text-align:center}.stat .label{color:#6c757d;display:block;font-size:14px;margin-bottom:4px}.stat .value{color:#007bff;display:block;font-size:24px;font-weight:700}.review-section{margin-bottom:24px}.review-section h3{color:#212529;font-size:18px;font-weight:600;margin:0 0 16px}.additions-list,.updates-list{max-height:300px}.addition-item,.update-item{background:#fff;border-bottom:1px solid #e9ecef;padding:16px}.addition-item:last-child,.update-item:last-child{border-bottom:none}.sign-name{color:#212529;font-size:16px;font-weight:600;margin-bottom:8px}.addition-details,.update-details{color:#6c757d;display:flex;flex-direction:column;font-size:14px;gap:4px}.update-details span{align-items:center;display:flex;justify-content:space-between}.more-items{background:#f8f9fa;color:#6c757d;font-style:italic;padding:16px;text-align:center}.review-actions{background:#f8f9fa;border-radius:0 0 12px 12px;border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:24px}.apply-button,.cancel-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease}.cancel-button{background:#6c757d;color:#fff}.cancel-button:hover:not(:disabled){background:#5a6268}.apply-button{background:#28a745;color:#fff}.apply-button:hover:not(:disabled){background:#218838}.apply-button:disabled,.cancel-button:disabled{cursor:not-allowed;opacity:.6}.spinner{border:2px solid #fff;border-top-color:#0000;height:16px;width:16px}@media (max-width:768px){.signs-manager{padding:16px}.signs-manager-filters{flex-direction:column;gap:12px}.filter-group{min-width:auto}.edit-fields,.signs-grid{grid-template-columns:1fr}.edit-header{align-items:flex-start;flex-direction:column;gap:12px}.edit-actions{justify-content:space-between;width:100%}.review-modal{margin:20px;width:95%}.review-header{padding:16px 16px 0}.review-content{padding:0 16px 16px}.review-actions{flex-direction:column;padding:16px}.summary-stats{grid-template-columns:1fr}}.csv-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.csv-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.csv-modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:20px;padding:24px 24px 0}.csv-modal-header h2{color:#212529;font-size:24px;font-weight:600;margin:0}.csv-modal-content{flex:1 1 auto;overflow-y:auto;padding:0 24px 24px}.additions-list,.updates-list{background:#fff;border:1px solid #e9ecef;border-radius:8px;max-height:250px;overflow-y:auto}@media (max-width:768px){.csv-modal{margin:10px;max-height:98vh;width:98%}.csv-modal-header{padding:16px 16px 0}.csv-modal-content{padding:0 16px 16px}}.sign-audit{margin:0 auto;max-width:1200px}.audit-section{margin-bottom:40px}.audit-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #1e293b0f;color:#1e293b;display:flex;font-size:20px;font-weight:700;gap:12px;margin-bottom:20px;padding:16px 20px}.audit-header .audit-icon{color:#dc2626;font-size:18px}.audit-section:first-child .audit-icon{color:#059669}.audit-section:nth-child(2) .audit-icon{color:#dc2626}.audit-section:nth-child(3) .audit-icon{color:#f59e0b}.audit-header.collapsible{cursor:pointer;position:relative;transition:all .2s;-webkit-user-select:none;user-select:none}.audit-header.collapsible:hover{background:#f8fafc;border-radius:8px;box-shadow:0 4px 12px #1e293b1a;padding:16px 20px;transform:translateY(-1px)}.collapse-icon{color:#64748b;font-size:14px;position:absolute;right:20px;top:50%;transform:translateY(-50%);transition:transform .2s}.audit-header-wrapper{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.audit-header-wrapper .audit-header{flex:1 1;margin-bottom:0}.select-all-controls{display:flex;gap:8px}.deselect-all-button,.select-all-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s;white-space:nowrap}.select-all-button{background:#059669;color:#fff}.select-all-button:hover{background:#047857;transform:translateY(-1px)}.deselect-all-button{background:#dc2626;color:#fff}.deselect-all-button:hover{background:#b91c1c;transform:translateY(-1px)}.bulk-image-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.bulk-image-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000040;max-height:80vh;max-width:500px;overflow-y:auto;width:90%}.bulk-image-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px}.bulk-image-modal-header h2{color:#1e293b;font-size:18px;font-weight:700;margin:0}.bulk-image-modal-header button{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:20px;padding:4px;transition:background-color .2s}.bulk-image-modal-header button:hover{background:#f1f5f9}.bulk-image-modal-content{padding:20px}.bulk-image-modal-content p{color:#64748b;font-size:14px;margin:0 0 16px}.bulk-image-input{margin-bottom:20px}.bulk-image-input label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.bulk-image-input input{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.bulk-image-input input:focus{border-color:#2563eb;outline:none}.bulk-image-actions{display:flex;gap:12px;justify-content:flex-end}.bulk-image-actions button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px;transition:all .2s}.bulk-image-actions button:first-child{background:#64748b;color:#fff}.bulk-image-actions button:first-child:hover{background:#475569}.bulk-image-actions button:last-child{background:#2563eb;color:#fff}.bulk-image-actions button:last-child:hover:not(:disabled){background:#1d4ed8}.bulk-image-actions button:disabled{background:#9ca3af;cursor:not-allowed}@media (max-width:768px){.header-actions{align-items:center;flex-direction:column}.bulk-image-button,.bulk-mode-button,.bulk-multiplier-button,.update-avails-button{max-width:300px;width:100%}.tab-navigation{flex-direction:column;gap:8px}.tab-button{width:100%}.audit-header{font-size:18px}.audit-header-wrapper{align-items:stretch;flex-direction:column;gap:12px}.select-all-controls{justify-content:center}.deselect-all-button,.select-all-button{font-size:11px;padding:6px 12px}.sign-checkbox{right:8px;top:8px}.bulk-image-modal{margin:20px;width:95%}.bulk-image-actions{flex-direction:column}.bulk-image-actions button{width:100%}}.sync-signs-button{align-items:center;background:#2563eb;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:16px;gap:8px;margin-right:12px;padding:8px 16px;transition:background .2s}.sync-signs-button:disabled{background:#b3c6f7;cursor:not-allowed}.sync-logs-section{background:#f9f9fc;border-radius:8px;box-shadow:0 2px 8px #0000000a;margin:32px 0;padding:24px}.sync-log-list{list-style:none;margin:0;padding:0}.sync-log-item{background:#fff;border-left:4px solid #2563eb;border-radius:6px;box-shadow:0 1px 4px #00000008;margin-bottom:18px;padding:12px 16px}.sync-log-item details{margin-bottom:8px;margin-top:8px}.sync-log-item a{color:#2563eb;font-size:14px;text-decoration:underline}.sync-changes-container{display:flex;flex-direction:column;gap:16px;margin-top:12px}.sign-change-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:16px;transition:all .2s ease}.sign-change-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-1px)}.sign-change-card.loading{align-items:center;color:#6b7280;display:flex;font-style:italic;gap:12px}.sign-change-card.error{align-items:center;background:#fef2f2;border-color:#fecaca;color:#dc2626;display:flex;gap:12px}.error-icon{font-size:20px}.error-message{flex:1 1}.sign-header{border-bottom:1px solid #f3f4f6;display:flex;gap:16px;margin-bottom:16px;padding-bottom:12px}.sign-image{align-items:center;background:#f9fafb;border-radius:8px;display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;width:80px}.sign-image img{height:100%;object-fit:cover;width:100%}.sign-image .no-image{align-items:center;color:#9ca3af;display:flex;flex-direction:column;font-size:24px;gap:4px}.sign-image .no-image span{font-size:10px}.sign-info{flex:1 1;min-width:0}.sign-info h4{color:#111827;font-size:16px;font-weight:600;line-height:1.4;margin:0 0 8px}.sign-info p{align-items:center;color:#6b7280;display:flex;gap:6px;margin:4px 0}.sign-info .sign-location{color:#374151;font-weight:500}.sign-info .sign-address{color:#9ca3af;font-size:13px}.changes-section{margin-top:12px}.changes-section h5{color:#374151;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.changes-list{display:flex;flex-direction:column;gap:12px}.field-change{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:6px;padding:12px}.field-name{color:#374151;font-size:13px;font-weight:600;margin-bottom:8px;text-transform:capitalize}.field-values{flex-wrap:wrap;gap:16px}.field-values,.value{align-items:center;display:flex}.value{gap:6px}.value .label{color:#6b7280;font-size:12px;font-weight:500}.value .number{color:#111827;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;font-weight:600}.value .number.increase{color:#059669}.value .number.decrease{color:#dc2626}.change-indicator{align-items:center;border-radius:4px;display:flex;font-size:12px;font-weight:600;gap:4px;margin-left:auto;padding:4px 8px}.change-indicator.positive{background:#d1fae5;color:#065f46}.change-indicator.negative{background:#fee2e2;color:#991b1b}.sign-change-card .loading-spinner{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}.sold-out-button{align-items:center;background:#f59e0b;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:6px 12px;transition:all .2s ease}.sold-out-button:hover{background:#d97706}.sold-out-button.active{background:#dc2626}.sold-out-button.active:hover{background:#b91c1c}.sold-out-banner{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border-radius:4px;box-shadow:0 2px 4px #dc262633;color:#fff;display:flex;font-size:14px;font-weight:600;justify-content:space-between;margin-top:8px;padding:8px 12px}.sold-out-banner span{align-items:center;display:flex;gap:6px}.sold-out-banner small{font-size:12px;font-weight:400;opacity:.9}.remove-sold-out-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:20px;justify-content:center;transition:background .2s ease;width:20px}.remove-sold-out-button:hover{background:#ffffff4d}.sold-out-sign-info{background:#f8f9fa;border-left:4px solid #f59e0b;border-radius:6px;margin-bottom:16px;padding:12px}.sold-out-sign-info h3{color:#111827;font-size:16px;margin:0 0 8px}.sold-out-sign-info p{color:#6b7280;font-size:14px;margin:4px 0}.sold-out-date-inputs{display:flex;gap:16px;margin-bottom:16px}.date-input-group{flex:1 1}.date-input-group label{color:#374151;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.date-input-group input{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.date-input-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.sold-out-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;margin-bottom:16px;padding:12px}.sold-out-note p{color:#1e40af;font-size:14px;line-height:1.5;margin:0}.primary-button{background:#dc2626;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background .2s ease}.primary-button:hover:not(:disabled){background:#b91c1c}.primary-button:disabled{background:#9ca3af;cursor:not-allowed}.added-sign-card{background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;padding:14px}.added-sign-title{color:#0f172a;font-size:16px;font-weight:700}.added-sign-meta{color:#64748b;font-size:13px}.added-sign-kpi{color:#2563eb;font-size:14px;font-weight:700}.sign-card.sold-out{background:linear-gradient(135deg,#fef2f2,#fef2f2);border:2px solid #dc2626}.sign-card.sold-out .sign-info h3:after{color:#dc2626;content:" 🛑"}@media (max-width:700px){.edit-fields{grid-template-columns:1fr;padding:18px 8px}.edit-header{padding:16px 8px 10px}.sign-card{height:auto;margin:0 0 32px;min-width:0;width:98vw}}.sign-edit-form .section-heading{font-size:15px;font-weight:700;margin:18px 0 8px}.add-new-sign-button{align-items:center;background:#059669;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.add-new-sign-button:hover{background:#047857}.new-sign-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.new-sign-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:1000px;overflow:hidden;width:100%}.new-sign-modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 32px 16px}.new-sign-modal-header h2{color:#1e293b;font-size:24px;font-weight:700;margin:0}.new-sign-modal-header button{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:24px;padding:4px;transition:color .2s}.new-sign-modal-header button:hover{color:#1e293b}.new-sign-modal-content{flex:1 1;overflow-y:auto;padding:24px 32px}.form-section{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:32px;padding:20px}.form-section h3{border-bottom:2px solid #d1d5db;color:#1e293b;font-size:18px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-field{display:flex;flex-direction:column}.form-field label{color:#374151;font-size:14px;font-weight:600;margin-bottom:6px}.form-field input,.form-field select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.form-field input:focus,.form-field select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-field input[type=number]{-moz-appearance:textfield}.form-field input[type=number]::-webkit-inner-spin-button,.form-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.image-upload-section{margin-top:16px}.image-upload-options{gap:16px;margin-bottom:16px}.image-upload-options,.upload-option{display:flex;flex-direction:column}.upload-option label{color:#374151;font-size:14px;font-weight:600;margin-bottom:6px}.upload-option input[type=file]{background:#f9fafb;border:2px dashed #d1d5db;border-radius:6px;cursor:pointer;padding:8px;transition:border-color .2s}.upload-option input[type=file]:hover{border-color:#2563eb}.upload-option input[type=file]:disabled{cursor:not-allowed;opacity:.5}.file-info{align-items:center;color:#6b7280;display:flex;font-size:12px;gap:8px;margin-top:8px}.image-preview{margin-top:16px;text-align:center}.image-preview img{border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;max-height:150px;max-width:200px}.form-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:24px}.form-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.cancel-button{background:#f3f4f6;color:#374151}.cancel-button:hover:not(:disabled){background:#e5e7eb}.create-button{background:#059669;color:#fff}.create-button:hover:not(:disabled){background:#047857}.cancel-button:disabled,.create-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.new-sign-modal{margin:20px;max-height:calc(100vh - 40px)}.new-sign-modal-header{padding:20px 24px 16px}.new-sign-modal-content{padding:20px 24px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}.modal-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 24px;text-align:center}.modal-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f4f6;border-radius:50%;border-top-color:#3b82f6;height:40px;margin-bottom:16px;width:40px}.modal-loading p{color:#64748b;font-size:14px;margin:0}.toggle-fields-button{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:12px;font-weight:500;margin-right:auto;padding:8px 16px;transition:all .2s}.toggle-fields-button:hover{background:#e5e7eb;border-color:#9ca3af}.special-units-section{margin:0 auto;max-width:1200px}.special-units-header{margin-bottom:32px;text-align:center}.special-units-header h2{color:#1e293b;font-size:28px;font-weight:700;margin-bottom:8px}.special-units-header p{color:#64748b;font-size:16px;margin:0}.special-units-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.special-units-stats{grid-gap:16px;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:24px}.special-units-stats .stat-card{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:20px;text-align:center}.special-units-stats .stat-card h3{color:#64748b;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.special-units-stats .stat-card p{color:#1e293b;font-size:24px;font-weight:700;margin:0}.special-units-list{padding:24px}.no-special-units{color:#64748b;padding:48px 24px;text-align:center}.no-special-units p{font-size:16px;margin:0 0 8px}.no-special-units p:last-child{color:#94a3b8;font-size:14px}.special-units-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.special-unit-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s}.special-unit-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.special-unit-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px}.special-unit-header h3{color:#1e293b;font-size:18px;font-weight:600;margin:0}.edit-special-unit-button{align-items:center;background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.edit-special-unit-button:hover{background:#1d4ed8}.special-unit-details{padding:20px}.sign-info{border-bottom:1px solid #e2e8f0;margin-bottom:20px;padding-bottom:20px}.sign-info p{color:#64748b;font-size:14px;margin:0 0 8px}.sign-info p strong{color:#1e293b;font-weight:600}.sign-info .sign-image{border-radius:8px;margin-top:12px;max-width:200px;overflow:hidden}.sign-info .sign-image img{display:block;height:auto;width:100%}.unit-config{gap:16px}.config-item,.unit-config{display:flex;flex-direction:column}.config-item{gap:4px}.config-item label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.config-item p{color:#1e293b;font-size:14px;line-height:1.4;margin:0}.config-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.bookable-status{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.bookable-status.bookable{background:#dcfce7;color:#166534}.bookable-status.not-bookable{background:#fef2f2;color:#dc2626}.special-units-modal{max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.special-units-modal .modal-header{background:#f8fafc;border-bottom:1px solid #e2e8f0}.special-units-modal .modal-body{padding:24px}.special-units-modal .sign-info{background:#f8fafc;border-radius:8px;margin-bottom:24px;padding:16px}.special-units-modal .sign-info h3{color:#1e293b;font-size:16px;font-weight:600;margin-bottom:12px}.special-units-modal .sign-details{grid-gap:8px;display:grid;gap:8px}.special-units-modal .sign-details p{color:#64748b;font-size:14px;margin:0}.special-units-modal .sign-details p strong{color:#1e293b;font-weight:600}.special-units-modal .sign-image{border-radius:8px;margin-top:12px;max-width:200px;overflow:hidden}.special-units-modal .sign-image img{display:block;height:auto;width:100%}.special-unit-form{display:flex;flex-direction:column;gap:20px}.special-unit-form h3{color:#1e293b;font-size:18px;font-weight:600;margin:0 0 16px}.special-unit-form .form-field{display:flex;flex-direction:column;gap:8px}.special-unit-form .form-field label{color:#374151;font-size:14px;font-weight:600}.special-unit-form .form-field input,.special-unit-form .form-field select,.special-unit-form .form-field textarea{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:12px;transition:border-color .2s}.special-unit-form .form-field input:focus,.special-unit-form .form-field select:focus,.special-unit-form .form-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.special-unit-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.special-unit-form .modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.special-unit-form .modal-footer button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.special-unit-form .modal-footer .cancel-button{background:#f3f4f6;color:#374151}.special-unit-form .modal-footer .cancel-button:hover{background:#e5e7eb}.special-unit-form .modal-footer .save-button{background:#2563eb;color:#fff}.special-unit-form .modal-footer .save-button:hover:not(:disabled){background:#1d4ed8}.special-unit-form .modal-footer .save-button:disabled{background:#9ca3af;cursor:not-allowed}@media (max-width:768px){.special-units-grid{grid-template-columns:1fr}.special-unit-header{align-items:flex-start;flex-direction:column;gap:12px}.config-row,.special-unit-form .form-row{grid-template-columns:1fr}.special-unit-form .modal-footer{flex-direction:column}}@keyframes reactionMenuPop{0%{opacity:0;transform:translateX(-50%) scale(.75)}to{opacity:1;transform:translateX(-50%) scale(1)}}@keyframes reactionBadgePop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.reaction-menu{animation:reactionMenuPop .15s cubic-bezier(.34,1.56,.64,1) forwards}.message-reaction{animation:reactionBadgePop .2s cubic-bezier(.34,1.56,.64,1) forwards}.imessage-threads-root{background:#f5f6fa;display:flex;font-family:San Francisco,Segoe UI,Arial,sans-serif;height:100%}.imessage-sidebar{background:#fff;border-right:1.5px solid #e5e7eb;display:flex;flex-direction:column;height:100%;max-width:400px;min-width:220px;overflow-y:auto;width:320px}.imessage-thread-list{flex:1 1;overflow-y:auto}.imessage-thread-item{align-items:center;border-bottom:1px solid #f1f1f1;cursor:pointer;display:flex;padding:14px 18px;position:relative;transition:background .15s}.imessage-thread-item.selected{background:#e0e7ff}.imessage-avatar{align-items:center;background:#dbeafe;border-radius:50%;color:#2563eb;display:flex;font-size:20px;font-weight:700;height:38px;justify-content:center;margin-right:14px;width:38px}.imessage-thread-info{flex:1 1;min-width:0}.imessage-thread-name{color:#22223b;font-size:16px;font-weight:600;margin-bottom:2px}.imessage-thread-name,.imessage-thread-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imessage-thread-preview{color:#64748b;font-size:14px}.imessage-unseen-badge{align-items:center;display:flex;margin-left:8px}.imessage-main{background:#f5f6fa;flex:1 1;min-width:0}.imessage-convo,.imessage-main{display:flex;flex-direction:column;height:100%}.imessage-convo-header{background:#fff;border-bottom:1.5px solid #e5e7eb;color:#22223b;padding:18px 24px}.imessage-convo-header,.imessage-convo-title{font-size:18px;font-weight:600}.imessage-convo-body{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:24px 32px 16px}.imessage-bubble{align-items:center;border-radius:18px;box-shadow:0 2px 8px #1e293b0a;display:flex;flex-direction:column;font-size:15px;justify-content:center;line-height:1.5;margin-bottom:2px;max-width:60%;padding:12px 18px;position:relative;text-align:center;word-break:break-word}.imessage-bubble.sent{align-self:flex-end;background:#2563eb;border-bottom-right-radius:6px;color:#fff}.imessage-bubble.received{align-self:flex-start;background:#fff;border:1px solid #e5e7eb;border-bottom-left-radius:6px;color:#22223b}.imessage-bubble-content{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:4px;text-align:center;width:100%}.imessage-bubble-time{color:#64748b;font-size:12px;text-align:center;width:100%}.imessage-convo-input{align-items:flex-end;background:#fff;border-top:1.5px solid #e5e7eb;display:flex;gap:12px;padding:16px 24px}.imessage-convo-input textarea{background:#f8fafc;border:1.5px solid #e5e7eb;border-radius:12px;flex:1 1;font-size:15px;max-height:90px;min-height:38px;outline:none;padding:10px 14px;resize:none}.imessage-send-btn{align-items:center;background:#2563eb;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;transition:background .15s;width:40px}.imessage-send-btn:disabled{background:#a5b4fc;cursor:not-allowed}.imessage-empty,.imessage-empty-main{align-items:center;color:#64748b;display:flex;font-size:18px;height:100%;justify-content:center;min-height:200px}.new-msg-animate{animation:newMsgScaleIn .6s cubic-bezier(.22,1,.36,1);z-index:2}@keyframes newMsgScaleIn{0%{opacity:0;transform:scale(.85) translateY(30px)}60%{opacity:1;transform:scale(1.04) translateY(-4px)}80%{opacity:1;transform:scale(.98) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}.verified-users-section{border-top:1px solid #e5e7eb}.verified-users-header:hover{background:#f1f5f9!important}.verified-users-list{max-height:300px;overflow-y:auto}.verified-users-list .imessage-thread-item:hover{background:#f8fafc}.verified-users-list .imessage-thread-item.selected{background:#e0e7ff;opacity:1!important}.verified-users-list .imessage-thread-item{border-bottom:1px solid #f1f1f1}.verified-users-list .imessage-thread-item:last-child{border-bottom:none}.imessage-thread-list-mobile{max-height:calc(100vh - 56px);overflow-x:hidden;overflow-y:auto}.imessage-list-mobile-wrapper,.imessage-thread-list-mobile{background:#fff;display:flex;flex-direction:column;width:100vw}.imessage-list-mobile-wrapper{align-items:stretch;min-height:100dvh}.imessage-header-mobile{background:#fff;border-bottom:1.5px solid #e5e7eb;color:#111827;font-size:22px;font-weight:700;letter-spacing:.1px;padding:24px 18px 10px}.message-attachments{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}@media (max-width:768px){.imessage-threads-root{flex-direction:column;height:100vh;min-height:0}.imessage-sidebar{align-items:center;background:#fff;border-bottom:1.5px solid #e5e7eb;border-right:none;max-width:100vw;min-width:0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.imessage-sidebar,.imessage-thread-list{flex-direction:row;height:56px;overflow-x:auto;overflow-y:hidden;width:100vw}.imessage-thread-list{display:flex;gap:0}.imessage-thread-item{border-bottom:none;border-right:1px solid #f1f1f1;flex-direction:column;font-size:13px;margin:0;max-width:120px;min-width:90px;padding:8px 6px}.imessage-avatar{font-size:16px;height:32px;margin:0 0 2px;width:32px}.imessage-thread-info{min-width:0;text-align:center}.imessage-thread-name{font-size:13px;margin-bottom:0}.imessage-thread-preview{display:none}.imessage-main{background:#f5f6fa;height:calc(100vh - 56px);min-width:0;position:relative;width:100vw}.imessage-convo,.imessage-main{display:flex;flex-direction:column}.imessage-convo{height:100%}.imessage-convo-header{font-size:16px;padding:12px 10px}.imessage-convo-body{flex:1 1;gap:8px;min-height:0;overflow-y:auto;padding:10px 4px 70px}.imessage-bubble{border-radius:14px;font-size:14px;max-width:95vw;padding:10px 12px}.imessage-bubble-content{margin-bottom:2px}.imessage-bubble-time{font-size:11px}.imessage-convo-input{align-items:center;background:#fff;border-radius:0;border-top:1.5px solid #e5e7eb;bottom:56px;display:flex;gap:6px;left:0;padding:10px 6px;position:fixed;width:100vw;z-index:20}.imessage-convo-input textarea{font-size:14px;max-height:60px;min-height:32px;padding:8px 10px}.imessage-send-btn{font-size:18px;height:36px;width:36px}.message-image{max-height:40vw!important;max-width:80vw!important}.reaction-menu{font-size:22px!important;gap:6px!important;max-width:90vw!important;min-width:200px!important;padding:8px 10px!important}.image-modal-content img{max-height:70vh!important;max-width:98vw!important}.imessage-thread-list-mobile{border-bottom:none;padding-bottom:0}.imessage-thread-item{align-items:center;background:none;border-bottom:1px solid #f1f1f1;border-right:none;flex-direction:row;font-size:15px;max-width:100%;min-width:0;padding:14px 18px;width:100%}.imessage-thread-item.selected{background:#e0e7ff}}.transaction-management{margin:0 auto;max-width:1200px;padding:20px}.card-bg{backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);margin-bottom:24px;padding:24px}.date-filter{align-items:center;background:none;box-shadow:none;display:flex;gap:10px;margin-bottom:20px;padding:0}.date-filter input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.date-filter button{background-color:var(--primary);border:none;border-radius:10px;box-shadow:0 2px 10px #2563eb33;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:10px 16px;transition:background .2s}.date-filter button:disabled{background-color:#9ca3af;cursor:not-allowed}.date-filter button:hover:not(:disabled){background-color:var(--primary-600)}.tab-button{background:#eef2f7;border:none;border-radius:9999px;color:#64748b;cursor:pointer;font-size:14px;font-weight:700;margin-right:8px;outline:none;padding:10px 18px;transition:all .2s}.tab-button.active{background:var(--primary);box-shadow:0 8px 18px #2563eb40;color:#fff}.tab-button:hover:not(.active){background:#e0e7ef;color:#1e293b}.error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin-bottom:20px;padding:12px}.batches-table,.transactions-table{margin-top:20px}.batches-table h3,.transactions-table h3{color:#0f172a;margin-bottom:15px}.batches-table table,.transactions-table table{background:var(--surface-strong);border:1px solid var(--border);border-collapse:collapse;border-radius:12px;box-shadow:var(--shadow-sm);overflow:hidden;width:100%}.batches-table td,.batches-table th,.transactions-table td,.transactions-table th{border-bottom:1px solid var(--border);padding:12px 14px;text-align:left}.batches-table thead th,.transactions-table thead th{background-color:#f7f9fc;color:#334155;font-weight:700}.batches-table tbody tr:hover,.transactions-table tbody tr:hover{background-color:#f8fafc}.void-btn{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;margin-right:5px;padding:6px 12px;transition:background .2s}.void-btn:hover:not(:disabled){background-color:#c82333}.refund-btn{background-color:#ffc107;border:none;border-radius:4px;color:#212529;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:background .2s}.refund-btn:hover:not(:disabled){background-color:#e0a800}.refund-btn:disabled,.void-btn:disabled{cursor:not-allowed;opacity:.6}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#2563eb;height:40px;margin:0 auto;width:40px}@media (max-width:768px){.transaction-management{padding:12px}.card-bg{border-radius:10px;padding:16px}.date-filter{align-items:stretch;flex-direction:column;gap:8px}.date-filter input[type=date]{box-sizing:border-box;font-size:16px;width:100%}.date-filter button{font-size:15px;padding:12px 16px;width:100%}.tab-button{font-size:13px;padding:8px 14px;white-space:nowrap}.card-bg>div:first-child{padding-bottom:4px}.batches-table,.card-bg>div:first-child,.transactions-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.batches-table table,.transactions-table table{min-width:520px}.batches-table td,.batches-table th,.transactions-table td,.transactions-table th{font-size:13px;padding:10px}.refund-btn,.void-btn{font-size:12px;min-height:36px;padding:8px 10px}}@media (max-width:480px){.transaction-management{padding:8px}.card-bg{padding:12px}.batches-table td,.batches-table th,.transactions-table td,.transactions-table th{font-size:12px;padding:8px}.transactions-table td:last-child{display:flex;flex-direction:column;gap:4px}}.organizations-container{margin:0 auto;max-width:1400px;padding:20px}.organizations-header{margin-bottom:30px;text-align:center}.organizations-header h1{align-items:center;color:#1e293b;display:flex;font-size:2.5em;font-weight:700;gap:12px;justify-content:center;margin-bottom:8px}.organizations-header p{color:#64748b;font-size:1.1em;margin:0}.organizations-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:24px}.organization-card{animation:fadeIn .5s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 4px 20px #1e293b1f;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.organization-card:hover{box-shadow:0 8px 32px #1e293b29;transform:translateY(-2px)}.org-header{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px}.org-title h3{color:#1e293b;font-size:1.4em;font-weight:700;margin:0 0 4px}.org-id{background:#f1f5f9;border-radius:4px;color:#64748b;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;padding:2px 8px}.status-badge{align-items:center;border-radius:20px;display:flex;font-size:.9em;font-weight:600;gap:6px;padding:6px 12px}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fef2f2;color:#dc2626}.org-content{padding:20px}.org-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px}.stat-item{align-items:center;background:#f8fafc;border-radius:8px;color:#475569;display:flex;font-size:.95em;gap:8px;padding:12px}.stat-item svg{color:#3b82f6;font-size:1.1em}.org-dates{margin-bottom:20px}.date-item{align-items:center;color:#64748b;display:flex;font-size:.9em;gap:8px;margin-bottom:8px}.date-item svg{color:#94a3b8;font-size:.9em}.owner-section{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;margin-bottom:20px;padding:16px}.owner-section h4{align-items:center;color:#1e293b;display:flex;font-size:1.1em;font-weight:600;gap:8px;margin:0 0 12px}.owner-info{display:flex;flex-direction:column;gap:8px}.owner-detail{align-items:center;color:#475569;display:flex;font-size:.9em;gap:8px}.owner-detail svg{color:#64748b;font-size:.9em;width:14px}.markup-section{margin-bottom:20px}.markup-section h4{align-items:center;color:#1e293b;display:flex;font-size:1.1em;font-weight:600;gap:8px;margin:0 0 12px}.markup-display{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.markup-value{color:#0369a1;font-size:1.2em;font-weight:700}.edit-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9em;gap:6px;padding:8px 12px;transition:all .2s}.edit-btn:hover{background:#2563eb;transform:translateY(-1px)}.markup-edit{display:flex;flex-direction:column;gap:12px}.markup-edit input{border:2px solid #e2e8f0;border-radius:8px;font-size:1em;padding:12px 16px;transition:border-color .2s}.markup-edit input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.edit-actions{display:flex;gap:8px}.cancel-btn,.save-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.save-btn{background:#10b981;color:#fff}.save-btn:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.save-btn:disabled{background:#9ca3af;cursor:not-allowed}.cancel-btn{background:#ef4444;color:#fff}.cancel-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.cancel-btn:disabled{background:#9ca3af;cursor:not-allowed}.members-section{margin-top:20px}.members-section h4{align-items:center;color:#1e293b;display:flex;font-size:1.1em;font-weight:600;gap:8px;margin:0 0 12px}.members-list{display:flex;flex-direction:column;gap:8px}.member-item{align-items:center;background:#f8fafc;border-radius:6px;display:flex;font-size:.9em;justify-content:space-between;padding:8px 12px}.member-name{color:#1e293b;font-weight:600}.member-email{color:#64748b;font-size:.85em}.loading-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#3b82f6;height:40px;margin-bottom:16px;width:40px}.loading-spinner p{color:#64748b;font-size:1.1em;margin:0}.empty-state{color:#64748b;padding:60px 20px;text-align:center}.empty-state svg{color:#cbd5e1;font-size:4em;margin-bottom:16px}.empty-state h3{color:#475569;font-size:1.5em;font-weight:600;margin:0 0 8px}.empty-state p{font-size:1.1em;margin:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.organizations-container{padding:16px}.organizations-header h1{font-size:2em}.organizations-grid{gap:16px;grid-template-columns:1fr}.org-header{align-items:flex-start;flex-direction:column;gap:12px}.org-stats{grid-template-columns:1fr}.markup-display{align-items:flex-start;flex-direction:column;gap:12px}.edit-actions{justify-content:space-between;width:100%}.member-item{align-items:flex-start;flex-direction:column;gap:4px}}.view-toggle-buttons{display:flex;gap:12px;justify-content:center;margin-top:20px}.toggle-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:1em;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.toggle-btn:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633;color:#3b82f6;transform:translateY(-2px)}.toggle-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.toggle-btn.active:hover{border-color:#667eea;box-shadow:0 4px 16px #667eea66;transform:translateY(-2px)}.alert{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:10px;margin-bottom:20px;padding:16px 20px}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.signup-generator-section{margin-top:24px}.generated-link-banner{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 16px #00000026;margin-bottom:24px;overflow:hidden}.banner-header{align-items:center;background:#0003;display:flex;justify-content:space-between;padding:16px 24px}.banner-header h3{align-items:center;color:#fff;display:flex;font-size:1.3em;gap:10px;margin:0}.close-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:2em;height:32px;line-height:1;opacity:.8;padding:0;transition:opacity .2s;width:32px}.close-btn:hover{opacity:1}.banner-body{background:#fffffff2;padding:24px}.info-row{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;margin-bottom:16px;padding-bottom:16px}.info-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.info-row .label{color:#475569;font-size:.95em;font-weight:600;min-width:120px}.info-row .value{color:#1e293b;flex:1 1}.pin-display{color:#764ba2;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:1.2em;font-weight:700;letter-spacing:.1em}.url-display{font-size:.9em}.url-display,.url-display-small{color:#0369a1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;word-break:break-all}.url-display-small{font-size:.75em}.create-section{margin-bottom:32px}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:1em;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-success{background:#10b981;color:#fff;justify-content:center;width:100%}.btn-success:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.create-form-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:16px;padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#1e293b;display:block;font-size:.95em;font-weight:600;margin-bottom:8px}.form-control{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1em;padding:12px 16px;transition:border-color .2s;width:100%}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-hint{color:#64748b;font-size:.85em;margin-top:6px}.logo-upload-container{margin-top:8px}.logo-upload-label{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:32px;transition:all .2s}.logo-upload-label:hover{background:#f1f5f9;border-color:#667eea}.logo-upload-label svg{color:#64748b;font-size:2em}.logo-upload-label span{color:#475569;font-weight:600}.logo-file-input{display:none}.logo-preview{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px}.logo-preview img{border-radius:8px;box-shadow:0 2px 8px #0000001a;max-height:200px;max-width:200px}.remove-logo-btn{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.remove-logo-btn:hover{background:#dc2626;transform:translateY(-1px)}.org-logo-thumb{border:1px solid #e2e8f0;border-radius:6px;height:32px;object-fit:cover;width:32px}.link-card-header .header-content{align-items:center;display:flex;gap:10px}.copy-button{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.copy-button:hover{background:#2563eb;transform:translateY(-1px)}.copy-button-small{align-items:center;background:#64748b;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.75em;gap:4px;padding:4px 8px;transition:all .2s}.copy-button-small:hover{background:#475569}.links-section{margin-bottom:32px}.links-section h3{color:#1e293b;font-size:1.5em;font-weight:600;margin-bottom:16px}.signup-links-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.link-info-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .3s}.link-info-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.link-info-card.expired{background:#fef2f2;border-color:#fecaca;opacity:.6}.link-info-card.completed{background:#f0fdf4;border-color:#a7f3d0}.link-card-header{align-items:center;background:#f8fafc;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px 20px}.link-info-card.expired .link-card-header{background:#fee2e2}.link-info-card.completed .link-card-header{background:#d1fae5}.link-card-header h4{color:#1e293b;font-size:1.1em;font-weight:600;margin:0}.link-card-body{padding:20px}.link-card-body .info-row{margin-bottom:12px;padding-bottom:12px}.link-card-body .info-row .label{font-size:.9em;min-width:80px}.link-card-body .info-row .value{font-size:.9em}@media (max-width:480px){.organizations-header h1{font-size:1.8em}.org-content{padding:16px}.markup-section,.owner-section{padding:12px}.view-toggle-buttons{flex-direction:column;gap:8px}.toggle-btn{justify-content:center;width:100%}.signup-links-grid{grid-template-columns:1fr}.info-row{align-items:flex-start;flex-direction:column;gap:8px}.info-row .label{min-width:auto}.banner-body,.create-form-card{padding:16px}.logo-preview img{max-height:150px;max-width:150px}.logo-upload-label{padding:24px}}.sign-count{color:#667eea;font-size:.9em;font-weight:600;margin-left:8px}.loading-signs{align-items:center;color:#64748b;display:flex;gap:12px;justify-content:center;padding:20px}.signs-selection{margin-top:12px}.signs-actions{display:flex;gap:8px;margin-bottom:12px}.btn-small{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85em;font-weight:600;padding:8px 16px;transition:all .2s}.btn-small:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.btn-small:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.signs-list{background:#fff;border:2px solid #e2e8f0;border-radius:8px;max-height:300px;overflow-y:auto}.sign-item{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s}.sign-item:last-child{border-bottom:none}.sign-item:hover{background:#f8fafc}.sign-item.selected{background:#eff6ff;border-left:4px solid #3b82f6;padding-left:12px}.sign-item input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.sign-key{color:#1e293b;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em;font-weight:500}.empty-signs{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;color:#64748b;padding:32px;text-align:center}.empty-signs p{font-size:.95em;margin:0}.signs-list::-webkit-scrollbar{width:8px}.signs-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.signs-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.signs-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.reset-signup-btn{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9em;font-weight:600;gap:8px;justify-content:center;padding:10px 20px;transition:all .2s;width:100%}.reset-signup-btn:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.reset-signup-btn:active{transform:translateY(0)}.publisher-name{background:#f0f4ff;color:#667eea}.publisher-name,.signs-count{border-radius:6px;display:inline-block;font-weight:600;padding:4px 12px}.signs-count{background:#d1fae5;color:#059669}.signs-display{border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:12px 0}.sign-badge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75em;font-weight:600;padding:6px 10px;transition:all .2s}.sign-badge:hover{background:#e2e8f0;border-color:#cbd5e1}.link-info-card .signs-display{padding:8px 0 12px}.link-info-card.completed .signs-display{border-bottom-color:#a7f3d0}.link-info-card.expired .signs-display{opacity:.6}
/*# sourceMappingURL=main.e2b83cc9.css.map*/