:root{--ink:#243a37;--muted:#75817d;--purple:#7360cf;--purple-soft:#efebfb;--green:#17846b;--paper:#f7f8f5;--line:#e7ebe5;--sidebar:250px;--bs-primary:#7360cf;--bs-body-color:var(--ink);--bs-body-font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-size:14px;margin:0}a{color:var(--purple);text-decoration:none}a:hover{color:#514196}h1,h2,h3{letter-spacing:-.035em;color:var(--ink)}h1{font-size:36px;font-weight:650;margin-bottom:10px}h2{font-size:21px;font-weight:620}h3{font-size:17px;font-weight:600}p{color:var(--muted);line-height:1.7}small{font-size:12px;color:var(--muted)}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar);background:#fff;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:30px 19px 20px;z-index:100;overflow-y:auto;scrollbar-width:thin}.brand{display:flex;align-items:center;gap:0;font-size:18px;font-weight:720;letter-spacing:-.8px;color:var(--ink);padding:0 8px 32px}.brand-light{font-weight:400}.brand-mark{background:var(--ink);color:#fff;font-size:16px;letter-spacing:-1px;width:33px;height:33px;border-radius:9px;display:flex;justify-content:center;align-items:center;margin-right:11px}.brand-mark span{color:#c7e7ad;display:inline}.workspace-button{width:100%;border:1px solid var(--line);background:var(--paper);border-radius:9px;padding:11px;display:flex;gap:10px;text-align:left;align-items:center;color:var(--ink)}.workspace-button strong{display:block;font-size:13px;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-button small{display:block;font-size:10px}.workspace-symbol{width:33px;height:33px;background:#e7eeda;color:#547742;border-radius:8px;display:inline-flex;justify-content:center;align-items:center;font-weight:700;flex-shrink:0}.nav-label{font-size:9px;letter-spacing:1.7px;font-weight:700;color:#a1aaa5;margin:31px 12px 10px}.main-nav{display:flex;flex-direction:column;gap:4px}.main-nav>a{display:flex;gap:12px;align-items:center;padding:11px 12px;border-radius:7px;color:#74817a;font-size:13px;font-weight:500}.main-nav>a:hover{background:var(--paper)}.main-nav>a.active{background:var(--purple-soft);color:#6955c0;font-weight:650}.nav-icon{font-size:21px;line-height:17px;width:20px;text-align:center;font-weight:400}.sub-nav{display:flex;flex-direction:column;margin:3px 0 8px 36px;border-left:1px solid var(--line);gap:11px;padding:5px 14px;font-size:12px}.sub-nav a{color:var(--muted)}.sidebar-note{border:1px solid var(--line);background:#fafbf8;border-radius:9px;padding:15px 12px;margin:26px 4px 15px;font-size:11px}.sidebar-note p{font-size:10px;margin:8px 0 0;line-height:1.8}.mini-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#72a97f;margin-right:6px}.mini-dot.warning{background:#d19d5b}.sidebar-bottom{margin-top:auto;padding:14px 12px 0;border-top:1px solid var(--line);font-size:12px}.sidebar-bottom>a{color:var(--muted)}.logout{border:0;background:none;color:var(--muted);padding:10px 0 0;font-size:11px}.sidebar-intro{font-size:14px;padding:10px}.main-shell{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));display:flex;flex-direction:column}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fff}.topbar-label{font-size:12px;color:#8d9790}.topbar-right{display:flex;align-items:center;gap:23px}.live-tag{letter-spacing:1.5px;font-size:9px;color:#939d96}.avatar{background:#efeddf;color:#75714a;width:32px;height:32px;border-radius:50%;display:grid;place-content:center;font-size:12px;font-weight:650}.page-content{padding:42px;max-width:1600px;width:100%;margin:0 auto;flex:1}.app-footer{font-size:10px;color:#9aa299;padding:22px 42px;display:flex;justify-content:space-between;letter-spacing:.2px}.mobile-menu{display:none;border:0;background:none;font-size:20px;color:var(--ink)}.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:650;color:#8b968e;margin-bottom:14px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:33px}.page-heading p{margin:0;font-size:14px}.page-heading p strong{font-weight:500;color:#53685c}.btn{border-radius:7px;font-size:12px;font-weight:550;padding:11px 18px;white-space:nowrap}.btn-primary{background:var(--purple);border-color:var(--purple);box-shadow:0 3px 6px #7360cf12}.btn-primary:hover,.btn-primary:focus{background:#6150b7;border-color:#6150b7}.btn-primary:disabled{background:#aaa0d8;border-color:#aaa0d8}.btn-outline-secondary{border-color:#d9dfd6;color:#58655e;background:#fff}.btn-outline-secondary:hover{background:#eff1eb;border-color:#c3ccbf;color:var(--ink)}.btn-link{padding:3px 0;color:var(--purple);font-size:11px}.btn-sm{padding:6px 10px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 3px #22352202;padding:24px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.stat{padding:23px}.stat>span{font-size:9px;letter-spacing:1.3px;color:#8c998f;font-weight:650}.stat>div{font-size:35px;font-weight:600;letter-spacing:-1.4px;margin:19px 0 8px;line-height:1}.stat small{font-size:11px;font-weight:400;margin-left:8px;letter-spacing:0}.stat p{font-size:10px;margin:0}.onboarding{display:grid;grid-template-columns:1fr 1.75fr;gap:35px;background:#f0f3e8;border-color:#e6ebdc;margin:28px 0;padding:29px}.onboarding h2{font-size:24px;margin:13px 0}.onboarding p{font-size:12px;color:#7f8c76;margin-bottom:0}.setup-steps{display:flex;flex-direction:column;gap:21px;border-left:1px solid #dfe6d5;padding-left:35px}.setup-step{display:flex;gap:16px}.step-number{height:27px;width:27px;border-radius:50%;border:1px solid #d6dccd;display:grid;place-content:center;font-size:11px;color:#7a8b6b;flex-shrink:0}.setup-step strong{font-size:12px;font-weight:620}.setup-step p{font-size:11px;margin:3px 0}.setup-step a{font-size:10px;font-weight:600}.dashboard-columns{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:21px}.section-heading h2,.section-heading h3{margin:0}.section-heading a{font-size:11px}.section-heading p{font-size:12px;margin:8px 0 0}.quiet-empty{text-align:center;padding:37px 10px}.quiet-empty h3{font-size:15px}.quiet-empty p{font-size:12px;max-width:300px;margin:10px auto 17px}.quiet-empty a{font-size:11px}.empty-icon{width:45px;height:45px;border-radius:13px;background:#f1f3ed;color:#9aa88f;display:inline-grid;place-content:center;font-size:23px;margin-bottom:18px}.channel-stack{display:inline-block;background:var(--purple-soft);color:#9583c8;padding:12px 16px;border-radius:12px;font-size:22px;word-spacing:10px;margin:5px 0 22px}.timezone-note{font-size:10px;color:#969f98;display:flex;justify-content:space-between;margin-top:22px}.content-row{display:flex;gap:14px;align-items:center;border-bottom:1px solid #eef1eb;padding:16px 0;color:var(--ink)}.content-row:last-child{border:0;padding-bottom:0}.content-row strong{display:block;font-size:12px;font-weight:570;overflow-wrap:anywhere}.content-row small{display:block;font-size:10px;margin-top:5px}.content-row>div:first-child{flex:1}.status{font-size:9px;border-radius:5px;background:#f0f2ed;color:#87917f;padding:6px 8px;white-space:nowrap}.status-Scheduled,.status-Pending,.status-Publishing{background:var(--purple-soft);color:#7965bc}.status-Published,.status-Connected,.status-Sent{background:#e8f4ed;color:#34896d}.status-Failed,.status-NeedsReview,.status-RefreshFailed,.status-ReconnectRequired{background:#faecea;color:#b76461}.status-TokenExpiring{background:#fbf3e3;color:#ad8b4d}.platform-icon{height:34px;width:34px;border-radius:8px;display:grid;place-content:center;background:#edf1ff;color:#5c7db1;font-size:15px;flex-shrink:0}.platform-Instagram{background:#faedf4;color:#c385a7}.platform-LinkedIn{background:#e9f1f8;color:#5884a6}.platform-GoogleBusinessProfile{background:#f4f3e8;color:#aba062}.settings-nav{display:flex;gap:25px;border-bottom:1px solid #e0e5dc;margin-bottom:31px;overflow-x:auto}.settings-nav a{color:#8b958e;white-space:nowrap;padding:0 3px 14px;font-size:12px}.settings-nav a.selected{border-bottom:2px solid var(--purple);color:var(--purple);font-weight:600}.settings-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}.form-panel{max-width:750px;width:100%;padding:30px}.info-panel{padding:27px}.info-panel p{font-size:12px}.form-label{font-size:12px;color:#5e7067;font-weight:550;margin-bottom:9px}.form-control,.form-select{font-size:13px;border-color:#dfe5da;border-radius:7px;padding:11px 12px;color:var(--ink);background:#fff}.form-control:focus,.form-select:focus{border-color:#b4a9e4;box-shadow:0 0 0 3px #7360cf10}.form-control::placeholder{color:#a9b0a8;font-size:12px}.form-text{font-size:11px;color:#9aa395;line-height:1.7}.form-check-input:checked{background:var(--purple);border-color:var(--purple)}.form-check-label{font-size:12px;color:#728169}.form-check-input{cursor:pointer}.soft-tag{font-size:9px;letter-spacing:1px;color:#98a28c;background:#f4f6f0;padding:6px 9px;border-radius:4px;white-space:nowrap}.provider-grid,.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.provider-card{padding:27px;display:flex;flex-direction:column;align-items:flex-start}.provider-mark{font-size:27px;background:#f2f4ef;padding:5px 15px;border-radius:10px;height:52px;display:flex;align-items:center;color:#597169;margin-bottom:23px}.provider-card h3{font-size:17px}.provider-card p{font-size:12px;min-height:50px;margin:10px 0 24px}.provider-card form{margin-top:auto}.account-row{display:flex;align-items:center;gap:14px;padding:22px 0;border-bottom:1px solid var(--line)}.account-row:last-child{border:0}.account-info{flex:1;min-width:0}.account-info strong{display:block;font-size:13px}.account-info small{display:block;font-size:10px;margin-top:6px}.account-actions{display:flex;gap:7px}.account-choice{display:flex;align-items:center;gap:15px;border:1px solid #e8ebe3;border-radius:7px;padding:14px;margin:9px 0;cursor:pointer}.account-choice strong{display:block;font-size:12px;font-weight:500}.account-choice small{display:block;font-size:10px;margin-top:3px}.member-row{display:flex;align-items:center;gap:10px;padding:18px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.member-row strong{flex:1;font-size:12px;overflow-wrap:anywhere}.member-row select{max-width:140px;font-size:10px}.empty-state{text-align:center;padding:60px 30px}.empty-state p{max-width:470px;margin:15px auto 25px}.empty-state h1{font-size:30px}.workspace-card{display:block;padding:25px;color:var(--ink)}.workspace-card h3{margin-top:25px;font-size:20px}.workspace-card p{font-size:12px}.workspace-card>span:last-child{font-size:11px;color:var(--purple)}.creation-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:23px}
/* Grid form cards fill their columns; standalone forms retain their width cap. */
.creation-grid > .form-panel,
.settings-grid > .form-panel { max-width: none; min-width: 0; }
.brief-input{min-height:200px;line-height:1.9;padding:17px;background:#fcfdfb}.channel-group-title{font-size:10px;font-weight:650;letter-spacing:1px;margin:23px 0 12px;color:#92a185}.schedule-hint{background:var(--purple-soft);color:#8d78c4;padding:14px;border-radius:7px;font-size:12px;margin-top:25px}.action-bar{display:flex;align-items:center;justify-content:space-between;margin-top:25px}.action-bar p{font-size:11px;margin:0}.brief-summary{display:flex;align-items:center;gap:25px;justify-content:space-between;margin-bottom:25px}.brief-summary p{white-space:pre-wrap;color:#607665;font-size:13px}.review-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:23px}.caption-list{display:flex;flex-direction:column;gap:22px}.caption-card{padding:25px}.account-heading{display:flex;gap:13px;align-items:center}.account-heading small{display:block;margin-top:4px;font-size:10px}.caption-input{border:1px solid #e7ebdf;background:#fcfdfb;line-height:1.8;padding:16px}.character-count{font-size:10px;color:#a0ab97;text-align:right;margin-top:7px}.caption-tools{display:flex;gap:20px;margin-top:18px;border-top:1px solid var(--line);padding-top:14px;flex-wrap:wrap}.asset-preview{width:100%;border-radius:9px;max-height:340px;object-fit:contain;background:var(--paper)}.divider-text{display:flex;align-items:center;gap:12px;font-size:10px;color:#a3ad9c;margin:25px 0}.divider-text:before,.divider-text:after{content:"";height:1px;background:var(--line);flex:1}.destination{display:flex;flex-wrap:wrap;gap:10px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}.destination>strong{flex:1;font-size:11px}.destination p,.destination small,.destination details{width:100%;font-size:10px;margin:0;overflow-wrap:anywhere}.content-glyph{height:40px;width:40px;border-radius:9px;background:#f1f4ec;color:#95a482;display:grid;place-content:center;font-size:22px}.library-row{padding:22px 0}.library-row:hover{background:#fcfdfb}.pagination-row{display:flex;gap:20px;justify-content:center;margin:25px 0;font-size:11px;color:#98a28e}.calendar-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8b9880;margin-bottom:20px;gap:15px}.legend{display:flex;gap:19px;flex-wrap:wrap}.legend-dot{display:inline-block;height:7px;width:7px;border-radius:50%;margin-right:7px}.draft{background:#89949b}.scheduled{background:#7060cf}.published{background:#15866c}.failed{background:#c95656}.calendar-panel{padding:26px}.fc{--fc-border-color:#e8ece1;--fc-today-bg-color:#f5f3fc;--fc-button-bg-color:#fff;--fc-button-border-color:#e1e5db;--fc-button-text-color:#7c8b6f;--fc-button-hover-bg-color:#f2f4ee;--fc-button-hover-border-color:#d3dbc9;--fc-button-active-bg-color:#efebfb;--fc-button-active-border-color:#d9d0ef;--fc-page-bg-color:#fff;font-size:12px}.fc .fc-toolbar-title{font-size:23px;font-weight:600}.fc .fc-button{font-size:11px;padding:8px 13px;box-shadow:none!important}.fc .fc-button-primary:not(:disabled).fc-button-active{color:#7b65bf}.fc .fc-col-header-cell-cushion{color:#94a087;font-size:10px;font-weight:500;text-transform:uppercase;padding:14px}.fc .fc-daygrid-day-number{color:#849077;padding:12px}.fc .fc-daygrid-day-frame{min-height:110px}.fc .fc-daygrid-event{font-size:10px;padding:3px 4px;border-radius:4px}.fc .fc-list-event-title a{color:var(--ink)}.inbox-card{margin-bottom:22px}.message{padding:18px 0 8px}.message strong{font-size:13px}.message p{white-space:pre-wrap;margin-top:13px;color:#5e7563}.rating{color:#c9ad63;margin-left:12px}.reply-bubble{background:#f5f7f0;padding:18px;border-radius:8px;margin:15px 0 20px 30px}.reply-bubble p{font-size:13px;margin:10px 0 0;white-space:pre-wrap}.reply-form{display:flex;align-items:flex-end;gap:15px}.analytics-table{font-size:12px}.analytics-table th{font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:#98a58d;font-weight:550;padding:15px 9px;border-color:var(--line)}.analytics-table td{padding:20px 9px;vertical-align:middle;border-color:#edf0e6}.analytics-table td:first-child{min-width:270px;max-width:340px}.analytics-table p{font-size:11px;margin:10px 0}.analytics-table small{font-size:9px}.welcome-hero{padding:40px 0 60px}.welcome-hero h1{font-size:64px;line-height:1.13;font-weight:600;letter-spacing:-3px}.welcome-hero em{font-family:Georgia,serif;font-weight:400;color:var(--purple)}.welcome-hero p{font-size:16px;max-width:500px;margin:28px 0}.welcome-hero .btn{padding:14px 24px}.hero-caption{font-size:10px;color:#9da78f;margin-top:22px}.feature{padding:30px}.feature-number{font-size:9px;letter-spacing:1.3px;color:#a2ae92}.feature h3{font-size:20px;margin:25px 0 15px}.feature p{font-size:12px;margin-bottom:0}summary{cursor:pointer;font-size:12px;color:#8b79c0}hr{border-color:var(--line);opacity:1;margin:25px 0}.alert-success{background:#eef5e9;color:#6d8d59;border-color:#dae9cc;font-size:13px}.text-danger{font-size:12px}input[type=checkbox]{flex-shrink:0}:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
@media(min-width:1600px){.page-content{padding:50px 60px}}@media(max-width:1200px){:root{--sidebar:220px}.page-content{padding:30px}.topbar{padding:0 30px}.stat{padding:18px}.stat>span{font-size:8px}.stat small{display:block;margin:12px 0 0}.stat p{font-size:9px}.account-row{flex-wrap:wrap}.account-info{min-width:170px}.provider-grid{gap:15px}.review-grid,.creation-grid{grid-template-columns:1.4fr 1fr}.setup-steps{padding-left:25px}.member-row strong{width:100%;flex-basis:100%}}@media(max-width:950px){.stat-grid{grid-template-columns:repeat(2,1fr)}.onboarding,.dashboard-columns,.settings-grid,.creation-grid,.review-grid{grid-template-columns:1fr}.setup-steps{border:0;padding:0;margin-top:10px}.provider-grid,.feature-grid{grid-template-columns:1fr}.provider-card{flex-direction:row;align-items:center;gap:15px;flex-wrap:wrap}.provider-card p{min-height:0;flex-basis:100%;margin:0}.provider-mark{margin:0}.fc .fc-toolbar{flex-wrap:wrap;gap:15px}.calendar-meta{flex-wrap:wrap}.welcome-hero h1{font-size:48px}}@media(max-width:700px){:root{--sidebar:250px}.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0);box-shadow:10px 0 30px #243a3720}.main-shell{margin:0;width:100%}.mobile-menu{display:inline-block;margin-right:10px}.topbar{height:62px;padding:0 20px}.live-tag{display:none}.page-content{padding:27px 19px}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:15px}.page-heading h1{font-size:30px}.page-heading p{font-size:12px}.panel{padding:21px}.stat-grid{gap:12px}.stat>div{font-size:32px}.stat small{display:inline;margin-left:8px}.onboarding{padding:24px}.settings-nav{gap:20px}.account-row{gap:10px}.account-actions{width:100%;padding-left:43px}.brief-summary{align-items:flex-start;flex-direction:column}.section-heading{flex-wrap:wrap}.soft-tag{font-size:8px}.reply-form{flex-direction:column;align-items:stretch}.app-footer{padding:20px;font-size:9px}.app-footer span{display:none}.welcome-hero{padding:20px 0 40px}.welcome-hero h1{font-size:44px}.welcome-hero p{font-size:14px}.calendar-panel{padding:13px}.fc .fc-toolbar-title{font-size:19px}.fc .fc-daygrid-day-frame{min-height:75px}.fc .fc-button{padding:7px 9px}.library-row{flex-wrap:wrap}.library-row>div{min-width:150px}.calendar-meta{font-size:10px}.settings-nav a{font-size:11px}.sidebar-note{margin-top:18px}}

/* Keep Bootstrap's interactive states aligned with the application primary color. */
:root {
    --bs-primary-rgb: 115, 96, 207;
    --bs-link-color: #7360cf;
    --bs-link-color-rgb: 115, 96, 207;
    --bs-link-hover-color: #514196;
    --bs-link-hover-color-rgb: 81, 65, 150;
    --bs-focus-ring-color: rgba(115, 96, 207, .25);
}
.btn-primary {
    --bs-btn-bg: var(--purple);
    --bs-btn-border-color: var(--purple);
    --bs-btn-hover-bg: #6150b7;
    --bs-btn-hover-border-color: #6150b7;
    --bs-btn-active-bg: #514196;
    --bs-btn-active-border-color: #514196;
    --bs-btn-focus-shadow-rgb: 115, 96, 207;
    --bs-btn-disabled-bg: #aaa0d8;
    --bs-btn-disabled-border-color: #aaa0d8;
}
.form-check-input:focus { border-color: #b4a9e4; box-shadow: 0 0 0 3px rgba(115, 96, 207, .1); }
.nav-pills {
    --bs-nav-pills-link-active-bg: var(--purple);
    --bs-nav-link-color: var(--purple);
    --bs-nav-link-hover-color: #514196;
}
.account-settings-grid {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}
.account-navigation { padding: 15px 12px; }
.account-navigation .nav-label { margin: 9px 12px 14px; }
.account-nav { display: flex; flex-direction: column; gap: 5px; }
.account-nav .nav-link { border-radius: 7px; padding: 12px; font-size: 12px; color: #75817d; }
.account-nav .nav-link:hover { background: var(--purple-soft); color: var(--purple); }
.account-nav .nav-link.active { background: var(--purple); color: #fff; font-weight: 600; }
.account-content { min-width: 0; }
.account-form-card { padding: 30px; }
.account-form-card > h3 { font-size: 21px; margin-bottom: 22px; }
.account-form-card > .row > .col-md-6,
.account-form-card > .row > .col-lg-6 { width: 100%; max-width: 100%; flex: 0 0 100%; }
.account-form-card .form-floating > label { color: var(--muted); font-size: 12px; }
.account-form-card .form-control:disabled { background: #f4f6f0; }
.account-section-heading { margin: 0 0 22px; }
.personal-data-grid, .twofactor-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.account-action-card { display: flex; flex-direction: column; align-items: flex-start; padding: 28px; min-width: 0; }
.account-action-card h3 { font-size: 18px; margin-bottom: 14px; }
.account-action-card p { font-size: 13px; margin-bottom: 19px; }
.account-action-card .section-heading { width: 100%; align-items: flex-start; }
.account-action-card .section-heading h3 { margin-bottom: 0; }
.account-feature-icon { display: grid; place-items: center; width: 49px; height: 49px; border-radius: 12px; background: var(--purple-soft); color: var(--purple); margin-bottom: 24px; flex-shrink: 0; }
.account-feature-icon svg { width: 25px; height: 25px; }
.account-card-note { background: #f6f8f2; border-radius: 8px; padding: 15px; font-size: 11px; color: #869178; line-height: 1.8; width: 100%; }
.account-card-action { padding-top: 25px; margin-top: auto; width: 100%; }
.account-button-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.account-button-row form { margin: 0; }
.account-danger-card { border-color: #ebd9d5; }
.account-danger-icon { background: #faecea; color: #b76461; }
.account-danger-note { background: #fcf3f1; color: #a77b72; }
.account-content .btn-outline-danger { --bs-btn-color: #b76461; --bs-btn-border-color: #dfb6ae; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #b76461; --bs-btn-hover-border-color: #b76461; --bs-btn-active-bg: #a65956; --bs-btn-active-border-color: #a65956; }
.twofactor-summary { display: flex; align-items: center; gap: 22px; padding: 28px; background: #f3f0fb; border-color: #e9e2f6; margin-bottom: 24px; }
.twofactor-summary .account-feature-icon { background: #fff; margin: 0; }
.twofactor-summary-copy { flex: 1; }
.twofactor-summary .eyebrow { margin-bottom: 10px; color: #9481b2; }
.twofactor-summary h2 { font-size: 24px; }
.twofactor-summary p { font-size: 13px; margin: 10px 0 0; }
.authenticator-steps { list-style: none; padding: 0; margin: 0; }
.authenticator-steps li { display: flex; gap: 14px; margin: 17px 0; }
.authenticator-steps strong { font-size: 12px; font-weight: 600; }
.authenticator-steps p { font-size: 11px; margin: 5px 0 0; }
.recovery-code-count { display: flex; align-items: baseline; gap: 12px; margin-bottom: 20px; }
.recovery-code-count strong { font-size: 42px; font-weight: 600; color: var(--purple); }
.recovery-code-count span { color: var(--muted); font-size: 12px; }
.twofactor-controls { margin-top: 24px; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.twofactor-controls p { font-size: 12px; margin: 10px 0 0; max-width: 510px; }
@media (max-width: 1200px) {
    .account-settings-grid { grid-template-columns: 205px minmax(0, 1fr); }
    .personal-data-grid, .twofactor-cards { grid-template-columns: 1fr; }
    .twofactor-summary { flex-wrap: wrap; }
    .twofactor-controls { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 950px) {
    .account-settings-grid { grid-template-columns: 1fr; }
    .account-nav { flex-direction: row; flex-wrap: wrap; }
    .account-navigation .nav-label { display: none; }
    .account-nav .nav-link { padding: 10px 12px; }
}
@media (max-width: 700px) {
    .account-navigation { padding: 11px; }
    .account-nav .nav-link { font-size: 11px; }
    .account-form-card, .account-action-card, .twofactor-summary { padding: 22px; }
    .twofactor-summary { gap: 17px; }
    .twofactor-summary-copy { flex-basis: 100%; }
    .twofactor-summary h2 { font-size: 22px; }
    .account-action-card .btn, .twofactor-controls .btn { white-space: normal; }
    .account-card-action .btn { width: 100%; }
    .twofactor-controls .account-button-row { width: 100%; }
    .twofactor-controls .account-button-row > * { width: 100%; }
    .twofactor-controls .account-button-row .btn { width: 100%; }
}

/* Font Awesome is served locally and inherits the surrounding UI color. */
.nav-icon { font-size: 16px; line-height: 1; }
.platform-icon .fa-brands { font-size: 17px; }
.btn > .fa-solid, .btn > span > .fa-solid { font-size: .9em; }
.account-feature-icon > .fa-solid { font-size: 23px; }
.account-nav .nav-link > .fa-solid { margin-right: 8px; }
.channel-stack { display: inline-flex; align-items: center; gap: 18px; word-spacing: normal; }
.rating { display: inline-flex; gap: 3px; }
.fc .fc-icon-chevron-left, .fc .fc-icon-chevron-right { font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 12px; }
.fc .fc-icon-chevron-left::before { content: "\f053"; }
.fc .fc-icon-chevron-right::before { content: "\f054"; }
/* The embedded Identity email view uses a text checkmark; render the matching Font Awesome glyph. */
.account-form-card .input-group-text.text-success { font-size: 0; }
.account-form-card .input-group-text.text-success::before { content: "\f00c"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 14px; color: var(--green); }
.timezone-select, .ai-model-select { position: relative; }
.timezone-select > .form-select, .ai-model-select > .form-select { padding-right: 36px; background-image: none; }
.timezone-select > .fa-chevron-down, .ai-model-select > .fa-chevron-down { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--muted); font-size: 11px; pointer-events: none; }
/* Public landing content uses the whole page without reserving sidebar space. */
.main-shell--landing { margin-left: 0; width: 100%; }

/* Only the public product landing page fits its content to the viewport. */
.landing-actions { display: flex; flex-wrap: wrap; gap: 16px; }
@media (min-width: 576px) {
    .landing-page { --landing-inset: clamp(20px, 4vw, 60px); }
    .landing-page .app-shell { height: 100vh; min-height: 100vh; height: 100dvh; min-height: 100dvh; }
    .landing-page .main-shell { height: 100%; min-height: 0; }
    .landing-page .page-content {
        display: grid;
        grid-template-rows: minmax(0, 1fr) auto;
        gap: clamp(12px, 2.5vh, 26px);
        min-height: 0;
        padding: clamp(16px, 3vh, 40px) var(--landing-inset);
    }
    .landing-page .welcome-hero { padding: 0; align-self: center; min-width: 0; }
    .landing-page .welcome-hero .eyebrow { margin-bottom: clamp(8px, 1.8vh, 18px); }
    .landing-page .welcome-hero h1 { font-size: clamp(36px, 8vh, 64px); line-height: 1.08; margin-bottom: 0; }
    .landing-page .welcome-hero p { font-size: clamp(14px, 2vh, 18px); line-height: 1.5; margin: clamp(12px, 2.5vh, 25px) 0; }
    .landing-page .welcome-hero .btn { padding: clamp(10px, 1.6vh, 14px) 22px; }
    .landing-page .hero-caption { margin-top: clamp(10px, 1.8vh, 20px); line-height: 1.5; }
    .landing-page .feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 22px); min-width: 0; }
    .landing-page .feature { padding: clamp(14px, 2.4vh, 28px); min-width: 0; }
    .landing-page .feature h3 { font-size: clamp(16px, 2.5vh, 21px); line-height: 1.25; margin: clamp(8px, 1.8vh, 20px) 0 clamp(6px, 1.1vh, 12px); }
    .landing-page .feature p { font-size: clamp(12px, 1.65vh, 14px); line-height: 1.5; }
    .landing-page .app-footer { flex-shrink: 0; width: 100%; max-width: 1600px; margin: 0 auto; padding: 12px var(--landing-inset); line-height: 1.4; }
}
@media (min-width: 576px) and (max-height: 620px) {
    .landing-page .page-content { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); column-gap: clamp(24px, 4vw, 60px); }
    .landing-page .welcome-hero h1 { font-size: clamp(28px, 7.2vh, 44px); letter-spacing: -1.5px; }
    .landing-page .welcome-hero p { font-size: 13px; }
    .landing-page .landing-actions { gap: 10px; }
    .landing-page .welcome-hero .btn { padding: 10px 16px; }
    .landing-page .feature-grid { grid-template-columns: 1fr; grid-template-rows: repeat(3, minmax(0, 1fr)); gap: 10px; }
    .landing-page .feature { display: flex; flex-direction: column; justify-content: center; padding: 12px 18px; }
    .landing-page .feature h3 { font-size: 17px; margin: 8px 0 6px; }
    .landing-page .feature p { font-size: 12px; line-height: 1.45; }
}
@media (min-width: 576px) and (max-height: 420px) {
    .landing-page { --landing-inset: 20px; }
    .landing-page .page-content { padding-top: 12px; padding-bottom: 12px; column-gap: 24px; }
    .landing-page .welcome-hero h1 { font-size: clamp(22px, 7vh, 30px); line-height: 1.05; letter-spacing: -1px; }
    .landing-page .welcome-hero .eyebrow { font-size: 8px; margin-bottom: 8px; }
    .landing-page .welcome-hero p { font-size: 12px; line-height: 1.4; margin: 10px 0; }
    .landing-page .welcome-hero .btn { font-size: 11px; padding: 8px 12px; }
    .landing-page .hero-caption { font-size: 9px; margin-top: 8px; }
    .landing-page .feature-grid { gap: 6px; }
    .landing-page .feature { padding: 6px 12px; }
    .landing-page .feature-number { font-size: 8px; }
    .landing-page .feature h3 { font-size: 15px; line-height: 1.15; margin: 5px 0; }
    .landing-page .feature p { font-size: 11px; line-height: 1.4; }
    .landing-page .app-footer { font-size: 9px; padding-top: 8px; padding-bottom: 8px; }
}

/* Authentication is a centered, single-column flow independent of the landing page. */
.auth-page .app-shell { min-height: 100vh; min-height: 100svh; }
.auth-page .page-content { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; padding: 32px 20px; }
.auth-shell { width: min(100%, 460px); display: flex; flex-direction: column; align-items: center; gap: 20px; }
.auth-brand { padding: 0; font-size: 20px; }
.auth-card { width: 100%; padding: 30px; box-shadow: 0 8px 30px rgba(36, 58, 55, .035); }
.auth-heading { text-align: center; margin-bottom: 26px; }
.auth-feature-icon { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--purple-soft); color: var(--purple); font-size: 18px; margin-bottom: 18px; }
.auth-heading .eyebrow { font-size: 9px; letter-spacing: 1.6px; margin-bottom: 9px; }
.auth-heading h1, .auth-card > h1 { font-size: 26px; line-height: 1.2; letter-spacing: -.8px; margin-bottom: 12px; }
.auth-heading p { font-size: 13px; line-height: 1.6; margin: 0; }
.auth-field { margin-bottom: 19px; }
.auth-field .form-label { display: block; margin-bottom: 8px; }
.auth-field .form-control { min-height: 45px; }
.auth-label-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.auth-label-row a { font-size: 11px; }
.auth-field-hint { font-size: 10px; line-height: 1.6; margin: 9px 0 0; }
.auth-form > .validation-summary-errors { margin-bottom: 18px; padding: 12px; border-radius: 7px; background: #fcf3f1; }
.auth-form > .validation-summary-errors ul { margin: 0; padding-left: 17px; }
.auth-form .field-validation-error { display: block; margin-top: 6px; font-size: 11px; }
.auth-remember { display: flex; gap: 8px; align-items: center; padding-left: 0; margin-bottom: 20px; }
.auth-remember .form-check-input { margin: 0; }
.auth-submit { width: 100%; min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 9px; }
.auth-links { margin-top: 23px; padding-top: 19px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 7px; font-size: 12px; text-align: center; }
.auth-links > span { color: var(--muted); }
.auth-links > a { font-weight: 550; }
.auth-secondary-link { margin-top: 14px; text-align: center; font-size: 11px; }
.auth-note { color: var(--muted); font-size: 11px; line-height: 1.6; text-align: center; margin: 18px 0 0; }
.auth-note .fa-solid { margin-right: 4px; }
.auth-home-link { font-size: 11px; color: var(--muted); padding: 3px; }
.auth-home-link .fa-solid { margin-right: 6px; }
.auth-external-providers { display: flex; flex-direction: column; gap: 10px; }
.auth-card > h1, .auth-card > h2, .auth-card > p { text-align: center; }
.auth-card > h2 { font-size: 16px; margin-bottom: 18px; }
.auth-card > p { font-size: 13px; line-height: 1.6; }
.auth-card > .row { display: block; margin: 0; }
.auth-card > .row > [class*="col-"] { flex: 0 0 100%; width: 100%; max-width: 100%; padding: 0; }
.auth-card .form-floating > label { font-size: 12px; color: var(--muted); }
.auth-page .app-footer { justify-content: center; text-align: center; padding: 16px 20px; }
.auth-page .page-content > .alert { width: min(100%, 460px); }
@media (max-width: 575px) {
    .auth-page .page-content { padding: 24px 16px; }
    .auth-shell { gap: 17px; }
    .auth-card { padding: 24px 20px; }
    .auth-heading h1, .auth-card > h1 { font-size: 24px; }
    .auth-heading { margin-bottom: 22px; }
    .auth-brand { font-size: 18px; }
    .auth-page .app-footer { font-size: 9px; padding: 14px 16px; }
}

/* Reserve space for the workspace avatar and caret; only the name column shrinks. */
.workspace-button { display: grid; grid-template-columns: 33px minmax(0, 1fr) 12px; min-width: 0; }
.workspace-details { min-width: 0; }
.workspace-button strong { max-width: none; }
.workspace-button small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.workspace-chevron { display: flex; align-items: center; justify-content: center; width: 12px; font-size: 12px; }
.workspace-switch .dropdown-menu { min-width: 0; max-width: 100%; }
.workspace-switch .dropdown-item { white-space: normal; overflow-wrap: anywhere; line-height: 1.45; padding-top: 8px; padding-bottom: 8px; }

.ai-model-tools { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.ai-model-tools h3 { margin-bottom: 4px; }
#ai-model-status { overflow-wrap: anywhere; }

.platform-Telegram { background: #e6f3fb; color: #2586b8; }
.telegram-setup { padding-left: 20px; line-height: 1.65; }
.telegram-setup li + li { margin-top: 12px; }

.account-actions { flex-wrap: wrap; max-width: 100%; }
.account-actions > form { margin: 0; max-width: 100%; }
.account-actions .btn { max-width: 100%; white-space: normal; }
.account-info { overflow-wrap: anywhere; }
@media (min-width: 951px) and (max-width: 1399px) {
    .provider-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1400px) {
    .provider-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.ai-model-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px 12px; flex-wrap: wrap; margin-bottom: 8px; }
.ai-model-heading .form-label { margin: 0; }
.ai-model-mode { padding: 0; font-size: 11px; min-height: 24px; }
#ai-model-status:empty { display: none; }

.content-select { position: relative; }
.content-select > .form-select { padding-right: 36px; background-image: none; }
.content-select > .fa-chevron-down { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--muted); font-size: 11px; pointer-events: none; }
.image-generation-choice { padding: 16px; background: var(--paper); border: 1px solid var(--line); border-radius: 8px; }
.image-generation-choice .form-text { margin-top: 6px; }

.image-reference-section { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); margin: 22px 0; padding: 20px 0; }
.image-reference-section h3 { margin-bottom: 10px; }
.reference-filename { overflow-wrap: anywhere; }

/* Keep dashboard sections separated when the setup panel is no longer shown. */
.stat-grid + .dashboard-columns { margin-top: 24px; }

/* Share the header's horizontal inset across authenticated page content. */
.main-shell:not(.main-shell--landing) { --app-inset: 42px; }
.main-shell:not(.main-shell--landing) > .topbar,
.main-shell:not(.main-shell--landing) > .page-content,
.main-shell:not(.main-shell--landing) > .app-footer { padding-inline: var(--app-inset); }
.main-shell:not(.main-shell--landing) > .page-content { max-width: none; margin-inline: 0; }
@media (max-width: 1200px) {
    .main-shell:not(.main-shell--landing) { --app-inset: 30px; }
}
@media (max-width: 700px) {
    .main-shell:not(.main-shell--landing) { --app-inset: 20px; }
}

/* Keep all AI choices together, then separate the caption and publishing-image review. */
.ai-creation-panel { margin: 22px 0 28px; }
.generation-options { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.generation-option { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--line); border-radius: 8px; flex: 1 1 230px; cursor: pointer; }
.generation-option strong, .generation-option small { display: block; }
.generation-option strong { font-size: 13px; }
.generation-option small { margin-top: 4px; }
.generation-option .form-check-input { flex-shrink: 0; }
.ai-creation-panel .image-reference-section { margin-bottom: 0; border-bottom: 0; padding-bottom: 0; }
.reference-preview { max-width: 240px; max-height: 180px; object-fit: contain; }
.review-section-title { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.review-section-title h2 { margin: 0; }
.review-grid > *, .caption-list, .generation-option { min-width: 0; }
.review-grid .info-panel { max-width: none; width: 100%; }
.image-empty { padding: 22px 12px; margin-bottom: 20px; border: 1px dashed var(--line); border-radius: 8px; }
.image-empty > i { font-size: 26px; color: var(--muted); margin-bottom: 12px; }
.image-empty p { margin-bottom: 4px; }
@media (max-width: 700px) {
    .generation-options { gap: 12px; }
    .generation-options > .btn { width: 100%; }
    .generation-option { flex-basis: 100%; }
}
.generation-image-tools { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); }
.generation-image-tools[hidden] { display: none; }
.generation-image-tools > * { min-width: 0; }
.ai-creation-panel .generation-image-tools .image-reference-section { margin: 0; padding: 0; border: 0; }
@media (max-width: 1000px) { .generation-image-tools { grid-template-columns: 1fr; } }

.creation-modes { display: flex; gap: 14px; margin-bottom: 26px; }
.creation-mode { display: flex; align-items: center; gap: 13px; flex: 1; padding: 16px 20px; border: 1px solid var(--line); border-radius: 10px; background: white; color: var(--ink); }
.creation-mode.active { background: var(--purple-soft); border-color: var(--purple); color: var(--purple); }
.creation-mode strong, .creation-mode small { display: block; }
.creation-mode strong { font-size: 14px; margin-bottom: 4px; }
.creation-mode > i { font-size: 20px; }
.creation-grid .form-panel { width: 100%; max-width: none; }
.manual-content-input { min-height: 220px; line-height: 1.8; }
.manual-media { padding-top: 20px; border-top: 1px solid var(--line); }
.ai-creation-summary { font-size: 19px; font-weight: 600; color: var(--ink); }
.ai-creation-summary .form-text { margin-left: 8px; font-size: 12px; font-weight: 400; }
@media (max-width: 700px) { .creation-modes { flex-direction: column; gap: 10px; } }

/* The full product name wraps within both sidebar widths and narrow authentication screens. */
.brand-mark { flex-shrink: 0; font-size: 13px; }
.brand-name { min-width: 0; line-height: 1.2; letter-spacing: -.4px; }
.brand-name .brand-light { display: block; font-size: .8em; margin-top: 3px; }
