:root,[data-theme=light]{--bg: #f5f5f5;--panel: #ffffff;--border: #e1e3e6;--text: #333333;--muted: #888888;--accent: #0088cc;--accent-d: #0055aa;--navbar-bg: #222222;--navbar-bg-h: #333333;--navbar-fg: #999999;--navbar-fg-h: #ffffff;--table-strip: #f9f9f9;--table-cell-bg: #ffffff;--radius: 4px;--input-bg: #ffffff;--input-bd: #cccccc;--input-fg: #333333;--addon-bg: #eeeeee;--addon-fg: #555555;--btn-bg: linear-gradient(to bottom, #ffffff, #e6e6e6);--btn-bg-h: #e6e6e6;--btn-bd: #cccccc;--btn-fg: #333333;--btn-text-shadow: 0 1px 1px rgba(255,255,255,.75);--form-actions-bg: #f5f5f5;--form-actions-bd: #e5e5e5;--label-bg: #f0f0f0;--label-bd: #cccccc;--label-fg: #333333;--badge-warn-bg: #f89406;--badge-inv-bg: #333333;--alert-ok-bg: #dff0d8;--alert-ok-bd: #d6e9c6;--alert-ok-fg: #468847;--alert-err-bg: #f2dede;--alert-err-bd: #eed3d7;--alert-err-fg: #b94a48;--centro-bg: #ffffff;--centro-bd: #999999;--tick-bd: #666666;--tick-fg: #666666;--tick-label-bg: #ffffff;--barra-bd: #999999;--barra-fg: #666666;--good-box-bg: #eef4ff;--good-box-bd: #bbd;--good-box-fg: #06c;--bad-box-bg: #ffeeee;--bad-box-bd: #dbb;--bad-box-fg: #c33;--window-band: rgba(255,196,0,.1);--window-band-bd:rgba(180,140,0,.4);--guide-line: #999999;--frozen-bg: #fdd;--frozen-bd: #dbb;--frozen-fg: #a33;--json-bg: #fafafa;--json-bd: #cccccc;--dup-slot-bd: #f89406;--dup-slot-bg: rgba(248, 148, 6, .1)}[data-theme=dark]{--bg: #0e1116;--panel: #171a21;--border: #262a33;--text: #e6e8eb;--muted: #8a93a3;--accent: #5e8efb;--accent-d: #3a6fd6;--navbar-bg: #000000;--navbar-bg-h: #1a1a1a;--navbar-fg: #aaaaaa;--navbar-fg-h: #ffffff;--table-strip: #1c2029;--table-cell-bg: #171a21;--input-bg: #0b0d12;--input-bd: #2a2f3a;--input-fg: #e6e8eb;--addon-bg: #20242d;--addon-fg: #b8c0cc;--btn-bg: linear-gradient(to bottom, #2a2f3a, #1a1d24);--btn-bg-h: #353a47;--btn-bd: #1a1d24;--btn-fg: #e6e8eb;--btn-text-shadow: none;--form-actions-bg: #0e1116;--form-actions-bd: #262a33;--label-bg: #20242d;--label-bd: #2f3340;--label-fg: #d8dce4;--badge-warn-bg: #d97706;--badge-inv-bg: #4a5060;--alert-ok-bg: #1c3a25;--alert-ok-bd: #2a5239;--alert-ok-fg: #6ec98a;--alert-err-bg: #3a1d1d;--alert-err-bd: #5a2828;--alert-err-fg: #ef8a8a;--centro-bg: #0b0d12;--centro-bd: #4a5060;--tick-bd: #555c6b;--tick-fg: #b8c0cc;--tick-label-bg: #0b0d12;--barra-bd: #4a5060;--barra-fg: #aab2c0;--good-box-bg: #15243d;--good-box-bd: #1f3a66;--good-box-fg: #6da4ff;--bad-box-bg: #3a1d1d;--bad-box-bd: #5a2828;--bad-box-fg: #ff7777;--window-band: rgba(255,196,0,.15);--window-band-bd:rgba(255,196,0,.4);--guide-line: #b8c0cc;--frozen-bg: #3a1d1d;--frozen-bd: #5a2828;--frozen-fg: #ff8a8a;--json-bg: #0b0d12;--json-bd: #2a2f3a;--dup-slot-bd: #d97706;--dup-slot-bg: rgba(217, 119, 6, .14)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:20px;transition:background-color .15s,color .15s}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-d);text-decoration:underline}h1,h2,h3{margin:0 0 16px;font-weight:600;line-height:1.2;color:var(--text)}h1{font-size:26px}h2{font-size:18px}.bold{font-weight:700}.muted{color:var(--muted)}.center{text-align:center}.right{text-align:right}.navbar{background:var(--navbar-bg);border-bottom:1px solid #000;min-height:40px;display:flex;align-items:center;gap:16px;padding:0 20px;color:var(--navbar-fg);flex-wrap:wrap}.navbar .brand{color:#fff;font-size:20px;font-weight:200;padding:0 10px 0 0}.navbar .brand small{color:#f80;font-size:13px;font-style:italic}.navbar .brand small.privado{color:#d33}.navbar nav{display:flex;gap:0;flex:1}.navbar nav a{color:var(--navbar-fg);padding:0 15px;height:40px;display:flex;align-items:center;text-decoration:none}.navbar nav a:hover{color:var(--navbar-fg-h);background:var(--navbar-bg-h)}.navbar nav a.active{color:var(--navbar-fg-h);background:#050505;box-shadow:inset 0 3px 8px #00000020}.navbar .navbar-tools{display:flex;align-items:center;gap:8px;font-size:13px}.navbar .navbar-tools .user-info{color:var(--navbar-fg);display:flex;align-items:center;gap:8px}.navbar .nav-btn,.navbar .navbar-tools button{background:#333;color:#ddd;border:1px solid #000;padding:4px 10px;border-radius:var(--radius);cursor:pointer;font-size:12px;line-height:16px}.navbar .nav-btn:hover,.navbar .navbar-tools button:hover{background:#444;color:#fff}.navbar .nav-btn.active{background:#06a;color:#fff;border-color:#036}.navbar .lang-group{display:inline-flex;border-radius:var(--radius);overflow:hidden;border:1px solid #000}.navbar .lang-group .nav-btn{border-radius:0;border:0;padding:4px 8px;font-weight:700;letter-spacing:.5px}.navbar .version-select{background:#333;color:#ddd;border:1px solid #000;border-radius:var(--radius);padding:4px 8px;font-size:12px;line-height:16px;max-width:11rem;cursor:pointer}.navbar .version-select:hover:not(:disabled){background:#444;color:#fff}.navbar .version-select:disabled{opacity:.6;cursor:default}.container-fluid{padding:30px 20px;margin-top:0}.row-fluid{display:flex;gap:20px;margin-bottom:20px;align-items:stretch;flex-wrap:wrap}.row-fluid .span4{flex:0 0 30%;min-width:280px}.row-fluid .span8{flex:1;min-width:600px}.row-fluid .span12{flex:1 1 100%;min-width:0}.form-horizontal .control-group{margin-bottom:20px;display:flex;align-items:flex-start}.form-horizontal .control-label{width:160px;flex-shrink:0;text-align:right;padding-right:20px;padding-top:6px;color:var(--text)}.form-horizontal .controls{flex:1;display:flex;align-items:center;gap:6px;flex-wrap:wrap}input[type=text],input[type=email],input[type=password],input[type=date],input[type=time],input[type=number],input[type=datetime-local],select,textarea{background:var(--input-bg);color:var(--input-fg);border:1px solid var(--input-bd);border-radius:var(--radius);padding:5px 8px;font-size:14px;line-height:20px;box-shadow:inset 0 1px 1px #00000013}input:focus,select:focus,textarea:focus{outline:0;border-color:#52a8eccc;box-shadow:inset 0 1px 1px #00000013,0 0 8px #52a8ec99}.input-mini{width:60px}.input-small{width:90px}.input-append{display:inline-flex;align-items:stretch}.input-append>input{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.input-append .add-on{background:var(--addon-bg);border:1px solid var(--input-bd);padding:5px 8px;font-size:14px;color:var(--addon-fg);border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}button,.btn{background:var(--btn-bg);color:var(--btn-fg);border:1px solid var(--btn-bd);border-radius:var(--radius);padding:5px 12px;font-size:14px;line-height:20px;cursor:pointer;text-shadow:var(--btn-text-shadow)}button:hover,.btn:hover{background:var(--btn-bg-h);background-image:none}button:disabled,.btn:disabled{opacity:.65;cursor:not-allowed}.btn-primary{background:#006dcc;background-image:linear-gradient(to bottom,#08c,#04c);color:#fff;border-color:#04c #04c #003580;text-shadow:0 -1px 0 rgba(0,0,0,.25)}.btn-primary:hover{background-color:#04c;background-image:none;color:#fff}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.btn-group .btn:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius);border-left:0}.btn-group .btn.active{background:#b3b3b3;background-image:linear-gradient(to bottom,#ccc,#b3b3b3);box-shadow:inset 0 2px 4px #00000026;color:#333}.form-actions{margin-top:20px;background:var(--form-actions-bg);border-top:1px solid var(--form-actions-bd);text-align:left;padding:19px 20px 20px 180px}.error,.help-inline{color:var(--alert-err-fg);font-size:13px;margin-left:6px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px;box-shadow:0 1px 2px #0000000a}.alert{padding:10px 14px;margin-bottom:18px;border:1px solid transparent;border-radius:var(--radius)}.alert-success{background:var(--alert-ok-bg);border-color:var(--alert-ok-bd);color:var(--alert-ok-fg)}.alert-error,.alert-danger{background:var(--alert-err-bg);border-color:var(--alert-err-bd);color:var(--alert-err-fg)}dl.dl-horizontal{display:grid;grid-template-columns:130px 1fr;gap:4px 16px;margin:0 0 18px}dl.dl-horizontal dt{color:var(--muted);font-weight:700;text-align:right}dl.dl-horizontal dd{margin:0;color:var(--text)}table.table{width:100%;border-collapse:collapse;margin-bottom:18px;background:var(--panel);font-size:14px;color:var(--text)}table.table th,table.table td{border-top:1px solid var(--border);padding:8px;text-align:left;vertical-align:top}table.table thead th{border-bottom:2px solid var(--border);border-top:0;vertical-align:bottom;font-weight:700;background:var(--panel);color:var(--text)}table.table-striped tbody tr:nth-child(odd) td{background:var(--table-strip)}table.table td.center,table.table th.center{text-align:center}.cell-strong{font-weight:700;background-color:var(--table-cell-bg)!important}.label{display:inline-block;padding:2px 4px;font-size:12px;line-height:14px;background:var(--label-bg);border:1px solid var(--label-bd);border-radius:var(--radius);color:var(--label-fg);font-weight:400;vertical-align:top}.badge{display:inline-block;padding:2px 9px;font-size:12px;font-weight:700;line-height:14px;color:#fff;background:var(--badge-inv-bg);border-radius:9px;white-space:nowrap}.badge-warning{background:var(--badge-warn-bg)}.badge-inverse{background:var(--badge-inv-bg)}.grafico-wrapper{position:relative;margin:50px auto;width:600px;border:solid 0px var(--barra-bd)}.grafico-wrapper .esquerda,.grafico-wrapper .direita{position:relative;float:left;width:250px;height:100%}.grafico-wrapper .centro{position:relative;float:left;width:98px;padding:19px 0;border:solid 1px var(--centro-bd);background:var(--centro-bg)}.grafico-wrapper .centro .barra-tempo{box-sizing:border-box;-moz-box-sizing:border-box;width:100%;border-top:dotted 1px var(--tick-bd);text-align:center;color:var(--tick-fg)}.grafico-wrapper .centro .barra-tempo span{display:inline-block;position:relative;float:left;width:50px;margin:-11px 30px 0 25px;background-color:var(--tick-label-bg);font-size:11px;color:var(--tick-fg)}.grafico-wrapper .barra{position:absolute;top:0;width:0;border:0}.grafico-wrapper .barra span{display:inline-block;position:relative;float:left;width:200px;text-align:center;margin-top:-42px;font-size:11px;color:var(--barra-fg)}.grafico-wrapper .barra.tipo-limites{left:250px;width:100px;border-top:solid 1px var(--barra-bd)}.grafico-wrapper .barra.tipo-limites span{width:100px;color:var(--barra-fg)}.grafico-wrapper .barra.mau-limites{left:50px;width:200px;border:solid 1px var(--barra-bd);border-right:0;border-left:dotted 1px var(--barra-bd)}.grafico-wrapper .barra.mau-limites span{color:var(--barra-fg)}.grafico-wrapper .barra.mau-9{left:70px;border-left:dotted 1px var(--barra-bd)}.grafico-wrapper .barra.mau-8{left:90px;border-left:dotted 1px var(--barra-bd)}.grafico-wrapper .barra.bom-limites{left:350px;width:200px;border:solid 1px var(--barra-bd);border-left:0;border-right:dotted 1px var(--barra-bd)}.grafico-wrapper .barra.bom-limites span{color:var(--barra-fg)}.grafico-wrapper .barra.bom-9{left:530px;border-right:dotted 1px var(--barra-bd)}.grafico-wrapper .barra.bom-8{left:510px;border-right:dotted 1px var(--barra-bd)}.grafico-wrapper .barra-momento{position:absolute}.grafico-wrapper.escala-1x{height:760px}.grafico-wrapper.escala-1x .centro{height:720px}.grafico-wrapper.escala-1x .centro .barra-tempo{height:30px}.grafico-wrapper.escala-1x .barra{height:758px}.grafico-wrapper.escala-1x .barra-momento.familia{height:3px}.grafico-wrapper.escala-1x .barra-momento.normal{height:2px}.grafico-wrapper.escala-1x.horas-24 .centro .barra-tempo.meia,.grafico-wrapper.escala-1x.horas-24 .centro .barra-tempo.quarto,.grafico-wrapper.escala-1x.horas-12 .centro .barra-tempo.quarto{display:none}.tab-var{border:none;background-color:transparent;margin:20px 5px;border-collapse:collapse}.tab-var thead th{font-weight:700;text-align:center;width:24px;padding:0 4px;background:transparent;color:var(--text)}.tab-var tbody td{background-color:transparent!important;text-align:center;border-top:0;width:24px;padding:0 4px;font-size:12px;vertical-align:top;color:var(--text)}.tab-var thead th.linha,.tab-var tbody td.linha{border-left:1px solid var(--barra-bd);padding-left:0;padding-right:4px}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--bg)}.auth-card{width:100%;max-width:400px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:32px;box-shadow:0 2px 6px #00000014}.auth-card h1{margin-bottom:24px;text-align:center}.auth-card .control-group{display:block}.auth-card .control-group .control-label{width:auto;text-align:left;padding:0 0 4px}.auth-card .controls input{width:100%}.auth-card button{width:100%;padding:10px;margin-top:12px}.auth-card .switch{text-align:center;margin-top:16px;color:var(--muted)}textarea.json-dump{box-sizing:border-box;width:100%;height:170px;margin-top:10px;padding:8px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12px;border:1px solid var(--json-bd);border-radius:var(--radius);background:var(--json-bg);color:var(--text)}.box-good{flex:1;padding:10px;background:var(--good-box-bg);border:1px solid var(--good-box-bd);border-radius:var(--radius)}.box-good .box-label{font-weight:700;color:var(--good-box-fg);font-size:13px}.box-bad{flex:1;padding:10px;background:var(--bad-box-bg);border:1px solid var(--bad-box-bd);border-radius:var(--radius)}.box-bad .box-label{font-weight:700;color:var(--bad-box-fg);font-size:13px}.box-total{font-size:22px;font-weight:700;font-family:ui-monospace,monospace;color:var(--text)}.text-good{color:var(--good-box-fg)}.text-bad{color:var(--bad-box-fg)}.frozen-pill{display:inline-block;padding:2px 8px;background:var(--frozen-bg);border:1px solid var(--frozen-bd);border-radius:var(--radius);color:var(--frozen-fg);font-size:11px;font-weight:700;letter-spacing:.5px}tr.fut-same-slot>td{background:var(--dup-slot-bg)!important}tr.fut-same-slot>td:first-child{box-shadow:inset 3px 0 0 var(--dup-slot-bd)}.fut-slot-continued{color:var(--dup-slot-bd);font-weight:700;font-size:14px;line-height:1}.fut-slot-count{display:inline-block;margin-left:6px;padding:1px 6px;background:var(--dup-slot-bd);color:#fff;border-radius:10px;font-size:11px;font-weight:700;vertical-align:middle}.fut-dup-hint{margin-top:8px;font-size:12px;color:var(--muted)}.fut-dup-hint .fut-slot-continued,.fut-dup-hint .fut-slot-count{margin-left:0;margin-right:4px}.table-page-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.table-page-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;overflow-y:auto}.modal-panel{background:var(--card-bg, var(--bg));color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 32px #00000059;width:min(1100px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column}.table-compare-panel{padding:0}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:18px}.modal-close{background:transparent;border:0;font-size:24px;line-height:1;cursor:pointer;color:var(--muted);padding:0 4px}.modal-close:hover{color:var(--fg)}.table-compare-form{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;padding:16px 20px;border-bottom:1px solid var(--border)}.table-compare-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700}.table-compare-form select{min-width:10rem}.table-compare-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;font-size:13px;flex-wrap:wrap}.table-compare-filter{display:flex;align-items:center;gap:6px;font-weight:400;margin:0;cursor:pointer}.table-compare-scroll{overflow:auto;padding:0 20px 20px;flex:1}.table-compare{font-size:13px}.table-compare.table-striped tbody tr:nth-child(odd) td{background:transparent}tr.table-compare-diff>td{background:#ffc1072e!important}[data-theme=dark] tr.table-compare-diff>td{background:#ffc1071f!important}.table-compare-val{font-weight:700}
