.lichess-stream-container{max-width:1400px;margin:0 auto;padding:1rem}.lichess-stream-container h1{color:#2c3e50;margin:0;font-size:1.75rem}.header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.header-controls{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.polling-control{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#555}.polling-control label{font-weight:500}.polling-control input{width:60px;padding:.4rem .5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;text-align:center}.polling-control input:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.polling-control input:disabled{background:#f5f5f5;cursor:not-allowed}.tab-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e0e0e0;padding-bottom:0}.tab-btn{padding:.75rem 1.5rem;background:transparent;border:none;font-size:1rem;font-weight:500;color:#666;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s;display:flex;align-items:center;gap:.5rem}.tab-btn:hover{color:#2c3e50;background:#f8f9fa}.tab-btn.active{color:#2196f3;border-bottom-color:#2196f3;font-weight:600}.tab-btn .badge{background:#2196f3;color:#fff;font-size:.75rem;padding:.15rem .5rem;border-radius:10px;font-weight:600}.tab-content{animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:1.25rem;margin-bottom:1rem;border:1px solid #e8e8e8}.card h3{margin:0 0 1rem;color:#2c3e50;font-size:1.1rem;display:flex;align-items:center;gap:.5rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.card-header h3{margin:0}.card-header .tournament-name{color:#666;font-size:.9rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-grid.four-col{grid-template-columns:repeat(4,1fr)}@media (max-width: 900px){.form-grid.four-col{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.form-grid.four-col{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width{margin-bottom:.5rem}.form-group.full-width input{font-size:1.1rem;padding:.75rem}.form-group label{font-weight:500;color:#444;font-size:.9rem}.form-group input,.form-group select{padding:.6rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.form-group small{color:#888;font-size:.8rem}.required{color:#dc3545}.form-notice{margin-top:1rem;padding:.75rem 1rem;background:#fff8e1;border:1px solid #ffe082;border-radius:6px;font-size:.9rem;color:#5d4037}.rounds-card h3{margin-bottom:.75rem}.rounds-table{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.rounds-header{display:grid;grid-template-columns:120px 100px 1fr 180px;gap:1rem;padding:.75rem 1rem;background:#f5f5f5;font-weight:600;font-size:.85rem;color:#666;border-bottom:1px solid #e0e0e0}.round-row{display:grid;grid-template-columns:120px 100px 1fr 180px;gap:1rem;padding:.75rem 1rem;align-items:center;border-bottom:1px solid #f0f0f0;transition:background .2s}.round-row:last-child{border-bottom:none}.round-row:hover{background:#fafafa}.round-row.ongoing{background:#e8f5e9}.round-row.finished{background:#f5f5f5;color:#888}.col-round strong{display:block;font-size:1rem}.col-round small{color:#888;font-size:.8rem}.col-actions{display:flex;gap:.5rem;justify-content:flex-end}.status-badge{display:inline-block;padding:.25rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.finished{background:#e8f5e9;color:#2e7d32}.status-badge.ongoing{background:#fff3e0;color:#ef6c00;animation:pulse 2s infinite}.status-badge.upcoming{background:#e3f2fd;color:#1565c0}.status-badge.streaming{background:#e8f5e9;color:#2e7d32;animation:pulse 2s infinite}.btn-primary{background:#2196f3;color:#fff;border:none;padding:.6rem 1.25rem;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s;display:inline-flex;align-items:center;gap:.4rem}.btn-primary:hover:not(:disabled){background:#1976d2}.btn-primary:disabled{background:#bbb;cursor:not-allowed}.btn-start{padding:.4rem .8rem;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-start.test{background:#ffc107;color:#333}.btn-start.test:hover:not(:disabled){background:#ffca2c}.btn-start.production{background:#dc3545;color:#fff}.btn-start.production:hover:not(:disabled){background:#c82333}.btn-start:disabled{background:#ddd;color:#999;cursor:not-allowed}.btn-link{color:#2196f3;text-decoration:none;font-size:.85rem;padding:.4rem .5rem}.btn-link:hover{text-decoration:underline}.btn-stop{background:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer}.btn-stop:hover{background:#c82333}.btn-report{display:inline-block;background:#17a2b8;color:#fff;padding:.4rem .8rem;border-radius:6px;text-decoration:none;font-size:.85rem;font-weight:500;margin-top:.5rem}.btn-report:hover{background:#138496}.btn-clear{background:#f8f9fa;border:1px solid #ddd;padding:.3rem .6rem;border-radius:4px;font-size:.8rem;cursor:pointer}.btn-clear:hover{background:#e9ecef}.streams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1rem}.stream-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:1rem;border:1px solid #e8e8e8}.stream-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.stream-header h4{margin:0;font-size:1rem}.stream-games{background:#f8f9fa;border-radius:6px;padding:.5rem;margin:.75rem 0;max-height:200px;overflow-y:auto}.stream-games .game-row{display:flex;justify-content:space-between;padding:.35rem .5rem;font-size:.85rem;border-bottom:1px solid #eee}.stream-games .game-row:last-child{border-bottom:none}.more-games{text-align:center;color:#888;font-size:.8rem;padding:.5rem}.stream-actions{display:flex;justify-content:flex-end;margin-top:.75rem}.history-list{display:flex;flex-direction:column;gap:.75rem}.history-item{background:#fff;border-radius:10px;padding:1rem;border:1px solid #e8e8e8}.history-item.complete{border-left:4px solid #28a745}.history-item.stopped{border-left:4px solid #6c757d}.history-item.error{border-left:4px solid #dc3545}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.history-header h4{margin:0}.history-stats{display:flex;gap:1rem;font-size:.9rem;color:#666}.history-stats .success{color:#28a745}.history-stats .warning{color:#ffc107}.history-stats .error{color:#dc3545}.history-meta{display:flex;gap:1.5rem;font-size:.8rem;color:#888;margin-top:.5rem}.empty-state{text-align:center;padding:3rem 1rem;color:#666}.empty-state p{margin:.5rem 0}.empty-state .hint{font-size:.9rem;color:#888}.empty-state .hint a{color:#2196f3}.mode-toggle-compact{padding:.5rem 1rem;border-radius:20px;border:2px solid;transition:all .3s}} .mode-toggle-compact.test-mode{background:#fff3cd;border-color:#ffc107}.mode-toggle-compact.production-mode{background:#f8d7da;border-color:#dc3545}.mode-switch{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.mode-switch input[type=checkbox]{width:50px;height:26px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#dc3545;border-radius:13px;position:relative;transition:background .3s}.mode-switch input[type=checkbox]:checked{background:#ffc107}.mode-switch input[type=checkbox]:before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;top:3px;left:3px;transition:transform .3s;box-shadow:0 2px 4px #0003}.mode-switch input[type=checkbox]:checked:before{transform:translate(24px)}.mode-label-text{font-weight:600;font-size:.95rem}.connection-status-inline{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;border-left:4px solid;animation:slideIn .3s ease-out}.connection-status-inline.test{background:#fff3cd;border-color:#ffc107}.connection-status-inline.production{background:#f8d7da;border-color:#dc3545}.status-icon{font-size:1.2rem}.status-text{font-size:.9rem;line-height:1.4}.info-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:20px;margin-bottom:20px}.info-card h3{margin-top:0;color:#495057;border-bottom:2px solid #dee2e6;padding-bottom:10px}.info-card h4{color:#2c3e50;margin-top:20px;margin-bottom:8px;font-size:1rem}.info-card .intro-text{font-size:1.05rem;color:#333;line-height:1.6;margin-bottom:15px;padding:10px;background:#e8f4fd;border-radius:6px;border-left:4px solid #2196f3}.info-card p{margin-bottom:10px;line-height:1.5}.info-card .example-url{background:#fff;padding:12px;border-radius:6px;border:1px solid #ddd;margin:10px 0}.info-card .example-url small{color:#666}.info-card ul{margin:10px 0 15px;padding-left:20px}.info-card li{margin-bottom:6px;line-height:1.4}.info-card ol{margin-bottom:10px;padding-left:20px}.info-card code{background:#fff3cd;padding:2px 6px;border-radius:4px;font-family:monospace;color:#856404}.info-card .warning-box{background:#fff8e1;border:1px solid #ffc107;border-left:4px solid #ff9800;padding:12px 15px;border-radius:6px;margin-top:15px;color:#6d4c00}.info-card .preview-vs-test{background:#e8f5e9;border-left:4px solid #4caf50;padding:10px 12px;border-radius:4px;margin:10px 0;font-size:.95rem}.info-card a{color:#1976d2;text-decoration:none}.info-card a:hover{text-decoration:underline}.expand-instructions-btn{background:#2196f3;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;margin:10px 0 15px;transition:background .2s}.expand-instructions-btn:hover{background:#1976d2}.detailed-instructions{margin-top:15px;padding-top:15px;border-top:2px solid #dee2e6;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.form-card h3{margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #eee;font-size:1.1rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin-bottom:15px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-weight:600;color:#333}.form-group .required{color:#e74c3c}.form-group input,.form-group select{padding:10px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.form-group small{color:#7f8c8d;font-size:.8rem}.input-with-button{display:flex;gap:8px}.input-with-button input{flex:1}.btn-preview{padding:10px 15px;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;white-space:nowrap}.btn-preview:hover:not(:disabled){background:#5a6268}.btn-preview:disabled{opacity:.6;cursor:not-allowed}.form-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee;display:flex;gap:.75rem}.streaming-actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn-stream{padding:12px 30px;font-size:1rem;font-weight:700;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.btn-stream.test{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.btn-stream.test:hover{background:linear-gradient(135deg,#1976d2,#1565c0)}.btn-stream.production{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff}.btn-stream.production:hover{background:linear-gradient(135deg,#388e3c,#2e7d32)}.btn-stop{padding:12px 30px;font-size:1rem;font-weight:700;background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff;border:none;border-radius:6px;cursor:pointer}.btn-stop:hover{background:linear-gradient(135deg,#d32f2f,#c62828)}.preview-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:20px;margin-bottom:20px}.preview-card h3{margin-top:0}.preview-summary{display:flex;gap:20px;margin-bottom:15px;padding:10px;background:#f8f9fa;border-radius:4px}.preview-summary .complete{color:#28a745}.preview-summary .in-progress{color:#ffc107}.preview-games{max-height:300px;overflow-y:auto;border:1px solid #eee;border-radius:4px}.preview-game{display:grid;grid-template-columns:2fr 80px 120px 120px;gap:10px;padding:10px 15px;border-bottom:1px solid #eee;align-items:center}.preview-game:last-child{border-bottom:none}.preview-game.complete{background:#f8fff8}.preview-game.in-progress{background:#fffef8}.preview-game .players{font-weight:500}.preview-game .result{text-align:center;font-weight:700}.preview-game .details{color:#666;font-size:.85rem}.preview-game .status{text-align:right;font-size:.85rem}.preview-game .status.will-upload{color:#28a745}.preview-game .status.skip{color:#ffc107}.connection-card{border-radius:8px;padding:20px;margin-bottom:20px}.connection-card.test{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196f3}.connection-card.production{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:2px solid #4caf50}.connection-header{display:flex;justify-content:space-between;align-items:center}.connection-header h3{margin:0}.status-badge{padding:4px 12px;border-radius:20px;font-weight:700;font-size:.85rem}.connection-card.test .status-badge{background:#2196f3;color:#fff}.connection-card.production .status-badge{background:#f44336;color:#fff;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.connection-details{margin-top:10px}.connection-details p{margin:5px 0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:15px;text-align:center}.stat-card.success{background:#d4edda;border-color:#c3e6cb}.stat-card.warning{background:#fff3cd;border-color:#ffeeba}.stat-card.error{background:#f8d7da;border-color:#f5c6cb}.stat-card.info{background:#d1ecf1;border-color:#bee5eb}.stat-value{font-size:2rem;font-weight:700;color:#333}.stat-card.success .stat-value{color:#155724}.stat-card.warning .stat-value{color:#856404}.stat-card.error .stat-value{color:#721c24}.stat-card.info .stat-value{color:#0c5460}.stat-label{font-size:.85rem;color:#666;text-transform:uppercase}.icon-legend{display:flex;gap:20px;padding:12px 20px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:20px;flex-wrap:wrap;justify-content:center}.legend-item{display:flex;align-items:center;gap:8px}.legend-icon{font-size:1.2rem}.legend-text{font-size:.9rem;color:#495057}.games-card{background:#fff;border:1px solid #ddd;border-radius:8px;overflow:hidden}.games-card h3{margin:0;padding:1rem 1.25rem;background:#f8f9fa;border-bottom:1px solid #ddd;font-size:1rem}.games-list{max-height:500px;overflow-y:auto;padding:.5rem}max-height: 300px; overflow-y: auto; } .game-row{display:grid;grid-template-columns:2fr 80px 120px 140px;gap:10px;padding:10px;border-bottom:1px solid #eee;align-items:center}.game-row:last-child{border-bottom:none}.game-row.inserted{background:#f8fff8}.game-row.duplicate{background:#fffef8}.game-row.rejected{background:#fff8f8}.game-row.validated{background:#f0f8ff}.game-players{font-weight:500}.game-result{text-align:center;font-weight:700}.game-link{color:#3498db;text-decoration:none;font-size:.9rem}.game-link:hover{text-decoration:underline}.game-status{text-align:center;font-size:.9rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:4px}.game-status.inserted{color:#155724}.game-status.duplicate{color:#856404}.game-status.rejected{color:#721c24}.game-status.validated{color:#0c5460}.game-rejection-reason{grid-column:3 / 5;font-size:.85rem;color:#dc3545;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-card{background:#fff;border:1px solid #ddd;border-radius:8px;overflow:hidden}.log-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#f8f9fa;border-bottom:1px solid #ddd}.log-header h3{margin:0;font-size:1rem}.btn-clear{padding:.4rem .75rem;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;transition:background .2s}.btn-clear:hover:not(:disabled){background:#5a6268}.btn-clear:disabled{opacity:.6;cursor:not-allowed}.log-container{max-height:500px;overflow-y:auto;padding:.5rem .75rem;background:#1e1e1e;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;line-height:1.5}.log-entry{padding:.3rem .5rem;margin-bottom:.2rem;border-radius:2px}.log-entry.info{color:#87ceeb}.log-entry.success{color:#90ee90}.log-entry.warning{color:gold}.log-entry.error{color:#ff6b6b}.log-timestamp{color:#888;margin-right:.5rem;font-size:.75rem}.log-message{color:inherit}.report-link{color:#87ceeb;text-decoration:underline;word-break:break-all}.report-link:hover{color:#add8e6}.stats-bar{display:flex;gap:1rem;padding:1rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;margin-bottom:1rem;flex-wrap:wrap;justify-content:space-around;animation:slideIn .3s ease-out}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem 1rem;background:#ffffff26;border-radius:6px;min-width:100px}.stat-item.success{background:#4caf5033}.stat-item.warning{background:#ffc10733}.stat-item.error{background:#f4433633}.stat-item .stat-label{font-size:.75rem;color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.stat-item .stat-value{font-size:1.75rem;font-weight:700;color:#fff}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.tournament-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.tournament-card h3{margin:0 0 .5rem;color:#2c3e50}.tournament-card>p{margin:0 0 1rem;color:#666;font-size:.9rem}.tournament-form{margin-bottom:1rem}.tid-lookup{border-top:1px dashed #ddd;padding-top:1rem}.tid-form{margin:0}.tid-form .input-with-button input{max-width:260px}.tid-form small{font-size:.8rem;color:#777}.btn-secondary{padding:.6rem 1rem;background:#f5f5f5;color:#555;border:1px solid #ddd;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.btn-secondary:hover:not(:disabled){background:#e8e8e8;border-color:#ccc}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.tournament-results{border-top:1px solid #eee;padding-top:1.5rem}.tournament-header{margin-bottom:1.5rem}.tournament-header h4{margin:0 0 .5rem;color:#2c3e50;font-size:1.25rem}.tournament-description{color:#666;margin:0 0 .75rem;font-style:italic}.tournament-meta{margin:0;font-size:.9rem;color:#666}.tournament-meta strong{margin-right:.25rem}.rounds-list{display:grid;gap:.75rem}.round-item{display:grid;grid-template-columns:3rem 1fr auto auto;gap:1rem;padding:1rem;background:#f8f9fa;border-left:4px solid #ddd;border-radius:6px;align-items:center;transition:all .2s}.round-item:hover{background:#e9ecef;transform:translate(4px)}.round-item.finished{border-left-color:#28a745}.round-item.ongoing{border-left-color:#ffc107;background:#fffef5}.round-item.upcoming{border-left-color:#17a2b8}.round-number{font-size:1.25rem;font-weight:700;color:#666;text-align:center}.round-details{display:flex;flex-direction:column;gap:.25rem}.round-name{font-weight:600;color:#2c3e50;font-size:1rem}.round-meta{display:flex;gap:1rem;font-size:.85rem;color:#666}.round-time{display:inline-block}.round-id{font-family:monospace;font-size:.8rem;color:#999}.round-status{display:flex;gap:.5rem}.badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;white-space:nowrap}.badge.finished{background:#d4edda;color:#155724}.badge.ongoing{background:#fff3cd;color:#856404}.badge.upcoming{background:#d1ecf1;color:#0c5460}.round-actions{display:flex;gap:.5rem}.btn-view-round{padding:.5rem 1rem;background:#007bff;color:#fff;text-decoration:none;border-radius:4px;font-size:.85rem;transition:background .2s;white-space:nowrap}.btn-view-round:hover{background:#0056b3}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 992px){.content-grid{grid-template-columns:1fr}.stats-bar{gap:.5rem}.stat-item{min-width:80px;padding:.4rem .75rem}.stat-item .stat-value{font-size:1.5rem}}@media (max-width: 768px){.header-bar{flex-direction:column;align-items:flex-start}.form-row{grid-template-columns:1fr}.preview-game,.game-row{grid-template-columns:1fr;gap:5px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-bar{flex-direction:column;gap:.5rem}.stat-item{width:100%;flex-direction:row;justify-content:space-between}.form-actions,.streaming-actions{flex-direction:column}.btn-stream,.btn-check,.btn-stop{width:100%}}@media (max-width: 480px){.lichess-stream-container{padding:.5rem}.form-card,.preview-card,.games-card,.log-card{padding:.75rem}.log-container,.games-list{max-height:300px}}#header-top{position:relative;display:flex;justify-content:space-between;min-width:675px;align-items:center;background-repeat:repeat-x}#header-logo img{height:60px;max-width:431px}#header-link-buttons img{margin-right:-6px}.cgc-ns1{font-family:verdana,arial,helvetica;color:#000}.xsm{font-size:x-small}.xxsm{font-size:xx-small}.b1s000000{border:1px solid #000}.bc-FFFFEE{background-color:#ffe}.tc-000000{color:#000}.center{margin-left:auto;margin-right:auto}.tcenter{text-align:center}.w-100pct{width:100%}.cgc-ns1 a{color:#000;text-decoration:none}.cgc-ns1 a:hover{text-decoration:underline;color:#06c}.d-none{display:none!important}.d-block{display:block!important}@media (min-width: 576px){.d-sm-block{display:block!important}.d-sm-none{display:none!important}}:root{--primary-color: #2c3e50;--secondary-color: #3498db;--success-color: #27ae60;--warning-color: #f39c12;--danger-color: #e74c3c;--light-bg: #ecf0f1;--dark-text: #2c3e50;--border-color: #bdc3c7;--shadow: 0 2px 4px rgba(0,0,0,.1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--dark-text);line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}.navbar{background:var(--primary-color);color:#fff;padding:1rem 0;box-shadow:var(--shadow)}.navbar .container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center}.navbar .logo{font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none}.navbar .nav-links{display:flex;gap:1.5rem}.navbar .nav-links a{color:#fff;text-decoration:none;transition:opacity .2s}.navbar .nav-links a:hover{opacity:.8}.main-content{flex:1;padding:2rem 0}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.footer{background:var(--light-bg);padding:2rem 0;text-align:center;border-top:1px solid var(--border-color);margin-top:auto}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s;text-decoration:none;display:inline-block}.btn-primary{background:var(--secondary-color);color:#fff}.btn-primary:hover:not(:disabled){background:#2980b9}.btn-success{background:var(--success-color);color:#fff}.btn-danger{background:var(--danger-color);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:#fff;border-radius:8px;box-shadow:var(--shadow);padding:1.5rem;margin-bottom:1.5rem}.card-header{font-size:1.25rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--light-bg)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500}.form-label .required{color:var(--danger-color)}.form-input,.form-select{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.form-input:focus,.form-select:focus{outline:none;border-color:var(--secondary-color)}.alert{padding:1rem;border-radius:4px;margin-bottom:1rem}.alert-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-warning{background:#fff3cd;color:#856404;border:1px solid #ffeeba}.alert-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:var(--shadow);text-align:center}.stat-label{font-size:.875rem;color:#7f8c8d;margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:var(--primary-color)}.log-container{max-height:400px;overflow-y:auto;background:var(--light-bg);border-radius:4px;padding:1rem}.log-entry{padding:.75rem;margin-bottom:.5rem;background:#fff;border-left:3px solid #bdc3c7;border-radius:4px}.log-entry.success{border-left-color:var(--success-color)}.log-entry.error{border-left-color:var(--danger-color);background:#fff5f5}.log-entry.info{border-left-color:var(--secondary-color)}.log-timestamp{font-size:.75rem;color:#7f8c8d;margin-right:.5rem}
