.tk-panel{color:#e6f0f2;background:#10282e;padding:20px;border:1px solid #2c4b53;border-radius:12px;min-width:0;overflow:auto}.tk-panel[hidden]{display:none!important}.tk-heading,.tk-card>header,.tk-dialog footer,.tk-pages{display:flex;align-items:center;justify-content:space-between;gap:16px}.tk-heading h2{margin:3px 0;font-size:24px}.tk-heading p{margin:6px 0}.tk-heading small,.tk-muted,.tk-entry time{color:#9bb5bd}.tk-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}.tk-toolbar label,.tk-form-grid label{display:flex;flex-direction:column;gap:7px}.tk-toolbar input,.tk-toolbar select,.tk-form-grid input,.tk-form-grid select,.tk-form-grid textarea{background:#081d22;color:#e6f0f2;border:1px solid #36565e;border-radius:6px;padding:10px;min-width:0;box-sizing:border-box;font:inherit}.tk-toolbar select{max-width:240px}.tk-panel button,.tk-dialog button,.tk-menu button{cursor:pointer;background:#18373f;color:#e7f2f3;border:1px solid #36565e;border-radius:6px;padding:9px 13px;font:inherit}.tk-panel button:disabled,.tk-dialog button:disabled{opacity:.45;cursor:default}.tk-panel .primary,.tk-dialog .primary{background:#8c2936;border-color:#bb4855}.tk-panel a,.tk-dialog a{color:#78d6cb}.tk-table-wrap{overflow:auto}.tk-panel table{border-collapse:collapse;width:100%;text-align:left}.tk-panel th,.tk-panel td{padding:12px;border-bottom:1px solid #2c4b53;vertical-align:top}.tk-panel td small{display:block;color:#98afb6;margin-top:6px}.tk-panel th{font-size:12px;text-transform:uppercase;color:#9bb5bd}.tk-panel tbody tr:hover{background:#193740}.tk-tag{display:inline-block;border:1px solid #4a666e;border-radius:18px;padding:5px 10px;font-size:12px;white-space:nowrap}.tk-tag.high{color:#ffd17f;border-color:#a67726}.tk-tag.critical{color:#ffb6bd;border-color:#b34b56}.tk-tag.low{color:#9ed8ba}.tk-summary{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:18px 0}.tk-card{background:#0d2228;border:1px solid #294a53;border-radius:10px;margin:16px 0;padding:16px}.tk-card summary{font-weight:700;cursor:pointer;padding:5px 0 15px}.tk-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tk-wide{grid-column:1/-1}.tk-form-grid textarea{resize:vertical;width:100%}.tk-subject{display:flex;gap:8px}.tk-subject input{flex:1;width:100%}.tk-panel form footer{display:flex;justify-content:flex-end;margin-top:12px}.tk-technicians{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}.tk-technicians span{padding:10px;background:#18353b;border-radius:7px}.tk-timeline{border-left:2px solid #31626a;padding-left:18px}.tk-entry{padding:16px 0;border-bottom:1px solid #29434b}.tk-entry header{display:flex;gap:15px;justify-content:space-between}.tk-entry.change{font-size:13px;color:#adc3c9}.tk-entry-meta{margin-bottom:10px}.tk-pre{white-space:pre-wrap;overflow-wrap:anywhere}.tk-entry pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.tk-files{padding:0;list-style:none}.tk-files li{display:flex;align-items:center;gap:12px;padding:8px;flex-wrap:wrap}.tk-file-button{cursor:pointer;border:1px solid #36565e;border-radius:6px;padding:9px;display:inline-flex!important;max-width:220px}.tk-file-button{position:relative}.tk-file-button input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.tk-file-button:focus-within{outline:2px solid #78d6cb}.tk-warning{color:#ffb6bd}.tk-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;white-space:nowrap}.tk-check input{width:20px;height:20px}.tk-dialog{color:#e6f0f2;background:#10282e;border:1px solid #44616a;border-radius:12px;padding:22px;width:min(760px,92vw);max-height:90vh;overflow:auto;box-shadow:0 22px 90px #0008}.tk-dialog::backdrop{background:#0009}.tk-dialog footer{margin-top:18px;justify-content:flex-end}.tk-dialog h2{margin-top:0}.tk-preview{max-width:100%;max-height:65vh;object-fit:contain}.tk-pages{margin-top:16px}.tk-menu{position:fixed;z-index:99999;display:grid;background:#10282e;padding:6px;box-shadow:0 6px 25px #0009;border:1px solid #36565e}.tk-menu button{border:0;text-align:left}.tk-window{margin:0;background:#0b1e24;font:14px system-ui,sans-serif}.tk-window main{min-height:100vh;box-sizing:border-box}.tk-window-nav{padding:10px;display:flex;gap:10px}.tk-window-nav a{color:#8dd9d3}#ticketsButton{position:relative;border:0!important;background:transparent!important;padding:2px 9px!important;box-shadow:none!important}#ticketsButton img{width:70.56px;height:51.84px;object-fit:contain}#ticketCount{position:absolute;right:0;top:-4px;background:#b62e40;color:white;border-radius:12px;min-width:20px;padding:2px 5px;font-size:12px}#ticketsPanel{flex:1;grid-column:1/-1}.tk-remote{display:flex;align-items:center;gap:5px}.tk-remote select{max-width:230px;background:#10282e;color:#e6f0f2}.tk-capture{width:100vw;height:100vh;max-width:100vw;max-height:100vh;box-sizing:border-box;border:0;margin:0;position:fixed;inset:0;background:#061216ee;z-index:2147483646;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:white}.tk-capture header{display:flex;gap:10px;align-items:center}.tk-capture canvas{max-width:95vw;max-height:80vh;cursor:crosshair;touch-action:none}.tk-capture button{padding:10px;background:#173942;color:white;border:1px solid #4c747f;border-radius:5px}@media(max-width:650px){.tk-form-grid{grid-template-columns:1fr}.tk-wide{grid-column:auto}.tk-panel{padding:12px}.tk-heading{align-items:flex-start;flex-wrap:wrap}.tk-entry header{flex-wrap:wrap}.tk-toolbar label{flex:1}.tk-card>header{flex-wrap:wrap}}

.tk-window [hidden],.tk-dialog [hidden],.tk-remote[hidden],#ticketsPanel[hidden],#ticketsButton[hidden]{display:none!important}.tk-remote button{background:#18373f;color:#e7f2f3;border:1px solid #36565e;border-radius:6px;padding:7px}.tk-remote span{font-size:12px;max-width:220px}.tk-panel [data-error],.tk-dialog [data-error]{color:#ffb6bd}

#ticketsPanel{max-height:calc(100dvh - 185px);min-height:250px}#ticketsPanel table{min-width:1050px}.tk-panel .tk-toolbar select,.tk-panel .tk-toolbar input:not([type=checkbox]){height:42px;line-height:20px}

/* Keep native select text clear of the console's fixed control height. */
.tk-dialog .tk-form-grid select:not([multiple]),.tk-panel .tk-form-grid select:not([multiple]){height:42px;min-height:42px;padding:0 10px;line-height:normal}
.tk-dialog .tk-form-grid select[multiple],.tk-panel .tk-form-grid select[multiple]{height:auto;min-height:108px;padding:6px;line-height:1.5}
.tk-form-grid select option{background:#081d22;color:#e6f0f2;padding:5px 7px}
.tk-dialog .tk-form-grid input:not([type=file]):not([type=checkbox]),.tk-panel .tk-form-grid input:not([type=file]):not([type=checkbox]){min-height:42px}
.tk-attachments{min-width:0;border-top:1px solid #294a53;padding-top:14px}
.tk-attachments>header,.tk-attachments>header>div{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.tk-attachments .tk-muted{font-size:12px;line-height:1.5}
.tk-attachments .tk-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;margin:12px 0 0}
.tk-files .tk-file-card{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:0;padding:8px;background:#0a2026;border:1px solid #36565e;border-radius:8px}
.tk-file-open{display:flex;flex-direction:column;gap:8px;text-decoration:none;min-width:0}
.tk-file-thumb{display:flex;align-items:center;justify-content:center;height:130px;background:#152f36;border-radius:5px;overflow:hidden;color:#a8c2c9;font-size:13px;text-align:center}
.tk-file-thumb img,.tk-file-thumb canvas{display:block;max-width:100%;max-height:100%;object-fit:contain}
.tk-file-name{overflow-wrap:anywhere;padding-right:26px;line-height:1.4}
.tk-file-card small{font-size:11px;color:#9bb5bd;line-height:1.4}
.tk-panel .tk-file-actions,.tk-dialog .tk-file-actions{position:absolute;right:7px;top:12px;padding:0 6px;font-size:22px;line-height:25px}
.tk-file-open:focus-visible,.tk-file-open:hover{outline:2px solid #78d6cb;outline-offset:3px;border-radius:5px}
.tk-file-preview{width:min(1100px,92vw)}
.tk-file-preview h2{font-size:19px;overflow-wrap:anywhere;min-width:0}
.tk-file-preview [data-preview-content]{margin-top:16px;max-height:70vh;overflow:auto;text-align:center}
.tk-file-preview .tk-preview{display:block;margin:auto;max-height:68vh}
.tk-file-preview .document-pdf-pages{display:flex;flex-direction:column;align-items:center;gap:16px}
.tk-file-preview .document-pdf-page{position:relative;max-width:100%;background:white}
.tk-file-preview canvas{display:block;max-width:100%;height:auto}
.tk-file-preview .document-pdf-text-layer{display:none}

/* Ticket rows and stable, individually documented service visits. */
.tk-panel tr[data-ticket]{cursor:pointer}.tk-panel tr[data-ticket]:focus-visible{outline:2px solid #78d6cb;outline-offset:-2px}
.tk-ticket-number{display:inline-grid;place-items:center;position:relative;width:132px;height:56px;color:#fff;vertical-align:middle}
.tk-ticket-number svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3;stroke-linejoin:round}
.tk-ticket-number .tk-ticket-perforation{stroke-width:1.5;stroke-dasharray:6 4}.tk-ticket-number>span{font-weight:800;font-size:17px;font-variant-numeric:tabular-nums;max-width:94px;overflow-wrap:anywhere;line-height:1.1}
.tk-ticket-number.low{color:#a5adb4}.tk-ticket-number.normal{color:#fff}.tk-ticket-number.high{color:#ffdc55}.tk-ticket-number.critical{color:#ff4c58}.tk-tag.low{color:#a5adb4}
.tk-panel .tk-icon-button{border:0;background:transparent;box-shadow:none;padding:6px;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;color:#e7f2f3}
.tk-icon-button svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tk-panel .tk-icon-button:hover{background:#24434b}.tk-panel .tk-save-button{width:44px;height:44px;padding:6px}.tk-save-button img{display:block;width:26px;height:26px;object-fit:contain}
.tk-header-actions{display:flex;align-items:center;gap:12px}.tk-sticky-heading{position:sticky;top:-20px;z-index:20;background:#10282ef5;backdrop-filter:blur(8px);margin:-20px -20px 0;padding:16px 20px;border-bottom:1px solid #36565e;flex-wrap:wrap}.tk-sticky-heading>div:first-child{flex:1;min-width:180px}.tk-sticky-heading p{max-width:600px;overflow-wrap:anywhere}.tk-detail-updates{position:absolute;bottom:2px;right:20px;font-size:11px;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-detail-updates:empty{display:none}
.tk-window #ticketWindow{height:calc(100dvh - 43px);min-height:0;overflow:auto;scrollbar-gutter:stable}.tk-window{overflow:hidden}.tk-window-nav{height:43px;box-sizing:border-box}
.tk-solution{border:1px solid #36565e;border-radius:9px;padding:16px;background:#102a31;margin:14px 0}.tk-solution>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.tk-solution small{color:#9bb5bd}.tk-solution label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:13px}.tk-solution input,.tk-solution textarea{background:#081d22;color:#e6f0f2;border:1px solid #36565e;border-radius:6px;padding:10px;box-sizing:border-box;font:inherit;min-width:0}.tk-solution textarea{width:100%;resize:vertical;font-size:14px;line-height:1.6;min-height:100px}.tk-solution-times{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-top:12px}.tk-solution-times input{height:42px;color-scheme:dark}.tk-solution-times .tk-billing{margin-left:auto}.tk-hour-stepper{display:flex;align-items:center;gap:5px;white-space:nowrap}.tk-hour-stepper input{width:76px;text-align:right;font-variant-numeric:tabular-nums}.tk-panel .tk-hour-stepper button{padding:5px;width:30px;height:34px;font-size:19px}.tk-hour-stepper>span{margin:0 3px}.tk-panel .tk-add-solution{display:block;margin:12px auto;width:44px;height:44px;font-size:29px;line-height:1;padding:0;border:1px dashed #69aaa8;background:transparent;color:#9be2d8}.tk-solution-totals{border-top:1px solid #36565e;margin-top:16px;padding-top:10px}.tk-solution-totals>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0}.tk-solution-totals strong{font-variant-numeric:tabular-nums;color:#a6e8de;white-space:nowrap}
@media(max-width:650px){.tk-sticky-heading{top:-12px;margin:-12px -12px 0;padding:12px}.tk-header-actions{gap:6px}.tk-solution{padding:12px}.tk-solution-times .tk-billing{margin-left:0}.tk-solution-totals>div{flex-wrap:wrap}.tk-sticky-heading h2{font-size:20px}}
