
:root{--tk-navy:#071f49;--tk-blue:#0b4d91;--tk-gold:#f2b913;--tk-bg:#f3f6fa;--tk-text:#16243d}
.tktm-mobile-app,.tktm-mobile-login{font-family:Inter,Arial,sans-serif;color:var(--tk-text);box-sizing:border-box}.tktm-mobile-app *,.tktm-mobile-login *{box-sizing:border-box}
.tktm-mobile-app{max-width:720px;min-height:100vh;margin:0 auto;padding-bottom:90px;background:var(--tk-bg)}
.tktm-mobile-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;padding:17px 18px;background:linear-gradient(135deg,var(--tk-navy),#0b3e78);color:#fff;box-shadow:0 5px 16px rgba(7,31,73,.2)}.tktm-mobile-brand{color:var(--tk-gold);font-size:27px;font-weight:950;font-style:italic;line-height:.8}.tktm-mobile-brand span{display:block;margin-top:7px;color:#fff;font-size:8px;font-style:normal;letter-spacing:.12em}.tktm-mobile-header h1{margin:0;color:#fff;font-size:21px}.tktm-mobile-header small{opacity:.8}.tktm-install-button{margin-left:auto;padding:9px 12px;border:1px solid rgba(255,255,255,.3);border-radius:9px;background:rgba(255,255,255,.12);color:#fff}
.tktm-filter-bar{display:flex;gap:8px;padding:14px;overflow:auto;background:#fff;border-bottom:1px solid #e4e9ef}.tktm-filter-bar a{white-space:nowrap;padding:9px 13px;border-radius:999px;background:#eff3f8;color:#526078;text-decoration:none;font-size:13px;font-weight:700}.tktm-filter-bar a.active{background:var(--tk-blue);color:#fff}.tktm-filter-bar b{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:4px;border-radius:50%;background:var(--tk-gold);color:var(--tk-navy)}
.tktm-mobile-list{padding:14px}.tktm-mobile-card{position:relative;display:block;margin-bottom:12px;padding:17px 42px 17px 17px;border:1px solid #e5eaf0;border-radius:16px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 6px 18px rgba(20,33,61,.07)}.tktm-mobile-card .top{display:flex;justify-content:space-between;align-items:center}.tktm-mobile-card time{font-size:12px;color:#778397}.tktm-mobile-card h2{margin:11px 0 3px;font-size:19px}.tktm-mobile-card strong{color:var(--tk-blue);font-size:14px}.tktm-mobile-card p{margin:10px 0 0;color:#526078;font-size:14px}.tktm-mobile-card i{position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:30px;color:#8995a7}
.tktm-badge{display:inline-block;padding:5px 9px;border-radius:7px;color:#fff;font-size:10px;font-weight:900;text-transform:uppercase}.badge-new{background:#d9a300}.badge-contacted{background:#287fc7}.badge-quote_sent{background:#7653bd}.badge-booked{background:#248f4b}.badge-completed{background:#0c8881}.badge-not_proceeding{background:#c43b3b}
.tktm-request-content{padding:16px}.request-header{justify-content:flex-start}.tktm-back{color:#fff;text-decoration:none;font-size:38px;line-height:1}.tktm-customer-card,.tktm-detail-card,.tktm-mobile-photos,.tktm-mobile-status-form{margin-bottom:14px;padding:18px;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(20,33,61,.06)}.tktm-customer-card h2{margin:12px 0;font-size:25px}.tktm-customer-card>a{display:block;margin:8px 0;color:var(--tk-blue);text-decoration:none}.tktm-detail-card{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tktm-detail-card .wide{grid-column:1/-1}.tktm-detail-card label{display:block;color:#748096;font-size:11px;font-weight:900;text-transform:uppercase}.tktm-detail-card p{margin:4px 0 0;line-height:1.45}.tktm-mobile-photos h3{margin-top:0}.tktm-mobile-photos>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tktm-mobile-photos img{width:100%;height:105px;object-fit:cover;border-radius:10px}.tktm-mobile-status-form select{width:100%;margin-top:7px;padding:13px;border:1px solid #cdd6e2;border-radius:10px}
.tktm-mobile-actions{position:fixed;bottom:0;left:50%;z-index:15;display:grid;grid-template-columns:repeat(4,1fr);width:min(720px,100%);transform:translateX(-50%);background:var(--tk-navy);box-shadow:0 -5px 18px rgba(7,31,73,.2)}.tktm-mobile-actions a{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 4px;color:#fff;text-decoration:none;font-size:11px}.tktm-mobile-actions b{color:var(--tk-gold);font-size:22px}
.tktm-mobile-login{max-width:430px;margin:40px auto;padding:32px;border-radius:20px;background:#fff;text-align:center;box-shadow:0 18px 50px rgba(7,31,73,.15)}.tktm-mobile-login .tktm-mobile-brand{display:inline-block;padding:15px 20px;border-radius:12px;background:var(--tk-navy)}.tktm-mobile-login label{text-align:left}.tktm-mobile-login input[type=text],.tktm-mobile-login input[type=password]{width:100%;padding:12px;border:1px solid #ccd5e2;border-radius:9px}.tktm-mobile-login input[type=submit]{width:100%;padding:13px;border:0;border-radius:9px;background:var(--tk-gold);color:var(--tk-navy);font-weight:900}.tktm-empty-mobile{padding:60px 20px;text-align:center;color:#778397}
@media(max-width:600px){.tktm-detail-card{grid-template-columns:1fr}.tktm-detail-card .wide{grid-column:auto}.tktm-mobile-photos>div{grid-template-columns:repeat(2,1fr)}}

.tktm-install-help{margin:12px 14px 0;padding:13px 15px;border:1px solid #f1d47b;border-radius:12px;background:#fff7d8;color:#5f4a00}.tktm-install-help strong,.tktm-install-help span{display:block}.tktm-install-help span{margin-top:4px;font-size:13px;line-height:1.4}

.tktm-header-buttons{margin-left:auto;display:flex;gap:7px}.tktm-live-message{padding:11px 16px;background:#fff2c7;color:#665000;font-weight:700;font-size:13px}.tktm-live-message.ok{background:#dff5e8;color:#17623d}

/* Standalone app page: no theme header, footer or Elementor spacing */
html:has(body.tktm-standalone-page),body.tktm-standalone-page{margin:0!important;padding:0!important;width:100%!important;min-height:100%!important;background:#f3f6fa!important;overflow-x:hidden}
body.tktm-standalone-page #tktm-app-root{width:100%;min-height:100vh;margin:0;padding:0}
body.tktm-standalone-page .tktm-mobile-app{max-width:none;width:100%;margin:0;min-height:100vh}
body.tktm-standalone-page .tktm-mobile-login{margin:clamp(20px,8vh,80px) auto}
body.tktm-standalone-page header:not(.tktm-mobile-header),body.tktm-standalone-page footer,body.tktm-standalone-page .elementor-location-header,body.tktm-standalone-page .elementor-location-footer{display:none!important}
@media(min-width:721px){body.tktm-standalone-page .tktm-mobile-app{max-width:720px;box-shadow:0 0 40px rgba(7,31,73,.12)}}


/* v3.1.2: standalone app isolation fallback */
html:has(body.tktm-standalone-page),
body.tktm-standalone-page{margin:0!important;padding:0!important;width:100%!important;min-height:100%!important;background:#f3f6fa!important;overflow-x:hidden!important}
body.tktm-standalone-page header:not(.tktm-mobile-header),
body.tktm-standalone-page footer,
body.tktm-standalone-page .elementor-location-header,
body.tktm-standalone-page .elementor-location-footer,
body.tktm-standalone-page #masthead,
body.tktm-standalone-page #site-header,
body.tktm-standalone-page .site-header,
body.tktm-standalone-page .header,
body.tktm-standalone-page .hfe-header,
body.tktm-standalone-page .hfe-nav-menu,
body.tktm-standalone-page .elementor-menu-toggle,
body.tktm-standalone-page #colophon,
body.tktm-standalone-page .site-footer{display:none!important}
body.tktm-standalone-page #page,
body.tktm-standalone-page .site,
body.tktm-standalone-page .site-content,
body.tktm-standalone-page .content-area,
body.tktm-standalone-page main,
body.tktm-standalone-page #content,
body.tktm-standalone-page #primary,
body.tktm-standalone-page .elementor,
body.tktm-standalone-page .elementor-section,
body.tktm-standalone-page .elementor-container,
body.tktm-standalone-page .elementor-column,
body.tktm-standalone-page .elementor-widget-wrap{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;min-height:0!important}
body.tktm-standalone-page #tktm-app-root{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.tktm-standalone-page .tktm-mobile-app{max-width:720px!important;margin:0 auto!important}
.tktm-header-buttons{margin-left:auto;display:flex;gap:7px;align-items:center}
.tktm-header-buttons .tktm-install-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;white-space:nowrap}
@media(max-width:430px){.tktm-mobile-header{gap:9px}.tktm-mobile-header h1{font-size:17px}.tktm-mobile-brand{font-size:22px}.tktm-header-buttons .tktm-install-button{padding:8px 9px;font-size:11px}}


/* v3.1.4 standalone manager header and notification controls */
html,body{margin:0!important;padding:0!important;min-height:100%;background:#f3f6fa}
body.tktm-standalone-page #tktm-app-root{width:100%;min-height:100vh;margin:0;padding:0}
.tktm-mobile-header{min-height:78px;padding-top:max(15px,env(safe-area-inset-top));}
.tktm-header-title{min-width:0;flex:1}.tktm-header-title h1{white-space:nowrap}
.tktm-alert-button{display:flex!important;align-items:center;gap:5px;flex:0 0 auto;padding:9px 11px;border:1px solid rgba(255,255,255,.38);border-radius:10px;background:#f2b913;color:#071f49;font:inherit;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 4px 10px rgba(0,0,0,.12)}
.tktm-alert-button span{font-size:17px}.tktm-alert-button b{display:inline}
.tktm-notification-panel{margin:12px 14px;padding:15px;border:1px solid #d7e0eb;border-radius:14px;background:#fff;box-shadow:0 7px 18px rgba(20,33,61,.08)}
.tktm-notification-panel[hidden]{display:none!important}.tktm-notification-panel strong{font-size:16px}.tktm-notification-panel p{margin:5px 0 12px;color:#536178}.tktm-notification-panel small{display:block;margin-top:10px;color:#748096;line-height:1.35}
.tktm-notification-actions{display:flex;gap:8px}.tktm-notification-actions button{flex:1;padding:11px 10px;border:0;border-radius:9px;background:#0b4d91;color:#fff;font-weight:800}.tktm-notification-actions button.secondary{background:#e9eef5;color:#16243d}
.tktm-app-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;background:#e9f6ee;color:#17623d;font-size:12px;font-weight:700;border-bottom:1px solid #d3e9db}
.tktm-install-link{border:0;background:transparent;color:#0b4d91;font-weight:900;text-decoration:underline}
@media(max-width:390px){.tktm-mobile-brand{font-size:20px}.tktm-header-title h1{font-size:16px}.tktm-alert-button b{display:none}.tktm-alert-button{padding:9px 10px}.tktm-notification-actions{flex-direction:column}}
