@import url('brand/fonts.css');

/* Reference: https://ktdk.hu/ (2026-10-24). Shared across every POC shell. */
:root, body.portal {
  --ink:#34528e; --muted:#546582; --paper:#fff; --line:#dce3f0;
  --accent:#293caf; --tone:#293caf; --soft:#f0f4fb;
  --ktdk-navy:#192e7a; --ktdk-blue:#293caf; --ktdk-turquoise:#00b7bd;
  --ktdk-green:#08cb8e; --ktdk-link:#526bff; --ktdk-footer:#001d47;
}
body {font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper)}
h1,h2,h3,.brand,.hotel-brand {font-family:Montserrat,Arial,sans-serif;color:var(--ktdk-blue);letter-spacing:-.025em}
h1,h2,h3 {font-weight:600}
button,input,select,textarea {font-family:Inter,Arial,sans-serif}
:is(a,button,input,select,textarea,summary):focus-visible {outline:3px solid var(--ktdk-blue);outline-offset:4px}
.button,input[type=submit],.submit-row input {background:var(--ktdk-blue);color:#fff;border-radius:8px}
.button:hover {background:var(--ktdk-navy)}
.ktdk-logo {width:155px;height:60px;object-fit:contain;flex-shrink:0}
.brand {flex-wrap:wrap;gap:0;margin-bottom:22px}
.brand-caption {font:500 11px Inter,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;width:100%;padding-left:57px}
.hotel-brand .ktdk-logo {width:124px;height:48px}
.hotel-brand {font-size:18px}
.sidebar {border-top:4px solid var(--ktdk-green)}
.workspace-body {background:#f6f8fc}
.topbar {background:#fff;color:var(--ink)}
.workspace-nav a,.workspace-nav span {color:var(--ink)}
.workspace-nav a:hover,.workspace-nav a[aria-current=page] {color:var(--ktdk-blue);background:#eef1ff}
.live-dot,.status-dot {background:var(--ktdk-green)}
.nav-heading {color:var(--muted);font-size:10px}
.eyebrow,.text-link,.site-actions {color:var(--ktdk-blue)}
.module,.site-card,.chart-panel,.portal-filters,.provider-hero {box-shadow:0 4px 20px #192e7a05;border-color:var(--line)}
.coral,.blue {--tone:#2660ed}.teal,.green {--tone:#12b6a5}.gold {--tone:#007987}.indigo {--tone:#3e30a3}
.bar,.revenue-bars .bar {background:linear-gradient(var(--ktdk-turquoise),var(--ktdk-blue))}
.portal-track span {background:var(--ktdk-turquoise)}
.portal-badge {background:#edf1ff;color:var(--ktdk-navy)}
.portal-badge.warning {background:#fff3d5;color:#714c00}
.attraction-hero {background:linear-gradient(120deg,#edf1ff,#e8fbf8)}
.provider-tabs,.portal-pagination a,details summary {color:var(--ktdk-blue)}
.room-tile:hover,.booking-details {background:#f0f4fb}
.workspace-footer {background:var(--ktdk-footer);color:#fff}
.site-header {background:#fff;border-top:4px solid var(--ktdk-green)}
.portal .room-art {background:linear-gradient(120deg,#edf1ff,#c9edee)}
.site-footer {background:var(--ktdk-footer);color:white}
.site-footer p,.site-footer .subtle,.site-footer .footer-bottom {color:#e0e8ff}
.site-footer .eyebrow {color:#23c6b2}
.site-footer .footer-bottom {border-color:#ffffff30}
.module p,.detail,.site-copy p,.footnote {font-size:12px}
.lead {font-size:15px;line-height:1.8}

/* Django admin shares the brand, including when the OS requests dark mode. */
html[data-theme],html:root {
  --primary:#293caf; --secondary:#192e7a;
  --header-bg:#fff; --header-color:#34528e; --header-link-color:#293caf;
  --link-fg:#293caf; --link-hover-color:#192e7a; --breadcrumbs-bg:#192e7a;
  --body-fg:#34528e; --body-bg:#fff; --body-quiet-color:#546582;
  --body-loud-color:#192e7a; --darkened-bg:#f0f4fb; --selected-bg:#edf1ff;
  --selected-row:#e8fbf8; --hairline-color:#dce3f0; --border-color:#dce3f0;
  --button-bg:#293caf; --button-hover-bg:#192e7a; --default-button-bg:#192e7a;
  --font-family-primary:Inter,Arial,sans-serif;
}
#header {border-top:4px solid #08cb8e}
#branding {display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.admin-brand img {width:155px;height:60px}
.module caption {background:var(--ktdk-blue)}

[hidden] {display:none!important}
.guide-hero {padding:44px;border-radius:16px;background:linear-gradient(115deg,#192e7a,#293caf);color:white;position:relative;overflow:hidden}
.guide-hero::after {content:'';position:absolute;width:260px;height:260px;border:50px solid #08cb8e22;border-radius:50%;right:-80px;top:-70px;pointer-events:none}
.guide-hero h1 {color:white;font-size:clamp(28px,3vw,44px);margin:18px 0 22px;max-width:800px}
.guide-hero .eyebrow {color:#65efd1}
.guide-hero p {color:#e3eaff;max-width:750px;font-size:15px;line-height:1.8}
.guide-hero-meta {display:flex;gap:12px 24px;flex-wrap:wrap;font-size:12px;color:#fff;margin-top:28px}
.guide-hero-meta span {border-left:3px solid #08cb8e;padding-left:12px}
.guide-toolbar {display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}
.guide-toolbar>div {flex:1;min-width:200px}
.guide-toolbar button,.guide-navigation button {min-height:44px;padding:10px 18px;border:1px solid var(--line);border-radius:8px;color:var(--ktdk-blue);background:white;cursor:pointer}
.guide-toolbar progress {display:block;width:100%;height:8px;margin-top:10px;accent-color:var(--ktdk-blue)}
.guide-help,#guide-storage-status {font-size:13px;line-height:1.8}
.guide-layout {display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;margin-top:28px;align-items:start}
.guide-contents {display:block;max-height:75vh;overflow:auto;position:sticky;top:20px;padding-right:10px}
.guide-contents h2 {font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin:22px 0 10px}
.guide-contents h2:first-child {margin-top:0}
.guide-contents a {display:flex;gap:12px;padding:9px 10px;font-size:12px;border-radius:8px}
.guide-contents a span {font-variant-numeric:tabular-nums;color:var(--muted)}
.guide-contents a:hover,.guide-contents a[aria-current=step] {background:#e7ecff;color:var(--ktdk-blue)}
.guide-contents a[data-done=true]::after {content:'✓';margin-left:auto;color:#167455}
.guide-step {background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;margin-bottom:20px;scroll-margin-top:25px}
.guide-step-meta {display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:11px;margin-bottom:18px}
.guide-mode {background:#eef1ff;color:var(--ktdk-blue);padding:3px 9px;border-radius:20px}
.guide-step h2 {font-size:26px;margin:0 0 22px}
.guide-step h3 {font-size:14px;margin:24px 0 12px}
.guide-account {padding:14px 18px;background:#f4f6fc;border-radius:8px;font-size:13px;overflow-wrap:anywhere}
.guide-step ol,.guide-dock ol {padding-left:22px;font-size:14px;line-height:1.8}
.guide-step li,.guide-dock li {margin-bottom:12px}
.guide-expected {padding:18px 20px;border-left:3px solid #00b7bd;background:#eefaf9;font-size:14px;margin-top:22px;color:#234c65}
.guide-expected p {margin:6px 0 0}
.guide-note {font-size:13px;line-height:1.7;color:#546582;margin:18px 0}
.guide-step-actions {display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:24px}
.guide-step-actions label {display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}
.guided-demo-checkbox {width:18px;height:18px;accent-color:var(--ktdk-blue)}
.guide-navigation {display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.guide-navigation button:disabled {opacity:.45;cursor:default}
.guide-dock {position:fixed;z-index:999;right:20px;bottom:18px;width:min(410px,calc(100% - 40px));background:white;color:#34528e;border:1px solid #bcc9e8;border-top:4px solid #08cb8e;border-radius:12px;box-shadow:0 12px 45px #192e7a30;font:13px/1.6 Inter,Arial,sans-serif}
.guide-dock summary {padding:14px 18px;cursor:pointer;white-space:normal;color:#293caf;font-weight:600}
.guide-dock-content {padding:0 18px 18px;max-height:60vh;overflow:auto}
.guide-dock h2 {font-size:18px;margin:8px 0 14px}
.guide-dock a {color:#293caf;text-decoration:underline}
.guide-dock button {padding:9px 12px;background:#293caf;color:white;border:0;border-radius:8px;cursor:pointer;font:inherit}
.guide-dock .guide-close {background:#edf1ff;color:#293caf}
.guide-dock .guide-step-actions {gap:10px}
body.has-guide-dock {padding-bottom:95px}
@media(max-width:950px){.guide-layout{grid-template-columns:1fr}.guide-contents{position:static;max-height:230px;border:1px solid var(--line);padding:15px;border-radius:10px}.guide-hero{padding:28px}.guide-step{padding:22px}}
@media(max-width:620px){.hotel-brand{font-size:15px}.hotel-brand .ktdk-logo{width:93px;height:36px}.brand{flex-wrap:nowrap;gap:14px}.brand-caption{width:auto;padding:0}.guide-hero{padding:24px}.guide-hero-meta{gap:12px}.guide-step-actions{align-items:stretch;flex-direction:column}.guide-toolbar button{flex:1}.guide-dock{right:10px;bottom:10px;width:calc(100% - 20px)}}
@media print{.guide-contents,.guide-toolbar,.guide-navigation,.guide-dock,.sidebar,.topbar{display:none!important}.workspace,.guide-layout{display:block}.guide-step[hidden]{display:block!important}.guide-step{break-inside:avoid}.guide-hero{background:white;color:#192e7a}.guide-hero h1,.guide-hero p{color:#192e7a}}
