:root{--tr-navy:#071f58;--tr-blue:#0b54b5;--tr-gold:#efad1b;--tr-purple:#813bd2;--tr-cream:#fbfaf6;--tr-green:#15a86b;--tr-red:#d9414d;--tr-line:#e6e8ee;--tr-shadow:0 10px 28px rgba(17,37,73,.08);--tr-radius:22px}
body.customer-direct{background:var(--tr-cream)!important;color:var(--tr-navy);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.customer-direct #webapp{background:radial-gradient(circle at 85% 15%,rgba(238,173,28,.08),transparent 23%),linear-gradient(180deg,#fff 0,var(--tr-cream) 100%)!important}
body.customer-direct .webnav{box-sizing:border-box!important;display:grid!important;grid-template-columns:52px minmax(0,1fr) 104px!important;align-items:center!important;width:100%!important;min-height:calc(78px + env(safe-area-inset-top))!important;height:calc(78px + env(safe-area-inset-top))!important;padding:max(10px,env(safe-area-inset-top)) 18px 8px!important;background:rgba(255,255,255,.94)!important;border:0!important;box-shadow:none!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:visible!important}
body.customer-direct #webapp.cw-view-home .webnav{display:grid!important}
body.customer-direct .cw-header-back,body.customer-direct .cw-header-actions button{display:grid!important;place-items:center;width:48px;height:48px;min-height:48px;border:1px solid #edf0f4;border-radius:50%;background:#fff;color:var(--tr-navy);box-shadow:0 7px 22px rgba(17,37,73,.09);font-size:31px;line-height:1}
body.customer-direct .cw-header-brand{position:absolute;left:50%;top:max(9px,env(safe-area-inset-top));display:grid;place-items:center;transform:translateX(-50%);width:min(42vw,220px);height:62px;text-align:center;pointer-events:none}
body.customer-direct .cw-header-brand img{display:block!important;width:100%!important;height:62px!important;max-width:210px!important;max-height:62px!important;object-fit:contain!important;object-position:center!important}
body.customer-direct .cw-header-fallback{font:700 clamp(18px,5vw,28px)/1.05 Georgia,serif;letter-spacing:.08em;color:var(--tr-navy)}
body.customer-direct .cw-header-actions{grid-column:3;display:flex;justify-content:flex-end;gap:8px}
body.customer-direct .cw-header-actions button{font-size:23px}
body.customer-direct .cw-header-notifications{color:#d89408!important}
body.customer-direct .cw-wrap{padding:8px 14px calc(148px + env(safe-area-inset-bottom))!important}
body.customer-direct .cw-layout{margin:0!important;gap:14px!important}
body.customer-direct .cw-menu{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
body.customer-direct .cw-menu>h2{display:none}
body.customer-direct .tr-page-title{position:relative;margin:10px 4px 16px;padding-right:88px}
body.customer-direct .tr-page-title small{display:block;color:#a66f16;font-size:12px;font-weight:800;letter-spacing:.23em;text-transform:uppercase}
body.customer-direct .tr-page-title h1{margin:2px 0 1px;color:var(--tr-navy);font:700 clamp(42px,12vw,64px)/.92 Georgia,serif}
body.customer-direct .tr-page-title p{margin:7px 0 0;color:#526584;font-size:15px;line-height:1.35}
body.customer-direct .tr-page-title:after{content:'♡';position:absolute;right:16px;top:18px;color:var(--tr-gold);font-size:38px;transform:rotate(-10deg)}
body.customer-direct .cw-menu>.cw-mode{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px;margin:0 0 13px!important;padding:0!important;background:transparent!important}
body.customer-direct .cw-menu>.cw-mode button{min-width:0!important;min-height:46px!important;padding:9px!important;border:1px solid #e5dfd3!important;border-radius:16px!important;background:#fff!important;color:var(--tr-navy)!important;box-shadow:var(--tr-shadow)!important}
body.customer-direct .cw-menu>.cw-mode button.on{border-color:var(--tr-gold)!important;background:#fff7df!important}
body.customer-direct .cw-menu>.cw-mode .cw-booktab{grid-column:1/-1}
body.customer-direct .cw-tools{position:relative;margin:0 0 12px!important}
body.customer-direct .cw-search{height:58px!important;margin:0!important;padding:0 52px 0 48px!important;border:1.5px solid var(--tr-gold)!important;border-radius:19px!important;background:#fff!important;color:var(--tr-navy);box-shadow:0 5px 18px rgba(17,37,73,.04);font-size:16px!important}
body.customer-direct .cw-tools:before{content:'⌕';position:absolute;z-index:1;left:16px;top:8px;color:var(--tr-navy);font-size:31px;pointer-events:none}
body.customer-direct .cw-tools:after{content:'☷';position:absolute;right:16px;top:15px;color:var(--tr-navy);font-size:22px;pointer-events:none}
body.customer-direct .cw-tabs{gap:8px!important;margin:0 -14px;padding:0 14px 14px!important;scrollbar-width:none}
body.customer-direct .cw-tab{min-height:45px!important;padding:10px 16px!important;border:1px solid #ececf1!important;border-radius:24px!important;background:#fff!important;color:#2d3c61!important;box-shadow:0 4px 14px rgba(20,40,76,.05);font:700 14px/1 Georgia,serif!important}
body.customer-direct .cw-tab.on{background:linear-gradient(135deg,var(--tr-navy),#164d87)!important;color:#fff!important;border-color:transparent!important}
body.customer-direct .cw-sectionhead{min-height:66px;margin:0 0 12px!important;padding:13px 18px!important;border:1px solid #e6dcfb;border-radius:19px!important;background:linear-gradient(105deg,#f8f0ff,#f0efff)!important;color:var(--tr-navy)!important}
body.customer-direct .cw-sectionhead h3{font:700 25px/1 Georgia,serif!important}
body.customer-direct .cw-sectionhead small{font-size:13px!important}
body.customer-direct .tr-menu-assistant{display:grid;grid-template-columns:1fr 104px;align-items:center;min-height:116px;margin:0 0 14px;padding:17px;border:1px solid #e2dbf8;border-radius:21px;background:linear-gradient(120deg,#fff8dd,#eee8ff 58%,#ddecff);box-shadow:var(--tr-shadow);overflow:hidden}
body.customer-direct .tr-menu-assistant h3{margin:0;color:var(--tr-navy);font:700 23px/1.05 Georgia,serif}
body.customer-direct .tr-menu-assistant p{margin:7px 0 0;color:#5e6c88;font-size:13px}
body.customer-direct .tr-mascot{display:grid;place-items:center;width:88px;height:88px;border-radius:46% 54% 43% 57%/55% 44% 56% 45%;background:radial-gradient(circle at 43% 38%,#60dcff 0 5%,#071a4d 7% 24%,#f7fbff 26% 47%,#1b55c0 49% 57%,#fff 59%);box-shadow:inset 0 0 0 3px #fff,0 8px 20px #123a8855;transform:rotate(5deg)}
body.customer-direct .tr-mascot:after{content:'⌣';color:#5de0ff;font-size:24px;font-weight:900;transform:translateY(-2px)}
body.customer-direct .cw-products{gap:11px!important}
body.customer-direct .cw-product{min-height:142px!important;padding:18px 148px 16px 18px!important;border:1px solid #ececf0!important;border-radius:21px!important;background:#fff!important;box-shadow:var(--tr-shadow)!important;color:var(--tr-navy)!important}
body.customer-direct .cw-product.has-product-image{display:block!important;padding-right:148px!important}
body.customer-direct .cw-product b{font:700 21px/1.08 Georgia,serif!important;padding:0!important}
body.customer-direct .cw-product small{display:none!important}
body.customer-direct .cw-description{display:-webkit-box!important;margin-top:7px!important;color:#5c6c88!important;font-size:13px!important;line-height:1.3!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden!important}
body.customer-direct .cw-product span{margin-top:10px!important;color:#9b6508!important;font-size:16px!important}
body.customer-direct .cw-product .product-card-image{position:absolute!important;right:-10px!important;bottom:-15px!important;width:150px!important;height:150px!important;max-width:none!important;border-radius:50%!important;object-fit:cover!important;box-shadow:-8px 2px 20px rgba(13,27,63,.09)}
body.customer-direct .cw-product:after{right:14px!important;bottom:12px!important;width:44px!important;height:44px!important;border:4px solid #fff;background:var(--tr-purple)!important;font-size:27px!important;box-shadow:0 6px 16px #6621af55}
body.customer-direct .cw-mobile-nav{z-index:110!important;left:10px!important;right:10px!important;bottom:calc(8px + env(safe-area-inset-bottom))!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;height:76px!important;padding:7px!important;border:1px solid #ececf2!important;border-radius:24px!important;box-shadow:0 16px 42px rgba(7,31,88,.18)!important}
body.customer-direct .cw-mobile-nav button{height:58px!important;gap:3px!important;border-radius:16px!important;color:#486080!important;font-size:10px!important}
body.customer-direct .cw-mobile-nav button>i{font-size:22px!important}
body.customer-direct .cw-mobile-nav button.active:not(.cw-mobile-cart){background:#edf4ff!important;color:var(--tr-navy)!important}
body.customer-direct .cw-mobile-nav .cw-mobile-cart{height:76px!important;margin-top:-22px!important;border:5px solid #fff!important;border-radius:21px!important;background:linear-gradient(145deg,#0d4e87,var(--tr-navy))!important;box-shadow:0 9px 23px rgba(7,31,88,.32)!important}
body.customer-direct .cw-mobile-nav .cw-mobile-cart.active{outline:2px solid var(--tr-gold)!important}
body.customer-direct .cw-mobile-page,body.customer-direct #webapp.cw-view-cart .cw-cart{top:calc(78px + env(safe-area-inset-top))!important;inset-block-end:0!important;padding:7px 14px calc(155px + env(safe-area-inset-bottom))!important;background:linear-gradient(180deg,#fff,var(--tr-cream))!important}
body.customer-direct .cw-mobile-page-head,body.customer-direct .cw-mobile-cart-head{position:relative!important;top:auto!important;margin:0 0 12px!important;padding:8px 4px 13px!important;background:transparent!important;color:var(--tr-navy)!important;box-shadow:none!important}
body.customer-direct .cw-mobile-page-head h1,body.customer-direct .cw-mobile-cart-head h1{font:700 clamp(38px,11vw,56px)/1 Georgia,serif!important}
body.customer-direct .cw-mobile-page-head h1 small,body.customer-direct .cw-mobile-cart-head h1 small{display:block;margin-bottom:3px;color:#a66f16;font:800 11px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.22em}
body.customer-direct .cw-mobile-page-head button,body.customer-direct .cw-mobile-cart-head button{display:none!important}
body.customer-direct #webapp.cw-view-cart .cw-cart{border:0!important;box-shadow:none!important}
body.customer-direct .cw-cart>h2{display:none}
body.customer-direct .cw-cart:before{content:'CONTROLLA IL TUO ORDINE E COMPLETA I DATI';display:block;margin:-8px 4px 16px;color:#5a6b87;font-size:13px;letter-spacing:.03em}
body.customer-direct .cw-line{position:relative;display:grid!important;grid-template-columns:88px minmax(0,1fr) auto!important;grid-template-rows:auto auto auto;gap:5px 11px;margin:0 0 12px;padding:13px!important;border:1px solid var(--tr-line)!important;border-radius:20px;background:#fff;box-shadow:var(--tr-shadow)}
body.customer-direct .cw-line-image{grid-row:1/4;width:88px;height:88px;border-radius:16px;object-fit:cover;background:#f4f1eb}
body.customer-direct .cw-line-name{grid-column:2;font:700 17px/1.2 Georgia,serif;color:var(--tr-navy)}
body.customer-direct .cw-line-total{grid-column:3;grid-row:1;font-size:16px;color:var(--tr-navy)}
body.customer-direct .cw-line-modifications{grid-column:2/4!important;display:flex!important;flex-wrap:wrap;gap:5px;color:#596b85!important;font-size:11px!important}
body.customer-direct .cw-line-actions{grid-column:2/4;display:flex;justify-content:flex-end;gap:6px}
body.customer-direct .cw-line-actions button{width:40px!important;height:40px!important;border-radius:12px!important;color:var(--tr-blue);font-weight:800}
body.customer-direct .cw-line-actions .cw-edit{width:auto!important;padding:0 14px!important}
body.customer-direct .cw-form{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:14px!important}
body.customer-direct .tr-checkout-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px;border:1px solid var(--tr-line);border-radius:20px;background:#fff;box-shadow:var(--tr-shadow)}
body.customer-direct .tr-checkout-card>h3{grid-column:1/-1;margin:0 0 2px;color:var(--tr-navy);font:700 19px/1.15 Georgia,serif}
body.customer-direct .tr-checkout-card label,body.customer-direct .tr-checkout-card .cw-wide{grid-column:auto!important}
body.customer-direct .tr-checkout-card label:has(textarea),body.customer-direct .tr-checkout-card .cw-remember,body.customer-direct .tr-checkout-card .cw-privacy{grid-column:1/-1!important}
body.customer-direct .cw-form input,body.customer-direct .cw-form select,body.customer-direct .cw-form textarea{min-height:50px!important;border:1px solid #dfe3ea!important;border-radius:13px!important;background:#fff!important;font-size:16px!important}
body.customer-direct .cw-privacy,body.customer-direct .cw-remember{padding:12px!important;border-radius:15px!important;background:#f7f8fb!important}
body.customer-direct .cw-slotnote{padding:8px 12px;border-radius:12px;background:#fff8df;color:#7d5a12}
body.customer-direct .cw-cashback-card{border:1px solid #dfd3fa!important;border-radius:18px!important;background:#f5efff!important}
body.customer-direct .tr-cart-sticky{position:sticky;z-index:8;bottom:calc(92px + env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(0,1fr) minmax(148px,1.35fr);gap:10px;align-items:center;margin:18px -4px -4px;padding:13px;border-radius:23px;background:linear-gradient(135deg,#092354,#0a4f78);box-shadow:0 14px 35px rgba(5,27,72,.32)}
body.customer-direct .tr-cart-sticky .cw-total{margin:0!important;padding:0!important;border:0!important;color:#fff;font-size:12px!important}
body.customer-direct .tr-cart-sticky .cw-total b{font-size:23px}
body.customer-direct .tr-cart-sticky .cw-confirm{margin:0!important;min-height:56px!important;border-radius:18px!important;background:linear-gradient(135deg,#ffd45d,#f1a900)!important;color:#fff!important;font-size:15px!important;box-shadow:0 7px 19px #d38c0055}
body.customer-direct .cw-orders-loading,body.customer-direct .cw-orders-auth{padding:28px;border:1px solid var(--tr-line);border-radius:22px;background:#fff;text-align:center;box-shadow:var(--tr-shadow)}
body.customer-direct .cw-orders-auth b{font:700 24px Georgia,serif}
body.customer-direct .cw-orders-auth button{min-height:48px;padding:0 18px;border:0;border-radius:14px;background:var(--tr-navy);color:#fff;font-weight:800}
body.customer-direct .cw-orders-filters{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:18px;padding:5px;border:1px solid var(--tr-line);border-radius:22px;background:#fff}
body.customer-direct .cw-orders-filters button{min-height:48px;border:0;border-radius:17px;background:transparent;color:#566983;font-weight:800}
body.customer-direct .cw-orders-filters button.on{background:linear-gradient(135deg,var(--tr-navy),#17568b);color:#fff}
body.customer-direct .cw-orders-list{display:grid;gap:12px}
body.customer-direct .cw-order-card{padding:17px;border:1px solid var(--tr-line);border-radius:22px;background:#fff;box-shadow:var(--tr-shadow)}
body.customer-direct .cw-order-card[data-order-state=active]{background:linear-gradient(130deg,#fff,#fff8df);border-color:#f1d98b}
body.customer-direct .cw-order-top,body.customer-direct .cw-order-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
body.customer-direct .cw-order-status{padding:7px 11px;border-radius:18px;background:#fff0c8;color:#8a5b00;font-weight:800}
body.customer-direct .cw-order-card[data-order-state=done] .cw-order-status{background:#e1f7ec;color:#148156}
body.customer-direct .cw-order-card h3{margin:12px 0 5px;font:700 21px Georgia,serif}
body.customer-direct .cw-order-card p,body.customer-direct .cw-order-card time{color:#63728b}
body.customer-direct .cw-order-progress{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:17px 0 14px}.cw-order-progress:before{content:'';position:absolute;left:12%;right:12%;top:15px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--tr-gold) 0 calc(var(--order-progress)*33.33%),#e5e9ef calc(var(--order-progress)*33.33%) 100%)}.cw-order-progress span{position:relative;z-index:1;display:grid;justify-items:center;gap:4px;text-align:center}.cw-order-progress i{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#eef1f5;color:#8290a5;font-style:normal;font-weight:900}.cw-order-progress span.on i{background:var(--tr-gold);color:#fff}.cw-order-progress small{font-size:9px;color:#738096}.cw-order-progress span.on small{color:var(--tr-navy);font-weight:800}
body.customer-direct .cw-profile-card{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.customer-direct .tr-data-hero{display:grid;grid-template-columns:1fr 105px;align-items:center;min-height:145px;margin-bottom:14px;padding:20px;border:1px solid #dcdaf5;border-radius:22px;background:linear-gradient(120deg,#fff,#eef0ff);overflow:hidden}
body.customer-direct .tr-data-hero h2{margin:0;font:700 28px/1 Georgia,serif}
body.customer-direct .tr-data-hero p{color:#596b87}
body.customer-direct .cw-profile-intro{border:1px solid var(--tr-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:var(--tr-shadow)}
body.customer-direct .cw-profile-form{display:grid!important;grid-template-columns:1fr 1fr!important;gap:11px;padding:15px;border:1px solid var(--tr-line);border-radius:20px;background:#fff;box-shadow:var(--tr-shadow)}
body.customer-direct .cw-profile-form label{font-size:11px!important}
body.customer-direct .cw-profile-form input{min-height:50px!important;border-radius:13px!important}
body.customer-direct .cw-profile-actions button{min-height:52px!important;border-radius:15px!important}
body.customer-direct .tr-profile-memory{display:inline-flex;padding:8px 12px;border-radius:18px;background:#e1f7ec;color:#168258;font-size:12px}
body.customer-direct .tr-profile-credit{display:grid;grid-template-columns:1fr auto;gap:4px;margin-top:13px;padding:17px;border:1px solid #f0d995;border-radius:20px;background:linear-gradient(135deg,#fff8de,#ffe6a4)}
body.customer-direct .tr-profile-credit strong{font-size:21px}.tr-profile-credit small{grid-column:1/-1;color:#725b25}
body.customer-direct .cw-home-view{padding:8px 14px calc(150px + env(safe-area-inset-bottom))!important;background:transparent!important}
body.customer-direct .tr-home-assistant{display:grid;grid-template-columns:42% 58%;min-height:265px;border:1px solid #d9ddfa;border-radius:27px;background:radial-gradient(circle at 26% 46%,#fff3c5,transparent 29%),linear-gradient(120deg,#eef2ff,#e9ecff 60%,#f7f6ff);box-shadow:var(--tr-shadow);overflow:hidden}
body.customer-direct .tr-home-robot{display:grid;place-items:center;padding:18px;background:radial-gradient(circle,#fff8d9,transparent 65%)}
body.customer-direct .tr-home-robot .tr-mascot{width:130px;height:150px;border-radius:46% 54% 36% 64%/45% 50% 50% 55%}
body.customer-direct .tr-home-copy{padding:22px 18px 18px 0}
body.customer-direct .tr-home-copy h1{margin:0 0 8px;font:700 clamp(27px,7vw,38px)/1 Georgia,serif}
body.customer-direct .tr-home-copy>p{margin:0 0 14px;color:#273a65}
body.customer-direct .tr-home-copy button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:47px;margin-top:8px;padding:0 14px;border:0;border-radius:24px;background:#fff;color:var(--tr-navy);box-shadow:0 5px 15px rgba(9,31,76,.07);font-weight:800;text-align:left}
body.customer-direct .tr-home-services{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}
body.customer-direct .tr-service-card{display:flex;align-items:center;justify-content:space-between;min-height:102px;padding:18px;border:1px solid #eee3c4;border-radius:22px;background:linear-gradient(135deg,#fff4c8,#ffc94f);color:var(--tr-navy);box-shadow:var(--tr-shadow);font-weight:900;font-size:20px}
body.customer-direct .tr-service-card:nth-child(2){background:linear-gradient(135deg,#fff,#eef1ff)}
body.customer-direct .tr-service-card.wide{grid-column:1/-1;background:linear-gradient(135deg,#eddcff,#c58cff)}
body.customer-direct .tr-home-panel{margin-top:13px;padding:17px;border:1px solid var(--tr-line);border-radius:22px;background:#fff;box-shadow:var(--tr-shadow)}
body.customer-direct .tr-home-panel h2{margin:0 0 10px;font:700 22px Georgia,serif}
body.customer-direct .tr-opening-grid{display:grid;grid-template-columns:repeat(7,minmax(68px,1fr));gap:7px;overflow-x:auto;padding-bottom:4px}.tr-opening-grid span{display:grid;gap:4px;min-width:68px;padding:10px 6px;border:1px solid #ececf1;border-radius:14px;text-align:center}.tr-opening-grid small{color:#526584}
body.customer-direct .tr-home-news{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(120deg,#f2e8ff,#fff3d7)}
body.customer-direct .tr-home-news button{min-height:48px;padding:0 17px;border:0;border-radius:24px;background:var(--tr-navy);color:#fff;font-weight:800;white-space:nowrap}
body.customer-direct .tr-home-contacts{display:grid;grid-template-columns:1fr;gap:8px}
body.customer-direct .tr-home-contacts a{padding:13px;border-radius:14px;background:#f6f8fb;color:var(--tr-navy);font-weight:750;text-decoration:none;overflow-wrap:anywhere}
@media(max-width:390px){body.customer-direct .webnav{grid-template-columns:44px minmax(0,1fr) 92px!important;padding-inline:10px!important}body.customer-direct .cw-header-back,body.customer-direct .cw-header-actions button{width:42px;height:42px;min-height:42px}body.customer-direct .tr-home-assistant{grid-template-columns:36% 64%}body.customer-direct .tr-home-robot .tr-mascot{width:95px;height:122px}body.customer-direct .tr-home-copy{padding:17px 12px 14px 0}body.customer-direct .tr-home-copy button{font-size:12px}.cw-mobile-nav button span{font-size:9px}.tr-checkout-card{grid-template-columns:1fr!important}}
@media(min-width:701px){body.customer-direct #webapp{--cw-brand-offset:92px!important}body.customer-direct .webnav{position:sticky!important;top:0!important;order:0!important;height:92px!important;min-height:92px!important;padding:10px clamp(22px,4vw,68px)!important}body.customer-direct .cw-mobile-nav{position:sticky!important;top:92px!important;order:1!important;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;height:74px!important;border-radius:0!important;padding:8px clamp(22px,4vw,68px)!important}body.customer-direct .cw-mobile-nav .cw-mobile-cart{height:58px!important;margin:0!important;border:1px solid #fff!important}body.customer-direct .cw-wrap{order:2;width:min(1180px,calc(100% - 40px))!important;padding-top:22px!important}body.customer-direct .cw-products{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.customer-direct .cw-mobile-page,body.customer-direct #webapp.cw-view-cart .cw-cart{top:166px!important;inset-inline:max(20px,calc((100vw - 1000px)/2))!important;border-radius:26px!important}body.customer-direct .cw-home-view{width:min(1050px,calc(100% - 40px));margin:20px auto}.tr-home-assistant{min-height:300px}.tr-home-contacts{grid-template-columns:repeat(3,1fr)!important}.tr-checkout-card{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
/* Reference refinement 02: compact composition, native controls, shared geometry. */
:root{--tr-shadow:0 4px 16px rgba(17,37,73,.045);--tr-header:76px;--tr-bottom:72px}
body.customer-direct{font-size:14px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.customer-direct #webapp .webnav{position:sticky!important;top:0!important;z-index:120!important;display:grid!important;grid-template-columns:44px 1fr 92px!important;height:var(--tr-header)!important;min-height:var(--tr-header)!important;max-height:var(--tr-header)!important;padding:6px 12px!important;contain:none!important;overflow:visible!important}
body.customer-direct #webapp .cw-header-back{display:grid!important;visibility:visible!important;opacity:1!important;position:static!important;width:40px!important;height:40px!important;min-height:40px!important;font-size:30px!important;padding:0!important}
body.customer-direct #webapp .cw-header-actions button{width:40px;height:40px;min-height:40px;padding:0;font-size:21px}
body.customer-direct #webapp .cw-header-brand{width:43%;max-width:190px;top:5px;height:66px}
body.customer-direct #webapp .cw-header-brand img{width:100%!important;height:66px!important;max-height:66px!important;object-position:center!important;max-width:190px!important}
body.customer-direct #webapp .cw-header-fallback{font:700 15px/1.1 Georgia,serif;letter-spacing:.025em;max-width:100%;overflow-wrap:anywhere}
body.customer-direct #webapp .cw-wrap{padding:4px 12px calc(100px + env(safe-area-inset-bottom))!important}
body.customer-direct #webapp .tr-page-title{margin:4px 5px 12px;padding-right:58px}
body.customer-direct #webapp .tr-page-title h1,body.customer-direct #webapp .cw-mobile-page-head h1,body.customer-direct #webapp .cw-mobile-cart-head h1{font:700 clamp(34px,9.4vw,48px)/1 Georgia,serif!important;margin:2px 0!important}
body.customer-direct #webapp .tr-page-title small{font-size:10px;letter-spacing:.2em}
body.customer-direct #webapp .tr-page-title p,body.customer-direct #webapp .cw-mobile-page-head p{font-size:13px;line-height:1.3;margin:5px 0;color:#526584;font-weight:400}
body.customer-direct #webapp .tr-page-title:after{font-size:30px;right:6px}
body.customer-direct #webapp .cw-menu>.cw-mode{display:flex!important;gap:5px;margin-bottom:9px!important;flex-wrap:wrap}
body.customer-direct #webapp .cw-menu>.cw-mode button{min-height:36px!important;flex:1;font-size:11px!important;padding:5px 7px!important;border-radius:12px!important;box-shadow:none!important;white-space:nowrap}
body.customer-direct #webapp .cw-search{height:44px!important;border-radius:15px!important;padding:0 38px!important;font-size:16px!important}
body.customer-direct #webapp .cw-tools:before{font-size:25px;top:5px;left:12px}
body.customer-direct #webapp .cw-tools:after{font-size:19px;top:10px;right:12px}
body.customer-direct #webapp .cw-tabs{padding:0 12px 8px!important;margin:0 -12px!important;gap:6px!important}
body.customer-direct #webapp .cw-tab{min-height:38px!important;padding:9px 12px!important;font-size:12px!important}
body.customer-direct #webapp .cw-sectionhead{min-height:46px!important;padding:10px 13px!important;margin-bottom:7px!important;border-radius:14px!important}
body.customer-direct #webapp .cw-sectionhead h3{font-size:23px!important;margin:0!important}
body.customer-direct #webapp .cw-sectionhead small{font-size:11px!important}
body.customer-direct #webapp .tr-menu-assistant{grid-template-columns:1fr 82px;min-height:74px;padding:10px 12px;margin:0 0 9px;border-radius:14px}
body.customer-direct #webapp .tr-menu-assistant h3{font-size:18px;line-height:1.12}
body.customer-direct #webapp .tr-menu-assistant p{font-size:12px;margin:4px 0;line-height:1.25}
body.customer-direct #webapp .tr-mascot{display:block;width:100%;height:100%;min-height:70px;background:none!important;box-shadow:none!important;transform:none!important;border-radius:0!important;position:relative}
body.customer-direct #webapp .tr-mascot:after{display:none}
body.customer-direct #webapp .tr-mascot img{width:100%;height:100%;object-fit:contain;display:block}
body.customer-direct #webapp .tr-menu-assistant .tr-mascot{height:83px;margin-bottom:-10px}
body.customer-direct #webapp .cw-products{gap:7px!important}
body.customer-direct #webapp .cw-product,body.customer-direct #webapp .cw-product.has-product-image{min-height:104px!important;padding:12px 46% 10px 12px!important;border-radius:15px!important;overflow:hidden}
body.customer-direct #webapp .cw-product b{font-size:18px!important;line-height:1.12!important}
body.customer-direct #webapp .cw-description{font-size:11px!important;line-height:1.3!important;margin-top:4px!important;-webkit-line-clamp:3!important}
body.customer-direct #webapp .cw-product .product-image{width:45%!important;height:100%!important;right:0!important;top:0!important;object-fit:cover!important;border-radius:0!important}
body.customer-direct #webapp .cw-product .cw-price{font-size:14px!important}
body.customer-direct #webapp .cw-home-view{padding:2px 12px calc(96px + env(safe-area-inset-bottom))!important}
body.customer-direct #webapp .tr-home-assistant{grid-template-columns:43% minmax(0,57%);min-height:0;border-radius:19px;overflow:hidden}
body.customer-direct #webapp .tr-home-robot{padding:8px 0 0;align-items:end;min-width:0}
body.customer-direct #webapp .tr-home-robot .tr-mascot{width:100%;height:224px}
body.customer-direct #webapp .tr-home-robot .tr-mascot img{object-fit:cover;object-position:top center}
body.customer-direct #webapp .tr-home-copy{padding:14px 9px 12px 0;min-width:0}
body.customer-direct #webapp .tr-home-copy h1{font:800 clamp(18px,4.7vw,27px)/1.12 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.5px;margin:0 0 6px}
body.customer-direct #webapp .tr-home-copy>p{font-size:12px;line-height:1.35;margin:0 0 8px}
body.customer-direct #webapp .tr-home-copy button{min-height:40px;padding:5px 9px;gap:5px;margin-top:5px;font-size:11px;line-height:1.15;border-radius:22px}
body.customer-direct #webapp .tr-home-copy button span{flex:1}
body.customer-direct #webapp .tr-home-services{gap:7px;margin-top:8px}
body.customer-direct #webapp .tr-service-card{min-height:68px;padding:12px;font-size:16px;border-radius:15px;gap:6px}
body.customer-direct #webapp .tr-service-card.wide{min-height:59px}
body.customer-direct #webapp .tr-home-panel{padding:12px;margin-top:8px;border-radius:15px}
body.customer-direct #webapp .tr-home-panel h2{font:750 17px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:0 0 7px}
body.customer-direct #webapp .tr-home-panel p{font-size:12px;margin:3px 0}
body.customer-direct #webapp .tr-opening-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;overflow:visible;padding:0}
body.customer-direct #webapp .tr-opening-grid span{min-width:0;padding:8px 2px;border-radius:9px;font-size:10px}
body.customer-direct #webapp .tr-opening-grid small{font-size:9px;overflow-wrap:anywhere}
body.customer-direct #webapp .tr-hours-state{display:block;font-size:11px;margin:-2px 0 8px;color:#526584}
body.customer-direct #webapp .tr-home-news{min-height:75px}
body.customer-direct #webapp .tr-home-news button{min-height:40px;font-size:12px;padding:0 12px}
body.customer-direct #webapp .tr-home-contacts a{padding:9px;font-size:12px;border-radius:10px}
body.customer-direct #webapp .cw-mobile-nav{position:fixed!important;top:auto!important;left:max(9px,calc((100vw - 720px)/2))!important;right:max(9px,calc((100vw - 720px)/2))!important;bottom:env(safe-area-inset-bottom,0px)!important;width:auto!important;height:var(--tr-bottom)!important;padding:5px!important;border-radius:20px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important;align-items:center!important;box-shadow:0 -2px 18px #182f5814!important}
body.customer-direct #webapp .cw-mobile-nav button{display:flex!important;flex-direction:column!important;min-height:0!important;height:58px!important;padding:3px!important;gap:3px!important;border:0!important;border-radius:14px!important;font-size:11px!important}
body.customer-direct #webapp .cw-mobile-nav button span{font-size:11px!important}
body.customer-direct #webapp .cw-mobile-nav .cw-mobile-cart{height:66px!important;margin:-8px 0 0!important;border:3px solid white!important;border-radius:16px!important;box-shadow:0 3px 12px #0b2b5926!important;color:white!important}
body.customer-direct #webapp .cw-mobile-cart span,body.customer-direct #webapp .cw-mobile-cart small{color:#fff!important;font-size:10px!important}
body.customer-direct #webapp .cw-mobile-nav svg{width:22px;height:22px}
body.customer-direct #webapp .cw-mobile-page,body.customer-direct #webapp.cw-view-cart .cw-cart{top:var(--tr-header)!important;inset-inline:max(0px,calc((100vw - 900px)/2))!important;bottom:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:5px 12px calc(110px + env(safe-area-inset-bottom))!important}
body.customer-direct #webapp .cw-mobile-page-head,body.customer-direct #webapp .cw-mobile-cart-head{display:block!important;margin:0 0 12px!important;padding:4px 5px!important}
body.customer-direct #webapp .tr-data-hero{min-height:110px;padding:13px;border-radius:15px;grid-template-columns:minmax(0,1fr) 105px;gap:0;margin-bottom:8px;text-align:left}
body.customer-direct #webapp .tr-data-hero h2{font-size:23px;line-height:1.05}
body.customer-direct #webapp .tr-data-hero p{font-size:12px;line-height:1.25;margin:5px 0}
body.customer-direct #webapp .tr-data-hero .tr-mascot{height:108px}
body.customer-direct #webapp .tr-profile-memory{font-size:10px;padding:6px 8px}
body.customer-direct #webapp .cw-profile-intro{display:none!important}
body.customer-direct #webapp .cw-profile-form{display:block!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.customer-direct #webapp .tr-profile-group{margin-bottom:7px;background:#fff;border:1px solid #ececf0;border-radius:14px;box-shadow:var(--tr-shadow);text-align:left}
body.customer-direct #webapp .tr-profile-group summary{display:flex;align-items:center;gap:10px;padding:11px;min-height:61px;cursor:pointer;list-style:none}
body.customer-direct #webapp .tr-profile-group summary::-webkit-details-marker{display:none}
body.customer-direct #webapp .tr-profile-group summary i{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#eef2ff;color:var(--tr-blue)}
body.customer-direct #webapp .tr-profile-group summary span{flex:1;min-width:0}
body.customer-direct #webapp .tr-profile-group summary b{display:block;font-size:14px}
body.customer-direct #webapp .tr-profile-group summary small{display:block;font-size:11px;color:#526584;overflow-wrap:anywhere;line-height:1.3;margin-top:3px}
body.customer-direct #webapp .tr-profile-group summary em{font-size:11px;font-style:normal;color:var(--tr-blue)}
body.customer-direct #webapp .tr-profile-fields{display:grid;gap:8px;padding:0 12px 12px}
body.customer-direct #webapp .cw-profile-actions button{min-height:44px!important;font-size:12px!important}
body.customer-direct .tr-push-card{font-size:13px!important;padding:14px!important;border-radius:15px!important}
body.customer-direct .tr-push-card h3{font-size:17px!important;margin:0 0 8px!important}
body.customer-direct .tr-push-card p{font-size:13px!important;line-height:1.4!important}
body.customer-direct .tr-ai-customer-open{bottom:calc(82px + env(safe-area-inset-bottom))!important;right:14px!important;min-height:40px!important;padding:10px 14px!important;font-size:13px!important;border-radius:24px!important;box-shadow:0 4px 14px #173a5833!important}
body.customer-direct:has(#webapp.cw-view-home) .tr-ai-customer-open{display:none!important}
body.customer-direct:has(#webapp.cw-view-cart) .tr-ai-customer-open{position:relative!important;bottom:auto!important;right:auto!important;margin:12px 14px 90px auto!important;display:block!important}
body.customer-direct #webapp .cw-orders-auth{padding:20px!important;border-radius:16px!important}
body.customer-direct #webapp .cw-orders-auth b{font-size:23px!important}
body.customer-direct #webapp .cw-orders-auth p{font-size:14px!important}
body.customer-direct #webapp .cw-orders-auth button{min-height:44px!important;font-size:14px!important;padding:10px 18px!important}
@media(min-width:701px){body.customer-direct #webapp .cw-home-view{max-width:760px;width:100%}body.customer-direct #webapp .tr-home-robot .tr-mascot{height:280px}body.customer-direct #webapp .tr-home-copy{padding:24px 24px 20px 0}body.customer-direct #webapp .tr-home-copy h1{font-size:30px}body.customer-direct #webapp .tr-home-copy>p{font-size:17px}body.customer-direct #webapp .tr-home-copy button{min-height:48px;font-size:15px}body.customer-direct #webapp .cw-wrap{max-width:1000px;margin-inline:auto!important}body.customer-direct #webapp .cw-products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
body.customer-direct #webapp .tr-service-card{position:relative;padding:8px 10px 8px 6px;justify-content:flex-start}
body.customer-direct #webapp .tr-service-card span{flex:1;font-size:15px;line-height:1.1;text-align:left}
body.customer-direct #webapp .tr-service-card small{display:block;font-size:10px;font-weight:400;line-height:1.25;margin-top:4px;color:#586783}
body.customer-direct #webapp .tr-service-art{display:block;flex:0 0 57px;height:57px;background-image:url('/assets/customer-ui/services.png');background-size:300% 100%;background-repeat:no-repeat;background-position:left center}
body.customer-direct #webapp .tr-service-art.takeaway{background-position:center}
body.customer-direct #webapp .tr-service-art.booking{background-position:right}
body.customer-direct #webapp .tr-service-card>b{display:grid;place-items:center;border-radius:50%;background:#ffffff80;flex:0 0 25px;height:25px;font-size:23px}
body.customer-direct #webapp .cw-mobile-page-head{flex-wrap:wrap}
body.customer-direct #webapp .cw-mobile-page-body{padding-bottom:50px}

body.customer-direct .tr-ai-customer-open.tr-ai-inline{position:static!important;display:block!important;margin:14px 0 14px auto!important;min-height:44px!important;max-width:100%;box-shadow:none!important}
body.customer-direct #webapp .cw-header-notifications svg{stroke:#cf9012}
body.customer-direct #webapp .tr-home-copy button{min-height:44px}
body.customer-direct #webapp .cw-tab{min-height:44px!important}
/* Product cards are already actionable buttons. No decorative overlay over the photo. */
body.customer-direct #webapp .cw-product:after{content:none!important;display:none!important}
body.customer-direct #webapp .cw-product .product-card-image{width:47%!important;height:120%!important;right:0!important;bottom:-12%!important;object-fit:cover!important;border-radius:50%!important}
body.customer-direct #webapp .cw-product:not(.has-product-image){padding-right:66px!important}
body.customer-direct #webapp.cw-view-cart .tr-cart-sticky{position:fixed!important;left:max(8px,calc((100vw - 720px)/2));right:max(8px,calc((100vw - 720px)/2));bottom:calc(var(--tr-bottom) + env(safe-area-inset-bottom,0px) + 8px)!important;margin:0!important;z-index:100;padding:10px;border-radius:19px}
body.customer-direct #webapp.cw-view-cart .cw-cart{padding-bottom:calc(var(--tr-bottom) + var(--tr-summary-height,96px) + env(safe-area-inset-bottom,0px) + 40px)!important}
body.customer-direct #webapp .cw-mobile-cart-head:before{display:none!important}
body.customer-direct #webapp .cw-cart:before{display:none!important}
body.customer-direct #webapp .cw-mobile-cart-head p{font-size:13px;font-weight:400;color:#526584;line-height:1.3;margin:6px 0}
body.customer-direct:has(#webapp.cw-view-cart) .toast{bottom:calc(var(--tr-bottom,72px) + 120px + env(safe-area-inset-bottom))!important;pointer-events:none}
/* Booking and menu refinement: keep controls native and preserve their handlers. */
body.customer-direct #webapp .cw-booking{padding:14px;border-width:1px;border-radius:18px;max-width:660px;margin:4px auto 20px;box-shadow:0 4px 18px #17395709}
body.customer-direct #webapp .cw-bookhero{gap:10px;margin-bottom:14px;align-items:flex-start}
body.customer-direct #webapp .cw-bookhero i{flex:0 0 36px;width:36px;height:36px;border-radius:12px;font-size:20px}
body.customer-direct #webapp .cw-bookhero h2{font-size:22px;line-height:1.15}
body.customer-direct #webapp .cw-bookhero p{font-size:13px;line-height:1.35;margin:5px 0 0}
body.customer-direct #webapp .cw-bookform{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 10px}
body.customer-direct #webapp .cw-bookform label{font-size:12px;line-height:1.3;font-weight:650}
body.customer-direct #webapp .cw-bookform input,body.customer-direct #webapp .cw-bookform select,body.customer-direct #webapp .cw-bookform textarea{min-height:44px;margin-top:5px;border-width:1px;border-radius:10px;padding:9px 8px;font-size:16px;line-height:1.2}
body.customer-direct #webapp .cw-bookform label:has(#bkPhone),body.customer-direct #webapp .cw-bookwide,body.customer-direct #webapp .cw-booksend,body.customer-direct #webapp #bkEmailHelp{grid-column:1/-1}
body.customer-direct #webapp .cw-bookform textarea{min-height:65px}
body.customer-direct #webapp .cw-bookprivacy{padding:10px;font-size:12px}
body.customer-direct #webapp .cw-bookprivacy input{min-height:0;width:18px;height:18px;flex:0 0 18px;margin-top:0}
body.customer-direct #webapp .cw-booksend{min-height:46px;font-size:15px;box-shadow:none}
body.customer-direct #webapp #bkEmailHelp{font-size:12px;margin:0;line-height:1.35;color:#65738a}
body.customer-direct #webapp .tr-service-art.takeaway{clip-path:inset(0 5%)}
body.customer-direct #webapp .cw-mobile-count[hidden]{display:none!important}
body.customer-direct #webapp .tr-menu-assistant{min-height:62px;padding:8px 12px;grid-template-columns:minmax(0,1fr) 58px}
body.customer-direct #webapp .tr-menu-assistant .tr-mascot{height:64px;min-height:0}
body.customer-direct #webapp .tr-menu-assistant h3{font-size:17px}
body.customer-direct #webapp .tr-menu-assistant p{font-size:12px;margin:3px 0 0}
body.customer-direct #webapp .feedback-prompt{display:flex;align-items:center;gap:12px;padding:12px;margin:18px 0;border:1px solid #e5e5ee;border-radius:14px;background:#fff}
body.customer-direct #webapp .feedback-prompt span{flex:1;min-width:0}
body.customer-direct #webapp .feedback-prompt b,body.customer-direct #webapp .feedback-prompt small{display:block;font-size:13px;line-height:1.3}
body.customer-direct #webapp .feedback-prompt small{font-size:12px;margin-top:4px;color:#65738a}
body.customer-direct #webapp .feedback-prompt button{border:0;background:#edf2ff;color:var(--tr-navy);border-radius:10px;padding:8px;min-height:44px;font-size:12px;max-width:110px}
@media(max-width:359px){body.customer-direct #webapp .cw-bookform{grid-template-columns:minmax(0,1fr)}}
body.customer-direct #webapp .feedback-prompt[hidden]{display:none!important}

/* Functional catalog controls, kept separate from product activation. */
#webapp .cw-tools:after{display:none!important}
#webapp .cw-filter{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;background:transparent;color:var(--ink);font-size:26px}
#webapp .cw-product-holder{position:relative;min-width:0}
#webapp .cw-product-holder>.cw-product{width:100%;height:100%}
#webapp .cw-favorite{position:absolute;right:8px;top:8px;width:44px;height:44px;border:1px solid #e8e9ef;border-radius:50%;background:#fff;color:#102b59;font-size:25px;z-index:2}
#webapp .cw-favorite[aria-pressed=true]{color:#7652b9}
#webapp .cw-booking{margin-bottom:calc(120px + env(safe-area-inset-bottom))}
body.customer-direct #webapp{scroll-padding-bottom:calc(110px + env(safe-area-inset-bottom))}
body.customer-direct #webapp .cw-booking{margin-bottom:calc(120px + env(safe-area-inset-bottom))}
body.customer-direct #webapp .cw-booksend{scroll-margin-bottom:calc(110px + env(safe-area-inset-bottom))}

/* Shared view lifecycle must also apply outside the phone breakpoint. */
body.customer-direct #webapp .cw-mobile-page[hidden],body.customer-direct #webapp .cw-home-view[hidden]{display:none!important;pointer-events:none!important}
@media(min-width:701px){
 body.customer-direct #webapp{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;display:block!important;overflow-x:hidden!important;overflow-y:auto!important;padding-top:var(--tr-header)!important;box-sizing:border-box}
 body.customer-direct #webapp .webnav{position:fixed!important;inset:0 0 auto!important;width:100%!important}
 body.customer-direct #webapp .cw-mobile-nav{position:fixed!important;top:auto!important;bottom:calc(8px + env(safe-area-inset-bottom))!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(720px,calc(100% - 32px))!important;height:72px!important;border-radius:22px!important;padding:7px 10px!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;z-index:130!important}
 body.customer-direct #webapp .cw-mobile-nav button{flex-direction:column;border:0;gap:2px;min-width:0}
 body.customer-direct #webapp .cw-hero{display:none!important}
 body.customer-direct #webapp .cw-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
 body.customer-direct #webapp .cw-cart{display:none!important}
 body.customer-direct #webapp.cw-view-cart .cw-cart{display:block!important}
 body.customer-direct #webapp.cw-view-home .cw-wrap,body.customer-direct #webapp:has(>.cw-mobile-page:not([hidden])) .cw-wrap{visibility:hidden!important;pointer-events:none!important}
 body.customer-direct #webapp.cw-view-home .cw-wrap{display:none!important}
 body.customer-direct #webapp .cw-home-view:not([hidden]){display:block!important;margin:12px auto}
 body.customer-direct #webapp .cw-mobile-page{overflow-x:hidden!important;overflow-y:auto!important}
 body.customer-direct #webapp .cw-profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
 body.customer-direct #webapp .cw-profile-actions button{border:1px solid var(--tr-line);border-radius:12px;padding:10px;background:white;color:var(--tr-navy)}
 body.customer-direct #webapp .cw-profile-actions .cw-profile-save{background:var(--tr-navy);color:white}
}

/* Dining shifts grouped availability */
#cwBookingForm select optgroup{font-weight:800}#cwBookingForm select option{font-weight:500}

.cw-shift-modal-back{position:fixed;inset:0;z-index:99999;background:rgba(12,28,40,.62);display:grid;place-items:center;padding:20px;backdrop-filter:blur(4px)}
.cw-shift-modal{width:min(520px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.28);text-align:center;position:relative}
.cw-shift-modal-x{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer}
.cw-shift-modal-icon{font-size:34px}.cw-shift-modal h3{margin:8px 0 10px;font-size:24px}.cw-shift-modal p{font-size:16px;line-height:1.5;margin:0 auto 18px;max-width:430px}
.cw-shift-modal-times{display:flex;justify-content:center;align-items:center;gap:14px;background:#f4f7f9;border-radius:16px;padding:14px;margin:0 0 18px;font-size:22px}
.cw-shift-modal-ok{min-height:48px;padding:0 24px}

.cw-time-groups{display:grid;gap:14px;margin-top:8px}
.cw-turn-group{display:grid;gap:8px}
.cw-turn-group h3{margin:0;font-size:14px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#5b4a73}
.cw-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.cw-time-card{min-height:66px;border:2px solid #ddd4e8;border-radius:14px;background:#fff;color:#29465d;padding:8px 6px;display:grid;place-items:center;gap:3px}
.cw-time-card strong{font-size:20px;line-height:1}
.cw-time-card span{font-size:12px;font-weight:700;color:#687b8b}
.cw-time-card span b{font-size:14px;color:#a13232}
.cw-time-card em{font-style:normal;font-size:12px;color:#9b3f3f}
.cw-time-card.on{border-color:#7a50c5;background:#f4efff;box-shadow:0 0 0 2px #7a50c522}
.cw-time-card:disabled{opacity:.5}
@media(max-width:560px){.cw-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Latest news stays in the page flow above the fixed navigation. */
body.customer-direct #webapp .tr-home-news{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:9px;background:linear-gradient(120deg,#f7f2ff,#fff8e8)}
body.customer-direct #webapp .tr-home-news-copy h2{margin:0 0 4px}
body.customer-direct #webapp .tr-home-news-copy p{font-size:13px;line-height:1.4;color:#526584}
body.customer-direct #webapp .tr-home-news-latest{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:1px solid #e9e7ef;border-radius:12px;background:#fff}
body.customer-direct #webapp .tr-home-news-latest[hidden]{display:none}
body.customer-direct #webapp .tr-home-news-latest img{width:72px;height:64px;object-fit:cover;border-radius:9px;background:#f2f4f6}
body.customer-direct #webapp .tr-home-news-latest span{display:grid;gap:3px;min-width:0}
body.customer-direct #webapp .tr-home-news-latest small{font-size:10px;color:#718092}
body.customer-direct #webapp .tr-home-news-latest b{font-size:13px;line-height:1.3;color:#173a58;overflow-wrap:anywhere}
body.customer-direct #webapp .tr-home-news .tr-home-news-link{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;padding:0 3px;border:0;border-radius:0;background:transparent;color:var(--tr-navy);font-size:13px;font-weight:800;text-align:left}
body.customer-direct #webapp .tr-home-news .tr-home-news-link span{font-size:19px}
