@import"https://fonts.googleapis.com/css2?family=Noto+Sans:wght@300;400;500;600;700&display=swap";:root{font-family:Sailec,Noto Sans,system-ui,-apple-system,sans-serif;line-height:1.5;color:#18181b;background:#f4f4f5;--primary: #662D91;--primary-hover: #4e226e;--primary-light: #f4eef9;--accent: #8DC63F;--accent-hover: #7ab332;--orange: #F15A24;--yellow: #FCEE21}*{box-sizing:border-box;margin:0}body{padding:0}body:before{content:"";position:fixed;top:-10vw;right:-10vw;width:40vw;height:40vw;border:1.5vw solid var(--orange);border-radius:50%;opacity:.15;z-index:-1;pointer-events:none}body:after{content:"";position:fixed;bottom:-15vw;left:-5vw;width:50vw;height:50vw;border:1.5vw solid var(--accent);border-radius:50%;opacity:.15;z-index:-1;pointer-events:none}.app-container{max-width:100%;padding:1rem;margin:0 auto}.page-head{margin-bottom:.75rem;background:var(--primary);color:#fff;padding:1rem 1.5rem;border-radius:12px;box-shadow:0 4px 20px #7b2c7426}.head-row{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.5rem}.brand-container{display:flex;align-items:center;gap:1rem}.brand-logo{height:3rem;width:auto;object-fit:contain;background:#fff;padding:.2rem;border-radius:8px}h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:#fff}.sub{color:#fffc;font-size:.875rem;margin-top:.15rem}.head-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.sync-badge{font-size:.75rem;color:#fff;background:var(--accent);padding:.2rem .6rem;border-radius:999px;white-space:nowrap;font-weight:600}.btn-refresh{font:inherit;font-size:.8rem;padding:.4rem .9rem;border-radius:8px;border:none;background:var(--accent);color:#fff;cursor:pointer;font-weight:600;transition:all .2s ease}.btn-refresh:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-refresh:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{font:inherit;font-size:.8rem;padding:.4rem .9rem;border-radius:8px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-secondary:hover{background:#ffffff1a}.help-panel{background:var(--primary-light);border:1px solid var(--primary);color:var(--primary-hover);padding:1.25rem 1.5rem;border-radius:12px;animation:slideDown .3s cubic-bezier(.16,1,.3,1);margin-bottom:1rem}.help-panel h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--primary);font-weight:700}.help-panel ul{margin-left:1.5rem;font-size:.9rem;display:flex;flex-direction:column;gap:.4rem}.help-panel li strong{color:var(--primary)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.card{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 8px #0000000d,0 0 0 1px #00000008;margin-bottom:.75rem;transition:box-shadow .2s ease}.card:hover{box-shadow:0 4px 12px #00000014,0 0 0 1px #00000008}.filters-bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.75rem 1rem}.search-input{font:inherit;font-size:.85rem;padding:.5rem .85rem;border:1px solid #d4d4d8;border-radius:8px;min-width:14rem;flex:1;max-width:22rem;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.filter-select{font:inherit;font-size:.8rem;padding:.5rem .6rem;border:1px solid #d4d4d8;border-radius:8px;background:#fff;transition:all .2s ease}.filter-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.result-count{font-size:.75rem;color:#71717a;margin-left:auto;white-space:nowrap}.bulk-bar{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.bulk-count{font-size:.8rem;font-weight:600;color:var(--primary);white-space:nowrap}.btn-bulk{font:inherit;font-size:.8rem;padding:.4rem .85rem;border-radius:8px;border:none;background:var(--primary);color:#fff;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-bulk:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.btn-bulk:disabled{opacity:.5;cursor:not-allowed}.btn-clear{font:inherit;font-size:.8rem;padding:.4rem .85rem;border-radius:8px;border:1px solid #d4d4d8;background:#fff;color:#52525b;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-clear:hover{background:#f4f4f5;border-color:#a1a1aa}.err{color:#dc2626;font-size:.875rem;padding:.5rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:.75rem}.skeleton-row{height:2rem;background:linear-gradient(90deg,#e4e4e7 25%,#f4f4f5,#e4e4e7 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;margin-bottom:.5rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{text-align:center;padding:3rem 1rem}.empty-icon{font-size:3rem;margin-bottom:.75rem}.empty-state h2{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.empty-state p{color:#71717a;font-size:.9rem;max-width:26rem;margin:0 auto 1rem}.empty-state button{font:inherit;font-size:.85rem;padding:.4rem 1rem;border-radius:6px;border:none;background:var(--primary);color:#fff;cursor:pointer}.empty-state button:hover{background:var(--primary-hover)}.table-wrap{overflow-x:auto;padding:0;border-radius:8px}table.grid{width:100%;font-size:.75rem;border-collapse:collapse;table-layout:fixed}table.grid th:nth-child(1){width:2.5rem}table.grid th:nth-child(2){width:5.5rem}table.grid th:nth-child(3){width:4.5rem}table.grid th:nth-child(4){width:12rem}table.grid th:nth-child(5){width:6rem}table.grid th:nth-child(6){width:3.5rem;text-align:right}table.grid th:nth-child(7){width:12rem}table.grid th:nth-child(8){width:6.5rem}table.grid th:nth-child(9){width:10rem}table.grid th:nth-child(10){width:8rem}table.grid th:nth-child(11){width:9rem}table.grid th:nth-child(12){width:6rem}table.grid th{position:sticky;top:0;background:#fafafa;z-index:1;border-bottom:2px solid #e4e4e7;padding:.4rem .3rem;white-space:nowrap;font-weight:600;color:#52525b;text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis}table.grid th:nth-child(6){text-align:right}table.grid td{padding:.3rem;border-bottom:1px solid #f4f4f5;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}table.grid td:nth-child(6){text-align:right}table.grid td:nth-child(4),table.grid td:nth-child(7),table.grid td:nth-child(11){white-space:normal;word-break:break-word;line-height:1.2}.col-check{text-align:center!important}.col-check input[type=checkbox]{cursor:pointer;width:.9rem;height:.9rem;margin:0}.col-status{display:flex;flex-direction:column;gap:.2rem;align-items:flex-start}.col-status .status-select{margin-top:0}tr.band-a{background:#fff}tr.band-b{background:#fafafa}tr.band-a:hover,tr.band-b:hover{background:var(--primary-light)}tr.day-sep td{height:3px;padding:0;background:#3f3f46;border:none}tbody>tr.day-sep:last-of-type{display:none}.status-select{font:inherit;font-size:.75rem;padding:.3rem .4rem;border:1px solid #d4d4d8;border-radius:6px;background:#fff;width:100%;max-width:9rem;transition:all .2s ease}.status-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.toast-container{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.toast{padding:.6rem 1rem;border-radius:8px;font-size:.85rem;font-weight:500;box-shadow:0 4px 12px #00000026;animation:slideIn .25s ease-out;pointer-events:auto}.toast-success{background:#16a34a;color:#fff}.toast-error{background:#dc2626;color:#fff}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.mobile-only{display:none}.desktop-only{display:block}.date-divider{font-size:.8rem;font-weight:700;color:#3f3f46;background:#e4e4e7;padding:.4rem .75rem;border-radius:6px;margin-bottom:.5rem}.mobile-card{padding:.75rem;margin-bottom:.5rem}.card-selected{outline:2px solid var(--primary);outline-offset:-1px}.mc-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.mc-check input{cursor:pointer;width:1.1rem;height:1.1rem}.mc-po{font-weight:700;font-size:.95rem;flex:1}.mc-body{display:flex;flex-direction:column;gap:.35rem}.mc-field{display:flex;gap:.5rem;font-size:.85rem}.mc-label{font-weight:600;color:#71717a;min-width:4.5rem;flex-shrink:0}.mc-row2{display:flex;gap:1rem;flex-wrap:wrap}.mc-status-row{margin-top:.4rem}.mc-status-row .status-select{width:100%;max-width:100%;font-size:.9rem;padding:.5rem}.login-wrapper{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.login-card{background:#fff;border-radius:12px;padding:2.5rem 2rem;box-shadow:0 4px 24px #00000014;width:100%;max-width:380px}.login-card h2{text-align:center;color:var(--primary);margin-bottom:.25rem;font-size:1.4rem}.login-card .login-sub{text-align:center;color:#71717a;font-size:.85rem;margin-bottom:1.5rem}.login-card label{display:block;font-size:.8rem;font-weight:600;color:#52525b;margin-bottom:.25rem}.login-card input[type=text],.login-card input[type=password]{font:inherit;width:100%;padding:.5rem .75rem;border:1px solid #d4d4d8;border-radius:6px;font-size:.9rem;margin-bottom:1rem}.login-card input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.btn-login{width:100%;font:inherit;font-size:.9rem;font-weight:600;padding:.6rem;border-radius:6px;border:none;background:var(--primary);color:#fff;cursor:pointer;transition:background .15s}.btn-login:hover{background:var(--primary-hover)}.btn-login:disabled{opacity:.5;cursor:not-allowed}.login-error{color:#dc2626;font-size:.8rem;text-align:center;margin-bottom:.75rem}.login-toggle{text-align:center;margin-top:1rem;font-size:.8rem;color:#71717a}.login-toggle button{background:none;border:none;color:var(--primary);cursor:pointer;font-weight:600;font-size:.8rem}.user-bar{display:flex;align-items:center;gap:.5rem}.user-name{font-size:.75rem;color:#52525b;font-weight:500}.btn-logout{font:inherit;font-size:.7rem;padding:.25rem .6rem;border-radius:4px;border:1px solid #d4d4d8;background:#fff;color:#71717a;cursor:pointer}.btn-logout:hover{background:#f4f4f5}.auto-refresh-badge{font-size:.65rem;color:#16a34a;background:#dcfce7;padding:.15rem .5rem;border-radius:999px;white-space:nowrap}.tabs-bar{display:flex;gap:0;margin-bottom:.75rem;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000000f,0 0 0 1px #0000000a}.tab-btn{flex:1;font:inherit;font-size:.85rem;font-weight:600;padding:.6rem 1rem;border:none;background:transparent;color:#71717a;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}.tab-btn:hover{background:#f4f4f5}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);background:var(--primary-light)}.analytics-section{display:flex;flex-direction:column;gap:.75rem}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.analytics-card{background:#fff;border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000000f,0 0 0 1px #0000000a}.analytics-card h3{font-size:.85rem;font-weight:700;color:#3f3f46;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.03em}.stat-row{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.8rem;border-bottom:1px solid #f4f4f5}.stat-row:last-child{border-bottom:none}.stat-label{color:#52525b}.stat-value{font-weight:600;color:#18181b}.history-filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.75rem}.history-table{width:100%;font-size:.75rem;border-collapse:collapse}.history-table th{background:#fafafa;border-bottom:2px solid #e4e4e7;padding:.5rem .4rem;text-align:left;font-weight:600;color:#52525b;font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.history-table td{padding:.4rem;border-bottom:1px solid #f4f4f5;vertical-align:middle}.history-table tr:hover{background:var(--primary-light)}.change-arrow{color:#71717a;font-weight:600;padding:0 .25rem}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}.app-container{padding:.5rem}.head-row{flex-direction:column}h1{font-size:1.25rem}.filters-bar{flex-direction:column;align-items:stretch}.search-input{min-width:0;max-width:100%}.result-count{margin-left:0;text-align:right}.bulk-bar{flex-direction:column;align-items:stretch}.analytics-grid{grid-template-columns:1fr}.history-filters{flex-direction:column;align-items:stretch}}
