#customerCarePage .dettColumn {
    /* padding-top: 10px;
    padding-bottom: 15px;
    padding-right: 10px; */
    /* width: calc(50% - 2px); */
    /* display: inline-block; */
    vertical-align: top;
    text-align: left;
}

#customerCarePage .detHeader {
    /* color: #ca064d; */
    /* margin: -24px 0px -30px -10px; */
    /* font-weight: bold; */
    /* font-size: 13px; */
    /* border-right: 2px solid #ca064d; */
    margin-right: 20px;
    padding-bottom: 20px;
}

#customerCarePage .detHeader p {
    line-height: 20px;
}

#customerCarePage .detBox {
    border-bottom: 2px solid #ca064d;
    margin-bottom: 15px;
}

#customerCarePage .detInfo {
    padding-bottom: 20px;
}

/* Posti prenotati (stesso stile di status / dettaglio biglietto) — .detInfo è fuori da .ticket-details */
#customerCarePage .ticket-detail-departure-line {
    margin: 0;
}

#customerCarePage .ticket-booking-seats {
    margin-top: 8px;
}

#customerCarePage .ticket-booking-seats-leg {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
    align-items: center;
}

#customerCarePage .ticket-booking-seats-leg + .ticket-booking-seats-leg {
    margin-top: 6px;
}

#customerCarePage .ticket-seat-id {
    display: inline-block;
    padding: 2px 10px;
    border: 1px solid #1565c0;
    border-radius: 4px;
    color: #0d47a1;
    background: #fff;
    font-weight: 600;
    font-size: 13px;
    line-height: 1.35;
}

#customerCarePage .searchBox md-input-container {
    margin: 10px 0px 0px 0px;
}

#customerCarePage i.link-o:after {
	content: " ";
    display: block;
    width: 2px;
    height: 10px;
    background: #666d6d;
    position: relative;
    left: 5px;
    margin-top: -2px;
    margin-bottom: -5px;
}

#customerCarePage .title i {
	margin-right: 10px;
}

#customerCarePage .fareNote {
	/* background-color: rgba(255, 203, 91, 0.5);
	padding: 4px 15px;
	border-radius: 5px; */
	text-transform: uppercase !important;
	color: #de9800 !important;
    background-color: unset !important;
    padding: 0px !important;
    border-radius: 0px !important;
}

@media screen and (max-width: 800px) {
    .detHeader {
        border-right: none;
        margin-bottom: 10px;
    }
}

.detail-label {
    font-weight: 500;
    color: #666;
    min-width: 100px;
    margin-right: 10px;
}

.detail-value {
    color: #333;
    word-break: break-word;
}

.status-color-container {
    display: flex;
    align-items: center;
    gap: 8px;
}

.status-color-circle {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1px solid #ccc;
    display: inline-block;
    flex-shrink: 0;
}

.status-color-text {
    color: #333;
}

.no-activity {
    text-align: center;
    padding: 40px 20px;
    color: #666;
}

.no-activity-icon {
    font-size: 48px;
    width: 48px;
    height: 48px;
    color: #ccc;
    margin-bottom: 15px;
}

.no-activity p {
    margin: 0;
    font-size: 16px;
}

/* Seat map (aligned with ecommerce cart: bus frame + CSS grid + seat “face”) */
#customerCarePage .cc-seat-map-ecommerce ,
#planningPage .cc-seat-map-ecommerce {
    margin: 8px 0 12px 0;
    max-width: 100%;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-bus-frame ,
#planningPage .cc-seat-map-ecommerce .cart-seat-bus-frame {
    position: relative;
    display: flex;
    justify-content: center;
    flex: 0 0 auto;
    align-self: stretch;
    width: 100%;
    max-width: 100%;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-bus-inner ,
#planningPage .cc-seat-map-ecommerce .cart-seat-bus-inner {
    display: inline-block;
    vertical-align: top;
    max-width: 100%;
    border-radius: 9px 9px 8px 8px;
    border: 1px solid #d4d4d8;
    background: #fff;
    box-shadow: 0 1px 2px rgba(24, 24, 27, 0.06);
    overflow: hidden;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-bus-roof ,
#planningPage .cc-seat-map-ecommerce .cart-seat-bus-roof {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    min-height: 24px;
    padding: 0.25rem 0.5rem;
    background: #3f3f46;
    border-bottom: 1px solid #27272a;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-bus-roof__badge ,
#planningPage .cc-seat-map-ecommerce .cart-seat-bus-roof__badge {
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #fafafa;
    white-space: nowrap;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-grid-wrapper--in-bus ,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid-wrapper--in-bus {
    width: max-content;
    max-width: 100%;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: #fafafa;
    border-top: 1px solid #e4e4e7;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-grid-wrapper ,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid-wrapper {
    overflow: auto;
    max-width: 100%;
    padding: 0.45rem 0.5rem 0.55rem;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-grid .cart-seat-cell ,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid .cart-seat-cell {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.1;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-grid .cart-seat-cell__num ,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid .cart-seat-cell__num {
    letter-spacing: -0.5px;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cell ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cell {
    --cart-seat-pan: #ffffff;
    --cart-seat-back: #f4f4f5;
    --cart-seat-edge: #d4d4d8;
    --cart-seat-num: #18181b;

    position: relative;
    border: none;
    border-radius: 0;
    font-size: 11px;
    padding: 0;
    line-height: 1;
    min-width: 0;
    background: transparent;
    box-shadow: none;
    color: var(--cart-seat-num);
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cell__face ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cell__face {
    position: relative;
    width: 88%;
    margin: 0 auto;
    flex: 1 1 auto;
    min-height: 26px;
    max-height: 34px;
    pointer-events: none;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cell__face::before ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cell__face::before {
    content: '';
    position: absolute;
    z-index: 0;
    left: 0;
    right: 0;
    top: 0;
    bottom: 7px;
    border-radius: 5px 5px 3px 3px;
    background: var(--cart-seat-pan);
    border: 1px solid var(--cart-seat-edge);
    box-sizing: border-box;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cell__face::after ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cell__face::after {
    content: '';
    position: absolute;
    z-index: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 6px;
    border-radius: 2px 2px 4px 4px;
    background: var(--cart-seat-back);
    border: 1px solid var(--cart-seat-edge);
    box-sizing: border-box;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cell__num ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cell__num {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0 1px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1;
    color: var(--cart-seat-num);
    text-align: center;
    pointer-events: none;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-grid button.cart-seat-cell ,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid button.cart-seat-cell {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    align-self: stretch;
    height: 100%;
    min-height: 0;
    padding: 1px 1px 0;
    box-sizing: border-box;
}

/* Planning trip detail builds seats as <div>, not <button> — same bottom-aligned “face” as Customer Care */
#planningPage .cc-seat-map-ecommerce .cart-seat-grid div.cart-seat-cell.cart-seat-free,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid div.cart-seat-cell.cart-seat-planning-occupied,
#planningPage .cc-seat-map-ecommerce .cart-seat-grid div.cart-seat-cell.cart-seat-planning-locked {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    align-self: stretch;
    height: 100%;
    min-height: 0;
    padding: 1px 1px 0;
    box-sizing: border-box;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-filler ,
#planningPage .cc-seat-map-ecommerce .cart-seat-filler {
    border: none;
    background: transparent;
    pointer-events: none;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco {
    pointer-events: none;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
    color: rgba(15, 23, 42, 0.45);
    border-style: solid;
    border-width: 1px;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--aisle ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--aisle {
    background: #f4f4f5;
    border-color: #e4e4e7;
    border-radius: 4px;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--window ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--window {
    position: relative;
    padding: 0;
    border: none;
    background: #f0f9ff;
    border-radius: 3px;
    box-shadow: inset 0 0 0 1px #bae6fd;
    overflow: hidden;
    align-items: stretch;
    justify-content: stretch;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__window-strip ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__window-strip {
    position: absolute;
    inset: 2px;
    display: block;
    border-radius: 2px;
    border: 1px solid #38bdf8;
    background: #e0f2fe;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__window-strip::after ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__window-strip::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 3px;
    bottom: 3px;
    width: 2px;
    margin-left: -1px;
    background: rgba(3, 105, 161, 0.75);
    border-radius: 1px;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--door ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--door {
    padding: 0;
    border: none;
    background: #fffaf5;
    border-radius: 3px;
    box-shadow: inset 0 0 0 1px #e7d5c4;
    overflow: hidden;
    align-items: stretch;
    justify-content: stretch;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__door-inner ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__door-inner {
    position: relative;
    flex: 1;
    min-width: 0;
    min-height: 0;
    background: transparent;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__door-inner::after ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__door-inner::after {
    content: '';
    position: absolute;
    left: 3px;
    right: 3px;
    top: 12%;
    bottom: 10%;
    border-radius: 1px;
    background: repeating-linear-gradient(
        90deg,
        transparent 0,
        transparent 10px,
        rgba(120, 53, 15, 0.72) 10px,
        rgba(120, 53, 15, 0.72) 12px
    );
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--restroom ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--restroom {
    background: #ede9fe;
    border-color: #7c3aed;
    border-radius: 4px;
    color: rgba(91, 33, 182, 0.75);
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--cabin ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--cabin {
    position: relative;
    padding: 0;
    border: none;
    background: #fafafa;
    border-radius: 3px;
    box-shadow: inset 0 0 0 1px #e4e4e7;
    overflow: hidden;
    align-items: stretch;
    justify-content: stretch;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__cabin-inner ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__cabin-inner {
    position: absolute;
    inset: 2px;
    border-radius: 2px;
    border: 1px solid #cbd5e1;
    background: #f1f5f9;
    box-sizing: border-box;
    overflow: hidden;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__cabin-inner::after ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__cabin-inner::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 4px;
    width: 17px;
    height: 17px;
    margin-left: -8.5px;
    border-radius: 50%;
    border: 1.5px solid #64748b;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.65);
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--cabin--merged .cart-seat-deco__cabin-inner::after ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--cabin--merged .cart-seat-deco__cabin-inner::after {
    width: 20px;
    height: 20px;
    margin-left: -10px;
    bottom: 4px;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco--wall ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco--wall {
    position: relative;
    padding: 0;
    border: none;
    background: transparent;
    overflow: hidden;
    align-items: stretch;
    justify-content: stretch;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-deco__wall-strip ,
#planningPage .cc-seat-map-ecommerce .cart-seat-deco__wall-strip {
    position: absolute;
    inset: 0;
    border-radius: 4px;
    border: 1px solid #71717a;
    background: #d4d4d8;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-free.cart-seat-clickable ,
#planningPage .cc-seat-map-ecommerce .cart-seat-free.cart-seat-clickable {
    cursor: pointer;
    --cart-seat-pan: #ecfdf5;
    --cart-seat-back: #d1fae5;
    --cart-seat-edge: #34d399;
    --cart-seat-num: #065f46;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-free.cart-seat-clickable:hover ,
#planningPage .cc-seat-map-ecommerce .cart-seat-free.cart-seat-clickable:hover {
    --cart-seat-pan: #d1fae5;
    --cart-seat-back: #a7f3d0;
    --cart-seat-edge: #10b981;
}

/* Prenotazione attuale sul mezzo: arancio (distinto dal blu “selezionato per modifica”) */
#customerCarePage .cc-seat-map-ecommerce .cart-seat-mine ,
#planningPage .cc-seat-map-ecommerce .cart-seat-mine {
    cursor: default;
    --cart-seat-pan: #fff7ed;
    --cart-seat-back: #ffedd5;
    --cart-seat-edge: #ea580c;
    --cart-seat-num: #9a3412;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-mine.cart-seat-swap-clickable ,
#planningPage .cc-seat-map-ecommerce .cart-seat-mine.cart-seat-swap-clickable {
    cursor: pointer;
    box-shadow: none;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-mine.cart-seat-swap-clickable:hover ,
#planningPage .cc-seat-map-ecommerce .cart-seat-mine.cart-seat-swap-clickable:hover {
    --cart-seat-pan: #ffedd5;
    --cart-seat-back: #fed7aa;
    --cart-seat-edge: #c2410c;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-taken ,
#planningPage .cc-seat-map-ecommerce .cart-seat-taken {
    cursor: not-allowed;
    --cart-seat-pan: #f4f4f5;
    --cart-seat-back: #e4e4e7;
    --cart-seat-edge: #d4d4d8;
    --cart-seat-num: #a1a1aa;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cc-picked ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cc-picked {
    cursor: pointer;
    --cart-seat-pan: #dbeafe;
    --cart-seat-back: #bfdbfe;
    --cart-seat-edge: #2563eb;
    --cart-seat-num: #1e3a8a;
    box-shadow: none;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-cc-picked.cart-seat-clickable:hover ,
#planningPage .cc-seat-map-ecommerce .cart-seat-cc-picked.cart-seat-clickable:hover {
    --cart-seat-pan: #bfdbfe;
    --cart-seat-back: #93c5fd;
    --cart-seat-edge: #1d4ed8;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-block ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-block {
    margin-top: 0.75rem;
    padding-top: 0.65rem;
    border-top: 1px solid #e2e8f0;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-list ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-list {
    padding: 0;
    margin: 0;
    list-style: none;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-row ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    margin: 0 0 0.5rem;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-row--last ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-row--last {
    margin-bottom: 0;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-text ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-text {
    font-size: 12px;
    line-height: 1.4;
    font-weight: 500;
    color: #475569;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-swatch ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-swatch {
    width: 22px;
    height: 17px;
    border-radius: 3px;
    border: 1px solid #ccc;
    box-sizing: border-box;
    flex-shrink: 0;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-swatch--free ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-swatch--free {
    background: #ecfdf5;
    border-color: #34d399;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-swatch--yours ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-swatch--yours {
    background: #ffedd5;
    border-color: #ea580c;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-swatch--taken ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-swatch--taken {
    background: #f4f4f5;
    border-color: #d4d4d8;
}

#customerCarePage .cc-seat-map-ecommerce .cart-seat-legend-swatch--cc-picked ,
#planningPage .cc-seat-map-ecommerce .cart-seat-legend-swatch--cc-picked {
    background: #dbeafe;
    border-color: #2563eb;
}

#customerCarePage .cc-seat-selected-pills {
    margin-top: 8px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
}

#customerCarePage .cc-seat-map-loading {
    margin-top: 12px;
}

@media screen and (max-width: 600px) {
    .detail-label {
        min-width: auto;
        margin-bottom: 2px;
    }
}
