:root {
    --lstms-primary: #142f3f;
    --lstms-background: #f4efea;
    --lstms-text: #000000;
    --lstms-muted: #545454;
    --lstms-white: #ffffff;
    --lstms-quick: #ff5757;
    --lstms-detailed: #7ed957;
    --lstms-project: #0cc0df;
    --lstms-bulk: #e2a9f1;
    --lstms-meeting: #ff9137;
    --lstms-border: #292929;
    --lstms-placeholder: #a7a7a7;
    --lstms-hover-dark: #0a1d29;
    --lstms-hover-gold: #e2ac73;
}

.lstms-app-shell,
.lstms-app-shell * {
    box-sizing: border-box;
}

.lstms-app-shell [hidden] {
    display: none !important;
}

.lstms-app-shell .screen-reader-text {
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    position: absolute !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.lstms-app-shell {
    width: 100vw;
    min-height: 100vh;
    position: relative;
    left: 50%;
    margin-left: -50vw;
    padding: clamp(20px, 2.2vw, 35px) clamp(24px, 3.75vw, 60px) clamp(24px, 3.75vw, 60px);
    background: var(--lstms-background);
    color: var(--lstms-text);
    font-family: "Poppins", sans-serif;
    overflow-x: hidden;
}

.lstms-topbar {
    width: 100%;
    min-height: clamp(74px, 6.25vw, 100px);
    display: flex;
    align-items: center;
    gap: clamp(18px, 2.5vw, 40px);
    padding: clamp(12px, 1.5vw, 24px) clamp(18px, 2.25vw, 36px);
    background: var(--lstms-white);
    border-radius: 999px;
}

.lstms-page-title {
    flex: 1 1 auto;
    min-width: max-content;
    margin: 0;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(24px, 2vw, 32px);
    font-weight: 500;
    line-height: 1.15;
}

.lstms-task-types {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(7px, 0.75vw, 12px);
    min-width: 0;
}

.lstms-task-type {
    flex: 0 1 auto;
    min-width: clamp(116px, 12.2vw, 195px);
    min-height: clamp(42px, 3.5vw, 56px);
    padding: 0 clamp(13px, 1.5vw, 24px);
    border: 0;
    border-radius: 999px;
    color: var(--lstms-white);
    font-family: "Poppins", sans-serif;
    font-size: clamp(12px, 1.06vw, 17px);
    font-weight: 300;
    line-height: 1.2;
    letter-spacing: 0.037em;
    text-transform: capitalize;
    white-space: nowrap;
    box-shadow: none;
    transition: transform 160ms ease, background-color 160ms ease;
}

.lstms-task-type:not(:disabled) {
    cursor: pointer;
}

.lstms-task-type:not(:disabled):hover,
.lstms-task-type[aria-current="page"] {
    background: #0a1d29;
}

.lstms-task-type:not(:disabled):hover {
    transform: translateY(-1px);
}

.lstms-task-type:focus-visible,
.lstms-save-button:focus-visible,
.lstms-add-subtask-button:focus-visible,
.lstms-remove-subtask:focus-visible,
.lstms-multiselect__trigger:focus-visible,
.lstms-task-form input:focus-visible,
.lstms-task-form select:focus-visible,
.lstms-task-form textarea:focus-visible {
    outline: 3px solid rgba(20, 47, 63, 0.22);
    outline-offset: 2px;
}

.lstms-task-type--quick {
    background: var(--lstms-quick);
}

.lstms-task-type--detailed {
    background: var(--lstms-detailed);
}

.lstms-task-type--project {
    background: var(--lstms-project);
}

.lstms-task-type--bulk {
    background: var(--lstms-bulk);
}

.lstms-task-type--meeting {
    background: var(--lstms-meeting);
}

.lstms-task-type:disabled {
    opacity: 1;
    cursor: default;
}

.lstms-form-card {
    width: min(100%, 1320px);
    margin: 20px auto 0;
    padding: clamp(22px, 2vw, 32px) clamp(22px, 2.2vw, 36px);
    background: var(--lstms-white);
    border-radius: clamp(18px, 1.5vw, 24px);
}

.lstms-form-card--detailed {
    padding-bottom: clamp(26px, 2.5vw, 40px);
}

.lstms-form-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: clamp(24px, 2vw, 32px);
}

.lstms-form-heading--detailed {
    margin-bottom: clamp(20px, 1.7vw, 27px);
}

.lstms-form-heading__icon {
    width: clamp(24px, 1.75vw, 28px);
    height: clamp(24px, 1.75vw, 28px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--lstms-quick);
}

.lstms-form-heading__icon--detailed {
    background: var(--lstms-detailed);
}

.lstms-form-heading__icon svg {
    width: 62%;
    height: 62%;
    display: block;
    fill: var(--lstms-white);
}

.lstms-subheader {
    margin: 0;
    color: var(--lstms-muted);
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.94vw, 15px);
    font-weight: 300;
    line-height: 1.4;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.lstms-detailed-intro {
    margin: 0;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(14px, 1.06vw, 17px);
    font-weight: 500;
    line-height: 1.35;
}

.lstms-form-grid,
.lstms-detailed-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: clamp(16px, 1.4vw, 22px) clamp(14px, 1.15vw, 18px);
}

.lstms-field {
    min-width: 0;
}

.lstms-field--title {
    grid-column: span 6;
}

.lstms-field--due-date,
.lstms-field--priority,
.lstms-field--status {
    grid-column: span 2;
}

.lstms-field--category,
.lstms-field--brand {
    grid-column: span 4;
}

.lstms-field label {
    display: block;
    margin: 0 0 8px 3px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(13px, 1vw, 16px);
    font-weight: 400;
    line-height: 1.35;
}

.lstms-task-form input:not([type="hidden"]):not([type="checkbox"]),
.lstms-task-form select,
.lstms-task-form textarea,
.lstms-multiselect__trigger {
    width: 100%;
    margin: 0;
    border: 1px solid var(--lstms-border);
    background: var(--lstms-white);
    color: #202020;
    font-family: "Poppins", sans-serif;
    font-size: clamp(12px, 0.94vw, 15px);
    font-weight: 300;
    box-shadow: none;
}

.lstms-task-form input:not([type="hidden"]):not([type="checkbox"]),
.lstms-task-form select,
.lstms-multiselect__trigger {
    height: clamp(44px, 3.25vw, 52px);
    padding: 0 clamp(14px, 1.15vw, 18px);
    border-radius: 999px;
    line-height: 1;
}

.lstms-task-form select {
    appearance: auto;
}

.lstms-task-form textarea {
    min-height: clamp(52px, 4.5vw, 72px);
    padding: clamp(13px, 1vw, 16px) clamp(14px, 1.15vw, 18px);
    border-radius: clamp(22px, 1.8vw, 28px);
    line-height: 1.45;
    resize: vertical;
}

.lstms-task-form input::placeholder,
.lstms-task-form textarea::placeholder {
    color: var(--lstms-placeholder);
    opacity: 1;
    font-style: italic;
}

.lstms-task-form input[type="date"] {
    color-scheme: light;
}

.lstms-save-button {
    min-width: clamp(160px, 12.25vw, 196px);
    min-height: clamp(46px, 3.5vw, 56px);
    margin-top: clamp(24px, 2vw, 32px);
    padding: 0 clamp(22px, 1.9vw, 30px);
    border: 0;
    border-radius: 999px;
    background: var(--lstms-quick);
    color: var(--lstms-white);
    font-family: "Poppins", sans-serif;
    font-size: clamp(14px, 1.06vw, 17px);
    font-weight: 300;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: transform 160ms ease, box-shadow 160ms ease;
}

.lstms-save-button--detailed {
    background: var(--lstms-detailed);
}

.lstms-save-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(20, 47, 63, 0.14);
}

.lstms-notice {
    width: min(100%, 1320px);
    margin: 20px auto 0;
    padding: 14px 18px;
    border-radius: 14px;
    font-size: clamp(13px, 0.94vw, 15px);
    font-weight: 400;
}

.lstms-notice--success {
    background: #e9f8e5;
    color: #24551c;
    border: 1px solid #bfe4b5;
}

.lstms-notice--error {
    background: #fff0f0;
    color: #7d2323;
    border: 1px solid #f0bcbc;
}

/* Detailed task form */
.lstms-detailed-section + .lstms-detailed-section {
    margin-top: clamp(20px, 1.65vw, 27px);
}

.lstms-section-title {
    margin: 0 0 clamp(8px, 0.7vw, 11px) 2px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.82vw, 13px);
    font-weight: 600;
    line-height: 1.25;
    text-transform: uppercase;
}

.lstms-section-title--with-subtext {
    margin-bottom: 3px;
}

.lstms-section-help {
    margin: 0;
    color: var(--lstms-muted);
    font-size: clamp(10px, 0.78vw, 12px);
    font-weight: 300;
    line-height: 1.4;
}

.lstms-section-title-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 12px;
}

.lstms-detailed-field--title {
    grid-column: span 7;
}

.lstms-detailed-grid--timing > .lstms-field:nth-child(1),
.lstms-detailed-grid--timing > .lstms-field:nth-child(2) {
    grid-column: span 2;
}

.lstms-detailed-grid--timing > .lstms-duration-field {
    grid-column: span 3;
}

.lstms-detailed-grid--timing > .lstms-field:nth-child(4) {
    grid-column: span 2;
}

.lstms-detailed-grid--timing > .lstms-recurring-type-field {
    grid-column: span 3;
}

.lstms-detailed-grid--organization > .lstms-field:nth-child(1),
.lstms-detailed-grid--organization > .lstms-field:nth-child(2) {
    grid-column: span 3;
}

.lstms-detailed-grid--organization > .lstms-field:nth-child(3),
.lstms-detailed-grid--organization > .lstms-field:nth-child(4),
.lstms-detailed-grid--organization > .lstms-field:nth-child(5) {
    grid-column: span 2;
}

.lstms-detailed-grid--relationships > .lstms-field {
    grid-column: span 4;
}

.lstms-duration-inputs {
    height: clamp(44px, 3.25vw, 52px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 6px;
    padding: 0 clamp(10px, 0.85vw, 14px);
    border: 1px solid var(--lstms-border);
    border-radius: 999px;
    background: var(--lstms-white);
}

.lstms-duration-inputs input:not([type="hidden"]):not([type="checkbox"]) {
    height: 100%;
    min-width: 0;
    padding: 0 2px;
    border: 0;
    border-radius: 0;
    text-align: center;
    appearance: textfield;
}

.lstms-duration-inputs input::-webkit-outer-spin-button,
.lstms-duration-inputs input::-webkit-inner-spin-button,
.lstms-subtask-row input[type="number"]::-webkit-outer-spin-button,
.lstms-subtask-row input[type="number"]::-webkit-inner-spin-button {
    margin: 0;
    appearance: none;
}

.lstms-duration-inputs span {
    color: #777777;
    font-weight: 300;
}

/* Dependencies */
.lstms-multiselect {
    position: relative;
}

.lstms-multiselect__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    text-align: left;
    cursor: pointer;
}

.lstms-multiselect__trigger > span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lstms-select-chevron {
    width: 9px;
    height: 9px;
    flex: 0 0 auto;
    border-right: 1px solid #9ea8ad;
    border-bottom: 1px solid #9ea8ad;
    transform: rotate(45deg) translateY(-2px);
}

.lstms-multiselect__panel {
    width: 100%;
    max-height: 230px;
    position: absolute;
    z-index: 20;
    top: calc(100% + 7px);
    left: 0;
    overflow-y: auto;
    padding: 8px;
    border: 1px solid rgba(20, 47, 63, 0.18);
    border-radius: 16px;
    background: var(--lstms-white);
    box-shadow: 0 14px 34px rgba(20, 47, 63, 0.14);
}

.lstms-multiselect__option {
    display: flex !important;
    align-items: flex-start;
    gap: 9px;
    margin: 0 !important;
    padding: 9px 10px;
    border-radius: 10px;
    color: var(--lstms-primary) !important;
    font-size: clamp(11px, 0.86vw, 14px) !important;
    line-height: 1.35 !important;
    cursor: pointer;
}

.lstms-multiselect__option:hover {
    background: #f5f7f7;
}

.lstms-multiselect__option input[type="checkbox"] {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
    margin: 1px 0 0;
    accent-color: var(--lstms-detailed);
}

.lstms-multiselect__empty {
    margin: 0;
    padding: 10px;
    color: var(--lstms-muted);
    font-size: 12px;
}

/* Subtasks */
.lstms-subtask-labels,
.lstms-subtask-row {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) minmax(150px, 0.28fr) minmax(78px, 0.13fr) minmax(78px, 0.13fr) 42px;
    gap: clamp(8px, 0.8vw, 13px);
    align-items: center;
}

.lstms-subtask-labels {
    padding: 0 3px 7px;
    color: var(--lstms-primary);
    font-size: clamp(10px, 0.76vw, 12px);
    font-weight: 400;
}

.lstms-subtask-list {
    display: grid;
    gap: 10px;
}

.lstms-subtask-field {
    min-width: 0;
}

.lstms-subtask-row input:not([type="hidden"]):not([type="checkbox"]) {
    height: clamp(42px, 3vw, 48px);
}

.lstms-remove-subtask {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(20, 47, 63, 0.24);
    border-radius: 50%;
    background: var(--lstms-white);
    color: var(--lstms-primary);
    font-family: Arial, sans-serif;
    font-size: 23px;
    font-weight: 300;
    line-height: 1;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease, border-color 150ms ease;
}

.lstms-remove-subtask:hover {
    border-color: var(--lstms-quick);
    background: var(--lstms-quick);
    color: var(--lstms-white);
}

.lstms-add-subtask-button {
    min-height: 38px;
    padding: 0 17px;
    border: 1px solid var(--lstms-detailed);
    border-radius: 999px;
    background: var(--lstms-white);
    color: #397b20;
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.84vw, 13px);
    font-weight: 400;
    white-space: nowrap;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.lstms-add-subtask-button:hover {
    background: var(--lstms-detailed);
    color: var(--lstms-white);
}

.lstms-add-subtask-button span {
    display: inline-block;
    margin-right: 4px;
    font-size: 18px;
    line-height: 1;
    vertical-align: -1px;
}

@media (max-width: 1120px) {
    .lstms-detailed-field--title {
        grid-column: span 8;
    }

    .lstms-detailed-grid--timing > .lstms-field:nth-child(1),
    .lstms-detailed-grid--timing > .lstms-field:nth-child(2),
    .lstms-detailed-grid--timing > .lstms-field:nth-child(4) {
        grid-column: span 3;
    }

    .lstms-detailed-grid--timing > .lstms-duration-field {
        grid-column: span 3;
    }

    .lstms-detailed-grid--timing > .lstms-recurring-type-field {
        grid-column: span 5;
    }

    .lstms-detailed-grid--organization > .lstms-field:nth-child(1),
    .lstms-detailed-grid--organization > .lstms-field:nth-child(2) {
        grid-column: span 4;
    }

    .lstms-detailed-grid--organization > .lstms-field:nth-child(3),
    .lstms-detailed-grid--organization > .lstms-field:nth-child(4) {
        grid-column: span 2;
    }

    .lstms-detailed-grid--organization > .lstms-field:nth-child(5) {
        grid-column: span 4;
    }

    .lstms-detailed-grid--relationships > .lstms-field {
        grid-column: span 6;
    }

    .lstms-subtask-labels,
    .lstms-subtask-row {
        grid-template-columns: minmax(210px, 1fr) 155px 78px 78px 40px;
    }
}

@media (max-width: 940px) {
    .lstms-topbar {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 28px;
    }

    .lstms-task-types {
        width: 100%;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 3px;
        scrollbar-width: thin;
    }

    .lstms-task-type {
        min-width: 148px;
    }

    .lstms-field--title {
        grid-column: span 12;
    }

    .lstms-field--due-date,
    .lstms-field--priority,
    .lstms-field--status {
        grid-column: span 4;
    }

    .lstms-field--category,
    .lstms-field--brand {
        grid-column: span 6;
    }

    .lstms-detailed-field--title {
        grid-column: span 10;
    }

    .lstms-subtask-labels {
        display: none;
    }

    .lstms-subtask-row {
        grid-template-columns: minmax(0, 1fr) minmax(150px, 0.45fr) 82px 82px 40px;
    }
}

@media (max-width: 760px) {
    .lstms-detailed-field--title,
    .lstms-detailed-grid--timing > .lstms-field,
    .lstms-detailed-grid--timing > .lstms-duration-field,
    .lstms-detailed-grid--timing > .lstms-recurring-type-field,
    .lstms-detailed-grid--organization > .lstms-field,
    .lstms-detailed-grid--relationships > .lstms-field {
        grid-column: span 6 !important;
    }

    .lstms-subtask-row {
        grid-template-columns: minmax(0, 1fr) minmax(145px, 0.55fr) 42px;
        padding: 12px;
        border: 1px solid rgba(20, 47, 63, 0.13);
        border-radius: 20px;
    }

    .lstms-subtask-field--title {
        grid-column: 1 / -1;
    }

    .lstms-subtask-row .lstms-subtask-field:nth-of-type(2) {
        grid-column: 1 / 3;
    }

    .lstms-subtask-row .lstms-subtask-field:nth-of-type(3),
    .lstms-subtask-row .lstms-subtask-field:nth-of-type(4) {
        min-width: 0;
    }

    .lstms-remove-subtask {
        grid-column: 3;
        grid-row: 2 / span 2;
        align-self: center;
    }
}

@media (max-width: 640px) {
    .lstms-app-shell {
        padding: 20px 16px 28px;
    }

    .lstms-topbar {
        min-height: 0;
        padding: 20px;
        border-radius: 24px;
    }

    .lstms-task-types {
        margin-right: -20px;
        padding-right: 20px;
    }

    .lstms-task-type {
        min-width: 138px;
    }

    .lstms-form-card {
        padding: 22px 18px 24px;
    }

    .lstms-field--due-date,
    .lstms-field--priority,
    .lstms-field--status,
    .lstms-field--category,
    .lstms-field--brand,
    .lstms-detailed-field--title,
    .lstms-detailed-grid--timing > .lstms-field,
    .lstms-detailed-grid--timing > .lstms-duration-field,
    .lstms-detailed-grid--timing > .lstms-recurring-type-field,
    .lstms-detailed-grid--organization > .lstms-field,
    .lstms-detailed-grid--relationships > .lstms-field {
        grid-column: span 12 !important;
    }

    .lstms-section-title-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .lstms-add-subtask-button {
        width: 100%;
    }

    .lstms-subtask-row {
        grid-template-columns: 1fr 1fr;
    }

    .lstms-subtask-field--title,
    .lstms-subtask-row .lstms-subtask-field:nth-of-type(2) {
        grid-column: 1 / -1;
    }

    .lstms-remove-subtask {
        width: 100%;
        height: 38px;
        grid-column: 1 / -1;
        grid-row: auto;
        border-radius: 999px;
    }

    .lstms-save-button {
        width: 100%;
    }
}

/* Reminder fields and Big Project form */
.lstms-field--reminder {
    grid-column: span 2;
}

.lstms-detailed-grid--closing > .lstms-closing-notes {
    grid-column: span 10;
}

.lstms-detailed-grid--closing > .lstms-closing-reminder {
    grid-column: span 2;
}

.lstms-form-heading__icon--project {
    background: var(--lstms-project);
}

.lstms-form-card--project {
    padding-bottom: clamp(30px, 3vw, 48px);
}

.lstms-save-button--project {
    background: var(--lstms-project);
}

.lstms-project-grid--timing > .lstms-field:nth-child(1),
.lstms-project-grid--timing > .lstms-field:nth-child(2) {
    grid-column: span 2;
}

.lstms-project-grid--timing > .lstms-duration-field {
    grid-column: span 3;
}

.lstms-project-grid--relationships > .lstms-field {
    grid-column: span 3;
}

.lstms-field--inactive input:disabled,
.lstms-field--inactive select:disabled {
    cursor: not-allowed;
    color: #8d8d8d;
    background: #fafafa;
    opacity: 1;
}

.lstms-project-title-row {
    align-items: center;
}

.lstms-add-subtask-button--project,
.lstms-project-form .lstms-add-subtask-button {
    border-color: var(--lstms-project);
    color: #08758a;
}

.lstms-add-subtask-button--project:hover,
.lstms-project-form .lstms-add-subtask-button:hover {
    background: var(--lstms-project);
    color: var(--lstms-white);
}

.lstms-milestone-list {
    display: grid;
    gap: clamp(20px, 2vw, 32px);
}

.lstms-milestone-card {
    padding: clamp(18px, 1.7vw, 26px) 0 0;
    border-top: 1px solid rgba(20, 47, 63, 0.14);
}

.lstms-milestone-card:first-child {
    padding-top: 0;
    border-top: 0;
}

.lstms-milestone-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 9px;
    color: var(--lstms-primary);
    font-size: clamp(11px, 0.82vw, 13px);
    font-weight: 600;
    text-transform: uppercase;
}

.lstms-remove-milestone {
    width: 34px;
    height: 34px;
    font-size: 20px;
}

.lstms-project-item-labels,
.lstms-project-item-row {
    display: grid;
    align-items: center;
    gap: clamp(8px, 0.75vw, 12px);
}

.lstms-project-item-labels--milestone,
.lstms-project-item-row--milestone {
    grid-template-columns: minmax(260px, 1fr) minmax(145px, 0.27fr) minmax(72px, 0.12fr) minmax(72px, 0.12fr) minmax(145px, 0.24fr);
}

.lstms-project-item-labels--subtask,
.lstms-project-item-row--subtask {
    grid-template-columns: minmax(250px, 1fr) minmax(145px, 0.27fr) minmax(72px, 0.12fr) minmax(72px, 0.12fr) minmax(145px, 0.24fr) 40px;
}

.lstms-project-item-labels {
    padding: 0 3px 7px;
    color: var(--lstms-primary);
    font-size: clamp(9px, 0.72vw, 11px);
    font-weight: 400;
}

.lstms-project-item-row input:not([type="hidden"]):not([type="checkbox"]),
.lstms-project-item-row select {
    height: clamp(40px, 2.8vw, 46px);
    min-width: 0;
}

.lstms-project-subtasks {
    margin: clamp(18px, 1.5vw, 24px) 0 0 clamp(20px, 4vw, 64px);
    padding-left: clamp(14px, 1.5vw, 24px);
    border-left: 2px solid rgba(12, 192, 223, 0.18);
}

.lstms-project-subtasks-heading {
    align-items: center;
    margin-bottom: 10px;
}

.lstms-project-subtasks-heading h4 {
    margin: 0 0 3px;
    color: var(--lstms-primary);
    font-size: clamp(10px, 0.78vw, 12px);
    font-weight: 600;
    text-transform: uppercase;
}

.lstms-project-subtasks-heading p {
    margin: 0;
    color: var(--lstms-muted);
    font-size: clamp(9px, 0.72vw, 11px);
    font-weight: 300;
}

.lstms-project-subtask-list {
    display: grid;
    gap: 10px;
}

.lstms-project-progress-note {
    margin-top: 18px;
    color: var(--lstms-muted);
    font-size: clamp(11px, 0.82vw, 13px);
    font-weight: 300;
}

@media (max-width: 1120px) {
    .lstms-project-grid--timing > .lstms-field:nth-child(1),
    .lstms-project-grid--timing > .lstms-field:nth-child(2),
    .lstms-project-grid--timing > .lstms-duration-field {
        grid-column: span 4;
    }

    .lstms-project-grid--relationships > .lstms-field {
        grid-column: span 6;
    }

    .lstms-project-item-labels--milestone,
    .lstms-project-item-row--milestone {
        grid-template-columns: minmax(210px, 1fr) 145px 70px 70px 140px;
    }

    .lstms-project-item-labels--subtask,
    .lstms-project-item-row--subtask {
        grid-template-columns: minmax(200px, 1fr) 140px 68px 68px 135px 38px;
    }
}

@media (max-width: 940px) {
    .lstms-field--reminder {
        grid-column: span 4;
    }

    .lstms-detailed-grid--closing > .lstms-closing-notes {
        grid-column: span 8;
    }

    .lstms-detailed-grid--closing > .lstms-closing-reminder {
        grid-column: span 4;
    }

    .lstms-project-item-labels {
        display: none;
    }

    .lstms-project-item-row--milestone,
    .lstms-project-item-row--subtask {
        grid-template-columns: minmax(0, 1fr) 145px 72px 72px 140px 38px;
        padding: 12px;
        border: 1px solid rgba(20, 47, 63, 0.11);
        border-radius: 18px;
    }

    .lstms-project-item-row--milestone {
        grid-template-columns: minmax(0, 1fr) 145px 72px 72px 140px;
    }
}

@media (max-width: 760px) {
    .lstms-field--reminder,
    .lstms-detailed-grid--closing > .lstms-closing-notes,
    .lstms-detailed-grid--closing > .lstms-closing-reminder,
    .lstms-project-grid--timing > .lstms-field,
    .lstms-project-grid--relationships > .lstms-field {
        grid-column: span 6 !important;
    }

    .lstms-project-subtasks {
        margin-left: 0;
    }

    .lstms-project-item-row--milestone,
    .lstms-project-item-row--subtask {
        grid-template-columns: 1fr 1fr;
    }

    .lstms-project-item-row .lstms-subtask-field--title {
        grid-column: 1 / -1;
    }

    .lstms-project-item-row--subtask .lstms-remove-subtask {
        width: 100%;
        grid-column: 1 / -1;
        border-radius: 999px;
    }
}

@media (max-width: 640px) {
    .lstms-field--reminder,
    .lstms-detailed-grid--closing > .lstms-closing-notes,
    .lstms-detailed-grid--closing > .lstms-closing-reminder,
    .lstms-project-grid--timing > .lstms-field,
    .lstms-project-grid--relationships > .lstms-field {
        grid-column: span 12 !important;
    }

    .lstms-project-subtasks {
        padding-left: 10px;
    }

    .lstms-project-item-row--milestone,
    .lstms-project-item-row--subtask {
        grid-template-columns: 1fr;
    }

    .lstms-project-item-row .lstms-subtask-field--title,
    .lstms-project-item-row--subtask .lstms-remove-subtask {
        grid-column: 1;
    }
}

/* Bulk Add form */
.lstms-form-heading__icon--bulk {
    background: var(--lstms-bulk);
}

.lstms-form-card--bulk {
    padding-bottom: clamp(28px, 2.6vw, 42px);
}

.lstms-form-heading--bulk {
    margin-bottom: clamp(20px, 1.7vw, 27px);
}

.lstms-bulk-field--tasks {
    grid-column: 1 / -1;
}

.lstms-bulk-form textarea#lstms-bulk-tasks {
    min-height: clamp(140px, 9vw, 205px);
    border-radius: clamp(30px, 2.8vw, 46px);
    padding: clamp(16px, 1.2vw, 20px) clamp(18px, 1.6vw, 26px);
}

.lstms-bulk-field--due-date,
.lstms-bulk-field--priority,
.lstms-bulk-field--status,
.lstms-bulk-field--reminder {
    grid-column: span 2;
}

.lstms-bulk-field--category,
.lstms-bulk-field--brand {
    grid-column: span 4;
}

.lstms-save-button--bulk {
    background: var(--lstms-bulk);
}

@media (max-width: 940px) {
    .lstms-bulk-field--due-date,
    .lstms-bulk-field--priority,
    .lstms-bulk-field--status,
    .lstms-bulk-field--reminder {
        grid-column: span 3;
    }

    .lstms-bulk-field--category,
    .lstms-bulk-field--brand {
        grid-column: span 6;
    }
}

@media (max-width: 640px) {
    .lstms-bulk-field--due-date,
    .lstms-bulk-field--priority,
    .lstms-bulk-field--status,
    .lstms-bulk-field--reminder,
    .lstms-bulk-field--category,
    .lstms-bulk-field--brand {
        grid-column: span 12;
    }
}

/* New Entry: meetings and standalone reminders */
.lstms-task-type--entry {
    background: var(--lstms-meeting);
}

.lstms-form-heading__icon--entry {
    background: var(--lstms-meeting);
}

.lstms-form-card--entry {
    padding-bottom: clamp(28px, 2.6vw, 42px);
}

.lstms-form-heading--entry {
    margin-bottom: clamp(18px, 1.55vw, 25px);
}

.lstms-entry-selector {
    width: min(100%, 245px);
    margin-bottom: clamp(28px, 2.4vw, 38px);
}

.lstms-entry-selector label {
    display: block;
    margin: 0 0 8px 3px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.82vw, 13px);
    font-weight: 600;
    line-height: 1.25;
    text-transform: uppercase;
}

.lstms-entry-selector select {
    width: 100%;
    height: clamp(44px, 3.25vw, 52px);
    margin: 0;
    padding: 0 clamp(14px, 1.15vw, 18px);
    border: 1px solid var(--lstms-border);
    border-radius: 999px;
    background: var(--lstms-white);
    color: #202020;
    font-family: "Poppins", sans-serif;
    font-size: clamp(12px, 0.94vw, 15px);
    font-weight: 300;
    line-height: 1;
    box-shadow: none;
}

.lstms-entry-selector select:focus-visible {
    outline: 3px solid rgba(20, 47, 63, 0.22);
    outline-offset: 2px;
}

.lstms-entry-selector select:disabled {
    color: #202020;
    background: #fafafa;
    opacity: 1;
}

.lstms-entry-form-wrap + .lstms-entry-form-wrap {
    margin-top: 24px;
}

.lstms-entry-form-label {
    width: fit-content;
    min-width: clamp(170px, 13.5vw, 215px);
    min-height: clamp(40px, 3vw, 48px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 clamp(20px, 1.7vw, 27px);
    padding: 0 clamp(20px, 1.6vw, 26px);
    border-radius: 999px;
    background: var(--lstms-primary);
    color: var(--lstms-white);
    font-family: "Poppins", sans-serif;
    font-size: clamp(13px, 1vw, 16px);
    font-weight: 300;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.lstms-entry-field--title {
    grid-column: span 4;
}

.lstms-entry-field--date,
.lstms-entry-field--time,
.lstms-entry-field--location-type,
.lstms-entry-field--status,
.lstms-entry-field--recurring,
.lstms-entry-field--recurring-type {
    grid-column: span 2;
}

.lstms-entry-field--location-details,
.lstms-entry-field--category,
.lstms-entry-field--brand {
    grid-column: span 4;
}

.lstms-entry-field--notes {
    grid-column: 1 / -1;
}

.lstms-entry-form textarea {
    min-height: clamp(48px, 3.6vw, 58px);
}

.lstms-save-button--entry {
    background: var(--lstms-meeting);
}

@media (max-width: 1120px) {
    .lstms-entry-field--title,
    .lstms-entry-field--location-details,
    .lstms-entry-field--category,
    .lstms-entry-field--brand {
        grid-column: span 6;
    }

    .lstms-entry-field--date,
    .lstms-entry-field--time,
    .lstms-entry-field--location-type,
    .lstms-entry-field--status,
    .lstms-entry-field--recurring,
    .lstms-entry-field--recurring-type {
        grid-column: span 3;
    }
}

@media (max-width: 760px) {
    .lstms-entry-field--title,
    .lstms-entry-field--location-details,
    .lstms-entry-field--category,
    .lstms-entry-field--brand {
        grid-column: span 12;
    }

    .lstms-entry-field--date,
    .lstms-entry-field--time,
    .lstms-entry-field--location-type,
    .lstms-entry-field--status,
    .lstms-entry-field--recurring,
    .lstms-entry-field--recurring-type {
        grid-column: span 6;
    }
}

@media (max-width: 640px) {
    .lstms-entry-selector {
        width: 100%;
    }

    .lstms-entry-form-label {
        width: 100%;
    }

    .lstms-entry-field--date,
    .lstms-entry-field--time,
    .lstms-entry-field--location-type,
    .lstms-entry-field--status,
    .lstms-entry-field--recurring,
    .lstms-entry-field--recurring-type {
        grid-column: span 12;
    }
}

/* All Tasks page */
.lstms-all-tasks-shell {
    --lstms-list: #0cc0df;
    --lstms-kanban: #e2a9f1;
    --lstms-calendar: #ff9137;
    --lstms-focus: #ff5757;
    --lstms-active-dark: #0a1d29;
    padding-top: clamp(20px, 2.2vw, 35px);
}

.lstms-all-tasks-topbar {
    width: 100%;
    min-height: clamp(74px, 6.25vw, 100px);
    display: grid;
    grid-template-columns: minmax(max-content, 0.72fr) minmax(240px, 1fr) minmax(520px, 1.7fr);
    align-items: center;
    gap: clamp(16px, 2vw, 32px);
    padding: clamp(12px, 1.35vw, 22px) clamp(18px, 2.25vw, 36px);
    background: var(--lstms-white);
    border-radius: 999px;
}

.lstms-task-search {
    min-width: 0;
}

.lstms-task-search input {
    width: 100%;
    height: clamp(40px, 3.2vw, 51px);
    margin: 0;
    padding: 0 clamp(16px, 1.4vw, 23px);
    border: 1px solid var(--lstms-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.85vw, 14px);
    font-weight: 300;
    box-shadow: none;
}

.lstms-task-search input::placeholder {
    color: #a7a7a7;
    font-style: italic;
}

.lstms-task-search input:focus-visible,
.lstms-filter-row select:focus-visible,
.lstms-more-filters select:focus-visible,
.lstms-more-filters input:focus-visible,
.lstms-filter-toggle:focus-visible,
.lstms-clear-filters:focus-visible,
.lstms-view-button:focus-visible,
.lstms-task-expand:focus-visible,
.lstms-task-title-button:focus-visible,
.lstms-status-select:focus-visible,
.lstms-delete-task:focus-visible {
    outline: 3px solid rgba(20, 47, 63, 0.22);
    outline-offset: 2px;
}

.lstms-summary-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: clamp(12px, 1.45vw, 24px);
    min-width: 0;
}

.lstms-summary-card {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: clamp(9px, 0.8vw, 13px);
}

.lstms-summary-card__icon {
    width: clamp(44px, 3.65vw, 58px);
    height: clamp(44px, 3.65vw, 58px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    color: #ffffff;
}

.lstms-summary-card--open .lstms-summary-card__icon {
    background: #ff5757;
}

.lstms-summary-card--done .lstms-summary-card__icon {
    background: #7ed957;
}

.lstms-summary-card--progress .lstms-summary-card__icon {
    background: #ffd75a;
}

.lstms-summary-card__icon svg {
    width: 58%;
    height: 58%;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lstms-summary-card__copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.lstms-summary-card__label {
    color: #707070;
    font-family: "Poppins", sans-serif;
    font-size: clamp(8px, 0.72vw, 11px);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lstms-summary-card strong {
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(21px, 1.75vw, 28px);
    font-weight: 600;
    line-height: 1.05;
}

.lstms-all-tasks-notice {
    width: min(100%, 1320px);
    margin: 16px auto 0;
}

.lstms-task-tools {
    width: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: clamp(20px, 2vw, 32px);
    margin-top: clamp(20px, 2vw, 32px);
}

.lstms-filter-area {
    flex: 0 1 clamp(430px, 34vw, 520px);
    width: clamp(430px, 34vw, 520px);
    min-width: 0;
}

.lstms-filter-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 8px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(12px, 0.9vw, 15px);
    font-weight: 500;
    line-height: 1.2;
}

.lstms-filter-heading__icon {
    width: clamp(21px, 1.55vw, 25px);
    height: clamp(21px, 1.55vw, 25px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--lstms-primary);
    color: #ffffff;
}

.lstms-filter-heading__icon svg {
    width: 58%;
    height: 58%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lstms-filter-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: clamp(8px, 0.7vw, 11px);
}

.lstms-filter-row select,
.lstms-more-filters select,
.lstms-more-filters input[type="date"] {
    height: clamp(38px, 2.85vw, 46px);
    margin: 0;
    padding: 0 clamp(13px, 1.05vw, 17px);
    border: 1px solid var(--lstms-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(10px, 0.78vw, 13px);
    font-weight: 300;
    box-shadow: none;
}

.lstms-filter-row select {
    flex: 0 0 clamp(145px, 10vw, 175px);
    width: clamp(145px, 10vw, 175px);
    min-width: 0;
}

.lstms-filter-toggle,
.lstms-clear-filters {
    min-height: clamp(38px, 2.85vw, 46px);
    margin: 0;
    padding: 0 clamp(19px, 1.55vw, 25px);
    border: 0;
    border-radius: 999px;
    background: var(--lstms-active-dark);
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(10px, 0.78vw, 13px);
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 160ms ease, opacity 160ms ease;
}

.lstms-filter-toggle:hover,
.lstms-clear-filters:hover {
    transform: translateY(-1px);
}

.lstms-more-filters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
    gap: clamp(10px, 0.9vw, 14px);
    margin-top: 12px;
    padding: clamp(14px, 1.1vw, 18px);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.68);
}

.lstms-more-filters > label,
.lstms-custom-date-range label {
    min-width: 0;
}

.lstms-more-filters label > span,
.lstms-custom-date-range label > span {
    display: block;
    margin: 0 0 5px 3px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(9px, 0.68vw, 11px);
    font-weight: 500;
    text-transform: uppercase;
}

.lstms-more-filters select,
.lstms-more-filters input[type="date"] {
    width: 100%;
}

.lstms-clear-filters {
    background: transparent;
    color: var(--lstms-primary);
    border: 1px solid var(--lstms-primary);
}

.lstms-view-switcher {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(7px, 0.75vw, 12px);
    flex: 0 0 auto;
}

.lstms-view-button {
    min-width: clamp(132px, 11.8vw, 188px);
    min-height: clamp(42px, 3.25vw, 52px);
    margin: 0;
    padding: 0 clamp(15px, 1.2vw, 20px);
    border: 0;
    border-radius: 999px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.9vw, 15px);
    font-weight: 300;
    letter-spacing: 0.035em;
    white-space: nowrap;
    box-shadow: none;
    transition: background-color 160ms ease, transform 160ms ease;
}

.lstms-view-button--list {
    background: var(--lstms-list);
}

.lstms-view-button--kanban {
    background: var(--lstms-kanban);
}

.lstms-view-button--calendar {
    background: var(--lstms-calendar);
}

.lstms-view-button[aria-current="page"],
.lstms-view-button:not(:disabled):hover {
    background: var(--lstms-active-dark);
}

.lstms-view-button:not(:disabled):hover {
    transform: translateY(-1px);
}

.lstms-view-button:disabled {
    cursor: default;
    opacity: 1;
}

.lstms-task-list-card {
    width: 100%;
    margin-top: clamp(22px, 2vw, 32px);
    padding: clamp(20px, 1.8vw, 29px) clamp(18px, 1.7vw, 27px) clamp(28px, 2.6vw, 42px);
    border-radius: clamp(18px, 1.5vw, 24px);
    background: #ffffff;
}

.lstms-task-list-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 clamp(18px, 1.5vw, 24px);
}

.lstms-task-list-heading__icon {
    width: clamp(23px, 1.7vw, 27px);
    height: clamp(23px, 1.7vw, 27px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--lstms-list);
    color: #ffffff;
}

.lstms-task-list-heading__icon svg {
    width: 60%;
    height: 60%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lstms-task-list-heading h2 {
    margin: 0;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(13px, 0.95vw, 16px);
    font-weight: 500;
    line-height: 1.2;
}

.lstms-visible-count {
    min-width: 26px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 3px;
    padding: 0 8px;
    border-radius: 999px;
    background: #edf1f3;
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 600;
}

.lstms-task-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.lstms-task-table {
    width: 100%;
    min-width: 1120px;
    border-collapse: collapse;
    table-layout: fixed;
    color: #242424;
    font-family: "Poppins", sans-serif;
}

.lstms-task-table th,
.lstms-task-table td {
    border: 1px solid rgba(10, 29, 41, 0.7);
}

.lstms-task-table th {
    height: clamp(42px, 3vw, 48px);
    padding: 8px 9px;
    background: var(--lstms-active-dark);
    color: #ffb15b;
    font-size: clamp(9px, 0.72vw, 12px);
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: 0.025em;
    text-align: center;
    text-transform: uppercase;
}

.lstms-task-table th:nth-child(1) { width: 28%; }
.lstms-task-table th:nth-child(2) { width: 8.5%; }
.lstms-task-table th:nth-child(3) { width: 8.5%; }
.lstms-task-table th:nth-child(4) { width: 8%; }
.lstms-task-table th:nth-child(5) { width: 11%; }
.lstms-task-table th:nth-child(6) { width: 12%; }
.lstms-task-table th:nth-child(7) { width: 8.5%; }
.lstms-task-table th:nth-child(8) { width: 11%; }
.lstms-task-table th:nth-child(9) { width: 4.5%; }

.lstms-task-row td {
    min-height: 42px;
    padding: 5px 7px;
    background: #ffffff;
    color: #2b2b2b;
    font-size: clamp(9px, 0.7vw, 12px);
    font-weight: 300;
    line-height: 1.25;
    text-align: center;
    vertical-align: middle;
}

.lstms-task-row:hover td {
    background: #fbfaf9;
}

.lstms-task-row[hidden],
.lstms-group-row[hidden] {
    display: none !important;
}

.lstms-task-title-cell {
    text-align: left !important;
}

.lstms-task-title-wrap {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    padding-left: calc(var(--lstms-task-depth, 0) * clamp(12px, 1.15vw, 18px));
}

.lstms-task-expand,
.lstms-task-indent-icon {
    width: 23px;
    height: 23px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 23px;
}

.lstms-task-expand {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--lstms-primary);
    cursor: pointer;
}

.lstms-task-expand svg,
.lstms-task-indent-icon svg {
    width: 17px;
    height: 17px;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lstms-task-expand svg {
    transition: transform 160ms ease;
}

.lstms-task-expand[aria-expanded="true"] svg {
    transform: rotate(90deg);
}

.lstms-task-indent-icon {
    color: #596c77;
}

.lstms-task-title-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.lstms-task-title-button {
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #222222;
    font-family: "Poppins", sans-serif;
    font-size: inherit;
    font-weight: 400;
    line-height: 1.25;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.lstms-task-title-button:hover,
.lstms-task-title-button:focus-visible {
    color: var(--lstms-hover-dark);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.lstms-task-child-summary,
.lstms-task-kind {
    margin-top: 2px;
    color: #7a7a7a;
    font-size: clamp(7px, 0.58vw, 9px);
    font-weight: 300;
    line-height: 1.2;
}

.lstms-brand-pill,
.lstms-priority-pill {
    min-width: clamp(66px, 5.8vw, 92px);
    min-height: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 10px;
    border-radius: 999px;
    color: #ffffff;
    font-size: clamp(7px, 0.62vw, 10px);
    font-weight: 400;
    line-height: 1.05;
    text-align: center;
    text-transform: uppercase;
}

.lstms-brand-pill {
    max-width: 100%;
    background: #70b33d;
    text-transform: none;
}

.lstms-priority-pill--low { background: #7ed957; }
.lstms-priority-pill--medium { background: #ff9137; }
.lstms-priority-pill--high { background: #ff5757; }
.lstms-priority-pill--urgent { background: #c8162e; }

.lstms-inline-status-form,
.lstms-delete-form {
    margin: 0;
}

.lstms-status-select {
    width: 100%;
    min-width: 104px;
    height: 29px;
    margin: 0;
    padding: 0 22px 0 10px;
    border: 0;
    border-radius: 999px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(7px, 0.6vw, 9.5px);
    font-weight: 400;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    box-shadow: none;
    cursor: pointer;
}

.lstms-status-select--not-started { background: #aeb0b2; }
.lstms-status-select--in-progress { background: #ff9137; }
.lstms-status-select--waiting { background: #ff5757; }
.lstms-status-select--done { background: #70b33d; }

.lstms-status-select option {
    background: #ffffff;
    color: #202020;
    text-transform: none;
}

.lstms-delete-cell {
    padding-left: 3px !important;
    padding-right: 3px !important;
}

.lstms-delete-task {
    width: 29px;
    height: 29px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #8b8b8b;
    cursor: pointer;
    transition: color 160ms ease, background-color 160ms ease;
}

.lstms-delete-task:hover {
    background: rgba(255, 87, 87, 0.12);
    color: #ff5757;
}

.lstms-delete-task svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lstms-empty-value {
    color: #a3a3a3;
}

.lstms-group-row td {
    padding: 9px 12px;
    border: 1px solid rgba(10, 29, 41, 0.65);
    background: #edf1f3;
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-align: left;
    text-transform: uppercase;
}

.lstms-task-list-empty,
.lstms-no-filter-results {
    min-height: 190px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #767676;
    font-family: "Poppins", sans-serif;
    text-align: center;
}

.lstms-task-list-empty strong {
    color: var(--lstms-primary);
    font-size: 18px;
    font-weight: 500;
}

.lstms-task-list-empty span,
.lstms-no-filter-results {
    font-size: 13px;
    font-weight: 300;
}

@media (max-width: 1320px) {
    .lstms-all-tasks-topbar {
        grid-template-columns: max-content minmax(210px, 0.9fr) minmax(470px, 1.6fr);
        gap: 18px;
    }

    .lstms-filter-area {
        flex-basis: clamp(390px, 40vw, 480px);
        width: clamp(390px, 40vw, 480px);
    }

    .lstms-view-button {
        min-width: clamp(120px, 10.5vw, 155px);
    }
}

@media (max-width: 1120px) {
    .lstms-task-tools {
        align-items: flex-start;
        flex-direction: column;
    }

    .lstms-filter-area,
    .lstms-view-switcher {
        width: 100%;
    }

    .lstms-view-switcher {
        justify-content: flex-end;
    }
}

@media (max-width: 1080px) {
    .lstms-all-tasks-topbar {
        grid-template-columns: max-content 1fr;
        border-radius: clamp(28px, 4vw, 44px);
    }

    .lstms-summary-cards {
        grid-column: 1 / -1;
        width: 100%;
        padding-top: 4px;
    }

    .lstms-more-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .lstms-all-tasks-shell {
        padding-left: 16px;
        padding-right: 16px;
    }

    .lstms-all-tasks-topbar {
        grid-template-columns: 1fr;
        gap: 13px;
        padding: 20px;
        border-radius: 28px;
    }

    .lstms-all-tasks-topbar .lstms-page-title {
        min-width: 0;
    }

    .lstms-summary-cards {
        grid-column: auto;
    }

    .lstms-summary-card {
        flex-direction: column;
        align-items: center;
        gap: 5px;
        text-align: center;
    }

    .lstms-summary-card__label {
        white-space: normal;
    }

    .lstms-filter-row select,
    .lstms-filter-toggle {
        flex: 1 1 calc(50% - 6px);
        width: auto;
        min-width: 0;
    }

    .lstms-more-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lstms-view-switcher {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
    }

    .lstms-view-button {
        min-width: 0;
        width: 100%;
        padding: 0 9px;
    }

    .lstms-task-list-card {
        padding-left: 12px;
        padding-right: 12px;
    }

    .lstms-task-table-wrap {
        overflow: visible;
    }

    .lstms-task-table {
        min-width: 0;
        display: block;
    }

    .lstms-task-table thead {
        display: none;
    }

    .lstms-task-table tbody {
        display: grid;
        gap: 12px;
    }

    .lstms-task-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0;
        border: 1px solid rgba(10, 29, 41, 0.35);
        border-left: calc(4px + min(var(--lstms-mobile-depth, 0), 3) * 2px) solid var(--lstms-primary);
        border-radius: 18px;
        overflow: hidden;
        background: #ffffff;
    }

    .lstms-task-row--depth-1 { --lstms-mobile-depth: 1; margin-left: 10px; }
    .lstms-task-row--depth-2 { --lstms-mobile-depth: 2; margin-left: 20px; }
    .lstms-task-row--depth-3 { --lstms-mobile-depth: 3; margin-left: 28px; }

    .lstms-task-row td {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        min-height: 58px;
        gap: 5px;
        padding: 10px 12px;
        border: 0;
        border-bottom: 1px solid rgba(10, 29, 41, 0.12);
        background: transparent;
        text-align: left;
    }

    .lstms-task-row td:nth-child(odd):not(.lstms-task-title-cell):not(.lstms-delete-cell) {
        border-right: 1px solid rgba(10, 29, 41, 0.12);
    }

    .lstms-task-row td::before {
        content: attr(data-label);
        color: #7a7a7a;
        font-size: 8px;
        font-weight: 600;
        letter-spacing: 0.07em;
        text-transform: uppercase;
    }

    .lstms-task-title-cell {
        grid-column: 1 / -1;
        min-height: 64px !important;
        border-bottom: 1px solid rgba(10, 29, 41, 0.18) !important;
    }

    .lstms-task-title-cell::before {
        display: none;
    }

    .lstms-task-title-wrap {
        width: 100%;
        padding-left: calc(var(--lstms-task-depth, 0) * 7px);
    }

    .lstms-brand-pill,
    .lstms-priority-pill,
    .lstms-status-select {
        min-width: 0;
        width: 100%;
    }

    .lstms-inline-status-form {
        width: 100%;
    }

    .lstms-delete-cell {
        align-items: flex-end !important;
    }

    .lstms-delete-cell::before {
        width: 100%;
        text-align: right;
    }

    .lstms-group-row {
        display: block;
    }

    .lstms-group-row td {
        display: block;
        border-radius: 12px;
    }
}

@media (max-width: 520px) {
    .lstms-summary-cards {
        gap: 7px;
    }

    .lstms-summary-card__icon {
        width: 38px;
        height: 38px;
    }

    .lstms-more-filters {
        grid-template-columns: 1fr;
    }

    .lstms-filter-row select,
    .lstms-filter-toggle {
        flex-basis: 100%;
    }

    .lstms-view-switcher {
        grid-template-columns: 1fr;
    }

    .lstms-task-row {
        grid-template-columns: 1fr;
    }

    .lstms-task-row td:nth-child(odd):not(.lstms-task-title-cell):not(.lstms-delete-cell) {
        border-right: 0;
    }

    .lstms-task-row td,
    .lstms-delete-cell {
        align-items: flex-start !important;
    }

    .lstms-delete-cell::before {
        text-align: left;
    }
}

/* All Tasks calendar view */
.lstms-calendar-card {
    position: relative;
    width: 100%;
    margin-top: clamp(22px, 2vw, 32px);
    padding: clamp(20px, 1.8vw, 29px) clamp(18px, 1.7vw, 27px) clamp(24px, 2.2vw, 36px);
    border-radius: clamp(18px, 1.5vw, 24px);
    background: #ffffff;
    overflow: hidden;
}

.lstms-calendar-card__top {
    display: grid;
    grid-template-columns: max-content minmax(320px, 1fr) max-content;
    align-items: center;
    gap: clamp(14px, 1.25vw, 22px);
    margin-bottom: clamp(15px, 1.2vw, 20px);
}

.lstms-calendar-heading {
    margin: 0;
}

.lstms-calendar-heading__icon {
    background: var(--lstms-calendar);
}

.lstms-calendar-navigation {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(7px, 0.65vw, 10px);
}

.lstms-calendar-nav-button,
.lstms-calendar-today-button,
.lstms-calendar-day__number,
.lstms-calendar-more,
.lstms-unscheduled-toggle,
.lstms-calendar-day-panel__close {
    font-family: "Poppins", sans-serif;
    box-shadow: none;
}

.lstms-calendar-nav-button {
    width: clamp(36px, 2.8vw, 44px);
    height: clamp(36px, 2.8vw, 44px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(10, 29, 41, 0.2);
    border-radius: 50%;
    background: #ffffff;
    color: var(--lstms-primary);
    cursor: pointer;
    transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.lstms-calendar-nav-button svg,
.lstms-unscheduled-toggle svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lstms-calendar-nav-button:hover,
.lstms-calendar-nav-button:focus-visible {
    background: var(--lstms-active-dark);
    color: #ffffff;
    transform: translateY(-1px);
}

.lstms-calendar-today-button {
    min-height: clamp(36px, 2.8vw, 44px);
    margin: 0;
    padding: 0 clamp(16px, 1.2vw, 21px);
    border: 1px solid var(--lstms-primary);
    border-radius: 999px;
    background: #ffffff;
    color: var(--lstms-primary);
    font-size: clamp(10px, 0.78vw, 13px);
    font-weight: 400;
    cursor: pointer;
    transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.lstms-calendar-today-button:hover,
.lstms-calendar-today-button:focus-visible {
    background: var(--lstms-active-dark);
    color: #ffffff;
    transform: translateY(-1px);
}

.lstms-calendar-month-label {
    min-width: clamp(154px, 13vw, 205px);
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(15px, 1.15vw, 19px);
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
}

.lstms-calendar-weekdays,
.lstms-calendar-grid {
    display: grid;
    grid-template-columns: repeat(var(--lstms-calendar-columns, 7), minmax(0, 1fr));
}

.lstms-calendar-weekdays {
    border: 1px solid rgba(10, 29, 41, 0.22);
    border-bottom: 0;
    border-radius: 14px 14px 0 0;
    overflow: hidden;
    background: var(--lstms-active-dark);
}

.lstms-calendar-weekdays span {
    min-width: 0;
    padding: clamp(9px, 0.8vw, 13px) 6px;
    border-right: 1px solid rgba(255, 255, 255, 0.16);
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(9px, 0.72vw, 12px);
    font-weight: 500;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
}

.lstms-calendar-weekdays span:last-child {
    border-right: 0;
}

.lstms-calendar-grid {
    border-top: 1px solid rgba(10, 29, 41, 0.22);
    border-left: 1px solid rgba(10, 29, 41, 0.22);
    border-radius: 0 0 14px 14px;
    overflow: hidden;
}

.lstms-calendar-day {
    position: relative;
    min-width: 0;
    min-height: clamp(112px, 9.2vw, 150px);
    padding: clamp(7px, 0.65vw, 11px);
    border-right: 1px solid rgba(10, 29, 41, 0.22);
    border-bottom: 1px solid rgba(10, 29, 41, 0.22);
    background: #ffffff;
    transition: background-color 160ms ease, box-shadow 160ms ease;
}

.lstms-calendar-day.is-outside-month {
    background: #faf8f6;
}

.lstms-calendar-day.is-outside-month .lstms-calendar-day__number,
.lstms-calendar-day.is-outside-month .lstms-calendar-task {
    opacity: 0.48;
}

.lstms-calendar-day.is-selected {
    box-shadow: inset 0 0 0 2px rgba(12, 192, 223, 0.58);
    z-index: 1;
}

.lstms-calendar-day.is-today {
    background: rgba(255, 145, 55, 0.07);
}

.lstms-calendar-day__number {
    width: clamp(25px, 1.85vw, 30px);
    height: clamp(25px, 1.85vw, 30px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 5px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--lstms-primary);
    font-size: clamp(10px, 0.78vw, 13px);
    font-weight: 500;
    cursor: pointer;
}

.lstms-calendar-day.is-today .lstms-calendar-day__number {
    background: var(--lstms-active-dark);
    color: #ffffff;
}

.lstms-calendar-day__number:hover,
.lstms-calendar-day__number:focus-visible {
    background: rgba(10, 29, 41, 0.1);
}

.lstms-calendar-day__tasks {
    display: grid;
    gap: 4px;
}

.lstms-calendar-task {
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    padding: 5px 7px;
    border: 0;
    border-left: 3px solid #a9a9a9;
    border-radius: 7px;
    background: #f3f3f3;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(8px, 0.62vw, 10px);
    font-weight: 400;
    line-height: 1.25;
    text-align: left;
    cursor: pointer;
    overflow: hidden;
    transition: transform 140ms ease, filter 140ms ease;
}

.lstms-calendar-task:hover,
.lstms-calendar-task:focus-visible {
    transform: translateX(1px);
    filter: brightness(0.97);
}

.lstms-calendar-task--in-progress {
    border-left-color: #ff9137;
    background: rgba(255, 145, 55, 0.12);
}

.lstms-calendar-task--waiting {
    border-left-color: #ff5757;
    background: rgba(255, 87, 87, 0.11);
}

.lstms-calendar-task--done {
    border-left-color: #7ed957;
    background: rgba(126, 217, 87, 0.12);
    opacity: 0.62;
}

.lstms-calendar-task--milestone {
    font-weight: 500;
}

.lstms-calendar-task__dot {
    width: 7px;
    height: 7px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #b7b7b7;
}

.lstms-calendar-task__dot--low {
    background: #7ed957;
}

.lstms-calendar-task__dot--medium {
    background: #ffb14a;
}

.lstms-calendar-task__dot--high {
    background: #ff5757;
}

.lstms-calendar-task__dot--urgent {
    background: #c90064;
    box-shadow: 0 0 0 2px rgba(201, 0, 100, 0.15);
}

.lstms-calendar-task__title {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lstms-calendar-more {
    width: 100%;
    margin: 0;
    padding: 3px 5px;
    border: 0;
    background: transparent;
    color: var(--lstms-primary);
    font-size: clamp(8px, 0.62vw, 10px);
    font-weight: 500;
    text-align: left;
    cursor: pointer;
}

.lstms-calendar-more:hover,
.lstms-calendar-more:focus-visible {
    text-decoration: underline;
}

.lstms-calendar-mobile-agenda {
    display: none;
    margin-top: 14px;
    padding: 14px;
    border-radius: 15px;
    background: #f7f4f1;
}

.lstms-calendar-agenda-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
}

.lstms-calendar-agenda-heading strong {
    font-size: 13px;
    font-weight: 500;
}

.lstms-calendar-agenda-heading span {
    color: #737373;
    font-size: 10px;
    font-weight: 400;
}

.lstms-calendar-agenda-list,
.lstms-unscheduled-list,
.lstms-calendar-day-panel__list {
    display: grid;
    gap: 8px;
}

.lstms-calendar-agenda-item {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content;
    align-items: center;
    gap: 12px;
    padding: 8px 10px;
    border: 1px solid rgba(10, 29, 41, 0.12);
    border-radius: 12px;
    background: #ffffff;
}

.lstms-calendar-task--agenda {
    padding: 0;
    border-left: 0;
    background: transparent;
    font-size: clamp(10px, 0.76vw, 12px);
}

.lstms-calendar-agenda-item__meta {
    color: #7a7a7a;
    font-family: "Poppins", sans-serif;
    font-size: clamp(8px, 0.62vw, 10px);
    font-weight: 300;
    white-space: nowrap;
}

.lstms-calendar-empty {
    padding: 14px;
    border: 1px dashed rgba(10, 29, 41, 0.2);
    border-radius: 12px;
    color: #858585;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 300;
    text-align: center;
}

.lstms-unscheduled-section {
    margin-top: clamp(17px, 1.5vw, 24px);
    border: 1px solid rgba(10, 29, 41, 0.14);
    border-radius: 16px;
    overflow: hidden;
    background: #fbfaf9;
}

.lstms-unscheduled-toggle {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content max-content;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 13px 16px;
    border: 0;
    background: transparent;
    color: var(--lstms-primary);
    font-size: clamp(11px, 0.82vw, 14px);
    font-weight: 500;
    text-align: left;
    cursor: pointer;
}

.lstms-unscheduled-toggle > span:first-child {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lstms-unscheduled-toggle__icon {
    width: 25px;
    height: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--lstms-calendar);
    color: #ffffff;
}

.lstms-unscheduled-toggle__icon svg {
    width: 15px;
    height: 15px;
}

.lstms-unscheduled-count {
    min-width: 27px;
    height: 23px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--lstms-active-dark);
    color: #ffffff;
    font-size: 10px;
}

.lstms-unscheduled-chevron {
    display: inline-flex;
    transition: transform 160ms ease;
}

.lstms-unscheduled-toggle[aria-expanded="true"] .lstms-unscheduled-chevron {
    transform: rotate(90deg);
}

.lstms-unscheduled-list {
    padding: 0 14px 14px;
}

.lstms-calendar-day-panel {
    position: absolute;
    z-index: 15;
    top: clamp(70px, 6vw, 95px);
    right: clamp(18px, 1.7vw, 27px);
    width: min(390px, calc(100% - 36px));
    max-height: min(610px, calc(100% - 105px));
    padding: 22px 18px 18px;
    border: 1px solid rgba(10, 29, 41, 0.14);
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 18px 48px rgba(10, 29, 41, 0.2);
    overflow: auto;
}

.lstms-calendar-day-panel__close {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f3efeb;
    color: var(--lstms-primary);
    font-size: 19px;
    line-height: 1;
    cursor: pointer;
}

.lstms-calendar-day-panel__heading {
    display: grid;
    gap: 2px;
    margin-bottom: 14px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
}

.lstms-calendar-day-panel__heading span {
    color: #7d7d7d;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.lstms-calendar-day-panel__heading strong {
    font-size: 15px;
    font-weight: 500;
}

.lstms-filter-row select:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

@media (max-width: 1120px) {
    .lstms-calendar-card__top {
        align-items: flex-start;
        flex-direction: column;
    }

    .lstms-calendar-navigation {
        width: 100%;
        justify-content: flex-start;
    }

    .lstms-calendar-month-label {
        order: -1;
        min-width: 0;
        margin-right: auto;
        text-align: left;
    }

    .lstms-calendar-day {
        min-height: 116px;
    }
}

@media (max-width: 860px) {
    .lstms-calendar-card {
        padding-left: 12px;
        padding-right: 12px;
    }

    .lstms-calendar-day {
        min-height: 92px;
        padding: 6px;
    }

    .lstms-calendar-task {
        padding: 4px 5px;
    }

    .lstms-calendar-task__dot {
        display: none;
    }
}

@media (max-width: 760px) {
    .lstms-calendar-weekdays span {
        padding: 8px 2px;
        font-size: 8px;
        letter-spacing: 0.03em;
    }

    .lstms-calendar-day {
        min-height: 48px;
        padding: 4px 2px;
        text-align: center;
    }

    .lstms-calendar-day__number {
        margin: 0;
    }

    .lstms-calendar-day__tasks {
        display: none;
    }

    .lstms-calendar-mobile-agenda {
        display: block;
    }

    .lstms-calendar-navigation {
        display: grid;
        grid-template-columns: auto auto minmax(0, 1fr) auto;
    }

    .lstms-calendar-month-label {
        grid-column: 1 / -1;
        grid-row: 1;
        width: 100%;
        margin: 0 0 3px;
        text-align: center;
    }

    .lstms-calendar-nav-button:first-of-type {
        grid-column: 1;
    }

    .lstms-calendar-today-button {
        grid-column: 2 / 4;
    }

    .lstms-calendar-nav-button:last-child {
        grid-column: 4;
    }

    .lstms-calendar-agenda-item {
        grid-template-columns: 1fr;
        gap: 3px;
    }

    .lstms-calendar-agenda-item__meta {
        padding-left: 13px;
        white-space: normal;
    }

    .lstms-calendar-day-panel {
        position: fixed;
        top: auto;
        right: 12px;
        bottom: 12px;
        left: 12px;
        width: auto;
        max-height: 72vh;
        border-radius: 20px;
    }
}

@media (max-width: 520px) {
    .lstms-calendar-navigation {
        gap: 6px;
    }

    .lstms-calendar-today-button {
        min-width: 0;
        padding: 0 12px;
    }

    .lstms-calendar-day__number {
        width: 23px;
        height: 23px;
        font-size: 9px;
    }

    .lstms-unscheduled-toggle {
        padding: 11px 12px;
    }
}

/* Universal task popup / editor ------------------------------------------- */
body.lstms-modal-open {
    overflow: hidden;
}

.lstms-task-modal[hidden] {
    display: none !important;
}

.lstms-task-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: grid;
    place-items: center;
    padding: clamp(14px, 3vw, 42px);
    font-family: "Poppins", sans-serif;
    color: #142f3f;
    opacity: 0;
    transition: opacity 180ms ease;
}

.lstms-task-modal.is-open {
    opacity: 1;
}

.lstms-task-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 29, 41, 0.34);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.lstms-task-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(1240px, 92vw);
    max-height: min(900px, 92vh);
    background: #fff;
    border: 1.5px solid #d4007f;
    border-radius: 24px;
    box-shadow: 0 28px 80px rgba(10, 29, 41, 0.28);
    overflow: hidden;
    outline: none;
    transform: translateY(16px) scale(0.985);
    transition: transform 180ms ease;
}

.lstms-task-modal.is-open .lstms-task-modal__dialog {
    transform: translateY(0) scale(1);
}

.lstms-task-modal__close {
    position: absolute;
    top: 14px;
    right: 16px;
    z-index: 4;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: #f4efea;
    color: #142f3f;
    font: 400 28px/1 "Poppins", sans-serif;
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease, transform 160ms ease;
}

.lstms-task-modal__close:hover,
.lstms-task-modal__close:focus-visible {
    background: #0a1d29;
    color: #fff;
    transform: rotate(4deg);
}

.lstms-task-modal__loading {
    min-height: 340px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #142f3f;
    font-size: 15px;
}

.lstms-task-modal__loading[hidden],
.lstms-task-modal__content[hidden] {
    display: none !important;
}

.lstms-task-modal__spinner {
    width: 26px;
    height: 26px;
    border: 3px solid #e8e1db;
    border-top-color: #0cc0df;
    border-radius: 50%;
    animation: lstms-modal-spin 700ms linear infinite;
}

@keyframes lstms-modal-spin {
    to { transform: rotate(360deg); }
}

.lstms-modal-form {
    display: flex;
    flex-direction: column;
    max-height: min(900px, 92vh);
    min-height: min(650px, 78vh);
    background: #fff;
}

.lstms-modal-header {
    flex: 0 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 74px 12px 22px;
    border-bottom: 1px solid rgba(20, 47, 63, 0.08);
}

.lstms-modal-heading-copy {
    min-width: 0;
}

.lstms-modal-kicker {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #142f3f;
    font-size: clamp(15px, 1.25vw, 18px);
    font-weight: 500;
}

.lstms-modal-kicker__icon {
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    border-radius: 50%;
    background: #7ed957;
    color: #fff;
    font-size: 15px;
}

.lstms-modal-kicker__icon--project {
    background: #0cc0df;
}

.lstms-modal-hierarchy {
    margin: 7px 0 0 37px;
    color: #6c7478;
    font-size: 12px;
    font-weight: 300;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lstms-modal-type-label {
    display: inline-block;
    margin: 5px 0 0 37px;
    color: #8b8f92;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.lstms-modal-progress {
    display: flex;
    align-items: center;
    gap: 13px;
    padding-right: 4px;
}

.lstms-modal-progress__icon {
    display: inline-grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #7ed957;
    color: #fff;
    font-size: 25px;
    font-weight: 300;
}

.lstms-modal-progress > span:last-child {
    display: flex;
    flex-direction: column;
    min-width: 72px;
}

.lstms-modal-progress small {
    color: #6c7478;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.lstms-modal-progress strong {
    color: #142f3f;
    font-size: 31px;
    line-height: 1.05;
    font-weight: 600;
}

.lstms-modal-scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 8px 22px 22px;
    scrollbar-width: thin;
    scrollbar-color: rgba(20, 47, 63, 0.25) transparent;
}

.lstms-modal-scroll::-webkit-scrollbar {
    width: 7px;
}

.lstms-modal-scroll::-webkit-scrollbar-thumb {
    background: rgba(20, 47, 63, 0.24);
    border-radius: 999px;
}

.lstms-modal-section {
    margin-top: 12px;
}

.lstms-modal-section + .lstms-modal-section {
    margin-top: 18px;
}

.lstms-modal-section h3,
.lstms-modal-section h4 {
    margin: 0 0 8px;
    color: #142f3f;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.lstms-modal-section h4 {
    font-size: 11px;
}

.lstms-modal-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 10px;
}

.lstms-modal-section-heading p {
    margin: -3px 0 0;
    color: #7c8285;
    font-size: 10px;
    font-weight: 300;
}

.lstms-modal-section-heading--small {
    align-items: center;
    margin: 3px 0 8px;
}

.lstms-modal-section-heading--small h4 {
    margin: 0;
}

.lstms-modal-grid {
    display: grid;
    gap: 12px 14px;
}

.lstms-modal-grid--timing {
    grid-template-columns: minmax(128px, 0.9fr) minmax(128px, 0.9fr) minmax(220px, 1.55fr) minmax(130px, 0.9fr) minmax(145px, 1fr) minmax(130px, 0.9fr);
}

.lstms-modal-grid--project-timing {
    grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr) minmax(250px, 1.6fr) minmax(155px, 1fr);
}

.lstms-modal-grid--organization {
    grid-template-columns: 1.2fr 1.2fr 0.8fr 0.9fr 1.1fr;
}

.lstms-modal-grid--relationships {
    grid-template-columns: minmax(240px, 1.25fr) minmax(220px, 1fr);
    max-width: 720px;
}

.lstms-modal-grid--project-relationships {
    max-width: none;
    grid-template-columns: 1.1fr 1fr 0.95fr 0.95fr;
}

.lstms-modal-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
    color: #142f3f;
    font-size: 13px;
    font-weight: 400;
}

.lstms-modal-field > span,
.lstms-modal-duration-label {
    color: #142f3f;
    font-size: 13px;
    font-weight: 400;
}

.lstms-modal-field input,
.lstms-modal-field select,
.lstms-modal-field textarea,
.lstms-modal-duration {
    width: 100%;
    min-height: 38px;
    border: 1px solid #252525;
    border-radius: 22px;
    background: #fff;
    color: #142f3f;
    font: 300 13px/1.3 "Poppins", sans-serif;
    box-shadow: none;
    outline: none;
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

.lstms-modal-field input,
.lstms-modal-field select,
.lstms-modal-field textarea {
    padding: 8px 14px;
}

.lstms-modal-field textarea {
    min-height: 68px;
    border-radius: 18px;
    resize: vertical;
}

.lstms-modal-field select[multiple] {
    min-height: 94px;
    border-radius: 16px;
    padding: 7px 10px;
}

.lstms-modal-field small {
    color: #8a8f92;
    font-size: 9px;
    font-weight: 300;
}

.lstms-modal-field input:focus,
.lstms-modal-field select:focus,
.lstms-modal-field textarea:focus,
.lstms-modal-duration:focus-within {
    border-color: var(--lstms-hover-dark);
    box-shadow: 0 0 0 3px rgba(10, 29, 41, 0.13);
}

.lstms-modal-field--wide {
    width: min(100%, 670px);
}

.lstms-modal-field--inactive {
    opacity: 0.62;
}

.lstms-modal-field--inactive input {
    background: #f6f4f2;
    cursor: not-allowed;
}

.lstms-modal-duration-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.lstms-modal-duration-label {
    display: block;
}

.lstms-modal-duration {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0 11px;
    margin: 0;
}

.lstms-modal-duration input {
    width: 100%;
    min-width: 0;
    border: 0;
    background: transparent;
    color: #142f3f;
    font: 300 13px/1.3 "Poppins", sans-serif;
    text-align: center;
    outline: none;
}

.lstms-modal-add-button {
    min-width: 126px;
    min-height: 33px;
    padding: 6px 15px;
    border: 1px solid #7ed957;
    border-radius: 18px;
    background: #fff;
    color: #4da931;
    font: 400 11px/1.2 "Poppins", sans-serif;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}

.lstms-modal-add-button:hover,
.lstms-modal-add-button:focus-visible {
    background: #7ed957;
    color: #fff;
}

.lstms-modal-add-button--small {
    min-width: 112px;
    min-height: 28px;
    font-size: 10px;
}

.lstms-modal-child-list {
    display: grid;
    gap: 10px;
}

.lstms-modal-child-row,
.lstms-modal-milestone__top {
    display: grid;
    grid-template-columns: minmax(260px, 2.7fr) minmax(135px, 0.9fr) 76px 76px minmax(125px, 0.9fr) 34px;
    align-items: end;
    gap: 9px;
}

.lstms-modal-child-row .lstms-modal-field > span,
.lstms-modal-milestone__top .lstms-modal-field > span {
    font-size: 9px;
    font-weight: 500;
}

.lstms-modal-child-row input,
.lstms-modal-child-row select,
.lstms-modal-milestone__top input,
.lstms-modal-milestone__top select {
    min-height: 35px;
    padding: 7px 11px;
    font-size: 11px;
}

.lstms-modal-remove-button {
    width: 32px;
    height: 32px;
    margin-bottom: 1px;
    border: 1px solid #d5dce0;
    border-radius: 50%;
    background: #fff;
    color: #142f3f;
    font: 400 20px/1 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-modal-remove-button:hover,
.lstms-modal-remove-button:focus-visible {
    border-color: #ff5757;
    background: #ff5757;
    color: #fff;
}

.lstms-modal-milestone-list {
    display: grid;
    gap: 16px;
}

.lstms-modal-milestone {
    padding: 14px;
    border: 1px solid rgba(20, 47, 63, 0.14);
    border-radius: 18px;
    background: #fbfaf9;
}

.lstms-modal-milestone__children {
    margin: 13px 0 0 38px;
    padding-left: 15px;
    border-left: 2px solid rgba(12, 192, 223, 0.28);
}

.lstms-modal-footer {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 13px 22px 17px;
    border-top: 1px solid rgba(20, 47, 63, 0.09);
    background: #fff;
}

.lstms-modal-footer__actions {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
}

.lstms-modal-save-button,
.lstms-modal-delete-button {
    min-width: 154px;
    min-height: 43px;
    padding: 9px 22px;
    border: 0;
    border-radius: 24px;
    font: 300 16px/1.2 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-modal-save-button {
    background: #7ed957;
    color: #fff;
}

.lstms-modal-form--project .lstms-modal-save-button {
    background: #0cc0df;
}

.lstms-modal-save-button:hover,
.lstms-modal-save-button:focus-visible {
    background: #0a1d29;
}

.lstms-modal-save-button:disabled,
.lstms-modal-delete-button:disabled {
    opacity: 0.58;
    cursor: wait;
}

.lstms-modal-delete-button {
    min-width: 112px;
    background: transparent;
    color: #b34545;
    font-size: 12px;
}

.lstms-modal-delete-button:hover,
.lstms-modal-delete-button:focus-visible {
    background: #fff1f1;
    color: #8f2525;
}

.lstms-modal-save-status {
    color: #4b9850;
    font-size: 11px;
    font-weight: 400;
}

.lstms-modal-save-status.is-error {
    color: #c34444;
}

.lstms-modal-dates {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    color: #777d80;
    font-size: 9px;
    font-style: italic;
    font-weight: 300;
    text-align: right;
}

.lstms-modal-load-error {
    min-height: 300px;
    display: grid;
    place-items: center;
    padding: 40px;
    color: #b33a3a;
    font-size: 15px;
    text-align: center;
}

@media (max-width: 1180px) {
    .lstms-task-modal__dialog {
        width: 94vw;
    }

    .lstms-modal-grid--timing {
        grid-template-columns: repeat(3, minmax(150px, 1fr));
    }

    .lstms-modal-grid--organization {
        grid-template-columns: repeat(3, minmax(150px, 1fr));
    }

    .lstms-modal-grid--project-relationships {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
    }

    .lstms-modal-child-row,
    .lstms-modal-milestone__top {
        grid-template-columns: minmax(240px, 2fr) minmax(135px, 1fr) 70px 70px minmax(120px, 1fr) 34px;
    }
}

@media (max-width: 860px) {
    .lstms-task-modal {
        padding: 10px;
    }

    .lstms-task-modal__dialog,
    .lstms-modal-form {
        max-height: calc(100vh - 20px);
    }

    .lstms-modal-grid--timing,
    .lstms-modal-grid--project-timing,
    .lstms-modal-grid--organization,
    .lstms-modal-grid--relationships,
    .lstms-modal-grid--project-relationships {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: none;
    }

    .lstms-modal-child-row,
    .lstms-modal-milestone__top {
        grid-template-columns: minmax(0, 2fr) minmax(125px, 1fr) 72px 72px;
    }

    .lstms-modal-child-status {
        grid-column: 1 / 4;
    }

    .lstms-modal-remove-button {
        grid-column: 4;
        grid-row: 2;
        justify-self: end;
    }

    .lstms-modal-footer {
        align-items: flex-end;
    }
}

@media (max-width: 620px) {
    .lstms-task-modal {
        padding: 0;
        place-items: stretch;
    }

    .lstms-task-modal__dialog {
        width: 100vw;
        max-height: 100vh;
        border: 0;
        border-radius: 0;
    }

    .lstms-modal-form {
        min-height: 100vh;
        max-height: 100vh;
    }

    .lstms-task-modal__close {
        top: 10px;
        right: 10px;
    }

    .lstms-modal-header {
        padding: 16px 52px 12px 15px;
    }

    .lstms-modal-progress__icon {
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .lstms-modal-progress strong {
        font-size: 24px;
    }

    .lstms-modal-progress small {
        font-size: 8px;
    }

    .lstms-modal-scroll {
        padding: 7px 14px 18px;
    }

    .lstms-modal-grid--timing,
    .lstms-modal-grid--project-timing,
    .lstms-modal-grid--organization,
    .lstms-modal-grid--relationships,
    .lstms-modal-grid--project-relationships {
        grid-template-columns: 1fr;
    }

    .lstms-modal-field--wide {
        width: 100%;
    }

    .lstms-modal-section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .lstms-modal-child-row,
    .lstms-modal-milestone__top {
        grid-template-columns: 1fr 1fr;
        padding: 10px;
        border: 1px solid rgba(20, 47, 63, 0.12);
        border-radius: 15px;
        background: #fff;
    }

    .lstms-modal-child-title,
    .lstms-modal-child-status {
        grid-column: 1 / -1;
    }

    .lstms-modal-child-date {
        grid-column: 1 / -1;
    }

    .lstms-modal-remove-button {
        grid-column: 2;
        grid-row: auto;
        justify-self: end;
    }

    .lstms-modal-milestone__children {
        margin-left: 0;
        padding-left: 8px;
    }

    .lstms-modal-footer {
        align-items: stretch;
        flex-direction: column;
        padding: 11px 14px 14px;
    }

    .lstms-modal-footer__actions {
        flex-wrap: wrap;
    }

    .lstms-modal-save-button {
        flex: 1 1 150px;
    }

    .lstms-modal-dates {
        align-items: flex-start;
        text-align: left;
    }
}

/* Calendar mode controls and expanded views -------------------------------- */
.lstms-calendar-mode-switcher {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(5px, 0.45vw, 8px);
    min-width: 0;
    padding: 4px;
    border-radius: 999px;
    background: #f4efea;
}

.lstms-calendar-mode-button {
    min-height: clamp(34px, 2.45vw, 40px);
    margin: 0;
    padding: 0 clamp(13px, 1vw, 18px);
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(9px, 0.72vw, 12px);
    font-weight: 400;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: none;
    transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.lstms-calendar-mode-button:hover,
.lstms-calendar-mode-button:focus-visible,
.lstms-calendar-mode-button.is-active {
    background: var(--lstms-active-dark);
    color: #ffffff;
}

.lstms-calendar-mode-button:hover,
.lstms-calendar-mode-button:focus-visible {
    transform: translateY(-1px);
}

.lstms-calendar-weekdays span {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
}

.lstms-calendar-weekdays span small,
.lstms-calendar-weekdays span strong {
    display: block;
    color: inherit;
    font-family: "Poppins", sans-serif;
    line-height: 1.2;
}

.lstms-calendar-weekdays span small {
    font-size: inherit;
    font-weight: 500;
    letter-spacing: inherit;
    text-transform: uppercase;
}

.lstms-calendar-weekdays span strong {
    font-size: clamp(8px, 0.66vw, 11px);
    font-weight: 300;
    letter-spacing: 0;
    text-transform: none;
    opacity: 0.82;
}

.lstms-calendar-grid--week,
.lstms-calendar-grid--business {
    border-radius: 0 0 14px 14px;
}

.lstms-calendar-day--week {
    min-height: clamp(250px, 24vw, 380px);
    padding: clamp(10px, 0.9vw, 15px);
}

.lstms-calendar-grid--business .lstms-calendar-day--week {
    min-height: clamp(270px, 25vw, 400px);
}

.lstms-calendar-task--week {
    padding: 7px 8px;
    font-size: clamp(9px, 0.69vw, 11px);
}

.lstms-calendar-grid--day {
    display: block;
    border: 0;
    border-radius: 0;
    overflow: visible;
}

.lstms-calendar-weekdays--day {
    display: none;
}

.lstms-calendar-day-view {
    min-height: clamp(320px, 35vw, 540px);
    padding: clamp(18px, 1.8vw, 30px);
    border: 1px solid rgba(10, 29, 41, 0.16);
    border-radius: 18px;
    background: #fbfaf9;
}

.lstms-calendar-day-view__heading {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr) max-content;
    align-items: center;
    gap: clamp(13px, 1.2vw, 20px);
    padding-bottom: clamp(16px, 1.4vw, 23px);
    margin-bottom: clamp(15px, 1.4vw, 22px);
    border-bottom: 1px solid rgba(10, 29, 41, 0.12);
}

.lstms-calendar-day-view__date {
    width: clamp(52px, 4.2vw, 68px);
    height: clamp(52px, 4.2vw, 68px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--lstms-active-dark);
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(20px, 1.75vw, 28px);
    font-weight: 500;
}

.lstms-calendar-day-view__copy {
    display: grid;
    gap: 2px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
}

.lstms-calendar-day-view__copy strong {
    font-size: clamp(16px, 1.25vw, 20px);
    font-weight: 500;
}

.lstms-calendar-day-view__copy span,
.lstms-calendar-day-view__count {
    color: #777777;
    font-size: clamp(10px, 0.78vw, 13px);
    font-weight: 300;
}

.lstms-calendar-day-view__count {
    padding: 7px 12px;
    border-radius: 999px;
    background: #ffffff;
    white-space: nowrap;
}

.lstms-calendar-day-view__tasks {
    display: grid;
    gap: 10px;
}

.lstms-calendar-day-view__tasks .lstms-calendar-agenda-item {
    padding: clamp(10px, 0.9vw, 14px) clamp(12px, 1vw, 16px);
}

.lstms-calendar-day-view__tasks .lstms-calendar-task--agenda {
    font-size: clamp(11px, 0.86vw, 14px);
}

@media (max-width: 1260px) {
    .lstms-calendar-card__top {
        grid-template-columns: max-content minmax(0, 1fr);
    }

    .lstms-calendar-navigation {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    .lstms-calendar-month-label {
        order: -1;
        min-width: 0;
        margin-right: auto;
        text-align: left;
    }
}

@media (max-width: 900px) {
    .lstms-calendar-card__top {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .lstms-calendar-mode-switcher {
        justify-content: flex-start;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .lstms-calendar-mode-switcher::-webkit-scrollbar {
        display: none;
    }

    .lstms-calendar-navigation {
        width: 100%;
    }

    .lstms-calendar-day--week {
        min-height: 210px;
    }
}

@media (max-width: 760px) {
    .lstms-calendar-mode-switcher {
        padding: 3px;
    }

    .lstms-calendar-mode-button {
        flex: 0 0 auto;
        min-height: 34px;
        padding: 0 13px;
        font-size: 9px;
    }

    .lstms-calendar-card[data-calendar-mode="month"] .lstms-calendar-day {
        min-height: 48px;
        padding: 4px 2px;
        text-align: center;
    }

    .lstms-calendar-card[data-calendar-mode="month"] .lstms-calendar-day__number {
        margin: 0;
    }

    .lstms-calendar-card[data-calendar-mode="month"] .lstms-calendar-day__tasks {
        display: none;
    }

    .lstms-calendar-card[data-calendar-mode="month"] .lstms-calendar-mobile-agenda:not([hidden]) {
        display: block;
    }

    .lstms-calendar-card[data-calendar-mode="week"] .lstms-calendar-weekdays,
    .lstms-calendar-card[data-calendar-mode="business"] .lstms-calendar-weekdays {
        display: none;
    }

    .lstms-calendar-grid--week,
    .lstms-calendar-grid--business {
        display: grid;
        grid-template-columns: 1fr;
        border: 0;
        gap: 10px;
        overflow: visible;
    }

    .lstms-calendar-day--week,
    .lstms-calendar-grid--business .lstms-calendar-day--week {
        min-height: 0;
        padding: 13px;
        border: 1px solid rgba(10, 29, 41, 0.15);
        border-radius: 14px;
        text-align: left;
    }

    .lstms-calendar-day--week .lstms-calendar-day__tasks {
        display: grid;
        margin-top: 8px;
    }

    .lstms-calendar-day--week::before {
        content: attr(data-calendar-date);
        display: block;
        margin-bottom: 4px;
        color: var(--lstms-primary);
        font-size: 11px;
        font-weight: 500;
    }

    .lstms-calendar-day--week .lstms-calendar-day__number {
        display: none;
    }

    .lstms-calendar-day-view {
        min-height: 0;
        padding: 16px;
    }

    .lstms-calendar-day-view__heading {
        grid-template-columns: max-content minmax(0, 1fr);
    }

    .lstms-calendar-day-view__count {
        grid-column: 1 / -1;
        width: max-content;
        margin-left: calc(clamp(52px, 4.2vw, 68px) + 13px);
    }
}

@media (max-width: 520px) {
    .lstms-calendar-day-view__heading {
        gap: 11px;
    }

    .lstms-calendar-day-view__date {
        width: 48px;
        height: 48px;
        font-size: 19px;
    }

    .lstms-calendar-day-view__count {
        margin-left: 59px;
    }
}

.lstms-calendar-day__heading {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    text-align: left;
    box-shadow: none;
}

@media (max-width: 760px) {
    .lstms-calendar-day--week::before {
        content: none;
        display: none;
    }

    .lstms-calendar-day--week .lstms-calendar-day__heading {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 12px;
    }

    .lstms-calendar-day--week .lstms-calendar-day__heading span {
        font-size: 12px;
        font-weight: 500;
    }

    .lstms-calendar-day--week .lstms-calendar-day__heading strong {
        color: #777777;
        font-size: 10px;
        font-weight: 300;
    }
}

/* All Tasks Kanban view */
.lstms-kanban-card {
    position: relative;
    width: 100%;
    margin-top: clamp(22px, 2vw, 32px);
    padding: clamp(20px, 1.8vw, 29px) clamp(18px, 1.7vw, 27px) clamp(24px, 2.2vw, 36px);
    border-radius: clamp(18px, 1.5vw, 24px);
    background: #ffffff;
    overflow: hidden;
}

.lstms-kanban-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(14px, 1.2vw, 20px);
    margin-bottom: clamp(16px, 1.3vw, 22px);
}

.lstms-kanban-heading {
    margin: 0;
}

.lstms-kanban-heading__icon {
    background: var(--lstms-kanban);
}

.lstms-kanban-board-by {
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(9px, 0.68vw, 11px);
    font-weight: 600;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.lstms-kanban-board-by select {
    width: clamp(145px, 11vw, 178px);
    height: clamp(38px, 2.85vw, 46px);
    margin: 0;
    padding: 0 clamp(13px, 1vw, 17px);
    border: 1px solid var(--lstms-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(10px, 0.76vw, 13px);
    font-weight: 300;
    text-transform: none;
    box-shadow: none;
}

.lstms-kanban-board-by select:focus-visible,
.lstms-kanban-task__title:focus-visible,
.lstms-kanban-task__mobile-move select:focus-visible,
.lstms-kanban-mobile-tab:focus-visible {
    outline: 3px solid rgba(20, 47, 63, 0.22);
    outline-offset: 2px;
}

.lstms-kanban-feedback {
    margin: 0 0 14px;
    padding: 10px 14px;
    border-radius: 14px;
    background: rgba(126, 217, 87, 0.16);
    color: #356b20;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 400;
}

.lstms-kanban-feedback.is-error {
    background: rgba(255, 87, 87, 0.14);
    color: #9b2431;
}

.lstms-kanban-board {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(255px, 1fr);
    gap: clamp(14px, 1.45vw, 24px);
    width: 100%;
    overflow-x: auto;
    padding: 1px 2px 12px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
}

.lstms-kanban-board[data-board-mode="status"] {
    grid-template-columns: repeat(4, minmax(235px, 1fr));
    grid-auto-flow: row;
}

.lstms-kanban-column {
    min-width: 0;
    min-height: clamp(360px, 32vw, 510px);
    display: flex;
    flex-direction: column;
    border: 1px solid #d9e1e5;
    border-radius: 28px;
    background: #f9fafb;
    overflow: hidden;
    scroll-snap-align: start;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.lstms-kanban-column.is-drag-over {
    border-color: var(--lstms-primary);
    box-shadow: 0 0 0 4px rgba(10, 29, 41, 0.09);
    transform: translateY(-2px);
}

.lstms-kanban-column__heading {
    min-height: clamp(34px, 2.65vw, 43px);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 7px 14px;
    border-radius: 999px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(8px, 0.65vw, 10.5px);
    font-weight: 400;
    letter-spacing: 0.045em;
    text-align: center;
    text-transform: uppercase;
}

.lstms-kanban-column__heading strong {
    min-width: 21px;
    height: 21px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.22);
    color: inherit;
    font-size: 9px;
    font-weight: 600;
}

.lstms-kanban-column--not-started .lstms-kanban-column__heading { background: #aeb0b2; }
.lstms-kanban-column--in-progress .lstms-kanban-column__heading { background: #ff9137; }
.lstms-kanban-column--waiting .lstms-kanban-column__heading { background: #ff2d36; }
.lstms-kanban-column--done .lstms-kanban-column__heading { background: #7ed957; }
.lstms-kanban-column--custom .lstms-kanban-column__heading { background: #0a1d29; }
.lstms-kanban-column--unset .lstms-kanban-column__heading { background: #84929a; }

.lstms-kanban-column__body {
    min-height: 100%;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 11px;
    padding: clamp(12px, 1.05vw, 17px);
}

.lstms-kanban-column__empty {
    min-height: 95px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    border: 1px dashed rgba(20, 47, 63, 0.18);
    border-radius: 18px;
    color: #9aa1a5;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 300;
    text-align: center;
}

.lstms-kanban-task {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 14px;
    border: 1px solid rgba(10, 29, 41, 0.13);
    border-left: 4px solid #aeb0b2;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 6px 17px rgba(10, 29, 41, 0.055);
    cursor: grab;
    transition: transform 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}

.lstms-kanban-task:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(10, 29, 41, 0.09);
}

.lstms-kanban-task.is-dragging {
    opacity: 0.42;
    cursor: grabbing;
}

.lstms-kanban-task--in-progress { border-left-color: #ff9137; }
.lstms-kanban-task--waiting { border-left-color: #ff2d36; }
.lstms-kanban-task--done {
    border-left-color: #7ed957;
    opacity: 0.78;
}

.lstms-kanban-task.is-overdue {
    box-shadow: 0 0 0 1px rgba(255, 45, 54, 0.16), 0 8px 20px rgba(10, 29, 41, 0.07);
}

.lstms-kanban-task__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.lstms-kanban-task__kind,
.lstms-kanban-task__overdue {
    font-family: "Poppins", sans-serif;
    font-size: 8px;
    font-weight: 600;
    letter-spacing: 0.065em;
    text-transform: uppercase;
}

.lstms-kanban-task__kind {
    color: #78848a;
}

.lstms-kanban-task__overdue {
    color: #e52635;
}

.lstms-kanban-task__title {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(12px, 0.9vw, 14.5px);
    font-weight: 500;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
    box-shadow: none;
}

.lstms-kanban-task__title:hover,
.lstms-kanban-task__title:focus-visible {
    color: var(--lstms-hover-dark);
}

.lstms-kanban-task__hierarchy {
    color: #76838a;
    font-family: "Poppins", sans-serif;
    font-size: 9px;
    font-weight: 300;
    line-height: 1.4;
}

.lstms-kanban-task__due {
    color: #485960;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 400;
}

.lstms-kanban-task.is-overdue .lstms-kanban-task__due {
    color: #d42635;
    font-weight: 500;
}

.lstms-kanban-task__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.lstms-kanban-task__chip {
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 8px;
    border-radius: 999px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 7.5px;
    font-weight: 400;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lstms-kanban-task__chip.is-category { background: #142f3f; }
.lstms-kanban-task__chip.is-brand { background: #70b33d; }
.lstms-kanban-task__chip.is-priority.is-low { background: #7ed957; }
.lstms-kanban-task__chip.is-priority.is-medium { background: #ff9137; }
.lstms-kanban-task__chip.is-priority.is-high { background: #ff5757; }
.lstms-kanban-task__chip.is-priority.is-urgent { background: #c8162e; }
.lstms-kanban-task__chip.is-status.is-not-started { background: #aeb0b2; }
.lstms-kanban-task__chip.is-status.is-in-progress { background: #ff9137; }
.lstms-kanban-task__chip.is-status.is-waiting { background: #ff2d36; }
.lstms-kanban-task__chip.is-status.is-done { background: #70b33d; }

.lstms-kanban-task__progress {
    display: grid;
    gap: 5px;
    padding-top: 2px;
}

.lstms-kanban-task__progress-copy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #758188;
    font-family: "Poppins", sans-serif;
    font-size: 8.5px;
    font-weight: 300;
}

.lstms-kanban-task__progress-copy strong {
    color: var(--lstms-primary);
    font-size: 9px;
    font-weight: 600;
}

.lstms-kanban-task__progress-track {
    width: 100%;
    height: 5px;
    display: block;
    border-radius: 999px;
    background: #e8edef;
    overflow: hidden;
}

.lstms-kanban-task__progress-fill {
    height: 100%;
    display: block;
    border-radius: inherit;
    background: #7ed957;
}

.lstms-kanban-task__mobile-move,
.lstms-kanban-mobile-tabs {
    display: none;
}

.lstms-kanban-empty {
    margin-top: 14px;
    padding: 20px;
    border-radius: 16px;
    background: #f7f8f8;
    color: #7a858b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    text-align: center;
}

@media (max-width: 1120px) {
    .lstms-kanban-board[data-board-mode="status"] {
        grid-template-columns: none;
        grid-auto-flow: column;
        grid-auto-columns: minmax(255px, 310px);
    }
}

@media (max-width: 760px) {
    .lstms-kanban-card {
        padding-left: 12px;
        padding-right: 12px;
    }

    .lstms-kanban-card__top {
        align-items: flex-start;
        flex-direction: column;
    }

    .lstms-kanban-board-by {
        width: 100%;
        justify-content: space-between;
    }

    .lstms-kanban-board-by select {
        flex: 1 1 auto;
        width: auto;
        max-width: 220px;
    }

    .lstms-kanban-mobile-tabs {
        display: flex;
        gap: 7px;
        width: 100%;
        margin: 0 0 13px;
        padding-bottom: 6px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .lstms-kanban-mobile-tab {
        min-height: 37px;
        flex: 0 0 auto;
        margin: 0;
        padding: 0 13px;
        border: 1px solid rgba(10, 29, 41, 0.16);
        border-radius: 999px;
        background: #ffffff;
        color: var(--lstms-primary);
        font-family: "Poppins", sans-serif;
        font-size: 9px;
        font-weight: 400;
        box-shadow: none;
    }

    .lstms-kanban-mobile-tab.is-active {
        border-color: #0a1d29;
        background: #0a1d29;
        color: #ffffff;
    }

    .lstms-kanban-board,
    .lstms-kanban-board[data-board-mode="status"] {
        display: block;
        overflow: visible;
        padding: 0;
    }

    .lstms-kanban-column {
        display: none;
        min-height: 260px;
        border-radius: 23px;
    }

    .lstms-kanban-column.is-active {
        display: flex;
    }

    .lstms-kanban-task {
        cursor: default;
    }

    .lstms-kanban-task:hover {
        transform: none;
    }

    .lstms-kanban-task__mobile-move {
        display: grid;
        grid-template-columns: max-content minmax(0, 1fr);
        align-items: center;
        gap: 9px;
        margin-top: 2px;
        color: #78848a;
        font-family: "Poppins", sans-serif;
        font-size: 8px;
        font-weight: 600;
        letter-spacing: 0.055em;
        text-transform: uppercase;
    }

    .lstms-kanban-task__mobile-move select {
        width: 100%;
        height: 35px;
        margin: 0;
        padding: 0 11px;
        border: 1px solid rgba(10, 29, 41, 0.22);
        border-radius: 999px;
        background: #ffffff;
        color: var(--lstms-primary);
        font-family: "Poppins", sans-serif;
        font-size: 10px;
        font-weight: 300;
        text-transform: none;
        box-shadow: none;
    }
}

/* =========================================================
   Today dashboard — v1.11.0
   ========================================================= */
.lstms-today-shell {
    --lstms-today-gap: clamp(12px, 1.05vw, 20px);
    --lstms-today-radius: clamp(20px, 1.55vw, 30px);
    padding-top: clamp(20px, 2.2vw, 35px);
}

.lstms-today-topbar {
    width: 100%;
    min-height: clamp(82px, 6.2vw, 118px);
    display: flex;
    align-items: center;
    gap: clamp(18px, 2vw, 38px);
    padding: clamp(13px, 1.35vw, 25px) clamp(18px, 2.25vw, 36px);
    background: #fff;
    border-radius: 999px;
}

.lstms-today-date-block {
    flex: 0 0 clamp(170px, 14vw, 265px);
    min-width: 0;
}

.lstms-today-date-block h1 {
    margin: 0;
    color: var(--lstms-primary);
    font: 500 clamp(24px, 2vw, 32px)/1.08 "Poppins", sans-serif;
}

.lstms-today-date-block p {
    margin: 5px 0 0;
    color: var(--lstms-muted);
    font: 300 clamp(10px, .94vw, 15px)/1.2 "Poppins", sans-serif;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.lstms-today-summary {
    flex: 1 1 auto;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: center;
    gap: clamp(10px, 1vw, 19px);
}

.lstms-today-stat {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: clamp(8px, .8vw, 14px);
}

.lstms-today-stat__icon {
    width: clamp(42px, 3.25vw, 62px);
    height: clamp(42px, 3.25vw, 62px);
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
}

.lstms-today-stat__icon svg {
    width: 54%;
    height: 54%;
}

.lstms-today-stat--red .lstms-today-stat__icon { background: #ff5757; }
.lstms-today-stat--green .lstms-today-stat__icon { background: #7ed957; }
.lstms-today-stat--blue .lstms-today-stat__icon { background: #0cc0df; }
.lstms-today-stat--purple .lstms-today-stat__icon { background: #e2a9f1; }
.lstms-today-stat--yellow .lstms-today-stat__icon { background: #ffde59; }

.lstms-today-stat__copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.lstms-today-stat small {
    color: var(--lstms-muted);
    font: 300 clamp(8px, .8vw, 13px)/1.15 "Poppins", sans-serif;
    letter-spacing: .037em;
    text-transform: uppercase;
    white-space: nowrap;
}

.lstms-today-stat strong {
    margin-top: 2px;
    color: var(--lstms-primary);
    font: 600 clamp(20px, 1.9vw, 30px)/1 "Poppins", sans-serif;
    white-space: nowrap;
}

.lstms-today-layout {
    display: grid;
    grid-template-columns: minmax(178px, .72fr) minmax(600px, 3.05fr) minmax(280px, 1.12fr);
    grid-template-areas: "left main right";
    align-items: start;
    gap: var(--lstms-today-gap);
    margin-top: var(--lstms-today-gap);
}

.lstms-today-left-rail,
.lstms-today-main-column,
.lstms-today-right-rail {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: var(--lstms-today-gap);
}

.lstms-today-left-rail { grid-area: left; }
.lstms-today-main-column { grid-area: main; }
.lstms-today-right-rail { grid-area: right; }

.lstms-today-card {
    position: relative;
    min-width: 0;
    padding: clamp(14px, 1.15vw, 22px);
    background: #fff;
    border-radius: var(--lstms-today-radius);
}

.lstms-today-card-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    margin-bottom: clamp(12px, 1vw, 18px);
}

.lstms-today-card-heading h2,
.lstms-rescue-heading h2 {
    min-width: 0;
    margin: 0;
    color: var(--lstms-primary);
    font: 500 clamp(12px, 1vw, 16px)/1.25 "Poppins", sans-serif;
}

.lstms-today-card-heading__icon {
    width: clamp(23px, 1.55vw, 30px);
    height: clamp(23px, 1.55vw, 30px);
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    background: var(--lstms-primary);
}

.lstms-today-card-heading__icon svg {
    width: 56%;
    height: 56%;
}

.lstms-today-card-heading__icon--blue { background: #38b6ff; }
.lstms-today-card-heading__icon--muted { background: #cddee1; color: #077386; }
.lstms-today-card-heading__icon--red { background: #ff2a2a; }
.lstms-today-card-heading__icon--dark { background: var(--lstms-primary); }

.lstms-card-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--lstms-primary);
    font: 600 clamp(10px, .82vw, 13px)/1.2 "Poppins", sans-serif;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
}

.lstms-card-link:hover,
.lstms-card-link:focus-visible {
    color: var(--lstms-hover-dark);
}

.lstms-view-all-link {
    margin: clamp(10px, .9vw, 16px) 0 0 auto;
}

.lstms-today-empty {
    margin: 0;
    padding: clamp(13px, 1vw, 18px);
    border: 1px dashed #c9d2d8;
    border-radius: 18px;
    color: #6b7479;
    font: 300 clamp(11px, .85vw, 13px)/1.45 "Poppins", sans-serif;
}

/* Daily Reset */
.lstms-daily-reset-card {
    overflow: hidden;
    border-left: 5px solid #38b6ff;
}

.lstms-daily-reset-list {
    display: flex;
    flex-direction: column;
    gap: clamp(10px, .85vw, 15px);
}

.lstms-daily-reset-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    color: #000;
    font: 500 clamp(10px, .82vw, 13px)/1.28 "Poppins", sans-serif;
}

.lstms-daily-reset-row > span:first-child {
    min-width: 0;
}

.lstms-daily-reset-checks {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 4px;
    flex: 0 0 auto;
}

.lstms-mini-check {
    width: 15px;
    height: 15px;
    position: relative;
    display: inline-block;
}

.lstms-mini-check input {
    width: 1px;
    height: 1px;
    position: absolute;
    opacity: 0;
}

.lstms-mini-check span[aria-hidden="true"] {
    width: 15px;
    height: 15px;
    display: block;
    border: 1px solid #7e878c;
    border-radius: 3px;
    background: #fff;
    cursor: pointer;
}

.lstms-mini-check input:checked + span {
    border-color: #38b6ff;
    background: #38b6ff;
    box-shadow: inset 0 0 0 3px #fff;
}

.lstms-mini-check input:focus-visible + span {
    outline: 3px solid rgba(56, 182, 255, .24);
    outline-offset: 2px;
}

.lstms-daily-reset-button {
    width: 100%;
    margin-top: clamp(13px, 1vw, 18px);
    padding-top: 11px;
    border-top: 1px solid #cfd6da;
    color: #38b6ff;
}

.lstms-daily-reset-progress {
    height: 7px;
    margin-top: 9px;
    overflow: hidden;
    border-radius: 999px;
    background: #cfe8ff;
}

.lstms-daily-reset-progress span {
    height: 100%;
    display: block;
    border-radius: inherit;
    background: #38b6ff;
    transition: width 180ms ease;
}

.lstms-today-feedback {
    min-height: 0;
    margin: 6px 0 0;
    color: #077386;
    font: 400 10px/1.3 "Poppins", sans-serif;
    text-align: center;
}

.lstms-today-feedback:empty { display: none; }
.lstms-today-feedback.is-error { color: #d32222; }

/* Gratitude */
.lstms-gratitude-card {
    background: #effdff;
}

.lstms-gratitude-fields {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.lstms-gratitude-fields label {
    min-height: 34px;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
    border: 1px solid #d4e1e4;
    border-radius: 999px;
    background: rgba(255,255,255,.86);
}

.lstms-gratitude-fields label > span {
    color: #cddee1;
    font-size: 13px;
}

.lstms-gratitude-fields input {
    width: 100%;
    min-width: 0;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #000;
    font: 300 clamp(9px, .74vw, 12px)/1.2 "Poppins", sans-serif;
}

.lstms-gratitude-fields input::placeholder { color: #c7ced0; }

.lstms-gratitude-button {
    min-height: 36px;
    margin-top: 12px;
    padding: 0 14px;
    border: 0;
    border-radius: 999px;
    background: #077386;
    color: #fff;
    font: 500 clamp(9px, .72vw, 12px)/1 "Poppins", sans-serif;
    cursor: pointer;
}

/* Main task panel */
.lstms-today-tasks-card {
    padding: clamp(13px, 1vw, 18px);
    background: #c8d5dd;
}

.lstms-today-tasks-card .lstms-today-card-heading {
    padding: 0 3px;
}

.lstms-today-task-list {
    display: flex;
    flex-direction: column;
    gap: clamp(9px, .75vw, 14px);
}

.lstms-today-task-row {
    --task-accent: #0cc0df;
    min-height: clamp(56px, 4.2vw, 80px);
    display: grid;
    grid-template-columns: minmax(190px, 1.6fr) minmax(74px, .45fr) minmax(105px, .66fr) minmax(80px, .48fr) minmax(126px, .78fr);
    align-items: stretch;
    overflow: hidden;
    border-left: 5px solid var(--task-accent);
    border-radius: 999px;
    background: #071f2d;
    color: #fff;
}

.lstms-today-task-row > * {
    min-width: 0;
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(8px, .8vw, 13px) clamp(8px, .9vw, 15px);
    border-left: 1px solid rgba(255,255,255,.35);
}

.lstms-today-task-row > :first-child { border-left: 0; }

.lstms-today-task-row__title {
    flex-direction: column;
    align-items: flex-start;
    border: 0;
    background: transparent;
    color: #fff;
    font: 300 clamp(10px, .9vw, 14px)/1.2 "Poppins", sans-serif;
    letter-spacing: .037em;
    text-align: left;
    cursor: pointer;
}

.lstms-today-task-row__title small {
    margin-top: 3px;
    color: #aebdc5;
    font-size: .72em;
    letter-spacing: 0;
}

.lstms-today-task-row__date {
    color: #fff;
    font: 300 clamp(9px, .78vw, 13px)/1.15 "Poppins", sans-serif;
    text-align: center;
}

.lstms-today-task-row__brand,
.lstms-today-priority {
    align-self: center;
    min-height: 31px;
    margin: 9px;
    padding: 5px 11px;
    border: 1px solid #fff;
    border-radius: 999px;
    color: #fff;
    font: 400 clamp(9px, .72vw, 12px)/1.15 "Poppins", sans-serif;
    letter-spacing: .04em;
    text-align: center;
}

.lstms-today-task-row__brand { background: #0cc0df; }
.lstms-today-priority { font-weight: 600; text-transform: uppercase; }
.lstms-today-priority--low { background: #6ea435; }
.lstms-today-priority--medium { background: #ff9137; }
.lstms-today-priority--high { background: #ff2a2a; }
.lstms-today-priority--urgent { background: #fff; color: #ff2a2a; }
.lstms-today-priority--none { background: #a6a6a6; }

.lstms-today-status-wrap {
    padding: 8px 12px !important;
}

.lstms-today-status {
    width: 100%;
    min-height: 35px;
    padding: 0 32px 0 13px;
    border: 1px solid #fff;
    border-radius: 999px;
    background-color: #a6a6a6;
    color: #fff;
    font: 400 clamp(9px, .72vw, 12px)/1 "Poppins", sans-serif;
    text-transform: uppercase;
    cursor: pointer;
}

.lstms-today-status--in-progress { background-color: #ff9137; }
.lstms-today-status--waiting { background-color: #ff2a2a; }
.lstms-today-status--done { background-color: #7ed957; }

/* Centre lower cards */
.lstms-today-secondary-grid {
    display: grid;
    grid-template-columns: minmax(0, .86fr) minmax(0, 1.4fr);
    gap: var(--lstms-today-gap);
}

.lstms-rescue-card {
    padding-top: 0;
    overflow: hidden;
}

.lstms-rescue-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 calc(clamp(14px, 1.15vw, 22px) * -1) clamp(12px, 1vw, 18px);
    padding: clamp(10px, .85vw, 15px) clamp(14px, 1.15vw, 22px);
    background: #ff2a2a;
}

.lstms-rescue-heading h2 { color: #fff; }

.lstms-rescue-heading__icon {
    width: 25px;
    height: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #fff;
    color: #ff2a2a;
    font: 600 15px/1 "Poppins", sans-serif;
}

.lstms-rescue-list,
.lstms-deadline-list {
    display: flex;
    flex-direction: column;
    gap: clamp(9px, .75vw, 14px);
}

.lstms-rescue-item {
    width: 100%;
    min-height: clamp(50px, 3.8vw, 72px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 10px 15px;
    border: 1px solid #e3d5d5;
    border-left: 4px solid #0cc0df;
    border-radius: 24px;
    background: #fff;
    color: #000;
    font: 300 clamp(10px, .88vw, 14px)/1.2 "Poppins", sans-serif;
    letter-spacing: .037em;
    text-align: left;
    cursor: pointer;
}

.lstms-rescue-item small {
    margin-top: 3px;
    color: #7a8185;
    font-size: .72em;
    letter-spacing: 0;
}

.lstms-deadline-row {
    width: 100%;
    min-height: clamp(52px, 4vw, 74px);
    display: grid;
    grid-template-columns: minmax(130px, 1fr) minmax(68px, .33fr) minmax(105px, .55fr);
    align-items: stretch;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-left: 5px solid #0cc0df;
    border-radius: 999px;
    background: #071f2d;
    color: #fff;
    cursor: pointer;
}

.lstms-deadline-row > span {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 9px 13px;
    border-left: 1px solid rgba(255,255,255,.35);
    font: 300 clamp(9px, .8vw, 13px)/1.2 "Poppins", sans-serif;
}

.lstms-deadline-row > span:first-child {
    justify-content: flex-start;
    border-left: 0;
    text-align: left;
}

.lstms-deadline-row__brand {
    align-self: center;
    min-height: 30px;
    margin: 8px;
    border: 1px solid #fff !important;
    border-radius: 999px;
    background: #0cc0df;
}

/* Time plan */
.lstms-time-plan-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.lstms-time-plan-grid > div {
    min-height: clamp(64px, 4.8vw, 90px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 8px 4px;
    border: 1px solid #b4b4b4;
    border-radius: 999px;
    background: #d9d9d9;
    text-align: center;
}

.lstms-time-plan-grid small {
    color: var(--lstms-muted);
    font: 300 clamp(7px, .62vw, 10px)/1.15 "Poppins", sans-serif;
    letter-spacing: .037em;
    text-transform: uppercase;
}

.lstms-time-plan-grid strong {
    margin-top: 3px;
    color: var(--lstms-primary);
    font: 600 clamp(14px, 1.15vw, 18px)/1 "Poppins", sans-serif;
}

/* Reminders */
.lstms-reminders-card {
    border: 2px dashed #ff2a2a;
    background: #ffe9e9;
}

.lstms-reminder-list,
.lstms-meeting-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.lstms-reminder-row {
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #000;
    font: 300 clamp(10px, .88vw, 14px)/1.32 "Poppins", sans-serif;
    letter-spacing: .037em;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.lstms-reminder-dot {
    width: 10px;
    height: 10px;
    margin-top: 4px;
    border-radius: 50%;
    background: #e2a9f1;
}

.lstms-reminder-row:nth-child(even) .lstms-reminder-dot { background: #ff5757; }

/* Meetings */
.lstms-meeting-row {
    display: grid;
    grid-template-columns: 68px minmax(0, 1fr);
    color: #000;
    font: 300 clamp(10px, .82vw, 13px)/1.3 "Poppins", sans-serif;
    letter-spacing: .037em;
    text-decoration: none;
}

.lstms-meeting-row time {
    padding-right: 10px;
    border-right: 1px solid #c7c7c7;
}

.lstms-meeting-row span { padding-left: 10px; }
.lstms-meeting-row.is-completed { opacity: .55; text-decoration: line-through; }

.lstms-meetings-footer {
    display: flex;
    justify-content: flex-end;
    gap: 14px;
    margin-top: 10px;
}

/* Weather */
.lstms-weather-card {
    background: #fffdf9;
}

.lstms-weather-card .lstms-today-card-heading {
    margin-bottom: clamp(9px, .72vw, 13px);
}

.lstms-weather-list {
    display: flex;
    flex-direction: column;
}

.lstms-weather-row {
    min-height: clamp(31px, 2.15vw, 41px);
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) auto;
    align-items: center;
    gap: 7px;
    border-bottom: 1px solid #eee4da;
    color: #000;
    font: 300 clamp(9px, .75vw, 12px)/1.2 "Poppins", sans-serif;
}

.lstms-weather-row:last-child {
    border-bottom: 0;
}

.lstms-weather-row.is-today {
    font-weight: 600;
}

.lstms-weather-row__icon {
    width: 21px;
    height: 21px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ff9137;
}

.lstms-weather-row__icon svg {
    width: 100%;
    height: 100%;
}

.lstms-weather-row time {
    color: var(--lstms-primary);
}

.lstms-weather-row__temps {
    display: flex;
    align-items: baseline;
    gap: 3px;
    color: #6a7074;
    white-space: nowrap;
}

.lstms-weather-row__temps strong {
    color: var(--lstms-primary);
    font-weight: 600;
}

.lstms-weather-source {
    display: block;
    margin-top: 9px;
    color: #8b8f91;
    font: 300 8px/1.2 "Poppins", sans-serif;
    text-align: right;
    text-decoration: none;
}

.lstms-weather-source:hover,
.lstms-weather-source:focus-visible {
    color: var(--lstms-hover-dark);
}

/* Shopping and Meal Planner integration cards */
.lstms-connected-card {
    overflow: hidden;
}

.lstms-connected-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.lstms-connected-card__top .lstms-today-card-heading {
    flex: 1 1 auto;
}

.lstms-connected-card__total {
    flex: 0 0 auto;
    color: var(--lstms-primary);
    font: 600 clamp(14px, 1.15vw, 18px)/1.15 "Poppins", sans-serif;
    white-space: nowrap;
}

.lstms-connected-empty {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: clamp(13px, 1vw, 17px);
    border: 1px dashed #cdd5d9;
    border-radius: 18px;
    background: #fafafa;
}

.lstms-connected-empty strong {
    color: var(--lstms-primary);
    font: 500 clamp(10px, .82vw, 13px)/1.35 "Poppins", sans-serif;
}

.lstms-connected-empty span {
    color: #777f83;
    font: 300 clamp(9px, .72vw, 11px)/1.45 "Poppins", sans-serif;
}

.lstms-shopping-list,
.lstms-meal-ingredients {
    display: flex;
    flex-direction: column;
}

.lstms-shopping-row {
    min-height: 38px;
    display: grid;
    grid-template-columns: 55px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid #e2e2e2;
    color: #000;
    font: 300 clamp(9px, .76vw, 12px)/1.25 "Poppins", sans-serif;
}

.lstms-shopping-row:last-child {
    border-bottom: 0;
}

.lstms-shopping-row__date {
    color: #6e7478;
}

.lstms-shopping-row__title {
    min-width: 0;
}

.lstms-shopping-row__cost {
    color: var(--lstms-primary);
    font-weight: 500;
    white-space: nowrap;
}

.lstms-connected-card__link {
    width: max-content;
    margin: 12px 0 0 auto;
}

.lstms-connected-card__link.is-disabled {
    opacity: .38;
    cursor: default;
    pointer-events: none;
}

.lstms-meal-summary {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d8d8d8;
}

.lstms-meal-summary strong {
    color: #000;
    font: 500 clamp(11px, .88vw, 14px)/1.3 "Poppins", sans-serif;
}

.lstms-meal-summary span {
    color: var(--lstms-primary);
    font: 600 clamp(14px, 1.15vw, 18px)/1.15 "Poppins", sans-serif;
    white-space: nowrap;
}

.lstms-meal-caption {
    margin: 9px 0 5px;
    color: #5f666a;
    font: italic 300 clamp(8px, .68vw, 10px)/1.35 "Poppins", sans-serif;
}

.lstms-meal-ingredient {
    min-height: 24px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 40px 40px;
    align-items: start;
    gap: 7px;
    color: #000;
    font: 300 clamp(8px, .68vw, 10px)/1.3 "Poppins", sans-serif;
}

.lstms-meal-ingredient__title {
    min-width: 0;
}

.lstms-meal-ingredient > span:nth-child(2),
.lstms-meal-ingredient > span:nth-child(3) {
    text-align: right;
    white-space: nowrap;
}

/* View-all popup */
.lstms-today-list-modal[hidden] { display: none !important; }

.lstms-today-list-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.lstms-today-list-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 29, 41, .48);
    backdrop-filter: blur(7px);
}

.lstms-today-list-modal__dialog {
    width: min(680px, 94vw);
    max-height: min(760px, 88vh);
    position: relative;
    z-index: 1;
    overflow: auto;
    padding: clamp(22px, 2vw, 34px);
    border: 1px solid #0cc0df;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 28px 90px rgba(10, 29, 41, .24);
}

.lstms-today-list-modal__dialog h2 {
    margin: 0 42px 20px 0;
    color: var(--lstms-primary);
    font: 500 clamp(21px, 1.7vw, 28px)/1.2 "Poppins", sans-serif;
}

.lstms-today-list-modal__close {
    width: 38px;
    height: 38px;
    position: absolute;
    top: 18px;
    right: 18px;
    border: 0;
    border-radius: 50%;
    background: #f0f2f3;
    color: var(--lstms-primary);
    font: 400 27px/1 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-today-list-modal__content {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.lstms-today-modal-task {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    padding: 13px 16px;
    border: 1px solid #d7dde0;
    border-left: 4px solid #0cc0df;
    border-radius: 18px;
    background: #fff;
    color: #000;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.lstms-today-modal-task strong {
    color: var(--lstms-primary);
    font: 500 13px/1.3 "Poppins", sans-serif;
}

.lstms-today-modal-task span {
    color: var(--lstms-muted);
    font: 300 11px/1.3 "Poppins", sans-serif;
}

@media (max-width: 1450px) {
    .lstms-today-layout {
        grid-template-columns: minmax(170px, .7fr) minmax(560px, 2.75fr) minmax(260px, 1.05fr);
    }

    .lstms-today-task-row {
        grid-template-columns: minmax(175px, 1.5fr) 75px 105px 78px 120px;
    }
}

@media (max-width: 1180px) {
    .lstms-today-topbar {
        align-items: flex-start;
        border-radius: 34px;
    }

    .lstms-today-summary {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .lstms-today-layout {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-areas:
            "main main"
            "right left";
    }
}

@media (max-width: 760px) {
    .lstms-today-shell {
        padding: 20px 16px 28px;
    }

    .lstms-today-topbar {
        flex-direction: column;
        gap: 16px;
        padding: 20px;
        border-radius: 28px;
    }

    .lstms-today-date-block {
        flex-basis: auto;
    }

    .lstms-today-summary {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lstms-today-stat:last-child {
        grid-column: 1 / -1;
    }

    .lstms-today-layout {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "main"
            "right"
            "left";
    }

    .lstms-today-secondary-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .lstms-today-task-row {
        grid-template-columns: minmax(0, 1fr) minmax(105px, .45fr);
        border-radius: 24px;
    }

    .lstms-today-task-row > * {
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.25);
    }

    .lstms-today-task-row__title {
        grid-column: 1 / -1;
        min-height: 54px;
        border-top: 0;
    }

    .lstms-today-task-row__date,
    .lstms-today-task-row__brand,
    .lstms-today-priority,
    .lstms-today-status-wrap {
        margin: 0;
        border-radius: 0;
    }

    .lstms-today-task-row__brand,
    .lstms-today-priority {
        min-height: 44px;
        border: 0;
    }

    .lstms-today-status-wrap {
        grid-column: 1 / -1;
    }

    .lstms-deadline-row {
        grid-template-columns: minmax(0, 1fr) 78px;
        border-radius: 22px;
    }

    .lstms-deadline-row__brand {
        grid-column: 1 / -1;
        margin: 0;
        border-radius: 0;
    }

    .lstms-time-plan-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 430px) {
    .lstms-today-summary {
        grid-template-columns: minmax(0, 1fr);
    }

    .lstms-today-stat:last-child { grid-column: auto; }

    .lstms-time-plan-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .lstms-time-plan-grid > div {
        min-height: 58px;
        border-radius: 22px;
    }
}

/* v1.12.0 Add Tasks phase-one polish */
.lstms-quick-grid .lstms-field--title { grid-column: span 5; }
.lstms-quick-grid .lstms-field--due-date { grid-column: span 2; }
.lstms-quick-grid .lstms-quick-duration { grid-column: span 3; }
.lstms-quick-grid .lstms-field--priority,
.lstms-quick-grid .lstms-field--status { grid-column: span 2; }
.lstms-quick-grid .lstms-field--category,
.lstms-quick-grid .lstms-field--brand { grid-column: span 4; }
.lstms-quick-grid .lstms-field--reminder { grid-column: span 2; }

.lstms-detailed-grid--timing > .lstms-recurrence-end-field,
.lstms-detailed-grid--timing > .lstms-recurrence-end-detail { grid-column: span 3; }

.lstms-form-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: clamp(24px, 2vw, 32px);
}
.lstms-form-actions .lstms-save-button { margin-top: 0; }
.lstms-save-button--secondary {
    background: transparent;
    color: var(--lstms-primary);
    border: 1px solid var(--lstms-primary);
    font-weight: 400;
}
.lstms-save-button--secondary:hover,
.lstms-save-button--secondary:focus-visible {
    background: var(--lstms-primary);
    color: var(--lstms-white);
}
.lstms-notice--warning {
    background: #fff8dc;
    color: #6a5310;
    border: 1px solid #ead27a;
}

.lstms-entry-field--recurrence-end,
.lstms-entry-field--recurrence-detail,
.lstms-entry-field--reminder { grid-column: span 2; }

@media (max-width: 1120px) {
    .lstms-quick-grid .lstms-field--title { grid-column: span 6; }
    .lstms-quick-grid .lstms-quick-duration,
    .lstms-quick-grid .lstms-field--due-date,
    .lstms-quick-grid .lstms-field--priority,
    .lstms-quick-grid .lstms-field--status,
    .lstms-quick-grid .lstms-field--reminder { grid-column: span 3; }
    .lstms-entry-field--recurrence-end,
    .lstms-entry-field--recurrence-detail,
    .lstms-entry-field--reminder { grid-column: span 3; }
}

@media (max-width: 760px) {
    .lstms-quick-grid .lstms-field--title,
    .lstms-quick-grid .lstms-field--category,
    .lstms-quick-grid .lstms-field--brand { grid-column: span 12; }
    .lstms-quick-grid .lstms-quick-duration,
    .lstms-quick-grid .lstms-field--due-date,
    .lstms-quick-grid .lstms-field--priority,
    .lstms-quick-grid .lstms-field--status,
    .lstms-quick-grid .lstms-field--reminder,
    .lstms-detailed-grid--timing > .lstms-recurrence-end-field,
    .lstms-detailed-grid--timing > .lstms-recurrence-end-detail,
    .lstms-entry-field--recurrence-end,
    .lstms-entry-field--recurrence-detail,
    .lstms-entry-field--reminder { grid-column: span 12; }
    .lstms-form-actions { align-items: stretch; }
    .lstms-form-actions .lstms-save-button { width: 100%; }
}

/* v1.13.0 task resources, drafts, ordering and entry enhancements */
.lstms-save-button--draft {
    background: #fff;
    color: var(--lstms-primary);
    border: 1px dashed rgba(20, 47, 63, 0.55);
    font-weight: 400;
}
.lstms-save-button--draft:hover,
.lstms-save-button--draft:focus-visible {
    background: #0a1d29;
    border-color: #0a1d29;
    color: #fff;
}

.lstms-repeatable-date-list,
.lstms-attendee-list {
    display: grid;
    gap: 9px;
}
.lstms-repeatable-date-row,
.lstms-attendee-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px;
    align-items: center;
    gap: 8px;
}
.lstms-attendee-row {
    grid-template-columns: minmax(150px, 1fr) minmax(190px, 1.25fr) 34px;
}
.lstms-repeatable-remove {
    width: 31px;
    height: 31px;
    display: inline-grid;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(20, 47, 63, 0.18);
    border-radius: 50%;
    background: #fff;
    color: #142f3f;
    font: 400 18px/1 "Poppins", sans-serif;
    cursor: pointer;
}
.lstms-repeatable-remove:hover,
.lstms-repeatable-remove:focus-visible {
    border-color: #ff5757;
    background: #ff5757;
    color: #fff;
}
.lstms-add-inline-button {
    width: max-content;
    margin-top: 8px;
    padding: 6px 12px;
    border: 1px solid rgba(20, 47, 63, 0.22);
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 400 10px/1.2 "Poppins", sans-serif;
    cursor: pointer;
}
.lstms-add-inline-button:hover,
.lstms-add-inline-button:focus-visible {
    background: #0a1d29;
    border-color: #0a1d29;
    color: #fff;
}
.lstms-modal-exceptions {
    align-self: start;
}

.lstms-drag-handle {
    width: 32px;
    min-width: 32px;
    height: 32px;
    display: inline-grid;
    place-items: center;
    align-self: end;
    margin-bottom: 1px;
    padding: 0;
    border: 1px solid rgba(20, 47, 63, 0.16);
    border-radius: 12px;
    background: rgba(20, 47, 63, 0.05);
    color: #142f3f;
    font: 600 15px/1 "Poppins", sans-serif;
    letter-spacing: -3px;
    cursor: grab;
}
.lstms-drag-handle:active { cursor: grabbing; }
[data-lstms-sortable-item] {
    transition: opacity 140ms ease, transform 140ms ease, box-shadow 140ms ease;
}
[data-lstms-sortable-item].is-dragging {
    opacity: 0.55;
    transform: scale(0.995);
    box-shadow: 0 12px 28px rgba(20, 47, 63, 0.15);
}

.lstms-modal-draft-badge,
.lstms-draft-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 3px 9px;
    border: 1px dashed rgba(20, 47, 63, 0.45);
    border-radius: 999px;
    background: #fff8dc;
    color: #6a5310;
    font: 600 9px/1 "Poppins", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.lstms-task-row--draft {
    background: rgba(255, 248, 220, 0.34);
}
.lstms-task-row--draft .lstms-task-title-button {
    color: #6a5310;
}

.lstms-resource-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.lstms-resource-panel {
    min-width: 0;
    padding: 14px;
    border: 1px solid rgba(20, 47, 63, 0.12);
    border-radius: 18px;
    background: #fbfaf9;
}
.lstms-resource-panel__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
    color: #142f3f;
    font-size: 11px;
}
.lstms-attachment-list,
.lstms-related-link-list {
    display: grid;
    gap: 8px;
}
.lstms-attachment-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 31px;
    align-items: center;
    gap: 8px;
    min-height: 39px;
    padding: 5px 7px 5px 11px;
    border: 1px solid rgba(20, 47, 63, 0.12);
    border-radius: 13px;
    background: #fff;
}
.lstms-attachment-row a {
    min-width: 0;
    overflow: hidden;
    color: #077386;
    font-size: 10px;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.lstms-attachment-row a:hover,
.lstms-attachment-row a:focus-visible { text-decoration: underline; }
.lstms-related-link-row {
    display: grid;
    grid-template-columns: minmax(120px, 0.8fr) minmax(180px, 1.35fr) 31px;
    align-items: center;
    gap: 8px;
}
.lstms-related-link-row input {
    width: 100%;
    min-width: 0;
    min-height: 39px;
    padding: 8px 11px;
    border: 1px solid rgba(20, 47, 63, 0.17);
    border-radius: 13px;
    background: #fff;
    color: #142f3f;
    font: 300 10px/1.25 "Poppins", sans-serif;
}
.lstms-resource-empty {
    margin: 3px 0;
    color: #7b8083;
    font: 300 10px/1.45 "Poppins", sans-serif;
}

.lstms-activity-list {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.lstms-activity-list li {
    display: grid;
    grid-template-columns: 10px minmax(0, 1fr);
    gap: 9px;
    align-items: start;
}
.lstms-activity-dot {
    width: 8px;
    height: 8px;
    margin-top: 5px;
    border-radius: 50%;
    background: #0cc0df;
}
.lstms-activity-list li > div {
    display: grid;
    gap: 2px;
}
.lstms-activity-list strong {
    color: #142f3f;
    font: 500 10px/1.35 "Poppins", sans-serif;
}
.lstms-activity-list span:not(.lstms-activity-dot) {
    color: #45494c;
    font: 300 10px/1.4 "Poppins", sans-serif;
}
.lstms-activity-list small {
    color: #8a8f92;
    font: 300 8px/1.35 "Poppins", sans-serif;
}

.lstms-modal-publish-button,
.lstms-modal-duplicate-button {
    min-height: 39px;
    padding: 8px 16px;
    border-radius: 22px;
    font: 400 11px/1.2 "Poppins", sans-serif;
    cursor: pointer;
}
.lstms-modal-publish-button {
    border: 1px solid #7ed957;
    background: #7ed957;
    color: #fff;
}
.lstms-modal-duplicate-button {
    border: 1px solid rgba(20, 47, 63, 0.25);
    background: #fff;
    color: #142f3f;
}
.lstms-modal-publish-button:hover,
.lstms-modal-publish-button:focus-visible,
.lstms-modal-duplicate-button:hover,
.lstms-modal-duplicate-button:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}
.lstms-duplicate-panel {
    flex: 1 0 100%;
    display: grid;
    grid-template-columns: minmax(160px, auto) minmax(210px, 1fr) auto;
    align-items: center;
    gap: 8px 14px;
    padding: 11px 13px;
    border: 1px solid rgba(20, 47, 63, 0.15);
    border-radius: 16px;
    background: #f8f6f3;
    color: #142f3f;
    font-size: 10px;
}
.lstms-duplicate-panel > div {
    display: flex;
    gap: 7px;
}
.lstms-duplicate-panel button {
    padding: 6px 11px;
    border: 1px solid rgba(20, 47, 63, 0.25);
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 500 9px/1.2 "Poppins", sans-serif;
    cursor: pointer;
}
.lstms-duplicate-panel button:first-child {
    border-color: #0cc0df;
    background: #0cc0df;
    color: #fff;
}
.lstms-duplicate-panel small {
    grid-column: 1 / -1;
    color: #72777a;
    font-size: 8px;
}
.lstms-modal-footer__actions {
    flex-wrap: wrap;
}

@media (max-width: 920px) {
    .lstms-resource-grid { grid-template-columns: minmax(0, 1fr); }
    .lstms-duplicate-panel { grid-template-columns: minmax(0, 1fr); }
    .lstms-duplicate-panel small { grid-column: auto; }
}

@media (max-width: 760px) {
    .lstms-attendee-row,
    .lstms-related-link-row {
        grid-template-columns: minmax(0, 1fr) 32px;
    }
    .lstms-attendee-row input:nth-of-type(2),
    .lstms-related-link-row input:nth-of-type(2) {
        grid-column: 1 / 2;
    }
    .lstms-attendee-row .lstms-repeatable-remove,
    .lstms-related-link-row .lstms-repeatable-remove {
        grid-column: 2;
        grid-row: 1 / span 2;
        align-self: center;
    }
    .lstms-resource-panel__heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .lstms-modal-footer__actions > button {
        flex: 1 1 140px;
    }
    .lstms-drag-handle {
        touch-action: none;
    }
}
.lstms-entry-field--attendees,
.lstms-entry-field--exceptions {
    grid-column: span 4;
}
.lstms-repeatable-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 7px;
}
.lstms-repeatable-heading label { margin: 0; }
@media (max-width: 1120px) {
    .lstms-entry-field--attendees,
    .lstms-entry-field--exceptions { grid-column: span 6; }
}
@media (max-width: 760px) {
    .lstms-entry-field--attendees,
    .lstms-entry-field--exceptions { grid-column: span 12; }
}
.lstms-duplicate-panel[hidden] { display: none !important; }


/* v1.13.1 interaction polish */
.lstms-app-shell .lstms-save-button:hover,
.lstms-app-shell .lstms-save-button:focus-visible,
.lstms-app-shell .lstms-add-subtask-button:hover,
.lstms-app-shell .lstms-add-subtask-button:focus-visible,
.lstms-app-shell .lstms-add-subtask-button--project:hover,
.lstms-app-shell .lstms-add-subtask-button--project:focus-visible,
.lstms-app-shell .lstms-project-form .lstms-add-subtask-button:hover,
.lstms-app-shell .lstms-project-form .lstms-add-subtask-button:focus-visible,
.lstms-app-shell .lstms-modal-add-button:hover,
.lstms-app-shell .lstms-modal-add-button:focus-visible,
.lstms-app-shell .lstms-filter-toggle:hover,
.lstms-app-shell .lstms-filter-toggle:focus-visible,
.lstms-app-shell .lstms-add-inline-button:hover,
.lstms-app-shell .lstms-add-inline-button:focus-visible,
.lstms-app-shell .lstms-modal-publish-button:hover,
.lstms-app-shell .lstms-modal-publish-button:focus-visible,
.lstms-app-shell .lstms-modal-duplicate-button:hover,
.lstms-app-shell .lstms-modal-duplicate-button:focus-visible,
.lstms-app-shell .lstms-duplicate-panel button:hover,
.lstms-app-shell .lstms-duplicate-panel button:focus-visible {
    border-color: var(--lstms-hover-dark);
    background: var(--lstms-hover-dark);
    color: #fff;
}

.lstms-app-shell .lstms-task-title-button:hover,
.lstms-app-shell .lstms-task-title-button:focus-visible,
.lstms-app-shell .lstms-kanban-task__title:hover,
.lstms-app-shell .lstms-kanban-task__title:focus-visible,
.lstms-app-shell .lstms-card-link:hover,
.lstms-app-shell .lstms-card-link:focus-visible,
.lstms-app-shell .lstms-weather-source:hover,
.lstms-app-shell .lstms-weather-source:focus-visible,
.lstms-app-shell .lstms-attachment-row a:hover,
.lstms-app-shell .lstms-attachment-row a:focus-visible {
    color: var(--lstms-hover-dark);
}

/* Links and task titles that sit on the system's dark task rows use warm gold. */
.lstms-app-shell .lstms-today-task-row__title:hover,
.lstms-app-shell .lstms-today-task-row__title:focus-visible,
.lstms-app-shell .lstms-deadline-row:hover,
.lstms-app-shell .lstms-deadline-row:focus-visible {
    color: var(--lstms-hover-gold);
}

.lstms-app-shell .lstms-modal-field input:focus,
.lstms-app-shell .lstms-modal-field select:focus,
.lstms-app-shell .lstms-modal-field textarea:focus,
.lstms-app-shell .lstms-modal-duration:focus-within {
    border-color: var(--lstms-hover-dark);
    box-shadow: 0 0 0 3px rgba(10, 29, 41, 0.13);
}

/* v1.13.2 sortable row alignment fix
 * Drag handles are positioned independently so they never consume the title
 * column or push date/time fields out of alignment.
 */
.lstms-subtask-row,
.lstms-project-item-row--subtask,
.lstms-modal-child-row {
    position: relative;
}

.lstms-subtask-row,
.lstms-project-item-row--subtask {
    padding-left: 44px;
}

.lstms-subtask-labels,
.lstms-project-item-labels--subtask {
    padding-left: 47px;
}

.lstms-modal-child-row {
    padding-left: 42px;
}

.lstms-subtask-row > .lstms-drag-handle,
.lstms-project-item-row--subtask > .lstms-drag-handle,
.lstms-modal-child-row > .lstms-drag-handle {
    position: absolute;
    left: 2px;
    top: 50%;
    z-index: 2;
    align-self: auto;
    margin: 0;
    transform: translateY(-50%);
}

@media (max-width: 940px) {
    .lstms-subtask-row,
    .lstms-project-item-row--subtask {
        padding-left: 54px;
    }

    .lstms-subtask-labels,
    .lstms-project-item-labels--subtask {
        padding-left: 57px;
    }

    .lstms-subtask-row > .lstms-drag-handle,
    .lstms-project-item-row--subtask > .lstms-drag-handle {
        left: 12px;
    }
}

@media (max-width: 860px) {
    .lstms-modal-child-row {
        padding-left: 52px;
    }

    .lstms-modal-child-row > .lstms-drag-handle {
        left: 10px;
    }
}

@media (max-width: 760px) {
    .lstms-subtask-row > .lstms-drag-handle,
    .lstms-project-item-row--subtask > .lstms-drag-handle,
    .lstms-modal-child-row > .lstms-drag-handle {
        top: 14px;
        transform: none;
    }
}


/* v1.13.3 milestone heading and dark-row hover corrections */
.lstms-milestone-toolbar {
    justify-content: flex-start;
}

.lstms-milestone-toolbar > strong {
    margin-right: auto;
    text-align: left;
}

/* Elementor/theme button hover rules must not paint over the dark Today rows. */
.lstms-app-shell button.lstms-today-task-row__title,
.lstms-app-shell button.lstms-today-task-row__title:hover,
.lstms-app-shell button.lstms-today-task-row__title:focus,
.lstms-app-shell button.lstms-today-task-row__title:focus-visible {
    border: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    transform: none !important;
}

.lstms-app-shell button.lstms-today-task-row__title {
    color: #fff !important;
}

.lstms-app-shell button.lstms-today-task-row__title:hover,
.lstms-app-shell button.lstms-today-task-row__title:focus-visible {
    color: var(--lstms-hover-gold) !important;
}

.lstms-app-shell button.lstms-deadline-row,
.lstms-app-shell button.lstms-deadline-row:hover,
.lstms-app-shell button.lstms-deadline-row:focus,
.lstms-app-shell button.lstms-deadline-row:focus-visible {
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    background: #071f2d !important;
    background-color: #071f2d !important;
    background-image: none !important;
    box-shadow: none !important;
    transform: none !important;
}

.lstms-app-shell button.lstms-deadline-row:hover,
.lstms-app-shell button.lstms-deadline-row:focus-visible {
    color: var(--lstms-hover-gold) !important;
}

/* =========================================================
   Today productivity polish — v1.14.0
   ========================================================= */
.lstms-today-date-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.lstms-today-quick-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 9px;
}

.lstms-today-quick-actions a {
    min-height: 27px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 11px;
    border: 1px solid #cbd4d9;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 500 clamp(8px, .62vw, 10px)/1 "Poppins", sans-serif;
    text-decoration: none;
    white-space: nowrap;
}

.lstms-today-quick-actions a:hover,
.lstms-today-quick-actions a:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-today-progress-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: -4px 3px 12px;
    color: #425863;
    font: 300 clamp(9px, .72vw, 11px)/1.3 "Poppins", sans-serif;
}

.lstms-today-progress-line strong {
    color: #142f3f;
    font-weight: 500;
}

.lstms-carry-over-label,
.lstms-planning-gaps {
    display: inline-flex;
    align-items: center;
    width: max-content;
    max-width: 100%;
    margin-top: 4px;
    padding: 3px 7px;
    border-radius: 999px;
    font: 500 clamp(7px, .56vw, 9px)/1.1 "Poppins", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
    white-space: normal;
}

.lstms-carry-over-label {
    background: rgba(226, 172, 115, .18);
    color: #e2ac73;
    font-style: normal;
}

.lstms-planning-gaps {
    background: rgba(255, 222, 89, .16);
    color: #ffde59;
}

.lstms-rescue-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    cursor: default;
}

.lstms-rescue-item__main {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
    border: 0;
    background: transparent;
    color: #000;
    font: inherit;
    letter-spacing: inherit;
    text-align: left;
    cursor: pointer;
}

.lstms-rescue-item__main:hover,
.lstms-rescue-item__main:focus-visible {
    color: #0a1d29;
}

.lstms-rescue-item__actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
}

.lstms-rescue-item__actions button {
    min-height: 25px;
    padding: 0 8px;
    border: 1px solid #d9dfe2;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 500 8px/1 "Poppins", sans-serif;
    white-space: nowrap;
    cursor: pointer;
}

.lstms-rescue-item__actions button:hover,
.lstms-rescue-item__actions button:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-deadline-day-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.lstms-deadline-day-group h3 {
    margin: 1px 5px 0;
    color: #6d767b;
    font: 500 clamp(8px, .62vw, 10px)/1.2 "Poppins", sans-serif;
    letter-spacing: .09em;
}

.lstms-capacity-message {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: 10px;
    padding: 9px 11px;
    border-radius: 15px;
    background: #eef7f2;
    color: #436153;
    font: 300 clamp(8px, .67vw, 10px)/1.35 "Poppins", sans-serif;
}

.lstms-capacity-message strong {
    font-weight: 500;
}

.lstms-capacity-message.is-over {
    background: #ffe9e9;
    color: #a42121;
}

.lstms-capacity-message.is-light {
    background: #f2f5f7;
    color: #59666d;
}

.lstms-workload-days {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.lstms-workload-day {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) 48px;
    align-items: center;
    gap: 8px;
    color: #142f3f;
}

.lstms-workload-day time {
    display: flex;
    flex-direction: column;
    font: 300 8px/1.15 "Poppins", sans-serif;
}

.lstms-workload-day time strong {
    font-size: 10px;
    font-weight: 500;
}

.lstms-workload-day__bar,
.lstms-workload-week__bar {
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #e5e9eb;
}

.lstms-workload-day__bar span,
.lstms-workload-week__bar span {
    height: 100%;
    display: block;
    border-radius: inherit;
    background: #7ed957;
}

.lstms-workload-day.is-light .lstms-workload-day__bar span,
.lstms-workload-week.is-light .lstms-workload-week__bar span { background: #c5d1d7; }
.lstms-workload-day.is-balanced .lstms-workload-day__bar span,
.lstms-workload-week.is-balanced .lstms-workload-week__bar span { background: #7ed957; }
.lstms-workload-day.is-full .lstms-workload-day__bar span,
.lstms-workload-week.is-full .lstms-workload-week__bar span { background: #ffde59; }
.lstms-workload-day.is-over .lstms-workload-day__bar span,
.lstms-workload-week.is-over .lstms-workload-week__bar span { background: #ff5757; }

.lstms-workload-day__time {
    color: #142f3f;
    font: 500 9px/1 "Poppins", sans-serif;
    text-align: right;
    white-space: nowrap;
}

.lstms-workload-weeks {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.lstms-workload-week {
    padding: 15px;
    border: 1px solid #d9e0e3;
    border-radius: 20px;
    background: #fff;
}

.lstms-workload-week > header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 9px;
    color: #142f3f;
    font: 300 11px/1.3 "Poppins", sans-serif;
}

.lstms-workload-week > header strong { font-weight: 500; }

.lstms-workload-week__days {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 6px;
    margin-top: 11px;
}

.lstms-workload-week__days > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 8px 5px;
    border-radius: 12px;
    background: #f4f6f7;
    color: #142f3f;
    text-align: center;
}

.lstms-workload-week__days > div.is-over { background: #ffe9e9; }
.lstms-workload-week__days > div.is-full { background: #fff8d9; }
.lstms-workload-week__days > div.is-balanced { background: #effbe9; }

.lstms-workload-week__days time,
.lstms-workload-week__days small {
    font: 300 8px/1.2 "Poppins", sans-serif;
}

.lstms-workload-week__days strong {
    font: 500 10px/1.15 "Poppins", sans-serif;
}

.lstms-reminder-row-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 7px;
    transition: opacity .18s ease, transform .18s ease;
}

.lstms-reminder-row-wrap.is-removing {
    opacity: 0;
    transform: translateX(8px);
}

.lstms-reminder-actions {
    display: flex;
    gap: 3px;
    opacity: .22;
    transition: opacity .16s ease;
}

.lstms-reminder-row-wrap:hover .lstms-reminder-actions,
.lstms-reminder-row-wrap:focus-within .lstms-reminder-actions {
    opacity: 1;
}

.lstms-reminder-actions button {
    min-height: 23px;
    padding: 0 6px;
    border: 1px solid rgba(255, 42, 42, .25);
    border-radius: 999px;
    background: rgba(255,255,255,.72);
    color: #7e2b2b;
    font: 500 7px/1 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-reminder-actions button:hover,
.lstms-reminder-actions button:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-reminder-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 10px;
}

.lstms-reminder-footer .lstms-view-all-link {
    margin: 0;
}

.lstms-meeting-row {
    width: 100%;
    grid-template-columns: 60px minmax(0, 1fr) auto;
    align-items: center;
    padding: 7px 8px;
    border: 0;
    border-radius: 14px;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.lstms-meeting-row:hover,
.lstms-meeting-row:focus-visible {
    background: #f1f5f7;
    color: #142f3f;
}

.lstms-meeting-row.is-upcoming {
    background: #fff7e9;
    box-shadow: inset 3px 0 0 #ff9137;
}

.lstms-meeting-row__copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.lstms-meeting-row__copy strong {
    color: #142f3f;
    font-weight: 400;
}

.lstms-meeting-row__copy small {
    overflow: hidden;
    color: #7a8185;
    font-size: .72em;
    letter-spacing: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lstms-meeting-soon {
    align-self: center;
    padding: 4px 7px !important;
    border-radius: 999px;
    background: #ff9137;
    color: #fff;
    font: 600 7px/1 "Poppins", sans-serif;
    text-transform: uppercase;
}

.lstms-entry-modal[hidden] { display: none !important; }

.lstms-entry-modal {
    position: fixed;
    inset: 0;
    z-index: 100010;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.lstms-entry-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 29, 41, .5);
    backdrop-filter: blur(8px);
}

.lstms-entry-modal__dialog {
    width: min(820px, 94vw);
    max-height: 90vh;
    position: relative;
    z-index: 1;
    overflow: auto;
    padding: clamp(24px, 2.2vw, 36px);
    border: 1px solid #e2ac73;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 28px 90px rgba(10,29,41,.28);
}

.lstms-entry-modal__close {
    width: 38px;
    height: 38px;
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    border: 0;
    border-radius: 50%;
    background: #eef1f2;
    color: #142f3f;
    font: 400 27px/1 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-entry-modal__loading,
.lstms-entry-modal-error {
    padding: 50px 20px;
    color: #142f3f;
    font: 400 13px/1.5 "Poppins", sans-serif;
    text-align: center;
}

.lstms-entry-modal-form header {
    padding-right: 42px;
}

.lstms-entry-modal-form header h2 {
    margin: 6px 0 20px;
    color: #142f3f;
    font: 500 clamp(22px, 2vw, 31px)/1.2 "Poppins", sans-serif;
}

.lstms-entry-modal-type {
    display: inline-flex;
    padding: 5px 10px;
    border-radius: 999px;
    background: #0a1d29;
    color: #fff;
    font: 500 9px/1 "Poppins", sans-serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lstms-entry-modal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.lstms-entry-modal-grid label {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    color: #142f3f;
    font: 400 11px/1.2 "Poppins", sans-serif;
}

.lstms-entry-modal-grid label.is-wide {
    grid-column: 1 / -1;
}

.lstms-entry-modal-grid input,
.lstms-entry-modal-grid select,
.lstms-entry-modal-grid textarea {
    width: 100%;
    min-height: 46px;
    padding: 10px 14px;
    border: 1px solid #142f3f;
    border-radius: 18px;
    background: #fff;
    color: #142f3f;
    font: 300 12px/1.35 "Poppins", sans-serif;
}

.lstms-entry-modal-grid textarea {
    resize: vertical;
}

.lstms-entry-attendees {
    margin-top: 18px;
}

.lstms-entry-attendees > strong {
    color: #142f3f;
    font: 500 11px/1.2 "Poppins", sans-serif;
}

.lstms-entry-attendees > div {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

.lstms-entry-attendees span {
    padding: 5px 9px;
    border-radius: 999px;
    background: #f0f3f5;
    color: #142f3f;
    font: 400 9px/1 "Poppins", sans-serif;
}

.lstms-entry-modal-form footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 22px;
}

.lstms-entry-save,
.lstms-entry-modal-form footer a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border: 1px solid #0a1d29;
    border-radius: 999px;
    background: #0a1d29;
    color: #fff;
    font: 500 11px/1 "Poppins", sans-serif;
    text-decoration: none;
    cursor: pointer;
}

.lstms-entry-modal-form footer a {
    background: #fff;
    color: #0a1d29;
}

.lstms-entry-save:hover,
.lstms-entry-save:focus-visible,
.lstms-entry-modal-form footer a:hover,
.lstms-entry-modal-form footer a:focus-visible {
    border-color: #e2ac73;
    background: #e2ac73;
    color: #0a1d29;
}

.lstms-entry-modal-form footer [data-lstms-entry-feedback] {
    color: #077386;
    font: 400 10px/1.3 "Poppins", sans-serif;
}

.lstms-today-shell.is-updating::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 100020;
    background: rgba(244,239,234,.42);
    backdrop-filter: blur(2px);
}

.lstms-today-shell.is-updating::after {
    content: attr(data-updating-message);
    min-width: 140px;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 100021;
    transform: translate(-50%, -50%);
    padding: 13px 20px 13px 44px;
    border-radius: 999px;
    background: #0a1d29;
    color: #fff;
    font: 500 11px/1 "Poppins", sans-serif;
    box-shadow: 0 16px 48px rgba(10,29,41,.25);
}

@media (max-width: 980px) {
    .lstms-workload-week__days {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .lstms-today-quick-actions {
        margin-top: 7px;
    }

    .lstms-today-progress-line {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }

    .lstms-rescue-item {
        grid-template-columns: minmax(0, 1fr);
    }

    .lstms-rescue-item__actions {
        flex-direction: row;
    }

    .lstms-reminder-row-wrap {
        grid-template-columns: minmax(0, 1fr);
    }

    .lstms-reminder-actions {
        padding-left: 18px;
        opacity: 1;
    }

    .lstms-workload-week__days {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lstms-entry-modal {
        align-items: stretch;
        padding: 0;
    }

    .lstms-entry-modal__dialog {
        width: 100%;
        max-height: 100vh;
        border: 0;
        border-radius: 0;
    }

    .lstms-entry-modal-grid {
        grid-template-columns: 1fr;
    }

    .lstms-entry-modal-grid label.is-wide {
        grid-column: auto;
    }
}

.lstms-entry-location-link {
    grid-column: 1 / -1;
    width: max-content;
    margin-top: -7px;
    color: #077386;
    font: 500 10px/1.2 "Poppins", sans-serif;
    text-decoration: none;
}

.lstms-entry-location-link:hover,
.lstms-entry-location-link:focus-visible {
    color: #0a1d29;
}

.lstms-workload-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 8px;
    margin-top: 9px;
    color: #6f787d;
    font: 300 7px/1.2 "Poppins", sans-serif;
    text-transform: uppercase;
}

.lstms-workload-legend span::before {
    content: "";
    width: 7px;
    height: 7px;
    display: inline-block;
    margin-right: 4px;
    border-radius: 50%;
    background: #c5d1d7;
}

.lstms-workload-legend .is-balanced::before { background: #7ed957; }
.lstms-workload-legend .is-full::before { background: #ffde59; }
.lstms-workload-legend .is-over::before { background: #ff5757; }


/* v1.14.1 — move Today quick actions into the primary task card toolbar. */
.lstms-today-tasks-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: clamp(12px, 1vw, 18px);
}

.lstms-today-tasks-toolbar .lstms-today-card-heading {
    flex: 1 1 auto;
    margin-bottom: 0;
}

.lstms-today-tasks-toolbar .lstms-today-quick-actions {
    flex: 0 0 auto;
    margin-top: 0;
}

@media (max-width: 680px) {
    .lstms-today-tasks-toolbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .lstms-today-tasks-toolbar .lstms-today-quick-actions {
        width: 100%;
        margin-top: 0;
    }
}

/* All Tasks Focus View */
.lstms-view-button--focus {
    background: var(--lstms-focus);
}

.lstms-focus-card {
    position: relative;
    width: 100%;
    margin-top: clamp(22px, 2vw, 32px);
    padding: clamp(20px, 1.8vw, 29px) clamp(18px, 1.7vw, 27px) clamp(24px, 2.2vw, 36px);
    border-radius: clamp(18px, 1.5vw, 24px);
    background: #ffffff;
    overflow: hidden;
}

.lstms-focus-heading {
    margin-bottom: clamp(16px, 1.4vw, 22px);
}

.lstms-focus-heading__icon {
    background: var(--lstms-focus);
}

.lstms-focus-feedback {
    margin: 0 0 14px;
    padding: 10px 14px;
    border-radius: 14px;
    background: rgba(126, 217, 87, 0.16);
    color: #356b20;
    font-size: 12px;
    font-weight: 400;
}

.lstms-focus-feedback.is-error {
    background: rgba(255, 87, 87, 0.14);
    color: #9b2431;
}

.lstms-focus-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    gap: clamp(14px, 1.5vw, 24px);
    align-items: start;
}

.lstms-focus-setup,
.lstms-focus-active {
    min-width: 0;
    padding: clamp(16px, 1.45vw, 23px);
    border: 1px solid rgba(20, 47, 63, 0.13);
    border-radius: clamp(20px, 1.7vw, 27px);
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(10, 29, 41, 0.035);
}

.lstms-focus-section-heading,
.lstms-focus-active-top,
.lstms-focus-session-title-row,
.lstms-focus-progress-copy,
.lstms-focus-setup-footer {
    display: flex;
    align-items: center;
}

.lstms-focus-section-heading {
    gap: 8px;
    min-width: 0;
}

.lstms-focus-section-heading h3,
.lstms-focus-session-title-row h4 {
    margin: 0;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
}

.lstms-focus-section-heading h3 {
    font-size: clamp(13px, 0.95vw, 16px);
    font-weight: 500;
}

.lstms-focus-section-heading__icon {
    width: 23px;
    height: 23px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    color: #ffffff;
}

.lstms-focus-section-heading__icon--setup,
.lstms-focus-section-heading__icon--active {
    background: var(--lstms-focus);
}

.lstms-focus-section-heading__icon svg {
    width: 61%;
    height: 61%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.lstms-focus-session-name {
    display: block;
    margin-top: 18px;
}

.lstms-focus-session-name input,
.lstms-focus-filter-row select,
.lstms-focus-search input {
    width: 100%;
    margin: 0;
    border: 1px solid rgba(20, 47, 63, 0.22);
    background: #ffffff;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-weight: 300;
    box-shadow: none;
}

.lstms-focus-session-name input {
    height: clamp(44px, 3.3vw, 52px);
    padding: 0 clamp(14px, 1.1vw, 18px);
    border-radius: 16px;
    font-size: clamp(10px, 0.78vw, 13px);
}

.lstms-focus-filter-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.lstms-focus-filter-row label {
    min-width: 0;
}

.lstms-focus-filter-row select {
    height: clamp(38px, 2.8vw, 45px);
    padding: 0 12px;
    border-radius: 999px;
    font-size: clamp(9px, 0.7vw, 11.5px);
}

.lstms-focus-task-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 14px;
    padding: 10px;
    border: 1px solid rgba(20, 47, 63, 0.11);
    border-radius: 15px 15px 0 0;
    background: #fbfcfc;
}

.lstms-focus-search {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
}

.lstms-focus-search__icon {
    position: absolute;
    left: 11px;
    top: 50%;
    width: 14px;
    height: 14px;
    color: #89969c;
    transform: translateY(-50%);
    pointer-events: none;
}

.lstms-focus-search__icon svg {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.lstms-focus-search input {
    height: 35px;
    padding: 0 12px 0 34px;
    border-radius: 999px;
    font-size: 10px;
}

.lstms-focus-select-all {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    color: var(--lstms-primary);
    font-size: clamp(9px, 0.7vw, 11px);
    font-weight: 400;
    white-space: nowrap;
}

.lstms-focus-select-all input,
.lstms-focus-candidate > input {
    width: 17px;
    height: 17px;
    margin: 0;
    accent-color: var(--lstms-focus);
}

.lstms-focus-candidate-list {
    max-height: clamp(360px, 38vw, 610px);
    border: 1px solid rgba(20, 47, 63, 0.11);
    border-top: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.lstms-focus-candidate {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-height: clamp(53px, 4.3vw, 68px);
    padding: 9px 12px;
    border-bottom: 1px solid rgba(20, 47, 63, 0.09);
    background: #ffffff;
    cursor: pointer;
    transition: background-color 150ms ease;
}

.lstms-focus-candidate:last-child {
    border-bottom: 0;
}

.lstms-focus-candidate:hover {
    background: rgba(244, 239, 234, 0.55);
}

.lstms-focus-candidate__main,
.lstms-focus-candidate__title-line {
    min-width: 0;
}

.lstms-focus-candidate__title-line {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
}

.lstms-focus-candidate__title {
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent !important;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(10px, 0.78vw, 12.5px);
    font-weight: 400;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
    box-shadow: none;
}

.lstms-focus-candidate__title:hover,
.lstms-focus-candidate__title:focus-visible {
    color: #e2ac73;
    background: transparent !important;
}

.lstms-focus-child-count {
    padding: 2px 6px;
    border-radius: 999px;
    background: rgba(226, 169, 241, 0.22);
    color: #7d448f;
    font-size: 7px;
    font-weight: 500;
    white-space: nowrap;
}

.lstms-focus-candidate__hierarchy {
    display: block;
    margin-top: 2px;
    color: #849096;
    font-size: 8px;
    font-weight: 300;
    line-height: 1.35;
}

.lstms-focus-candidate__meta {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    flex-wrap: wrap;
    max-width: clamp(230px, 23vw, 365px);
}

.lstms-focus-chip {
    display: inline-flex;
    align-items: center;
    min-height: 21px;
    max-width: 160px;
    padding: 3px 8px;
    border-radius: 999px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 7.5px;
    font-weight: 400;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lstms-focus-chip.is-brand { background: #70b33d; }
.lstms-focus-chip.is-category { background: #142f3f; }
.lstms-focus-chip.is-priority.is-low { background: #7ed957; }
.lstms-focus-chip.is-priority.is-medium { background: #ff9137; }
.lstms-focus-chip.is-priority.is-high { background: #ff5757; }
.lstms-focus-chip.is-priority.is-urgent { background: #c8162e; }
.lstms-focus-chip.is-date,
.lstms-focus-chip.is-time {
    background: #f0f3f4;
    color: #526168;
}
.lstms-focus-chip.is-time.is-missing {
    background: #fff2d8;
    color: #946613;
}
.lstms-focus-chip.is-children {
    background: #eee2f4;
    color: #714184;
}

.lstms-focus-empty {
    padding: 28px 16px;
    border: 1px solid rgba(20, 47, 63, 0.11);
    border-top: 0;
    color: #7a858b;
    font-size: 11px;
    font-weight: 300;
    text-align: center;
}

.lstms-focus-setup-footer {
    justify-content: space-between;
    gap: 15px;
    padding: 12px 2px 0;
}

.lstms-focus-setup-footer strong {
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 500;
}

.lstms-focus-start {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0 20px;
    border: 0;
    border-radius: 14px;
    background: #0a1d29;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 400;
    box-shadow: none;
}

.lstms-focus-start:not(:disabled):hover,
.lstms-focus-start:not(:disabled):focus-visible {
    background: #e2ac73;
    color: #0a1d29;
}

.lstms-focus-start:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.lstms-focus-active-top {
    justify-content: space-between;
    gap: 12px;
}

.lstms-focus-end,
.lstms-focus-edit-selection,
.lstms-focus-open-task,
.lstms-focus-remove-task {
    margin: 0;
    border: 0;
    box-shadow: none;
    font-family: "Poppins", sans-serif;
}

.lstms-focus-end {
    padding: 6px 9px;
    background: transparent !important;
    color: #d62835;
    font-size: 9px;
    font-weight: 500;
}

.lstms-focus-end:hover,
.lstms-focus-end:focus-visible {
    color: #0a1d29;
    background: transparent !important;
}

.lstms-focus-active-empty {
    min-height: clamp(320px, 31vw, 500px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px;
    color: #859198;
    text-align: center;
}

.lstms-focus-active-empty__icon {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 13px;
    border-radius: 50%;
    background: rgba(255, 87, 87, 0.16);
    color: var(--lstms-focus);
}

.lstms-focus-active-empty__icon svg {
    width: 55%;
    height: 55%;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.lstms-focus-active-empty strong {
    color: var(--lstms-primary);
    font-size: 14px;
    font-weight: 500;
}

.lstms-focus-active-empty p {
    max-width: 300px;
    margin: 7px 0 0;
    font-size: 10px;
    font-weight: 300;
    line-height: 1.55;
}

.lstms-focus-session {
    margin-top: 16px;
}

.lstms-focus-session-summary {
    padding: clamp(14px, 1.25vw, 19px);
    border: 1px solid rgba(20, 47, 63, 0.11);
    border-radius: 18px;
    background: #ffffff;
}

.lstms-focus-session-title-row,
.lstms-focus-progress-copy {
    justify-content: space-between;
    gap: 12px;
}

.lstms-focus-session-title-row h4 {
    min-width: 0;
    font-size: clamp(15px, 1.25vw, 20px);
    font-weight: 600;
    line-height: 1.25;
}

.lstms-focus-edit-selection {
    flex: 0 0 auto;
    padding: 5px 8px;
    border-radius: 999px;
    background: transparent !important;
    color: #728087;
    font-size: 8px;
    font-weight: 500;
}

.lstms-focus-edit-selection:hover,
.lstms-focus-edit-selection:focus-visible {
    background: #0a1d29 !important;
    color: #ffffff;
}

.lstms-focus-progress-copy {
    margin-top: 12px;
    color: #69777e;
    font-size: 9px;
    font-weight: 300;
}

.lstms-focus-progress-track {
    width: 100%;
    height: 7px;
    display: block;
    margin-top: 9px;
    border-radius: 999px;
    background: #e9edee;
    overflow: hidden;
}

.lstms-focus-progress-track > span {
    width: 0;
    height: 100%;
    display: block;
    border-radius: inherit;
    background: var(--lstms-focus);
    transition: width 220ms ease;
}

.lstms-focus-time-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin-top: 12px;
    padding: 14px;
    border: 1px solid rgba(20, 47, 63, 0.11);
    border-radius: 18px;
    background: #fbfcfc;
}

.lstms-focus-time-summary > div {
    min-width: 0;
    padding: 0 14px;
    text-align: center;
}

.lstms-focus-time-summary > div + div {
    border-left: 1px solid rgba(20, 47, 63, 0.12);
}

.lstms-focus-time-summary span {
    display: block;
    color: #69777e;
    font-size: 7.5px;
    font-weight: 300;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.lstms-focus-time-summary strong {
    display: block;
    margin-top: 4px;
    color: var(--lstms-primary);
    font-size: clamp(17px, 1.45vw, 23px);
    font-weight: 600;
}

.lstms-focus-session-list {
    display: grid;
    gap: 9px;
    margin-top: 12px;
}

.lstms-focus-session-task {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    min-height: 72px;
    padding: 11px 12px;
    border: 1px solid rgba(20, 47, 63, 0.12);
    border-radius: 17px;
    background: #ffffff;
    transition: opacity 150ms ease, transform 150ms ease, border-color 150ms ease;
}

.lstms-focus-session-task.is-updating {
    opacity: 0.55;
    pointer-events: none;
}

.lstms-focus-session-task.has-warning {
    border-color: rgba(255, 87, 87, 0.6);
    box-shadow: 0 0 0 3px rgba(255, 87, 87, 0.08);
}

.lstms-focus-session-task.is-completed {
    opacity: 0.58;
    background: #f8faf8;
}

.lstms-focus-session-task__check {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(20, 47, 63, 0.25);
    border-radius: 9px;
    background: #ffffff !important;
    color: #ffffff;
    font-size: 17px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: none;
}

.lstms-focus-session-task__check[aria-pressed="true"] {
    border-color: #65c845;
    border-radius: 50%;
    background: #65c845 !important;
}

.lstms-focus-session-task__check:hover,
.lstms-focus-session-task__check:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29 !important;
}

.lstms-focus-session-task__copy {
    min-width: 0;
}

.lstms-focus-session-task__title {
    max-width: 100%;
    display: block;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent !important;
    color: var(--lstms-primary);
    font-family: "Poppins", sans-serif;
    font-size: clamp(11px, 0.88vw, 14px);
    font-weight: 400;
    line-height: 1.35;
    text-align: left;
    cursor: pointer;
    box-shadow: none;
}

.lstms-focus-session-task__title:hover,
.lstms-focus-session-task__title:focus-visible {
    color: #e2ac73;
    background: transparent !important;
}

.lstms-focus-session-task.is-completed .lstms-focus-session-task__title {
    text-decoration: line-through;
}

.lstms-focus-session-task__hierarchy {
    display: block;
    margin-top: 2px;
    color: #869198;
    font-size: 8px;
    font-weight: 300;
}

.lstms-focus-session-task__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 6px;
}

.lstms-focus-session-task__actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.lstms-focus-open-task {
    min-height: 31px;
    padding: 0 11px;
    border: 1px solid rgba(20, 47, 63, 0.18);
    border-radius: 999px;
    background: #ffffff;
    color: var(--lstms-primary);
    font-size: 8px;
    font-weight: 400;
}

.lstms-focus-open-task:hover,
.lstms-focus-open-task:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #ffffff;
}

.lstms-focus-remove-task {
    width: 29px;
    height: 29px;
    padding: 0;
    border-radius: 50%;
    background: transparent;
    color: #9aa3a7;
    font-size: 17px;
    line-height: 1;
}

.lstms-focus-remove-task:hover,
.lstms-focus-remove-task:focus-visible {
    background: #0a1d29;
    color: #ffffff;
}

@media (max-width: 1450px) {
    .lstms-view-button {
        min-width: clamp(108px, 9.6vw, 145px);
    }

    .lstms-focus-candidate__meta {
        max-width: 285px;
    }
}

@media (max-width: 1180px) {
    .lstms-focus-layout {
        grid-template-columns: 1fr;
    }

    .lstms-focus-active {
        order: -1;
    }

    .lstms-focus-active-empty {
        min-height: 230px;
    }
}

@media (max-width: 760px) {
    .lstms-view-switcher {
        display: flex;
        gap: 7px;
        width: 100%;
        padding-bottom: 5px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .lstms-view-button {
        min-width: 126px;
        width: auto;
        flex: 0 0 auto;
    }

    .lstms-focus-card {
        padding-left: 12px;
        padding-right: 12px;
    }

    .lstms-focus-setup,
    .lstms-focus-active {
        padding: 14px;
        border-radius: 20px;
    }

    .lstms-focus-filter-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lstms-focus-task-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .lstms-focus-select-all {
        justify-content: flex-end;
    }

    .lstms-focus-candidate {
        grid-template-columns: 22px minmax(0, 1fr);
    }

    .lstms-focus-candidate__meta {
        grid-column: 2;
        justify-content: flex-start;
        max-width: none;
    }

    .lstms-focus-active-top {
        align-items: flex-start;
    }

    .lstms-focus-session-task {
        grid-template-columns: 38px minmax(0, 1fr);
        min-height: 84px;
    }

    .lstms-focus-session-task__check {
        width: 36px;
        height: 36px;
    }

    .lstms-focus-session-task__actions {
        grid-column: 2;
        justify-content: flex-end;
    }

    .lstms-focus-open-task {
        min-height: 34px;
        padding: 0 13px;
    }
}

@media (max-width: 520px) {
    .lstms-focus-layout {
        gap: 12px;
    }

    .lstms-focus-active {
        order: -1;
    }

    .lstms-focus-section-heading h3 {
        font-size: 13px;
    }

    .lstms-focus-end {
        font-size: 8px;
    }

    .lstms-focus-setup-footer {
        align-items: stretch;
        flex-direction: column;
    }

    .lstms-focus-start {
        width: 100%;
    }

    .lstms-focus-time-summary {
        padding: 12px 4px;
    }

    .lstms-focus-time-summary > div {
        padding: 0 8px;
    }

    .lstms-focus-session-task {
        padding: 11px 10px;
    }

    .lstms-focus-chip {
        max-width: 120px;
    }
}

/* Focus View refinements: saved lists, ordering and compact completion controls. */
.lstms-focus-saved {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 36px;
    align-items: end;
    gap: 8px;
    margin-bottom: 12px;
    padding: 11px;
    border: 1px solid rgba(255, 87, 87, 0.2);
    border-radius: 16px;
    background: rgba(255, 87, 87, 0.045);
}

.lstms-focus-saved label {
    min-width: 0;
}

.lstms-focus-saved label > span {
    display: block;
    margin: 0 0 5px;
    color: #142f3f;
    font: 500 9px/1.2 "Poppins", sans-serif;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.lstms-focus-saved select {
    width: 100%;
    min-height: 38px;
    border-radius: 999px;
    font-size: 10px;
}

.lstms-focus-saved button,
.lstms-focus-save-list {
    min-height: 38px;
    margin: 0;
    border: 1px solid rgba(20, 47, 63, 0.18);
    border-radius: 999px;
    background: #ffffff;
    color: #142f3f;
    font: 500 9px/1.1 "Poppins", sans-serif;
    box-shadow: none;
}

.lstms-focus-saved button:not([data-lstms-focus-delete-saved]) {
    padding: 0 13px;
}

.lstms-focus-saved [data-lstms-focus-delete-saved] {
    width: 36px;
    padding: 0;
    font-size: 18px;
}

.lstms-focus-saved button:not(:disabled):hover,
.lstms-focus-saved button:not(:disabled):focus-visible,
.lstms-focus-save-list:hover,
.lstms-focus-save-list:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #ffffff;
}

.lstms-focus-saved button:disabled {
    opacity: 0.42;
    cursor: not-allowed;
}

.lstms-focus-session-title-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    flex-wrap: wrap;
}

.lstms-focus-hide-completed {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 31px;
    padding: 0 9px;
    border: 1px solid rgba(20, 47, 63, 0.14);
    border-radius: 999px;
    background: #ffffff;
    color: #66757c;
    font: 400 8px/1 "Poppins", sans-serif;
    white-space: nowrap;
}

.lstms-focus-hide-completed input {
    width: 14px;
    height: 14px;
    margin: 0;
    accent-color: #ff5757;
}

.lstms-focus-save-list {
    padding: 0 10px;
    min-height: 31px;
}

.lstms-focus-session-task {
    grid-template-columns: 24px 34px minmax(0, 1fr) auto;
}

.lstms-focus-session-task__drag {
    width: 24px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 9px;
    background: transparent !important;
    color: #9aa3a7;
    font: 600 14px/1 "Poppins", sans-serif;
    letter-spacing: -0.18em;
    cursor: grab;
    box-shadow: none;
    touch-action: none;
}

.lstms-focus-session-task__drag:hover,
.lstms-focus-session-task__drag:focus-visible {
    background: #0a1d29 !important;
    color: #ffffff;
}

.lstms-focus-session-task__drag:active {
    cursor: grabbing;
}

.lstms-focus-session-task.is-dragging {
    opacity: 0.42;
}

.lstms-focus-session-task.is-drag-over {
    border-color: #ff5757;
    box-shadow: 0 0 0 3px rgba(255, 87, 87, 0.1);
    transform: translateY(2px);
}

.lstms-modal-focus-button {
    min-height: 39px;
    padding: 8px 16px;
    border: 1px solid #ff5757;
    border-radius: 22px;
    background: #ff5757;
    color: #ffffff;
    font: 400 11px/1.2 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-modal-focus-button:hover,
.lstms-modal-focus-button:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #ffffff;
}

.lstms-modal-focus-button:disabled {
    opacity: 0.62;
    cursor: default;
}

@media (max-width: 760px) {
    .lstms-focus-saved {
        grid-template-columns: minmax(0, 1fr) auto 36px;
    }

    .lstms-focus-session-title-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .lstms-focus-session-title-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .lstms-focus-hide-completed {
        order: -1;
    }

    .lstms-focus-session-task {
        grid-template-columns: 26px 38px minmax(0, 1fr);
    }

    .lstms-focus-session-task__actions {
        grid-column: 3;
    }
}

@media (max-width: 520px) {
    .lstms-focus-saved {
        grid-template-columns: 1fr 1fr 38px;
    }

    .lstms-focus-saved label {
        grid-column: 1 / -1;
    }

    .lstms-focus-saved button:not([data-lstms-focus-delete-saved]) {
        width: 100%;
    }

    .lstms-focus-session-title-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .lstms-focus-hide-completed {
        grid-column: 1 / -1;
        justify-content: center;
    }
}

.lstms-focus-order-button {
    display: none;
    width: 31px;
    height: 31px;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(20, 47, 63, 0.16);
    border-radius: 50%;
    background: #ffffff;
    color: #142f3f;
    font: 500 14px/1 "Poppins", sans-serif;
    box-shadow: none;
}

.lstms-focus-order-button:not(:disabled):hover,
.lstms-focus-order-button:not(:disabled):focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #ffffff;
}

.lstms-focus-order-button:disabled {
    opacity: 0.28;
}

@media (max-width: 760px) {
    .lstms-focus-order-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}

/* --------------------------------------------------------------------------
   Settings page and shared Brand / Category colour system (v1.17.1)
   -------------------------------------------------------------------------- */

.lstms-settings-shell {
    --lstms-settings-blue: #38b6ff;
    --lstms-settings-red: #ff5757;
    --lstms-settings-cyan: #0cc0df;
    --lstms-settings-purple: #e2a9f1;
    --lstms-settings-orange: #ff9137;
    --lstms-settings-gold: #e2ac73;
    gap: 20px;
}

.lstms-settings-topbar {
    min-height: clamp(72px, 5.5vw, 92px);
    padding: clamp(16px, 1.45vw, 24px) clamp(28px, 3vw, 52px);
    border-radius: 50px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.lstms-settings-topbar h1 {
    margin: 0;
    color: #142f3f;
    font-size: clamp(27px, 2.25vw, 38px);
    line-height: 1.05;
    font-weight: 500;
}

.lstms-settings-topbar__actions,
.lstms-settings-topbar__actions form {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
}

.lstms-settings-utility,
.lstms-settings-add,
.lstms-settings-secondary,
.lstms-settings-danger,
.lstms-settings-save-button {
    min-height: 42px;
    border: 1px solid #142f3f;
    border-radius: 999px;
    padding: 9px 18px;
    background: #fff;
    color: #142f3f;
    font-family: inherit;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.lstms-settings-utility:hover,
.lstms-settings-add:hover,
.lstms-settings-secondary:hover,
.lstms-settings-save-button:hover {
    background: #0a1d29;
    border-color: #0a1d29;
    color: #fff;
}

.lstms-settings-utility--primary,
.lstms-settings-save-button {
    background: #0a1d29;
    color: #fff;
}

.lstms-settings-utility--primary:hover,
.lstms-settings-save-button:hover {
    background: #e2ac73;
    border-color: #e2ac73;
    color: #142f3f;
}

.lstms-settings-notice {
    margin: 0;
    border-radius: 20px;
}

.lstms-settings-layout {
    display: grid;
    margin-top: 20px;
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
    align-items: start;
    gap: 20px;
}

.lstms-settings-nav {
    position: sticky;
    top: 20px;
    display: grid;
    gap: 5px;
    padding: 14px;
    border-radius: 30px;
    background: #fff;
    min-height: 620px;
    align-content: start;
}

.lstms-settings-nav__item {
    width: 100%;
    min-height: 58px;
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 12px 14px;
    border: 0;
    border-left: 4px solid transparent;
    border-radius: 15px;
    background: transparent;
    color: #142f3f;
    font: inherit;
    font-size: 14px;
    text-align: left;
    cursor: pointer;
}

.lstms-settings-nav__item > span {
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    flex: 0 0 24px;
}

.lstms-settings-nav__item svg,
.lstms-settings-heading__icon svg,
.lstms-maintenance-tool svg,
.lstms-settings-taxonomy-icon svg {
    width: 100%;
    height: 100%;
}

.lstms-settings-nav__item:hover,
.lstms-settings-nav__item.is-active {
    border-left-color: #38b6ff;
    background: #edf8ff;
    color: #0b88dc;
}

.lstms-settings-content,
.lstms-settings-preferences-form {
    display: grid;
    gap: 20px;
    min-width: 0;
}

.lstms-settings-section[hidden] {
    display: none !important;
}

.lstms-settings-card {
    padding: clamp(22px, 2.25vw, 34px);
    border-radius: 30px;
    background: #fff;
    min-width: 0;
}

.lstms-settings-heading {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 22px;
}

.lstms-settings-heading__icon {
    width: 38px;
    height: 38px;
    padding: 9px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    color: #fff;
}

.lstms-settings-heading__icon--blue { background: #38b6ff; }
.lstms-settings-heading__icon--red { background: #ff5757; }
.lstms-settings-heading__icon--cyan { background: #0cc0df; }
.lstms-settings-heading__icon--purple { background: #d68ae9; }
.lstms-settings-heading__icon--orange { background: #ff9137; }
.lstms-settings-heading__icon--gold { background: #e2ac73; color: #142f3f; }
.lstms-settings-heading__icon--navy { background: #142f3f; }

.lstms-settings-heading h2 {
    margin: 0;
    color: #142f3f;
    font-size: clamp(18px, 1.35vw, 22px);
    font-weight: 500;
}

.lstms-settings-heading p {
    margin: 4px 0 0;
    color: #737373;
    font-size: 12px;
    line-height: 1.5;
}

.lstms-taxonomy-manager {
    display: grid;
    grid-template-columns: minmax(310px, .9fr) minmax(380px, 1.1fr);
    gap: 14px;
}

.lstms-taxonomy-panel {
    min-width: 0;
    padding: 14px;
    border: 1px solid #e1e1e1;
    border-radius: 22px;
    background: #fff;
}

.lstms-settings-card__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.lstms-settings-card__toolbar h3,
.lstms-settings-subtitle {
    margin: 0;
    color: #142f3f;
    font-size: 14px;
    font-weight: 500;
}

.lstms-settings-card__toolbar h3 strong {
    color: #d90077;
}

.lstms-settings-add {
    min-height: 34px;
    padding: 6px 14px;
    color: #0b88dc;
    border-color: #38b6ff;
    font-size: 12px;
}

.lstms-settings-sort-list {
    display: grid;
    gap: 7px;
}

.lstms-settings-taxonomy-row,
.lstms-settings-brand-row {
    display: grid;
    align-items: center;
    gap: 10px;
    min-height: 58px;
    padding: 8px 9px;
    border: 1px solid #e6e6e6;
    border-radius: 13px;
    background: #fff;
    transition: border-color .18s ease, background .18s ease, opacity .18s ease;
}

.lstms-settings-taxonomy-row {
    grid-template-columns: 25px 22px 23px minmax(100px, 1fr) auto auto auto;
}

.lstms-settings-brand-row {
    grid-template-columns: 25px 48px minmax(130px, 1fr) auto auto auto;
    min-height: 70px;
}

.lstms-settings-taxonomy-row:hover,
.lstms-settings-brand-row:hover,
.lstms-settings-taxonomy-row.is-selected {
    border-color: #b8ddf6;
    background: #f0f8ff;
}

.lstms-settings-taxonomy-row.is-selected {
    box-shadow: inset 4px 0 #38b6ff;
}

.lstms-settings-taxonomy-row.is-archived,
.lstms-settings-brand-row.is-archived {
    opacity: .58;
}

.lstms-settings-taxonomy-row.is-dragging,
.lstms-settings-brand-row.is-dragging {
    opacity: .45;
}

.lstms-settings-drag,
.lstms-settings-row-action,
.lstms-settings-taxonomy-name {
    border: 0;
    background: transparent;
    color: #142f3f;
    font: inherit;
    cursor: pointer;
}

.lstms-settings-drag {
    padding: 2px;
    color: #8d8d8d;
    cursor: grab;
}

.lstms-settings-taxonomy-name {
    padding: 0;
    text-align: left;
    font-size: 13px;
}

.lstms-settings-row-action {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
}

.lstms-settings-row-action:hover {
    background: #0a1d29;
    color: #fff;
}

.lstms-settings-swatch {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    background: var(--settings-swatch, #142f3f);
}

.lstms-settings-taxonomy-icon {
    width: 20px;
    height: 20px;
    color: #142f3f;
}

.lstms-settings-count {
    color: #545454;
    font-size: 11px;
    white-space: nowrap;
}

.lstms-settings-archived-label {
    padding: 4px 8px;
    border-radius: 999px;
    background: #eeeeee;
    color: #545454;
    font-size: 9px;
    text-transform: uppercase;
}

.lstms-settings-brand-logo {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--brand-color, #142f3f);
    color: var(--brand-text, #fff);
    font-size: 17px;
    font-weight: 600;
}

.lstms-settings-brand-copy {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.lstms-settings-brand-copy strong {
    overflow: hidden;
    color: #142f3f;
    font-size: 13px;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lstms-settings-brand-copy small,
.lstms-settings-helper {
    color: #777;
    font-size: 10px;
}

.lstms-settings-helper {
    margin: 12px 4px 0;
}

.lstms-settings-empty {
    margin: 16px 4px;
    color: #777;
    font-size: 12px;
}

.lstms-settings-form-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.lstms-settings-form-grid--weather {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
}

.lstms-settings-field {
    min-width: 0;
    display: grid;
    gap: 7px;
    color: #142f3f;
    font-size: 12px;
}

.lstms-settings-field > span {
    font-weight: 400;
}

.lstms-settings-field input:not([type="color"]),
.lstms-settings-field select,
.lstms-settings-danger-zone select,
.lstms-settings-duration {
    width: 100%;
    min-height: 44px;
    border: 1px solid #b4b4b4;
    border-radius: 999px;
    padding: 9px 15px;
    background: #fff;
    color: #142f3f;
    font: inherit;
    outline: 0;
}

.lstms-settings-field input[type="color"] {
    width: 100%;
    height: 44px;
    padding: 4px;
    border: 1px solid #b4b4b4;
    border-radius: 999px;
    background: #fff;
}

.lstms-settings-field.is-disabled {
    opacity: .46;
}

.lstms-settings-duration {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0;
    overflow: hidden;
}

.lstms-settings-duration input {
    min-width: 0;
    min-height: 42px !important;
    padding: 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    text-align: center;
}

.lstms-settings-duration b {
    font-weight: 400;
}

.lstms-settings-subtitle {
    margin: 24px 0 12px;
}

.lstms-capacity-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(72px, 1fr));
    gap: 10px;
}

.lstms-capacity-grid label {
    position: relative;
    display: grid;
    place-items: center;
    gap: 3px;
    padding: 11px 8px;
    border: 1px solid #e3e3e3;
    border-radius: 14px;
    color: #142f3f;
}

.lstms-capacity-grid label > span {
    font-size: 11px;
}

.lstms-capacity-grid input {
    width: 48px;
    border: 0;
    background: transparent;
    color: #142f3f;
    font: inherit;
    font-size: 17px;
    font-weight: 600;
    text-align: center;
    outline: 0;
}

.lstms-capacity-grid small {
    position: absolute;
    right: 12px;
    bottom: 14px;
    color: #777;
    font-size: 10px;
}

.lstms-settings-toggle-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(150px, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.lstms-settings-toggle-field {
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid #e2e2e2;
    border-radius: 13px;
    color: #142f3f;
    cursor: pointer;
}

.lstms-settings-toggle-field > span {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.lstms-settings-toggle-field strong {
    font-size: 11px;
    font-weight: 500;
}

.lstms-settings-toggle-field small {
    color: #777;
    font-size: 9px;
    line-height: 1.35;
}

.lstms-settings-toggle-field input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.lstms-settings-toggle-field i {
    position: relative;
    width: 38px;
    height: 22px;
    border-radius: 999px;
    background: #cfcfcf;
    flex: 0 0 38px;
    transition: background .18s ease;
}

.lstms-settings-toggle-field i::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    transition: transform .18s ease;
}

.lstms-settings-toggle-field input:checked + i {
    background: #0cc0df;
}

.lstms-settings-toggle-field input:checked + i::after {
    transform: translateX(16px);
}

.lstms-settings-sticky-save {
    position: sticky;
    bottom: 16px;
    z-index: 8;
    display: flex;
    justify-content: flex-end;
    pointer-events: none;
}

.lstms-settings-sticky-save button {
    pointer-events: auto;
    min-width: 160px;
    box-shadow: 0 12px 26px rgba(20, 47, 63, .16);
}

.lstms-maintenance-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.lstms-maintenance-tool {
    margin: 0;
}

.lstms-maintenance-tool button {
    width: 100%;
    min-height: 115px;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: center;
    gap: 3px 12px;
    padding: 14px;
    border: 1px solid #e2e2e2;
    border-radius: 15px;
    background: #fff;
    color: #142f3f;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.lstms-maintenance-tool button:hover {
    border-color: #0a1d29;
    background: #f7fafb;
}

.lstms-maintenance-tool span {
    grid-row: 1 / 3;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    padding: 10px;
    border-radius: 50%;
    background: #e6f5ff;
    color: #0b88dc;
}

.lstms-maintenance-tool:nth-child(2) span { background: #f3e6fa; color: #a54dcc; }
.lstms-maintenance-tool:nth-child(3) span { background: #e5faec; color: #43a966; }
.lstms-maintenance-tool:nth-child(4) span { background: #fff3d7; color: #cf9510; }

.lstms-maintenance-tool strong {
    align-self: end;
    font-size: 12px;
    font-weight: 500;
}

.lstms-maintenance-tool small {
    align-self: start;
    color: #777;
    font-size: 9px;
    line-height: 1.4;
}

.lstms-settings-modal[hidden] {
    display: none !important;
}

.lstms-settings-modal {
    position: fixed;
    inset: 0;
    z-index: 100005;
    display: grid;
    place-items: center;
    padding: 20px;
}

.lstms-settings-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 29, 41, .55);
    backdrop-filter: blur(8px);
}

.lstms-settings-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(720px, 94vw);
    max-height: 90vh;
    overflow: auto;
    padding: clamp(24px, 3vw, 38px);
    border: 1px solid #e2ac73;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(10, 29, 41, .26);
}

.lstms-settings-modal__dialog h2 {
    margin: 0 0 20px;
    color: #142f3f;
    font-size: 23px;
    font-weight: 500;
}

.lstms-settings-modal__dialog > p {
    color: #545454;
    font-size: 12px;
}

.lstms-settings-modal__close {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 38px;
    height: 38px;
    border: 1px solid #b4b4b4;
    border-radius: 50%;
    background: #fff;
    color: #142f3f;
    font-size: 22px;
    cursor: pointer;
}

.lstms-settings-modal__close:hover {
    background: #0a1d29;
    color: #fff;
}

.lstms-settings-modal__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 24px;
}

.lstms-settings-danger-zone {
    display: grid;
    gap: 12px;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid #ededed;
}

.lstms-settings-danger-zone form {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 12px;
    margin: 0;
}

.lstms-settings-danger-zone label {
    display: grid;
    gap: 5px;
    color: #545454;
    font-size: 10px;
}

.lstms-settings-danger {
    border-color: #ff5757;
    background: #fff;
    color: #d51f1f;
}

.lstms-settings-danger:hover {
    background: #ff5757;
    color: #fff;
}

/* Shared configured colours across task views. */
.lstms-task-row .lstms-brand-pill,
.lstms-today-task-row__brand,
.lstms-deadline-row__brand,
.lstms-kanban-task__chip.is-brand,
.lstms-kanban-task__chip.is-category,
.lstms-focus-chip.is-brand,
.lstms-focus-chip.is-category {
    background: var(--lstms-item-color, #142f3f) !important;
    border-color: var(--lstms-item-color, #142f3f) !important;
    color: var(--lstms-item-text, #fff) !important;
}

.lstms-today-task-row,
.lstms-rescue-item,
.lstms-deadline-row,
.lstms-kanban-task,
.lstms-focus-session-task,
.lstms-focus-candidate {
    border-left-color: var(--lstms-item-color, #142f3f) !important;
}

.lstms-calendar-task {
    box-shadow: inset 3px 0 var(--lstms-item-color, #142f3f);
}

.lstms-calendar-task__dot {
    background: var(--lstms-item-color, #142f3f) !important;
}

.lstms-kanban-task__progress-fill,
.lstms-focus-session-task__check[aria-pressed="true"] {
    background: var(--lstms-item-color, #7ed957);
}

/* Controlled Category and Brand fields created from Settings. */
.lstms-field select[data-lstms-settings-field],
.lstms-modal-field select[data-lstms-settings-field] {
    width: 100%;
}

@media (max-width: 1180px) {
    .lstms-settings-layout { grid-template-columns: 205px minmax(0, 1fr); }
    .lstms-taxonomy-manager { grid-template-columns: 1fr; }
    .lstms-settings-toggle-grid { grid-template-columns: repeat(2, minmax(150px, 1fr)); }
    .lstms-maintenance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
    .lstms-settings-topbar { align-items: flex-start; border-radius: 30px; }
    .lstms-settings-topbar,
    .lstms-settings-topbar__actions { flex-direction: column; }
    .lstms-settings-topbar__actions { width: 100%; align-items: stretch; }
    .lstms-settings-topbar__actions form,
    .lstms-settings-topbar__actions button { width: 100%; }
    .lstms-settings-layout { display: block; }
    .lstms-settings-nav {
        position: static;
        min-height: 0;
        display: flex;
        overflow-x: auto;
        margin-bottom: 20px;
        border-radius: 22px;
    }
    .lstms-settings-nav__item {
        width: auto;
        min-width: max-content;
        border-left: 0;
        border-bottom: 3px solid transparent;
    }
    .lstms-settings-nav__item:hover,
    .lstms-settings-nav__item.is-active { border-bottom-color: #38b6ff; }
    .lstms-settings-form-grid,
    .lstms-settings-form-grid--weather { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lstms-capacity-grid { grid-template-columns: repeat(4, minmax(70px, 1fr)); }
}

@media (max-width: 600px) {
    .lstms-settings-card { padding: 18px; border-radius: 22px; }
    .lstms-settings-topbar { padding: 22px; }
    .lstms-settings-form-grid,
    .lstms-settings-form-grid--weather,
    .lstms-settings-toggle-grid,
    .lstms-maintenance-grid { grid-template-columns: 1fr; }
    .lstms-capacity-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lstms-settings-taxonomy-row { grid-template-columns: 20px 18px 20px minmax(90px, 1fr) auto auto; }
    .lstms-settings-taxonomy-row .lstms-settings-archived-label { display: none; }
    .lstms-settings-brand-row { grid-template-columns: 20px 42px minmax(90px, 1fr) auto; }
    .lstms-settings-brand-row .lstms-settings-count,
    .lstms-settings-brand-row .lstms-settings-archived-label { display: none; }
    .lstms-settings-modal { padding: 0; align-items: end; }
    .lstms-settings-modal__dialog { width: 100%; max-height: 95vh; border-radius: 24px 24px 0 0; }
    .lstms-settings-danger-zone form { align-items: stretch; flex-direction: column; }
}

html.lstms-density-compact .lstms-task-table td,
html.lstms-density-compact .lstms-task-table th {
    padding-top: 7px;
    padding-bottom: 7px;
}

html.lstms-density-compact .lstms-kanban-task,
html.lstms-density-compact .lstms-focus-session-task,
html.lstms-density-compact .lstms-focus-candidate {
    padding-top: 10px;
    padding-bottom: 10px;
}

html.lstms-reduce-animations *,
html.lstms-reduce-animations *::before,
html.lstms-reduce-animations *::after {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
}

/* Big Projects dashboard and project workspace */
.lstms-big-projects-shell,
.lstms-project-workspace {
    --lstms-project-cyan: #0cc0df;
    --lstms-project-coral: #ff5757;
    --lstms-project-green: #7ed957;
    --lstms-project-orange: #ff9137;
    --lstms-project-lavender: #e2a9f1;
}

.lstms-big-projects-topbar {
    width: 100%;
    min-height: clamp(74px, 6.25vw, 100px);
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    align-items: center;
    gap: clamp(18px, 2.2vw, 36px);
    padding: clamp(12px, 1.35vw, 22px) clamp(18px, 2.25vw, 36px);
    background: #fff;
    border-radius: 999px;
}

.lstms-big-projects-rate {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--lstms-primary);
}

.lstms-big-projects-rate__icon {
    width: clamp(44px, 3.8vw, 60px);
    height: clamp(44px, 3.8vw, 60px);
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--lstms-project-cyan);
    color: #fff;
    font-size: clamp(15px, 1.1vw, 18px);
    font-weight: 600;
}

.lstms-big-projects-rate span:last-child {
    display: grid;
    line-height: 1.05;
}

.lstms-big-projects-rate small {
    color: #545454;
    font-size: clamp(9px, .75vw, 12px);
    font-weight: 300;
    letter-spacing: .037em;
    text-transform: uppercase;
}

.lstms-big-projects-rate strong {
    font-size: clamp(24px, 2vw, 32px);
    font-weight: 700;
}

.lstms-big-projects-new,
.lstms-project-filterbar button,
.lstms-project-empty > a,
.lstms-project-workspace-actions button,
.lstms-project-panel-heading button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 22px;
    border: 0;
    border-radius: 999px;
    background: var(--lstms-project-cyan);
    color: #fff;
    font: 400 clamp(12px, .92vw, 15px)/1.2 "Poppins", sans-serif;
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 160ms ease, transform 160ms ease;
}

.lstms-big-projects-new:hover,
.lstms-project-filterbar button:hover,
.lstms-project-empty > a:hover,
.lstms-project-workspace-actions button:hover,
.lstms-project-panel-heading button:hover {
    background: #0a1d29;
    color: #fff;
    transform: translateY(-1px);
}

.lstms-project-filterbar {
    display: grid;
    grid-template-columns: minmax(180px, .8fr) minmax(240px, 1.35fr) repeat(5, minmax(130px, .72fr)) auto auto;
    align-items: end;
    gap: 10px;
    margin-top: 20px;
    padding: 18px 20px;
    border-radius: 30px;
    background: #fff;
}

.lstms-project-filterbar__heading {
    align-self: center;
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--lstms-primary);
    font-size: 14px;
}

.lstms-project-filterbar__heading span {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--lstms-primary);
    color: #fff;
}

.lstms-project-filterbar label,
.lstms-project-filterbar select,
.lstms-project-filterbar input {
    min-width: 0;
}

.lstms-project-filterbar select,
.lstms-project-filterbar input {
    width: 100%;
    height: 44px;
    margin: 0;
    padding: 0 15px;
    border: 1px solid #c7c7c7;
    border-radius: 999px;
    background-color: #fff;
    color: var(--lstms-primary);
    font: 300 12px/1.2 "Poppins", sans-serif;
    box-shadow: none;
}

.lstms-project-filterbar input::placeholder {
    color: #a7a7a7;
    font-style: italic;
}

.lstms-project-filterbar > a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    color: var(--lstms-primary);
    font-size: 12px;
    font-weight: 500;
    text-decoration: none !important;
}

.lstms-project-filterbar > a:hover {
    color: #e2ac73;
}

.lstms-project-dashboard-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin: 24px 4px 14px;
}

.lstms-project-dashboard-heading h2 {
    margin: 0;
    color: var(--lstms-primary);
    font-size: clamp(18px, 1.35vw, 22px);
    font-weight: 500;
}

.lstms-project-dashboard-heading p {
    margin: 3px 0 0;
    color: #545454;
    font-size: 12px;
}

.lstms-project-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 20px;
}

.lstms-project-card {
    position: relative;
    min-height: 360px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 24px 24px 20px;
    border-left: 6px solid var(--lstms-project-card-accent);
    border-radius: 30px;
    background: #fff;
    overflow: hidden;
    transition: transform 160ms ease, box-shadow 160ms ease;
}

.lstms-project-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(20, 47, 63, .1);
}

.lstms-project-card__link {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.lstms-project-card button,
.lstms-project-card a:not(.lstms-project-card__link) {
    position: relative;
    z-index: 2;
}

.lstms-project-card__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 14px;
}

.lstms-project-card__category {
    display: block;
    margin-bottom: 5px;
    color: var(--lstms-project-card-accent);
    font-size: 11px;
    font-style: italic;
    font-weight: 400;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.lstms-project-card h2 {
    margin: 0;
    color: var(--lstms-primary);
    font-size: clamp(18px, 1.35vw, 22px);
    font-weight: 500;
    line-height: 1.1;
}

.lstms-project-health,
.lstms-project-status-pill,
.lstms-project-card__brand,
.lstms-project-card__priority {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    white-space: nowrap;
}

.lstms-project-health {
    padding: 6px 10px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
}

.lstms-project-health--on-track { background: #eaf8e5; color: #4a8f2e; }
.lstms-project-health--at-risk { background: #fff1e4; color: #c45f14; }
.lstms-project-health--blocked { background: #ffe9e9; color: #d81f2a; }
.lstms-project-health--completed { background: #eaf8e5; color: #4a8f2e; }

.lstms-project-card__context {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.lstms-project-card__brand {
    padding: 7px 14px;
    background: var(--lstms-project-card-accent);
    color: var(--lstms-project-card-text);
    font-size: 11px;
}

.lstms-project-card__priority {
    min-width: 92px;
    padding: 6px 14px;
    border: 1px solid #d5d5d5;
    background: #fff;
    color: #545454;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.lstms-project-card__priority--urgent { color: #ff2a2a; }
.lstms-project-card__priority--high { background: #ff2a2a; border-color: #ff2a2a; color: #fff; }
.lstms-project-card__priority--medium { background: #ff9137; border-color: #ff9137; color: #fff; }
.lstms-project-card__priority--low { background: #6ea435; border-color: #6ea435; color: #fff; }

.lstms-project-card__client,
.lstms-project-card__due {
    display: grid;
    grid-template-columns: 70px 1fr;
    align-items: baseline;
    gap: 8px;
    color: #545454;
    font-size: 12px;
}

.lstms-project-card__client span,
.lstms-project-card__due strong {
    color: var(--lstms-primary);
    font-weight: 600;
    text-transform: uppercase;
}

.lstms-project-card__due small {
    grid-column: 2;
    color: #888;
    font-size: 10px;
}

.lstms-project-card__progress-row {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 10px;
}

.lstms-project-card__track {
    height: 14px;
    border-radius: 999px;
    background: #0a1d29;
    overflow: hidden;
}

.lstms-project-card__track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--lstms-project-card-accent);
}

.lstms-project-card__progress-row strong {
    color: var(--lstms-primary);
    font-size: 16px;
}

.lstms-project-card__snapshot {
    display: grid;
    gap: 9px;
    padding: 13px 14px;
    border-radius: 18px;
    background: #f8f8f8;
}

.lstms-project-card__snapshot > div {
    display: grid;
    gap: 2px;
}

.lstms-project-card__snapshot small {
    color: #727272;
    font-size: 9px;
    letter-spacing: .037em;
    text-transform: uppercase;
}

.lstms-project-card__snapshot span {
    color: var(--lstms-primary);
    font-size: 12px;
    line-height: 1.35;
}

.lstms-project-card__footer {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #545454;
    font-size: 10px;
}

.lstms-project-status-pill {
    min-width: 112px;
    padding: 7px 13px;
    color: #fff;
    font-size: 10px;
    text-transform: uppercase;
}

.lstms-project-status-pill--not-started { background: #a6a6a6; }
.lstms-project-status-pill--in-progress { background: #ff9137; }
.lstms-project-status-pill--waiting { background: #ff2a2a; }
.lstms-project-status-pill--done { background: #7ed957; }

.lstms-project-empty {
    min-height: 280px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 35px;
    border-radius: 30px;
    background: #fff;
    text-align: center;
}

.lstms-project-empty > span {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e3f9fc;
    color: var(--lstms-project-cyan);
    font-size: 24px;
}

.lstms-project-empty h2,
.lstms-project-empty p { margin: 0; }
.lstms-project-empty h2 { color: var(--lstms-primary); font-size: 20px; font-weight: 500; }
.lstms-project-empty p { max-width: 520px; color: #545454; font-size: 13px; }

/* Project workspace */
.lstms-project-workspace-topbar {
    display: grid;
    grid-template-columns: 190px minmax(280px, 1fr) auto;
    align-items: center;
    gap: 20px;
    padding: 20px 28px;
    border-radius: 42px;
    background: #fff;
}

.lstms-project-back {
    color: var(--lstms-primary);
    font-size: 12px;
    font-weight: 500;
    text-decoration: none !important;
}

.lstms-project-back:hover { color: #e2ac73; }

.lstms-project-workspace-title span {
    color: var(--lstms-project-accent);
    font-size: 11px;
    font-style: italic;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.lstms-project-workspace-title h1 {
    margin: 3px 0;
    color: var(--lstms-primary);
    font-size: clamp(23px, 2vw, 32px);
    font-weight: 500;
    line-height: 1.1;
}

.lstms-project-workspace-title p {
    margin: 0;
    color: #545454;
    font-size: 12px;
}

.lstms-project-workspace-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 9px;
}

.lstms-project-workspace-tabs {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 20px 0;
    padding: 8px;
    border-radius: 999px;
    background: #fff;
    overflow-x: auto;
}

.lstms-project-workspace-tabs button {
    min-height: 42px;
    padding: 0 24px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--lstms-primary);
    font: 400 13px/1 "Poppins", sans-serif;
    white-space: nowrap;
    cursor: pointer;
}

.lstms-project-workspace-tabs button:hover,
.lstms-project-workspace-tabs button[aria-selected="true"] {
    background: #0a1d29;
    color: #fff;
}

.lstms-project-workspace-panel {
    min-height: 520px;
}

.lstms-project-metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.lstms-project-metric {
    min-height: 142px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 22px;
    border-radius: 30px;
    background: #fff;
}

.lstms-project-metric__icon {
    width: 48px;
    height: 48px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--lstms-project-cyan);
}

.lstms-project-metric--date .lstms-project-metric__icon { background: #ffde59; }
.lstms-project-metric--time .lstms-project-metric__icon { background: #e2a9f1; }
.lstms-project-metric--remaining .lstms-project-metric__icon { background: #7ed957; }

.lstms-project-metric > div { display: grid; }
.lstms-project-metric small { color: #545454; font-size: 10px; letter-spacing: .037em; text-transform: uppercase; }
.lstms-project-metric strong { color: var(--lstms-primary); font-size: clamp(20px, 1.55vw, 25px); font-weight: 700; }
.lstms-project-metric p { margin: 2px 0 0; color: #747474; font-size: 10px; }

.lstms-project-overview-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.lstms-project-overview-card,
.lstms-project-workspace-panel[data-lstms-project-panel="plan"],
.lstms-project-workspace-panel[data-lstms-project-panel="resources"] {
    padding: 24px;
    border-radius: 30px;
    background: #fff;
}

.lstms-project-overview-card--scope,
.lstms-project-overview-card--roadmap { min-height: 330px; }

.lstms-project-section-heading,
.lstms-project-panel-heading {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
}

.lstms-project-section-heading > span {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--lstms-project-accent);
    color: var(--lstms-project-accent-text);
}

.lstms-project-section-heading h2,
.lstms-project-panel-heading h2 {
    margin: 0;
    color: var(--lstms-primary);
    font-size: 16px;
    font-weight: 500;
}

.lstms-project-section-heading p,
.lstms-project-panel-heading p {
    margin: 2px 0 0;
    color: #6c6c6c;
    font-size: 11px;
}

.lstms-project-scope-copy {
    color: #272727;
    font-size: 13px;
    line-height: 1.7;
}

.lstms-project-empty-copy {
    margin: 0;
    color: #858585;
    font-size: 12px;
    font-style: italic;
    line-height: 1.6;
}

.lstms-project-blocker {
    display: grid;
    gap: 4px;
    margin-top: 18px;
    padding: 14px 16px;
    border: 1px dashed #ff5757;
    border-radius: 18px;
    background: #ffe9e9;
    color: #222;
    font-size: 12px;
}

.lstms-project-blocker strong { color: #ff2a2a; text-transform: uppercase; }

.lstms-project-next-item {
    display: grid;
    gap: 4px;
    padding: 15px 0;
    border-bottom: 1px solid #ececec;
}

.lstms-project-next-item:last-child { border-bottom: 0; }
.lstms-project-next-item small { color: #777; font-size: 9px; letter-spacing: .037em; text-transform: uppercase; }
.lstms-project-next-item strong { color: var(--lstms-primary); font-size: 14px; font-weight: 500; }
.lstms-project-next-item span { color: #7a7a7a; font-size: 10px; }

.lstms-project-roadmap {
    list-style: none;
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
}

.lstms-project-roadmap li {
    display: grid;
    grid-template-columns: 34px 1fr;
    align-items: center;
    gap: 10px;
}

.lstms-project-roadmap li > span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ececec;
    color: var(--lstms-primary);
    font-size: 11px;
    font-weight: 600;
}

.lstms-project-roadmap li.is-done > span { background: #7ed957; color: #fff; }
.lstms-project-roadmap li.is-in-progress > span { background: #ff9137; color: #fff; }
.lstms-project-roadmap li.is-waiting > span { background: #ff5757; color: #fff; }

.lstms-project-roadmap button {
    display: grid;
    gap: 2px;
    padding: 12px 14px;
    border: 0;
    border-radius: 15px;
    background: #f8f8f8;
    color: var(--lstms-primary);
    text-align: left;
    cursor: pointer;
}

.lstms-project-roadmap button:hover { background: #0a1d29; color: #fff; }
.lstms-project-roadmap strong { font-size: 12px; font-weight: 500; }
.lstms-project-roadmap small { color: inherit; opacity: .72; font-size: 9px; }

.lstms-project-resource-preview,
.lstms-project-resource-list {
    display: grid;
    gap: 10px;
}

.lstms-project-resource-preview a,
.lstms-project-resource-list a {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid #e7e7e7;
    border-radius: 16px;
    background: #fff;
    color: var(--lstms-primary);
    text-decoration: none !important;
}

.lstms-project-resource-preview a:hover,
.lstms-project-resource-list a:hover { background: #0a1d29; color: #fff; }
.lstms-project-resource-preview a > span,
.lstms-project-resource-list a > span { color: var(--lstms-project-accent); font-size: 10px; font-weight: 600; text-transform: uppercase; }
.lstms-project-resource-preview strong,
.lstms-project-resource-list strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 500; }
.lstms-project-resource-preview i { font-style: normal; }

.lstms-project-panel-heading {
    justify-content: space-between;
    align-items: center;
}

.lstms-project-panel-heading > div { flex: 1; }

.lstms-project-plan-list {
    display: grid;
    gap: 15px;
}

.lstms-project-plan-milestone {
    border: 1px solid #e5e5e5;
    border-radius: 24px;
    overflow: hidden;
}

.lstms-project-plan-milestone__head {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: #fff;
}

.lstms-project-plan-milestone__head > span {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--lstms-project-accent);
    color: var(--lstms-project-accent-text);
    font-size: 12px;
    font-weight: 600;
}

.lstms-project-plan-milestone__head button {
    display: grid;
    gap: 2px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--lstms-primary);
    text-align: left;
    cursor: pointer;
}

.lstms-project-plan-milestone__head button:hover strong { color: #e2ac73; }
.lstms-project-plan-milestone__head button small { color: #777; font-size: 9px; letter-spacing: .037em; text-transform: uppercase; }
.lstms-project-plan-milestone__head button strong { font-size: 14px; font-weight: 500; }
.lstms-project-plan-milestone__head > div { display: grid; justify-items: end; gap: 4px; }
.lstms-project-plan-milestone__head > div > small { color: #777; font-size: 9px; }

.lstms-project-plan-subtasks {
    display: grid;
    gap: 1px;
    padding: 1px 18px 18px 72px;
}

.lstms-project-plan-subtasks button {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    padding: 12px 13px;
    border: 0;
    border-bottom: 1px solid #ececec;
    background: transparent;
    color: var(--lstms-primary);
    text-align: left;
    cursor: pointer;
}

.lstms-project-plan-subtasks button:last-child { border-bottom: 0; }
.lstms-project-plan-subtasks button:hover { background: #f8f8f8; }
.lstms-project-plan-subtasks button.is-done { opacity: .58; }
.lstms-project-plan-subtasks button.is-done strong { text-decoration: line-through; }
.lstms-project-plan-subtasks strong { font-size: 12px; font-weight: 400; }
.lstms-project-plan-subtasks small { color: #777; font-size: 9px; }
.lstms-project-plan-subtasks i { color: #777; font-size: 9px; font-style: normal; text-transform: uppercase; }

.lstms-project-resource-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.lstms-project-resource-columns article {
    padding: 20px;
    border-radius: 24px;
    background: #f8f8f8;
}

.lstms-project-resource-columns h3 {
    margin: 0 0 14px;
    color: var(--lstms-primary);
    font-size: 14px;
    font-weight: 500;
}

.lstms-project-resource-list a { grid-template-columns: 28px minmax(0, 1fr); }
.lstms-project-resource-list a > span { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--lstms-project-accent); color: var(--lstms-project-accent-text); }
.lstms-project-resource-list a > div { min-width: 0; display: grid; }
.lstms-project-resource-list small { overflow: hidden; color: inherit; opacity: .66; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }

.lstms-modal-workspace-button {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 17px;
    border-radius: 999px;
    background: #0cc0df;
    color: #fff !important;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none !important;
}

.lstms-modal-workspace-button:hover { background: #0a1d29; color: #fff !important; }

@media (max-width: 1400px) {
    .lstms-project-filterbar {
        grid-template-columns: minmax(180px, 1fr) minmax(260px, 1.5fr) repeat(3, minmax(130px, .8fr)) auto auto;
    }
    .lstms-project-filterbar label:nth-of-type(5),
    .lstms-project-filterbar label:nth-of-type(6) { grid-row: 2; }
}

@media (max-width: 1100px) {
    .lstms-big-projects-topbar { grid-template-columns: 1fr auto; }
    .lstms-big-projects-rate { grid-column: 1; grid-row: 2; }
    .lstms-big-projects-new { grid-column: 2; grid-row: 1 / span 2; }
    .lstms-project-filterbar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .lstms-project-filterbar__heading,
    .lstms-project-filter-search { grid-column: span 3; }
    .lstms-project-filterbar label:nth-of-type(5),
    .lstms-project-filterbar label:nth-of-type(6) { grid-row: auto; }
    .lstms-project-workspace-topbar { grid-template-columns: 1fr auto; }
    .lstms-project-back { grid-column: 1 / -1; }
    .lstms-project-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
    .lstms-big-projects-topbar {
        grid-template-columns: 1fr;
        border-radius: 30px;
    }
    .lstms-big-projects-rate,
    .lstms-big-projects-new { grid-column: 1; grid-row: auto; justify-self: stretch; }
    .lstms-big-projects-new { width: 100%; }
    .lstms-project-filterbar { grid-template-columns: 1fr; border-radius: 24px; }
    .lstms-project-filterbar__heading,
    .lstms-project-filter-search { grid-column: 1; }
    .lstms-project-card-grid { grid-template-columns: 1fr; }
    .lstms-project-workspace-topbar { grid-template-columns: 1fr; border-radius: 30px; }
    .lstms-project-workspace-actions { justify-content: flex-start; }
    .lstms-project-workspace-actions button { width: 100%; }
    .lstms-project-workspace-tabs { border-radius: 24px; }
    .lstms-project-metric-grid,
    .lstms-project-overview-grid,
    .lstms-project-resource-columns { grid-template-columns: 1fr; }
    .lstms-project-plan-milestone__head { grid-template-columns: 36px minmax(0, 1fr); }
    .lstms-project-plan-milestone__head > div { grid-column: 2; justify-items: start; }
    .lstms-project-plan-subtasks { padding-left: 20px; }
    .lstms-project-plan-subtasks button { grid-template-columns: 22px minmax(0, 1fr); }
    .lstms-project-plan-subtasks small,
    .lstms-project-plan-subtasks i { grid-column: 2; }
    .lstms-project-panel-heading { align-items: flex-start; flex-direction: column; }
    .lstms-project-panel-heading button { width: 100%; }
}

/* Big Projects Phase Two */
.lstms-project-identity-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 20px}.lstms-project-identity-strip>div{display:grid;gap:4px;padding:14px 16px;border:1px solid #e5e5e5;border-radius:20px;background:#fff}.lstms-project-identity-strip small{font-size:9px;letter-spacing:.037em;text-transform:uppercase;color:#777}.lstms-project-identity-strip strong{font-size:12px;font-weight:500;color:var(--lstms-primary)}.lstms-project-overview-grid--phase2{grid-template-columns:repeat(2,minmax(0,1fr))}.lstms-project-overview-card--success .lstms-project-section-heading>span{background:#7ed957;color:#fff}.lstms-project-overview-card--risk .lstms-project-section-heading>span{background:#ff5757;color:#fff}.lstms-project-overview-card--decisions .lstms-project-section-heading>span{background:#e2a9f1;color:#fff}.lstms-project-workspace-panel[data-lstms-project-panel="details"]{background:#fff;border-radius:30px;padding:24px}.lstms-project-details-form{display:grid;gap:18px}.lstms-project-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.lstms-project-details-card{border:1px solid #e5e5e5;border-radius:24px;padding:20px;background:#fff}.lstms-project-details-card.is-full{grid-column:1/-1}.lstms-project-details-card h3{margin:0 0 16px;color:var(--lstms-primary);font-size:15px;font-weight:600}.lstms-project-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lstms-project-form-grid label{display:grid;gap:6px;min-width:0}.lstms-project-form-grid label.is-wide{grid-column:1/-1}.lstms-project-form-grid label>span,.lstms-project-service-types legend{font-size:10px;font-weight:500;color:var(--lstms-primary)}.lstms-project-form-grid input,.lstms-project-form-grid select,.lstms-project-form-grid textarea{width:100%;border:1px solid #222;border-radius:18px;background:#fff;padding:11px 14px;font:400 12px Poppins,sans-serif;color:var(--lstms-primary)}.lstms-project-form-grid textarea{resize:vertical;line-height:1.6}.lstms-project-form-grid--textareas{grid-template-columns:repeat(2,minmax(0,1fr))}.lstms-project-service-types{margin:18px 0 0;border:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.lstms-project-service-types legend{width:100%;margin-bottom:4px}.lstms-project-service-types label{display:flex;align-items:center;gap:7px;border:1px solid #ddd;border-radius:999px;padding:8px 12px;font-size:11px}.lstms-project-service-types input{accent-color:#0a1d29}.lstms-project-details-footer{display:flex;justify-content:flex-end}.lstms-project-details-footer button,.lstms-project-details-form .lstms-project-panel-heading button{border:0;border-radius:999px;background:#0cc0df;color:#fff;padding:11px 20px;font:500 12px Poppins,sans-serif}.lstms-project-details-footer button:hover,.lstms-project-details-form .lstms-project-panel-heading button:hover{background:#0a1d29}.lstms-project-form-message{min-height:18px;font-size:11px}.lstms-project-form-message.is-success{color:#4fae2e}.lstms-project-form-message.is-error{color:#ff2a2a}.lstms-project-form-message.is-working{color:#777}.lstms-project-plan-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.lstms-project-plan-summary article{display:grid;gap:2px;padding:14px 16px;border:1px solid #e5e5e5;border-radius:20px;background:#fff}.lstms-project-plan-summary small{font-size:9px;letter-spacing:.037em;text-transform:uppercase;color:#777}.lstms-project-plan-summary strong{font-size:22px;color:var(--lstms-primary)}.lstms-project-plan-summary span{font-size:9px;color:#777}.lstms-project-plan-summary article.has-warning{border-color:#ff9137;background:#fff8f1}.lstms-project-plan-list--enhanced{gap:16px}.lstms-project-plan-milestone.is-overdue{border-color:#ff5757}.lstms-project-plan-milestone__head button em{display:block;margin-top:3px;font-size:9px;font-style:normal;color:#777}.lstms-project-plan-milestone__controls{display:grid;justify-items:end;gap:5px}.lstms-project-inline-status{border:1px solid #ccc;border-radius:999px;padding:7px 26px 7px 10px;background:#fff;font:500 10px Poppins,sans-serif;color:var(--lstms-primary)}.lstms-project-milestone-progress{height:6px;margin:12px 0 0;border-radius:999px;background:#eef0f1;overflow:hidden}.lstms-project-milestone-progress span{display:block;height:100%;border-radius:inherit;background:var(--lstms-project-accent)}.lstms-project-plan-alerts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}.lstms-project-plan-alerts span{padding:5px 9px;border-radius:999px;background:#fff1e4;color:#9b520f;font-size:9px}.lstms-project-plan-alerts span.is-overdue{background:#ffe9e9;color:#ff2a2a}.lstms-project-plan-subtask{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border-bottom:1px solid #eee}.lstms-project-plan-subtask__open{display:grid!important;grid-template-columns:22px minmax(0,1fr) auto!important;gap:8px!important;align-items:center;text-align:left}.lstms-project-plan-subtask.is-overdue{background:#fff7f7}.lstms-project-plan-subtask .lstms-project-inline-status{margin-right:10px}.lstms-project-service-add{display:flex;gap:10px;margin:12px 0 18px}.lstms-project-service-add input{flex:1;border:1px solid #222;border-radius:999px;padding:10px 14px;font:400 12px Poppins,sans-serif}.lstms-project-service-list{display:grid;gap:9px}.lstms-project-service-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e6e6e6;border-radius:18px}.lstms-project-service-list article.is-archived{opacity:.55}.lstms-project-service-list article>div{display:flex;gap:8px}.lstms-project-service-list form{margin:0}
@media(max-width:900px){.lstms-project-identity-strip,.lstms-project-plan-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.lstms-project-details-grid,.lstms-project-overview-grid--phase2{grid-template-columns:1fr}.lstms-project-details-card.is-full{grid-column:auto}}
@media(max-width:600px){.lstms-project-identity-strip,.lstms-project-plan-summary,.lstms-project-form-grid,.lstms-project-form-grid--textareas{grid-template-columns:1fr}.lstms-project-details-card{padding:16px}.lstms-project-workspace-panel[data-lstms-project-panel="details"]{padding:16px}.lstms-project-plan-subtask{grid-template-columns:1fr}.lstms-project-plan-subtask .lstms-project-inline-status{margin:0 10px 10px 40px;width:calc(100% - 50px)}.lstms-project-service-add{flex-direction:column}.lstms-project-service-list article{align-items:flex-start;flex-direction:column}}

/* ================================================================
   Big Projects Phase Three — Work Sessions
   ================================================================ */
.lstms-project-panel-heading--sessions {
    align-items: center;
}

.lstms-project-panel-heading--sessions > button,
.lstms-project-workspace [data-lstms-new-work-session] {
    border: 0;
    border-radius: 999px;
    background: #0cc0df;
    color: #fff;
    padding: 12px 22px;
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
}

.lstms-project-workspace [data-lstms-new-work-session]:hover,
.lstms-project-workspace [data-lstms-new-work-session]:focus-visible {
    background: #0a1d29;
    color: #fff;
}

.lstms-work-session-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 0 0 20px;
}

.lstms-work-session-summary article {
    min-width: 0;
    border: 1px solid #e3e8eb;
    border-radius: 24px;
    background: #fff;
    padding: 17px 18px;
    box-shadow: 0 7px 18px rgba(20, 47, 63, .045);
}

.lstms-work-session-summary article.has-warning {
    border-color: rgba(255, 87, 87, .45);
    background: #fff8f8;
}

.lstms-work-session-summary small,
.lstms-work-session-summary span {
    display: block;
    color: #64727a;
    font-size: 10px;
    font-weight: 300;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.lstms-work-session-summary strong {
    display: block;
    margin: 4px 0 2px;
    color: #142f3f;
    font-size: 25px;
    line-height: 1.1;
}

.lstms-work-session-layout {
    display: grid;
    grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr);
    gap: 20px;
    align-items: start;
}

.lstms-work-session-form,
.lstms-work-session-list-wrap {
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 7px 22px rgba(20, 47, 63, .05);
}

.lstms-work-session-form {
    position: sticky;
    top: 20px;
    padding: 22px;
}

.lstms-work-session-form__heading,
.lstms-work-session-list-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.lstms-work-session-form__heading > div,
.lstms-work-session-list-heading > div {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.lstms-work-session-form__heading > div > span {
    display: grid;
    place-items: center;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #0cc0df;
    color: #fff;
    font-size: 17px;
}

.lstms-work-session-form h3,
.lstms-work-session-list-heading h3 {
    margin: 0;
    color: #142f3f;
    font-size: 17px;
    font-weight: 500;
}

.lstms-work-session-form p,
.lstms-work-session-list-heading p {
    margin: 3px 0 0;
    color: #68757d;
    font-size: 11px;
    line-height: 1.55;
}

.lstms-work-session-form__heading > button {
    border: 1px solid #cbd5da;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    padding: 7px 12px;
    font-size: 11px;
}

.lstms-work-session-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.lstms-work-session-form-grid label {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.lstms-work-session-form-grid label.is-wide {
    grid-column: 1 / -1;
}

.lstms-work-session-form-grid label > span {
    color: #142f3f;
    font-size: 11px;
    font-weight: 500;
}

.lstms-work-session-form-grid input,
.lstms-work-session-form-grid select,
.lstms-work-session-form-grid textarea {
    width: 100%;
    min-width: 0;
    border: 1px solid #aeb8bd;
    border-radius: 18px;
    background: #fff;
    color: #142f3f;
    padding: 10px 13px;
    font: 400 12px/1.4 Poppins, sans-serif;
}

.lstms-work-session-form-grid textarea {
    resize: vertical;
}

.lstms-work-session-form-grid input:focus,
.lstms-work-session-form-grid select:focus,
.lstms-work-session-form-grid textarea:focus {
    outline: 2px solid rgba(10, 29, 41, .16);
    border-color: #0a1d29;
}

.lstms-work-session-form__footer {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: 18px;
}

.lstms-work-session-form__footer > button {
    border: 0;
    border-radius: 999px;
    background: #0cc0df;
    color: #fff;
    padding: 11px 20px;
    font: 500 13px/1 Poppins, sans-serif;
}

.lstms-work-session-form__footer > button:hover,
.lstms-work-session-form__footer > button:focus-visible {
    background: #0a1d29;
}

.lstms-work-session-form__footer span {
    color: #68757d;
    font-size: 11px;
}

.lstms-work-session-form__footer span.is-success { color: #4f9c2f; }
.lstms-work-session-form__footer span.is-error { color: #ff2a2a; }

.lstms-work-session-list-wrap {
    padding: 22px;
}

.lstms-work-session-list-heading > span {
    display: grid;
    place-items: center;
    min-width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #eef5f7;
    color: #142f3f;
    font-size: 13px;
    font-weight: 600;
}

.lstms-work-session-list {
    display: grid;
    gap: 12px;
}

.lstms-work-session-card {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    border: 1px solid #dce4e8;
    border-left: 5px solid var(--lstms-project-accent, #0cc0df);
    border-radius: 22px;
    background: #fff;
    padding: 13px 14px 13px 10px;
}

.lstms-work-session-card.is-completed { opacity: .68; }
.lstms-work-session-card.is-missed { border-color: rgba(255, 87, 87, .42); border-left-color: #ff5757; background: #fff9f9; }

.lstms-work-session-card__date {
    display: grid;
    place-items: center;
    align-content: center;
    width: 50px;
    height: 50px;
    border-radius: 17px;
    background: #f4efea;
    color: #142f3f;
}

.lstms-work-session-card__date strong {
    font-size: 19px;
    line-height: 1;
}

.lstms-work-session-card__date span {
    margin-top: 3px;
    font-size: 9px;
    letter-spacing: .08em;
}

.lstms-work-session-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.lstms-work-session-card__top > div > span,
.lstms-work-session-card__body > p,
.lstms-work-session-card__body > small {
    display: block;
    color: #6b767c;
    font-size: 10px;
}

.lstms-work-session-card__top h4 {
    margin: 3px 0 0;
    color: #142f3f;
    font-size: 14px;
    font-weight: 500;
}

.lstms-work-session-card__body > p { margin: 6px 0 0; }
.lstms-work-session-card__body > small { margin-top: 4px; line-height: 1.45; }

.lstms-work-session-status {
    flex: 0 0 auto;
    border-radius: 999px;
    background: #eef1f2;
    color: #516169;
    padding: 5px 10px;
    font-size: 9px;
    text-transform: uppercase;
}

.lstms-work-session-status.is-completed { background: #eaf8e5; color: #4f9c2f; }
.lstms-work-session-status.is-missed { background: #ffe9e9; color: #ff2a2a; }
.lstms-work-session-status.is-planned { background: #e8f9fc; color: #07869c; }

.lstms-work-session-card__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px;
    max-width: 230px;
}

.lstms-work-session-card__actions button,
.lstms-work-session-card__actions select {
    border: 1px solid #ccd6db;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    padding: 7px 10px;
    font: 400 10px/1 Poppins, sans-serif;
}

.lstms-work-session-card__actions button:hover,
.lstms-work-session-card__actions button:focus-visible,
.lstms-work-session-card__actions select:hover,
.lstms-work-session-card__actions select:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-work-session-card__actions button.is-delete {
    width: 29px;
    height: 29px;
    padding: 0;
    border-color: rgba(255, 87, 87, .35);
    color: #ff2a2a;
}

.lstms-work-session-empty {
    min-height: 230px;
}

/* Today work-session card. */
.lstms-today-work-sessions-card .lstms-card-heading__icon {
    background: #0cc0df;
    color: #fff;
}

.lstms-today-work-session-list {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.lstms-today-work-session {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    border-left: 4px solid var(--lstms-item-color, #0cc0df);
    border-radius: 18px;
    background: #f8fafb;
    padding: 8px 9px;
}

.lstms-today-work-session.is-completed { opacity: .64; }
.lstms-today-work-session.is-missed { background: #fff0f0; border-left-color: #ff5757; }

.lstms-today-work-session__open {
    display: grid;
    grid-template-columns: 57px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    min-width: 0;
    border: 0;
    background: transparent;
    text-align: left;
    padding: 0;
    color: #142f3f;
}

.lstms-today-work-session__time {
    border-right: 1px solid #cdd6da;
    font-size: 11px;
}

.lstms-today-work-session__copy {
    min-width: 0;
}

.lstms-today-work-session__copy strong,
.lstms-today-work-session__copy small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lstms-today-work-session__copy strong {
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
}

.lstms-today-work-session__copy small {
    margin-top: 2px;
    color: #65737a;
    font-size: 9px;
    white-space: nowrap;
}

.lstms-today-work-session select {
    max-width: 92px;
    border: 1px solid #cbd5da;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    padding: 6px 8px;
    font: 400 9px/1 Poppins, sans-serif;
}

/* Calendar work-session treatment. */
.lstms-calendar-work-session {
    border-left-color: var(--lstms-item-color, #0cc0df);
    background: color-mix(in srgb, var(--lstms-item-color, #0cc0df) 12%, #fff);
}

.lstms-calendar-work-session__icon {
    flex: 0 0 auto;
    color: var(--lstms-item-color, #0cc0df);
    font-size: 14px;
}

.lstms-calendar-work-session__copy {
    display: grid;
    min-width: 0;
    text-align: left;
}

.lstms-calendar-work-session__copy strong,
.lstms-calendar-work-session__copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lstms-calendar-work-session__copy strong {
    font-size: 10px;
    font-weight: 500;
}

.lstms-calendar-work-session__copy small {
    margin-top: 1px;
    color: #65737a;
    font-size: 8px;
}

.lstms-calendar-work-session--completed { opacity: .6; }
.lstms-calendar-work-session--missed { background: #ffe9e9; border-left-color: #ff5757; }
.lstms-calendar-agenda-item--session { border-color: rgba(12, 192, 223, .25); }

@media (max-width: 1100px) {
    .lstms-work-session-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lstms-work-session-layout { grid-template-columns: 1fr; }
    .lstms-work-session-form { position: static; }
}

@media (max-width: 720px) {
    .lstms-work-session-summary { grid-template-columns: 1fr 1fr; gap: 10px; }
    .lstms-work-session-form,
    .lstms-work-session-list-wrap { padding: 17px; border-radius: 22px; }
    .lstms-work-session-form-grid { grid-template-columns: 1fr; }
    .lstms-work-session-form-grid label.is-wide { grid-column: auto; }
    .lstms-work-session-card { grid-template-columns: 48px minmax(0, 1fr); }
    .lstms-work-session-card__date { width: 44px; height: 44px; border-radius: 14px; }
    .lstms-work-session-card__actions { grid-column: 1 / -1; max-width: none; justify-content: flex-start; padding-left: 58px; }
    .lstms-project-panel-heading--sessions { align-items: flex-start; }
}

@media (max-width: 480px) {
    .lstms-work-session-summary { grid-template-columns: 1fr; }
    .lstms-work-session-card__top { display: block; }
    .lstms-work-session-status { display: inline-block; margin-top: 7px; }
    .lstms-work-session-card__actions { padding-left: 0; }
    .lstms-today-work-session { grid-template-columns: 1fr; }
    .lstms-today-work-session select { max-width: 100%; width: 100%; }
}

/* ================================================================
   Big Projects Phase Four — Client, Financials and Communications
   ================================================================ */
.lstms-project-workspace-panel[data-lstms-project-panel="client-financials"],
.lstms-project-workspace-panel[data-lstms-project-panel="communications"] {
    padding: 24px;
    border-radius: 30px;
    background: #fff;
}

.lstms-project-workspace-tabs .lstms-project-tab-count {
    min-width: 19px;
    height: 19px;
    display: inline-grid;
    place-items: center;
    margin-left: 6px;
    border-radius: 50%;
    background: #ff5757;
    color: #fff;
    font-size: 9px;
    font-weight: 600;
}

.lstms-project-card__finance-flag {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 7px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #ffe9e9;
    color: #cf2832;
    font-size: 10px;
    font-weight: 500;
}

.lstms-project-card__finance-flag > span {
    width: 17px;
    height: 17px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ff5757;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
}

.lstms-project-overview-card--financial .lstms-project-section-heading > span {
    background: #ffde59;
    color: #142f3f;
    font-weight: 700;
}

.lstms-project-overview-card--communications .lstms-project-section-heading > span {
    background: #ff5757;
    color: #fff;
}

.lstms-project-financial-preview {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
}

.lstms-project-financial-preview > div {
    min-width: 0;
    display: grid;
    gap: 3px;
    padding: 12px;
    border: 1px solid #e7e7e7;
    border-radius: 17px;
    background: #fff;
}

.lstms-project-financial-preview > div.has-warning {
    border-color: rgba(255, 87, 87, .45);
    background: #fff9f9;
}

.lstms-project-financial-preview small,
.lstms-project-next-communication small {
    color: #777;
    font-size: 8px;
    letter-spacing: .037em;
    text-transform: uppercase;
}

.lstms-project-financial-preview strong {
    overflow: hidden;
    color: var(--lstms-primary);
    font-size: 14px;
    font-weight: 600;
    text-overflow: ellipsis;
}

.lstms-project-preview-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 13px;
}

.lstms-project-preview-footer button {
    border: 1px solid #cfd6d9;
    border-radius: 999px;
    background: #fff;
    color: var(--lstms-primary);
    padding: 7px 13px;
    font: 500 10px/1.2 Poppins, sans-serif;
    cursor: pointer;
}

.lstms-project-preview-footer button:hover,
.lstms-project-preview-footer button:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-project-invoice-status {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f0f0f0;
    color: #545454;
    font-size: 9px;
    font-weight: 500;
}

.lstms-project-invoice-status.is-paid { background: #eaf8e5; color: #4f9c2f; }
.lstms-project-invoice-status.is-overdue,
.lstms-project-invoice-status.is-deposit-due { background: #ffe9e9; color: #d72c36; }
.lstms-project-invoice-status.is-partially-invoiced,
.lstms-project-invoice-status.is-fully-invoiced { background: #fff1e4; color: #b85c0f; }
.lstms-project-invoice-status.is-approved,
.lstms-project-invoice-status.is-quote-sent { background: #e8f9fc; color: #07869c; }

.lstms-project-communication-preview {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}

.lstms-project-communication-preview > div {
    display: grid;
    gap: 2px;
    padding: 12px;
    border-radius: 17px;
    background: #f8f8f8;
    text-align: center;
}

.lstms-project-communication-preview strong {
    color: var(--lstms-primary);
    font-size: 22px;
}

.lstms-project-communication-preview span {
    color: #6b6b6b;
    font-size: 9px;
}

.lstms-project-next-communication {
    display: grid;
    gap: 3px;
    margin-top: 12px;
    padding: 12px 14px;
    border-left: 4px solid #ff5757;
    border-radius: 0 15px 15px 0;
    background: #fff4f4;
}

.lstms-project-next-communication strong {
    color: var(--lstms-primary);
    font-size: 12px;
}

.lstms-project-next-communication span {
    color: #777;
    font-size: 9px;
}

.lstms-project-financial-form {
    display: grid;
    gap: 18px;
}

.lstms-project-financial-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.lstms-project-financial-layout .is-full {
    grid-column: 1 / -1;
}

.lstms-project-financial-summary,
.lstms-project-communication-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.lstms-project-financial-summary article,
.lstms-project-communication-summary article {
    display: grid;
    gap: 3px;
    padding: 15px 16px;
    border: 1px solid #e5e5e5;
    border-radius: 20px;
    background: #fff;
}

.lstms-project-financial-summary article.has-warning {
    border-color: rgba(255, 87, 87, .45);
    background: #fff9f9;
}

.lstms-project-financial-summary small,
.lstms-project-communication-summary small {
    color: #777;
    font-size: 9px;
    letter-spacing: .037em;
    text-transform: uppercase;
}

.lstms-project-financial-summary strong,
.lstms-project-communication-summary strong {
    color: var(--lstms-primary);
    font-size: 21px;
    line-height: 1.15;
}

.lstms-project-financial-summary span,
.lstms-project-communication-summary span {
    color: #777;
    font-size: 9px;
    line-height: 1.4;
}

.lstms-project-crm-placeholder {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-top: 16px;
    padding: 13px 14px;
    border-radius: 17px;
    background: #e8f9fc;
    color: #08788c;
}

.lstms-project-crm-placeholder > span {
    width: 28px;
    height: 28px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #0cc0df;
    color: #fff;
}

.lstms-project-crm-placeholder strong {
    display: block;
    margin-bottom: 2px;
    font-size: 11px;
}

.lstms-project-crm-placeholder p {
    margin: 0;
    font-size: 9px;
    line-height: 1.55;
}

.lstms-project-money-progress {
    display: grid;
    gap: 6px;
    margin-top: 14px;
}

.lstms-project-money-progress > div:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #6f6f6f;
    font-size: 9px;
}

.lstms-project-money-progress strong {
    color: var(--lstms-primary);
    font-size: 10px;
}

.lstms-project-money-track {
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #e9ecee;
}

.lstms-project-money-track > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #ff9137;
}

.lstms-project-money-track.is-paid > span {
    background: #7ed957;
}

.lstms-project-financial-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.lstms-project-financial-links a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid #cfd6d9;
    border-radius: 999px;
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 500;
    text-decoration: none !important;
}

.lstms-project-financial-links a:hover {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-project-communications-layout {
    display: grid;
    grid-template-columns: minmax(300px, .82fr) minmax(0, 1.4fr);
    gap: 20px;
    align-items: start;
    margin-top: 20px;
}

.lstms-project-communication-form,
.lstms-project-communication-group {
    border: 1px solid #e5e5e5;
    border-radius: 24px;
    background: #fff;
}

.lstms-project-communication-form {
    position: sticky;
    top: 20px;
    padding: 20px;
}

.lstms-project-communication-form__heading,
.lstms-project-communication-form__heading > div,
.lstms-project-communication-group__heading,
.lstms-project-communication-card__top,
.lstms-project-communication-card__actions {
    display: flex;
    align-items: center;
}

.lstms-project-communication-form__heading,
.lstms-project-communication-group__heading,
.lstms-project-communication-card__top {
    justify-content: space-between;
    gap: 12px;
}

.lstms-project-communication-form__heading > div {
    align-items: flex-start;
    gap: 10px;
}

.lstms-project-communication-form__heading > div > span {
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ff5757;
    color: #fff;
}

.lstms-project-communication-form h3,
.lstms-project-communication-group h3 {
    margin: 0;
    color: var(--lstms-primary);
    font-size: 14px;
    font-weight: 600;
}

.lstms-project-communication-form p,
.lstms-project-communication-group p {
    margin: 3px 0 0;
    color: #777;
    font-size: 9px;
    line-height: 1.5;
}

.lstms-project-communication-form__heading > button {
    border: 0;
    background: transparent;
    color: #777;
    font: 500 9px Poppins, sans-serif;
    cursor: pointer;
}

.lstms-project-communication-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    margin-top: 18px;
}

.lstms-project-communication-form-grid label {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.lstms-project-communication-form-grid label.is-wide {
    grid-column: 1 / -1;
}

.lstms-project-communication-form-grid label > span {
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 500;
}

.lstms-project-communication-form-grid input,
.lstms-project-communication-form-grid select,
.lstms-project-communication-form-grid textarea {
    width: 100%;
    border: 1px solid #222;
    border-radius: 18px;
    background: #fff;
    color: var(--lstms-primary);
    padding: 11px 13px;
    font: 400 11px Poppins, sans-serif;
}

.lstms-project-communication-form-grid textarea {
    min-height: 190px;
    resize: vertical;
    line-height: 1.65;
}

.lstms-project-communication-form-grid input:focus,
.lstms-project-communication-form-grid select:focus,
.lstms-project-communication-form-grid textarea:focus {
    outline: 2px solid rgba(10, 29, 41, .18);
    outline-offset: 1px;
}

.lstms-project-communication-form__footer {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 16px;
}

.lstms-project-communication-form__footer button {
    border: 0;
    border-radius: 999px;
    background: #ff5757;
    color: #fff;
    padding: 11px 18px;
    font: 500 11px Poppins, sans-serif;
    cursor: pointer;
}

.lstms-project-communication-form__footer button:hover,
.lstms-project-communication-form__footer button:focus-visible {
    background: #0a1d29;
}

.lstms-project-communication-form__footer span {
    color: #777;
    font-size: 10px;
}
.lstms-project-communication-form__footer span.is-success { color: #4f9c2f; }
.lstms-project-communication-form__footer span.is-error { color: #ff2a2a; }

.lstms-project-communication-lists {
    display: grid;
    gap: 18px;
}

.lstms-project-communication-group {
    padding: 18px;
}

.lstms-project-communication-group__heading {
    padding-bottom: 12px;
    border-bottom: 1px solid #ececec;
}

.lstms-project-communication-group__heading > span {
    min-width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #f1f1f1;
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 600;
}

.lstms-project-communication-list {
    display: grid;
    gap: 12px;
    padding-top: 14px;
}

.lstms-project-communication-card {
    display: grid;
    gap: 11px;
    padding: 16px;
    border: 1px solid #e8e8e8;
    border-left: 5px solid #a6a6a6;
    border-radius: 20px;
    background: #fff;
}

.lstms-project-communication-card.is-ready {
    border-left-color: #ff5757;
    background: #fffafa;
}

.lstms-project-communication-card.is-sent {
    border-left-color: #7ed957;
    opacity: .72;
}

.lstms-project-communication-card__top > div {
    min-width: 0;
}

.lstms-project-communication-card__top h4 {
    margin: 6px 0 0;
    color: var(--lstms-primary);
    font-size: 14px;
    font-weight: 500;
}

.lstms-project-communication-card__top > small {
    color: #777;
    font-size: 8px;
}

.lstms-project-communication-status {
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 999px;
    background: #efefef;
    color: #666;
    font-size: 8px;
    font-weight: 600;
    text-transform: uppercase;
}

.lstms-project-communication-status.is-ready { background: #ffe9e9; color: #d72c36; }
.lstms-project-communication-status.is-sent { background: #eaf8e5; color: #4f9c2f; }

.lstms-project-communication-trigger {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    color: #777;
    font-size: 9px;
}

.lstms-project-communication-trigger span {
    padding: 5px 8px;
    border-radius: 999px;
    background: #fff1e4;
    color: #a0520e;
}

.lstms-project-communication-trigger strong {
    color: var(--lstms-primary);
    font-weight: 500;
}

.lstms-project-communication-subject {
    display: grid;
    gap: 3px;
    padding: 10px 12px;
    border-radius: 14px;
    background: #f7f7f7;
}

.lstms-project-communication-subject small {
    color: #777;
    font-size: 8px;
    text-transform: uppercase;
}

.lstms-project-communication-subject strong {
    color: var(--lstms-primary);
    font-size: 10px;
    font-weight: 500;
}

.lstms-project-communication-card pre {
    max-height: 260px;
    margin: 0;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    color: #333;
    font: 300 11px/1.65 Poppins, sans-serif;
}

.lstms-project-communication-card__actions {
    flex-wrap: wrap;
    gap: 7px;
}

.lstms-project-communication-card__actions button {
    min-height: 33px;
    border: 1px solid #d4dadd;
    border-radius: 999px;
    background: #fff;
    color: var(--lstms-primary);
    padding: 0 12px;
    font: 500 9px Poppins, sans-serif;
    cursor: pointer;
}

.lstms-project-communication-card__actions button:hover,
.lstms-project-communication-card__actions button:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #fff;
}

.lstms-project-communication-card__actions button.is-primary {
    border-color: #ff5757;
    background: #ff5757;
    color: #fff;
}

.lstms-project-communication-card__actions button.is-delete {
    margin-left: auto;
    border-color: rgba(255, 87, 87, .35);
    color: #d72c36;
}

.lstms-project-communication-empty {
    display: grid;
    justify-items: center;
    gap: 7px;
    padding: 28px 15px 16px;
    text-align: center;
}

.lstms-project-communication-empty > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #ffe9e9;
    color: #ff5757;
}

@media (max-width: 1000px) {
    .lstms-project-financial-layout,
    .lstms-project-communications-layout {
        grid-template-columns: 1fr;
    }
    .lstms-project-communication-form { position: static; }
}

@media (max-width: 760px) {
    .lstms-project-workspace-panel[data-lstms-project-panel="client-financials"],
    .lstms-project-workspace-panel[data-lstms-project-panel="communications"] {
        padding: 17px;
        border-radius: 24px;
    }
    .lstms-project-financial-summary,
    .lstms-project-communication-summary,
    .lstms-project-financial-preview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .lstms-project-communication-form-grid {
        grid-template-columns: 1fr;
    }
    .lstms-project-communication-form-grid label.is-wide {
        grid-column: auto;
    }
    .lstms-project-communication-card__top {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .lstms-project-financial-summary,
    .lstms-project-communication-summary,
    .lstms-project-financial-preview,
    .lstms-project-communication-preview {
        grid-template-columns: 1fr;
    }
    .lstms-project-preview-footer {
        align-items: stretch;
        flex-direction: column;
    }
    .lstms-project-preview-footer button { width: 100%; }
    .lstms-project-communication-card__actions button.is-delete { margin-left: 0; }
}

/* =========================================================
   Big Projects final polish: lifecycle, templates, notes
   ========================================================= */
.lstms-big-projects-topbar__actions,
.lstms-project-workspace-buttons,
.lstms-project-workspace-badges,
.lstms-project-card__state-pills {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}
.lstms-project-template-open,
.lstms-project-workspace-buttons > button,
.lstms-project-action-panel button,
.lstms-project-template-launcher button,
.lstms-project-note-form-footer button {
    border:1px solid rgba(20,47,63,.18);
    background:#fff;
    color:#142f3f;
    border-radius:999px;
    min-height:38px;
    padding:8px 16px;
    font-family:Poppins,sans-serif;
    font-size:12px;
    font-weight:600;
    transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.lstms-project-template-open:hover,
.lstms-project-workspace-buttons > button:hover,
.lstms-project-action-panel button:hover,
.lstms-project-template-launcher button:hover,
.lstms-project-note-form-footer button:hover {
    background:#0a1d29;
    border-color:#0a1d29;
    color:#fff;
}
.lstms-project-workspace-buttons > button.is-primary,
.lstms-project-action-panel button:first-of-type,
.lstms-project-template-launcher [data-lstms-project-template-create],
.lstms-project-note-form-footer button[type="submit"] {
    background:#142f3f;
    border-color:#142f3f;
    color:#fff;
}
.lstms-project-workspace-buttons > button.is-primary:hover,
.lstms-project-action-panel button:first-of-type:hover,
.lstms-project-template-launcher [data-lstms-project-template-create]:hover,
.lstms-project-note-form-footer button[type="submit"]:hover {
    background:#0a1d29;
    border-color:#0a1d29;
}
.lstms-project-template-launcher {
    display:grid;
    grid-template-columns:minmax(230px,1.2fr) minmax(180px,.8fr) minmax(220px,1fr) auto;
    align-items:end;
    gap:14px;
    margin:20px 0;
    padding:20px 22px;
    background:#fff;
    border-radius:30px;
    box-shadow:0 8px 28px rgba(20,47,63,.06);
}
.lstms-project-template-launcher[hidden],
.lstms-project-action-panel[hidden] { display:none !important; }
.lstms-project-template-launcher > div:first-child { align-self:center; }
.lstms-project-template-launcher strong { display:block;font-size:15px;font-weight:500;color:#142f3f; }
.lstms-project-template-launcher p { margin:3px 0 0;font-size:11px;line-height:1.5;color:#626262; }
.lstms-project-template-launcher label,
.lstms-project-action-panel label,
.lstms-project-note-form-grid label { display:flex;flex-direction:column;gap:6px; }
.lstms-project-template-launcher label > span,
.lstms-project-action-panel label > span,
.lstms-project-note-form-grid label > span {
    font-size:10px;
    font-weight:500;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#545454;
}
.lstms-project-template-launcher input[type="text"],
.lstms-project-template-launcher select,
.lstms-project-action-panel input[type="text"],
.lstms-project-note-form-grid input,
.lstms-project-note-form-grid select,
.lstms-project-note-form-grid textarea {
    width:100%;
    border:1px solid #d9d9d9;
    border-radius:16px;
    background:#fff;
    color:#142f3f;
    font-family:Poppins,sans-serif;
    font-size:12px;
    padding:10px 12px;
    outline:none;
}
.lstms-project-template-launcher input:focus,
.lstms-project-template-launcher select:focus,
.lstms-project-action-panel input:focus,
.lstms-project-note-form-grid input:focus,
.lstms-project-note-form-grid select:focus,
.lstms-project-note-form-grid textarea:focus {
    border-color:#142f3f;
    box-shadow:0 0 0 2px rgba(20,47,63,.1);
}
.lstms-project-template-draft { flex-direction:row !important;align-items:center;align-self:center; }
.lstms-project-template-launcher__actions { grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;align-items:center; }
.lstms-project-template-launcher__actions .is-danger-link { color:#ff5757;border-color:transparent;background:transparent; }
.lstms-project-template-launcher__actions .is-danger-link:hover { background:#ff5757;color:#fff;border-color:#ff5757; }
[data-lstms-project-template-message] { grid-column:1/-1;font-size:11px; }

.lstms-project-state-tabs {
    display:flex;
    align-items:center;
    gap:8px;
    overflow-x:auto;
    padding:2px;
    scrollbar-width:thin;
}
.lstms-project-state-tabs a {
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:36px;
    padding:7px 12px;
    border-radius:999px;
    border:1px solid rgba(20,47,63,.14);
    background:#fff;
    color:#142f3f;
    text-decoration:none;
    font-size:11px;
    white-space:nowrap;
}
.lstms-project-state-tabs a strong {
    display:grid;
    place-items:center;
    min-width:21px;
    height:21px;
    padding:0 5px;
    border-radius:999px;
    background:#f4efea;
    font-size:10px;
}
.lstms-project-state-tabs a:hover,
.lstms-project-state-tabs a.is-active { background:#0a1d29;color:#fff;border-color:#0a1d29; }
.lstms-project-state-tabs a:hover strong,
.lstms-project-state-tabs a.is-active strong { background:rgba(255,255,255,.18);color:#fff; }

.lstms-project-draft-pill,
.lstms-project-archived-pill {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:4px 10px;
    border-radius:999px;
    font-size:9px;
    font-weight:600;
    letter-spacing:.06em;
    text-transform:uppercase;
    white-space:nowrap;
}
.lstms-project-draft-pill { background:#fff1d8;color:#9a5d00; }
.lstms-project-archived-pill { background:#e7e7e7;color:#545454; }
.lstms-project-card__top { align-items:flex-start; }
.lstms-project-card__state-pills { max-width:48%; }
.lstms-project-card__alerts {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:9px 0 0;
}
.lstms-project-card__alerts span,
.lstms-project-alert-strip span,
.lstms-project-alert-strip button {
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:4px 9px;
    border:0;
    border-radius:999px;
    font-family:Poppins,sans-serif;
    font-size:9px;
    font-weight:600;
    cursor:default;
}
.lstms-project-card__alerts .is-blocked,
.lstms-project-alert-strip .is-blocked { background:#ffe9e9;color:#c22d2d; }
.lstms-project-card__alerts .is-overdue,
.lstms-project-alert-strip button:first-of-type { background:#fff0e4;color:#b85b11; }
.lstms-project-card__alerts .is-missed,
.lstms-project-alert-strip button:last-of-type { background:#f5eafd;color:#7d3e94; }
.lstms-project-alert-strip {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 20px;
    padding:13px 16px;
    border-radius:22px;
    background:#fff;
    border:1px solid rgba(255,87,87,.24);
}
.lstms-project-alert-strip > strong { margin-right:4px;font-size:11px;color:#142f3f; }
.lstms-project-alert-strip button { cursor:pointer; }
.lstms-project-alert-strip button:hover { background:#0a1d29;color:#fff; }

.lstms-project-workspace-topbar { align-items:flex-start; }
.lstms-project-workspace-actions { min-width:min(100%,440px);display:flex;flex-direction:column;align-items:flex-end;gap:10px; }
.lstms-project-workspace-action-panels { margin:0 0 18px; }
.lstms-project-action-panel {
    display:grid;
    grid-template-columns:minmax(260px,1.4fr) minmax(220px,1fr) auto;
    align-items:end;
    gap:14px;
    padding:18px 20px;
    border-radius:26px;
    background:#fff;
    box-shadow:0 8px 28px rgba(20,47,63,.06);
}
.lstms-project-action-panel > div:first-child strong { display:block;font-size:14px;color:#142f3f; }
.lstms-project-action-panel > div:first-child p { margin:3px 0 0;font-size:10px;line-height:1.5;color:#666; }
.lstms-project-action-panel > div:not(:first-child) { display:flex;gap:8px;align-items:center;justify-content:flex-end; }
.lstms-project-duplicate-options { grid-template-columns:repeat(4,minmax(150px,1fr)); }
.lstms-project-duplicate-options > div:first-child,
.lstms-project-duplicate-options .is-wide { grid-column:1/-1; }
.lstms-project-duplicate-options label:not(.is-wide) { flex-direction:row;align-items:center;justify-content:flex-start;padding:9px 11px;background:#f7f5f2;border-radius:14px; }
.lstms-project-duplicate-options label:not(.is-wide) > span { text-transform:none;letter-spacing:0;font-size:11px;color:#142f3f; }
.lstms-project-action-panel [role="status"],
.lstms-project-note-form-footer [role="status"] { font-size:11px;color:#545454; }
.lstms-project-action-panel .is-working,
.lstms-project-note-form-footer .is-working { color:#ff9137; }
.lstms-project-action-panel .is-success,
.lstms-project-note-form-footer .is-success { color:#3c8d2a; }
.lstms-project-action-panel .is-error,
.lstms-project-note-form-footer .is-error { color:#d83333; }

.lstms-project-notes-layout {
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
    gap:20px;
    align-items:start;
}
.lstms-project-note-manager,
.lstms-project-activity-panel {
    background:#fff;
    border-radius:30px;
    padding:22px;
    box-shadow:0 8px 28px rgba(20,47,63,.05);
}
.lstms-project-note-manager form { padding:18px;border-radius:24px;background:#f7f5f2;margin-bottom:20px; }
.lstms-project-note-form-heading,
.lstms-project-note-group__heading,
.lstms-project-activity-heading,
.lstms-project-note-card footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.lstms-project-note-form-heading h3,
.lstms-project-note-group__heading h3,
.lstms-project-activity-heading h3 { margin:0;font-size:14px;font-weight:500;color:#142f3f; }
.lstms-project-note-form-heading button { border:0;background:transparent;color:#ff5757;font-size:10px;font-weight:600; }
.lstms-project-note-form-grid { display:grid;grid-template-columns:180px 1fr;gap:12px;margin-top:14px; }
.lstms-project-note-form-grid .is-wide { grid-column:1/-1; }
.lstms-project-note-form-grid textarea { resize:vertical;min-height:120px; }
.lstms-project-note-form-footer { display:flex;align-items:center;gap:12px;margin-top:12px; }
.lstms-project-note-groups { display:grid;grid-template-columns:1fr 1fr;gap:16px; }
.lstms-project-note-group { min-width:0; }
.lstms-project-note-group__heading { margin-bottom:10px; }
.lstms-project-note-group__heading span,
.lstms-project-activity-heading span {
    display:grid;
    place-items:center;
    min-width:27px;
    height:27px;
    padding:0 6px;
    border-radius:999px;
    background:#f4efea;
    color:#142f3f;
    font-size:10px;
    font-weight:600;
}
.lstms-project-note-card {
    padding:14px;
    margin:0 0 10px;
    border-radius:18px;
    border-left:4px solid #0cc0df;
    background:#fbfaf8;
}
.lstms-project-note-group--decision .lstms-project-note-card { border-left-color:#e2ac73; }
.lstms-project-note-card > div:first-of-type span { display:block;font-size:8px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#777; }
.lstms-project-note-card h4 { margin:3px 0 0;font-size:12px;font-weight:500;color:#142f3f; }
.lstms-project-note-card > p { margin:10px 0;font-size:11px;line-height:1.65;color:#333; }
.lstms-project-note-card footer small { font-size:8px;color:#777; }
.lstms-project-note-card footer div { display:flex;gap:6px; }
.lstms-project-note-card footer button { border:0;background:transparent;color:#142f3f;font-size:9px;font-weight:600;padding:2px; }
.lstms-project-note-card footer button:last-child { color:#ff5757; }
.lstms-project-empty-state { padding:18px;border-radius:18px;background:#f8f6f3;text-align:center; }
.lstms-project-empty-state > span { display:grid;place-items:center;width:34px;height:34px;margin:0 auto 8px;border-radius:50%;background:#e8f7fa;color:#077386; }
.lstms-project-empty-state strong { display:block;font-size:11px;color:#142f3f; }
.lstms-project-empty-state p { margin:4px 0 0;font-size:9px;line-height:1.5;color:#777; }
.lstms-project-activity-heading { margin-bottom:16px; }
.lstms-project-activity-timeline { list-style:none;margin:0;padding:0;max-height:680px;overflow:auto; }
.lstms-project-activity-timeline li { position:relative;display:grid;grid-template-columns:16px 1fr;gap:10px;padding:0 0 16px; }
.lstms-project-activity-timeline li::before { content:"";position:absolute;left:5px;top:10px;bottom:0;width:1px;background:#e4ddd5; }
.lstms-project-activity-timeline li:last-child::before { display:none; }
.lstms-project-activity-timeline li > span { position:relative;z-index:1;width:11px;height:11px;margin-top:4px;border-radius:50%;background:#0cc0df;border:3px solid #e9fbfd; }
.lstms-project-activity-timeline strong { display:block;font-size:10px;font-weight:500;color:#142f3f; }
.lstms-project-activity-timeline p { margin:2px 0;font-size:9px;color:#545454; }
.lstms-project-activity-timeline small { font-size:8px;color:#8a8a8a; }

@media (max-width:1100px) {
    .lstms-project-template-launcher { grid-template-columns:1fr 1fr; }
    .lstms-project-template-launcher > div:first-child,
    .lstms-project-template-launcher__actions,
    [data-lstms-project-template-message] { grid-column:1/-1; }
    .lstms-project-notes-layout { grid-template-columns:1fr; }
    .lstms-project-activity-timeline { max-height:none; }
    .lstms-project-duplicate-options { grid-template-columns:repeat(2,minmax(170px,1fr)); }
}
@media (max-width:780px) {
    .lstms-big-projects-topbar__actions { width:100%;justify-content:flex-start; }
    .lstms-project-dashboard-heading { align-items:flex-start;flex-direction:column; }
    .lstms-project-state-tabs { width:100%; }
    .lstms-project-template-launcher,
    .lstms-project-action-panel,
    .lstms-project-duplicate-options { grid-template-columns:1fr; }
    .lstms-project-template-launcher > *,
    .lstms-project-action-panel > *,
    .lstms-project-duplicate-options > * { grid-column:1 !important; }
    .lstms-project-template-launcher__actions,
    .lstms-project-action-panel > div:not(:first-child) { justify-content:flex-start;flex-wrap:wrap; }
    .lstms-project-workspace-actions { width:100%;min-width:0;align-items:flex-start; }
    .lstms-project-workspace-badges,
    .lstms-project-workspace-buttons { justify-content:flex-start; }
    .lstms-project-workspace-buttons > button { flex:1 1 auto; }
    .lstms-project-note-groups { grid-template-columns:1fr; }
    .lstms-project-note-form-grid { grid-template-columns:1fr; }
    .lstms-project-note-form-grid .is-wide { grid-column:1; }
    .lstms-project-alert-strip { align-items:flex-start; }
    .lstms-project-card__state-pills { max-width:55%; }
}
@media (max-width:520px) {
    .lstms-project-template-launcher,
    .lstms-project-action-panel,
    .lstms-project-note-manager,
    .lstms-project-activity-panel { border-radius:22px;padding:16px; }
    .lstms-project-workspace-buttons { display:grid;grid-template-columns:1fr 1fr;width:100%; }
    .lstms-project-workspace-buttons > button { width:100%;padding:8px 10px;font-size:10px; }
    .lstms-project-note-manager form { padding:14px; }
    .lstms-project-note-card footer { align-items:flex-start;flex-direction:column; }
    .lstms-project-card__top { gap:8px; }
    .lstms-project-card__state-pills { max-width:48%;gap:4px; }
    .lstms-project-state-tabs a { padding:6px 10px;font-size:10px; }
}
.lstms-project-decision-preview { display:grid;gap:8px; }
.lstms-project-decision-preview article { padding:10px 12px;border-radius:15px;background:#f8f6f3;border-left:3px solid #e2ac73; }
.lstms-project-decision-preview strong { display:block;font-size:10px;font-weight:500;color:#142f3f; }
.lstms-project-decision-preview p { margin:3px 0;font-size:9px;line-height:1.5;color:#545454; }
.lstms-project-decision-preview small { font-size:8px;color:#888; }
.lstms-project-overview-link { margin-top:10px;border:0;background:transparent;color:#142f3f;font-family:Poppins,sans-serif;font-size:10px;font-weight:600;padding:0; }
.lstms-project-overview-link:hover { color:#e2ac73; }

/* Settings reliability polish — v1.22.3 */
.lstms-capacity-field {
    cursor: text;
    isolation: isolate;
}

.lstms-capacity-input-wrap {
    position: relative;
    z-index: 2;
    width: min(100%, 96px);
    min-height: 44px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 4px;
    padding: 0 12px;
    border: 1px solid #b4b4b4;
    border-radius: 999px;
    background: #ffffff;
    transition: border-color 160ms ease, box-shadow 160ms ease;
    pointer-events: auto !important;
}

.lstms-capacity-input-wrap:focus-within {
    border-color: #0a1d29;
    box-shadow: 0 0 0 3px rgba(10, 29, 41, 0.10);
}

.lstms-capacity-grid .lstms-capacity-input {
    position: relative !important;
    z-index: 3 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 8px 0 8px 6px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #142f3f !important;
    -webkit-text-fill-color: #142f3f !important;
    opacity: 1 !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
    caret-color: #142f3f !important;
    outline: 0 !important;
    pointer-events: auto !important;
    cursor: text !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

.lstms-capacity-grid .lstms-capacity-input::-webkit-outer-spin-button,
.lstms-capacity-grid .lstms-capacity-input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.lstms-capacity-input-wrap small {
    position: static !important;
    right: auto !important;
    bottom: auto !important;
    color: #66757c;
    font-size: 10px;
    pointer-events: none;
}

.lstms-settings-notice {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 100000;
    width: min(430px, calc(100vw - 48px));
    margin: 0;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 30px;
    align-items: center;
    gap: 10px;
    padding: 14px 14px 14px 13px;
    border-radius: 18px;
    box-shadow: 0 18px 42px rgba(20, 47, 63, 0.20);
    font-family: "Poppins", sans-serif;
    transform: translateY(0);
    opacity: 1;
    transition: opacity 220ms ease, transform 220ms ease;
}

.lstms-settings-notice.lstms-notice--success {
    background: #eefbe9;
    color: #24551c;
    border: 1px solid #bfe4b5;
}

.lstms-settings-notice.lstms-notice--error {
    background: #fff0f0;
    color: #7d2323;
    border: 1px solid #f0bcbc;
}

.lstms-settings-notice.is-hiding {
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
}

.lstms-settings-notice__icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #7ed957;
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
}

.lstms-settings-notice.lstms-notice--error .lstms-settings-notice__icon {
    background: #ff5757;
}

.lstms-settings-notice__message {
    min-width: 0;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

.lstms-settings-notice__close {
    width: 30px;
    height: 30px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: currentColor;
    font: 400 22px/1 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-settings-notice__close:hover,
.lstms-settings-notice__close:focus-visible {
    background: rgba(20, 47, 63, 0.09);
    outline: 0;
}

@media (max-width: 640px) {
    .lstms-settings-notice {
        top: 14px;
        right: 14px;
        width: calc(100vw - 28px);
    }

    .lstms-capacity-input-wrap {
        width: min(100%, 112px);
    }
}

/* All Tasks inline quick editing. */
.lstms-inline-edit-cell {
    position: relative;
    cursor: pointer;
    transition: background-color 150ms ease, box-shadow 150ms ease, color 150ms ease;
}

.lstms-inline-edit-cell::after {
    content: "✎";
    position: absolute;
    top: 4px;
    right: 5px;
    color: rgba(20, 47, 63, 0.34);
    font-size: 8px;
    line-height: 1;
    opacity: 0;
    transition: opacity 150ms ease;
}

.lstms-inline-edit-cell:hover,
.lstms-inline-edit-cell:focus-visible {
    background: #f2f6f7 !important;
    box-shadow: inset 0 0 0 2px rgba(10, 29, 41, 0.2);
    outline: none;
}

.lstms-inline-edit-cell:hover::after,
.lstms-inline-edit-cell:focus-visible::after {
    opacity: 1;
}

.lstms-inline-edit-cell.is-saving {
    cursor: wait;
    opacity: 0.65;
}

.lstms-inline-edit-cell.is-saved {
    animation: lstms-inline-saved 1.35s ease;
}

@keyframes lstms-inline-saved {
    0%, 100% { box-shadow: inset 0 0 0 0 rgba(126, 217, 87, 0); }
    25%, 70% { box-shadow: inset 0 0 0 2px rgba(126, 217, 87, 0.95); background: #f3ffef; }
}

.lstms-inline-editor[hidden] {
    display: none !important;
}

.lstms-inline-editor {
    position: fixed;
    inset: 0;
    z-index: 1000002;
    background: rgba(10, 29, 41, 0.08);
}

.lstms-inline-editor__panel {
    position: fixed;
    width: min(390px, calc(100vw - 24px));
    max-height: min(520px, calc(100vh - 24px));
    overflow-y: auto;
    padding: 20px;
    border: 1px solid rgba(10, 29, 41, 0.18);
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 22px 70px rgba(10, 29, 41, 0.22);
    color: #142f3f;
    font-family: "Poppins", sans-serif;
}

.lstms-inline-editor__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.lstms-inline-editor__eyebrow {
    display: block;
    margin-bottom: 3px;
    color: #ff5757;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.lstms-inline-editor__header h3 {
    margin: 0;
    color: #142f3f;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
}

.lstms-inline-editor__header p {
    margin: 5px 0 0;
    color: #727272;
    font-size: 11px;
    font-weight: 300;
    line-height: 1.35;
}

.lstms-inline-editor__close {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 1px solid #cfd7db;
    border-radius: 50%;
    background: #ffffff;
    color: #142f3f;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}

.lstms-inline-editor__close:hover,
.lstms-inline-editor__close:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #ffffff;
}

.lstms-inline-editor__field,
.lstms-inline-editor__duration label {
    display: grid;
    gap: 7px;
    color: #142f3f;
    font-size: 12px;
    font-weight: 400;
}

.lstms-inline-editor__field input,
.lstms-inline-editor__field select,
.lstms-inline-editor__duration input {
    width: 100%;
    min-height: 46px;
    margin: 0;
    padding: 10px 14px;
    border: 1px solid #142f3f;
    border-radius: 18px;
    background: #ffffff;
    color: #142f3f;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 300;
    box-shadow: none;
    outline: none;
}

.lstms-inline-editor__field input:focus,
.lstms-inline-editor__field select:focus,
.lstms-inline-editor__duration input:focus {
    border-color: #0a1d29;
    box-shadow: 0 0 0 3px rgba(10, 29, 41, 0.12);
}

.lstms-inline-editor__duration {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: end;
    gap: 10px;
}

.lstms-inline-editor__duration-separator {
    padding-bottom: 12px;
    color: #142f3f;
    font-size: 20px;
}

.lstms-inline-editor__hint {
    margin: 10px 0 0;
    color: #7b7b7b;
    font-size: 10px;
    font-weight: 300;
    line-height: 1.45;
}

.lstms-inline-editor__clear {
    margin: 10px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #b24343;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

.lstms-inline-editor__feedback {
    margin-top: 12px;
    padding: 9px 12px;
    border-radius: 12px;
    background: #effbea;
    color: #357a1c;
    font-size: 11px;
}

.lstms-inline-editor__feedback.is-error {
    background: #ffe9e9;
    color: #b12626;
}

.lstms-inline-editor__actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 18px;
}

.lstms-inline-editor__actions button {
    min-width: 105px;
    min-height: 42px;
    padding: 9px 17px;
    border: 1px solid #0a1d29;
    border-radius: 999px;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 400;
    cursor: pointer;
}

.lstms-inline-editor__cancel {
    background: #ffffff;
    color: #0a1d29;
}

.lstms-inline-editor__save {
    background: #0a1d29;
    color: #ffffff;
}

.lstms-inline-editor__actions button:hover,
.lstms-inline-editor__actions button:focus-visible {
    background: #e2ac73;
    border-color: #e2ac73;
    color: #0a1d29;
}

.lstms-inline-editor__actions button:disabled {
    opacity: 0.55;
    cursor: wait;
}

@media (max-width: 760px) {
    html.lstms-inline-editor-open,
    html.lstms-inline-editor-open body {
        overflow: hidden;
    }

    .lstms-inline-edit-cell::after {
        opacity: 0.55;
    }

    .lstms-inline-editor {
        display: flex;
        align-items: flex-end;
        background: rgba(10, 29, 41, 0.38);
    }

    .lstms-inline-editor__panel {
        position: relative;
        left: auto !important;
        top: auto !important;
        width: 100%;
        max-height: 78vh;
        padding: 22px 20px max(22px, env(safe-area-inset-bottom));
        border: 0;
        border-radius: 28px 28px 0 0;
        box-shadow: 0 -16px 48px rgba(10, 29, 41, 0.2);
    }
}


/* v1.23.1 — durable quick-edit confirmation */
.lstms-inline-save-toast {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1000002;
    max-width: min(360px, calc(100vw - 32px));
    padding: 12px 18px;
    border-radius: 999px;
    background: #0a1d29;
    color: #fff;
    box-shadow: 0 14px 38px rgba(10, 29, 41, .24);
    font-family: Poppins, sans-serif;
    font-size: 13px;
    font-weight: 500;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .18s ease, transform .18s ease;
}
.lstms-inline-save-toast.is-visible { opacity: 1; transform: translateY(0); }
.lstms-inline-save-toast.is-error { background: #ff5757; }
@media (max-width: 760px) {
    .lstms-inline-save-toast { right: 16px; bottom: 16px; left: 16px; max-width: none; text-align: center; }
}

/* v1.24.0 Focus Session distraction-free mode. */
.lstms-focus-active-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.lstms-focus-fullscreen,
.lstms-focus-start-fullscreen {
    margin: 0;
    border: 1px solid rgba(20, 47, 63, 0.2);
    border-radius: 999px;
    background: #ffffff;
    color: #142f3f;
    font: 500 9px/1.1 "Poppins", sans-serif;
    box-shadow: none;
}

.lstms-focus-fullscreen {
    min-height: 32px;
    padding: 0 12px;
}

.lstms-focus-fullscreen:hover,
.lstms-focus-fullscreen:focus-visible,
.lstms-focus-start-fullscreen:hover,
.lstms-focus-start-fullscreen:focus-visible {
    border-color: #0a1d29;
    background: #0a1d29;
    color: #ffffff;
}

body.lstms-focus-fullscreen-open {
    overflow: hidden !important;
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    width: 100vw !important;
    max-width: none !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: clamp(16px, 2.5vw, 34px) !important;
    overflow: auto !important;
    background: #f4efea !important;
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode > .lstms-all-tasks-topbar,
.lstms-all-tasks-shell.lstms-focus-fullscreen-mode > .lstms-task-tools,
.lstms-all-tasks-shell.lstms-focus-fullscreen-mode > .lstms-notice,
.lstms-all-tasks-shell.lstms-focus-fullscreen-mode [data-lstms-view-panel]:not([data-lstms-view-panel="focus"]),
.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-heading,
.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-feedback,
.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-setup {
    display: none !important;
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode [data-lstms-view-panel="focus"] {
    display: block !important;
    width: min(100%, 1120px) !important;
    min-height: calc(100vh - clamp(32px, 5vw, 68px)) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-layout {
    display: block !important;
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-active {
    width: 100% !important;
    min-height: calc(100vh - clamp(32px, 5vw, 68px)) !important;
    border: 0 !important;
    border-radius: 28px !important;
    background: #ffffff !important;
    box-shadow: 0 20px 65px rgba(20, 47, 63, 0.14) !important;
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-active-top {
    position: sticky;
    top: 0;
    z-index: 5;
    padding: 18px 20px;
    border-radius: 28px 28px 0 0;
    background: rgba(255,255,255,0.97);
    backdrop-filter: blur(12px);
}

.lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-session {
    max-width: 900px;
    margin: 0 auto;
    padding: 14px 20px 28px;
}

/* Keep important text fields interactive above theme/Elementor overlays. */
.lstms-app-shell input[name="tags"],
[data-lstms-task-modal] input[name="tags"],
.lstms-app-shell textarea,
[data-lstms-task-modal] textarea {
    position: relative;
    z-index: 2;
    pointer-events: auto !important;
}

@media (max-width: 760px) {
    .lstms-all-tasks-shell.lstms-focus-fullscreen-mode {
        padding: 0 !important;
    }
    .lstms-all-tasks-shell.lstms-focus-fullscreen-mode [data-lstms-view-panel="focus"],
    .lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-active {
        min-height: 100vh !important;
        border-radius: 0 !important;
    }
    .lstms-all-tasks-shell.lstms-focus-fullscreen-mode .lstms-focus-active-top {
        border-radius: 0;
    }
    .lstms-focus-saved {
        grid-template-columns: minmax(0,1fr) 1fr 1fr 36px;
    }
}
.lstms-focus-saved {
    grid-template-columns: minmax(0, 1fr) auto auto 36px;
}
@media (max-width: 760px) {
    .lstms-focus-saved {
        grid-template-columns: minmax(0, 1fr) 1fr 1fr 36px;
    }
}
@media (max-width: 520px) {
    .lstms-focus-saved {
        grid-template-columns: 1fr 1fr;
    }
    .lstms-focus-saved label {
        grid-column: 1 / -1;
    }
    .lstms-focus-saved [data-lstms-focus-delete-saved] {
        width: 100%;
    }
}

/* v1.24.1 Today brand and time-plan refinements. */
.lstms-time-plan-grid--four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lstms-time-plan-grid--four > div {
    min-height: 72px;
    border-radius: 24px;
}

.lstms-pace-panel {
    margin-top: 14px;
    padding: 13px 14px;
    border: 1px solid #d7dde0;
    border-radius: 22px;
    background: #f6f8f9;
}

.lstms-pace-panel__heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.lstms-pace-panel__heading strong {
    color: #142f3f;
    font: 600 12px/1.25 "Poppins", sans-serif;
}

.lstms-pace-panel__heading span {
    color: #545454;
    font: 300 9px/1.35 "Poppins", sans-serif;
    text-align: right;
}

.lstms-pace-row {
    display: grid;
    grid-template-columns: minmax(92px, .8fr) minmax(90px, 1fr) 34px;
    align-items: center;
    gap: 8px;
    margin-top: 7px;
    color: #545454;
    font: 400 9px/1.2 "Poppins", sans-serif;
}

.lstms-pace-row > div {
    height: 7px;
    overflow: hidden;
    border-radius: 999px;
    background: #d9d9d9;
}

.lstms-pace-row i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #0cc0df;
}

.lstms-pace-row + .lstms-pace-row i { background: #7ed957; }
.lstms-pace-panel.is-behind .lstms-pace-row + .lstms-pace-row i { background: #ff5757; }
.lstms-pace-panel.is-ahead { border-color: rgba(126,217,87,.55); background: #f2fbea; }
.lstms-pace-panel.is-behind { border-color: rgba(255,87,87,.5); background: #fff3f3; }

.lstms-pace-row b {
    color: #142f3f;
    font: 600 9px/1 "Poppins", sans-serif;
    text-align: right;
}

.lstms-today-finish-control {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 7px 9px;
    margin-top: 12px;
}

.lstms-today-finish-control label {
    display: grid;
    grid-template-columns: auto minmax(92px, 1fr);
    align-items: center;
    gap: 8px;
    color: #142f3f;
    font: 500 10px/1.2 "Poppins", sans-serif;
}

.lstms-today-finish-control input[type="time"] {
    width: 100%;
    min-height: 34px;
    padding: 5px 10px;
    border: 1px solid #b4b4b4;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 400 11px/1 "Poppins", sans-serif;
}

.lstms-today-finish-control button {
    min-height: 34px;
    padding: 5px 11px;
    border: 1px solid #142f3f;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 500 9px/1 "Poppins", sans-serif;
    cursor: pointer;
}

.lstms-today-finish-control button:hover,
.lstms-today-finish-control button:focus-visible {
    background: #0a1d29;
    color: #fff;
}

.lstms-today-finish-control small {
    grid-column: 1 / -1;
    min-height: 13px;
    color: #777;
    font: 300 8px/1.3 "Poppins", sans-serif;
}

/* Today displays Brand only; Category remains an accent fallback when no Brand exists. */
.lstms-today-task-row__brand.is-empty,
.lstms-deadline-row__brand.is-empty {
    background: transparent !important;
    border-color: rgba(255,255,255,.45) !important;
    color: #c9d2d7 !important;
}

.lstms-settings-form-grid--workday {
    max-width: 620px;
}

@media (max-width: 767px) {
    .lstms-pace-panel__heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .lstms-pace-panel__heading span { text-align: left; }
    .lstms-pace-row { grid-template-columns: 95px minmax(70px, 1fr) 32px; }
    .lstms-today-finish-control { grid-template-columns: 1fr; }
    .lstms-today-finish-control label { grid-template-columns: 1fr; }
    .lstms-today-finish-control button { justify-self: start; }
}

/* v1.25.0 Weekly work schedules and a more balanced Today layout. */
.lstms-work-schedule-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin: 4px 0 14px;
}
.lstms-work-schedule-heading .lstms-settings-subtitle { margin: 0 0 4px; }
.lstms-work-schedule-heading p {
    margin: 0;
    color: #626b70;
    font: 300 12px/1.45 "Poppins", sans-serif;
}
.lstms-work-schedule {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 26px;
}
.lstms-workday-settings-card {
    min-width: 0;
    padding: 15px;
    border: 1px solid #d8dee1;
    border-radius: 22px;
    background: #fbfcfc;
}
.lstms-workday-settings-card.is-day-off { background: #f6f6f6; }
.lstms-workday-settings-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 11px;
}
.lstms-workday-settings-card__header > div { display: flex; flex-direction: column; min-width: 0; }
.lstms-workday-settings-card__header strong { color: #142f3f; font: 600 13px/1.25 "Poppins", sans-serif; }
.lstms-workday-settings-card__header span { color: #077386; font: 500 10px/1.3 "Poppins", sans-serif; }
.lstms-workday-off-button,
.lstms-work-slot-add,
.lstms-work-slot-remove {
    border: 1px solid #142f3f;
    background: #fff;
    color: #142f3f;
    cursor: pointer;
}
.lstms-workday-off-button {
    min-height: 31px;
    padding: 5px 10px;
    border-radius: 999px;
    font: 500 9px/1 "Poppins", sans-serif;
}
.lstms-work-slot-list { display: flex; flex-direction: column; gap: 8px; }
.lstms-work-slot-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) 32px;
    align-items: end;
    gap: 7px;
}
.lstms-work-slot-row label { display: flex; flex-direction: column; gap: 4px; color: #545454; font: 400 9px/1.2 "Poppins", sans-serif; }
.lstms-work-slot-row input[type="time"] {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 36px !important;
    padding: 6px 9px !important;
    border: 1px solid #b9c0c4 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #142f3f !important;
    font: 400 11px/1 "Poppins", sans-serif !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}
.lstms-work-slot-separator { padding-bottom: 10px; color: #8c9599; }
.lstms-work-slot-remove {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    font-size: 18px;
}
.lstms-work-slot-add {
    margin-top: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #077386;
    font: 600 10px/1.2 "Poppins", sans-serif;
}
.lstms-workday-off-button:hover,
.lstms-workday-off-button:focus-visible,
.lstms-work-slot-remove:hover,
.lstms-work-slot-remove:focus-visible {
    background: #0a1d29;
    color: #fff;
}

/* Left rail now houses habits, reminders, meetings and weather. */
.lstms-today-layout {
    grid-template-columns: minmax(250px, .98fr) minmax(600px, 2.8fr) minmax(290px, 1.12fr);
}
.lstms-collapsible-today-card { padding: 14px 16px; }
.lstms-collapsible-card__toggle {
    width: 100%;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #142f3f;
    text-align: left;
    cursor: pointer;
}
.lstms-collapsible-card__title { min-width: 0; display: flex; flex-direction: column; }
.lstms-collapsible-card__title strong { font: 500 14px/1.25 "Poppins", sans-serif; }
.lstms-collapsible-card__title small { margin-top: 2px; color: #657076; font: 300 10px/1.3 "Poppins", sans-serif; }
.lstms-collapsible-card__chevron { color: #142f3f; font-size: 18px; transform: rotate(180deg); transition: transform 160ms ease; }
.lstms-collapsible-today-card.is-collapsed .lstms-collapsible-card__chevron { transform: rotate(0deg); }
.lstms-collapsible-card__body { margin-top: 14px; }
.lstms-collapsible-today-card.is-collapsed .lstms-collapsible-card__body { display: none; }
.lstms-collapsible-card__summary-progress { margin-top: 10px; }
.lstms-collapsible-today-card:not(.is-collapsed) .lstms-collapsible-card__summary-progress { margin-bottom: 3px; }
.lstms-gratitude-card.lstms-collapsible-today-card { background: #effdff; }

/* Compact per-day work-slot override inside Today's Time Plan. */
.lstms-today-work-slots {
    margin-top: 12px;
    padding: 12px 13px;
    border: 1px solid #d7dde0;
    border-radius: 20px;
    background: #fff;
}
.lstms-today-work-slots__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.lstms-today-work-slots__heading > div { display: flex; flex-direction: column; }
.lstms-today-work-slots__heading strong { color: #142f3f; font: 600 11px/1.2 "Poppins", sans-serif; }
.lstms-today-work-slots__heading small { color: #657076; font: 300 9px/1.25 "Poppins", sans-serif; }
.lstms-today-work-slots__heading button,
.lstms-today-slot-actions button,
.lstms-today-slot-add,
.lstms-today-slot-row button {
    border: 1px solid #142f3f;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    cursor: pointer;
    font: 500 9px/1 "Poppins", sans-serif;
}
.lstms-today-work-slots__heading button { min-height: 29px; padding: 5px 10px; }
.lstms-today-work-slot-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.lstms-today-work-slot-chips span {
    padding: 5px 9px;
    border-radius: 999px;
    background: #eef3f5;
    color: #142f3f;
    font: 500 9px/1 "Poppins", sans-serif;
}
.lstms-today-work-slot-chips .is-day-off { color: #7a8387; font-style: italic; }
.lstms-today-work-slot-editor { margin-top: 11px; padding-top: 11px; border-top: 1px solid #e0e5e7; }
.lstms-today-work-slot-editor[hidden] { display: none !important; }
.lstms-today-slot-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) 30px;
    align-items: center;
    gap: 6px;
    margin-bottom: 7px;
}
.lstms-today-slot-row input[type="time"] {
    width: 100%;
    min-width: 0;
    min-height: 34px;
    padding: 5px 7px;
    border: 1px solid #b4b4b4;
    border-radius: 999px;
    background: #fff;
    color: #142f3f;
    font: 400 10px/1 "Poppins", sans-serif;
}
.lstms-today-slot-row button { width: 30px; height: 30px; padding: 0; font-size: 16px; }
.lstms-today-slot-add { padding: 6px 10px; }
.lstms-today-slot-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 9px; }
.lstms-today-slot-actions button { min-height: 30px; padding: 5px 10px; }
.lstms-today-slot-actions button.is-primary { background: #0a1d29; color: #fff; }
.lstms-today-work-slots button:hover,
.lstms-today-work-slots button:focus-visible { background: #0a1d29; color: #fff; }
.lstms-today-slot-actions + small { display: block; min-height: 12px; margin-top: 6px; color: #077386; font: 400 8px/1.3 "Poppins", sans-serif; }

@media (max-width: 1450px) {
    .lstms-today-layout { grid-template-columns: minmax(235px, .95fr) minmax(550px, 2.55fr) minmax(270px, 1.08fr); }
}
@media (max-width: 1180px) {
    .lstms-today-layout { grid-template-areas: "main main" "left right"; }
}
@media (max-width: 900px) {
    .lstms-work-schedule { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 760px) {
    .lstms-today-layout { grid-template-areas: "main" "left" "right"; }
    .lstms-work-schedule-heading { align-items: flex-start; flex-direction: column; }
    .lstms-work-slot-row { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) 32px; }
}
@media (max-width: 480px) {
    .lstms-work-slot-row { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) 30px; gap: 4px; }
    .lstms-today-slot-row { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) 28px; gap: 4px; }
}

/* Recurring occurrence controls — v1.26.0 */
.lstms-occurrence-panel {
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(180px, 240px) auto;
    align-items: end;
    gap: 14px;
    padding: 14px 74px 14px 22px;
    background: #fff7f7;
    border-bottom: 1px solid rgba(255, 87, 87, 0.22);
}

.lstms-occurrence-panel__copy {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.lstms-occurrence-panel__copy strong {
    color: #142f3f;
    font-size: 14px;
    font-weight: 600;
}

.lstms-occurrence-panel__copy span,
.lstms-occurrence-panel small {
    color: #6c7478;
    font-size: 11px;
    font-weight: 300;
}

.lstms-occurrence-panel label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: #142f3f;
    font-size: 11px;
    font-weight: 500;
}

.lstms-occurrence-panel select {
    min-height: 42px;
    border: 1px solid #142f3f;
    border-radius: 999px;
    padding: 0 38px 0 16px;
    background-color: #fff;
    color: #142f3f;
    font: inherit;
}

.lstms-occurrence-panel button {
    min-height: 42px;
    border: 0;
    border-radius: 999px;
    padding: 0 18px;
    background: #ff5757;
    color: #fff;
    font-family: inherit;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
}

.lstms-occurrence-panel button:hover,
.lstms-occurrence-panel button:focus-visible {
    background: #0a1d29;
}

.lstms-occurrence-panel small {
    grid-column: 1 / -1;
    min-height: 14px;
}

.lstms-occurrence-panel small.is-error {
    color: #c92727;
}

.lstms-calendar-task--done.lstms-calendar-task--recurring {
    opacity: .58;
}

@media (max-width: 760px) {
    .lstms-occurrence-panel {
        grid-template-columns: 1fr;
        align-items: stretch;
        padding: 14px 20px;
    }
    .lstms-occurrence-panel button {
        width: 100%;
    }
}

.lstms-timezone-audit-note {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: center;
    gap: 8px 12px;
    margin: 0 0 18px;
    padding: 14px 16px;
    border: 1px solid rgba(20, 47, 63, .12);
    border-radius: 18px;
    background: #f8fbfc;
    color: #142f3f;
}
.lstms-timezone-audit-note strong { font-size: 12px; }
.lstms-timezone-audit-note span {
    display: inline-flex;
    justify-content: center;
    padding: 5px 11px;
    border-radius: 999px;
    background: #142f3f;
    color: #fff;
    font-size: 11px;
}
.lstms-timezone-audit-note small {
    color: #68757d;
    font-size: 11px;
    font-weight: 300;
}
@media (max-width: 760px) {
    .lstms-timezone-audit-note { grid-template-columns: 1fr; }
    .lstms-timezone-audit-note span { justify-self: start; }
}

/* Task editor input and drag-handle reliability — v1.26.1 */
[data-lstms-sortable-item] input,
[data-lstms-sortable-item] textarea,
[data-lstms-sortable-item] select,
[data-lstms-sortable-item] label {
    -webkit-user-drag: none;
    user-select: text;
    pointer-events: auto;
}
[data-lstms-drag-handle] {
    user-select: none;
    -webkit-user-select: none;
    touch-action: none;
}
.lstms-modal-child-row input,
.lstms-modal-child-row select,
.lstms-modal-milestone__top input,
.lstms-modal-milestone__top select {
    position: relative;
    z-index: 3;
    pointer-events: auto !important;
    caret-color: #142f3f;
}

/* Recurring structured-task occurrence controls (v1.27 stability). */
.lstms-occurrence-children {
    display: grid;
    gap: 10px;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(20, 47, 63, 0.12);
}
.lstms-occurrence-child-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 210px);
    align-items: center;
    gap: 12px;
}
.lstms-occurrence-child-row span {
    min-width: 0;
    overflow-wrap: anywhere;
}
.lstms-occurrence-child-row select {
    width: 100%;
}
@media (max-width: 680px) {
    .lstms-occurrence-child-row {
        grid-template-columns: 1fr;
        gap: 6px;
    }
}


/* Planning Happens Portal v1.0.0 — Click Happens visual system */
.lstms-app-shell {
  --ph-dark: #1c1c3a;
  --ph-magenta: #ff3cac;
  --ph-blue: #00c2ff;
  --ph-green: #a8ff3e;
  --ph-neutral: #fafafa;
  font-family: 'Poppins', sans-serif !important;
  background: #fafafa !important;
  color: var(--ph-dark) !important;
}
.lstms-app-shell *, .lstms-app-shell input, .lstms-app-shell select, .lstms-app-shell textarea, .lstms-app-shell button { font-family: 'Poppins', sans-serif !important; }
.lstms-page-title { font-family: 'Righteous', sans-serif !important; font-weight: 400 !important; color: var(--ph-dark) !important; letter-spacing: .01em; }
.lstms-page-title::after { content: ''; display:block; width:92px; height:12px; margin:8px auto 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='92' height='12' viewBox='0 0 92 12'%3E%3Cpath d='M1 7 C9 0 17 0 25 7 S41 14 49 7 S65 0 73 7 S85 14 91 7' fill='none' stroke='%23a8ff3e' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat; }
.lstms-topbar { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 22px 14px 18px !important; }
.lstms-task-types { gap: 12px !important; }
.lstms-task-type { border: 1px solid #e5e6ec !important; background:#fff !important; color:var(--ph-dark) !important; border-radius:999px !important; min-height:54px !important; padding:0 28px !important; box-shadow:0 7px 20px rgba(28,28,58,.06) !important; font-weight:500 !important; }
.lstms-task-type[aria-current="page"] { background:var(--ph-magenta) !important; color:#fff !important; border-color:var(--ph-magenta) !important; box-shadow:0 10px 24px rgba(255,60,172,.25) !important; }
.lstms-task-type--detailed[aria-current="page"] { background:var(--ph-green) !important; color:var(--ph-dark) !important; border-color:var(--ph-green) !important; }
.lstms-task-type--project[aria-current="page"] { background:var(--ph-dark) !important; border-color:var(--ph-dark) !important; color:#fff !important; }
.lstms-task-type--bulk[aria-current="page"] { background:#7c3cff !important; border-color:#7c3cff !important; color:#fff !important; }
.lstms-task-type--entry[aria-current="page"] { background:var(--ph-blue) !important; border-color:var(--ph-blue) !important; color:var(--ph-dark) !important; }
.lstms-form-card { background:#fff !important; border:1px solid #ececf2 !important; border-radius:30px !important; box-shadow:0 18px 50px rgba(28,28,58,.08) !important; padding:36px !important; }
.lstms-subheader, .lstms-detailed-intro, .lstms-section-title { font-family:'Poppins',sans-serif !important; font-weight:600 !important; color:var(--ph-dark) !important; }
.lstms-field label, .lstms-task-form label { font-family:'Poppins',sans-serif !important; font-weight:400 !important; color:var(--ph-dark) !important; }
.lstms-app-shell input, .lstms-app-shell select, .lstms-app-shell textarea { border:1.5px solid #cfd1dd !important; border-radius:999px !important; background:#fff !important; color:var(--ph-dark) !important; min-height:54px; }
.lstms-app-shell textarea { border-radius:24px !important; }
.lstms-app-shell input:focus, .lstms-app-shell select:focus, .lstms-app-shell textarea:focus { border-color:var(--ph-magenta) !important; box-shadow:0 0 0 4px rgba(255,60,172,.12) !important; outline:none !important; }
.lstms-save-button { border-radius:999px !important; min-height:56px !important; padding:0 30px !important; font-weight:500 !important; }
.lstms-save-button:not(.lstms-save-button--draft) { background:var(--ph-magenta) !important; border-color:var(--ph-magenta) !important; color:#fff !important; box-shadow:0 10px 22px rgba(255,60,172,.22) !important; }
.lstms-save-button--draft { background:#fff !important; color:var(--ph-dark) !important; border:1.5px dashed #9295aa !important; }
.lstms-lightning-icon { background:var(--ph-magenta) !important; }
.lstms-form-card--detailed .lstms-lightning-icon { background:var(--ph-green) !important; color:var(--ph-dark) !important; }
.lstms-form-card--project .lstms-lightning-icon { background:var(--ph-blue) !important; color:var(--ph-dark) !important; }
.lstms-form-card--bulk .lstms-lightning-icon { background:#7c3cff !important; }
.lstms-field--responsible select { border-color:var(--ph-blue) !important; background:linear-gradient(90deg,rgba(0,194,255,.06),#fff) !important; }
@media (min-width: 980px) {
  .lstms-quick-grid { grid-template-columns: 2fr .72fr 1fr .8fr !important; }
  .lstms-quick-grid .lstms-field--responsible { grid-column: span 1; }
}
@media (max-width: 760px) {
  .lstms-topbar { padding:14px 4px !important; }
  .lstms-page-title { font-size:38px !important; }
  .lstms-task-types { overflow-x:auto; flex-wrap:nowrap !important; padding-bottom:8px; }
  .lstms-task-type { min-width:max-content; min-height:48px !important; padding:0 20px !important; }
  .lstms-form-card { border-radius:22px !important; padding:22px 16px !important; }
}

/* Planning Happens Portal v1.0.1 — simplified Add Tasks styling */
.lstms-app-shell {
  --ph-dark: #1c1c3a;
  --ph-magenta: #ff3cac;
  --ph-neutral: #f7f7f8;
  font-family: 'Poppins', sans-serif !important;
  background: var(--ph-neutral) !important;
  padding-top: clamp(20px, 2.2vw, 35px) !important;
}
.lstms-app-shell,
.lstms-app-shell *,
.lstms-app-shell input,
.lstms-app-shell select,
.lstms-app-shell textarea,
.lstms-app-shell button,
.lstms-page-title,
.lstms-subheader,
.lstms-detailed-intro,
.lstms-section-title {
  font-family: 'Poppins', sans-serif !important;
}
.lstms-page-title::after { display: none !important; content: none !important; }

.lstms-topbar {
  width: 100% !important;
  min-height: clamp(74px, 6.25vw, 100px) !important;
  display: flex !important;
  align-items: center !important;
  gap: clamp(18px, 2.5vw, 40px) !important;
  padding: clamp(12px, 1.5vw, 24px) clamp(18px, 2.25vw, 36px) !important;
  background: var(--ph-dark) !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}
.lstms-page-title {
  flex: 1 1 auto !important;
  min-width: max-content !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(24px, 2vw, 32px) !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
}
.lstms-task-types { gap: clamp(7px, .75vw, 12px) !important; }
.lstms-task-type {
  min-width: clamp(116px, 12.2vw, 195px) !important;
  min-height: clamp(42px, 3.5vw, 56px) !important;
  padding: 0 clamp(13px, 1.5vw, 24px) !important;
  border: 1px solid currentColor !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
  font-size: clamp(12px, 1.06vw, 17px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease !important;
}
.lstms-task-type--quick { border-color: #ff3cac !important; }
.lstms-task-type--detailed,
.lstms-task-type--project,
.lstms-task-type--bulk,
.lstms-task-type--entry { border-color: #fff !important; }
.lstms-task-type:not(:disabled):hover,
.lstms-task-type:not(:disabled):focus-visible {
  background: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #fff !important;
  transform: none !important;
}
.lstms-task-type--quick[aria-current='page'] {
  background: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #fff !important;
  box-shadow: none !important;
}
.lstms-task-type--detailed[aria-current='page'],
.lstms-task-type--project[aria-current='page'],
.lstms-task-type--bulk[aria-current='page'],
.lstms-task-type--entry[aria-current='page'] {
  background: #1c1c3a !important;
  border-color: #1c1c3a !important;
  color: #fff !important;
  box-shadow: none !important;
}

.lstms-form-card {
  width: min(100%, 1320px) !important;
  margin: 20px auto 0 !important;
  padding: clamp(22px, 2vw, 32px) clamp(22px, 2.2vw, 36px) !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: clamp(18px, 1.5vw, 24px) !important;
  box-shadow: none !important;
}
.lstms-form-heading { margin-bottom: clamp(24px, 2vw, 32px) !important; }
.lstms-subheader,
.lstms-detailed-intro,
.lstms-section-title {
  color: var(--ph-dark) !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.lstms-field label,
.lstms-task-form label,
.lstms-app-shell input,
.lstms-app-shell select,
.lstms-app-shell textarea,
.lstms-app-shell button {
  font-weight: 400 !important;
}
.lstms-app-shell input,
.lstms-app-shell select,
.lstms-app-shell textarea {
  min-height: initial !important;
  border: 1px solid #292929 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #1c1c3a !important;
  box-shadow: none !important;
}
.lstms-app-shell textarea { border-radius: 20px !important; }
.lstms-app-shell input:focus,
.lstms-app-shell select:focus,
.lstms-app-shell textarea:focus {
  border-color: #ff3cac !important;
  box-shadow: 0 0 0 3px rgba(255,60,172,.12) !important;
}
.lstms-field--responsible select {
  border-color: #292929 !important;
  background: #fff !important;
}
.lstms-lightning-icon,
.lstms-form-heading__icon,
.lstms-form-heading__icon--detailed,
.lstms-form-heading__icon--project,
.lstms-form-heading__icon--bulk,
.lstms-form-heading__icon--entry {
  background: #ff3cac !important;
  color: #fff !important;
}

.lstms-save-button {
  min-height: clamp(44px, 3.6vw, 58px) !important;
  padding: 0 clamp(22px, 2vw, 32px) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-weight: 400 !important;
}
.lstms-save-button:not(.lstms-save-button--draft):not(.lstms-save-button--secondary) {
  background: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #fff !important;
}
.lstms-save-button--secondary {
  background: transparent !important;
  border: 1px solid #1c1c3a !important;
  color: #1c1c3a !important;
}
.lstms-save-button--draft {
  background: #fff !important;
  border: 1px dashed #8d8d98 !important;
  color: #1c1c3a !important;
}
.lstms-save-button:hover,
.lstms-save-button:focus-visible {
  background: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #fff !important;
}

@media (min-width: 1121px) {
  .lstms-quick-grid { grid-template-columns: repeat(12, minmax(0, 1fr)) !important; }
  .lstms-quick-grid .lstms-field--title { grid-column: span 5 !important; }
  .lstms-quick-grid .lstms-field--due-date { grid-column: span 2 !important; }
  .lstms-quick-grid .lstms-quick-duration { grid-column: span 3 !important; }
  .lstms-quick-grid .lstms-field--priority { grid-column: span 2 !important; }
  .lstms-quick-grid .lstms-field--status { grid-column: span 2 !important; }
  .lstms-quick-grid .lstms-field--category { grid-column: span 3 !important; }
  .lstms-quick-grid .lstms-field--brand { grid-column: span 3 !important; }
  .lstms-quick-grid .lstms-field--responsible { grid-column: span 2 !important; }
  .lstms-quick-grid .lstms-field--reminder { grid-column: span 2 !important; }
}

@media (max-width: 760px) {
  .lstms-topbar {
    border-radius: 28px !important;
    align-items: flex-start !important;
    padding: 18px !important;
  }
  .lstms-page-title { font-size: 27px !important; }
  .lstms-task-types { overflow-x: auto; flex-wrap: nowrap !important; padding-bottom: 4px; }
  .lstms-task-type { min-width: max-content !important; min-height: 44px !important; padding: 0 18px !important; }
  .lstms-form-card { border-radius: 20px !important; padding: 22px 16px !important; }
}

/* Planning Happens Portal v1.0.2 — task form cleanup */
.lstms-duration-inputs {
  border: 1px solid #292929 !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden;
}
.lstms-app-shell .lstms-duration-inputs input:not([type="hidden"]):not([type="checkbox"]) {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
}
.lstms-app-shell .lstms-duration-inputs input:focus {
  border: 0 !important;
  box-shadow: none !important;
}
.lstms-task-type--quick { border-color: #ff3cac !important; }
.lstms-task-type--detailed,
.lstms-task-type--project,
.lstms-task-type--bulk,
.lstms-task-type--entry { border-color: #1c1c3a !important; }
.lstms-task-type:not(:disabled):hover,
.lstms-task-type:not(:disabled):focus-visible {
  background: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #fff !important;
}
.lstms-task-type--detailed[aria-current='page'],
.lstms-task-type--project[aria-current='page'],
.lstms-task-type--bulk[aria-current='page'],
.lstms-task-type--entry[aria-current='page'] {
  background: #1c1c3a !important;
  border-color: #1c1c3a !important;
  color: #fff !important;
}
.lstms-detailed-intro,
.lstms-form-heading h2 {
  font-family: 'Poppins', sans-serif !important;
  font-size: clamp(14px, 1.06vw, 17px) !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}
.lstms-section-title {
  font-family: 'Poppins', sans-serif !important;
  font-size: clamp(11px, .82vw, 13px) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}
.lstms-field--client[hidden] { display: none !important; }
.lstms-field--client .lstms-field-help {
  display: block;
  margin: 6px 3px 0;
  color: #6f7080;
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  font-weight: 300;
}
@media (min-width: 1121px) {
  .lstms-quick-grid .lstms-field--category { grid-column: span 3 !important; }
  .lstms-quick-grid .lstms-field--client { grid-column: span 3 !important; }
  .lstms-quick-grid .lstms-field--responsible { grid-column: span 2 !important; }
  .lstms-quick-grid .lstms-field--reminder { grid-column: span 2 !important; }
  .lstms-bulk-grid .lstms-field--client { grid-column: span 4 !important; }
  .lstms-detailed-grid--organization > .lstms-field--client { grid-column: span 3 !important; }
}

/* Planning Happens Portal v1.0.3 — definitive task-type pill states.
 * Kept at the end of the stylesheet so Elementor/theme button rules cannot override it.
 */
.lstms-app-shell .lstms-topbar .lstms-task-type {
  background-color: #ffffff !important;
  color: #1c1c3a !important;
  border-style: solid !important;
  border-width: 1px !important;
  box-shadow: none !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type--quick {
  border-color: #ff3cac !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type--detailed,
.lstms-app-shell .lstms-topbar .lstms-task-type--project,
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk,
.lstms-app-shell .lstms-topbar .lstms-task-type--entry {
  border-color: #1c1c3a !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type:not(.lstms-task-type--active):hover,
.lstms-app-shell .lstms-topbar .lstms-task-type:not(.lstms-task-type--active):focus-visible {
  background-color: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #ffffff !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type--quick.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--quick[aria-current="page"] {
  background-color: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #ffffff !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type--detailed.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--project.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--entry.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed[aria-current="page"],
.lstms-app-shell .lstms-topbar .lstms-task-type--project[aria-current="page"],
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk[aria-current="page"],
.lstms-app-shell .lstms-topbar .lstms-task-type--entry[aria-current="page"] {
  background-color: #1c1c3a !important;
  border-color: #1c1c3a !important;
  color: #ffffff !important;
}

/* Active states remain active even while the pointer is over them. */
.lstms-app-shell .lstms-topbar .lstms-task-type--quick.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--quick[aria-current="page"]:hover {
  background-color: #ff3cac !important;
  border-color: #ff3cac !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type--detailed.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--project.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--entry.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed[aria-current="page"]:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--project[aria-current="page"]:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk[aria-current="page"]:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--entry[aria-current="page"]:hover {
  background-color: #1c1c3a !important;
  border-color: #1c1c3a !important;
}


/* Planning Happens Portal v1.0.4 — exact task-type pill palette. */
.lstms-app-shell .lstms-topbar .lstms-task-type {
  background-color: #1c1c3a !important;
  color: #ffffff !important;
  border-style: solid !important;
  border-width: 1px !important;
  box-shadow: none !important;
}
.lstms-app-shell .lstms-topbar .lstms-task-type--quick { border-color: #ff3cac !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed { border-color: #00c2ff !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--project { border-color: #a8ff3e !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk { border-color: #fafafa !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--entry { border-color: #b4b4b4 !important; }

.lstms-app-shell .lstms-topbar .lstms-task-type:not(:disabled):hover,
.lstms-app-shell .lstms-topbar .lstms-task-type:not(:disabled):focus-visible {
  background-color: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #ffffff !important;
}

.lstms-app-shell .lstms-topbar .lstms-task-type--quick.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--quick[aria-current="page"] {
  background-color: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #ffffff !important;
}
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed[aria-current="page"] {
  background-color: #00c2ff !important;
  border-color: #00c2ff !important;
  color: #1c1c3a !important;
}
.lstms-app-shell .lstms-topbar .lstms-task-type--project.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--project[aria-current="page"] {
  background-color: #a8ff3e !important;
  border-color: #a8ff3e !important;
  color: #1c1c3a !important;
}
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk[aria-current="page"] {
  background-color: #fafafa !important;
  border-color: #fafafa !important;
  color: #1c1c3a !important;
}
.lstms-app-shell .lstms-topbar .lstms-task-type--entry.lstms-task-type--active,
.lstms-app-shell .lstms-topbar .lstms-task-type--entry[aria-current="page"] {
  background-color: #b4b4b4 !important;
  border-color: #b4b4b4 !important;
  color: #1c1c3a !important;
}

/* Active colours remain authoritative while hovered. */
.lstms-app-shell .lstms-topbar .lstms-task-type--quick.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--quick[aria-current="page"]:hover { background:#ff3cac !important; border-color:#ff3cac !important; color:#fff !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--detailed[aria-current="page"]:hover { background:#00c2ff !important; border-color:#00c2ff !important; color:#1c1c3a !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--project.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--project[aria-current="page"]:hover { background:#a8ff3e !important; border-color:#a8ff3e !important; color:#1c1c3a !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--bulk[aria-current="page"]:hover { background:#fafafa !important; border-color:#fafafa !important; color:#1c1c3a !important; }
.lstms-app-shell .lstms-topbar .lstms-task-type--entry.lstms-task-type--active:hover,
.lstms-app-shell .lstms-topbar .lstms-task-type--entry[aria-current="page"]:hover { background:#b4b4b4 !important; border-color:#b4b4b4 !important; color:#1c1c3a !important; }

.lstms-entry-field--participants .lstms-participant-options {
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  min-height:52px;
  align-items:center;
  padding:0 18px;
  border:1px solid #292929;
  border-radius:999px;
  background:#fff;
}
.lstms-entry-field--participants .lstms-participant-option {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0;
  font-weight:400 !important;
}
.lstms-entry-field--participants input[type="checkbox"] {
  width:18px !important;
  height:18px !important;
  min-height:0 !important;
  accent-color:#ff3cac;
}

/* Every enabled task-type pill uses magenta on hover, including the active pill. */
.lstms-app-shell .lstms-topbar .lstms-task-type:not(:disabled):hover,
.lstms-app-shell .lstms-topbar .lstms-task-type:not(:disabled):focus-visible {
  background-color: #ff3cac !important;
  border-color: #ff3cac !important;
  color: #ffffff !important;
}

/* Planning Happens: Launch Readiness Dashboard */
.phr-launch{font-family:Poppins,sans-serif;color:#1c1c3a;background:#f7f7f8;padding:20px 20px 44px;box-sizing:border-box}.phr-launch *{box-sizing:border-box}.phr-launch button,.phr-launch input,.phr-launch select{font:inherit}.phr-launch__bar{background:#1c1c3a;color:#fff;border-radius:42px;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:16px 0}.phr-launch__bar h1{font:500 30px/1.2 Poppins,sans-serif;margin:0;white-space:nowrap;color:#fff !important}.phr-launch__stats{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:24px;width:min(760px,70%)}.phr-stat{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:10px;row-gap:0;align-items:center}.phr-stat>span{grid-row:1/3;width:44px;height:44px;border-radius:50%;background:var(--phr-accent);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}.phr-stat small{text-transform:uppercase;letter-spacing:.06em;font-size:10px;line-height:1;margin:0 0 2px;opacity:.78;align-self:end}.phr-stat strong{font-size:22px;line-height:1;margin:0;color:var(--phr-accent);align-self:start}.phr-launch__topcards{display:grid;grid-template-columns:1.05fr 1.05fr 1fr;gap:14px;margin-top:0}.phr-panel{background:#fff;border-radius:18px;padding:16px;min-height:210px;box-shadow:0 5px 16px rgba(28,28,58,.07);position:relative}.phr-panel h2{font-size:14px;margin:0 0 12px;font-weight:600}.phr-critical{border-left:5px solid #ff5353}.phr-critical__list{display:grid;gap:7px}.phr-critical__list>button{border:0;background:transparent;display:grid;grid-template-columns:10px 1fr auto auto;gap:8px;align-items:center;text-align:left;padding:5px 0;color:#1c1c3a}.phr-critical__list i{width:8px;height:8px;border-radius:50%;background:#ff3cac}.phr-critical__list span{font-size:11px}.phr-critical__list span small{display:block;color:#777}.phr-critical__list b{font-size:10px;background:#e9b7ef;padding:7px;border-radius:50%}.phr-critical__list em{font-style:normal;font-size:9px;color:#fff;background:#ff9b2f;border-radius:15px;padding:7px 9px}.phr-viewall{position:absolute;bottom:12px;right:14px;border:0;background:none;color:#ff3cac;font-weight:600}.phr-ownergrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;height:160px}.phr-ownergrid>div{text-align:center;border-right:1px solid #ddd;padding-right:12px}.phr-ownergrid>div:last-child{border-right:0}.phr-ownergrid b{display:grid;place-items:center;margin:auto;width:44px;height:44px;border-radius:50%;background:#d996e0}.phr-ownergrid>div:nth-child(2) b{background:#58d7df}.phr-ownergrid span{display:block;height:24px;background:#ddd;border-radius:18px;margin:14px 0 6px;overflow:hidden}.phr-ownergrid i{display:block;height:100%;background:#d996e0;border-radius:18px}.phr-ownergrid>div:nth-child(2) i{background:#58d7df}.phr-ownergrid small{display:block;font-size:10px;margin-bottom:10px}.phr-ownergrid button{border:0;border-radius:22px;background:#1c1c3a;color:#fff;padding:9px 20px}.phr-overview p{font-size:11px;line-height:1.5;margin:0 0 8px}.phr-overview .is-risk{color:#e34646;font-style:italic}.phr-overview .is-good{color:#70a900}.phr-health{position:absolute;right:14px;bottom:12px;background:#ff5353;color:#fff;border-radius:14px;padding:6px 12px;font-size:9px}.phr-launch__heading{display:none}.phr-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.phr-milestone{appearance:none;width:100%;border:0;border-top:4px solid var(--phr-accent);background:#fff;border-radius:12px;box-shadow:0 4px 13px rgba(28,28,58,.1);padding:16px;text-align:left;color:#1c1c3a;cursor:pointer}.phr-milestone:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(28,28,58,.13)}.phr-milestone__top{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:start}.phr-milestone__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--phr-accent);color:#fff;font-weight:600}.phr-milestone h3{margin:1px 0 3px;font-size:14px}.phr-milestone p{font-size:10px;color:#666;line-height:1.4;margin:0;min-height:30px}.phr-milestone em{font-size:9px;font-style:normal;background:color-mix(in srgb,var(--phr-accent) 16%,white);color:#1c1c3a;border-radius:10px;padding:6px 9px}.phr-progress{display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:center;margin:14px 0}.phr-progress strong{font-size:18px}.phr-progress>span{height:8px;background:#e2e3e8;border-radius:8px;overflow:hidden}.phr-progress i{display:block;height:100%;background:var(--phr-accent);border-radius:8px}.phr-progress small{grid-column:1/3;color:#777}.phr-milestone__meta{border-top:1px solid #eee;border-bottom:1px solid #eee;padding:10px 0;display:grid;grid-template-columns:1.25fr 1fr repeat(3,.7fr);gap:5px}.phr-milestone__meta span{font-size:8px;text-align:center;border-right:1px solid #eee}.phr-milestone__meta span:last-child{border-right:0}.phr-milestone__meta b{font-size:10px}.phr-milestone footer{font-size:9px;padding-top:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phr-milestone footer b{color:var(--phr-accent)}.phr-modal[hidden]{display:none}.phr-modal[hidden]{display:none}.phr-modal{position:fixed;z-index:999999;inset:0}.phr-modal__backdrop{position:absolute;inset:0;background:rgba(28,28,58,.72)}.phr-modal__dialog{position:relative;width:min(1540px,95vw);height:min(84vh,860px);margin:6vh auto;background:#fff;border-radius:22px;padding:22px 22px 24px;overflow:auto;box-shadow:0 22px 60px rgba(28,28,58,.28)}.phr-modal__close{position:absolute;right:16px;top:12px;border:1px solid #ececf1;background:#fff;font-size:24px;line-height:1;color:#1c1c3a;width:44px;height:44px;border-radius:12px}.phr-table-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 56px 18px 0}.phr-table-head h2{font-size:20px;line-height:1.2;margin:0 0 5px;font-weight:600;color:#1c1c3a}.phr-table-head p{color:#61657b;margin:0;font-size:14px;line-height:1.45}.phr-table-wrap{overflow:auto;border:1px solid #dadbe6;border-radius:18px;background:#fff}.phr-task-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1200px}.phr-task-table th{background:#1c1c3a;color:#fff;text-align:left;font-size:12px;font-weight:600;padding:15px 12px;white-space:nowrap;border-right:1px solid rgba(255,255,255,.08)}.phr-task-table th:first-child{border-top-left-radius:18px}.phr-task-table th:last-child{border-top-right-radius:18px;border-right:0}.phr-task-table td{padding:10px 8px;border-bottom:1px solid #e7e7ef;border-right:1px solid #ececf3;vertical-align:middle;background:#fff}.phr-task-table td:last-child{border-right:0}.phr-task-table tbody tr:last-child td{border-bottom:0}.phr-task-table td:first-child{min-width:410px;padding:12px 14px}.phr-task-title{display:block;border:0;background:none;padding:0;color:#1c1c3a;font-weight:500;text-align:left;font-size:13px;line-height:1.45;cursor:pointer}.phr-task-title:hover,.phr-task-title:focus-visible{color:#ff3cac;text-decoration:underline;outline:none}.phr-task-table input,.phr-task-table select{width:100%;height:40px;border:1px solid #cfd2df;border-radius:12px;padding:8px 12px;background:#fff;font-size:12px;line-height:1.2;color:#1c1c3a;box-shadow:none}.phr-task-table input:focus,.phr-task-table select:focus{outline:none;border-color:#1c1c3a;box-shadow:0 0 0 2px rgba(0,194,255,.12)}.phr-task-table select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#1c1c3a 50%),linear-gradient(135deg,#1c1c3a 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 3px),calc(100% - 11px) calc(50% - 3px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:28px}.phr-duration-field{display:flex;align-items:center;gap:6px;min-width:104px}.phr-duration-field input{width:82px;text-align:center}.phr-duration-field small{font-size:12px;color:#1c1c3a;font-weight:500}.phr-task-table td:nth-child(5),.phr-task-table td:nth-child(7){min-width:130px}.phr-task-table td:nth-child(6){min-width:135px}.phr-pill-select{font-weight:600;border-width:0 !important;padding-left:12px !important}.phr-pill-select.is-priority-low{background:#7ed957;color:#fff}.phr-pill-select.is-priority-medium{background:#ff9137;color:#fff}.phr-pill-select.is-priority-high{background:#ff5757;color:#fff}.phr-pill-select.is-priority-urgent{background:#c8162e;color:#fff}.phr-pill-select.is-status-not-started{background:#a6a6a6;color:#fff}.phr-pill-select.is-status-planned{background:#c9a4e8;color:#fff}.phr-pill-select.is-status-in-progress{background:#ff9137;color:#fff}.phr-pill-select.is-status-waiting-for-feedback{background:#00c2ff;color:#fff}.phr-pill-select.is-status-done{background:#6ea435;color:#fff}.phr-task-table tr.is-saving{opacity:.6}.phr-task-table tr.is-saved td{background:#f3fff0}
@media(max-width:1100px){.phr-launch__topcards,.phr-milestones{grid-template-columns:1fr 1fr}.phr-launch__bar{align-items:flex-start}.phr-launch__stats{grid-template-columns:1fr 1fr;width:auto}.phr-panel:last-child{grid-column:1/-1}}@media(max-width:720px){.phr-launch{padding:10px}.phr-launch__bar{border-radius:24px;display:block}.phr-launch__stats{margin-top:18px}.phr-launch__topcards,.phr-milestones{grid-template-columns:1fr}.phr-launch__bar h1{font-size:24px}.phr-panel:last-child{grid-column:auto}}

/* Planning Happens v1.1.3 — global task and milestone hover language.
 * All interactive task and milestone surfaces use the Click Happens anchor colour.
 * #1c1c3a is dark, so text and line icons switch to white for accessible contrast.
 */
:root {
  --ph-task-hover-bg: #1c1c3a;
  --ph-task-hover-fg: #ffffff;
}

/* Launch Readiness milestone cards. */
.phr-milestone,
.lstms-project-card,
.lstms-kanban-task,
.lstms-calendar-task,
.lstms-calendar-agenda-item,
.lstms-focus-candidate,
.lstms-rescue-item__main,
.lstms-today-task-row,
.lstms-task-row > td {
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.phr-milestone:hover,
.phr-milestone:focus-visible,
.lstms-project-card:hover,
.lstms-project-card:focus-within,
.lstms-kanban-task:hover,
.lstms-kanban-task:focus-within,
.lstms-calendar-task:hover,
.lstms-calendar-task:focus-visible,
.lstms-calendar-agenda-item:hover,
.lstms-calendar-agenda-item:focus-within,
.lstms-focus-candidate:hover,
.lstms-focus-candidate:focus-within,
.lstms-rescue-item__main:hover,
.lstms-rescue-item__main:focus-visible,
.lstms-today-task-row:hover,
.lstms-today-task-row:focus-within {
  background-color: var(--ph-task-hover-bg) !important;
  border-color: var(--ph-task-hover-bg) !important;
  color: var(--ph-task-hover-fg) !important;
}

/* All Tasks table rows need the background applied to their cells. */
.lstms-task-row:hover > td,
.lstms-task-row:focus-within > td {
  background-color: var(--ph-task-hover-bg) !important;
  color: var(--ph-task-hover-fg) !important;
}

/* Text and monochrome icons inherit the contrast colour on dark hover surfaces. */
.phr-milestone:hover h3,
.phr-milestone:hover p,
.phr-milestone:hover strong,
.phr-milestone:hover small,
.phr-milestone:hover footer,
.phr-milestone:hover footer b,
.phr-milestone:focus-visible h3,
.phr-milestone:focus-visible p,
.phr-milestone:focus-visible strong,
.phr-milestone:focus-visible small,
.phr-milestone:focus-visible footer,
.phr-milestone:focus-visible footer b,
.lstms-project-card:hover h2,
.lstms-project-card:hover p,
.lstms-project-card:hover small,
.lstms-project-card:hover strong,
.lstms-project-card:hover span:not(.lstms-project-card__priority):not(.lstms-project-card__brand):not(.lstms-project-card__category),
.lstms-kanban-task:hover .lstms-kanban-task__title,
.lstms-kanban-task:hover .lstms-kanban-task__hierarchy,
.lstms-kanban-task:hover .lstms-kanban-task__due,
.lstms-calendar-task:hover,
.lstms-calendar-task:hover .lstms-calendar-task__title,
.lstms-calendar-agenda-item:hover,
.lstms-calendar-agenda-item:hover *,
.lstms-focus-candidate:hover .lstms-focus-candidate__title,
.lstms-focus-candidate:hover .lstms-focus-candidate__hierarchy,
.lstms-focus-candidate:hover .lstms-focus-candidate__meta,
.lstms-rescue-item__main:hover *,
.lstms-today-task-row:hover .lstms-today-task-row__title,
.lstms-today-task-row:hover .lstms-today-task-row__title small,
.lstms-today-task-row:hover .lstms-today-task-row__date,
.lstms-task-row:hover .lstms-task-title-button,
.lstms-task-row:hover .lstms-task-title-copy,
.lstms-task-row:hover .lstms-task-kind,
.lstms-task-row:hover td::before {
  color: var(--ph-task-hover-fg) !important;
}

/* Keep controls readable when a task row contains quick-edit fields. */
.lstms-task-row:hover input,
.lstms-task-row:hover select,
.lstms-task-row:hover textarea,
.lstms-task-row:focus-within input,
.lstms-task-row:focus-within select,
.lstms-task-row:focus-within textarea {
  background:#ffffff !important;
  color:#1c1c3a !important;
}

/* Preserve useful coloured chips and status pills while keeping their own contrast. */
.phr-milestone:hover em,
.phr-milestone:focus-visible em {
  background: var(--phr-accent) !important;
  color: #1c1c3a !important;
}
.phr-milestone:hover .phr-milestone__meta,
.phr-milestone:focus-visible .phr-milestone__meta {
  border-color: rgba(255,255,255,.25) !important;
}
.phr-milestone:hover .phr-milestone__meta span,
.phr-milestone:focus-visible .phr-milestone__meta span {
  border-color: rgba(255,255,255,.25) !important;
  color:#ffffff !important;
}

/* Elementor/theme hover rules may otherwise inject blue backgrounds. */
.phr-launch button.phr-milestone:hover,
.phr-launch button.phr-milestone:focus-visible {
  background:#1c1c3a !important;
  color:#ffffff !important;
  outline-color:#1c1c3a !important;
}

/* v1.1.5 Launch dashboard order and divider */
.phr-launch__bar{margin:0 0 16px !important}.phr-launch__topcards{margin-top:0}.phr-launch__divider{height:1px;background:#d8d9e1;margin:18px 2px 16px;border-radius:1px}.phr-milestones{margin-top:0}


/* Planning Happens All Tasks — Click Happens CI */
.lstms-all-tasks-shell {
  --lstms-primary:#1c1c3a;
  --lstms-active-dark:#1c1c3a;
  --lstms-list:#ff3cac;
  --lstms-calendar:#00c2ff;
  --lstms-border:#1c1c3a;
  background:#f7f7f8;
  color:#1c1c3a;
  font-family:"Poppins",sans-serif;
}
.lstms-all-tasks-shell .lstms-all-tasks-topbar {
  background:#1c1c3a;
  color:#fff;
  border-radius:999px;
  box-shadow:none;
}
.lstms-all-tasks-shell .lstms-page-title {
  color:#fff !important;
  font-family:"Poppins",sans-serif !important;
  font-weight:500 !important;
}
.lstms-all-tasks-shell .lstms-task-search input {
  border-color:rgba(255,255,255,.7);
  background:#fff;
  color:#1c1c3a;
}
.lstms-all-tasks-shell .lstms-summary-card__label { color:rgba(255,255,255,.75); }
.lstms-all-tasks-shell .lstms-summary-card strong { color:#fff; }
.lstms-all-tasks-shell .lstms-summary-card--open .lstms-summary-card__icon { background:#ff3cac; }
.lstms-all-tasks-shell .lstms-summary-card--done .lstms-summary-card__icon { background:#00c2ff; }
.lstms-all-tasks-shell .lstms-summary-card--progress .lstms-summary-card__icon { background:#a8ff3e;color:#1c1c3a; }
.lstms-all-tasks-shell .lstms-filter-heading__icon { background:#1c1c3a; }
.lstms-all-tasks-shell .lstms-filter-row select,
.lstms-all-tasks-shell .lstms-more-filters select,
.lstms-all-tasks-shell .lstms-more-filters input[type="date"] { border-color:#1c1c3a; }
.lstms-all-tasks-shell .lstms-filter-toggle { background:#1c1c3a; }
.lstms-all-tasks-shell .lstms-filter-toggle:hover,
.lstms-all-tasks-shell .lstms-clear-filters:hover { background:#ff3cac;color:#fff;border-color:#ff3cac; }
.lstms-all-tasks-shell .lstms-view-button {
  background:#1c1c3a;
  border:1px solid currentColor;
  color:#fff;
}
.lstms-all-tasks-shell .lstms-view-button--list { border-color:#ff3cac; }
.lstms-all-tasks-shell .lstms-view-button--calendar { border-color:#00c2ff; }
.lstms-all-tasks-shell .lstms-view-button--list[aria-current="page"] { background:#ff3cac;border-color:#ff3cac; }
.lstms-all-tasks-shell .lstms-view-button--calendar[aria-current="page"] { background:#00c2ff;border-color:#00c2ff;color:#1c1c3a; }
.lstms-all-tasks-shell .lstms-view-button:not(:disabled):hover { background:#ff3cac;border-color:#ff3cac;color:#fff; }
.lstms-all-tasks-shell .lstms-task-list-heading__icon { background:#00c2ff; }
.lstms-all-tasks-shell .lstms-task-list-card,
.lstms-all-tasks-shell .lstms-calendar-card { box-shadow:0 5px 16px rgba(28,28,58,.07); }
.lstms-all-tasks-shell .lstms-task-table th {
  background:#1c1c3a;
  color:#fff;
  border-color:#1c1c3a;
}
.lstms-all-tasks-shell .lstms-task-table td { border-color:rgba(28,28,58,.45); }
.lstms-all-tasks-shell .lstms-group-row td {
  background:#f0f0f5;
  color:#1c1c3a;
  font-weight:600;
  text-align:left;
  padding:10px 14px;
  border-color:rgba(28,28,58,.35);
}
.lstms-responsible-pill {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:76px;
  min-height:25px;
  padding:4px 12px;
  border-radius:999px;
  font-size:10px;
  font-weight:600;
  line-height:1;
  color:#1c1c3a;
}
.lstms-responsible-pill--inge { background:#e3a5e8; }
.lstms-responsible-pill--karin { background:#67dbe4; }
.lstms-responsible-pill--both { background:#a8ff3e; }
.lstms-responsible-pill--unassigned { background:#d9d9df; }
.lstms-task-row:hover .lstms-responsible-pill,
.lstms-task-row:focus-within .lstms-responsible-pill { color:#1c1c3a !important; }
@media(max-width:900px){
  .lstms-all-tasks-shell .lstms-all-tasks-topbar{border-radius:28px;}
  .lstms-all-tasks-shell .lstms-task-tools{align-items:stretch;}
  .lstms-all-tasks-shell .lstms-view-switcher{justify-content:flex-start;}
}


/* Planning Happens v1.2.2: clear status colours in All Tasks and completed launch rows. */
.lstms-all-tasks-shell .lstms-status-select{
  color:#fff !important;
  border:0 !important;
  font-weight:500 !important;
}
.lstms-all-tasks-shell .lstms-status-select--not-started{background-color:#aeb0b2 !important;}
.lstms-all-tasks-shell .lstms-status-select--planned{background-color:#b98bdd !important;}
.lstms-all-tasks-shell .lstms-status-select--in-progress{background-color:#ff9137 !important;}
.lstms-all-tasks-shell .lstms-status-select--waiting,
.lstms-all-tasks-shell .lstms-status-select--waiting-for-feedback{background-color:#ff5757 !important;}
.lstms-all-tasks-shell .lstms-status-select--done{background-color:#70b33d !important;}
.lstms-all-tasks-shell .lstms-status-select option{background:#fff !important;color:#1c1c3a !important;}

.phr-task-table tbody tr.is-complete td{
  background:#f5f5f7;
  opacity:.62;
}
.phr-task-table tbody tr.is-complete .phr-task-title{
  text-decoration:line-through;
  text-decoration-thickness:1px;
  color:#676a78;
}
.phr-task-table tbody tr.is-complete:hover td{
  opacity:.78;
}

/* Planning Happens Settings v1.3.0 */
.phr-settings{font-family:Poppins,sans-serif;color:#1c1c3a;background:#f6f6f8;padding:20px;min-height:640px}.phr-settings *{box-sizing:border-box}.phr-settings__bar{background:#1c1c3a;color:#fff;border-radius:34px;padding:22px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.phr-settings__bar h1{margin:0;color:#fff;font:500 28px/1.2 Poppins,sans-serif}.phr-settings__bar p{margin:4px 0 0;color:rgba(255,255,255,.72);font-size:12px}.phr-settings__save{border:1px solid #ff3cac;border-radius:24px;background:#ff3cac;color:#fff;padding:11px 22px;font-weight:600;cursor:pointer}.phr-settings__save:hover{background:#1c1c3a;color:#fff}.phr-settings__notice{background:#ecffe0;border-left:4px solid #a8ff3e;border-radius:12px;padding:12px 16px;margin-bottom:16px}.phr-settings__layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px}.phr-settings__nav{background:#fff;border-radius:18px;padding:10px;display:flex;flex-direction:column;gap:6px;align-self:start;box-shadow:0 5px 16px rgba(28,28,58,.07);position:sticky;top:20px}.phr-settings__nav button{border:1px solid transparent;background:transparent;color:#1c1c3a;text-align:left;border-radius:12px;padding:12px 14px;font-weight:500;cursor:pointer}.phr-settings__nav button:hover,.phr-settings__nav button.is-active{background:#1c1c3a;color:#fff;border-color:#1c1c3a}.phr-settings__content{min-width:0}.phr-settings__section[hidden]{display:none}.phr-settings__heading{margin:0 0 10px;padding:2px 2px 0}.phr-settings__heading:not(:first-child){margin-top:22px}.phr-settings__heading h2{margin:0;color:#1c1c3a;font-size:18px;font-weight:600}.phr-settings__heading p{margin:3px 0 0;color:#696b7d;font-size:12px}.phr-settings__card{background:#fff;border-radius:18px;padding:18px;box-shadow:0 5px 16px rgba(28,28,58,.06)}.phr-settings__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.phr-settings__card label{display:flex;flex-direction:column;gap:6px;color:#1c1c3a;font-size:12px}.phr-settings__card label>span:first-child{font-weight:500}.phr-settings__card input[type=text],.phr-settings__card input[type=number],.phr-settings__card input[type=date],.phr-settings__card input:not([type]),.phr-settings__card select{width:100%;height:42px;border:1px solid #c9cad4;border-radius:12px;background:#fff;color:#1c1c3a;padding:8px 12px;font:400 12px Poppins,sans-serif}.phr-settings__card input:focus,.phr-settings__card select:focus{outline:0;border-color:#00c2ff;box-shadow:0 0 0 3px rgba(0,194,255,.1)}.phr-settings__rows{display:grid;gap:8px}.phr-settings__row{display:grid;grid-template-columns:minmax(220px,1fr) 70px repeat(2,max-content);gap:12px;align-items:center;border:1px solid #e4e4eb;border-radius:14px;padding:10px 12px}.phr-settings__row--person{grid-template-columns:minmax(220px,1fr) 90px 64px max-content}.phr-settings__row input[type=color]{width:44px;height:36px;padding:3px;border:1px solid #ddd;border-radius:10px;background:#fff}.phr-settings__row label{flex-direction:row;align-items:center;white-space:nowrap}.phr-check{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;background:#fafafa;border:1px solid #ececf1;border-radius:12px;padding:11px}.phr-check input{width:17px!important;height:17px!important}.phr-category-list{display:flex;flex-wrap:wrap;gap:8px}.phr-category-list span{display:inline-flex;align-items:center;gap:7px;border:1px solid #e3e3e9;border-radius:18px;padding:8px 11px;font-size:11px}.phr-category-list i{width:10px;height:10px;border-radius:50%;background:var(--cat)}.phr-category-list small{color:#999}.phr-help{font-size:11px;color:#777;margin:12px 0 0}.phr-settings__colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.phr-settings__colors label{display:grid;grid-template-columns:1fr 42px;align-items:center;border:1px solid #ececf1;border-radius:12px;padding:10px}.phr-settings__colors label span{grid-column:1}.phr-settings__colors input{grid-column:2;grid-row:1/3;width:38px;height:38px;border:0;padding:0}.phr-settings__colors code{font-size:10px;color:#777}.phr-maintenance{display:grid;grid-template-columns:1fr 1fr;gap:18px}.phr-maintenance>div{border:1px solid #ececf1;border-radius:14px;padding:16px}.phr-maintenance h3{margin:0 0 5px;font-size:15px}.phr-maintenance p{font-size:12px;color:#666}.phr-secondary{border:1px solid #1c1c3a;border-radius:22px;background:#fff;color:#1c1c3a;padding:10px 17px;font-weight:600;cursor:pointer}.phr-secondary:hover{background:#1c1c3a;color:#fff}.phr-settings-error{padding:18px;border-left:4px solid #ff5757;background:#fff3f3}.phr-settings__section.is-active{display:block}
@media(max-width:980px){.phr-settings__layout{grid-template-columns:1fr}.phr-settings__nav{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.phr-settings__grid,.phr-settings__colors{grid-template-columns:1fr 1fr}.phr-settings__row,.phr-settings__row--person{grid-template-columns:1fr 90px 64px}.phr-settings__row label{grid-column:1/-1}.phr-maintenance{grid-template-columns:1fr}}
@media(max-width:620px){.phr-settings{padding:10px}.phr-settings__bar{border-radius:22px;align-items:flex-start;flex-direction:column}.phr-settings__nav{grid-template-columns:1fr 1fr}.phr-settings__grid,.phr-settings__colors{grid-template-columns:1fr}.phr-settings__row,.phr-settings__row--person{grid-template-columns:1fr}.phr-settings__row label{grid-column:auto}}

/* Planning Happens category manager. */
.phr-category-editor{display:grid;gap:12px}.phr-category-editor__head{display:grid;grid-template-columns:minmax(220px,1fr) 190px 110px 92px;gap:12px;padding:0 46px 4px 18px;color:#77798a;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.phr-category-editor__rows{display:grid;gap:8px}.phr-category-editor__row{display:grid;grid-template-columns:28px minmax(220px,1fr) 190px 110px 92px;gap:12px;align-items:center;border:1px solid #e2e3ea;border-radius:14px;padding:10px 12px;background:#fff;transition:opacity .16s ease,box-shadow .16s ease,border-color .16s ease}.phr-category-editor__row:hover{border-color:#1c1c3a;box-shadow:0 4px 12px rgba(28,28,58,.07)}.phr-category-editor__row.is-dragging{opacity:.45}.phr-category-drag{cursor:grab;font-weight:700;color:#9a9cab;text-align:center;user-select:none}.phr-category-editor__row input[type=text]{height:40px}.phr-category-color{display:grid;grid-template-columns:46px 1fr;gap:9px;align-items:center}.phr-category-color input[type=color]{width:46px;height:40px;padding:3px;border:1px solid #c9cad4;border-radius:10px;background:#fff}.phr-category-color code{font:500 11px Poppins,sans-serif;color:#5f6172}.phr-category-active{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important}.phr-category-active input{width:18px!important;height:18px!important;accent-color:#ff3cac}.phr-category-archive{border:1px solid #1c1c3a;border-radius:18px;background:#fff;color:#1c1c3a;padding:8px 11px;font:500 11px Poppins,sans-serif;cursor:pointer}.phr-category-archive:hover{background:#1c1c3a;color:#fff}.phr-category-add{justify-self:start;border:1px solid #ff3cac;border-radius:22px;background:#ff3cac;color:#fff;padding:10px 17px;font:600 12px Poppins,sans-serif;cursor:pointer}.phr-category-add:hover{background:#1c1c3a;border-color:#1c1c3a}.phr-category-editor__row:has(.phr-category-active input:not(:checked)){opacity:.62;background:#f5f5f7}.phr-category-editor__row:has(.phr-category-active input:not(:checked)) input[type=text]{text-decoration:line-through}
@media(max-width:900px){.phr-category-editor__head{display:none}.phr-category-editor__row{grid-template-columns:24px minmax(180px,1fr) 150px}.phr-category-active,.phr-category-archive{grid-column:auto}.phr-category-color{grid-template-columns:42px 1fr}}
@media(max-width:620px){.phr-category-editor__row{grid-template-columns:22px 1fr}.phr-category-color,.phr-category-active,.phr-category-archive{grid-column:2}.phr-category-archive{justify-self:start}}


/* Planning Happens: Karin and Joint task workspace. */
.phr-person-tasks{font-family:Poppins,sans-serif;position:relative}.phr-person-tasks .lstms-all-tasks-topbar{grid-template-columns:minmax(280px,1fr) auto!important;gap:28px!important}.phr-person-tasks .lstms-page-title{white-space:nowrap}.phr-person-tasks .lstms-summary-cards{justify-self:end;width:auto}.phr-person-tasks .lstms-view-switcher{gap:12px}.phr-person-tasks .lstms-view-button{background:#fff!important;border:1px solid #1c1c3a!important;color:#1c1c3a!important}.phr-person-tasks .lstms-view-button:hover,.phr-person-tasks .lstms-view-button:focus-visible,.phr-person-tasks .lstms-view-button.is-active,.phr-person-tasks .lstms-view-button[aria-pressed="true"],.phr-person-tasks .phr-joint-view-button.is-active{background:#1c1c3a!important;border-color:#1c1c3a!important;color:#fff!important}.phr-person-tasks .lstms-more-filters label:has([data-lstms-filter="responsible"]){display:none!important}.phr-person-tasks .lstms-focus-card{display:none!important}.phr-person-tasks .lstms-kanban-board-by option[value="brand"]{display:none}.phr-person-tasks.is-joint-view .lstms-view-button[data-lstms-view]{background:#fff!important;color:#1c1c3a!important}.phr-person-tasks.is-joint-view .phr-joint-view-button{background:#1c1c3a!important;color:#fff!important}.phr-person-tasks.is-joint-view [data-lstms-view-panel="kanban"],.phr-person-tasks.is-joint-view [data-lstms-view-panel="calendar"]{display:none!important}@media(max-width:980px){.phr-person-tasks .lstms-all-tasks-topbar{grid-template-columns:1fr!important}.phr-person-tasks .lstms-summary-cards{justify-self:stretch}}


/* Hide Elementor/AI assistant floating controls on Planning Happens live portal pages. */
.e-ai-button,
.elementor-ai-button,
#elementor-ai-button,
.e-ai-layout-footer,
.e-ai-promotion,
.e-ai-floating-button,
button[aria-label="Ask AI"],
button[title="Ask AI"],
[data-testid="ask-ai"],
[data-testid="ask-ai-button"] {
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
