/* UltraPress's own page only (enqueued on toplevel_page_ultrapress). */
.ultrapress .ultrapress-card {
    background: #fff;
    border: 1px solid #c3c4c7;
    border-radius: 8px;
    padding: 8px 24px 16px;
    margin: 16px 0;
    max-width: 640px;
    box-sizing: border-box;
}
.ultrapress .ultrapress-tabs {
    max-width: 640px;
}
.ultrapress .ultrapress-quiet {
    background: #f6f7f7;
}
.ultrapress .ultrapress-field {
    margin: 16px 0;
}
.ultrapress .ultrapress-field label {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
}
.ultrapress .ultrapress-field input {
    width: 100%;
    max-width: 420px;
}
.ultrapress .ultrapress-field input[aria-invalid="true"] {
    border-color: #d63638;
}
.ultrapress .ultrapress-error {
    color: #d63638;
    font-weight: 600;
    margin: 4px 0 0;
}
.ultrapress .ultrapress-terms {
    color: #50575e;
}
.ultrapress .ultrapress-notice {
    margin: 12px 0;
}
.ultrapress .ultrapress-site {
    color: #50575e;
    overflow-wrap: anywhere;
}
.ultrapress[dir="rtl"] .ultrapress-card,
.ultrapress[dir="rtl"] .ultrapress-field {
    text-align: right;
}
@media (max-width: 600px) {
    .ultrapress .ultrapress-card {
        padding: 4px 16px 12px;
    }
    .ultrapress .button-hero {
        width: 100%;
        text-align: center;
        white-space: normal;
        height: auto;
    }
}
.ultrapress .ultrapress-legacy {
    background: #f0f6fc;
    border-inline-start: 4px solid #72aee6;
    padding: 8px 12px;
}

/* The quick setup (§13.4) */
.ultrapress .ultrapress-step {
    color: #50575e;
    font-weight: 600;
    margin: 16px 0 0;
}
.ultrapress .ultrapress-field select,
.ultrapress .ultrapress-field textarea {
    width: 100%;
    max-width: 420px;
}
.ultrapress .ultrapress-field select[aria-invalid="true"],
.ultrapress .ultrapress-field textarea[aria-invalid="true"] {
    border-color: #d63638;
}
.ultrapress .ultrapress-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: space-between;
    border-top: 1px solid #dcdcde;
    padding-top: 12px;
    margin-top: 16px;
}
.ultrapress .ultrapress-nav:empty {
    display: none;
}
.ultrapress .ultrapress-more,
.ultrapress .ultrapress-how {
    margin: 12px 0;
}
.ultrapress .ultrapress-more summary,
.ultrapress .ultrapress-how summary {
    cursor: pointer;
    color: #2271b1;
    font-weight: 600;
}
.ultrapress .ultrapress-how ol {
    margin-inline-start: 1.5em;
}
.ultrapress .ultrapress-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.ultrapress .ultrapress-actions form {
    margin: 0;
}
.ultrapress .ultrapress-wait .spinner,
.ultrapress .ultrapress-chat-status .spinner {
    float: none;
    margin: 0 4px;
    vertical-align: middle;
}
.ultrapress .ultrapress-messages {
    border: 1px solid #dcdcde;
    border-radius: 6px;
    background: #f6f7f7;
    min-height: 120px;
    max-height: 420px;
    overflow-y: auto;
    padding: 8px;
}
.ultrapress .ultrapress-msg {
    max-width: 85%;
    margin: 6px 0;
    padding: 6px 10px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #dcdcde;
    overflow-wrap: anywhere;
}
.ultrapress .ultrapress-msg p {
    margin: 2px 0;
    white-space: pre-wrap;
}
.ultrapress .ultrapress-msg-user {
    margin-inline-start: auto;
    background: #f0f6fc;
    border-color: #72aee6;
}
.ultrapress .ultrapress-msg-failed {
    opacity: 0.6;
}
.ultrapress .ultrapress-who {
    display: block;
    font-size: 11px;
    color: #50575e;
}
.ultrapress .ultrapress-would {
    color: #50575e;
    font-style: italic;
    font-size: 12px;
}
.ultrapress .ultrapress-compose {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    align-items: flex-end;
}
.ultrapress .ultrapress-compose textarea {
    flex: 1;
    min-width: 0;
}
.ultrapress .ultrapress-msg-bot {
    max-width: 92%;
}
.ultrapress .ultrapress-server {
    margin: 6px 0;
    color: #50575e;
    font-size: 12px;
    text-align: center;
}
.ultrapress .ultrapress-saved {
    margin: 6px 0 2px;
    padding-top: 6px;
    border-top: 1px dashed #dcdcde;
    color: #50575e;
    font-size: 12px;
}
.ultrapress .ultrapress-saved summary {
    cursor: pointer;
}
.ultrapress .ultrapress-saved ul {
    margin: 6px 0 0;
    padding-inline-start: 18px;
    list-style: disc;
}
.ultrapress .ultrapress-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 2px;
}
.ultrapress .ultrapress-attach {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
    align-items: center;
    margin: 8px 0 0;
}
.ultrapress .ultrapress-attach label {
    font-weight: 600;
}
.ultrapress .ultrapress-sim {
    margin-top: 18px;
    border: 1px solid #dcdcde;
    border-radius: 6px;
    padding: 8px 12px;
}
.ultrapress .ultrapress-sim summary {
    cursor: pointer;
    font-weight: 600;
}
.ultrapress .ultrapress-blockers li {
    margin: 6px 0;
}
.ultrapress .ultrapress-blockers li .button {
    margin-top: 8px;
}
.ultrapress [hidden] {
    display: none !important;
}

/* The pages after Go live (Step 5a): the Summary, Conversations, Leads, Bookings, and the Dashboard's box */
.ultrapress .ultrapress-wide {
    max-width: 880px;
}
.ultrapress .ultrapress-sub {
    color: #50575e;
    margin: 4px 0 0;
}
.ultrapress .ultrapress-muted {
    color: #50575e;
}
.ultrapress .ultrapress-warn {
    color: #996800;
    font-weight: 600;
}
.ultrapress .ultrapress-center {
    text-align: center;
}
.ultrapress .ultrapress-inline {
    display: inline-block;
    margin: 0;
}
.ultrapress .ultrapress-numbers {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.ultrapress .ultrapress-number {
    flex: 1 1 140px;
    margin: 0;
    padding: 12px;
    background: #f6f7f7;
    border-radius: 6px;
}
.ultrapress .ultrapress-number strong {
    display: block;
    font-size: 28px;
    line-height: 1.2;
}
.ultrapress .ultrapress-bullets {
    list-style: disc;
    margin-inline-start: 1.5em;
}
.ultrapress .ultrapress-offer {
    border-inline-start: 4px solid #2271b1;
}
.ultrapress .ultrapress-count-tag {
    display: inline-block;
    min-width: 1.4em;
    padding: 0 6px;
    border-radius: 9px;
    background: #dcdcde;
    font-size: 12px;
    text-align: center;
}
.ultrapress .ultrapress-search {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 12px 0;
}
.ultrapress .ultrapress-search input[type="search"] {
    flex: 1 1 200px;
    min-width: 0;
    max-width: 420px;
}
.ultrapress .ultrapress-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.ultrapress .ultrapress-row {
    border-top: 1px solid #dcdcde;
    margin: 0;
}
.ultrapress .ultrapress-row-waiting {
    border-inline-start: 4px solid #dba617;
}
.ultrapress .ultrapress-row-link {
    display: block;
    padding: 10px 8px;
    color: inherit;
    text-decoration: none;
}
.ultrapress .ultrapress-row-link:hover,
.ultrapress .ultrapress-row-link:focus {
    background: #f6f7f7;
}
.ultrapress .ultrapress-row-head {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 8px;
    align-items: baseline;
}
.ultrapress .ultrapress-time {
    margin-inline-start: auto;
    color: #50575e;
    font-size: 12px;
}
.ultrapress .ultrapress-row-text {
    display: block;
    margin: 4px 0;
    overflow-wrap: anywhere;
}
.ultrapress .ultrapress-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
.ultrapress .ultrapress-badge {
    display: inline-block;
    padding: 1px 8px;
    border-radius: 10px;
    background: #f0f0f1;
    border: 1px solid #dcdcde;
    font-size: 12px;
    color: #1d2327;
}
.ultrapress .ultrapress-badge-danger {
    background: #fcf0f1;
    border-color: #d63638;
    color: #8a2424;
}
.ultrapress .ultrapress-badge-warning {
    background: #fcf9e8;
    border-color: #dba617;
    color: #614a00;
}
.ultrapress .ultrapress-badge-success {
    background: #edfaef;
    border-color: #00a32a;
    color: #005c12;
}
.ultrapress .ultrapress-empty {
    padding: 12px 0;
}
.ultrapress .ultrapress-columns {
    display: flex;
    flex-wrap: wrap;
    gap: 0 16px;
    align-items: flex-start;
}
.ultrapress .ultrapress-columns .ultrapress-wide {
    flex: 2 1 420px;
    min-width: 0;
}
.ultrapress .ultrapress-side {
    flex: 1 1 260px;
    min-width: 0;
}
.ultrapress .ultrapress-thread {
    list-style: none;
    margin: 12px 0;
    padding: 0;
}
.ultrapress .ultrapress-thread .ultrapress-msg {
    background: #f0f6fc;
    border-color: #72aee6;
    margin-inline-start: auto;
}
.ultrapress .ultrapress-thread .ultrapress-msg-user {
    background: #fff;
    border-color: #dcdcde;
    margin-inline-start: 0;
}
.ultrapress .ultrapress-thread .ultrapress-msg-team {
    background: #edfaef;
    border-color: #68de7c;
}
.ultrapress .ultrapress-none {
    font-size: 13px;
    font-weight: 400;
}
.ultrapress .ultrapress-media {
    color: #50575e;
    font-style: italic;
}
.ultrapress .ultrapress-fix {
    font-size: 12px;
}
.ultrapress .ultrapress-reply {
    border-top: 1px solid #dcdcde;
    margin-top: 12px;
}
.ultrapress .ultrapress-reply textarea {
    max-width: none;
}
.ultrapress .ultrapress-pairs {
    margin: 8px 0;
}
.ultrapress .ultrapress-pairs dt {
    color: #50575e;
    font-size: 12px;
}
.ultrapress .ultrapress-pairs dd {
    margin: 0 0 8px;
    overflow-wrap: anywhere;
}
.ultrapress .ultrapress-lead {
    max-width: 880px;
}
.ultrapress .ultrapress-day {
    border-top: 1px solid #dcdcde;
    padding: 4px 0;
}
.ultrapress .ultrapress-day h3 {
    margin: 8px 0;
}
.ultrapress .ultrapress-day-today {
    background: #f6fbf7;
}
.ultrapress .ultrapress-bookings {
    list-style: none;
    margin: 0 0 8px;
    padding: 0;
}
.ultrapress .ultrapress-bookings li {
    display: flex;
    gap: 12px;
    margin: 6px 0;
}
.ultrapress .ultrapress-at {
    flex: 0 0 3.5em;
}
.ultrapress .ultrapress-booking {
    min-width: 0;
    overflow-wrap: anywhere;
}
.ultrapress .ultrapress-cancelled {
    opacity: 0.6;
}
.ultrapress.ultrapress-box .ultrapress-box-numbers li {
    margin: 4px 0;
}
.ultrapress.ultrapress-box .ultrapress-box-numbers strong {
    display: inline-block;
    min-width: 2em;
    font-size: 16px;
}
.ultrapress[dir="rtl"] .ultrapress-lead,
.ultrapress[dir="rtl"] .ultrapress-day {
    text-align: right;
}

/* Reports (Step 5b): the tiles and the charts, drawn as HTML, CSS, and inline SVG (no script, rule 76). The bars and
   lines in WordPress's own blue, "Other" a light tint of it, "Unknown" grey; every number is also written as text. */
.ultrapress .ultrapress-report-card {
    max-width: 1100px;
}
.ultrapress .ultrapress-tiles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 12px;
    max-width: 1100px;
    margin: 12px 0;
}
.ultrapress .ultrapress-tile {
    background: #fff;
    border: 1px solid #c3c4c7;
    border-radius: 8px;
    padding: 12px;
    min-width: 0;
}
.ultrapress .ultrapress-tile p {
    margin: 0 0 4px;
}
.ultrapress .ultrapress-tile-label {
    font-weight: 600;
}
.ultrapress .ultrapress-tile-value {
    font-size: 26px;
    line-height: 1.3;
    font-weight: 600;
}
.ultrapress .ultrapress-change {
    color: #646970;
    font-size: 12px;
}
.ultrapress .ultrapress-charts {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 8px 40px;
}
.ultrapress .ultrapress-chart {
    min-width: 0;
}
.ultrapress .ultrapress-chart h3,
.ultrapress .ultrapress-analysis h3 {
    font-size: 14px;
    margin: 16px 0 8px;
}
.ultrapress .ultrapress-bars,
.ultrapress .ultrapress-legend-list,
.ultrapress .ultrapress-text-lines,
.ultrapress .ultrapress-rules {
    list-style: none;
    margin: 0;
    padding: 0;
}
.ultrapress .ultrapress-bars li {
    margin: 0 0 10px;
}
.ultrapress .ultrapress-bar-head,
.ultrapress .ultrapress-legend-list li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    overflow-wrap: anywhere;
}
.ultrapress .ultrapress-legend-list li {
    margin: 0 0 6px;
}
.ultrapress .ultrapress-legend-list bdi {
    flex: 1 1 auto;
    min-width: 0;
}
.ultrapress .ultrapress-figure {
    flex: 0 0 auto;
    color: #50575e;
}
.ultrapress .ultrapress-track {
    display: block;
    height: 8px;
    margin-top: 4px;
    border-radius: 4px;
    background: #f0f0f1;
}
.ultrapress .ultrapress-bar {
    display: block;
    height: 8px;
    border-radius: 4px;
}
.ultrapress .ultrapress-fill-value {
    background: #2271b1;
}
.ultrapress .ultrapress-fill-other {
    background: #9ec2e6;
}
.ultrapress .ultrapress-fill-unknown {
    background: #c3c4c7;
}
.ultrapress .ultrapress-ring-chart {
    display: flex;
    align-items: center;
    gap: 20px;
}
.ultrapress .ultrapress-ring {
    flex: 0 0 96px;
    width: 96px;
    height: 96px;
}
.ultrapress .ultrapress-legend-list {
    flex: 1 1 auto;
    min-width: 0;
}
.ultrapress .ultrapress-ring-base {
    stroke: #f0f0f1;
}
.ultrapress .ultrapress-ring-value {
    stroke: #2271b1;
}
.ultrapress .ultrapress-ring-other {
    stroke: #9ec2e6;
}
.ultrapress .ultrapress-ring-unknown {
    stroke: #c3c4c7;
}
.ultrapress .ultrapress-dot {
    display: inline-block;
    flex: 0 0 10px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    align-self: center;
}
.ultrapress .ultrapress-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
    margin: 0 0 4px;
    color: #50575e;
}
.ultrapress .ultrapress-key {
    width: 20px;
    height: 4px;
    vertical-align: middle;
}
.ultrapress .ultrapress-months {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;          /* a long month name at the chart's edge is drawn whole */
}
.ultrapress .ultrapress-jump {
    margin: 4px 0 0;
}
.ultrapress .ultrapress-line {
    stroke: #2271b1;
}
.ultrapress .ultrapress-dot-full {
    fill: #2271b1;
    stroke: #2271b1;
}
.ultrapress .ultrapress-dot-open {
    fill: #fff;
    stroke: #2271b1;
}
.ultrapress .ultrapress-numbers-table {
    margin: 8px 0;
}
.ultrapress .ultrapress-numbers-table summary {
    cursor: pointer;
    color: #2271b1;
}
.ultrapress .ultrapress-numbers-table table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 6px;
}
.ultrapress .ultrapress-numbers-table th,
.ultrapress .ultrapress-numbers-table td {
    padding: 3px 4px;
    border-bottom: 1px solid #f0f0f1;
    text-align: start;
}
.ultrapress .ultrapress-numbers-table td + td,
.ultrapress .ultrapress-numbers-table th + th {
    text-align: end;
}
.ultrapress .ultrapress-peak {
    display: grid;
    grid-template-columns: auto repeat(24, minmax(0, 1fr));
    gap: 2px;
    max-width: 640px;
}
.ultrapress .ultrapress-peak-hour {
    grid-column: span 6;
    font-size: 10px;
    color: #646970;
}
.ultrapress .ultrapress-peak-day {
    padding-inline-end: 6px;
    font-size: 12px;
    line-height: 16px;
    color: #50575e;
}
.ultrapress .ultrapress-cell {
    height: 16px;
    border-radius: 3px;
    background: #2271b1;
}
.ultrapress .ultrapress-cell-empty {
    background: #f0f0f1;
}
.ultrapress .ultrapress-analysing {
    background: #f0f6fc;
    border-radius: 6px;
    padding: 4px 12px;
}
.ultrapress .ultrapress-analysis {
    border-top: 1px solid #dcdcde;
    margin-top: 16px;
    padding-top: 4px;
}
.ultrapress .ultrapress-analysis.ultrapress-card {
    border-top: 1px solid #c3c4c7;
}
.ultrapress .ultrapress-section-title {
    margin-bottom: 0;
}
.ultrapress .ultrapress-rules li {
    margin: 0 0 10px;
    padding-inline-start: 12px;
    border-inline-start: 3px solid #9ec2e6;
}
.ultrapress .ultrapress-rules span,
.ultrapress .ultrapress-rules del {
    display: block;
}
.ultrapress .ultrapress-review {
    margin-top: 16px;
    padding: 4px 12px 12px;
    background: #f6f7f7;
    border-radius: 6px;
}
.ultrapress .ultrapress-earlier {
    margin-top: 16px;
}
.ultrapress[dir="rtl"] .ultrapress-tile {
    text-align: right;
}
@media (max-width: 600px) {
    .ultrapress .ultrapress-tile-value {
        font-size: 22px;
    }
    .ultrapress .ultrapress-ring-chart {
        gap: 12px;
    }
    .ultrapress .ultrapress-ring {
        flex-basis: 80px;
        width: 80px;
        height: 80px;
    }
}

/* The settings pages (Step 5c): Business & hours, Look, Settings, and the two notices */
.ultrapress .ultrapress-field input[type="color"] {
    width: 64px;
    height: 36px;
    padding: 2px;
}
.ultrapress .ultrapress-field textarea,
.ultrapress .ultrapress-field select {
    width: 100%;
    max-width: 420px;
}
.ultrapress .ultrapress-week {
    margin: 16px 0;
    border: 0;
    padding: 0;
}
.ultrapress .ultrapress-week legend {
    font-weight: 600;
}
.ultrapress .ultrapress-day-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 12px;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f1;
}
.ultrapress .ultrapress-day-row.ultrapress-invalid {
    background: #fcf0f1;
}
.ultrapress .ultrapress-day-name {
    font-weight: 600;
    min-width: 90px;
}
.ultrapress .ultrapress-ranges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
}
.ultrapress .ultrapress-range {
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 10px;
}
.ultrapress .ultrapress-ranges label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.ultrapress .ultrapress-ranges input[type="time"] {
    width: 7.5em;
}
.ultrapress .ultrapress-day-row .ultrapress-error {
    flex-basis: 100%;
}
.ultrapress .ultrapress-dates,
.ultrapress .ultrapress-calendars,
.ultrapress .ultrapress-facts {
    margin: 8px 0;
    padding: 0;
    list-style: none;
}
.ultrapress .ultrapress-dates li,
.ultrapress .ultrapress-calendars li,
.ultrapress .ultrapress-facts li {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 6px 12px;
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f1;
    overflow-wrap: anywhere;
}
.ultrapress .ultrapress-calendars li {
    flex-direction: column;
}
.ultrapress .ultrapress-facts li > p {
    flex: 1 1 100%;
    margin: 0;
}
.ultrapress .ultrapress-facts li details {
    flex: 0 1 auto;
}
.ultrapress .ultrapress-section h3 {
    margin-bottom: 4px;
}
.ultrapress .ultrapress-remove {
    color: #b32d2e;
}
.ultrapress .button.ultrapress-danger {
    color: #b32d2e;
    border-color: #b32d2e;
}
.ultrapress .ultrapress-date-fields .ultrapress-field input {
    max-width: 240px;
}
.ultrapress .ultrapress-media-pick {
    margin: -8px 0 16px;
}
.ultrapress-whatsnew.notice {
    padding: 4px 16px 12px;
}
.ultrapress-whatsnew h2 {
    margin: 12px 0 4px;
}
.ultrapress-whatsnew .ultrapress-bullets {
    list-style: disc;
    margin-inline-start: 20px;
}
.ultrapress-whatsnew .ultrapress-whatsnew-actions,
.ultrapress .ultrapress-review .ultrapress-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
@media (max-width: 600px) {
    .ultrapress .ultrapress-day-name {
        flex-basis: 100%;
    }
}
