.lifeop-today,.lifeop-booking-form,.lifeop-login-card,.lifeop-portal{font-family:Arial,sans-serif;color:#08263a}.lifeop-today{background:#fff8e8;border:1px solid #e8d39d;border-radius:22px;padding:24px}.lifeop-eyebrow{font-family:Georgia,serif;font-size:24px;font-weight:700}.lifeop-big{display:flex;align-items:baseline;gap:10px;margin-top:12px}.lifeop-big strong{font-size:42px}.lifeop-big span,.lifeop-sub{color:#5c6970}.lifeop-services{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.lifeop-services>div{background:#fff;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:5px}.lifeop-services em,.lifeop-service-status{font-style:normal;font-size:11px;font-weight:700;letter-spacing:.06em}.status-open{color:#147447}.status-closed,.status-private_event,.status-sold_out,.status-maintenance,.status-cancelled,.status-refunded{color:#a43b32}.status-confirmed{color:#147447}.status-part-paid{color:#8a6500}.status-pending{color:#3c4db0}.lifeop-booking-form,.lifeop-front-form{background:#fff;border:1px solid #e2e6e8;border-radius:20px;padding:24px}.lifeop-book-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lifeop-booking-form label,.lifeop-front-form label{display:flex;flex-direction:column;gap:7px;font-weight:600;color:#08263a}.lifeop-booking-form input,.lifeop-booking-form select,.lifeop-front-form input:not([type=checkbox]),.lifeop-front-form select,.lifeop-front-form textarea{padding:12px;border:1px solid #cdd5da;border-radius:10px;background:#fff;box-sizing:border-box;width:100%}.lifeop-booking-form button,.lifeop-verify button,.lifeop-primary,.lifeop-login-button,.lifeop-inline-filter button{display:inline-block;margin-top:18px;background:#d8b45f;color:#08263a!important;border:0;border-radius:999px;padding:14px 24px;font-weight:700;text-decoration:none;cursor:pointer}.lifeop-message{padding:16px;border-radius:12px;background:#eef7f3}.lifeop-closed{background:#fff0ed}.lifeop-verify-card{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:18px;border:1px solid #ddd;border-radius:14px}.lifeop-verify-card>*{padding-right:12px;border-right:1px solid #ddd}.lifeop-verify-card>*:last-child{border:0}.lifeop-login-card{max-width:480px;margin:30px auto;background:#fff;border:1px solid #e2e6e8;border-radius:22px;padding:28px;box-shadow:0 16px 45px rgba(7,29,43,.08)}.lifeop-login-card h2{margin:8px 0}.lifeop-login-card label{display:block;margin:12px 0 5px;font-weight:700}.lifeop-login-card input[type=text],.lifeop-login-card input[type=password]{width:100%;padding:12px;border:1px solid #cdd5da;border-radius:10px;box-sizing:border-box}.lifeop-login-card input[type=submit]{background:#d8b45f;border:0;border-radius:999px;padding:12px 22px;font-weight:700;color:#08263a}.lifeop-portal{max-width:1450px;margin:20px auto;background:#f5f7f8;border:1px solid #dfe5e8;border-radius:24px;overflow:hidden;box-shadow:0 12px 40px rgba(7,29,43,.08)}.lifeop-portal-head{background:#08263a;color:#fff;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px}.lifeop-portal-head .lifeop-eyebrow{color:#d8b45f}.lifeop-portal-head h2{color:#fff;margin:4px 0 0}.lifeop-user a{color:#f0c86d}.lifeop-portal-nav{display:flex;gap:6px;overflow-x:auto;padding:10px 14px;background:#fff;border-bottom:1px solid #dfe5e8}.lifeop-portal-nav a{white-space:nowrap;text-decoration:none;color:#173448;padding:9px 13px;border-radius:999px;font-weight:700}.lifeop-portal-nav a.active{background:#08263a;color:#fff}.lifeop-portal-body{padding:22px}.lifeop-portal-notice{margin:16px 22px 0;background:#e8f7ef;color:#17633f;border-radius:12px;padding:12px 14px}.lifeop-portal-cards{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin:18px 0}.lifeop-portal-card{background:#fff;border:1px solid #dfe5e8;border-radius:14px;padding:16px}.lifeop-portal-card span{display:block;color:#687680;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.lifeop-portal-card strong{display:block;font-size:22px;margin-top:7px;color:#08263a}.lifeop-account-note{background:#fff8e8;border:1px solid #ead8a3;border-radius:12px;padding:12px 14px;color:#44535d;margin:12px 0}.lifeop-inline-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.lifeop-inline-filter input{padding:10px;border:1px solid #cdd5da;border-radius:10px}.lifeop-inline-filter input[type=search]{min-width:300px}.lifeop-inline-filter button{margin-top:0;padding:10px 18px}.lifeop-front-table{overflow:auto;background:#fff;border:1px solid #dfe5e8;border-radius:14px;margin-top:15px}.lifeop-front-table table{width:100%;border-collapse:collapse;min-width:850px}.lifeop-front-table th,.lifeop-front-table td{text-align:left;padding:12px;border-bottom:1px solid #eef1f2;vertical-align:top}.lifeop-front-table th{background:#f8fafb;color:#53626c;font-size:12px;text-transform:uppercase}.lifeop-front-table td small{display:block;color:#74818a;margin-top:4px}.lifeop-status{display:inline-block;padding:4px 8px;border-radius:999px;background:#edf1f3;font-size:11px;font-weight:700}.lifeop-front-form{margin:12px 0}.lifeop-front-form small{font-weight:400;color:#687680}.lifeop-front-form .lifeop-primary{width:auto}.lifeop-login-button{margin:0}
@media(max-width:950px){.lifeop-portal-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.lifeop-services,.lifeop-book-grid,.lifeop-portal-cards{grid-template-columns:1fr}.lifeop-portal{margin:8px;border-radius:16px}.lifeop-portal-head{align-items:flex-start;flex-direction:column;padding:18px}.lifeop-portal-body{padding:14px}.lifeop-user{font-size:13px}.lifeop-inline-filter{align-items:stretch;flex-direction:column}.lifeop-inline-filter input[type=search]{min-width:0;width:100%}.lifeop-front-form{padding:16px}.lifeop-login-card{margin:12px;padding:20px}.lifeop-big{align-items:flex-start;flex-direction:column;gap:0}}
.lifeop-food-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px;margin:12px 0 20px}.lifeop-food-grid label{background:#fff;border:1px solid #dfe5e8;border-radius:12px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.lifeop-food-grid label input{grid-column:1/-1}.lifeop-login-card input[type=email],.lifeop-login-card input[inputmode=numeric]{width:100%;padding:12px;border:1px solid #cdd5da;border-radius:10px;box-sizing:border-box}.lifeop-portal-nav a.active{background:#08263a;color:#fff}.lifeop-front-table input[type=text],.lifeop-front-table input[type=number],.lifeop-front-table input[type=time]{min-width:105px;max-width:180px;width:100%}
@media(max-width:700px){.lifeop-food-grid{grid-template-columns:1fr}}
.lifeop-price-summary{margin:18px 0;padding:18px;border:1px solid #e6dfd0;border-radius:14px;background:#faf6ec;color:#1b2530;display:grid;gap:8px}.lifeop-price-summary>div{display:flex;justify-content:space-between;gap:16px}.lifeop-price-summary>div:first-child{align-items:center}.lifeop-price-summary>div:first-child span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#7a7568}.lifeop-price-summary hr{border:0;border-top:1px solid #e6dfd0;width:100%;margin:4px 0}.lifeop-price-summary .lifeop-total{font-size:18px;color:#0d1b2a}.lifeop-cruise-booking button[type=submit]{min-height:50px}.flodine-booking-confirmation,.flodine-account-booking{border:1px solid #e6dfd0;border-radius:14px;padding:20px;background:#faf6ec;margin:24px 0}.flodine-booking-confirmation .button,.flodine-account-booking .button{margin:4px 8px 4px 0}
@media(max-width:700px){.lifeop-price-summary>div{font-size:14px}.lifeop-price-summary .lifeop-total{font-size:17px}.lifeop-cruise-booking button[type=submit]{width:100%}}

.lifeop-price-summary .lifeop-free-coupon{color:#177245;font-weight:700;background:#eef8f1;border:1px solid #cde8d5;border-radius:10px;padding:10px 12px}.lifeop-price-summary .lifeop-free-coupon span,.lifeop-price-summary .lifeop-free-coupon b{color:#177245}

/* v1.3.3 searchable meal pre-order + coupon redemption */
.lifeop-food-order{margin:24px 0 10px}.lifeop-food-order-head h3{margin:0 0 6px;font-size:26px;color:#0d1b2a}.lifeop-food-order-head h3 small{font-size:.65em;font-weight:400}.lifeop-food-order-head p{margin:0 0 14px;color:#65727b;font-size:14px}.lifeop-food-search-label{display:block!important;margin:0 0 10px;font-weight:700}.lifeop-food-search-label input{margin-top:7px}.lifeop-food-list{border:1px solid #dfe5e8;border-radius:14px;background:#fff;max-height:222px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}.lifeop-food-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;height:74px;box-sizing:border-box;padding:10px 14px;border-bottom:1px solid #eef1f2}.lifeop-food-row:last-child{border-bottom:0}.lifeop-food-row[hidden]{display:none!important}.lifeop-food-info{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.lifeop-food-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lifeop-food-info span{font-weight:700;white-space:nowrap}.lifeop-qty-stepper{display:grid;grid-template-columns:38px 58px 38px;align-items:center;border:1px solid #cdd5da;border-radius:9px;overflow:hidden;background:#fff}.lifeop-qty-stepper button{margin:0!important;min-height:38px!important;padding:0!important;border-radius:0!important;background:#f5f7f8!important;color:#0d1b2a!important;font-size:20px;line-height:1}.lifeop-qty-stepper input{border:0!important;border-left:1px solid #e1e5e8!important;border-right:1px solid #e1e5e8!important;border-radius:0!important;text-align:center;padding:8px 3px!important;min-width:0}.lifeop-food-empty{padding:12px;color:#687680;font-size:14px}.lifeop-price-summary .lifeop-food-breakup{color:#0d1b2a}.lifeop-price-summary .lifeop-coupon-redeemed{color:#177245;font-weight:700}.lifeop-price-summary .lifeop-coupon-remaining{color:#66736b;font-size:14px}.lifeop-price-summary .lifeop-food-extra{color:#9a5a00;font-weight:700;background:#fff4dc;border:1px solid #efdbad;border-radius:10px;padding:10px 12px}.lifeop-meal-summary{display:block;min-width:150px;line-height:1.35}.lifeop-meal-summary small{display:block;margin-top:5px;color:#687680}.lifeop-no-meals{color:#9aa3a8}.lifeop-front-table td .lifeop-meal-summary{font-size:12px}.lifeop-front-table td .lifeop-meal-summary small{font-size:10px}
@media(max-width:700px){.lifeop-food-order-head h3{font-size:22px}.lifeop-food-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;height:74px;padding:9px 10px}.lifeop-food-info{align-items:center;gap:8px}.lifeop-food-info strong{max-width:46vw}.lifeop-qty-stepper{width:120px;grid-template-columns:34px 52px 34px}.lifeop-food-list{max-height:222px}}

.lifeop-required{color:#b3432e;font-weight:800;margin-left:2px}

/* v1.3.7 multi-date dashboard + temporary pricing controls */
.lifeop-dashboard-filter{align-items:flex-end;gap:10px;flex-wrap:wrap}.lifeop-dashboard-filter label,.lifeop-dashboard-filter>div{display:flex;flex-direction:column;gap:5px}.lifeop-date-multiple,.lifeop-price-multiple{min-width:230px}.lifeop-multi-date-row,.lifeop-price-date-row{display:flex;gap:6px;margin-bottom:6px}.lifeop-multi-date-row input,.lifeop-price-date-row input{flex:1}.lifeop-filter-reset{align-self:flex-end}.lifeop-temp-price-form small,.lifeop-front-form small{color:#64748b}.lifeop-price-add-date,.lifeop-add-date{margin-top:4px}

/* v1.3.8 experience brief */
.lifeop-experience-brief{margin:14px 0 4px;padding:12px 14px;border-left:3px solid #d4a95e;background:#faf6ec;border-radius:8px;color:#53626c;font-size:14px;line-height:1.55}.lifeop-front-table textarea{min-width:180px;max-width:260px;width:100%;min-height:74px;resize:vertical}

/* v1.3.9 destructive row actions */
.lifeop-delete-action{color:#b42318!important;font-weight:700;text-decoration:none}.lifeop-delete-action:hover{text-decoration:underline}

/* v1.4.0 past-date + departure cutoff */
.lifeop-price-summary .lifeop-booking-closed{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;background:#fff0ed;border:1px solid #efc6bf;border-radius:10px;padding:12px 14px;color:#9b2c20}.lifeop-price-summary .lifeop-booking-closed strong{color:#9b2c20}.lifeop-price-summary .lifeop-booking-closed span{color:#7b3f36;font-size:13px}.lifeop-cruise-booking button[type=submit]:disabled{opacity:.55;cursor:not-allowed}

/* v1.4.1 frontend pricing/mobile reliability */
@media(max-width:700px){
  .lifeop-price-multiple{min-width:0;width:100%}
  .lifeop-price-date-row{width:100%;align-items:center}
  .lifeop-price-date-row input{min-width:0;width:100%}
  .lifeop-price-date-row button{flex:0 0 42px;min-height:42px}
  .lifeop-temp-price-form .lifeop-book-grid,.lifeop-front-form .lifeop-book-grid{grid-template-columns:1fr}
}


/* v1.4.3 dynamic Today at FloDine */
.lifeop-today-live{font-family:inherit;color:#0d1b2a}.lifeop-today-live-summary{margin:0 0 16px;color:#6f6b63;font-size:14px}.lifeop-today-live-summary strong{color:#0d1b2a}.lifeop-today-live-summary span{padding:0 5px;color:#b8aa8d}.lifeop-today-live-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.lifeop-today-live-card{background:#faf6ec;border:1px solid #efe7d8;border-radius:14px;padding:18px;min-width:0}.lifeop-today-live-name{font-family:Georgia,serif;font-weight:700;font-size:16px}.lifeop-today-live-time,.lifeop-today-live-count{font-size:13px;color:#6f6b63;margin-top:5px}.lifeop-today-live-status{margin-top:8px;font-size:12px;font-weight:800;letter-spacing:.03em}.lifeop-today-live-status.status-open{color:#1a7a4b}.lifeop-today-live-status.status-sold_out,.lifeop-today-live-status.status-closed{color:#a43b32}.lifeop-today-live-status.status-booking_closed{color:#9a6a00}.lifeop-today-live-book{display:inline-block;margin-top:10px;color:#0d1b2a;text-decoration:none;font-size:12px;font-weight:800;border-bottom:1px solid #d4a95e}.lifeop-today-live-empty{grid-column:1/-1;background:#faf6ec;border:1px solid #efe7d8;border-radius:14px;padding:18px;color:#6f6b63}
@media(max-width:900px){.lifeop-today-live-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.lifeop-today-live-cards{grid-template-columns:1fr}}
