.crm-dtp{position:fixed;z-index:9999;padding:16px;border:1px solid #dce5f1;border-radius:15px;background:rgba(255,255,255,.98);box-shadow:0 24px 65px rgba(15,42,67,.24);color:#17283f;font-family:Inter,sans-serif;backdrop-filter:blur(16px)}.crm-dtp button,.crm-dtp select{font:inherit}.crm-dtp-title,.crm-dtp-month,.crm-dtp-actions{display:flex;align-items:center;justify-content:space-between}.crm-dtp-title b{font:800 15px Manrope}.crm-dtp-title button{border:0;background:transparent;color:#74869a;font-size:22px;cursor:pointer}.crm-dtp-month{margin:12px 0 8px}.crm-dtp-month strong{font:800 14px Manrope}.crm-dtp-month button{width:31px;height:31px;border:0;border-radius:8px;background:#f4f7fb;color:#1d4ed8;font-size:21px;cursor:pointer}.crm-dtp-week,.crm-dtp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.crm-dtp-week span{padding:5px 0;text-align:center;color:#68788c;font-size:8px;font-weight:800}.crm-dtp-days button{aspect-ratio:1;border:0;border-radius:50%;background:transparent;color:#26384d;font-size:11px;cursor:pointer}.crm-dtp-days button:hover{background:#edf4ff;color:var(--crm-primary)}.crm-dtp-days button.outside{color:#b2bdca}.crm-dtp-days button.today{box-shadow:inset 0 0 0 1.5px var(--crm-primary);color:var(--crm-primary)}.crm-dtp-days button.selected{background:var(--crm-gradient);color:#fff;box-shadow:0 7px 14px rgba(72,71,220,.25)}.crm-dtp-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:11px 0}.crm-dtp-quick button{padding:7px 5px;border:1px solid #c9daf8;border-radius:7px;background:#f5f9ff;color:var(--crm-primary);font-size:9px;font-weight:750;cursor:pointer}.crm-dtp-time{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid #e8edf3}.crm-dtp-time>b{font-size:11px}.crm-dtp-time>div{display:flex;align-items:center;gap:6px}.crm-dtp-time select{appearance:none;min-width:61px;padding:8px 22px 8px 9px;border:1px solid #d6e0ed;border-radius:8px;background:#fff;color:#26384d;font-size:10px;font-weight:700}.crm-dtp-actions{gap:8px;margin-top:13px}.crm-dtp-actions button{flex:1;padding:9px;border:1px solid #d8e1ec;border-radius:8px;background:#fff;color:#42566e;font-size:11px;font-weight:800;cursor:pointer}.crm-dtp-actions [data-apply]{border:0;background:linear-gradient(100deg,var(--crm-primary),var(--crm-secondary));color:#fff;box-shadow:0 8px 18px rgba(76,63,220,.2)}.crm-dtp.date-only .crm-dtp-time{display:none}@media(max-width:520px){.crm-dtp{max-height:calc(100vh - 20px);overflow:auto;border-radius:20px}.crm-dtp-days button{font-size:12px}}

/* CRM Date Picker — Today / Selected / Hover states */

.crm-dtp-days button{
    position:relative;
    cursor:pointer;
}

/* Normal hover */
.crm-dtp-days button:not(.selected):hover{
    background:var(--crm-primary-soft, #eef4ff) !important;
    color:var(--crm-primary) !important;
}

/* Today = clean primary outline */
.crm-dtp-days button.today:not(.selected){
    background:#fff !important;
    color:var(--crm-primary) !important;
    border:1.5px solid var(--crm-primary) !important;
    font-weight:800 !important;
}

/* Selected = Appearance global gradient */
.crm-dtp-days button.selected{
    background:var(--crm-gradient) !important;
    color:#fff !important;
    border-color:transparent !important;
    font-weight:800 !important;
    box-shadow:0 5px 12px color-mix(
        in srgb,
        var(--crm-primary) 22%,
        transparent
    ) !important;
}

/* If today itself is selected, selected state wins */
.crm-dtp-days button.today.selected{
    background:var(--crm-gradient) !important;
    color:#fff !important;
    border-color:transparent !important;
}

/* Other month dates stay muted */
.crm-dtp-days button.outside:not(.selected){
    opacity:.38;
}

/* CRM Date Picker — Global action buttons */
.crm-dtp-actions [data-apply]{
    background:var(--crm-gradient) !important;
    color:#fff !important;
    border-color:transparent !important;
    font-weight:750 !important;
    box-shadow:0 6px 14px color-mix(
        in srgb,
        var(--crm-primary) 20%,
        transparent
    ) !important;
}

.crm-dtp-actions [data-apply]:hover{
    filter:brightness(.97);
}

.crm-dtp-actions [data-cancel]{
    background:var(--crm-primary-soft,#eef4ff) !important;
    color:var(--crm-primary) !important;
    border:1px solid color-mix(
        in srgb,
        var(--crm-primary) 18%,
        #dfe6ef
    ) !important;
}

/* CRM Date Picker — Compact Premium Size */
.crm-dtp{
    max-width:320px !important;
    padding:12px !important;
    border-radius:14px !important;
}

.crm-dtp-title{
    margin-bottom:8px !important;
}

.crm-dtp-title b{
    font-size:13px !important;
}

.crm-dtp-month{
    margin-bottom:7px !important;
}

.crm-dtp-month strong{
    font-size:12px !important;
}

.crm-dtp-month button,
.crm-dtp-title button{
    width:27px !important;
    height:27px !important;
    min-width:27px !important;
    min-height:27px !important;
    padding:0 !important;
}

.crm-dtp-week{
    margin-bottom:3px !important;
}

.crm-dtp-week span{
    font-size:8px !important;
}

.crm-dtp-days{
    gap:2px !important;
}

.crm-dtp-days button{
    min-height:29px !important;
    height:29px !important;
    font-size:10px !important;
    border-radius:7px !important;
}

.crm-dtp-quick{
    gap:5px !important;
    margin-top:8px !important;
}

.crm-dtp-quick button{
    min-height:28px !important;
    padding:0 8px !important;
    font-size:9px !important;
    border-radius:7px !important;
}

.crm-dtp-time{
    margin-top:8px !important;
    padding-top:8px !important;
}

.crm-dtp-time b{
    font-size:10px !important;
}

.crm-dtp-time select{
    height:30px !important;
    min-height:30px !important;
    font-size:10px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
}

.crm-dtp-actions{
    margin-top:10px !important;
    gap:6px !important;
}

.crm-dtp-actions button{
    min-height:31px !important;
    height:31px !important;
    padding:0 12px !important;
    font-size:10px !important;
    border-radius:8px !important;
}

/* =========================================================
   CRM DATE PICKER
   GLOBAL THEME ONLY — NO HARDCODED BRAND COLORS
========================================================= */

/* Selected Date */
.crm-dtp-days button.selected,
.crm-dtp-days button.selected:hover{
    background:var(--crm-gradient) !important;
    border-color:var(--crm-primary) !important;
    color:#fff !important;
    font-weight:800 !important;
}

/* Today */
.crm-dtp-days button.today:not(.selected){
    color:var(--crm-primary) !important;
    border-color:var(--crm-primary) !important;
    background:var(--crm-primary-soft) !important;
}

/* Normal Date Hover */
.crm-dtp-days button:hover:not(.selected){
    background:var(--crm-primary-soft) !important;
    color:var(--crm-primary) !important;
}

/* Month Navigation */
.crm-dtp-month button:hover{
    background:var(--crm-primary-soft) !important;
    color:var(--crm-primary) !important;
}

/* Quick Actions */
.crm-dtp-quick button{
    color:var(--crm-primary) !important;
    border-color:var(--crm-primary-soft-border) !important;
}

.crm-dtp-quick button:hover{
    background:var(--crm-primary-soft) !important;
    color:var(--crm-primary) !important;
}

/* Cancel */
.crm-dtp-actions button[data-cancel]{
    background:var(--crm-surface) !important;
    border-color:var(--crm-border) !important;
    color:var(--crm-text) !important;
}

/* Apply */
.crm-dtp-actions button[data-apply],
.crm-dtp-actions button[data-apply]:hover{
    background:var(--crm-gradient) !important;
    border-color:var(--crm-primary) !important;
    color:#fff !important;
    font-weight:800 !important;
}

/* Time Selects */
.crm-dtp-time select:focus{
    border-color:var(--crm-primary) !important;
    box-shadow:var(--crm-focus) !important;
}


/* =========================================================
   DATE PICKER — GLOBAL THEME TEXT FIX
   NO FIXED WHITE / BLACK
========================================================= */

.crm-dtp-days button.selected,
.crm-dtp-days button.selected:hover{
    background:var(--crm-primary) !important;
    border-color:var(--crm-primary) !important;
    color:var(--crm-on-primary) !important;
}

.crm-dtp-actions button[data-apply],
.crm-dtp-actions button[data-apply]:hover{
    background:var(--crm-primary) !important;
    border-color:var(--crm-primary) !important;
    color:var(--crm-on-primary) !important;
}

/* =========================================================
   PRS DATE PICKER V2 — COMPACT ATTACHED
   Position is controlled by crm-floating-position-v1.js
   ========================================================= */

.crm-dtp{
    width:288px !important;
    max-width:calc(100vw - 16px) !important;
    padding:10px !important;
    border-radius:12px !important;
    box-sizing:border-box !important;
    overscroll-behavior:contain !important;
}

.crm-dtp-title{
    margin-bottom:5px !important;
}

.crm-dtp-title b{
    font-size:12px !important;
}

.crm-dtp-title button{
    width:25px !important;
    height:25px !important;
    min-width:25px !important;
    min-height:25px !important;
}

.crm-dtp-month{
    margin:5px 0 5px !important;
}

.crm-dtp-month strong{
    font-size:11px !important;
}

.crm-dtp-month button{
    width:25px !important;
    height:25px !important;
    min-width:25px !important;
    min-height:25px !important;
}

.crm-dtp-week{
    margin-bottom:2px !important;
}

.crm-dtp-week span{
    padding:3px 0 !important;
    font-size:7px !important;
}

.crm-dtp-days{
    gap:2px !important;
}

.crm-dtp-days button{
    height:26px !important;
    min-height:26px !important;
    font-size:9px !important;
    border-radius:6px !important;
}

.crm-dtp-quick{
    gap:4px !important;
    margin:6px 0 !important;
}

.crm-dtp-quick button{
    min-height:25px !important;
    height:25px !important;
    padding:0 5px !important;
    font-size:8px !important;
}

.crm-dtp-time{
    margin-top:6px !important;
    padding-top:6px !important;
}

.crm-dtp-time b{
    font-size:9px !important;
}

.crm-dtp-time>div{
    gap:4px !important;
}

.crm-dtp-time select{
    min-width:54px !important;
    height:27px !important;
    min-height:27px !important;
    padding:0 17px 0 7px !important;
    font-size:9px !important;
}

.crm-dtp-actions{
    margin-top:7px !important;
    gap:5px !important;
}

.crm-dtp-actions button{
    height:28px !important;
    min-height:28px !important;
    padding:0 9px !important;
    font-size:9px !important;
}

@media(max-width:340px){
    .crm-dtp{
        width:calc(100vw - 12px) !important;
        max-width:calc(100vw - 12px) !important;
        padding:8px !important;
    }
}
/* /PRS DATE PICKER V2 — COMPACT ATTACHED */

/* =========================================================
   PRS DATE PICKER V3 — COMPACT SAFE
   ========================================================= */

.crm-dtp{
    width:288px !important;
    max-width:calc(100vw - 16px) !important;
    max-height:var(--prs-floating-max-height,410px) !important;
    padding:10px !important;
    border-radius:12px !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
}

.crm-dtp-title{
    margin-bottom:5px !important;
}

.crm-dtp-title b{
    font-size:12px !important;
}

.crm-dtp-title button,
.crm-dtp-month button{
    width:25px !important;
    height:25px !important;
    min-width:25px !important;
    min-height:25px !important;
    padding:0 !important;
}

.crm-dtp-month{
    margin:5px 0 !important;
}

.crm-dtp-month strong{
    font-size:11px !important;
}

.crm-dtp-week{
    margin-bottom:2px !important;
}

.crm-dtp-week span{
    padding:3px 0 !important;
    font-size:7px !important;
}

.crm-dtp-days{
    gap:2px !important;
}

.crm-dtp-days button{
    height:26px !important;
    min-height:26px !important;
    font-size:9px !important;
    border-radius:6px !important;
}

.crm-dtp-quick{
    gap:4px !important;
    margin:6px 0 !important;
}

.crm-dtp-quick button{
    min-height:25px !important;
    padding:0 5px !important;
    font-size:8px !important;
}

.crm-dtp-time{
    margin-top:6px !important;
    padding-top:6px !important;
    gap:8px !important;
}

.crm-dtp-time>b{
    font-size:9px !important;
}

.crm-dtp-time>div{
    display:flex !important;
    align-items:center !important;
    gap:4px !important;
    min-width:0 !important;
}

.crm-dtp-time .crm-native-select{
    width:67px !important;
    min-width:0 !important;
    flex:0 0 67px !important;
}

.crm-dtp-time .crm-native-select:last-child{
    width:64px !important;
    flex-basis:64px !important;
}

.crm-dtp-time .crm-select-trigger{
    width:100% !important;
    min-width:0 !important;
    min-height:28px !important;
    height:28px !important;
    padding:0 7px !important;
    gap:5px !important;
    border-radius:7px !important;
    font-size:9px !important;
}

.crm-dtp-time .crm-select-chevron{
    width:5px !important;
    height:5px !important;
    flex-basis:5px !important;
}

.crm-dtp-actions{
    margin-top:7px !important;
    gap:5px !important;
}

.crm-dtp-actions button{
    min-height:28px !important;
    height:28px !important;
    padding:0 9px !important;
    font-size:9px !important;
}

/* Hour / Minute / AM-PM floating list */
body > .crm-select-menu.crm-select-menu-compact-time{
    min-width:72px !important;
    max-width:96px !important;
    max-height:var(--prs-floating-max-height,180px) !important;
    padding:4px !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    scrollbar-width:thin;
}

body > .crm-select-menu.crm-select-menu-compact-time
.crm-select-option{
    min-height:30px !important;
    justify-content:center !important;
    padding:5px 7px !important;
    font-size:10px !important;
    text-align:center !important;
}

body > .crm-select-menu.crm-select-menu-compact-time
.crm-select-option-label{
    width:100% !important;
    text-align:center !important;
}

@media(max-width:340px){
    .crm-dtp{
        width:calc(100vw - 12px) !important;
        max-width:calc(100vw - 12px) !important;
        padding:8px !important;
    }

    .crm-dtp-time .crm-native-select{
        width:61px !important;
        flex-basis:61px !important;
    }

    .crm-dtp-time .crm-native-select:last-child{
        width:58px !important;
        flex-basis:58px !important;
    }
}

/* /PRS DATE PICKER V3 — COMPACT SAFE */

