@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap);body{background:#f8fafc;color:#0f172a;font-family:Montserrat,sans-serif;margin:0!important;transition:background-color .2s,color .2s}.content{box-sizing:border-box;margin:0 auto;padding:0 1.5rem 2em;text-align:center;width:100%}@media (max-width:760px){.content{padding:0 1rem 2em}}.login-gate{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:calc(100vh - 180px)}.login-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 14px 30px #0f172a14;min-width:320px;padding:2rem 2.2rem}.login-title{color:#1f2937;margin:0 0 .65rem}.login-gate-text{color:#374151;font-size:1.05rem;margin:0 0 1rem}body[data-theme=dark]{background:#030712;color:#e5e7eb}body[data-theme=dark] .content{color:#e5e7eb}body[data-theme=dark] .login-card{background:#111827;border-color:#374151;box-shadow:0 16px 35px #00000073}body[data-theme=dark] .login-title{color:#f3f4f6}body[data-theme=dark] .login-gate-text{color:#cbd5e1}.App{text-align:center}.App-logo{pointer-events:none}.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)}}@keyframes spin{to{transform:rotate(1turn)}}.button-spinner{border:2px solid #ffffff73;border-radius:50%;border-top-color:#fff;height:14px;width:14px}.button-spinner,.list-spinner{animation:spin .8s linear infinite}.list-spinner{border:2px solid #dbe4ef;border-radius:50%;border-top-color:#3db29d;height:18px;width:18px}.btn-loading-content{align-items:center;display:inline-flex;gap:.5rem;justify-content:center}.client-thumb{flex-shrink:0;object-fit:contain;vertical-align:middle}.admin-page{margin-top:1.5rem;overflow-x:hidden}.admin-header{align-items:center;display:flex;gap:.8rem;justify-content:space-between;margin-bottom:1rem}.admin-header h2{margin:0}.admin-header-actions{align-items:center;display:flex;flex:1 1;gap:.75rem;justify-content:flex-end}.admin-header-actions .button-generate{align-items:center;display:inline-flex;height:48px;justify-content:center}.admin-capacity-indicator{align-items:center;background:#eefaf7;border:1px solid #bfe7df;border-radius:8px;color:#1f3f3a;display:flex;flex:1 1;gap:.6rem;justify-content:center;min-width:320px;padding:6px 10px}.admin-capacity-ring{border-radius:50%;display:grid;flex-shrink:0;height:36px;place-items:center;width:36px}.admin-capacity-ring-inner{background:#fff;border-radius:50%;color:#2f6159;display:grid;font-size:.62rem;font-weight:700;height:26px;place-items:center;width:26px}.admin-capacity-text{align-items:baseline;display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;line-height:1.2;text-align:center}.admin-capacity-text strong{font-size:.95rem;font-weight:700;white-space:nowrap}.admin-capacity-text span{color:#4a6963;font-size:.82rem;white-space:nowrap}.admin-error{color:#c62828;margin-bottom:.75rem}.admin-filters{background:#f9fafb;border:1px solid #e9ecef;border-radius:8px;margin-bottom:.85rem;padding:.6rem .75rem}.admin-filters-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.admin-filters select,.admin-search{background:#fff;border:1px solid #d7dee7;border-radius:6px;box-sizing:border-box;font-size:.92rem;height:38px;padding:8px 10px}.admin-search{flex:2 1;min-width:180px}.admin-filters select{flex:1 1;min-width:140px}.admin-table-wrap{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:auto}.admin-table{border-collapse:collapse;font-size:.92rem;width:100%}.admin-table td,.admin-table th{border-bottom:1px solid #f0f2f5;padding:.6rem .7rem;text-align:left;white-space:nowrap}.admin-table th{background:#f9fafb;cursor:pointer;-webkit-user-select:none;user-select:none}.admin-table th:hover{background:#edf2f7}.admin-row-deleting td{animation:admin-deleting-pulse .7s ease-in-out 2;background:#fff5f5;border-color:#ef9a9a}.admin-loading-cell{padding:1.1rem .7rem}.jobs-loading{display:inline-flex}.status-badge{background:#f8fafc;border:1px solid #d1d5db;border-radius:999px;color:#334155;display:inline-block;font-size:.82rem;font-weight:600;padding:4px 8px}.status-running{background:#e3f2fd;border-color:#90caf9;color:#1565c0}.status-completed{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32}.status-warning{background:#fff3e0;border-color:#ffcc80;color:#ef6c00}.status-cancelled,.status-expired,.status-failed{background:#ffebee;border-color:#ef9a9a;color:#c62828}.status-cancelled-by-admin{background:#fdecec;border-color:#f5a6a6;color:#b71c1c}.admin-status-cell{align-items:flex-start;display:flex;flex-direction:column;gap:.25rem}.admin-warning-inline{color:#c2410c;font-size:.78rem;font-weight:600}.admin-stop-button{background:#fff5f5;border:1px solid #f3b5b5;border-radius:6px;color:#b42318}.admin-stop-button,.admin-view-button{cursor:pointer;font-weight:600;padding:6px 10px}.admin-view-button{background:#eaf8ee;border:1px solid #9ac8a3;border-radius:6px;color:#1f7a36}.admin-view-button:hover{background:#dff3e5}.admin-view-button:disabled{cursor:not-allowed;opacity:.55}.admin-action-group{align-items:center;display:flex;gap:.45rem}.admin-delete-button{background:#fff5f5;border:1px solid #f3b5b5;border-radius:6px;color:#b42318;cursor:pointer;font-weight:600;padding:6px 10px}.admin-delete-button:hover{background:#ffe6e6}.admin-delete-button:disabled{cursor:not-allowed;opacity:.55}.admin-stop-button:hover{background:#ffe6e6}.admin-stop-button:disabled{cursor:not-allowed;opacity:.55}.admin-row-coordinator td{background:#eff6ff}.admin-row-coordinator td:first-child{box-shadow:inset 3px 0 0 0 #60a5fa}.admin-row-coordinator.admin-details-row td{background:#f0f6ff}.admin-row-coordinator.admin-details-row td:first-child{box-shadow:inset 3px 0 0 0 #60a5fa}body[data-theme=dark] .admin-row-coordinator td{background:#0f1d33}body[data-theme=dark] .admin-row-coordinator td:first-child,body[data-theme=dark] .admin-row-coordinator.admin-details-row td:first-child{box-shadow:inset 3px 0 0 0 #3b82f6}body[data-theme=dark] .admin-row-coordinator.admin-details-row td{background:#0d1a2e}.admin-row-clickable{cursor:pointer;transition:background-color .15s}.admin-row-clickable:hover td{background:#f0f4f8}.admin-row-clickable.admin-row-coordinator:hover td{background:#e0ecfc}.admin-row-expanded td{border-bottom-color:#0000}.admin-th-dates{cursor:default}.admin-client-cell{align-items:center;display:flex;gap:6px}.admin-dates-cell{color:#64748b;font-size:.82rem;letter-spacing:-.01em;white-space:nowrap}body[data-theme=dark] .admin-dates-cell{color:#94a3b8}.admin-th-expand{cursor:default;width:36px}.admin-expand-cell{text-align:center;width:36px}.admin-expand-icon{color:#94a3b8;display:inline-block;font-size:.85rem;transition:transform .2s ease}.admin-expand-icon-open{transform:rotate(180deg)}.admin-detail-mono{color:#64748b;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.82rem;-webkit-user-select:all;user-select:all}.admin-details-row td{background:#fcfdff}.admin-details-grid{grid-gap:.45rem 1rem;display:grid;font-size:.9rem;gap:.45rem 1rem;grid-template-columns:repeat(2,minmax(220px,1fr));padding:.4rem 0}.admin-warning-box{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;margin-top:.35rem;padding:.7rem .85rem}.admin-detail-line{font-size:.9rem;margin-top:.55rem;white-space:normal;word-break:break-word}.admin-detail-line-warning{color:#9a3412}@keyframes admin-deleting-pulse{0%{box-shadow:inset 0 0 0 0 #f4433638}50%{box-shadow:inset 0 0 0 999px #f4433614}to{box-shadow:inset 0 0 0 999px #f443360a}}@media (max-width:1200px){.admin-header{align-items:stretch;flex-direction:column}.admin-header-actions{justify-content:stretch}.admin-filters-row{flex-direction:column}.admin-filters select,.admin-search{flex:initial;width:100%}}@media (max-width:760px){.admin-header-actions{align-items:stretch;flex-direction:column}.admin-capacity-indicator{flex-direction:column;gap:.3rem;min-width:0;text-align:center}.admin-capacity-text{flex-direction:column;gap:.2rem}.admin-capacity-text strong{font-size:.85rem}.admin-capacity-text span{font-size:.75rem;white-space:normal}.admin-header-actions .button-generate{width:100%}}body[data-theme=dark] .admin-page{color:#e5e7eb}body[data-theme=dark] .admin-filters select,body[data-theme=dark] .admin-search{background:#111827;border-color:#4b5563;color:#e5e7eb}body[data-theme=dark] .admin-table-wrap{background:#111827;border-color:#374151}body[data-theme=dark] .admin-table td,body[data-theme=dark] .admin-table th{border-bottom-color:#1f2937;color:#e5e7eb}body[data-theme=dark] .admin-table th{background:#0f172a}body[data-theme=dark] .admin-table th:hover{background:#1f2937}body[data-theme=dark] .admin-details-row td{background:#0f172a}body[data-theme=dark] .admin-capacity-indicator{background:#0f2e2a;border-color:#1f766b;color:#d1fae5}body[data-theme=dark] .admin-capacity-ring-inner{background:#052e2b;color:#d1fae5}body[data-theme=dark] .admin-capacity-text span{color:#a7f3d0}body[data-theme=dark] .status-badge{background:#1f2937;border-color:#4b5563;color:#d1d5db}body[data-theme=dark] .status-running{background:#0b2a3a;border-color:#155e75;color:#7dd3fc}body[data-theme=dark] .status-queued{background:#1e1b4b;border-color:#3730a3;color:#c7d2fe}body[data-theme=dark] .status-completed{background:#052e2b;border-color:#065f46;color:#6ee7b7}body[data-theme=dark] .status-warning{background:#3a2a0f;border-color:#92400e;color:#fcd34d}body[data-theme=dark] .admin-warning-inline{color:#fdba74}body[data-theme=dark] .status-cancelled,body[data-theme=dark] .status-cancelled-by-admin,body[data-theme=dark] .status-expired,body[data-theme=dark] .status-failed{background:#3f1d23;border-color:#7f1d1d;color:#fecaca}body[data-theme=dark] .admin-filters{background:#0f172a;border-color:#374151}body[data-theme=dark] .admin-row-clickable:hover td{background:#1e293b}body[data-theme=dark] .admin-row-clickable.admin-row-coordinator:hover td{background:#142240}body[data-theme=dark] .admin-expand-icon{color:#64748b}body[data-theme=dark] .admin-detail-mono{color:#94a3b8}body[data-theme=dark] .admin-warning-box{background:#3a2a0f;border-color:#92400e;color:#fcd34d}body[data-theme=dark] .admin-delete-button,body[data-theme=dark] .admin-stop-button{background:#3f1d23;border-color:#7f1d1d;color:#fecaca}body[data-theme=dark] .admin-delete-button:hover,body[data-theme=dark] .admin-stop-button:hover{background:#4f232a;border-color:#991b1b}body[data-theme=dark] .admin-view-button{background:#052e2b;border-color:#065f46;color:#6ee7b7}body[data-theme=dark] .admin-view-button:hover{background:#083a35}.login-button,.logout-button{border:none;border-radius:4px;cursor:pointer;font-weight:700;padding:8px 16px;transition:background-color .25s}.login-button{background-color:#3db29d;color:#fff}.login-button:hover{background-color:#38a18e}body[data-theme=dark] .login-button{background-color:#10b981;color:#052e2b}body[data-theme=dark] .login-button:hover{background-color:#34d399}.coord-page{margin-top:1.5rem}.coord-section{margin-bottom:2.5rem}.coord-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:space-between;margin-bottom:1rem}.coord-section-title{font-size:1.1rem;font-weight:600;margin:0}.coord-url-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coord-header{align-items:center;gap:.8rem;justify-content:space-between;margin-bottom:1rem}.coord-header,.coord-stats{display:flex;flex-wrap:wrap}.coord-stats{gap:.5rem}.coord-stat{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;font-size:.88rem;gap:.35rem;padding:6px 12px}.coord-stat-value{font-size:1rem;font-weight:700}.coord-stat-label{color:#64748b}.coord-stat-daily{background:#eff6ff;border-color:#bfdbfe}.coord-stat-weekly{background:#f5f3ff;border-color:#c4b5fd}.coord-stat-monthly{background:#fffbeb;border-color:#fcd34d}.coord-header-actions{align-items:center;display:flex;gap:.5rem}.coord-header-actions .button-generate{align-items:center;display:inline-flex;height:48px;justify-content:center}.coord-add-btn{white-space:nowrap}.coord-filters{background:#f9fafb;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem;padding:.6rem .75rem}.coord-search{flex:2 1;min-width:200px}.coord-filters select,.coord-search{background:#fff;border:1px solid #d7dee7;border-radius:6px;box-sizing:border-box;font-size:.92rem;height:38px;padding:8px 10px}.coord-filters select{flex:1 1;min-width:140px}.coord-error{color:#c62828;margin-bottom:.75rem}.coord-table-wrap{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:auto}.coord-table{border-collapse:collapse;font-size:.92rem;width:100%}.coord-table td,.coord-table th{border-bottom:1px solid #f0f2f5;padding:.6rem .7rem;text-align:left;white-space:nowrap}.coord-table th{background:#f9fafb;font-weight:600;-webkit-user-select:none;user-select:none}.coord-empty{color:#94a3b8;padding:2rem 1rem;text-align:center}.coord-row-inactive td{opacity:.5}.coord-client-name{font-weight:600;text-transform:capitalize}.coord-client-cell{align-items:center;display:flex;gap:8px}.coord-client-missing{color:#dc2626;font-size:.82rem;font-style:italic;font-weight:400}.coord-template{color:#64748b;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.82rem}.coord-toggle{border:1px solid;border-radius:999px;cursor:pointer;font-size:.78rem;font-weight:600;min-width:42px;padding:4px 10px}.coord-toggle-on{background:#dcfce7;border-color:#86efac;color:#166534}.coord-toggle-off{background:#f1f5f9;border-color:#cbd5e1;color:#64748b}.coord-toggle:disabled{cursor:not-allowed;opacity:.5}.coord-trigger-badge{background:#f8fafc;border:1px solid #d1d5db;border-radius:999px;color:#334155;display:inline-block;font-size:.8rem;font-weight:600;padding:3px 8px}.coord-trigger-daily{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.coord-trigger-weekly{background:#f5f3ff;border-color:#a78bfa;color:#6d28d9}.coord-trigger-monthly{background:#fffbeb;border-color:#fcd34d;color:#a16207}.coord-next{color:#475569;font-size:.85rem}.coord-next-imminent{color:#dc2626;font-weight:700}.coord-next-soon{color:#d97706;font-weight:600}.coord-next-inactive{color:#94a3b8}.coord-emails{color:#475569}.coord-row-clickable{cursor:pointer}.coord-row-clickable:hover td{background:#f8fafc}.coord-row-expanded td{border-bottom-color:#0000}.coord-th-expand{cursor:default;width:36px}.coord-expand-cell{text-align:center;width:36px}.coord-expand-icon{color:#94a3b8;display:inline-block;font-size:.85rem;transition:transform .2s ease}.coord-expand-icon-open{transform:rotate(180deg)}.coord-details-row td{background:#fcfdff;padding:.6rem .75rem}.coord-details-grid{grid-gap:.4rem 1rem;display:grid;font-size:.9rem;gap:.4rem 1rem;grid-template-columns:repeat(2,minmax(200px,1fr))}.coord-detail-mono{color:#64748b;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.82rem;-webkit-user-select:all;user-select:all}.coord-detail-emails{font-size:.9rem;margin-top:.5rem}.coord-detail-emails ul{list-style:disc;margin:.25rem 0 0 1.2rem;padding:0}.coord-detail-emails li{color:#334155;padding:.1rem 0;word-break:break-all}.coord-action-group{display:flex;gap:.4rem}.coord-edit-btn{background:#eff6ff;border:1px solid #93c5fd;border-radius:6px;color:#1d4ed8;cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 10px}.coord-edit-btn:hover{background:#dbeafe}.coord-delete-btn{background:#fff5f5;border:1px solid #f3b5b5;border-radius:6px;color:#b42318;cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 10px}.coord-delete-btn:hover{background:#ffe6e6}.coord-delete-btn:disabled{cursor:not-allowed;opacity:.55}.coord-form-overlay{background:#0006;display:grid;inset:0;place-items:center;position:fixed;z-index:100}.coord-form{background:#fff;border-radius:12px;box-shadow:0 8px 30px #0000002e;display:flex;flex-direction:column;gap:.5rem;max-width:520px;padding:1.5rem 2rem;width:100%}.coord-form h3{margin:0 0 .5rem}.coord-form label{color:#334155;font-size:.88rem;font-weight:600;margin-top:.25rem}.coord-form input[type=text],.coord-form select,.coord-form textarea{background:#fff;border:1px solid #d7dee7;border-radius:6px;font-family:inherit;font-size:.92rem;padding:8px 10px}.coord-form textarea{resize:vertical}.coord-checkbox-label{align-items:center;cursor:pointer;display:flex;gap:.5rem}.coord-form-error{color:#c62828;font-size:.88rem;margin:0}.coord-form-hint{color:#b26a00;font-size:.82rem;font-style:italic;margin:.25rem 0 0}.coord-form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.coord-cancel-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#475569;cursor:pointer;font-weight:600;padding:8px 16px}.coord-cancel-btn:hover{background:#f1f5f9}body[data-theme=dark] .coord-page{color:#e5e7eb}body[data-theme=dark] .coord-stat{background:#1e293b;border-color:#374151}body[data-theme=dark] .coord-stat-label{color:#94a3b8}body[data-theme=dark] .coord-stat-daily{background:#172554;border-color:#1e40af}body[data-theme=dark] .coord-stat-weekly{background:#2e1065;border-color:#5b21b6}body[data-theme=dark] .coord-stat-monthly{background:#451a03;border-color:#92400e}body[data-theme=dark] .coord-filters{background:#0f172a;border-color:#374151}body[data-theme=dark] .coord-filters select,body[data-theme=dark] .coord-search{background:#111827;border-color:#4b5563;color:#e5e7eb}body[data-theme=dark] .coord-table-wrap{background:#111827;border-color:#374151}body[data-theme=dark] .coord-table th{background:#0f172a;color:#e5e7eb}body[data-theme=dark] .coord-table td{border-bottom-color:#1f2937;color:#e5e7eb}body[data-theme=dark] .coord-template{color:#94a3b8}body[data-theme=dark] .coord-toggle-on{background:#052e2b;border-color:#065f46;color:#6ee7b7}body[data-theme=dark] .coord-toggle-off{background:#1f2937;border-color:#4b5563;color:#94a3b8}body[data-theme=dark] .coord-trigger-daily{background:#172554;border-color:#1e40af;color:#93c5fd}body[data-theme=dark] .coord-trigger-weekly{background:#2e1065;border-color:#5b21b6;color:#c4b5fd}body[data-theme=dark] .coord-trigger-monthly{background:#451a03;border-color:#92400e;color:#fcd34d}body[data-theme=dark] .coord-next{color:#94a3b8}body[data-theme=dark] .coord-next-imminent{color:#f87171}body[data-theme=dark] .coord-next-soon{color:#fbbf24}body[data-theme=dark] .coord-emails{color:#94a3b8}body[data-theme=dark] .coord-row-clickable:hover td{background:#1e293b}body[data-theme=dark] .coord-details-row td{background:#0f172a}body[data-theme=dark] .coord-detail-mono{color:#94a3b8}body[data-theme=dark] .coord-detail-emails li{color:#cbd5e1}body[data-theme=dark] .coord-expand-icon{color:#64748b}body[data-theme=dark] .coord-edit-btn{background:#172554;border-color:#1e40af;color:#93c5fd}body[data-theme=dark] .coord-edit-btn:hover{background:#1e3a8a}body[data-theme=dark] .coord-delete-btn{background:#3f1d23;border-color:#7f1d1d;color:#fecaca}body[data-theme=dark] .coord-delete-btn:hover{background:#4f232a}body[data-theme=dark] .coord-form{background:#1e293b;color:#e5e7eb}body[data-theme=dark] .coord-form label{color:#cbd5e1}body[data-theme=dark] .coord-form input[type=text],body[data-theme=dark] .coord-form select,body[data-theme=dark] .coord-form textarea{background:#111827;border-color:#4b5563;color:#e5e7eb}body[data-theme=dark] .coord-cancel-btn{background:#374151;border-color:#4b5563;color:#d1d5db}body[data-theme=dark] .coord-cancel-btn:hover{background:#4b5563}@media (max-width:1000px){.coord-header{align-items:stretch;flex-direction:column}.coord-header-actions,.coord-stats{justify-content:center}.coord-filters{flex-direction:column}}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:url(/static/media/Montserrat-VariableFont_wght.4df14eb5e72bf55c4497.ttf) format("ttf")}.header{grid-column-gap:1rem;align-items:center;background-color:#2e3b4d;border-bottom:1px solid #e0e0e0;column-gap:1rem;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);height:auto;margin-bottom:2em;min-height:60px;padding:1rem 2rem;position:relative}.logo-container{align-items:center;cursor:pointer;display:flex;min-width:0;width:100%}.logo-text{display:flex;flex-direction:column;margin:0;min-width:0;padding-left:10px}.logo-text_name{color:#fff;font-size:clamp(1.1rem,2vw,1.75rem);line-height:1.05}.logo-text_name,.logo-text_slogan{font-family:Montserrat,sans-serif;margin:0}.logo-text_slogan{color:#ccc;font-size:12px;line-height:1.2}.logo{height:60px;width:auto}.header-center-nav{align-items:center;display:flex;gap:.6rem;justify-content:center;justify-self:center;white-space:nowrap}.top-nav-button{background:#2e3b4d;border:1px solid #8fa2b8;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:10px 16px}.top-nav-active,.top-nav-button:hover{background:#3b4c63}.top-nav-admin{border-color:#3b82f6}.top-nav-admin:hover{border-color:#60a5fa}.header-right{justify-content:flex-end;justify-self:end;min-width:56px}.header-right,.header-right-controls{align-items:center;display:flex;gap:.75rem}.lang-toggle-button{background:#2e3b4d;border:1px solid #9fb0c5;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;height:38px;min-width:52px}.lang-toggle-button:hover{background:#3b4c63}.theme-toggle-button{align-items:center;background:#334155;border:1px solid #7c8da3;border-radius:999px;color:#f8fafc;cursor:pointer;display:inline-flex;height:46px;justify-content:center;padding:0;transition:transform .15s ease,background-color .2s,border-color .2s;width:46px}.theme-toggle-button:hover{background:#3b4c63;border-color:#a5b4c7;transform:translateY(-1px)}.theme-icon{align-items:center;display:inline-flex;font-size:1.1rem;height:20px;justify-content:center;line-height:1;width:20px}.theme-icon-moon{color:#dbeafe;transform:translate(.5px,-.5px)}.theme-icon-sun{color:#fef08a;transform:translateY(-.5px)}.user-menu{position:relative}.user-avatar-button{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:999px;cursor:pointer;display:flex;height:42px;justify-content:center;padding:0;transition:background-color .2s,border-color .2s;width:42px}.user-avatar-button:hover{background:#f9fafb;border-color:#9ca3af}.user-avatar-icon{fill:#334155;display:block;height:24px;width:24px}.user-name{color:#1f2937;font-size:16px;font-weight:700}.user-email{color:#374151;font-size:14px}.user-roles{color:#6b7280;font-size:12px}.user-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 25px #0000001f;min-width:260px;padding:.75rem;position:absolute;right:0;text-align:left;top:48px;z-index:1000}.header-login-action .auth-container{margin-top:.7rem}.header-login-action .login-button{width:100%}.dropdown-logout{margin-top:.7rem;width:100%}.logout-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;padding:8px 16px;transition:background-color .25s}.logout-button:hover{background-color:#c82333}.burger-button{align-items:center;background:#2e3b4d;border:1px solid #8fa2b8;border-radius:8px;cursor:pointer;display:flex;height:42px;justify-content:center;padding:0;width:42px}.burger-button:hover{background:#3b4c63}.burger-icon{display:flex;flex-direction:column;gap:4px;width:20px}.burger-icon span{background:#fff;border-radius:1px;display:block;height:2px;transition:transform .2s,opacity .2s;width:100%}.burger-icon-open span:first-child{transform:translateY(6px) rotate(45deg)}.burger-icon-open span:nth-child(2){opacity:0}.burger-icon-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu{animation:mobile-slide-in .2s ease;border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:.75rem;grid-column:1/-1;padding-top:.75rem}@keyframes mobile-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-nav{display:flex;flex-direction:column;gap:.4rem}.mobile-nav .top-nav-button{font-size:.95rem;padding:10px 14px;text-align:left;width:100%}.mobile-controls{align-items:center;display:flex;gap:.5rem;padding-bottom:.25rem}.mobile-controls-spacer{flex:1 1}.mobile-controls .theme-toggle-button{height:40px;width:40px}.mobile-only{display:none}.desktop-only{display:flex}@media (max-width:1400px){.header{padding:1rem 1.2rem}.logo-container{min-width:60px;width:60px}.logo-text{display:none}}@media (max-width:860px){.header{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;padding:.75rem 1rem}.logo-container{flex:0 0 auto;min-width:0;width:auto}.logo{height:42px}.logo-text{display:none}.desktop-only{display:none!important}.mobile-only{display:flex!important}.header-right{flex:1 1;gap:.45rem;justify-content:flex-end}.burger-button,.user-avatar-button{height:38px;width:38px}.mobile-menu{flex-basis:100%;width:100%}.mobile-controls .user-dropdown{left:50%;min-width:280px;position:fixed;right:auto;top:50%;transform:translate(-50%,-50%);z-index:1100}}body[data-theme=dark] .header{background-color:#0f172a;border-bottom-color:#1f2937}body[data-theme=dark] .top-nav-button{background:#111827;border-color:#374151;color:#e5e7eb}body[data-theme=dark] .top-nav-active,body[data-theme=dark] .top-nav-button:hover{background:#1f2937}body[data-theme=dark] .top-nav-admin{border-color:#3b82f6}body[data-theme=dark] .top-nav-admin:hover{border-color:#60a5fa}body[data-theme=dark] .lang-toggle-button{background:#111827;border-color:#4b5563;color:#e5e7eb}body[data-theme=dark] .lang-toggle-button:hover{background:#1f2937;border-color:#6b7280}body[data-theme=dark] .theme-toggle-button{background:#111827;border-color:#4b5563;color:#fde68a}body[data-theme=dark] .theme-toggle-button:hover{background:#1f2937;border-color:#6b7280}body[data-theme=dark] .user-avatar-button{background:#111827;border-color:#374151}body[data-theme=dark] .user-avatar-button:hover{background:#1f2937}body[data-theme=dark] .user-avatar-icon{fill:#e5e7eb}body[data-theme=dark] .user-dropdown{background:#111827;border-color:#374151;box-shadow:0 10px 25px #00000059}body[data-theme=dark] .user-name{color:#e5e7eb}body[data-theme=dark] .user-email{color:#cbd5e1}body[data-theme=dark] .user-roles{color:#9ca3af}body[data-theme=dark] .burger-button{background:#111827;border-color:#374151}body[data-theme=dark] .burger-button:hover{background:#1f2937}body[data-theme=dark] .mobile-menu{border-top-color:#ffffff0d}.health-indicator{align-items:center;background:#1e293b;border:1px solid #4b5563;border-radius:999px;cursor:default;display:inline-flex;gap:.35rem;height:30px;padding:4px 10px}.health-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.health-ms{font-feature-settings:"tnum";font-size:.72rem;font-variant-numeric:tabular-nums;font-weight:600;line-height:1}.health-ms-flash{animation:health-flash .6s ease-out}@keyframes health-flash{0%{filter:brightness(1.8);opacity:.4}to{filter:brightness(1);opacity:1}}.health-up .health-dot{animation:health-pulse-green 3s ease-in-out infinite;background:#22c55e;box-shadow:0 0 6px #22c55e99}.health-up .health-ms{color:#86efac}.health-down .health-dot{animation:health-pulse-red 1.2s ease-in-out infinite;background:#ef4444;box-shadow:0 0 6px #ef444499}.health-unknown .health-dot{animation:health-pulse-grey 2s ease-in-out infinite;background:#94a3b8}@keyframes health-pulse-green{0%,to{box-shadow:0 0 4px #22c55e66}50%{box-shadow:0 0 10px #22c55ecc}}@keyframes health-pulse-red{0%,to{box-shadow:0 0 4px #ef444466;opacity:1}50%{box-shadow:0 0 10px #ef4444cc;opacity:.35}}@keyframes health-pulse-grey{0%,to{opacity:.5}50%{opacity:1}}.template-selector{margin:.4rem 0 0;max-width:100%;width:100%}.template-controls{grid-gap:.75rem;display:grid;gap:.75rem}.template-select{background:#f8fbfa;border:1px solid #bfe7df;border-radius:8px;color:#1f2937;font-family:Montserrat,sans-serif;font-size:1rem;height:48px;padding:0 12px;transition:border-color .2s,box-shadow .2s,background-color .2s;width:100%}.template-select:hover{background:#fff;border-color:#8cd4c8}.template-select:focus{border-color:#3db29d;box-shadow:0 0 0 3px #3db29d2e;outline:none}.template-select:disabled{cursor:not-allowed;opacity:.7}.template-header{align-items:center;display:flex;gap:10px;width:100%}.template-header .template-select{flex:1 1}.add-template-button{align-items:center;background:#3db29d;border:1px solid #3db29d;border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:1.3rem;height:48px;justify-content:center;transition:background-color .2s,border-color .2s;width:48px}.add-template-button:hover{background:#38a18e;border-color:#38a18e}.add-template-button:disabled{background:#d1d5db;border-color:#c7ced6;color:#f8fafc;cursor:not-allowed}.template-pending-list{background:#fbfdff;border:1px solid #dbe7f3;border-radius:10px;margin-top:.9rem;padding:.8rem}.template-pending-title{color:#3db29d;font-weight:700;margin-bottom:.65rem}.template-pending-list ul{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.template-pending-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:.75rem;justify-content:space-between;padding:.65rem .75rem}.template-pending-copy{display:flex;flex-direction:column;gap:.2rem;min-width:0}.template-pending-client{align-items:center;display:flex;gap:6px}.template-pending-copy span,.template-pending-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-pending-copy span{color:#475569;font-size:.92rem}.remove-template-button{background:#fff5f5;border:1px solid #f2b8b5;border-radius:999px;color:#c62828;cursor:pointer;flex-shrink:0;font-size:1.05rem;height:32px;line-height:1;width:32px}.remove-template-button:hover{background:#ffe9e9;border-color:#ef9a9a}@media (max-width:760px){.template-header{align-items:stretch}.add-template-button{height:48px;width:48px}.template-controls>.template-select{width:100%}.template-header .template-select{flex:1 1;min-width:0;width:auto}.template-pending-item{align-items:flex-start}.template-pending-copy span{white-space:normal}}body[data-theme=dark] .template-select{background:#0f172a;border-color:#1f766b;color:#e5e7eb}body[data-theme=dark] .template-select:hover{background:#111827;border-color:#2aa590}body[data-theme=dark] .template-pending-list{background:#0f172a;border-color:#1f2937}body[data-theme=dark] .template-pending-item{background:#111827;border-color:#374151}body[data-theme=dark] .template-pending-copy span,body[data-theme=dark] .template-pending-copy strong,body[data-theme=dark] .template-pending-title{color:#e5e7eb}body[data-theme=dark] .template-pending-copy span{color:#cbd5e1}body[data-theme=dark] .add-template-button{background:#1f766b;border-color:#1f766b}body[data-theme=dark] .add-template-button:hover{background:#2aa590;border-color:#2aa590}body[data-theme=dark] .remove-template-button{background:#2b1114;border-color:#7f1d1d;color:#fecaca}.pdf-generator{margin-top:1.5rem}.pdf-layout{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:minmax(360px,480px) minmax(0,1fr);margin:0;max-width:none;width:100%}.config-column,.jobs-column{background:#fff;border:1px solid #e9ecef;border-radius:12px;min-width:0;padding:1.1rem}.config-column{position:-webkit-sticky;position:sticky;top:1rem}.jobs-header{justify-content:space-between;margin-bottom:.75rem}.jobs-header,.jobs-header-actions{align-items:center;display:flex;gap:.75rem}.jobs-header-actions{flex:1 1;flex-wrap:wrap;justify-content:flex-end}.jobs-header-actions .button-clear,.jobs-header-actions .button-generate{align-items:center;display:inline-flex;height:48px;justify-content:center}.capacity-indicator{align-items:center;background:#eefaf7;border:1px solid #bfe7df;border-radius:8px;color:#1f3f3a;display:flex;flex:1 1 280px;gap:.6rem;justify-content:center;min-width:0;padding:6px 10px}.capacity-ring{border-radius:50%;display:grid;flex-shrink:0;height:36px;place-items:center;width:36px}.capacity-ring-inner{background:#fff;border-radius:50%;color:#2f6159;display:grid;font-size:.62rem;font-weight:700;height:26px;place-items:center;width:26px}.capacity-text{align-items:baseline;display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;line-height:1.2;text-align:center}.capacity-text strong{font-size:.95rem;font-weight:700;white-space:nowrap}.capacity-text span{color:#4a6963;font-size:.82rem;white-space:nowrap}.process-list{display:flex;flex-direction:column;gap:.75rem}.jobs-loading{align-items:center;color:#475569;display:flex;font-weight:500;gap:.65rem}.process-item{background:#fff;border:1px solid #dde6ef;border-radius:12px;padding:.9rem;text-align:left;transition:box-shadow .25s ease,border-color .25s ease,opacity .25s ease}.process-item:hover{border-color:#cfdbe8;box-shadow:0 8px 22px #0f172a0f}.job-card-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.35rem}.job-card-header h4{color:#1f2937;font-size:1rem;margin:0}.job-card-client{align-items:center;color:#64748b;display:flex;font-size:.9rem;gap:5px;margin:.2rem 0 0}.job-status-badge{align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;color:#334155;display:inline-flex;font-size:.78rem;font-weight:700;padding:.2rem .55rem}.job-status-area{align-items:flex-end;display:flex;flex-direction:column;gap:.35rem}.status-running{background:#e0f2fe;border-color:#7dd3fc;color:#0369a1}.status-queued{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.status-success{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32}.status-warning{background:#fff7ed;border-color:#fdba74;color:#c2410c}.status-error{background:#ffebee;border-color:#ef9a9a;color:#c62828}.job-meta-grid{grid-gap:.2rem .8rem;display:grid;gap:.2rem .8rem;grid-template-columns:1fr 1fr;margin-bottom:.45rem}.job-meta-grid p{color:#334155;font-size:.85rem;margin:0}.job-message{color:#1f2937;font-size:.92rem;margin:0 0 .55rem}.job-eta{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;color:#065f46;display:inline-flex;font-size:.78rem;font-weight:700;margin:0;padding:.2rem .55rem}.process-item-deleting{animation:deleting-pulse .7s ease-in-out 2;border-color:#ef9a9a;box-shadow:0 0 0 2px #f4433626}.delete-feedback{color:#c62828;font-size:.9rem;font-weight:700;margin:0 0 .45rem}.job-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.warning-details{margin:.4rem 0 .65rem}.warning-details summary{color:#c77700;cursor:pointer;font-weight:600}.warning-details ul{margin:.45rem 0 0;padding-left:1.25rem}.date-selector{grid-gap:.9rem;align-items:center;display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:.9rem}input[type=date]{background-color:#f8fbfa;border:1px solid #bfe7df;border-radius:8px;box-shadow:inset 0 0 0 1px #3db29d0f;box-sizing:border-box;color:#333;cursor:pointer;font-family:Montserrat,sans-serif;font-size:1rem;height:48px;max-width:none;outline:none;padding:0 14px;transition:border-color .2s,box-shadow .2s,background-color .2s;width:100%}input[type=date]:hover{background-color:#fff;border-color:#8cd4c8}input[type=date]:focus{background-color:#fff;border-color:#3db29d;box-shadow:0 0 0 3px #3db29d2e}input[type=date]::placeholder{color:#888;font-style:italic}input[type=date]:disabled{background-color:#e0e0e0;cursor:not-allowed}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.button-generate{background-color:#3db29d;border:1px solid #0000;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:10px 16px;transition:background-color .25s}.button-generate:hover{background-color:#38a18e}.button-generate:disabled{background:#d1d5db;border-color:#c7ced6;color:#f8fafc;cursor:not-allowed;opacity:.9}.button-clear{background:#fff5f5;border:1px solid #f2b8b5;border-radius:4px;color:#c62828;cursor:pointer;font-weight:600;padding:8px 12px;transition:background-color .2s,border-color .2s}.button-clear:hover{background:#ffe9e9;border-color:#ef9a9a}.button-clear:disabled{cursor:not-allowed;opacity:.55}.button-delete{background:#fff5f5;border:1px solid #f2b8b5;border-radius:4px;color:#c62828;cursor:pointer;font-weight:600;padding:8px 12px;transition:background-color .2s,border-color .2s}.button-delete:hover{background:#ffe9e9;border-color:#ef9a9a}.button-eye{align-items:center;background-color:#3db29d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:42px;justify-content:center;padding:0;transition:background-color .25s;width:42px}.button-eye:hover{background-color:#38a18e}.button-eye:disabled{background-color:#ccc;cursor:not-allowed}.eye-icon{display:block;font-size:22px;line-height:1;transform:translateY(-1px)}.eye-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff59;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes deleting-pulse{0%{box-shadow:0 0 0 0 #f443364d}50%{box-shadow:0 0 0 4px #f4433633}to{box-shadow:0 0 0 2px #f4433626}}.config-column .button-generate{display:block;margin:.9rem auto 0;min-width:140px;width:100%}.selected-templates{font-family:Montserrat,sans-serif;margin:1rem 0;text-align:left;width:100%}.selected-templates h3{color:#3db29d;font-size:1em}.selected-templates ul{list-style:none;padding:0}.selected-templates li{color:#333}.selected-templates li:last-child{border-bottom:none}@media (max-width:980px){.pdf-layout{grid-template-columns:1fr}.config-column{position:static}.jobs-header-actions{justify-content:stretch}.capacity-indicator{margin:0}}@media (max-width:760px){.config-column,.jobs-column{padding:.9rem}.date-selector{grid-template-columns:1fr}.jobs-header-actions .button-clear,.jobs-header-actions .button-generate{width:100%}.job-card-header,.job-status-area{align-items:flex-start}.job-card-header{flex-direction:column}.job-meta-grid{grid-template-columns:1fr}.capacity-text{justify-content:flex-start;text-align:left}}body[data-theme=dark] .config-column,body[data-theme=dark] .jobs-column{background:#111827;border-color:#374151}body[data-theme=dark] .job-card-header h4,body[data-theme=dark] .job-message,body[data-theme=dark] .job-meta-grid p{color:#e5e7eb}body[data-theme=dark] .job-card-client{color:#9ca3af}body[data-theme=dark] .process-item{background:#0f172a;border-color:#374151}body[data-theme=dark] .process-item:hover{border-color:#4b5563;box-shadow:0 8px 22px #00000059}body[data-theme=dark] .capacity-indicator{background:#0f2e2a;border-color:#1f766b;color:#d1fae5}body[data-theme=dark] .capacity-ring-inner{background:#052e2b;color:#d1fae5}body[data-theme=dark] .capacity-text span{color:#a7f3d0}body[data-theme=dark] .button-clear{background:#3f1d23;border-color:#7f1d1d;color:#fecaca}body[data-theme=dark] .button-clear:hover{background:#4f232a;border-color:#991b1b}body[data-theme=dark] .button-generate:disabled{background:#374151;border-color:#4b5563;color:#9ca3af;opacity:1}body[data-theme=dark] .button-delete{background:#3f1d23;border-color:#7f1d1d;color:#fecaca}body[data-theme=dark] .button-delete:hover{background:#4f232a}body[data-theme=dark] .progress-bar{background-color:#1f2937!important}body[data-theme=dark] .selected-templates h3{color:#5eead4}body[data-theme=dark] .selected-templates li{color:#e5e7eb}body[data-theme=dark] .selected-templates li strong{color:#f3f4f6}body[data-theme=dark] input[type=date]{background:#0f172a;border-color:#1f766b;box-shadow:inset 0 0 0 1px #3db29d2e;color:#e5e7eb}body[data-theme=dark] input[type=date]:hover{background:#111827;border-color:#2aa590}body[data-theme=dark] input[type=date]:focus{background:#111827;border-color:#34d399;box-shadow:0 0 0 3px #34d3992e}.storage-page{margin-top:1.5rem}.storage-header{gap:.8rem;justify-content:space-between;margin-bottom:1rem}.storage-header,.storage-header-left{align-items:center;display:flex;flex-wrap:wrap}.storage-header-left{flex:1 1;gap:.75rem}.storage-description{color:#64748b;font-size:.9rem;line-height:1.4;margin:0;max-width:520px}.storage-count{align-items:baseline;background:#eefaf7;border:1px solid #bfe7df;border-radius:10px;color:#1f3f3a;display:inline-flex;gap:.4rem;padding:.7rem .95rem}.storage-count strong{font-size:1.1rem}.storage-count span{font-size:.92rem}.storage-error{color:#c62828;margin:0 0 1rem}.storage-filters{background:#f9fafb;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem;padding:.6rem .75rem}.storage-filters-single .storage-search{flex:1 1}.storage-filters select,.storage-search{background:#fff;border:1px solid #d7dee7;border-radius:6px;box-sizing:border-box;color:#0f172a;font-size:.92rem;height:38px;padding:8px 10px}.storage-search{flex:2 1;min-width:200px}.storage-filters select{flex:1 1;min-width:140px}.storage-table-wrap{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:auto}.storage-table{border-collapse:collapse;font-size:.92rem;width:100%}.storage-table td,.storage-table th{border-bottom:1px solid #f0f2f5;padding:.6rem .7rem;text-align:left;white-space:nowrap}.storage-table th{background:#f9fafb;font-weight:600;-webkit-user-select:none;user-select:none}.storage-table tbody tr:hover{background:#f8fafc}.storage-cell-client{color:#3db29d;font-weight:700;text-transform:capitalize}.storage-client-cell{align-items:center;display:flex;gap:6px}.storage-cell-template{color:#64748b;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.82rem}.storage-cell-period{color:#475569;font-size:.85rem}.storage-cell-user{color:#64748b;font-size:.85rem;max-width:220px;overflow:hidden;text-overflow:ellipsis}.storage-status-pill{border:1px solid #cbd5e1;border-radius:999px;display:inline-block;font-size:.78rem;font-weight:600;padding:4px 8px;white-space:nowrap}.storage-status-pill-success{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32}.storage-status-pill-warning{background:#fff7ed;border-color:#fdba74;color:#c2410c}.storage-view-button{background:#eaf8ee;border:1px solid #9ac8a3;border-radius:6px;color:#1f7a36;cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 10px}.storage-view-button:hover{background:#dff3e5}.storage-view-button:disabled{cursor:not-allowed;opacity:.6}.storage-empty-cell,.storage-loading-cell{color:#94a3b8;padding:2rem 1rem;text-align:center}@media (max-width:860px){.storage-header{align-items:stretch;flex-direction:column}.storage-header-left{justify-content:center}.storage-filters{flex-direction:column}}body[data-theme=dark] .storage-page{color:#e5e7eb}body[data-theme=dark] .storage-description{color:#94a3b8}body[data-theme=dark] .storage-table-wrap{background:#111827;border-color:#374151}body[data-theme=dark] .storage-table th{background:#0f172a;color:#d1d5db}body[data-theme=dark] .storage-table td{border-color:#1e293b;color:#e5e7eb}body[data-theme=dark] .storage-table tbody tr:hover{background:#1e293b}body[data-theme=dark] .storage-cell-client{color:#5eead4}body[data-theme=dark] .storage-cell-template{color:#94a3b8}body[data-theme=dark] .storage-cell-period,body[data-theme=dark] .storage-cell-user{color:#9ca3af}body[data-theme=dark] .storage-filters{background:#0f172a;border-color:#374151}body[data-theme=dark] .storage-count{background:#0f2e2a;border-color:#1f766b;color:#d1fae5}body[data-theme=dark] .storage-filters select,body[data-theme=dark] .storage-search{background:#111827;border-color:#4b5563;color:#e5e7eb}body[data-theme=dark] .storage-view-button{background:#052e2b;border-color:#065f46;color:#6ee7b7}body[data-theme=dark] .storage-view-button:hover{background:#083a35}body[data-theme=dark] .storage-status-pill{border-color:#4b5563}body[data-theme=dark] .storage-status-pill-success{background:#052e2b;border-color:#065f46;color:#6ee7b7}body[data-theme=dark] .storage-status-pill-warning{background:#3a2a0f;border-color:#92400e;color:#fcd34d}body[data-theme=dark] .storage-empty-cell,body[data-theme=dark] .storage-loading-cell{color:#64748b}.tpl-page{margin-bottom:2rem;margin-top:1.5rem}.tpl-header{align-items:center;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:space-between;margin-bottom:1rem}.tpl-title{font-size:1.15rem;font-weight:700;margin:0;white-space:nowrap}.tpl-header-actions{align-items:center;display:flex;flex:1 1;gap:.5rem;justify-content:flex-end}.tpl-count{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#64748b;font-size:.85rem;font-weight:500;padding:5px 12px;white-space:nowrap}.tpl-header-actions .button-generate{align-items:center;display:inline-flex;height:48px;justify-content:center}.tpl-add-btn{white-space:nowrap}.tpl-error{color:#c62828;margin-bottom:.75rem}.tpl-table-wrap{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:auto}.tpl-table{border-collapse:collapse;font-size:.92rem;width:100%}.tpl-table td,.tpl-table th{border-bottom:1px solid #f0f2f5;padding:.6rem .7rem;text-align:left;white-space:nowrap}.tpl-table th{background:#f9fafb;font-weight:600;-webkit-user-select:none;user-select:none}.tpl-empty{color:#94a3b8;padding:2rem 1rem;text-align:center}.tpl-client-name{font-weight:600;text-transform:capitalize}.tpl-client-cell{align-items:center;display:flex;gap:.5rem}.tpl-client-thumb{border-radius:3px;flex-shrink:0;height:24px;object-fit:contain;width:24px}.tpl-url-cell{color:#64748b;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.82rem;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tpl-action-group{display:flex;gap:.4rem}.tpl-edit-btn{background:#eff6ff;border:1px solid #93c5fd;border-radius:6px;color:#1d4ed8;cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 10px}.tpl-edit-btn:hover{background:#dbeafe}.tpl-delete-btn{background:#fff5f5;border:1px solid #f3b5b5;border-radius:6px;color:#b42318;cursor:pointer;font-size:.82rem;font-weight:600;padding:5px 10px}.tpl-delete-btn:hover{background:#ffe6e6}.tpl-delete-btn:disabled{cursor:not-allowed;opacity:.55}.tpl-form-overlay{background:#0006;display:grid;inset:0;place-items:center;position:fixed;z-index:100}.tpl-form{background:#fff;border-radius:12px;box-shadow:0 8px 30px #0000002e;display:flex;flex-direction:column;gap:.5rem;max-width:720px;padding:1.5rem 2rem;width:100%}.tpl-form h3{margin:0 0 .5rem}.tpl-form label{color:#334155;font-size:.88rem;font-weight:600;margin-top:.25rem}.tpl-form input[type=password],.tpl-form input[type=text],.tpl-form input[type=url],.tpl-form select,.tpl-form textarea{background:#fff;border:1px solid #d7dee7;border-radius:6px;font-family:inherit;font-size:.92rem;padding:8px 10px}.tpl-form textarea{resize:vertical}.tpl-form-error{color:#c62828;font-size:.88rem;margin:0}.tpl-form-columns{display:flex;gap:1.5rem}.tpl-form-left{flex:1 1}.tpl-form-left,.tpl-form-right{display:flex;flex-direction:column;gap:.5rem}.tpl-form-right{flex-shrink:0;width:200px}.tpl-logo-dropzone{align-items:center;background:#fafbfc;border:2px dashed #d1d5db;border-radius:10px;cursor:pointer;display:flex;flex:1 1;justify-content:center;min-height:160px;padding:.75rem;transition:border-color .2s,background .2s}.tpl-logo-dropzone:hover{background:#f0fdf9;border-color:#3db29d}.tpl-logo-dragover{background:#ecfdf5;border-color:#3db29d}.tpl-logo-img{border-radius:4px;max-height:120px;max-width:100%;object-fit:contain}.tpl-logo-placeholder{align-items:center;color:#94a3b8;display:flex;flex-direction:column;font-size:.82rem;gap:.4rem;text-align:center}.tpl-logo-icon{font-size:2rem;opacity:.5}.tpl-logo-loading,.tpl-logo-none{color:#94a3b8;font-size:.82rem}.tpl-logo-none{font-style:italic}.tpl-browse-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#475569;cursor:pointer;font-size:.82rem;font-weight:600;padding:6px 12px;text-align:center}.tpl-browse-btn:hover{background:#f1f5f9;border-color:#3db29d}.tpl-api-key-field{display:flex;gap:0}.tpl-api-key-field input{border-bottom-right-radius:0!important;border-top-right-radius:0!important;flex:1 1}.tpl-toggle-key{align-items:center;background:#f9fafb;border:1px solid #d7dee7;border-left:none;border-radius:0 6px 6px 0;cursor:pointer;display:flex;font-size:1rem;padding:0 10px}.tpl-form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.75rem}.tpl-cancel-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:6px;color:#475569;cursor:pointer;font-weight:600;padding:8px 16px}.tpl-cancel-btn:hover{background:#f1f5f9}body[data-theme=dark] .tpl-page{color:#e5e7eb}body[data-theme=dark] .tpl-count{background:#1e293b;border-color:#374151;color:#94a3b8}body[data-theme=dark] .tpl-table-wrap{background:#111827;border-color:#374151}body[data-theme=dark] .tpl-table th{background:#0f172a;color:#e5e7eb}body[data-theme=dark] .tpl-table td{border-bottom-color:#1f2937;color:#e5e7eb}body[data-theme=dark] .tpl-url-cell{color:#94a3b8}body[data-theme=dark] .tpl-edit-btn{background:#172554;border-color:#1e40af;color:#93c5fd}body[data-theme=dark] .tpl-edit-btn:hover{background:#1e3a8a}body[data-theme=dark] .tpl-delete-btn{background:#3f1d23;border-color:#7f1d1d;color:#fecaca}body[data-theme=dark] .tpl-delete-btn:hover{background:#4f232a}body[data-theme=dark] .tpl-form{background:#1e293b;color:#e5e7eb}body[data-theme=dark] .tpl-form label{color:#cbd5e1}body[data-theme=dark] .tpl-form input[type=password],body[data-theme=dark] .tpl-form input[type=text],body[data-theme=dark] .tpl-form input[type=url],body[data-theme=dark] .tpl-form select,body[data-theme=dark] .tpl-form textarea{background:#111827;border-color:#4b5563;color:#e5e7eb}body[data-theme=dark] .tpl-cancel-btn{background:#374151;border-color:#4b5563;color:#d1d5db}body[data-theme=dark] .tpl-cancel-btn:hover{background:#4b5563}body[data-theme=dark] .tpl-logo-dropzone{background:#0f172a;border-color:#4b5563}body[data-theme=dark] .tpl-logo-dragover,body[data-theme=dark] .tpl-logo-dropzone:hover{background:#1a2e2a;border-color:#3db29d}body[data-theme=dark] .tpl-browse-btn{background:#374151;border-color:#4b5563;color:#d1d5db}body[data-theme=dark] .tpl-browse-btn:hover{background:#4b5563;border-color:#3db29d}body[data-theme=dark] .tpl-toggle-key{background:#374151;border-color:#4b5563}@media (max-width:1000px){.tpl-header{align-items:stretch;flex-direction:column}.tpl-header-actions{justify-content:stretch}.tpl-form-columns{flex-direction:column}.tpl-form-right{width:100%}.tpl-logo-dropzone{min-height:120px}}.eb-container{align-items:center;background:#f8fafc;display:flex;justify-content:center;min-height:100vh;padding:2rem}.eb-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0f172a0f;max-width:480px;padding:2.5rem 2rem;text-align:center}.eb-icon{align-items:center;background:#fee2e2;border-radius:50%;color:#dc2626;display:flex;font-size:1.6rem;font-weight:700;height:56px;justify-content:center;margin:0 auto 1.2rem;width:56px}.eb-title{color:#1e293b;font-size:1.25rem;margin:0 0 .75rem}.eb-text{color:#64748b;font-size:.92rem;line-height:1.5;margin:0 0 1.25rem}.eb-detail{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#94a3b8;font-size:.78rem;margin:0 0 1.25rem;overflow-x:auto;padding:.6rem .8rem;text-align:left;white-space:pre-wrap;word-break:break-word}.eb-actions{display:flex;gap:.75rem;justify-content:center}.eb-btn{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:background .15s}.eb-btn-primary{background:#3db29d;color:#fff}.eb-btn-primary:hover{background:#38a18e}.eb-btn-secondary{background:#f1f5f9;border-color:#e2e8f0;color:#475569}.eb-btn-secondary:hover{background:#e2e8f0}body[data-theme=dark] .eb-container{background:#0f172a}body[data-theme=dark] .eb-card{background:#1e293b;border-color:#334155;box-shadow:0 8px 24px #0000004d}body[data-theme=dark] .eb-icon{background:#451a1a;color:#f87171}body[data-theme=dark] .eb-title{color:#f1f5f9}body[data-theme=dark] .eb-text{color:#94a3b8}body[data-theme=dark] .eb-detail{background:#0f172a;border-color:#334155;color:#64748b}body[data-theme=dark] .eb-btn-secondary{background:#334155;border-color:#475569;color:#cbd5e1}body[data-theme=dark] .eb-btn-secondary:hover{background:#475569}
/*# sourceMappingURL=main.dea775b9.css.map*/