
/* src/css/style.css */
:root{color-scheme:dark;--bg:#0a0a0b;--surface:#121214;--surface2:#19191b;--line:#2a2a2d;--text:#f7f7f7;--muted:#a1a1a7;--accent:#e75d5d;--good:#89d1ac;--warn:#f2ca80;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.65}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.8rem,5.4vw,5.5rem);line-height:1.04;letter-spacing:-.055em}h2{font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.16;letter-spacing:-.035em}h3{line-height:1.25}p{color:var(--muted)}small{font-size:.78rem;color:var(--muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.wrap{width:min(1192px,calc(100% - 48px));margin-inline:auto}#bg{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:-2}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 600px 440px at 90% 20%,#e75d5d0a,transparent),radial-gradient(ellipse 900px 600px at 8% 8%,#ffffff08,transparent);pointer-events:none;z-index:-1}
.site-header{position:sticky;top:0;z-index:30;background:#0b0b0de8;backdrop-filter:blur(22px);border-bottom:1px solid #ffffff14}.header-inner{min-height:88px;display:flex;align-items:center;gap:23px}.brand{display:block;flex:none;line-height:0}.brand img{width:160px;height:auto;max-height:60px;object-fit:contain;transition:filter .25s}.brand:hover img{filter:drop-shadow(0 0 10px #ffffff77)}.site-nav{display:flex;align-items:center;gap:4px;margin-left:auto;white-space:nowrap}.site-nav a{font-size:.87rem;font-weight:600;color:#b7b7bd;padding:9px 10px;border-radius:3px;transition:color .2s,background .2s}.site-nav a:hover,.site-nav a.active{color:#fff;background:#ffffff12}.site-nav a.active:after{content:"";display:block;height:2px;background:var(--accent);margin-top:2px}.header-tools{display:flex;align-items:center;gap:8px}.lang-switch{display:flex;padding:3px;border:1px solid var(--line);background:#ffffff08}.lang-switch button{border:0;background:none;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;min-width:30px;padding:6px 5px}.lang-switch button.selected{background:#fff;color:#111}.sound-toggle,.mobile-menu,.icon-button{border:1px solid var(--line);background:#ffffff06;color:#fff}.sound-toggle{height:35px;min-width:35px}.mobile-menu{display:none;padding:7px 10px}
.button{border:1px solid transparent;min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:10px 20px;font-weight:750;font-size:.87rem;line-height:1.25;transition:transform .18s,background .18s,border .18s}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.45;cursor:default;transform:none}.button.primary{background:#f5f5f5;color:#0e0e0e}.button.primary:hover{background:#fff}.button.outline{border-color:#64646a;background:#ffffff05;color:#fff}.button.outline:hover{border-color:#fff}.button.subtle{background:transparent;color:#e0e0e0;border-color:var(--line)}.button.small{min-height:36px;padding:7px 13px;font-size:.76rem}.text-button{color:#e4e4e4;background:none;border:0;padding:7px 0;text-align:left;font-weight:700;font-size:.85rem}.text-button:hover{color:var(--accent)}.icon-button{font-size:1.6rem;line-height:1;width:35px;height:35px}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.eyebrow,.card-num,.film-index{font-size:.73rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#b9b9bf}.eyebrow{display:inline-block;border-left:2px solid var(--accent);padding-left:11px}.muted{color:var(--muted)}
.hero{min-height:680px;padding-top:clamp(72px,10vh,130px);padding-bottom:100px;display:grid;grid-template-columns:1fr minmax(400px,.9fr);gap:clamp(35px,6vw,95px);align-items:center}.hero-copy{max-width:580px}.hero h1{margin:25px 0 24px}.hero-copy>p{font-size:1.05rem;line-height:1.8;max-width:530px}.hero .actions{margin-top:31px}.hero-film{min-width:0;border:1px solid #46464a;background:#0d0d0e;padding:9px;box-shadow:0 30px 75px #0008;transform:translateY(25px)}.film-top{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#eee;padding:8px 9px 12px;font-size:.75rem;font-weight:700}.hero-film video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#080808;outline:none}.hero-film p{margin:11px 10px 7px;font-size:.75rem}.section{padding-top:42px;padding-bottom:75px}.section.compact{padding-top:0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px}.section-head>span{color:var(--accent);font-size:.75rem;letter-spacing:.15em;font-weight:800;white-space:nowrap}.section-head h2{margin:0;max-width:610px}.cards{display:grid;gap:16px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#171719e8;border:1px solid var(--line);padding:27px;transition:border-color .2s,transform .2s}.service-card{min-height:285px;display:flex;flex-direction:column}.service-card:hover,.card:hover{border-color:#6c6c70}.service-card:hover{transform:translateY(-3px)}.service-card h3{font-size:1.26rem;margin:42px 0 9px}.service-card p{font-size:.88rem}.arrow{margin-top:auto;font-size:1.5rem;color:var(--accent)}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.steps>div{padding:26px 16px 29px;border-right:1px solid var(--line)}.steps>div:first-child{padding-left:0}.steps>div:last-child{border-right:0}.steps b{display:block;color:var(--accent);font-size:.78rem;margin-bottom:17px}.steps span{font-size:.91rem;font-weight:700}.cta{border:1px solid var(--line);padding:40px;margin-bottom:80px;display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap;background:linear-gradient(105deg,#19191b,#0f0f10)}.cta h2,.cta p{margin:0}.cta p{max-width:350px}.page-intro{padding-top:76px;padding-bottom:45px}.page-intro h1{margin:22px 0}.page-intro>p{max-width:640px;font-size:1.03rem}.pricing{grid-template-columns:1.3fr .7fr}.price-card h2,.custom-card h2{margin:24px 0 12px}.chip{display:inline-block;border:1px solid #555;color:#ddd;font-size:.65rem;letter-spacing:.13em;padding:5px 10px}.price{font-size:2.6rem;font-weight:800;letter-spacing:-.05em;margin:25px 0;border-bottom:1px solid var(--line);padding-bottom:20px}.price small{font-size:.73rem;letter-spacing:0;font-weight:500}.features,.terms{list-style:none;padding:0}.features li{padding:8px 0;color:#dadade}.price-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:25px}.price-foot span{color:var(--muted)}.price-foot b{color:#fff}.custom-card{display:flex;flex-direction:column}.custom-card>button{align-self:flex-start;margin-top:auto}.terms-card{padding:30px 37px}.terms li{color:#c9c9ce;padding:7px 0 7px 20px;position:relative}.terms li:before{content:"↗";position:absolute;left:0;color:var(--accent)}.faq{max-width:870px;margin:55px auto 70px}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:21px 3px;cursor:pointer;font-weight:700;display:flex;justify-content:space-between;gap:12px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--accent);font-size:1.3rem;font-weight:400}.faq p{max-width:750px;padding:0 3px 16px}.auth-page{min-height:60vh;display:grid;place-items:center;padding-top:70px;padding-bottom:90px}.auth-card{width:min(100%,520px);padding:43px}.auth-card h1{font-size:2.4rem;margin:24px 0 13px}.auth-card>p{font-size:.84rem}.auth-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:26px}.auth-links button{background:none;color:#cfcfd2;border:0;padding:4px 0;text-decoration:underline}.auth-links button:hover{color:#fff}
form label:not(.method):not(.check){display:block;font-size:.83rem;font-weight:700;color:#ddd;margin:15px 0 8px}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;margin-top:7px;background:#0d0d0e;border:1px solid #414145;border-radius:0;color:#fff;padding:12px 14px;outline:none;min-height:44px}input:focus,textarea:focus,select:focus{border-color:#eee!important}textarea{resize:vertical;min-height:110px}.auth-card form>.button,.ticket-form form>.button{margin-top:22px;width:100%}.check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.82rem;color:#ddd;margin:19px 0}.check input{accent-color:var(--accent);margin:4px 0;flex:none}.method{display:flex;gap:11px;border:1px solid var(--line);padding:15px;margin:10px 0;cursor:pointer}.method:has(input:checked){border-color:#fff;background:#ffffff0b}.method.disabled{opacity:.5;cursor:not-allowed}.method input{accent-color:var(--accent);align-self:flex-start;margin-top:5px}.method small{display:block;margin-top:3px}.terms-inline{max-height:220px;overflow:auto;border:1px solid var(--line);padding:15px;margin-top:20px}.terms-inline h3{margin-bottom:8px}.terms-inline .terms{margin:0}.terms-inline li{font-size:.77rem}.checkout-due{display:flex;justify-content:space-between;gap:10px;padding:20px 0;border-block:1px solid var(--line)}.checkout-due b{font-size:1.3rem}
.payment-hero{display:flex;justify-content:center;margin-bottom:6px}.payment-icon{width:60px;height:60px;color:#fff}
.choice-grid{margin-top:18px}.choice-card{font:inherit;color:inherit;width:100%;display:flex;flex-direction:column;gap:8px;align-items:flex-start;text-align:left;cursor:pointer}.choice-card b{font-size:1rem}.choice-card small{color:var(--muted);line-height:1.5}.choice-card .arrow{margin-top:auto;font-size:1.1rem}.choice-card:disabled{opacity:.45;cursor:not-allowed}.choice-card:disabled:hover{transform:none;border-color:var(--line)}
.payment-success{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;padding:6px 0 2px}.payment-success .payment-icon{width:74px;height:74px}.payment-success .button{margin-top:8px}
@media(max-width:600px){.choice-grid.cards.two{grid-template-columns:1fr}}
.account-intro{padding-bottom:16px}.account-summary{display:flex;align-items:center;gap:35px;border-block:1px solid var(--line);padding:20px 0;flex-wrap:wrap}.account-summary small{display:block}.account-summary strong{font-size:.95rem}.account-summary .text-button{margin-left:auto}.order-card{margin-bottom:15px}.order-top,.order-meta,.order-actions,.admin-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.order-top h3{margin:10px 0 0}.order-meta{color:var(--muted);font-size:.78rem;margin:18px 0}.badge{display:inline-block;border:1px solid #79797d;padding:3px 9px;color:#e4e4e4;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.badge.answered{color:var(--good);border-color:#5c9779}.badge.closed{color:var(--muted)}.payment-panel{background:#101011;border-left:2px solid var(--accent);padding:16px;margin:18px 0}.payment-panel p{font-size:.78rem;margin:7px 0 13px}.payment-panel b{font-size:.85rem}.order-actions{border-top:1px solid var(--line);padding-top:10px}.order-actions .text-button:last-child{color:var(--muted)}.notice-line{color:var(--warn);font-size:.8rem}.history{border-top:1px solid var(--line);margin-top:15px;padding-top:9px}.history summary{font-size:.75rem;color:var(--muted);cursor:pointer}.history p{font-size:.76rem;margin:8px 0}.admin-actions{border-top:1px solid var(--line);padding-top:14px}.admin-actions select{flex:1;max-width:300px}.support-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(350px,1.2fr);gap:30px;padding-bottom:100px}.support-layout h2{font-size:1.5rem}.ticket-list{border-top:1px solid var(--line)}.ticket-row{width:100%;display:flex;align-items:center;gap:18px;text-align:left;padding:15px 8px;border:0;border-bottom:1px solid var(--line);color:#fff;background:#121214b8}.ticket-row:hover{background:#232326}.ticket-row>span:first-child{flex:1;min-width:0}.ticket-row b{display:block;font-size:.86rem;overflow-wrap:anywhere}.ticket-row small{display:block}.ticket-row .arrow{margin:0}.ticket-row.static{cursor:default}.empty{border:1px dashed #555;padding:28px;color:var(--muted);font-size:.86rem}.empty a{display:inline-block;color:#fff;margin-left:8px;text-decoration:underline}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabs button{background:#19191b;border:1px solid var(--line);color:#ccc;padding:9px 15px;font-weight:700;font-size:.78rem}.tabs button.selected{background:#fff;color:#111;border-color:#fff}.settings{max-width:650px}.settings hr{border:0;border-top:1px solid var(--line);margin:27px 0}.notice{border:1px solid var(--line);padding:25px;margin-block:20px}.notice.error{border-left:3px solid var(--accent)}.notice button{background:none;color:#fff;text-decoration:underline;border:0;margin-left:10px}.loading{min-height:45vh;display:grid;place-items:center;color:var(--muted)}
.overlay{position:fixed;inset:0;background:#000c;backdrop-filter:blur(5px);z-index:50;display:grid;place-items:center;padding:20px}.dialog{width:min(100%,650px);max-height:min(90vh,850px);overflow:auto;background:#171719;border:1px solid #666;padding:29px;box-shadow:0 30px 80px #000d}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.dialog h2{margin:17px 0 13px}.dialog>p{font-size:.88rem}.messages{min-height:140px;max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:9px;border-block:1px solid var(--line);padding:15px 0;margin:16px 0}.bubble{max-width:85%;padding:11px 13px;border:1px solid #424248;background:#212124}.bubble.own{align-self:flex-end;background:#eee;color:#111}.bubble p{color:inherit;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.84rem}.bubble small{font-size:.63rem}.bubble.own small{color:#555}.reply-form>.button{margin-top:10px}.toast{position:relative;background:#1c251f;border-left:3px solid var(--good);border:1px solid #516957;padding:12px 16px;box-shadow:0 10px 35px #0009;max-width:350px;font-size:.82rem}.toast.error{background:#2b1b1b;border-color:var(--accent)}.toast.warn{background:#2d281e;border-color:var(--warn)}#toasts{position:fixed;right:16px;top:100px;z-index:70;display:grid;gap:8px}.site-footer{border-top:1px solid var(--line);background:#0d0d0e}.footer-inner{min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-inner img{height:auto}.footer-inner a{font-size:.77rem;color:var(--muted)}.footer-inner a:hover{color:#fff}
@media(max-width:1100px){.header-inner{gap:12px}.brand img{width:135px}.site-nav a{padding:8px;font-size:.78rem}.hero{grid-template-columns:1fr 1fr;gap:30px}.hero h1{font-size:clamp(2.7rem,5vw,4.5rem)}}
@media(max-width:850px){.header-inner{min-height:75px}.mobile-menu{display:block;margin-left:auto;font-size:.83rem}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#141416;border-bottom:1px solid #444;padding:14px 24px;white-space:normal}.site-nav.open{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.site-nav a{font-size:.9rem}.hero{grid-template-columns:1fr;min-height:0;padding-top:68px;padding-bottom:65px}.hero-film{transform:none;max-width:620px}.cards.three{grid-template-columns:repeat(2,1fr)}.support-layout{grid-template-columns:1fr}.pricing{grid-template-columns:1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 32px)}.header-inner{gap:8px}.brand img{width:115px}.header-tools{gap:4px}.lang-switch button{min-width:26px;padding:6px 3px}.sound-toggle{min-width:29px;height:34px}.mobile-menu{padding:5px 7px}.mobile-menu span{display:none}.hero{padding-top:56px}.hero h1{font-size:clamp(2.6rem,12vw,4rem)}.hero-copy>p{font-size:.93rem}.section{padding-top:25px;padding-bottom:55px}.section-head{display:block}.section-head h2{margin-top:10px}.cards.two,.cards.three{grid-template-columns:1fr}.service-card{min-height:230px}.steps{grid-template-columns:repeat(2,1fr)}.steps>div:nth-child(2){border-right:0}.steps>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.steps>div:nth-child(3){padding-left:0}.page-intro{padding-top:53px}.price{font-size:2.1rem}.card{padding:20px}.cta{margin-bottom:45px}.auth-card{padding:28px}.dialog{padding:20px}.account-summary{gap:15px}.footer-inner{padding:22px 0;min-height:110px}.footer-inner img{width:100px}.footer-inner small{max-width:180px}#toasts{top:80px;left:16px;right:16px}.toast{max-width:none}}
.support-intro{padding-bottom:22px}.support-center{display:grid;grid-template-columns:minmax(270px,350px) minmax(0,1fr);gap:20px;padding-bottom:75px;align-items:start}.support-sidebar{min-width:0}.support-sidebar h2{font-size:1.12rem}.support-sidebar .ticket-list{max-height:42vh;overflow-y:auto}.support-sidebar .ticket-form{margin-top:18px}.ticket-form summary{cursor:pointer;font-weight:800;font-size:1rem}.ticket-form form{margin-top:17px}.ticket-row.selected{background:#2a2a2e;box-shadow:inset 3px 0 var(--accent)}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}.support-chat{min-width:0;background:#19191b;border:1px solid var(--line);display:flex;flex-direction:column;min-height:540px;max-height:calc(100vh - 175px);padding:20px}.chat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:16px}.chat-header h2{font-size:1.3rem;margin:8px 0}.chat-empty{margin:auto;text-align:center;max-width:390px}.chat-empty img{display:block;margin:auto auto 18px;max-width:100%}.support-chat .messages{flex:1;min-height:150px;max-height:none;overflow-y:auto;border:0;margin:10px 0}.support-chat .reply-form{border-top:1px solid var(--line);padding-top:12px}.support-chat .reply-form label{font-size:.85rem}.support-chat .reply-form textarea{min-height:72px}.support-chat .ticket-admin{margin-top:12px}.support-chat .ticket-offers{overflow:auto;max-height:160px}
@media(max-width:850px){.support-center{grid-template-columns:1fr}.support-sidebar .ticket-list{max-height:240px}.support-chat{min-height:520px;max-height:72vh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.hero-guarantee{margin:24px 0 0;color:#eac4c4;font-size:.82rem;font-weight:700;max-width:430px}
.guarantee-card{border:1px solid #4b3436;background:linear-gradient(120deg,#221719,#101011);padding:36px;margin-bottom:60px}.guarantee-card h2{margin:20px 0 13px}.guarantee-card p{max-width:830px}
.pricing-four{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:45px}.pricing-four .custom-card{min-height:330px}.pricing-four .custom-card .muted{margin-top:auto}.pricing-four .custom-card button{margin-top:10px}.team-head{margin-top:80px}.team-grid{margin-top:24px}.team-card{padding:0 0 24px;overflow:hidden}.team-card img{width:100%;height:auto;aspect-ratio:16/11;object-fit:cover;border-bottom:1px solid var(--line)}.team-card h3,.team-card b,.team-card p{margin-inline:24px}.team-card h3{margin-top:22px;margin-bottom:8px}.team-card b{display:block;font-size:.85rem;color:#fff}.team-card p{font-size:.81rem;margin-top:12px}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.stats-grid strong{display:block;font-size:clamp(2.4rem,5vw,5rem);line-height:1.2;margin-top:15px}.offer-card{margin:12px 0}.offer-card h3{margin:6px 0 12px}.offer-card p{font-size:.85rem}.ticket-offers{margin:14px 0}.ticket-offers .offer-card{padding:16px}.ticket-admin{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.analytics-notice{position:fixed;left:18px;bottom:18px;z-index:90;width:min(680px,calc(100% - 36px));display:flex;align-items:center;gap:18px;justify-content:space-between;background:#242426;border:1px solid #777;padding:17px 19px;box-shadow:0 16px 55px #000d}.analytics-notice b{font-size:.9rem}.analytics-notice p{font-size:.75rem;line-height:1.5;margin:4px 0 0}.analytics-notice .actions{flex:none}
@media(max-width:850px){.pricing-four{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.team-grid,.stats-grid{grid-template-columns:1fr}.guarantee-card{padding:24px;margin-bottom:42px}.analytics-notice{display:block}.analytics-notice .actions{margin-top:14px}.team-head{margin-top:55px}}
/* Private support inbox and screenshots */
.notification-button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border:1px solid #38383c;background:#1d1d20;color:#f7f7f7;cursor:pointer;font-size:1.15rem}
.notification-button:hover,.notification-button:focus-visible{border-color:#df6b71;background:#292124}
.notification-button[hidden]{display:none}
#notificationCount{position:absolute;top:-9px;right:-8px;min-width:19px;height:19px;border-radius:50%;padding:1px 4px;background:#e85b64;color:#fff;font:700 11px/17px Manrope,sans-serif;text-align:center}
#notificationCount[hidden]{display:none}
.notification-panel{position:fixed;z-index:110;top:75px;right:max(16px,calc((100vw - 1400px)/2));width:min(380px,calc(100vw - 32px));max-height:min(500px,70vh);overflow:auto;padding:18px;background:#222225;border:1px solid #5f4548;box-shadow:0 20px 55px #000c;color:#fff}
.notification-panel[hidden]{display:none}
.notification-panel strong{display:block;margin:0 0 10px}
.notification-panel p{margin:10px 0;color:#aaa}
.notification-panel button{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:13px 4px;border:0;border-top:1px solid #414145;background:transparent;color:#fff;text-align:left;cursor:pointer}
.notification-panel button:hover{color:#ff8d91}
.notification-panel button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.notification-panel button small{flex-shrink:0;color:#b3b3b8}
.ticket-toast button{border:0;background:transparent;color:#fff;text-decoration:underline;cursor:pointer;font-weight:700}
.file-picker{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;padding:9px 12px;border:1px dashed #777;color:#eee;cursor:pointer;font-size:.8rem;font-weight:700}
.file-picker:hover,.file-picker:focus-within{border-color:#f1787e;color:#fff}
.file-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.file-hint{display:block;max-width:100%;margin:5px 0 12px;color:#b3b3b8;overflow-wrap:anywhere}
.reply-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.reply-tools .file-hint{margin:0}
.attachment-button{display:block;margin:9px 0;padding:8px 12px;border:1px solid #777;background:#333336;color:#fff;cursor:pointer;text-align:left}
.attachment-button:hover{border-color:#f1787e}
.ticket-image{display:block;max-width:100%;max-height:75vh;margin:12px auto;object-fit:contain}
@media(max-width:600px){.notification-panel{top:67px}.header-tools{flex-wrap:wrap;justify-content:flex-end}.notification-button{min-width:30px;height:34px}}
.crypto-method{border-color:#a259ff;background:linear-gradient(110deg,#24162e,#131117);border-radius:10px;box-shadow:inset 3px 0 #a259ff}.crypto-method:has(input:checked){border-color:#c898ff;background:#281835}.crypto-method em{font-style:normal;background:#6e3ca5;color:#fff;padding:3px 7px;border-radius:20px;font-size:.67rem;margin-left:7px;white-space:nowrap}.project-link{margin:0 0 22px}.admin-ticket-item{display:flex;align-items:center;gap:12px;margin-bottom:7px}.admin-ticket-item .ticket-row{flex:1;min-width:0}.stats-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.stats-toolbar label{font-size:.83rem}.stats-toolbar select{margin-left:8px;width:auto}.stats-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stats-panel{min-width:0}.stats-panel strong{display:block;font-size:2rem;margin:13px 0 4px}.stats-panel small{color:var(--muted)}.stats-chart{height:120px;display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid var(--line);margin-top:22px}.stats-bar{flex:1;min-width:2px;background:#ad78d8;border-radius:3px 3px 0 0}.stats-panel:nth-child(2) .stats-bar{background:#73b6a4}@media(max-width:700px){.stats-panels{grid-template-columns:1fr}.admin-ticket-item{align-items:stretch;flex-direction:column}}
.support-chat{border-radius:14px;background:#151518;box-shadow:0 16px 45px #0005}.support-chat .messages{padding:18px 6px;scrollbar-width:thin}.support-chat .bubble{border-radius:15px 15px 15px 4px;max-width:min(82%,630px);border-color:#38383d;background:#242429;padding:11px 15px;box-shadow:0 3px 12px #0003}.support-chat .bubble.own{border-radius:15px 15px 4px 15px;background:#423047;border-color:#765480;color:#fff}.support-chat .bubble.own small{color:#d0bfd5}.support-chat .reply-form textarea{border-radius:10px;min-height:66px}.support-chat .chat-header .eyebrow{color:#a58aa9}.support-sidebar .ticket-row{border-radius:8px;margin:3px 0}.support-chat .reply-form .button{border-radius:8px}
.integration-status{margin:12px 0 18px;padding:13px 15px;border-left:3px solid #ad78d8;background:#251e2b;color:#e9d7f1;font-size:.82rem;line-height:1.5}.integration-status.ready{border-color:#73b6a4;background:#1c2925;color:#d5f1e8}.pending-orders{margin:14px 0 28px;border:1px solid var(--line);background:#151518}.pending-orders summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:17px 20px;font-size:.9rem;font-weight:750;list-style:none}.pending-orders summary::-webkit-details-marker{display:none}.pending-orders summary:after{content:'⌄';color:var(--muted);margin-left:12px}.pending-orders[open] summary:after{content:'⌃'}.pending-orders summary span{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}.pending-orders .cards{padding:0 16px 16px}.support-chat .ticket-offers{max-height:none;overflow:visible;border-top:1px solid var(--line);padding-top:8px}.support-chat .messages{min-height:240px}.support-chat .reply-form{background:#19191d;margin:0 -20px -20px;padding:16px 20px 20px;border-radius:0 0 14px 14px}.support-chat .reply-form textarea{min-height:76px}.project-hub-list{display:grid;gap:9px}.project-hub-link{border-radius:8px;padding:13px 16px}.support-sidebar .ticket-row{padding:14px 12px}.support-sidebar .ticket-row.selected{background:#332735;border:1px solid #6d4d72}.support-chat .chat-date{align-self:center;border:1px solid #47404a;border-radius:20px;padding:5px 12px;background:#242128;color:#c7bcc9;font-size:.7rem}@media(max-width:850px){.support-chat{max-height:none;min-height:580px}.support-chat .messages{max-height:55vh;flex:none}.support-chat .ticket-offers{max-height:none}}

.payment-brands{display:grid;gap:8px;max-width:320px}.payment-brand-logos{display:flex;gap:12px;align-items:center}.payment-brand-logos>span{display:flex;align-items:center;justify-content:center;width:100px;height:64px;background:#fff;border-radius:10px}.payment-brand-logos img{object-fit:contain;max-width:72px}.payment-brands small{font-size:12px;line-height:1.5;color:#aaa}

/* Release 2026.10.07.11 — hardened staged delivery, live pricing and UA GeoIP */
.settings-price-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.8fr);gap:14px;align-items:end}.price-live-preview{border:1px solid var(--line);background:#101011;padding:14px 16px;min-height:76px;display:flex;flex-direction:column;justify-content:center}.price-live-preview small,.price-live-preview span{color:var(--muted);font-size:.72rem}.price-live-preview strong{font-size:1.2rem;margin:4px 0;color:#fff}.security-toggle{margin-top:18px}.completion-panel,.delivery-panel,.completion-security{border:1px solid #665b64;background:linear-gradient(135deg,#211c21,#141315);padding:16px;margin:16px 0}.completion-panel h4,.delivery-panel strong{display:block;margin:0 0 8px}.completion-panel .button{margin:6px 7px 0 0}.handover-promise{color:#cfc4cb!important;line-height:1.5}.offer-split{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.offer-split>div{border:1px solid var(--line);background:#101011;padding:12px}.offer-split small{display:block;color:var(--muted);font-size:.68rem;margin-bottom:6px}.offer-split strong{font-size:.92rem;overflow-wrap:anywhere}.delivery-panel .button{margin:8px 8px 0 0}.completion-security{border-left:3px solid var(--good);display:flex;gap:15px;align-items:center}.completion-security strong{font-size:1.45rem}.completion-security p{margin:0;font-size:.82rem}.offer-form-preview{margin-top:-2px}
@media(max-width:720px){.settings-price-grid,.offer-split{grid-template-columns:1fr}.completion-security{align-items:flex-start}.completion-panel .button,.delivery-panel .button{width:100%;margin-right:0}}

/* Release 2026.10.07.11 — unified project lifecycle and payment outcome UX */
.project-progress{margin:16px 0 18px;padding:14px 16px;border:1px solid #4e474d;background:#151416}.project-progress-title{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#aaa0a8;margin-bottom:12px;font-weight:750}.project-progress-track{display:grid;grid-template-columns:repeat(var(--steps,7),minmax(70px,1fr));gap:7px;overflow-x:auto;padding-bottom:3px}.project-progress-step{display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:center;min-width:0;padding:8px;border:1px solid #3b373a;background:#1c1a1d}.project-progress-step span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#302d31;color:#aaa;font-size:.72rem;font-weight:800}.project-progress-step small{font-size:.68rem;line-height:1.25;color:#8d878d;overflow-wrap:anywhere}.project-progress-step.done{border-color:#395e4d;background:#17221d}.project-progress-step.done span{background:#2f7254;color:#fff}.project-progress-step.done small{color:#b7d8c8}.project-progress-step.current{border-color:#a07a91;background:#2b2229;box-shadow:inset 0 0 0 1px #5f4455}.project-progress-step.current span{background:#eee4e9;color:#241d21}.project-progress-step.current small{color:#fff;font-weight:750}.project-progress.compact{padding:11px 12px}.project-progress.compact .project-progress-track{grid-template-columns:repeat(var(--steps,7),minmax(58px,1fr))}.project-progress.compact .project-progress-step{grid-template-columns:24px 1fr;padding:6px}.project-progress.compact .project-progress-step span{width:24px;height:24px}.permanent-chat-banner{display:grid;gap:4px;margin:10px 0 14px;padding:13px 15px;border-left:3px solid #73b6a4;background:#18251f;color:#d8efe6}.permanent-chat-banner strong{font-size:.82rem}.permanent-chat-banner span{font-size:.74rem;line-height:1.45;color:#bed4ca}.payment-confirmed-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:13px 15px;border:1px solid #37664f;background:linear-gradient(120deg,#163026,#18221e)}.payment-confirmed-strip strong{color:#dff7ea}.payment-confirmed-strip span{color:#a9c8ba;font-size:.72rem;text-align:right}.project-payment-cta{border-color:#876b7d!important;background:linear-gradient(135deg,#312730,#201d22)!important}.project-payment-cta .button.primary{min-height:46px;padding-inline:18px}.support-chat>.project-progress{margin:0 14px 12px}.support-chat>.permanent-chat-banner{margin:0 14px 12px}
@media(max-width:760px){.project-progress-track{grid-template-columns:repeat(var(--steps,7),minmax(118px,1fr))}.payment-confirmed-strip{align-items:flex-start;flex-direction:column}.payment-confirmed-strip span{text-align:left}.support-chat>.project-progress,.support-chat>.permanent-chat-banner{margin-inline:0}}

/* Final release UX: permanent project chat and guarded 25/75 handoff */
.project-chat-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px}.project-chat-actions .button{min-height:44px}
.payment-confirmed-strip{border-left:4px solid var(--good);background:rgba(74,181,125,.10);padding:12px 14px;display:grid;gap:3px;margin:12px 0}.payment-confirmed-strip strong{color:#bff2d5}.payment-confirmed-strip span{color:var(--muted);font-size:.82rem;line-height:1.45}
.admin-lifecycle-hint{border-left:3px solid #7f7180;padding-left:10px}
@media(max-width:720px){.project-chat-actions .button{width:100%}}

/* Market release 2026.10.08.12 — premium project workspace without changing payment semantics */
:root{--surface-raised:#171719;--surface-soft:#121214;--surface-hover:#1c1c20;--line-soft:#2d2d31;--accent-soft:#3b272d;--accent:#e6676b}
.card{border-radius:16px;border-color:var(--line-soft);box-shadow:0 18px 55px rgba(0,0,0,.18);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.card:hover{border-color:#454148;box-shadow:0 22px 64px rgba(0,0,0,.24)}
.button{border-radius:10px;transition:transform .15s ease,filter .15s ease,border-color .15s ease,background .15s ease}.button:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.06)}.button.primary{box-shadow:0 10px 28px rgba(230,103,107,.12)}
.tabs{gap:8px;flex-wrap:wrap}.tabs button{border-radius:9px;transition:background .16s ease,border-color .16s ease,transform .16s ease}.tabs button:hover{transform:translateY(-1px)}
.page-intro{position:relative}.page-intro:after{content:'';position:absolute;left:0;bottom:-12px;width:min(220px,40%);height:1px;background:linear-gradient(90deg,var(--accent),transparent);opacity:.65}
.order-stack{display:grid;gap:22px}.order-card-premium{padding:0;overflow:hidden;background:linear-gradient(145deg,#181719,#121214);border:1px solid #343238}.order-card-premium:hover{transform:translateY(-2px);border-color:#514b52}.order-card-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px 26px 20px;background:linear-gradient(120deg,rgba(255,255,255,.025),transparent 58%);border-bottom:1px solid #29282c}.order-identity h3{font-size:clamp(1.35rem,2vw,1.9rem);margin:5px 0 7px;letter-spacing:-.03em}.order-identity p{margin:0;color:var(--muted);font-size:.78rem}.order-status-cluster{display:grid;justify-items:end;gap:9px;text-align:right}.order-status-cluster strong{font-size:.78rem;color:#d5cbd0;font-weight:650}.order-status-cluster .badge{border-radius:999px;padding:7px 11px;background:#211e22;border-color:#484249}
.order-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#2b292d;border-bottom:1px solid #29282c}.order-financial-grid>div{padding:17px 26px;background:#151517;display:grid;gap:5px}.order-financial-grid small{color:#8f8b91;text-transform:uppercase;letter-spacing:.08em;font-size:.63rem}.order-financial-grid strong{font-size:1.15rem}.order-financial-grid .accent{background:linear-gradient(145deg,#251c21,#171517)}.order-financial-grid .accent strong{color:#ffd7da}.order-client-line{display:flex;justify-content:space-between;gap:18px;padding:12px 26px;border-bottom:1px solid #29282c;color:var(--muted);font-size:.76rem}.order-client-line strong{color:#e2dde0;overflow-wrap:anywhere}.order-card-premium>.project-progress,.order-card-premium>.payment-confirmed-strip,.order-card-premium>.payment-panel,.order-card-premium>.completion-panel,.order-card-premium>.order-status-message,.order-card-premium>.notice-line,.order-card-premium>.admin-lifecycle-hint{margin-left:26px;margin-right:26px}.order-card-premium>.project-progress{margin-top:22px}.order-card-premium>.history{margin:0 26px 24px}.order-card-premium>.admin-actions{margin:0 26px 16px}.order-card-premium .project-progress{border-radius:12px;background:#111113;border-color:#302e32}.order-card-premium .project-progress-step{border-radius:9px}.premium-order-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 26px 18px}.premium-order-actions .text-button{margin-left:auto}.premium-action-panel,.project-payment-cta{border-radius:14px!important}.project-payment-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;padding:20px 22px!important}.payment-cta-copy{display:grid;gap:7px}.payment-cta-copy>b{font-size:1.25rem}.payment-cta-copy p{margin:0}.payment-cta-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.payment-cta-actions .button.primary{min-height:48px;padding:13px 20px}.order-status-message{margin-top:14px;margin-bottom:14px;padding:14px 16px;border-radius:11px;border:1px solid #3f5e50;background:#17221d;display:grid;gap:4px}.order-status-message strong{color:#d5f2e3}.order-status-message span{font-size:.78rem;color:#aac8b9}.order-status-message.warning{border-color:#755b3d;background:#2a2117}.order-status-message.warning strong{color:#f4d5ab}.order-status-message.warning span{color:#cdb797}
.project-context-card{margin:0 14px 14px;padding:18px;border:1px solid #3a363d;border-radius:14px;background:linear-gradient(145deg,#1b181d,#141316);box-shadow:0 14px 40px rgba(0,0,0,.18)}.project-context-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.project-context-head strong{display:block;font-size:1.12rem;margin:4px 0}.project-context-head p{margin:0;max-width:680px;color:var(--muted);font-size:.8rem;line-height:1.55}.project-state-pill{white-space:nowrap;border:1px solid #416a56;background:#17251f;color:#c8ebd9;border-radius:999px;padding:7px 11px;font-size:.7rem;font-weight:750}.project-context-card .project-progress{margin:16px 0 0}.project-context-card .project-chat-actions{margin:14px 0 0}.project-context-card .project-chat-actions .button{min-height:48px;font-size:.85rem}
.test-price-warning{grid-column:1/-1;border:1px solid #936d3f;background:#2a2118;border-radius:10px;padding:12px 14px;display:flex;gap:12px;align-items:flex-start}.test-price-warning strong{color:#ffdda9;letter-spacing:.08em;font-size:.72rem}.test-price-warning span{color:#cfb998;font-size:.76rem;line-height:1.5}.settings{border-radius:16px}.price-live-preview{border-radius:10px}.integration-status{border-radius:9px}
.support-center{border-radius:18px}.support-chat{border-radius:18px;border:1px solid #2e2b31;overflow:hidden}.support-sidebar{border-radius:18px 0 0 18px}.support-chat .reply-form{border-radius:0}.bubble{transition:transform .15s ease}.bubble:hover{transform:translateY(-1px)}
.payment-confirmed-strip{border-radius:11px}.pending-orders{border-radius:13px;overflow:hidden}.ticket-row,.project-hub-link,.workspace-entry{transition:transform .15s ease,border-color .15s ease,background .15s ease}.ticket-row:hover,.project-hub-link:hover,.workspace-entry:hover{transform:translateX(2px)}
@media(max-width:820px){.order-card-hero,.project-context-head{flex-direction:column}.order-status-cluster{justify-items:start;text-align:left}.order-financial-grid{grid-template-columns:1fr}.project-payment-cta{grid-template-columns:1fr}.payment-cta-actions{justify-content:flex-start}.premium-order-actions .text-button{margin-left:0}.order-card-premium>.project-progress,.order-card-premium>.payment-confirmed-strip,.order-card-premium>.payment-panel,.order-card-premium>.completion-panel,.order-card-premium>.order-status-message,.order-card-premium>.notice-line,.order-card-premium>.admin-lifecycle-hint{margin-left:16px;margin-right:16px}.order-card-hero{padding:20px 18px}.order-financial-grid>div{padding:14px 18px}.premium-order-actions{padding:4px 18px 16px}.order-card-premium>.history{margin:0 18px 20px}.order-card-premium>.admin-actions{margin:0 18px 14px}.project-context-card{margin-inline:0}.project-state-pill{white-space:normal}}

/* Release hardening 2026.10.08.12 — final-payment readiness and product polish */
.client-payment-blocked{position:relative;overflow:hidden;padding-right:18px}.client-payment-blocked:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--warn),#b87545)}.client-payment-blocked .button{justify-self:start;margin-top:7px}.project-payment-blocked{width:100%;display:grid;gap:5px;padding:14px 16px;border:1px solid #755b3d;border-radius:11px;background:linear-gradient(135deg,#2a2117,#1c1815)}.project-payment-blocked strong{color:#f4d5ab;font-size:.83rem}.project-payment-blocked span{color:#cdb797;font-size:.74rem;line-height:1.5}.order-status-message.ready{border-color:#416a56;background:linear-gradient(135deg,#17251f,#141b18)}.order-status-message.ready strong{color:#c8ebd9}.order-status-message.ready span{color:#a9c8ba}
.service-option{position:relative;overflow:hidden;isolation:isolate}.service-option:before{content:'';position:absolute;width:180px;height:180px;right:-80px;top:-80px;border-radius:50%;background:radial-gradient(circle,rgba(230,103,107,.14),transparent 70%);opacity:.5;transition:opacity .2s ease,transform .2s ease;z-index:-1}.service-option:hover:before{opacity:1;transform:scale(1.14)}.service-highlights{display:grid;gap:8px;margin:18px 0;color:#c9c6cb;font-size:.8rem}.service-highlights span{display:flex;gap:8px;align-items:flex-start}.service-highlights span::first-letter{color:var(--good)}
.site-header{box-shadow:0 10px 36px rgba(0,0,0,.18)}.site-nav a,.header-tools select,.lang-switch,.sound-toggle{border-radius:9px}.header-tools select{background:#17171a;border-color:#35353a}.page-intro>p{line-height:1.75}.section-head{padding-top:4px}.empty{border-radius:14px;background:linear-gradient(145deg,#151517,#101012);border:1px dashed #343238;padding:24px;color:var(--muted)}
.notice,.notice-line,.payment-progress{border-radius:12px}.toast{border-radius:12px;box-shadow:0 18px 55px rgba(0,0,0,.35)}.overlay .dialog{border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.55)}
.workspace-entry{border-radius:11px}.workspace-entry:focus-visible,.ticket-row:focus-visible,.project-hub-link:focus-visible{outline:2px solid #d58f92;outline-offset:2px}.history summary{padding:10px 0;cursor:pointer;color:#c6c1c5;font-weight:700}.history[open] summary{color:#fff}.history p{padding-left:10px;border-left:1px solid #343136}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Market release 2026.10.09.18 — interaction polish, no payment-state semantics changed */
.project-progress-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-progress-title b{font-size:.72rem;color:#d8cfd4;font-variant-numeric:tabular-nums}.project-progress-meter{height:3px;background:#2e2b2f;border-radius:999px;overflow:hidden;margin:-3px 0 13px}.project-progress-meter span{display:block;height:100%;background:linear-gradient(90deg,#69b991,#d58f92);border-radius:inherit;transition:width .28s ease}.project-progress-step.current{transform:translateY(-1px);box-shadow:0 8px 24px rgba(213,143,146,.10),inset 0 0 0 1px #5f4455}.project-progress-step{transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.project-progress-step.done:hover,.project-progress-step.current:hover{transform:translateY(-2px)}.order-status-cluster small{font-size:.66rem;color:#77717a;font-variant-numeric:tabular-nums}.order-card-premium{box-shadow:0 22px 55px rgba(0,0,0,.18)}.order-card-premium:focus-within{border-color:#5f555e;box-shadow:0 24px 65px rgba(0,0,0,.28)}.project-payment-cta{position:relative;overflow:hidden}.project-payment-cta:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(#e8a0a3,#8c617e)}.payment-cta-actions .button.primary,.project-chat-actions .button.primary{box-shadow:0 10px 26px rgba(0,0,0,.22)}.payment-cta-actions .button.primary:hover,.project-chat-actions .button.primary:hover{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){.project-progress-meter span,.project-progress-step,.payment-cta-actions .button.primary,.project-chat-actions .button.primary{transition:none!important;transform:none!important}}

/* LANNER STUDIO: QR menu service block (scoped, no shared component overrides) */
.restaurant-showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.03fr);align-items:center;gap:clamp(22px,4vw,72px);padding:clamp(22px,4vw,48px);border:1px solid #393139;border-radius:22px;background:linear-gradient(126deg,#191518,#101013 65%);overflow:hidden}
.restaurant-info h2{font-size:clamp(27px,3.2vw,47px);line-height:1.1;letter-spacing:-.045em;max-width:530px;margin:18px 0}.restaurant-info p{color:#c7c1c5;line-height:1.65;max-width:510px}.restaurant-start{font-size:clamp(29px,3vw,42px);font-weight:800;color:#f2ebef;margin:20px 0 15px}.restaurant-features{display:grid;gap:9px;color:#ccc2c8;margin-bottom:24px;font-size:14px}.restaurant-features span::first-letter{color:#ff798e}.restaurant-preview{width:100%;height:auto;max-height:490px;object-fit:cover;object-position:center;border-radius:16px;border:1px solid #373137}.support-social{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.support-social a{padding:10px 15px;border:1px solid #413741;border-radius:10px;color:#f9f5f7;text-decoration:none;background:#20191f}.support-social a:hover{border-color:#e8859b}
@media(max-width:740px){.restaurant-showcase{grid-template-columns:1fr;padding:22px;gap:19px}.restaurant-preview{max-height:320px;object-position:center 35%}.restaurant-info h2{margin:12px 0}.restaurant-info .button{width:100%;justify-content:center}.support-social{gap:8px}}

/* October 2026: QR service and accessible contact actions */
.restaurant-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.restaurant-actions>.button{min-width:0;min-height:44px}
.lanner-contact-dock{position:fixed;right:18px;bottom:18px;z-index:65;display:flex;flex-direction:column;gap:10px}
.lanner-contact-dock a{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#201b20;border:1px solid #574451;box-shadow:0 10px 30px #0009;transition:transform .18s,border-color .18s}
.lanner-contact-dock a:hover{transform:translateY(-3px);border-color:#dfa6b9}
.lanner-contact-dock svg{width:25px;height:25px;fill:currentColor}
.lanner-contact-dock a.telegram{color:#70c8ed}.lanner-contact-dock a.whatsapp{color:#73d59e}
@media(max-width:740px){.restaurant-actions{display:grid;grid-template-columns:1fr}.lanner-contact-dock{right:10px;bottom:calc(14px + env(safe-area-inset-bottom))}.lanner-contact-dock a{width:44px;height:44px;border-radius:13px}}

/* October UX refinement: accessible editorial-style restaurant offer */
.restaurant-showcase{scroll-margin-top:110px;background:radial-gradient(ellipse at 88% 15%,#3b262522,transparent 55%),linear-gradient(130deg,#191518,#101013 72%);border-color:#4b3941;box-shadow:0 16px 50px #0003}
.restaurant-showcase .restaurant-info{min-width:0}.restaurant-showcase .restaurant-info h2{font-size:clamp(1.85rem,3.6vw,3.2rem);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
.restaurant-showcase .restaurant-info>p{max-width:49ch;line-height:1.7;color:#c2b9bd}.restaurant-start{font-variant-numeric:tabular-nums}
.restaurant-actions{display:flex;flex-wrap:wrap;gap:11px}.restaurant-actions .button{min-height:48px;text-align:center;white-space:normal;justify-content:center}
.restaurant-preview{aspect-ratio:6/5;object-fit:cover;border:1px solid #53434c;border-radius:16px}
.lanner-contact-dock a:focus-visible{outline:3px solid #efd6e2;outline-offset:3px}
@media(max-width:740px){.restaurant-showcase{margin-block:22px;padding:22px 18px}.restaurant-showcase .restaurant-info h2{font-size:clamp(1.8rem,8vw,2.5rem)}.restaurant-preview{aspect-ratio:16/11;max-height:none;order:-1}.restaurant-actions{display:grid;grid-template-columns:1fr}.restaurant-actions .button{width:100%;min-height:50px}.restaurant-features{line-height:1.6}.support-sidebar{padding:16px 12px}.support-chat .chat-header{padding:16px}.support-chat .reply-form{padding:12px}.support-chat .reply-form textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){.lanner-contact-dock a{transition:none}.lanner-contact-dock a:hover{transform:none}}


/* src/css/site-portal.css */
.workspace-entries{display:grid;gap:12px;margin-top:22px}.workspace-entry{display:flex;flex-direction:column;gap:8px;text-align:left;width:100%;padding:20px;border:1px solid #45454b;border-radius:12px;background:#202023;color:#eee;text-decoration:none;overflow-wrap:anywhere;font:inherit}.workspace-entry small{color:#aaa;line-height:1.6}.workspace-entry:hover{border-color:#999;background:#29292e}.workspace-entry:focus-visible{outline:2px solid #ddd;outline-offset:3px}.workspace-entry.muted{background:#171719;color:#aaa}.workspace-status{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.workspace-status p{margin:0}.dialog form[data-form="site-portal"]{display:grid;gap:16px}.dialog form[data-form="site-portal"] label:not(.check){display:grid;gap:8px}


/* src/css/workspace.css */
/* LANNER workspace: analytics, support desk and persistent project conversations */
.support-intro{padding-top:42px;padding-bottom:19px}.support-intro h1{font-size:clamp(2rem,4vw,3.5rem);margin:10px 0}.support-intro p{max-width:730px;margin:0;color:#aaa7b1}.support-center{grid-template-columns:minmax(285px,345px) minmax(0,1fr);gap:0;border:1px solid #343139;border-radius:18px;overflow:hidden;background:#151417;min-height:min(740px,calc(100vh - 190px));padding-bottom:0;margin-bottom:70px;box-shadow:0 24px 75px #0006}.support-sidebar{padding:24px 16px;border-right:1px solid #343139;background:#1c1a1f}.support-sidebar h2{margin:0 8px 18px;font-size:1rem;letter-spacing:.02em}.support-sidebar .ticket-list{max-height:390px;scrollbar-width:thin}.support-sidebar .ticket-row{padding:15px 14px;margin:3px 0;border:1px solid transparent;border-radius:12px;transition:background .15s,border-color .15s}.support-sidebar .ticket-row:hover{background:#29252e}.support-sidebar .ticket-row.selected{background:#332734;border-color:#78546b;box-shadow:none}.support-sidebar .ticket-form{margin:18px 0 0;border:1px solid #53404f;background:#252026;border-radius:12px;padding:18px}.support-sidebar .ticket-form summary{color:#ffd2db}.support-sidebar .ticket-form form{margin-top:18px}.support-sidebar .ticket-form textarea{min-height:105px}.support-chat{background:radial-gradient(circle at 80% 0,#30232c55,transparent 45%),#17151a;box-shadow:none;border:0;border-radius:0;min-height:650px;max-height:780px;padding:0}.support-chat .chat-header{padding:21px 27px;border-bottom:1px solid #38323b;background:#201b21;align-items:center}.support-chat .chat-header h2{margin:6px 0;font-size:1.15rem}.support-chat .chat-header .eyebrow{font-size:.68rem;letter-spacing:.13em;color:#d0a2b2}.support-chat .messages{margin:0;min-height:220px;max-height:none;padding:22px clamp(15px,3vw,38px);scrollbar-width:thin;display:flex;flex-direction:column;gap:10px}.support-chat .bubble{flex:none;width:fit-content;max-width:min(78%,620px);margin:0;background:#29242c;border:1px solid #463c48;border-radius:16px 16px 16px 4px;padding:11px 15px;box-shadow:0 5px 18px #0002}.support-chat .bubble.own{align-self:flex-end;margin-left:auto;background:#4b2c3d;border-color:#955d78;border-radius:16px 16px 4px 16px}.support-chat .bubble.system{margin-inline:auto;background:#26262b;border-radius:12px}.bubble-sender{display:block;color:#e8aebf;font-size:.72rem;font-weight:800;margin-bottom:5px}.support-chat .bubble p{line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 7px}.support-chat .bubble small{display:block;text-align:right;color:#bdacb8;font-size:.67rem}.chat-date{align-self:center;margin:10px auto;border:1px solid #50444f;border-radius:99px;background:#262028;color:#bbb0ba;padding:5px 12px;font-size:.7rem}.older-messages{align-self:center;border:1px solid #644858;background:#2c222b;color:#f2c3d1;border-radius:9px;padding:8px 14px;cursor:pointer}.support-chat .ticket-offers{margin:0 22px;max-height:185px}.support-chat .reply-form{margin-top:auto;background:#211c22;border-top:1px solid #433642;padding:17px 23px;display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:end}.support-chat .reply-form>label{grid-column:1/-1;font-size:0}.support-chat .reply-form textarea{width:100%;min-height:72px;max-height:180px;resize:vertical;background:#17141a;border:1px solid #51414f;border-radius:11px;font-size:.9rem;padding:13px 15px}.support-chat .reply-form .reply-tools{margin:0}.support-chat .reply-form .button{border-radius:10px;min-width:110px}.support-chat .ticket-admin{padding:12px 23px;margin:0;background:#211c22;border-top:1px solid #3d343d}.chat-empty{padding:40px 20px}.chat-empty img{opacity:.7;width:115px}.crypto-method{position:relative;overflow:hidden;padding:20px!important;border:1px solid #936d9e!important;background:radial-gradient(circle at 95% 10%,#704f874a,transparent 50%),linear-gradient(110deg,#302034,#18151c)!important;border-radius:15px!important;box-shadow:0 12px 38px #4e245a25,inset 4px 0 #c58ed9!important}.crypto-method:has(input:checked){border-color:#d5a6ea!important;background:linear-gradient(110deg,#422548,#1d1822)!important;box-shadow:0 0 0 2px #8f4da766,0 16px 38px #4e245a35!important}.crypto-method b{font-size:1.05rem}.crypto-method em{background:#8957a6;color:#fff;font-size:.64rem;letter-spacing:.04em;padding:5px 9px;border-radius:99px}.crypto-method small{display:block;margin-top:7px;line-height:1.4}.inbox-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.inbox-head h2,.insight-toolbar h2{font-size:clamp(1.7rem,3vw,2.4rem);margin:7px 0}.inbox-head p{color:#a9a5ae;margin:0}.inbox-counter{display:grid;place-items:center;border:1px solid #6d4557;background:#35232d;padding:13px 20px;border-radius:14px;min-width:130px;text-align:center}.inbox-counter strong{font-size:1.6rem;color:#ffc2d2}.inbox-counter span{font-size:.72rem;color:#bcb1b9}.inbox-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;flex-wrap:wrap}.inbox-filters,.insight-filters{display:flex;gap:5px;flex-wrap:wrap}.inbox-filters button,.insight-filters button{background:#232126;color:#b5afb8;border:1px solid #3e3942;border-radius:8px;padding:10px 14px;cursor:pointer;font:inherit;font-size:.78rem;font-weight:700}.inbox-filters button.active,.insight-filters button.selected{background:#4c2e3e;color:#ffe0e7;border-color:#9f637d}.inbox-filters button span{margin-left:6px;color:#edbdca}.inbox-search{display:flex;gap:8px;align-items:center;border:1px solid #4a414c;background:#211d23;border-radius:9px;padding:0 12px;min-width:230px}.inbox-search input{background:transparent;border:0;padding:10px 0;min-width:0;width:100%;color:#fff}.inbox-table{border:1px solid #403a42;border-radius:13px;overflow:hidden;background:#1d1b20}.inbox-table-head,.inbox-table-row{display:grid;grid-template-columns:minmax(220px,2fr) minmax(130px,1.5fr) minmax(90px,1fr) 100px 110px 40px;align-items:center;gap:12px;padding:13px 17px}.inbox-table-head{background:#29242c;color:#a9a0ab;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.inbox-table-row{border-top:1px solid #38333b;color:#ddd7df;font-size:.79rem;min-height:68px}.inbox-table-row:hover{background:#28232b}.inbox-subject{display:grid;gap:5px;min-width:0;background:transparent;border:0;color:#fff;text-align:left;cursor:pointer;font:inherit}.inbox-subject b,.inbox-customer{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-subject small{color:#98909c;font-size:.68rem}.inbox-status{display:inline-block;border-radius:99px;background:#303c36;color:#9fdfb2;padding:5px 9px;font-size:.7rem}.inbox-status.closed{background:#373439;color:#b6afb9}.inbox-status.answered{background:#39324b;color:#c4b3ef}.inbox-actions button{background:none;color:#d2a8b6;border:0;cursor:pointer;font-size:1.35rem}.inbox-empty{padding:45px 20px;text-align:center;color:#aaa}.inbox-pagination{display:flex;align-items:center;justify-content:flex-end;gap:13px;color:#a9a2ad;font-size:.76rem;margin:17px 0 30px}.inbox-pagination button{border:1px solid #49414a;background:#28232b;color:#fff;border-radius:7px;padding:7px 10px;cursor:pointer}.inbox-pagination button:disabled{opacity:.4;cursor:default}.insight-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.insight-toolbar label{color:#aaa;font-size:.8rem}.insight-toolbar select{display:block;margin-top:7px;min-width:130px;border-radius:8px;background:#28242d}.insight-sections{display:grid;gap:22px}.insight-panel{padding:clamp(20px,3vw,32px);border:1px solid #48404a;background:linear-gradient(155deg,#242027,#1a191d 55%);border-radius:17px;min-width:0}.insight-title{display:flex;align-items:center;gap:15px;margin-bottom:23px}.insight-title h3{font-size:1.25rem;margin:4px 0}.insight-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid #7a5267;border-radius:12px;background:#503343;color:#ffc1d5;font-size:1.25rem}.insight-icon.payments{border-color:#527a6c;background:#27473c;color:#a0ddba}.insight-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.insight-kpis>div{padding:17px 19px;background:#211e25;border:1px solid #403841;border-radius:11px}.insight-kpis span{display:block;color:#ada5af;font-size:.78rem}.insight-kpis strong{display:block;color:#fff;font-size:clamp(1.3rem,2.8vw,2.2rem);line-height:1.3;margin-top:8px;white-space:nowrap}.insight-chart{position:relative;padding:12px 0 0}.insight-chart svg{display:block;width:100%;height:220px;overflow:visible}.chart-axis{display:flex;justify-content:space-between;color:#938c98;font-size:.7rem;margin:7px 20px}.chart-tooltip{position:absolute;z-index:2;top:25px;background:#372d39;color:#fff;border:1px solid #aa768c;border-radius:8px;padding:8px 11px;font-size:.73rem;pointer-events:none;white-space:nowrap}.chart-tooltip[hidden]{display:none}.insight-legend{display:flex;gap:22px;margin:16px 0;color:#bfb5bf;font-size:.78rem}.insight-legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--dot);margin-right:8px}.insight-note{color:#8f8793;font-size:.72rem;line-height:1.5;margin:22px 0 0}.insight-state{padding:35px 20px;border:1px dashed #6b5667;border-radius:11px;color:#c8b8c5}.insight-state p{font-size:.8rem}.insight-list{margin-top:20px;border-top:1px solid #443b44}.insight-list-head{padding:18px 0 8px;font-weight:700}.insight-transaction{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #3a343d;padding:12px 0;font-size:.8rem}.insight-transaction small{display:block;color:#aaa0ad;margin-top:3px}.insight-filters{margin-bottom:14px}.order-filters{margin:15px 0 20px}
@media(max-width:950px){.inbox-table-head,.inbox-table-row{grid-template-columns:minmax(150px,2fr) minmax(120px,1.3fr) 90px 40px}.inbox-category,.inbox-table-head span:nth-child(3),.inbox-table-head span:nth-child(5),.inbox-table-row time{display:none}}@media(max-width:750px){.support-center{display:flex;flex-direction:column}.support-sidebar{width:100%;border-right:0;border-bottom:1px solid #443b44}.support-sidebar .ticket-list{max-height:180px}.support-chat{width:100%;min-height:540px;max-height:75vh}.support-chat .messages{min-height:180px}.support-chat .bubble{max-width:90%}.inbox-table-head,.inbox-table-row{grid-template-columns:minmax(120px,2fr) minmax(80px,1fr) 36px;padding:12px}.inbox-customer,.inbox-table-head span:nth-child(2){display:none}.insight-kpis{grid-template-columns:1fr 1fr}.insight-chart svg{height:170px}}@media(max-width:470px){.insight-kpis{grid-template-columns:1fr}.support-chat .reply-form{grid-template-columns:1fr}.support-chat .reply-form .button{width:100%}.inbox-head{align-items:flex-start}.inbox-counter{min-width:90px}.inbox-search{width:100%}}
.insight-day-detail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.insight-day-detail>div{background:#302631;border:1px solid #6b495d;border-radius:10px;padding:12px 15px}.insight-day-detail small{display:block;color:#bbaab9;font-size:.72rem}.insight-day-detail strong{display:block;font-size:1.15rem;margin-top:5px}.insight-day-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:5px;max-height:185px;overflow:auto;padding:6px;border:1px solid #403841;border-radius:10px;scrollbar-width:thin}.insight-day-list button{display:flex;flex-wrap:wrap;gap:4px 9px;align-items:center;justify-content:space-between;background:#242129;border:1px solid transparent;border-radius:7px;padding:9px 11px;color:#d4cdd6;font:inherit;font-size:.7rem;text-align:left;cursor:pointer}.insight-day-list button:hover,.insight-day-list button.selected{background:#493042;border-color:#a26782;color:#fff}.insight-day-list time{width:100%;font-weight:800;color:#f1c4d4}.insight-chart .chart-hit{cursor:pointer}@media(max-width:600px){.insight-day-detail{grid-template-columns:1fr 1fr}.insight-day-detail>div:first-child{grid-column:1/-1}}
.chat-empty h2{font-size:clamp(1.45rem,2.9vw,2.25rem);line-height:1.2;max-width:20ch;margin:16px auto}.chat-empty p{color:#aba3ad;line-height:1.6;max-width:380px}.project-gate{padding-bottom:80px}.project-gate h1{font-size:clamp(2rem,5vw,4rem);max-width:760px}.project-gate>p{max-width:690px;color:#b8adb8;line-height:1.7}.project-gate .cards{margin:35px 0}.project-gate .card{min-height:180px;border-radius:13px}.project-gate .card h3{font-size:1.25rem}


/* src/css/mobile-upgrade.css */
/* Release 2026.09.29.3 — focused small-screen and operator workspace layout. */
*,*::before,*::after{box-sizing:border-box}
.admin-order-list{display:grid;grid-template-columns:1fr;gap:12px;max-width:1050px}
.admin-order-list .order-card{padding:20px 23px;border-radius:16px;background:linear-gradient(135deg,#231e26,#18171b);border-color:#53414f}
.admin-order-list .order-top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.admin-order-list .order-top h3{margin:4px 0}
.admin-order-list .order-meta{display:flex;gap:20px;flex-wrap:wrap}
.admin-order-list .admin-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:15px;padding-top:13px;border-top:1px solid #ffffff16}
.admin-order-list .admin-actions select{width:min(100%,300px);min-height:44px}
.archive-order-button{margin-left:auto}
.verification-banner{border:1px solid #b48964;background:linear-gradient(130deg,#33271f,#1b1b1d);padding:22px;border-radius:14px}.verification-banner h2{margin:0 0 8px}.verification-banner p{margin:0 0 16px;color:#e7d5c6}
.chat-back{display:none}
.chart-axis{gap:4px}.chart-axis time{font-variant-numeric:tabular-nums;white-space:nowrap}
.insight-chart .chart-hit:focus-visible{outline:3px solid #eed3e7}
@media(max-width:850px){.site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:'brand tools menu';gap:7px;min-height:70px;padding:7px 0}.site-header .brand{grid-area:brand;min-width:0}.site-header .brand img{width:min(130px,100%)}.site-header .mobile-menu{grid-area:menu;margin:0;min-width:40px;min-height:40px}.site-header .header-tools{grid-area:tools;flex-wrap:nowrap}.site-header .lang-switch{position:absolute;top:100%;left:0;right:0;justify-content:center;background:#171419;padding:5px;z-index:2;border-width:0 0 1px}.site-header .lang-switch button{flex:0 1 70px;min-height:36px}.site-header .site-nav{top:calc(100% + 47px);max-height:calc(100dvh - 116px);overflow-y:auto;box-shadow:0 18px 40px #0009;z-index:2}.notification-panel{top:116px}.site-header{margin-bottom:47px}.hero{padding-top:34px}.hero h1{font-size:clamp(2.3rem,9vw,4.3rem);line-height:1.08;overflow-wrap:anywhere}.support-intro{padding-top:32px}.support-center{padding-bottom:40px}.support-chat{max-height:none}.support-center.has-chat .support-sidebar{display:none}.support-center:not(.has-chat) .support-chat{display:none}.support-sidebar .ticket-list{max-height:none}.support-center.has-chat .support-chat{min-height:calc(100dvh - 205px);height:calc(100dvh - 205px);display:flex;padding:14px}.support-center.has-chat .messages{min-height:0;max-height:none;flex:1}.support-center.has-chat .chat-back{display:inline-flex;align-items:center;align-self:flex-start;border:1px solid #6e526e;background:#332839;color:#fff;border-radius:9px;padding:8px 12px;cursor:pointer}.support-center.has-chat .chat-header{display:flex;flex-wrap:wrap}.support-center.has-chat .chat-header>div{flex:1 1 100%}.support-center.has-chat .reply-form{flex:none}.support-center.has-chat .ticket-offers{max-height:25vh;overflow:auto}.inbox-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}.inbox-filters button{flex:none}.tabs{overflow-x:auto;scrollbar-width:thin;flex-wrap:nowrap}.tabs button{flex:none}.insight-chart svg{height:200px}}
@media(max-width:600px){html,body,#app{max-width:100%;overflow-x:hidden}.site-header .brand img{width:116px}.site-header .header-tools{gap:5px}.site-header .sound-toggle,.site-header .notification-button{width:36px;height:38px;min-width:36px}.site-header .mobile-menu{font-size:1.1rem}.hero{padding-top:25px;padding-bottom:45px}.hero h1{font-size:clamp(2.2rem,10.5vw,3.3rem)}.hero-copy{min-width:0}.hero-copy>p{line-height:1.55}.hero .actions,.actions{flex-wrap:wrap}.admin-order-list .order-card{padding:16px}.admin-order-list .order-top{flex-wrap:wrap}.admin-order-list .admin-actions select{width:100%}.archive-order-button{margin-left:0}.support-center.has-chat .support-chat{width:100%;height:calc(100dvh - 180px);min-height:480px}.support-chat .reply-form{margin:0 -14px -14px;padding:12px 14px}.support-chat .reply-form textarea{min-height:54px}.support-chat .bubble{max-width:91%}.chart-axis time:nth-child(even){display:none}.insight-panel{padding:16px}.insight-chart svg{height:175px}.insight-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-kpis strong{font-size:1.3rem;white-space:normal;overflow-wrap:anywhere}}
/* Service explorer and operations release */
.pricing-four .service-option{display:flex;flex-direction:column;gap:10px;min-height:390px;background:linear-gradient(160deg,#1e1b20,#121214);border-radius:15px;border:1px solid #484047;transition:transform .2s,border-color .2s,box-shadow .2s}
.pricing-four .service-option:hover{transform:translateY(-4px);border-color:#976b87;box-shadow:0 20px 50px #0006}
.pricing-four .service-option.service-accent{border-color:#477863;background:linear-gradient(145deg,#21332b,#171a1a 56%)}
.service-option .price{font-size:clamp(1.6rem,2.5vw,2.35rem);font-weight:800;margin:8px 0 4px;white-space:normal}
.service-highlights{display:grid;gap:9px;font-size:.77rem;line-height:1.45;color:#c8c1cb;margin:0 0 auto}.service-highlights span:first-letter{color:#a8d6b7}
.service-option>.button{margin-top:18px;align-self:flex-start}
.plan-detail{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.3fr);gap:18px;max-height:min(74dvh,680px);overflow:auto;scrollbar-width:thin}.plan-detail-intro{padding:18px;border-radius:12px;background:linear-gradient(145deg,#34263a,#231e29);border:1px solid #705472}.plan-detail-intro h2{font-size:clamp(1.4rem,2.8vw,2.15rem);margin:14px 0}.plan-detail-intro p{font-size:.86rem;color:#d0c5d1;line-height:1.6}.plan-detail-intro strong{display:block;color:#d5eddc;font-size:1.5rem;margin-top:20px}.plan-detail-list{padding:10px 10px 0}.plan-detail-list h3{margin:5px 0 14px}.plan-detail-list ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.plan-detail-list li{display:flex;align-items:start;gap:11px;padding:10px 12px;border:1px solid #414048;border-radius:9px;background:#25232a;font-size:.79rem;line-height:1.5}.plan-detail-list li span{display:grid;place-items:center;background:#264735;color:#a7e4bb;border-radius:50%;min-width:22px;height:22px;font-size:.7rem}.plan-detail-list p{color:#ac9fae;font-size:.73rem;line-height:1.5}.plan-detail-actions{grid-column:1/-1;display:flex;justify-content:flex-end;position:sticky;bottom:0;background:#19171df2;padding:12px 4px}.dialog:has(.plan-detail){width:min(900px,calc(100vw - 32px));max-width:900px}.dialog:has(.plan-detail) .plan-detail{max-height:min(74dvh,680px)}
.client-directory{display:grid;gap:8px}.client-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;background:#201d23;border:1px solid #474047;border-radius:12px;color:#fff;text-align:left;cursor:pointer;font:inherit}.client-row:hover{border-color:#a77794;background:#28212b}.client-row span:first-child{display:grid;gap:6px;min-width:0}.client-row b{overflow-wrap:anywhere}.client-row small{color:#a9a1ab}.client-row span:last-child{font-size:.75rem;color:#e6bccc;white-space:nowrap}.client-profile{max-height:75dvh;overflow:auto}.client-profile .badge{display:inline-block;margin:0 0 10px}.badge.verified{background:#274233;color:#abe1be}.badge.unverified{background:#473830;color:#f3cbad}.client-profile h2{overflow-wrap:anywhere}.client-orders{display:grid;gap:12px}.client-ticket{display:block;width:100%;border:1px solid #4b414f;background:#282329;color:#fff;text-align:left;border-radius:8px;padding:11px;margin-bottom:7px;cursor:pointer}.client-profile .order-card{padding:16px}.client-profile .order-meta{display:flex;gap:10px;flex-wrap:wrap}.inbox-actions{display:flex;align-items:center;gap:5px}.inbox-actions button:last-child:hover{color:#ff9d9d}.chart-active{display:inline-block;margin:8px 10px 5px;padding:9px 13px;border-radius:9px;background:#302933;border:1px solid #735369;color:#ffeaf3;font-variant-numeric:tabular-nums;font-size:.78rem}.insight-list summary{cursor:pointer;padding:15px 0;font-weight:700}.insight-legend{flex-wrap:wrap}
@media(max-width:750px){.plan-detail{grid-template-columns:1fr;max-height:75dvh}.plan-detail-actions{grid-column:1}.service-option{min-height:0}.client-row{align-items:start;flex-direction:column}.client-row span:last-child{white-space:normal}.dialog:has(.plan-detail){padding:16px}.insight-chart .chart-tooltip{display:none}}

.inbox-table-head,.inbox-table-row{grid-template-columns:minmax(220px,2fr) minmax(130px,1.5fr) minmax(90px,1fr) 100px 110px 74px}
@media(max-width:950px){.inbox-table-head,.inbox-table-row{grid-template-columns:minmax(150px,2fr) minmax(120px,1.3fr) 90px 74px}}
@media(max-width:750px){.inbox-table-head,.inbox-table-row{grid-template-columns:minmax(120px,2fr) minmax(80px,1fr) 74px}}
/* Payment selection and summary */
.dialog:has(.checkout-shell){width:min(980px,calc(100vw - 28px));max-width:980px;padding:clamp(18px,3vw,32px)}
.checkout-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(245px,.85fr);gap:clamp(18px,3vw,36px);align-items:start}
.checkout-main h2{margin:12px 0 4px;font-size:clamp(1.7rem,3vw,2.5rem)}
.checkout-main>p{margin:0 0 22px}.payment-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 13px}
.payment-method-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-height:198px;padding:20px;border:1px solid #4a464c;border-radius:15px;background:#222124;cursor:pointer;transition:border-color .18s,background .18s,transform .18s;overflow:hidden}
.payment-method-tile:not(.unavailable):hover{border-color:#a49aa1;transform:translateY(-2px)}
.payment-method-tile:has(input:checked){border-color:#b5aaa9;background:linear-gradient(155deg,#322b31,#211f22 70%);box-shadow:inset 0 0 0 1px #b5aaa966}
.payment-method-tile:has(input:focus-visible){outline:3px solid #d9bdcb;outline-offset:2px}
.payment-method-tile.unavailable{opacity:.56;cursor:not-allowed}.payment-method-tile input{position:absolute;opacity:0;pointer-events:none}.method-mark{display:grid;place-items:center;width:52px;height:52px;background:#393438;color:#f1e1e8;border-radius:12px;font-size:1.75rem}.method-copy{display:grid;gap:5px}.method-copy strong{font-size:1.06rem;color:#f7f3f6}.method-copy small{color:#c3bac2;font-size:.75rem;line-height:1.4}.method-copy em{display:inline-block;width:fit-content;font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.025em;color:#cae9d4;background:#284338;padding:5px 8px;border-radius:5px}.payment-method-tile.unavailable .method-copy em{color:#cbc2c6;background:#393638}
.method-check{position:absolute;top:18px;right:18px;width:24px;height:24px;border:1px solid #746f73;border-radius:50%;display:grid;place-items:center;color:transparent}.payment-method-tile:has(input:checked) .method-check{background:#cbaab8;border-color:#cbaab8;color:#221a20}
.payment-fineprint{font-size:.75rem;line-height:1.55;color:#ada6ad;margin:8px 0 18px}.checkout-terms{border-block:1px solid #484249;margin:20px 0;padding:14px 0}.checkout-terms summary{cursor:pointer;font-weight:700;list-style:none}.checkout-terms summary::-webkit-details-marker{display:none}.checkout-terms .terms-inline{margin:16px 0 0;max-height:190px;overflow:auto}.checkout-accept{display:flex;gap:10px;line-height:1.45;margin:16px 0 20px}.checkout-submit{min-height:50px;width:100%}
.checkout-summary{position:sticky;top:15px;background:#202022;border:1px solid #474348;border-radius:16px;padding:24px}.checkout-summary h3{font-size:1.35rem;margin:10px 0 20px}.summary-line{display:flex;justify-content:space-between;align-items:baseline;gap:15px;border-bottom:1px solid #383639;padding:13px 0;color:#bcb7bd;font-size:.83rem}.summary-line b{color:#f4eff2;font-size:.9rem;white-space:nowrap}.summary-line.summary-total{border:0;align-items:center;color:#fff}.summary-total strong{font-size:clamp(1.45rem,2.6vw,2rem);white-space:nowrap;color:#fff}.checkout-summary p{color:#b9dfc4;background:#26382d;border:1px solid #43654c;padding:9px 12px;border-radius:8px;font-weight:700;font-size:.74rem}.checkout-summary small{display:block;line-height:1.45;color:#aba4ab}.summary-help{display:block;margin-top:22px;font-size:.75rem;color:#d9cbd4}
.payment-progress{display:flex;align-items:center;gap:17px;border:1px solid #625461;background:linear-gradient(110deg,#302b31,#1f1e22);border-radius:13px;padding:18px 21px}.payment-progress.error{border-color:#aa6666}.progress-pulse{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:#695160;color:#fff;font-size:1.4rem;animation:paymentPulse 1.7s infinite}.payment-progress.error .progress-pulse{animation:none;background:#7e4343}.payment-progress b,.payment-progress small{display:block}.payment-progress small{margin-top:5px;color:#bcb0bb;font-size:.76rem}@keyframes paymentPulse{50%{box-shadow:0 0 0 8px #a876a922}}
@media(max-width:760px){.checkout-shell{grid-template-columns:1fr}.checkout-summary{position:static;grid-row:1}.dialog:has(.checkout-shell){max-height:92dvh;overflow:auto}.payment-method-grid{grid-template-columns:1fr 1fr}.payment-method-tile{min-height:175px;padding:15px}}
@media(max-width:470px){.payment-method-grid{grid-template-columns:1fr}.payment-method-tile{min-height:118px;flex-direction:row;align-items:center}.method-copy{padding-right:18px}.method-mark{flex:none}.method-check{top:12px;right:12px}.checkout-summary{padding:17px}.checkout-main h2{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){.payment-method-tile{transition:none}.progress-pulse{animation:none}}
/* Consistent payment state in the account and quote cards */
.order-card .payment-panel{border:1px solid #514a50;border-radius:12px;background:linear-gradient(125deg,#262329,#1b1b1e);padding:18px 20px;margin:18px 0}
.order-card .payment-panel b{font-size:1.02rem;color:#f6f1f5}.order-card .payment-panel p{line-height:1.5;color:#c5bac3}.order-card .payment-panel .actions{display:flex;gap:9px;flex-wrap:wrap}.order-card .payment-panel .button.primary,.offer-card .button.primary{background:#e8e1e4;color:#242026;border-radius:8px}
.offer-card>p{padding:14px 16px;border:1px solid #464046;border-radius:10px;background:#222025;color:#e8dae3;font-size:.92rem;font-weight:700}.offer-card .actions{gap:9px;flex-wrap:wrap}
/* Release checkout: clear payment hierarchy and touch targets. */
.dialog:has(.checkout-shell){width:min(1060px,calc(100vw - 24px));padding:0;overflow:hidden;border:1px solid #61565d;border-radius:22px;background:#171619;box-shadow:0 30px 100px #000b}
.dialog:has(.checkout-shell)>.dialog-top{padding:22px 30px;border-bottom:1px solid #373036;background:#221f23}
.dialog:has(.checkout-shell) .checkout-shell{padding:28px 30px 30px;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);gap:34px}
.checkout-flow{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}.checkout-flow span{font-size:.72rem;font-weight:700;color:#d7cbd1;background:#282329;border:1px solid #4a4049;padding:8px 10px;border-radius:24px}.checkout-flow span:nth-child(2){color:#f8edea;background:#49373e;border-color:#ad7f91}
.checkout-main h2{font-weight:750;letter-spacing:-.035em}.checkout-main .payment-method-grid{grid-template-columns:1fr;margin:16px 0}.checkout-main .payment-method-tile{min-height:132px;flex-direction:row;align-items:center;background:linear-gradient(120deg,#2b272c,#1d1c20);padding:22px;border-color:#7a5969}.checkout-main .payment-method-tile:has(input:checked){border-color:#cfb0bd;box-shadow:0 0 0 2px #ab889933,inset 0 0 45px #98688212}.checkout-main .payment-method-tile.unavailable{min-height:78px;padding:14px 18px;background:#1b1a1c;border-color:#3a353a}.checkout-main .payment-method-tile.unavailable .method-mark{width:40px;height:40px;font-size:1.3rem}.checkout-main .method-mark{border:1px solid #82636f;background:#46343f;width:60px;height:60px;color:#fff}.checkout-main .method-copy{gap:7px}.checkout-main .method-copy strong{font-size:1.16rem}.checkout-main .method-copy small{font-size:.82rem}.checkout-main .method-check{top:20px;right:20px}
.checkout-summary{background:linear-gradient(156deg,#322932,#201e22 70%);border-color:#65515b;box-shadow:0 20px 50px #0004}.checkout-summary h3{font-size:1.65rem}.checkout-summary .summary-total{padding:22px 0 13px}.checkout-summary .summary-total strong{color:#f6e5ed}.checkout-summary>p{margin:10px 0 14px}.checkout-fx{border-top:1px solid #55434d;margin:13px 0 16px;padding:16px 0 4px;display:grid;gap:5px}.checkout-fx b{font-size:1.22rem;color:#f4f0e9}.checkout-fx small,.fx-credit{font-size:.7rem;color:#bdb1b9;line-height:1.45}.fx-credit{text-decoration:underline;text-underline-offset:3px}.price-equivalent{display:block;font-size:.58em;font-weight:500;color:#cbbbc5;margin-top:4px;letter-spacing:0}.payment-panel .price-equivalent{font-size:.83em}
@media(max-width:760px){.dialog:has(.checkout-shell){width:calc(100vw - 12px);max-height:96dvh;overflow-y:auto;border-radius:16px}.dialog:has(.checkout-shell)>.dialog-top{padding:15px 17px}.dialog:has(.checkout-shell) .checkout-shell{grid-template-columns:1fr;gap:18px;padding:18px}.checkout-summary{grid-row:auto;position:static;padding:20px}.checkout-main .payment-method-tile{min-height:116px;padding:14px}.checkout-main .method-mark{width:46px;height:46px;font-size:1.4rem}.checkout-main .method-copy strong{font-size:1rem}.checkout-flow{margin:12px 0}}
.fx-disclosure{font-size:.72rem;color:#ada5ac;margin-top:14px}.fx-disclosure .fx-credit{margin-left:6px}.plan-detail-intro .price-equivalent{font-size:.55em}.plan-detail-intro>small{display:block;color:#ada5ac;margin:12px 0}

/* Checkout viewport repair: summary and action belong to the same form. */
.dialog:has(.checkout-shell){max-height:94dvh;overflow-y:auto;overscroll-behavior:contain}
.dialog:has(.checkout-shell)>.dialog-top{position:sticky;top:0;z-index:3}
.checkout-main .payment-method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
form.checkout-shell label.payment-method-tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:200px;padding:20px;gap:16px;margin:0;cursor:pointer}
form.checkout-shell label.payment-method-tile.unavailable{min-height:200px;padding:20px;cursor:not-allowed}
form.checkout-shell .method-copy{display:grid;gap:9px;padding:0;overflow-wrap:anywhere}
form.checkout-shell .method-copy strong{font-size:1.05rem}
form.checkout-shell .method-mark,form.checkout-shell .unavailable .method-mark{width:48px;height:48px;font-size:1.65rem}
.checkout-summary{position:static;min-width:0}
.checkout-summary .checkout-accept{display:flex;gap:10px;align-items:flex-start;margin:18px 0;font-size:.82rem;line-height:1.5}
.checkout-accept input{flex:none;width:20px;height:20px;margin:2px 0;accent-color:#bca5c0}
.checkout-summary .checkout-submit{width:100%;min-height:52px;font-size:1rem;white-space:normal}
#currencySelect{min-height:36px;max-width:90px;border:1px solid #574c58;background:#211d23;color:#ede3ee;border-radius:7px;padding:5px;font-size:.75rem}
@media(max-width:760px){form.checkout-shell label.payment-method-tile,form.checkout-shell label.payment-method-tile.unavailable{min-height:180px;padding:15px}.checkout-main .payment-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checkout-summary{grid-row:auto}.checkout-main h2{font-size:1.65rem}.site-header .header-tools{gap:3px}#currencySelect{max-width:65px;font-size:.68rem}.site-header .brand img{width:105px}}
@media(max-width:380px){.checkout-main .payment-method-grid{grid-template-columns:1fr}form.checkout-shell label.payment-method-tile,form.checkout-shell label.payment-method-tile.unavailable{min-height:125px}.site-header .brand img{width:85px}}

/* Content remains readable at 320px and with browser text zoom. */
.checkout-main,.checkout-summary,.method-copy,.service-option,.plan-detail-intro,.plan-detail-list{min-width:0}
.summary-line{flex-wrap:wrap;overflow-wrap:anywhere}
.summary-line b,.summary-total strong{white-space:normal;overflow-wrap:anywhere;text-align:end}
.summary-line .price-equivalent{font-size:.8em;line-height:1.4}
.checkout-summary .checkout-submit:disabled{cursor:not-allowed;opacity:.6}
.checkout-summary .checkout-submit:focus-visible,button:focus-visible,.button:focus-visible,select:focus-visible{outline:3px solid #e8c7dc;outline-offset:3px}
.method-copy em{max-width:100%;white-space:normal;line-height:1.4}
.support-chat .bubble{overflow-wrap:anywhere;word-break:normal}
@media(max-width:600px){input,textarea,select{font-size:16px}.site-header #currencySelect{font-size:16px;max-width:77px}.site-header .header-inner{grid-template-columns:minmax(0,1fr) auto auto}.site-header .header-tools{min-width:0}.plan-detail-actions .button{width:100%;white-space:normal}.inbox-actions button{min-width:40px;min-height:40px}.summary-line{gap:8px}.checkout-summary{padding:18px}}
@media(max-width:350px){.site-header .brand img{width:72px}.site-header .header-inner{gap:3px}.site-header .sound-toggle,.site-header .notification-button{width:32px;min-width:32px}.site-header .mobile-menu{min-width:34px}.dialog:has(.checkout-shell) .checkout-shell{padding:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.service-option,.payment-method-tile{transition:none}.service-option:hover,.payment-method-tile:hover{transform:none}}

#regionSelect{min-height:36px;max-width:105px;border:1px solid #574c58;background:#211d23;color:#ede3ee;border-radius:7px;padding:5px;font-size:.75rem}.header-tools>select{flex-shrink:1;min-width:62px}.dialog:focus{outline:none}#amountEquivalent{font-size:.85rem;color:#cbbbc5;overflow-wrap:anywhere}#fxCredit{font-size:.75rem;color:#b9aabd}
@media(max-width:850px){.site-header .header-tools{flex-wrap:wrap;justify-content:flex-end;max-width:220px}#regionSelect{max-width:88px}.site-header .header-inner{grid-template-columns:minmax(80px,1fr) auto auto}.site-header .brand img{max-width:100%}}
/* Explicit control widths prevent a select shrinking into an empty pill in the header. */
.site-header #currencySelect{width:77px;flex:0 0 77px;min-width:77px;max-width:77px}
.site-header #regionSelect{width:145px;min-width:110px;max-width:170px;min-height:40px;border:1px solid #574c58;background:#211d23;color:#ede3ee;border-radius:7px;padding:6px;font-size:.75rem}
@media(max-width:600px){.site-header #currencySelect{width:69px;min-width:69px;max-width:69px;flex-basis:69px;font-size:16px}.site-header #regionSelect{font-size:16px;width:125px;min-width:105px}.site-header .header-tools:has(#regionSelect){flex-wrap:wrap;justify-content:flex-end;max-width:230px}}

/* Keep forms usable when the mobile keyboard reduces the visual viewport. */
@media(max-width:600px){
 .support-center.has-chat .support-chat{min-height:min(480px,calc(100dvh - 180px));}
 .support-chat .messages{min-height:0;overscroll-behavior:contain;}
 .support-chat .reply-form textarea{max-height:120px;}
 .site-header #regionSelect{max-width:125px;}
 .support-chat .chat-header,.insight-toolbar{min-width:0;}
 .insight-toolbar{flex-wrap:wrap;gap:12px;}
 .insight-transaction{flex-wrap:wrap;overflow-wrap:anywhere;}
}
.inbox-actions button:focus-visible,.client-row:focus-visible,.client-ticket:focus-visible,.older-messages:focus-visible,.inbox-filters button:focus-visible,.tabs button:focus-visible{outline:3px solid #eed3e7;outline-offset:3px;}


/* src/css/premium-upgrade.css */
/* LANNER STUDIO: 2026 visual refinement. Pure presentation; all checkout flows untouched. */
.lanner-showcase{margin-block:clamp(52px,7vw,105px);position:relative}.lanner-showcase .section-head{max-width:690px}.lanner-showcase .section-head p{color:#99949c;line-height:1.7}.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.showcase-item{min-width:0;border:1px solid #302c32;background:linear-gradient(145deg,#171618,#101012);border-radius:18px;padding:14px 14px 20px;box-shadow:0 20px 48px rgba(0,0,0,.14);contain:layout paint}.showcase-art{overflow:hidden;border-radius:12px;aspect-ratio: 560/340;background:#09090b;position:relative}.showcase-art img{width:100%;height:100%;object-fit:cover;display:block}.showcase-item h3{font-size:1rem;margin:19px 5px 8px}.showcase-item p{font-size:.85rem;color:#aca6ae;margin:0 5px;line-height:1.6}.hero-film{transform-style:preserve-3d;will-change:auto}.hero-film video{display:block;width:100%;height:auto}.lanner-depth{--tilt-x:0deg;--tilt-y:0deg;transition:transform .25s ease,box-shadow .25s ease;transform:perspective(1100px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y))}.lanner-depth:hover{box-shadow:0 24px 65px rgba(0,0,0,.30)}.restaurant-showcase.lanner-depth{transform-origin:center center}.lanner-reveal{opacity:0;transform:translateY(15px);transition:opacity .56s cubic-bezier(.2,.7,.2,1),transform .56s cubic-bezier(.2,.7,.2,1)}.lanner-reveal.is-visible{opacity:1;transform:translateY(0)}.lanner-depth.lanner-reveal.is-visible{transform:perspective(1100px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
/* Conversation usability, no changes to storage or authorization. */
.support-center{border:1px solid #343039;border-radius:20px;overflow:hidden;background:#111013;box-shadow:0 25px 70px rgba(0,0,0,.20)}.support-sidebar{background:linear-gradient(180deg,#19171b,#121114)}.support-chat{min-width:0;background:linear-gradient(180deg,#151318,#111014)}.support-chat .chat-header{border-bottom:1px solid #343039}.support-chat .messages{overscroll-behavior:contain;scrollbar-color:#635960 #1b191d}.ticket-list>*{transition:border-color .16s ease,background-color .16s ease}.support-chat .reply-form{border-top:1px solid #353039;background:#1a171c}.support-chat .reply-form textarea{min-height:72px;resize:vertical;border-radius:12px;background:#111013}.support-chat .reply-form textarea:focus-visible{outline:2px solid #b7a5af;outline-offset:2px}.ticket-offers{overflow-wrap:anywhere}.support-chat button:focus-visible,.support-sidebar button:focus-visible{outline:2px solid #dbcbd3;outline-offset:2px}
/* Admin tabs are a practical control, not a 3D effect. */
.tabs{gap:6px;flex-wrap:wrap}.tabs>button{border-radius:10px;min-height:39px}.tabs>button.selected{box-shadow:inset 0 -2px #bda8b2}.ticket-admin{flex-wrap:wrap}
@media(hover:none),(pointer:coarse){.lanner-depth,.lanner-depth.lanner-reveal.is-visible{transform:none!important}.showcase-item{contain:layout}}
@media(max-width:800px){.showcase-grid{grid-template-columns:1fr 1fr}.lanner-showcase{margin-block:42px}.showcase-art{aspect-ratio: 560/300}}
@media(max-width:560px){.showcase-grid{grid-template-columns:1fr}.showcase-item{padding:10px 10px 15px}.showcase-item h3{margin:12px 7px 6px}.showcase-item p{margin:0 7px 5px}.support-center{border-radius:14px}.support-chat .reply-form textarea{font-size:16px}.lanner-reveal{transform:translateY(8px)}}
@media(prefers-reduced-motion:reduce){.lanner-reveal,.lanner-depth,.showcase-item,.ticket-list>*{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}}


/* src/css/studio-console.css */
/* LANNER STUDIO — unified operations, support and payment proposals.
   Pure presentation. Existing Firestore permissions, handlers and financial state remain untouched. */
:root{--studio-ink:#f6f6f7;--studio-muted:#9a9ba3;--studio-faint:#6e7079;--studio-surface:#141417;--studio-layer:#19191d;--studio-edge:#303037;--studio-warm:#e5bac4}
.studio-admin{width:min(1510px,calc(100% - 50px));max-width:none;margin:0 auto 84px;padding-top:clamp(25px,4.5vw,65px)}
.studio-admin-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:34px;margin-bottom:25px}
.studio-admin-intro h1{font-size:clamp(1.9rem,3.1vw,3.25rem);font-weight:800;letter-spacing:-.055em;line-height:1.16;max-width:680px;margin:11px 0 12px;color:var(--studio-ink)}
.studio-admin-intro p{color:var(--studio-muted);margin:0;font-size:.87rem}
.studio-admin-metrics{display:flex;align-items:stretch;gap:10px}
.studio-admin-metrics>div{min-width:120px;border:1px solid var(--studio-edge);border-radius:13px;background:linear-gradient(135deg,#1c1b1f,#121215);padding:14px 17px;display:flex;flex-direction:column;justify-content:space-between;gap:7px}
.studio-admin-metrics span{font-size:.67rem;color:var(--studio-muted);white-space:nowrap}.studio-admin-metrics strong{font-size:1.65rem;line-height:1;letter-spacing:-.06em;color:var(--studio-ink)}
.studio-admin-shell{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:670px;border:1px solid var(--studio-edge);background:#111113;border-radius:18px;overflow:hidden;box-shadow:0 24px 85px #0006}
.studio-admin-nav.tabs{display:flex;flex-direction:column;gap:5px;align-items:stretch;border-right:1px solid #292930;background:linear-gradient(180deg,#19191d,#121214 65%);margin:0;padding:26px 12px;min-width:0}
.studio-admin-nav.tabs>button{display:flex;align-items:center;gap:11px;width:100%;min-height:43px;padding:11px 12px;text-align:left;border:1px solid transparent;background:transparent;color:#adaeb6;box-shadow:none;outline-offset:-1px;border-radius:10px;font-size:.78rem;font-weight:700;line-height:1.3;white-space:normal}
.studio-admin-nav.tabs>button:hover{background:#242428;color:var(--studio-ink)}
.studio-admin-nav.tabs>button.selected{background:#2b282d;color:#fff;border-color:#51414a;box-shadow:inset 3px 0 0 var(--studio-warm)}
.studio-nav-dot{height:7px;width:7px;flex:none;border:1px solid #6b6970;border-radius:2px;transform:rotate(45deg)}
.studio-admin-nav.tabs>button.selected .studio-nav-dot{background:var(--studio-warm);border-color:var(--studio-warm)}
.studio-nav-count{margin-left:auto;min-width:22px;border-radius:7px;padding:2px 6px;color:#ffdee7;font-size:.67rem;text-align:center;background:#604451}
.studio-admin-content{min-width:0;padding:clamp(19px,2.5vw,34px);background:radial-gradient(ellipse at 100% 0%,#2e202610,transparent 38%),#111114}
.studio-admin-content .inbox-head h2{font-size:clamp(1.4rem,2vw,2rem);letter-spacing:-.04em}
.studio-admin-content .inbox-head,.studio-admin-content .inbox-controls{margin-top:0}
.studio-admin-content .card,.studio-admin-content .inbox-table,.studio-admin-content .insight-panel{border-color:#34343a;border-radius:15px;background:#1a1a1e}
.studio-admin-content .cards.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.studio-admin-content .order-card,.studio-admin-content .offer-card{min-width:0}
.studio-admin-content button:focus-visible,.studio-chat button:focus-visible,.studio-inbox-list button:focus-visible,.studio-inbox-list input:focus-visible{outline:2px solid #f4dae3;outline-offset:2px}
/* The admin support route is now an actual live split workspace, not a detached table. */
.studio-admin-content:has(.studio-inbox-workspace){padding:0}
.studio-inbox-workspace{display:grid;grid-template-columns:minmax(285px,345px) minmax(0,1fr);height:min(750px,calc(100dvh - 180px));min-height:610px;background:#101013;overflow:hidden}
.studio-inbox-list{min-height:0;min-width:0;display:flex;flex-direction:column;border-right:1px solid #323238;background:#17171a}
.studio-inbox-top{padding:25px 17px 17px;border-bottom:1px solid #2e2d33}
.studio-inbox-eyebrow{display:flex;align-items:center;justify-content:space-between;color:#b2a2aa;letter-spacing:.13em;font-size:.64rem;font-weight:800}
.studio-inbox-eyebrow span{display:grid;place-items:center;background:#30272e;color:#ebcbd4;border:1px solid #674952;border-radius:8px;width:27px;height:25px;letter-spacing:0;font-size:.75rem}
.studio-inbox-top h2{font-size:1.5rem;font-weight:800;letter-spacing:-.045em;line-height:1.15;margin:12px 0 7px;color:#f4f3f5}
.studio-inbox-top p{color:var(--studio-muted);font-size:.73rem;line-height:1.6;margin:0 0 17px}
.studio-search{height:43px;display:flex;align-items:center;gap:9px;padding:0 13px;border-radius:10px;background:#0e0e10;border:1px solid #38363d;color:#9d99a3}
.studio-search:focus-within{border-color:#bb8a9e;box-shadow:0 0 0 2px #bb8a9e22}
.studio-search input{border:0!important;box-shadow:none!important;outline:0!important;background:transparent!important;color:#f7f4f7;font:inherit;font-size:.79rem;min-width:0;width:100%;height:100%;padding:0!important}
.studio-search input::placeholder{color:#77747f}
.studio-inbox-filters{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
.studio-inbox-filters button{padding:6px 9px;background:#212025;border:1px solid #39363e;color:#bbb8c0;border-radius:7px;font:inherit;font-size:.69rem;cursor:pointer}
.studio-inbox-filters button.active{background:#44313b;border-color:#896779;color:#f8e8ee}
.studio-ticket-items{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#57515a #161619}
.studio-ticket-item{border-bottom:1px solid #2c2b31}
.studio-ticket-select{display:flex;gap:12px;align-items:flex-start;text-align:left;width:100%;padding:15px 16px;border:0;border-left:3px solid transparent;background:transparent;color:#e9e6eb;cursor:pointer;font:inherit}
.studio-ticket-select:hover{background:#232126}.studio-ticket-select.selected{background:#2d272d;border-left-color:#e6bbc5}
.studio-avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#37333a,#222228);border:1px solid #5e4b57;color:#ead0d7;font-weight:800;font-size:.92rem}
.studio-ticket-detail{display:flex;flex-direction:column;min-width:0;gap:5px;flex:1}
.studio-ticket-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.studio-ticket-heading strong{font-size:.82rem;line-height:1.45;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.studio-ticket-heading time{color:#88848e;white-space:nowrap;font-size:.64rem;margin-top:2px}
.studio-ticket-client{font-size:.72rem;color:#a39eaa;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-ticket-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}
.studio-ticket-status,.studio-pay-mark{font-size:.61rem;color:#ccc5cf;border:1px solid #47414a;padding:3px 6px;border-radius:5px}
.studio-ticket-status.open{border-color:#79616b;color:#f3c6d3;background:#48353f}
.studio-ticket-status.answered{border-color:#485b57;color:#b8d8cc;background:#273832}
.studio-pay-mark{border-color:#625540;color:#dccdb4;background:#302a21}
.studio-inbox-none{padding:43px 19px;text-align:center;color:var(--studio-muted);font-size:.83rem;line-height:1.6}
.studio-inbox-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid #302e35;color:#a9a2ab;font-size:.72rem}
.studio-inbox-pagination>div{display:flex;gap:6px}.studio-inbox-pagination button{min-width:31px;height:29px;border:1px solid #4c464f;border-radius:7px;background:#262329;color:#fff;cursor:pointer}.studio-inbox-pagination button:disabled{opacity:.28;cursor:default}
/* Shared client and admin conversation, using the SAME renderer and Firestore actions. */
.studio-chat.support-chat{display:flex;flex-direction:column;height:100%;max-height:none;min-height:0;border:0;border-radius:0;box-shadow:none;background:radial-gradient(ellipse at 100% 0%,#50323d17,transparent 50%),#101013}
.studio-chat .studio-chat-header{flex:none;display:flex;gap:14px;align-items:center;justify-content:space-between;padding:18px clamp(16px,2.5vw,28px);background:#19181c;border-bottom:1px solid #353039;min-height:90px}
.studio-chat-title{flex:1;min-width:0}.studio-chat-title h2{font-size:1.02rem;margin:5px 0 8px;font-weight:800;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.studio-chat-title .eyebrow{font-size:.61rem;color:#af9ba5;letter-spacing:.13em}
.studio-chat-metadata{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.studio-chat-metadata .badge{font-size:.62rem;padding:4px 8px}
.studio-chat-email{font-size:.69rem;color:#a29da7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}
.studio-create-quote{white-space:normal;max-width:210px;line-height:1.4!important;padding:10px 13px!important;font-size:.74rem!important;flex:none}
.studio-chat .messages{display:flex;flex:1;min-height:120px;max-height:none;overflow:auto;scrollbar-width:thin;scrollbar-color:#55515c #111013;padding:22px clamp(13px,2.8vw,32px);gap:11px}
.studio-chat .bubble{max-width:min(75%,550px);background:#252429;border:1px solid #38353d;border-radius:15px 15px 15px 5px;box-shadow:none;padding:11px 14px}
.studio-chat .bubble.own{background:#43313a;border-color:#69515d;border-radius:15px 15px 5px 15px}
.studio-chat .bubble.system{background:#1e1e22;border-color:#323039;border-radius:12px}
.studio-chat .bubble p{font-size:.86rem;line-height:1.6;overflow-wrap:anywhere}
.studio-chat .bubble-sender{font-size:.67rem;color:#deb6c4}
.studio-chat .chat-date{border:1px solid #323037;background:#201f23;color:#aaa4af;font-size:.64rem}
.studio-chat .ticket-offers{flex:0 1 auto;min-height:0;max-height:245px;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:0 clamp(13px,2.8vw,30px) 12px;scrollbar-width:thin}
.studio-chat .ticket-offers:empty{display:none}
.studio-chat .ticket-offers>h3{font-size:.78rem;font-weight:800;color:#d3c1c8;margin:8px 0 10px;letter-spacing:.01em}
.studio-chat .offer-card{background:linear-gradient(145deg,#252128,#1b1b1e);border:1px solid #51414b!important;border-radius:13px;padding:15px;box-shadow:none;margin:0 0 9px}
.studio-chat .offer-card h3{font-size:.92rem;margin:6px 0}.studio-chat .offer-card .order-top{align-items:flex-start}.studio-chat .offer-card .offer-split{gap:6px}
.studio-chat .offer-card .offer-split>div{background:#151518;border:1px solid #38343b;border-radius:8px;padding:10px}
.studio-chat .offer-card .offer-split small{font-size:.65rem;line-height:1.4;color:#b1a6b2}.studio-chat .offer-card .offer-split strong{font-size:.92rem}
.studio-chat .reply-form{flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:13px;row-gap:7px;padding:15px clamp(13px,2.5vw,26px);background:#1b191d;border-top:1px solid #37313a;margin:0}
.studio-chat .reply-form>label{grid-column:1/-1;display:block;font-size:.72rem;font-weight:700;color:#c8bac4;line-height:1.3}
.studio-chat .reply-form textarea{display:block;width:100%;min-height:66px;max-height:140px;resize:vertical;margin-top:7px;padding:12px 13px!important;border:1px solid #4c434c;border-radius:11px;background:#111114;color:#f5f4f5;font-size:.86rem;line-height:1.55;box-sizing:border-box}
.studio-chat .reply-form textarea:focus-visible{outline:2px solid #bda7b1;outline-offset:1px}
.studio-chat .reply-form .reply-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0;min-width:0}
.studio-chat .reply-form .file-picker{display:inline-flex;align-items:center;cursor:pointer;background:#28262b;border:1px solid #474049;border-radius:8px;padding:9px 11px;color:#e5d5df;font-size:.71rem;white-space:nowrap}
.studio-chat .reply-form .file-hint{font-size:.66rem;color:#88848f;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-chat .reply-form>.button{min-width:112px;min-height:39px;padding:10px 14px;border-radius:9px;white-space:nowrap}
.studio-chat .ticket-admin{flex:none;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid #302d33;background:#1b191d;padding:9px 22px;margin:0}
.studio-chat .ticket-admin .text-button{font-size:.7rem;color:#bc9eab}
.studio-chat .studio-chat-closed{padding:18px 23px;color:#b3b0b6;font-size:.8rem;background:#1a1a1d;margin:0;border-top:1px solid #36343a}
.studio-chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:1;padding:45px 25px}
.studio-chat-empty .studio-empty-glyph{font-size:2rem;display:grid;place-items:center;width:77px;height:77px;border-radius:22px;border:1px solid #5a4650;background:radial-gradient(circle at 30% 30%,#5e465260,transparent 70%),#252126;color:#e6becd;margin-bottom:22px}
.studio-chat-empty h2{font-size:clamp(1.4rem,2.5vw,2.15rem);margin:13px 0 9px}.studio-chat-empty p{max-width:335px;margin:0;font-size:.82rem;line-height:1.7}
.support-center{grid-template-columns:minmax(260px,340px) minmax(0,1fr);height:min(760px,calc(100dvh - 175px));min-height:595px;max-height:none;background:#111114;border:1px solid #343039}
.support-center .support-sidebar{min-height:0;background:#17171b;overflow:auto}
.support-center .ticket-row{border:1px solid transparent;border-radius:10px;gap:8px}.support-center .ticket-row.selected{border-color:#624e59;background:#302830}
.support-center .support-sidebar .ticket-form{background:#252227;border-color:#423c44}
.support-center .ticket-form input,.support-center .ticket-form textarea{font-size:16px}
/* Payment proposal dialogs and cards: modern, readable, no client-side payment confirmation. */
.studio-quote-context{display:flex;gap:12px;align-items:center;padding:14px 16px;background:#211f24;border:1px solid #3c3740;border-radius:11px;margin:18px 0}
.studio-quote-context .studio-quote-signal{display:grid;place-items:center;width:37px;height:37px;flex:none;background:#3d303b;color:#f3d8e0;border-radius:10px;font-size:1.2rem;font-weight:800}
.studio-quote-context strong{display:block;overflow-wrap:anywhere;font-size:.86rem}
.studio-quote-context small{display:block;font-size:.69rem;margin-top:6px;color:#aaa5ad;line-height:1.5}
.studio-offer-rule{border-left:2px solid #af8e9d;padding:5px 11px;color:#aaa5ae;font-size:.74rem;line-height:1.6}
.studio-admin .offer-card{position:relative;overflow:hidden;box-shadow:0 12px 36px #0002;border:1px solid #3c353d;background:linear-gradient(155deg,#211f24,#17171b)}
.studio-admin .offer-card:before{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,#d8bbc5,transparent 60%)}
.studio-admin .offer-card .offer-split>div{border-radius:10px;background:#121215;border:1px solid #363139}
.studio-admin .offer-card .actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
/* Designed keyboard/touch/reduced-motion behaviour: financial actions never animate in 3D. */
@media (min-width:1100px){.studio-admin-shell:has(.studio-inbox-workspace){grid-template-columns:176px minmax(0,1fr)}.studio-admin-shell:has(.studio-inbox-workspace) .studio-admin-nav.tabs{padding-inline:8px}.studio-admin-shell:has(.studio-inbox-workspace) .studio-admin-nav.tabs>button{font-size:.72rem;padding-inline:8px}}
@media (max-width:1110px){.studio-admin-intro{align-items:flex-start;flex-direction:column}.studio-admin-metrics{width:100%}.studio-admin-metrics>div{flex:1}.studio-admin-shell{grid-template-columns:175px minmax(0,1fr)}.studio-inbox-workspace{grid-template-columns:minmax(255px,310px) minmax(0,1fr)}.studio-admin-nav.tabs{padding:16px 9px}.studio-admin-nav.tabs>button{padding:9px;font-size:.72rem}.studio-admin-content .cards.two{grid-template-columns:1fr}}
@media (max-width:830px){.studio-admin{width:min(100% - 28px,1510px)}.studio-admin-shell{display:block;min-height:0}.studio-admin-nav.tabs{display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin;border-right:0;border-bottom:1px solid #343039;white-space:nowrap;padding:10px 11px;gap:5px}.studio-admin-nav.tabs>button{flex:none;width:auto;white-space:nowrap;min-height:37px;font-size:.7rem;gap:7px}.studio-admin-nav.tabs>button.selected{box-shadow:inset 0 -2px 0 #e5bac4}.studio-admin-content{padding:20px}.studio-admin-content:has(.studio-inbox-workspace){padding:0}.studio-inbox-workspace{height:650px;min-height:0;grid-template-columns:minmax(220px,39%) minmax(0,1fr)}.studio-chat .studio-chat-header{padding:13px 14px;min-height:76px}.studio-chat .studio-create-quote{max-width:145px;font-size:.68rem!important}}
@media (max-width:650px){.studio-admin{padding-top:22px;margin-bottom:45px}.studio-admin-intro{margin-bottom:19px}.studio-admin-intro h1{font-size:1.9rem}.studio-admin-metrics{gap:6px}.studio-admin-metrics>div{min-width:0;padding:11px 9px}.studio-admin-metrics span{font-size:.61rem;white-space:normal;line-height:1.4}.studio-admin-metrics strong{font-size:1.34rem}.studio-admin-shell{border-radius:13px}.studio-inbox-workspace{display:flex;flex-direction:column;height:min(680px,calc(100dvh - 110px));min-height:450px}.studio-inbox-list{flex:1;border-right:0}.studio-inbox-workspace .studio-inbox-conversation{display:none}.studio-inbox-workspace.has-chat .studio-inbox-list{display:none}.studio-inbox-workspace.has-chat .studio-inbox-conversation{display:flex;flex:1}.studio-chat .chat-back{display:block;position:static;font-size:.7rem;flex:none;padding:8px 6px}.studio-chat .studio-chat-header{gap:9px;flex-wrap:wrap}.studio-chat-title{flex-basis:calc(100% - 94px)}.studio-chat-title h2{font-size:.91rem}.studio-create-quote{max-width:none!important;width:100%;padding:8px 10px!important;min-height:34px}.studio-chat .messages{padding:15px 13px}.studio-chat .bubble{max-width:87%}.studio-chat .reply-form{grid-template-columns:1fr;gap:8px;padding:11px 12px}.studio-chat .reply-form>label{grid-column:1}.studio-chat .reply-form textarea{min-height:60px;font-size:16px}.studio-chat .reply-form>.button{min-height:37px;justify-self:stretch}.studio-chat .ticket-offers{max-height:190px;padding-inline:10px}.support-center{display:flex;flex-direction:column;height:auto;max-height:none;min-height:0}.support-center .support-sidebar{width:100%;max-height:280px;border-right:0;border-bottom:1px solid #3d373e;flex:none}.support-center .support-chat{height:min(615px,calc(100dvh - 170px));min-height:400px;max-height:none;flex:none;width:100%}.support-center.has-chat .support-sidebar{display:none}.support-center .chat-back{display:block}}
@media (prefers-reduced-motion:reduce){.studio-admin *, .studio-chat *, .studio-inbox-list *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.studio-compose-hint{font-size:.62rem;color:#89828c;white-space:nowrap}
.studio-financial-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:0 0 16px}
.studio-financial-overview>div{border:1px solid #3b353d;border-radius:12px;background:#1e1b20;padding:16px 18px;display:flex;flex-direction:column;gap:9px}
.studio-financial-overview span{font-size:.73rem;line-height:1.5;color:#a7a0ab}.studio-financial-overview strong{font-size:1.65rem;line-height:1.1;color:#f6f4f6}
@media(max-width:620px){.studio-financial-overview{gap:7px}.studio-financial-overview>div{padding:10px}.studio-financial-overview strong{font-size:1.3rem}}
@media(pointer:coarse){.studio-compose-hint{display:none}}


/* src/css/executive-upgrade.css */
/* LANNER STUDIO — 2026.10.14 executive UI. Additive visual layer.
   Financial confirmation is never inferred from DOM/UI state. */
:root{--exec-border:#333238;--exec-white:#f8f8f8;--exec-muted:#9b9aa2;--exec-back:#0d0d10;--exec-accent:#e9c9d5}
/* Full-width back office while keeping comfortable reading widths in standard pages. */
.studio-admin{width:min(100% - 32px,1920px);max-width:none;padding-top:22px;margin-bottom:38px}
.studio-admin-intro{gap:28px;margin-bottom:18px}.studio-admin-intro h1{font-size:clamp(1.9rem,2.5vw,3rem);margin:7px 0}
.studio-admin-shell{grid-template-columns:196px minmax(0,1fr);min-height:min(830px,calc(100dvh - 166px));border-radius:16px}
.studio-admin-content{padding:clamp(19px,2vw,36px)}
.studio-inbox-workspace{height:min(850px,calc(100dvh - 188px));min-height:550px;grid-template-columns:minmax(280px,355px) minmax(0,1fr)}
.studio-admin-shell:has(.studio-inbox-workspace){grid-template-columns:196px minmax(0,1fr)}
.studio-admin-content:has(.studio-inbox-workspace){padding:0}
.studio-ticket-select{padding:16px 15px;min-height:78px}
.studio-ticket-select:hover{background:#262529}
.studio-inbox-top{padding:20px 19px 15px}
.studio-inbox-top p{max-width:275px}
.studio-chat .messages{background:radial-gradient(ellipse at 50% 15%,#38323b20,transparent 68%),#101013;scrollbar-width:thin}
.studio-chat .bubble{max-width:min(77%,680px);padding:14px 17px}
.studio-chat .bubble.own{background:#302932;border-color:#64525e}
.studio-chat .reply-form{padding:15px 22px 19px}
.studio-chat .reply-form textarea{background:#121215;border-color:#55515a;min-height:76px}
.studio-chat .reply-form textarea:focus{border-color:#dec7d3}
.studio-chat .studio-chat-header{min-height:78px}
.studio-admin-content .inbox-head{margin:0 0 20px}
/* Conversation list / inbox controls designed for sustained work. */
.support-center.wrap.support-upgrade{width:min(100% - 32px,1550px);max-width:none;min-height:570px;height:min(780px,calc(100dvh - 198px));grid-template-columns:318px minmax(0,1fr);border-radius:18px;overflow:hidden;box-shadow:0 22px 75px #0007;margin-bottom:68px}
.support-upgrade .support-sidebar{padding:0;display:flex;flex-direction:column;overflow:auto;background:#17171b}
.support-upgrade .support-sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 18px 14px;border-bottom:1px solid var(--exec-border)}
.support-upgrade .support-sidebar-heading h2{font-size:1rem;margin:0}
.support-new-button{display:flex;align-items:center;gap:8px;justify-content:center;background:#f0eef0;color:#18161a;border:1px solid #f0eef0;border-radius:10px;min-height:40px;padding:8px 11px;font-weight:750;font-size:.72rem;cursor:pointer;white-space:nowrap}
.support-new-button:hover{background:#fff;transform:translateY(-1px)}
.support-upgrade .ticket-list{padding:9px 11px;min-width:0;overflow-y:auto}
.support-upgrade .ticket-row{padding:14px;border-radius:10px;min-width:0}
.support-upgrade .ticket-row.selected{border-color:#7b6470;background:#29232b}
.support-chat-main{min-width:0;overflow:hidden}
.support-start-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100%;text-align:center;padding:36px}
.support-welcome-mark{width:63px;height:63px;display:grid;place-items:center;border-radius:18px;font-size:1.45rem;background:linear-gradient(150deg,#2d2930,#18171c);border:1px solid #514751;color:#e2c1d0;box-shadow:0 12px 44px #0007}
.support-start-screen h2{max-width:480px;font-size:clamp(1.3rem,2.1vw,1.9rem);line-height:1.2;margin:4px 0 0}
.support-start-screen p{color:#aaa6ae;max-width:415px;font-size:.85rem;line-height:1.65;margin:0 0 7px}
.support-compose-view{width:100%;height:100%;min-height:0;overflow-y:auto;padding:clamp(22px,3.8vw,48px);scrollbar-width:thin;max-width:950px;margin:auto}
.support-compose-header h2{font-size:clamp(1.7rem,3vw,2.6rem);letter-spacing:-.045em;margin:12px 0}
.support-compose-header p{font-size:.88rem;color:var(--exec-muted);max-width:580px;line-height:1.6}
.support-compose-form{display:grid;gap:20px;margin-top:25px;max-width:740px}
.support-compose-form>label{display:grid;gap:9px;color:#ddd8e0;font-size:.78rem;font-weight:700}
.support-compose-form>label>input,.support-compose-form>label>textarea{width:100%;background:#151518;border:1px solid #4b464f;border-radius:12px;padding:14px 16px;color:#f7f5f8;font:inherit;font-size:1rem;line-height:1.5;min-height:49px}
.support-compose-form>label>textarea{min-height:148px;resize:vertical}
.support-compose-form input:focus-visible,.support-compose-form textarea:focus-visible{outline:2px solid var(--exec-accent);outline-offset:2px}
.support-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:0;padding:0;margin:0;min-width:0}
.support-topic-grid legend{font-size:.8rem;font-weight:750;color:#ddd5dd;margin-bottom:14px}
.support-topic{position:relative;display:flex;align-items:center;gap:13px;min-height:70px;border:1px solid #3c3940;border-radius:13px;background:linear-gradient(145deg,#211f24,#17171a);padding:12px;cursor:pointer;color:#dad7df;font-size:.85rem;font-weight:700}
.support-topic input{position:absolute;opacity:0;pointer-events:none}
.support-topic:has(input:checked){background:#302932;border-color:#c3a4b4;box-shadow:inset 0 0 0 1px #ae90a158}
.support-topic:has(input:focus-visible){outline:3px solid #e5cfdb;outline-offset:2px}
.support-topic-icon{display:grid;place-items:center;width:41px;height:41px;flex:none;border-radius:10px;background:#343039;color:#f0dce8;font-size:1.15rem}
.support-compose-footer{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.support-compose-footer>.button{margin-left:auto;min-width:138px}
/* QR menu: live content in DOM, neutral photography only, restrained depth rather than a poster inside a poster. */
.restaurant-upgrade{width:min(100% - 32px,1260px);max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);padding:clamp(26px,3.2vw,46px);gap:clamp(25px,4vw,66px);background:radial-gradient(ellipse at 90% 10%,#3a2a3224,transparent 55%),linear-gradient(148deg,#191719,#101013 75%);border:1px solid #373037;border-radius:23px;overflow:hidden;box-shadow:0 28px 75px #0005;align-items:center;margin-top:48px;margin-bottom:45px;isolation:isolate}
.restaurant-upgrade .restaurant-info{min-width:0;align-self:center}
.restaurant-upgrade .eyebrow{letter-spacing:.13em;color:#cfb6c0;font-size:.69rem}
.restaurant-upgrade .restaurant-info h2{font-size:clamp(1.85rem,3.1vw,3rem);line-height:1.11;letter-spacing:-.055em;max-width:530px;margin:15px 0 13px}
.restaurant-upgrade .restaurant-info>p{color:#b7b1b8;max-width:470px;line-height:1.7;font-size:.89rem}
.restaurant-value{display:grid;gap:5px;margin:22px 0;border-top:1px solid #464047;border-bottom:1px solid #464047;padding:17px 0}
.restaurant-value>small{color:#9f9aa2;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.restaurant-value>strong{font-size:clamp(2.1rem,3.1vw,3.05rem);letter-spacing:-.06em;line-height:1.1;font-weight:800;color:#fff}
.restaurant-installments{display:flex;gap:10px 20px;flex-wrap:wrap;color:#d2b7c3;font-size:.74rem}
.restaurant-included>strong{font-size:.87rem;line-height:1.4}
.restaurant-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:13px 0 25px}
.restaurant-chip-grid span{display:flex;align-items:center;gap:9px;min-height:42px;border:1px solid #3b363d;border-radius:9px;padding:8px 10px;background:#201d22;color:#ddd9df;font-size:.7rem;line-height:1.4}
.restaurant-chip-grid i{color:#cbb0bb;font:800 .65rem Manrope,sans-serif}
.restaurant-upgrade .restaurant-actions{display:flex;gap:10px;flex-wrap:wrap}
.restaurant-upgrade .restaurant-actions .button{min-height:45px;font-size:.78rem;padding:12px 17px;white-space:normal;text-align:center}
.restaurant-stage{position:relative;margin:0;min-width:0;perspective:1100px}
.restaurant-visual{height:clamp(310px,29vw,450px);position:relative;overflow:hidden;border-radius:20px;border:1px solid #51454c;background:#151316;box-shadow:0 28px 70px #0009,0 0 65px #67455415;transform:rotateY(-5deg) rotateX(2deg) translateZ(0);transform-origin:center;transition:transform .6s cubic-bezier(.2,.85,.2,1),box-shadow .6s}
.restaurant-stage:hover .restaurant-visual{transform:rotateY(0deg) rotateX(0deg) translateY(-6px);box-shadow:0 34px 90px #000c,0 0 70px #a0748a20}
.restaurant-visual img{position:absolute;height:116%;width:auto;max-width:none;left:-85%;top:-8%;filter:contrast(1.05) saturate(.82);object-fit:cover}
.restaurant-float{position:absolute;display:flex;align-items:center;gap:8px;border:1px solid #77707986;background:#171417db;backdrop-filter:blur(12px);border-radius:10px;padding:11px 14px;box-shadow:0 17px 36px #0008;pointer-events:none}
.restaurant-float span{font-size:.6rem;letter-spacing:.12em;color:#c2b3bd}.restaurant-float b{font-size:.79rem;color:#f5ebf1}
.restaurant-float.float-first{right:-12px;bottom:50px;transform:translateZ(30px)}
.restaurant-float.float-second{left:-13px;top:38px;transform:translateZ(20px)}
.restaurant-stage figcaption{text-align:right;color:#989097;font-size:.66rem;line-height:1.5;margin-top:15px}
.dialog:has(.restaurant-checkout){width:min(990px,calc(100vw - 20px));max-width:990px;max-height:94dvh;overflow-y:auto;padding:0;border-radius:20px}
.dialog:has(.restaurant-checkout)>.dialog-top{margin:0;padding:18px 25px;border-bottom:1px solid #38343c}
.restaurant-checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,.9fr);gap:26px;padding:26px}
.restaurant-checkout-intro{min-width:0}.restaurant-checkout-intro h2{font-size:clamp(1.7rem,3vw,2.65rem);letter-spacing:-.05em;line-height:1.14;margin:12px 0}
.restaurant-checkout-intro>p{font-size:.84rem;line-height:1.65;color:#bdb6bf}
.restaurant-checkout-steps{display:grid;gap:8px;margin:20px 0}
.restaurant-checkout-steps>div{display:flex;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid #403942;border-radius:10px;background:#201d23}
.restaurant-checkout-steps span{font-size:.75rem;color:#b7adb9}.restaurant-checkout-steps strong{font-size:.92rem;white-space:nowrap}
.restaurant-checkout-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;font-size:.72rem;color:#c5b8c5}
.restaurant-checkout-payment{padding:23px;background:#1c1a1f;border:1px solid #48404b;border-radius:16px;min-width:0}
.restaurant-checkout-payment h3{font-size:1.15rem;margin:0 0 10px}
.restaurant-checkout-payment .payment-method-grid{grid-template-columns:1fr;gap:10px;margin:14px 0 18px}
.restaurant-checkout-payment .payment-method-tile{min-height:113px;padding:14px;flex-direction:row;align-items:center;gap:10px}
.restaurant-checkout-payment .method-mark{width:40px;height:40px;flex:none}
.restaurant-checkout-payment .method-copy strong{font-size:.86rem}.restaurant-checkout-payment .method-copy small{font-size:.7rem}
.restaurant-checkout-payment>.button{width:100%;margin:17px 0 3px}
.restaurant-checkout-payment>.check{font-size:.78rem;color:#ded8e0}
/* Payment proposal directory and client directory: pragmatic information density. */
.finance-tools{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:14px;margin:17px 0}
.finance-tools .studio-inbox-filters{display:flex;flex-wrap:wrap;gap:7px}
.finance-tools>label{display:grid;gap:8px;min-width:min(100%,280px);font-size:.72rem;color:#aaa5ad}
.finance-tools input,.directory-search input{min-height:41px;background:#121216;border:1px solid #45404a;border-radius:9px;color:#fff;padding:9px 12px;font:inherit;font-size:.83rem}
.offer-directory{align-items:start}.offer-directory .offer-card{min-width:0}
.directory-head{display:flex;gap:15px;align-items:end;justify-content:space-between;margin:0 0 21px;flex-wrap:wrap}
.directory-head h2{font-size:1.7rem;letter-spacing:-.04em;margin:6px 0 0}
.directory-search{display:flex;gap:7px;align-items:end;flex-wrap:wrap}.directory-search input{width:min(340px,60vw)}
.client-directory-upgraded{display:grid;gap:8px}
.client-directory-row{display:flex;align-items:center;text-align:left;gap:13px;padding:14px 17px;min-height:79px;border-radius:12px;border:1px solid #3b3940;background:#1d1b20;color:#fff;cursor:pointer;width:100%}
.client-directory-row:hover{border-color:#a68b9b;background:#28222a;transform:translateY(-1px)}
.client-initial{display:grid;place-items:center;width:42px;height:42px;border:1px solid #584c56;border-radius:12px;background:#302831;color:#f2dbe4;font-weight:800;flex:none}
.client-directory-name{display:grid;gap:4px;flex:1;min-width:0}.client-directory-name strong{font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-directory-name small{color:#aaa4b0;font-size:.7rem}
.client-directory-stats{font-size:.72rem;color:#bbb3bd;white-space:nowrap}
.directory-pagination{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:19px 3px;color:#aaa1ac;font-size:.76rem}
.directory-pagination>div{display:flex;gap:6px}
.dialog:has(.client-profile){width:min(1050px,calc(100vw - 24px));max-width:1050px;max-height:92dvh;overflow-y:auto}
.client-profile .project-progress{max-width:100%;min-width:0;overflow:hidden}
.client-profile .project-progress-track{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
.client-profile .project-progress-step{flex:0 0 138px;min-width:138px;width:138px;word-break:normal;overflow-wrap:normal;padding:8px}
.client-profile .project-progress-step small{display:block;word-break:normal;overflow-wrap:break-word;line-height:1.3}
/* Context drawer next to Telegram and WhatsApp */
.lanner-contact-dock .dock-conversations{position:relative;display:block}
.lanner-contact-dock .dock-conversations>summary{list-style:none;cursor:pointer;position:relative;display:grid;place-items:center;width:42px;height:42px;border:1px solid #4d454e;background:#272128;color:#f6e8f0;border-radius:13px;box-shadow:0 8px 25px #0005}
.lanner-contact-dock .dock-conversations>summary::-webkit-details-marker{display:none}
.lanner-contact-dock .dock-conversations svg{width:21px;height:21px}
.lanner-contact-dock .dock-count{position:absolute;top:-6px;right:-7px;display:grid;place-items:center;min-width:18px;height:18px;border-radius:9px;background:#d5b5c4;color:#181318;font-weight:800;font-size:.62rem;border:2px solid #141116}
.lanner-contact-dock .dock-menu{position:absolute;right:calc(100% + 12px);bottom:0;width:min(320px,calc(100vw - 90px));max-height:min(420px,65dvh);overflow-y:auto;padding:13px;background:#19171d;border:1px solid #5c4d59;border-radius:14px;box-shadow:0 22px 68px #000c;display:grid;gap:6px;z-index:99}
.dock-menu>strong{font-size:.88rem;padding:4px 7px 9px}.dock-menu>a{display:grid;gap:3px;text-decoration:none;color:#f2edf2;border:1px solid #3b353e;border-radius:9px;background:#232027;padding:10px;font-size:.79rem}
.dock-menu>a:hover{background:#332a34}.dock-menu>a small{font-size:.61rem;color:#c4abb9}.dock-menu>a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Subtle affordances only; respect accessibility and low-power devices. */
@media(max-width:1050px){.restaurant-upgrade{grid-template-columns:1fr 1fr;gap:22px}.restaurant-visual img{left:-95%}.restaurant-upgrade .restaurant-actions .button{width:100%}}
@media(max-width:850px){.studio-admin{width:calc(100% - 18px)}.studio-admin-shell,.studio-admin-shell:has(.studio-inbox-workspace){display:block;min-height:0}.studio-inbox-workspace{min-height:470px;height:min(750px,calc(100dvh - 230px))}.support-center.wrap.support-upgrade{width:calc(100% - 16px);grid-template-columns:260px minmax(0,1fr)}.restaurant-upgrade{grid-template-columns:1fr;max-width:710px}.restaurant-visual{height:340px}.restaurant-visual img{left:-65%;height:120%}.restaurant-checkout{grid-template-columns:1fr}}
@media(max-width:650px){.support-center.wrap.support-upgrade{grid-template-columns:1fr;height:min(735px,calc(100dvh - 156px));min-height:540px}.support-center.support-upgrade:not(.has-chat):not(.is-composing) .support-sidebar{display:block}.support-center.support-upgrade:not(.has-chat):not(.is-composing) .support-chat-main{display:none}.support-center.support-upgrade.is-composing .support-sidebar{display:none}.support-center.support-upgrade.is-composing .support-chat-main{display:flex}.support-center.support-upgrade.has-chat .support-sidebar{display:none}.support-center.support-upgrade.has-chat .support-chat-main{display:flex}.support-compose-view{padding:18px}.support-topic-grid{grid-template-columns:1fr 1fr}.support-topic{min-height:65px;padding:8px;gap:9px;font-size:.73rem}.support-topic-icon{width:32px;height:32px}.support-compose-footer>.button{width:100%;margin-left:0}.restaurant-upgrade{width:calc(100% - 22px);padding:23px 20px;margin-top:25px;border-radius:16px}.restaurant-upgrade .restaurant-info h2{font-size:2rem}.restaurant-chip-grid{grid-template-columns:1fr 1fr}.restaurant-visual{height:285px}.restaurant-visual img{left:-90%;height:119%}.restaurant-float{display:none}.restaurant-stage figcaption{text-align:left}.restaurant-checkout{padding:17px}.restaurant-checkout-steps>div{padding:11px}.restaurant-checkout-features{grid-template-columns:1fr 1fr}.directory-search input{width:100%}.directory-search{width:100%}.directory-search .button{flex:1}.directory-pagination{flex-direction:column;align-items:stretch}.directory-pagination>div .button{flex:1}.studio-inbox-workspace{height:min(740px,calc(100dvh - 227px))}.studio-admin .studio-admin-intro h1{font-size:1.8rem}.studio-admin-metrics{overflow:auto}.studio-admin-metrics>div{min-width:105px}.dialog:has(.client-profile){width:calc(100vw - 12px);padding:16px}}
@media(max-width:390px){.restaurant-chip-grid,.support-topic-grid{grid-template-columns:1fr}.restaurant-installments{display:grid}.restaurant-value>strong{font-size:2.4rem}}
@media(pointer:coarse),(prefers-reduced-motion:reduce){.restaurant-visual,.restaurant-stage:hover .restaurant-visual{transform:none;transition:none}.client-directory-row:hover{transform:none}.restaurant-float{backdrop-filter:none}}

.restaurant-visual img{inset:0;left:0;top:0;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:50% 50%}
@media(max-width:1050px){.restaurant-visual img{left:0;height:100%}}
@media(max-width:850px){.restaurant-visual img{left:0;height:100%}}
@media(max-width:650px){.restaurant-visual img{left:0;height:100%}}

/* Avoid native file inputs overflowing mobile support dialogs. */
.support-compose-footer .file-picker{position:relative;overflow:hidden;max-width:100%}
.support-compose-footer .file-picker input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.lanner-contact-dock .dock-conversations svg{fill:none;stroke:currentColor}


/* src/css/ux-refinement.css */
/* LANNER 2026: isolated presentation/UI refinements. No payment or auth selectors. */
:root{--lanner-focus:#edd6e1;--lanner-border:#39343c;--lanner-panel:#17161a}
html:not([data-geo-ready="1"]) .lang-switch button[data-lang="ru"],
html:not([data-geo-ready="1"]) .lang-switch button[data-lang="ua"]{visibility:hidden;pointer-events:none}
html:not([data-geo-ready="1"]) .lanner-contact-dock .telegram{visibility:hidden;pointer-events:none}
.lanner-contact-dock .dock-conversations>summary{height:48px;width:48px;border-radius:14px;background:linear-gradient(145deg,#29242c,#17151a);transition:background .2s,box-shadow .2s,transform .2s}
.lanner-contact-dock .dock-conversations>summary:hover,.lanner-contact-dock .dock-conversations[open]>summary{box-shadow:0 0 0 1px #c4a6b8,0 16px 36px #0009;background:#302731}
.lanner-contact-dock .dock-conversations>summary:focus-visible{outline:2px solid var(--lanner-focus);outline-offset:3px}
.lanner-contact-dock .dock-conversations .dock-menu{position:fixed;right:77px;bottom:18px;z-index:85;width:min(388px,calc(100vw - 96px));max-height:min(590px,calc(100dvh - 110px));overflow:hidden;display:flex;flex-direction:column;padding:0;gap:0;background:linear-gradient(145deg,#222027,#17161b 70%);border:1px solid #5e535e;border-radius:18px;box-shadow:0 26px 85px #000e,0 0 0 1px #fff1;animation:lanner-dock-enter .19s ease-out}
.lanner-contact-dock .dock-conversations:not([open]) .dock-menu{display:none}
.dock-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 18px 16px;border-bottom:1px solid #38333b}
.dock-menu-head>div{display:grid;gap:7px}.dock-menu-head small{color:#c5a8b6;font-size:.59rem;font-weight:800;letter-spacing:.16em}
.dock-menu-head strong{font-size:1.05rem;letter-spacing:-.025em}.dock-menu-total{display:grid;place-items:center;min-width:32px;height:32px;padding:0 5px;border-radius:9px;background:#342b35;color:#efdee7;font-size:.78rem}
.dock-menu-items{display:grid;gap:6px;min-height:0;overflow:auto;padding:12px;overscroll-behavior:contain}
.dock-menu-items>a{display:grid;grid-template-columns:36px minmax(0,1fr) 16px;gap:10px;align-items:center;text-decoration:none;color:#f5f3f5;background:#242128;border:1px solid #39323c;border-radius:11px;padding:11px 10px;min-height:66px;transition:border-color .15s,background .15s,transform .15s}
.dock-menu-items>a:hover,.dock-menu-items>a:focus-visible{background:#302832;border-color:#9b8294;transform:translateX(-2px)}
.dock-entry-icon{display:grid;place-items:center;width:35px;height:35px;border:1px solid #554654;border-radius:10px;background:#322935;color:#f4d3e5}
.dock-entry-main{display:grid;gap:5px;min-width:0}.dock-entry-main small{color:#ad9ca7;font-size:.65rem}.dock-entry-main strong{font-size:.79rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dock-entry-chevron{color:#bda4b2;font-size:.8rem}
.lanner-contact-dock .dock-menu>a.dock-all{display:flex;align-items:center;justify-content:space-between;width:auto;height:auto;flex:none;background:#211b22;border:none;border-top:1px solid #38333b;border-radius:0;padding:17px 20px;color:#f7e9f0;font-weight:700;font-size:.78rem;text-decoration:none;box-shadow:none}
.lanner-contact-dock .dock-menu>a.dock-all:hover{background:#322a33}
/* Toasts: concise, dismissible, accessible and consistent across payment/support/UI. */
#toasts{z-index:120;pointer-events:none;gap:10px;width:min(390px,calc(100vw - 28px))}
#toasts .lanner-toast{pointer-events:auto;position:relative;display:flex;align-items:flex-start;gap:11px;min-height:65px;width:100%;max-width:none;padding:13px 13px 13px 14px;border:1px solid #4b414b;border-left:3px solid #c8a6ba;border-radius:13px;background:#221d24;color:#f6eff4;box-shadow:0 18px 48px #000c,0 0 0 1px #fff1;animation:lanner-toast-enter .2s ease-out;line-height:1.5}
#toasts .lanner-toast.error{border-left-color:#e07c85;background:#2c1c21}#toasts .lanner-toast.warn{border-left-color:#d9bb88;background:#30271e}
.lanner-toast-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:8px;background:#433441;font-size:.81rem;font-weight:800}
.lanner-toast.error .lanner-toast-icon{background:#65313c}.lanner-toast.warn .lanner-toast-icon{background:#655036}
.lanner-toast-copy{font-size:.8rem;flex:1;min-width:0;overflow-wrap:anywhere;padding-top:2px}
.lanner-toast-action{align-self:center;min-width:fit-content;background:transparent;border:0;border-bottom:1px solid #d0b3c4;padding:5px 0;color:#f6dfe9;font-weight:800;font-size:.75rem;cursor:pointer}
.lanner-toast-action:hover{color:#fff}.lanner-toast-close{background:transparent;border:0;color:#b7a8b4;font-size:1.15rem;padding:0 2px;line-height:1.2;cursor:pointer}
.lanner-toast-close:hover{color:#fff}
/* Motion only on interactive targets, never around amount, payment forms or user data. */
.studio-admin .studio-admin-nav button,.studio-admin .studio-inbox-workspace button,.support-center button,.client-directory-row,.notification-panel button{transition:background-color .17s ease,border-color .17s ease,color .17s ease,box-shadow .17s ease}
.studio-admin .studio-admin-nav button:focus-visible,.studio-admin .studio-inbox-workspace button:focus-visible,.support-center button:focus-visible,.notification-panel button:focus-visible{outline:2px solid var(--lanner-focus);outline-offset:2px}
.studio-chat .bubble{border-radius:14px 14px 14px 4px;line-height:1.55;box-shadow:0 5px 18px #0002}.studio-chat .bubble.own{border-radius:14px 14px 4px 14px}
.studio-chat .reply-form textarea:focus-visible,.studio-inbox-workspace input:focus-visible{box-shadow:0 0 0 2px #8d7186;border-color:#ae8fa7}
@keyframes lanner-dock-enter{from{opacity:0;transform:translateY(9px) scale(.98)}to{opacity:1;transform:none}}
@keyframes lanner-toast-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:680px){.lanner-contact-dock .dock-conversations .dock-menu{right:64px;bottom:calc(13px + env(safe-area-inset-bottom));width:calc(100vw - 78px);max-height:min(65dvh,550px)}#toasts{top:114px;left:14px;right:14px;width:calc(100vw - 28px)}.dock-menu-head{padding:17px 15px 13px}}
@media(prefers-reduced-motion:reduce){.lanner-contact-dock .dock-conversations .dock-menu,#toasts .lanner-toast{animation:none}.dock-menu-items>a:hover{transform:none}.lanner-contact-dock .dock-conversations>summary{transition:none}}
/* Override the shared fixed square dimensions used by the floating contact icons. */
.lanner-contact-dock .dock-menu-items>a{width:100%;height:auto;display:grid;place-items:initial;box-shadow:none;min-height:68px;max-width:100%}
.lanner-contact-dock .dock-menu-items>a:hover{transform:none}

/* Visible before Firebase Auth initializes: branded static first paint, not a blank spinner. */
#app>.lanner-first-paint{width:min(1100px,calc(100% - 42px));min-height:360px;margin:0 auto;padding:clamp(85px,12vh,150px) 0 75px;display:flex;align-items:center;background:transparent;color:#f5f3f5;text-align:left}
.lanner-first-paint-inner{width:100%;display:grid;gap:15px}.lanner-first-paint .eyebrow{color:#b5a2b2;font-size:.64rem;letter-spacing:.17em;font-weight:800}
.lanner-first-paint h1{font-size:clamp(3rem,8vw,7rem);margin:0;line-height:1.05;letter-spacing:-.06em;overflow-wrap:anywhere}
.lanner-first-paint p{color:#a8a5aa;font-size:clamp(.88rem,1.7vw,1.14rem);letter-spacing:.13em;margin:0}.lanner-first-paint-rule{width:75px;height:2px;background:#be8ca6;display:block;margin-top:13px}
@media(max-width:600px){#app>.lanner-first-paint{min-height:360px;padding:68px 0 58px}.lanner-first-paint h1{font-size:clamp(2.5rem,12vw,4.5rem)}}
/* Keep long project names useful instead of clipping to one illegible word. */
.lanner-contact-dock .dock-entry-main strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;line-height:1.35;overflow:hidden;overflow-wrap:anywhere}


/* src/css/conversation-2026.css */
/* LANNER STUDIO / Conversation workspace 2026.
   Presentation-only: existing auth, Firebase listeners, payment mutations and rules remain intact.
   Unified scroll region fixes nested message/project/offers scroll traps. */
:root{--conv-bg:#101013;--conv-surface:#19191d;--conv-surface-2:#222126;--conv-border:#36343c;--conv-muted:#b6b3bb;--conv-highlight:#d6b6c4}
.support-center.support-upgrade{width:min(calc(100% - 32px),1490px);max-width:1490px;height:clamp(610px,75dvh,850px);min-height:0;overflow:hidden;display:grid;grid-template-columns:clamp(270px,24%,342px) minmax(0,1fr);border:1px solid #38333b;border-radius:19px;background:var(--conv-bg);box-shadow:0 28px 85px #0006;margin-bottom:45px}
.support-center .support-sidebar{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;border-right:1px solid var(--conv-border);background:#18171b}
.support-center .ticket-list{flex:1;min-height:0;overflow:auto;padding:10px;overscroll-behavior:contain;scrollbar-width:thin}
.support-center .support-sidebar-heading{flex:none;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:17px 16px 11px;border-bottom:1px solid #343039}
.support-center .support-sidebar-heading h2{font-size:.95rem;line-height:1.4;letter-spacing:-.02em;margin:0}
.support-center .support-new-button{display:flex;align-items:center;gap:5px;flex:none;padding:7px 10px;border-radius:9px;color:#fff;background:#322a32;border:1px solid #604c57;font-size:.75rem;line-height:1.2}
.support-center .support-new-button:hover{border-color:#baa5af;background:#43333d}
.support-center .ticket-row{width:100%;position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid transparent;border-radius:12px;margin:0 0 5px;min-width:0;padding:13px 11px!important;background:transparent;text-align:left;transition:border-color .18s,background .18s}
.support-center .ticket-row:hover{background:#252228;border-color:#49404a}.support-center .ticket-row.selected{background:#30272f;border-color:#755767}
.support-center .ticket-row>span:first-child{flex:1;min-width:0}.support-center .ticket-row b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.42;font-size:.78rem}
.support-center .ticket-row small{color:#a9a3ad;margin-top:5px;font-size:.67rem}
.support-center .ticket-row .badge{flex:none;white-space:nowrap;font-size:.58rem!important;max-width:110px;overflow:hidden;text-overflow:ellipsis}
.support-center .ticket-row .arrow{font-size:.9rem;color:#d6b6c4}
/* Shared admin/client chat */
.studio-chat.support-chat{min-width:0;min-height:0;height:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column;background:radial-gradient(ellipse at 100% 0%,#3c2a331a,transparent 50%),var(--conv-bg)}
.studio-chat .studio-chat-header{flex:none;min-height:88px;padding:16px clamp(16px,2.4vw,30px);gap:16px;border-bottom:1px solid var(--conv-border);background:#18171b}
.studio-chat .studio-chat-title{flex:1;min-width:0}.studio-chat .studio-chat-title h2{font-size:clamp(.95rem,1.36vw,1.12rem);line-height:1.4;margin:5px 0 8px;white-space:normal;max-width:68ch;overflow-wrap:anywhere}
.studio-chat .studio-chat-email{font-size:.72rem;color:#b6acb6}.studio-chat .studio-chat-metadata{gap:8px}
.studio-chat .studio-chat-header .chat-back{flex:none;align-self:flex-start;border:1px solid #454049;border-radius:9px;background:#252228;color:#fff;font-size:.74rem;line-height:1;padding:10px;cursor:pointer}
/* Actions grouped outside the scroll region, no payment keys or state in DOM. */
.conversation-admin-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:none;padding:10px clamp(14px,2.3vw,30px);background:#17161a;border-bottom:1px solid var(--conv-border)}
.conversation-admin-actions .button{min-height:36px!important;font-size:.72rem!important;line-height:1.35;padding:9px 12px!important;border-radius:9px;white-space:normal}
/* One and only one scrolling surface for project overview, chat messages, attached invoices. */
.studio-chat .conversation-scroll{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#524750 #141317;scroll-padding-top:12px;padding-bottom:15px;display:flex;flex-direction:column;gap:0}
.studio-chat .conversation-scroll>.messages{display:flex;flex-direction:column;flex:none;min-height:80px;max-height:none;overflow:visible;padding:23px clamp(15px,2.8vw,40px) 18px;gap:13px;scrollbar-width:none}
.studio-chat .conversation-scroll .messages:has(.bubble){min-height:180px}
.studio-chat .bubble{position:relative;display:flex;flex-direction:column;align-self:flex-start;max-width:min(76%,620px);width:max-content;min-width:0;gap:5px;margin:0;padding:13px 16px;background:#252329;border:1px solid #39353d;border-radius:17px 17px 17px 5px;box-shadow:0 5px 18px #0002;overflow-wrap:anywhere}
.studio-chat .bubble.own{align-self:flex-end;background:#3c303a;border-color:#69515e;border-radius:17px 17px 5px 17px}
.studio-chat .bubble.system{align-self:center;max-width:min(89%,690px);background:#202025;border-color:#38353b;border-radius:12px}
.studio-chat .bubble-sender{color:#dec6d0;line-height:1.35;letter-spacing:.01em;font-weight:800;font-size:.67rem}
.studio-chat .bubble p{color:#f0edf1;font-size:.84rem;line-height:1.65;margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}
.studio-chat .bubble small{align-self:flex-end;color:#b0a7b0;font-size:.62rem;margin:4px 0 0}
.studio-chat .bubble .attachment-button{font-size:.75rem;border:1px solid #6b5a66;border-radius:9px;background:#352d36;color:#f6e4ec;padding:9px 12px;margin:6px 0 0;align-self:flex-start;min-height:37px}
.studio-chat .chat-date{align-self:center;padding:6px 12px;margin:6px auto;border:1px solid #39343c;border-radius:999px;background:#211e24;color:#a9a4af;font-size:.65rem;letter-spacing:.015em}
.studio-chat .older-messages{align-self:center;width:auto;border-radius:999px;border:1px solid #62505b;background:#282229;color:#e9dce4;font-size:.73rem;padding:10px 15px;margin-bottom:5px}
.studio-chat .conversation-scroll>.ticket-offers{flex:none;min-height:0;max-height:none;overflow:visible;padding:0 clamp(15px,2.8vw,40px) 16px;margin:0}
.studio-chat .ticket-offers>h3{border-top:1px solid #423942;padding-top:18px;color:#d3c5cd;font-size:.78rem}
.studio-chat .ticket-offers .offer-card{max-width:760px}
/* Project summary is collapsible so the actual conversation remains visible by default. */
.project-overview{flex:none;margin:16px clamp(15px,2.8vw,40px) 4px;border:1px solid #49404a;border-radius:13px;background:linear-gradient(110deg,#252127,#1b1a1e);overflow:hidden}
.project-overview summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:13px 16px;color:#eee6eb;font-size:.75rem;font-weight:800;min-height:48px}
.project-overview summary::-webkit-details-marker{display:none}.project-overview summary:focus-visible{outline:2px solid #e7c8d5;outline-offset:-3px}
.project-overview-indicator{font-size:1.2rem;color:#dec4d0}.project-overview summary strong{font-weight:600;color:#b8d6c4;margin-left:auto;font-size:.7rem}.project-overview-chevron{color:#c6acb9;font-size:1rem;margin-left:auto}.project-overview summary strong+.project-overview-chevron{margin-left:4px}.project-overview[open] .project-overview-chevron{transform:rotate(180deg)}
.project-overview .project-context-card{margin:0;padding:15px;background:transparent;border:0;box-shadow:none;border-top:1px solid #423a42;border-radius:0;max-width:none}
.project-overview .project-context-head{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.project-overview .project-context-head p{font-size:.72rem;line-height:1.5}
.project-overview .project-progress{max-width:100%;min-width:0}.project-overview .project-progress-track{overflow-x:auto;scrollbar-width:thin}
.project-overview .project-progress-step{min-width:120px;flex:0 0 120px;max-width:none;overflow-wrap:break-word}
/* Composer: compact and fixed beneath a single message feed. */
.studio-chat .reply-form.conversation-composer{flex:none;display:flex;flex-direction:column;gap:9px;margin:0;padding:13px clamp(14px,2.3vw,30px) 12px;border-top:1px solid #423943;background:#1b191e;max-width:none}
.studio-chat .reply-form.conversation-composer>.compose-label{display:block;margin:0;color:#d5c9d1;font-size:.68rem;font-weight:800;letter-spacing:.02em;line-height:1.1}
.studio-chat .reply-form.conversation-composer>textarea{display:block;box-sizing:border-box;width:100%;min-height:64px;max-height:136px;resize:vertical;margin:0;padding:12px 14px;border:1px solid #514853;border-radius:11px;background:#111115;color:#fff;font:inherit;font-size:.86rem;line-height:1.48}
.studio-chat .reply-form.conversation-composer>textarea:focus-visible{outline:2px solid #d7bccb;outline-offset:1px}
.studio-chat .reply-form .compose-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;min-width:0}
.studio-chat .reply-form .compose-actions>.reply-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}
.studio-chat .reply-form .compose-actions>.button{flex:none;min-height:39px;min-width:115px;padding:9px 15px;border-radius:9px;font-size:.76rem}
.studio-chat .reply-form .file-picker{min-height:37px;white-space:normal;line-height:1.25;max-width:220px}
.studio-chat .reply-form .file-hint{max-width:260px;font-size:.65rem;color:#b0a7b2}
.studio-chat .reply-form .compose-hint{font-size:.62rem;color:#9f929f;line-height:1.25}
.studio-chat .ticket-admin{margin:0;padding:5px 15px;border-top:1px solid #343039;background:#19181d}
/* Projects and admin conversations expand to usable height, without forcing the entire page to scroll. */
.studio-inbox-workspace{min-height:580px;height:clamp(620px,79dvh,900px);max-height:900px;overflow:hidden}
.studio-inbox-workspace>.studio-inbox-list{min-height:0;overflow:hidden}
.studio-inbox-workspace .studio-inbox-conversation{height:100%;max-height:100%;overflow:hidden}
.support-center .support-chat-main{height:100%;max-height:100%;min-height:0}
/* No entrance animations on chat history: snapshot refreshes must not replay old messages. */
.studio-chat .bubble{animation:none!important}
@media(hover:hover) and (pointer:fine){.studio-chat .file-picker:hover{background:#382d37;border-color:#9c8191}}
@media(max-width:830px){.support-center.support-upgrade{width:calc(100% - 24px);height:clamp(570px,75dvh,760px);grid-template-columns:minmax(235px,34%) minmax(0,1fr)}.studio-chat .studio-chat-header{padding:12px 14px;min-height:77px}.conversation-admin-actions{padding:9px 12px}.studio-chat .conversation-scroll>.messages{padding:17px 15px}.project-overview{margin:12px 15px}}
@media(max-width:650px){
 .support-center.support-upgrade{display:flex;flex-direction:column;min-height:0;height:min(720px,calc(100dvh - 155px));width:calc(100% - 20px);border-radius:14px;margin-bottom:26px}
 .support-center .support-sidebar{flex:1;max-height:none;width:100%;border-right:0}
 .support-center .support-chat-main{flex:1;height:100%;min-height:0;max-height:100%;width:100%}
 .support-center.has-chat .support-sidebar{display:none}
 .support-center:not(.has-chat):not(.is-composing) .support-chat-main{display:none}
 .support-center.is-composing .support-sidebar{display:none}
 .studio-inbox-workspace{height:min(710px,calc(100dvh - 140px));min-height:470px}
 .studio-inbox-workspace.has-chat .studio-inbox-conversation{display:flex;min-height:0}
 .studio-chat .studio-chat-header{flex-wrap:nowrap;min-height:68px;padding:10px 12px;gap:9px}
 .studio-chat .studio-chat-header .chat-back{display:flex;align-items:center;gap:4px;align-self:center;padding:10px 8px;max-width:76px;font-size:.7rem}
 .studio-chat .studio-chat-title h2{font-size:.9rem;line-height:1.35;margin:3px 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .studio-chat .studio-chat-title .eyebrow{font-size:.56rem}.studio-chat .studio-chat-email{font-size:.62rem}
 .conversation-admin-actions{padding:7px 10px;gap:6px}.conversation-admin-actions .button{font-size:.69rem!important;min-height:36px!important}
 .studio-chat .conversation-scroll>.messages{padding:13px 11px 18px;gap:10px}
 .studio-chat .bubble{max-width:89%;padding:10px 12px}.studio-chat .bubble p{font-size:.81rem;line-height:1.55}
 .studio-chat .reply-form.conversation-composer{gap:8px;padding:10px 11px calc(10px + env(safe-area-inset-bottom,0px))}
 .studio-chat .reply-form.conversation-composer>textarea{font-size:16px;min-height:53px;max-height:100px}
 .studio-chat .reply-form .compose-actions{gap:7px}.studio-chat .reply-form .compose-actions>.button{min-width:93px;min-height:39px;padding:9px 11px}
 .studio-chat .reply-form .file-hint{display:none}.studio-chat .reply-form .compose-hint{display:none}
 .studio-chat .reply-form .file-picker{min-height:38px;font-size:.7rem;max-width:160px}
 .studio-chat .conversation-scroll>.ticket-offers{padding:0 11px 14px}
 .project-overview{margin:9px 11px 3px}.project-overview summary{padding:11px 10px;gap:6px;font-size:.7rem;flex-wrap:wrap}
 .project-overview summary strong{font-size:.65rem}
}
@media(max-width:390px){.studio-chat .studio-chat-header .chat-back span{display:none}.studio-chat .studio-chat-header .chat-back{max-width:36px}.studio-chat .bubble{max-width:93%}.studio-chat .reply-form .compose-actions>.button{min-width:79px}.project-overview summary strong{max-width:145px;text-align:right}}
@media(prefers-reduced-motion:reduce){.studio-chat .bubble{animation:none!important}.studio-chat *{scroll-behavior:auto!important}}
.conversation-project-cta{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding:10px clamp(15px,2.8vw,40px);margin:0;background:transparent}
.conversation-project-cta .button{min-height:39px;font-size:.76rem;white-space:normal}


/* src/css/release-polish.css */
/* LANNER STUDIO / final visual stabilization.
   Scoped overrides, no payment or authentication logic lives in CSS.
   One scroll region per conversation; maintain focus and reduced-motion support. */
:root{--release-ring:#d7beca;--release-edge:#413b43;--release-panel:#19181c}
#app{min-width:0}
#app .support-center.support-upgrade{width:min(calc(100% - 36px),1680px);max-width:1680px;grid-template-columns:clamp(258px,21vw,335px) minmax(0,1fr);height:min(790px,calc(100dvh - 222px));min-height:540px;margin-bottom:28px;border-radius:17px}
#app:has(.support-center.has-chat) .support-intro{max-width:1680px;padding-top:12px;padding-bottom:10px}
#app:has(.support-center.has-chat) .support-intro h1{font-size:clamp(1.08rem,2vw,1.55rem);line-height:1.2;margin:4px 0 6px;letter-spacing:-.03em}
#app:has(.support-center.has-chat) .support-intro>p{display:none}
#app:has(.support-center.has-chat) .support-intro .eyebrow{font-size:.6rem}
#app:has(.support-center.has-chat) .support-intro .restaurant-contact{margin-top:4px}
#app .studio-admin{width:min(calc(100% - 30px),1750px);max-width:1750px}
#app .studio-admin-intro{padding-top:14px;margin-bottom:18px}
#app .studio-admin-intro h1{font-size:clamp(1.45rem,2.25vw,2.6rem);line-height:1.15}
#app .studio-admin-shell{min-height:min(650px,calc(100dvh - 200px))}
#app .studio-inbox-workspace{min-height:0;height:min(820px,calc(100dvh - 195px));max-height:820px}
#app .support-sidebar .ticket-list{max-height:none}
#app .studio-chat .studio-chat-header{padding-block:12px;min-height:74px}
#app .studio-chat .conversation-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain;scroll-behavior:auto}
#app .studio-chat .conversation-scroll>.messages{min-height:0;padding-top:16px;padding-bottom:16px;gap:9px}
#app .studio-chat .conversation-scroll .ticket-offers{padding-bottom:15px}
#app .studio-chat .bubble{transition:background-color .16s,border-color .16s;min-width:0;max-width:min(82%,660px);border-radius:14px 14px 14px 5px}
#app .studio-chat .bubble.own{border-radius:14px 14px 5px 14px}
#app .studio-chat .bubble.system{max-width:min(90%,710px)}
#app .studio-chat .bubble p{line-height:1.58;font-size:clamp(.8rem,.88vw,.92rem)}
#app .studio-chat .reply-form.conversation-composer{padding-top:10px;padding-bottom:10px;gap:7px}
#app .studio-chat .reply-form.conversation-composer>textarea{min-height:54px;max-height:125px;resize:vertical}
#app .studio-chat .reply-form .compose-actions>.button{min-height:42px}
#app .studio-chat .project-overview{margin-top:10px}
#app .studio-chat .project-overview:not([open]){border-color:#484048;background:#211f24}
#app .studio-chat .project-overview summary:hover{background:#302a32}
#app .studio-chat :is(button,a,input,textarea,summary):focus-visible,#app .studio-admin :is(button,a,input,textarea,select):focus-visible{outline:2px solid var(--release-ring);outline-offset:2px}
#app .support-center .ticket-row .badge{font-size:.64rem!important;max-width:128px;line-height:1.3}
#app .support-center .ticket-row{min-height:61px}
#app .support-center .ticket-row b{font-size:.8rem;line-height:1.35}
#app .support-center .ticket-row small{font-size:.69rem}
#app .studio-admin .client-row:focus-visible{outline:2px solid var(--release-ring)}
#app .studio-admin .studio-admin-content{min-width:0}
@media(hover:hover) and (pointer:fine){#app .studio-chat .bubble.own:hover{border-color:#b18a9e}#app .support-center .ticket-row:hover{transform:translateX(2px)}#app .support-center .ticket-row{transition:transform .14s,background-color .14s,border-color .14s}}
@media(max-width:850px){#app .support-center.support-upgrade{height:calc(100dvh - 212px);min-height:500px;grid-template-columns:minmax(235px,34%) minmax(0,1fr)}#app .studio-inbox-workspace{height:calc(100dvh - 185px);min-height:520px}}
@media(max-width:650px){
 #app .support-center.support-upgrade{width:calc(100% - 16px);height:calc(100dvh - 170px);min-height:400px;display:flex;flex-direction:column;border-radius:13px}
 #app .support-center.has-chat .support-sidebar{display:none}
 #app .support-center .support-chat-main{height:100%;min-height:0;max-height:100%;padding:0}
 #app .support-center:not(.has-chat):not(.is-composing) .support-chat-main{display:none}
 #app .studio-admin{width:calc(100% - 16px)}
 #app .studio-admin-intro{padding-top:7px;margin-bottom:10px}
 #app .studio-admin-intro h1{font-size:1.5rem}
 #app .studio-inbox-workspace{height:calc(100dvh - 180px);min-height:430px}
 #app .studio-chat .chat-back{min-height:36px}
 #app .studio-chat .bubble{max-width:92%;padding:11px 12px}
 #app .studio-chat .conversation-scroll>.messages{padding:12px 11px 14px}
 #app .studio-chat .reply-form.conversation-composer{padding:9px 11px calc(9px + env(safe-area-inset-bottom,0px));gap:7px}
 #app .studio-chat .reply-form.conversation-composer>textarea{min-height:52px;max-height:100px;font-size:16px}
 #app:has(.support-center.has-chat) .support-intro{padding-top:7px;padding-bottom:7px}
 #app:has(.support-center.has-chat) .support-intro h1{font-size:1.06rem}
}
@media(prefers-reduced-motion:reduce){#app .support-center .ticket-row,#app .studio-chat .bubble{transition:none!important;transform:none!important}#app .studio-chat .conversation-scroll{scroll-behavior:auto!important}}
/* Keep attachment and submit controls visible: legacy reply-grid styles otherwise
   shrink the actions row to its content width on narrow viewports. */
#app .studio-chat .reply-form.conversation-composer .compose-actions{align-self:stretch;width:100%;max-width:100%;box-sizing:border-box;min-width:0;justify-content:space-between}
#app .studio-chat .reply-form.conversation-composer .compose-actions>.reply-tools{flex:1 1 auto;min-width:0;margin:0}
#app .studio-chat .reply-form.conversation-composer .compose-actions>.button{flex:0 0 auto;width:auto!important;max-width:45%;margin:0;white-space:normal}
#app .studio-chat .reply-form.conversation-composer .file-picker{margin:0;max-width:100%;min-width:0}
@media(max-width:650px){#app .studio-chat .reply-form.conversation-composer .compose-actions{gap:9px}#app .studio-chat .reply-form.conversation-composer .compose-actions>.button{min-width:100px;max-width:44%;font-size:.74rem}#app .studio-chat .reply-form.conversation-composer .file-picker{font-size:.68rem;max-width:100%}}
/* Tablet is a single-pane inbox, never a two-column 180px editor. */
@media(min-width:651px) and (max-width:900px){
 #app .support-center.support-upgrade{display:flex;flex-direction:column;grid-template-columns:none;height:calc(100dvh - 190px);min-height:480px}
 #app .support-center .support-sidebar{width:100%;max-height:none;min-height:0;flex:1;border-right:0}
 #app .support-center.has-chat .support-sidebar,#app .support-center.is-composing .support-sidebar{display:none}
 #app .support-center .support-chat-main{flex:1;width:100%;height:100%;min-height:0;max-height:100%}
 #app .support-center:not(.has-chat):not(.is-composing) .support-chat-main{display:none}
 #app .studio-chat .studio-chat-header .chat-back{display:flex;align-items:center;min-height:36px}
 #app .studio-inbox-workspace{display:flex;flex-direction:column;height:calc(100dvh - 175px);min-height:480px}
 #app .studio-inbox-workspace .studio-inbox-list{flex:1;min-height:0;border-right:0}
 #app .studio-inbox-workspace .studio-inbox-conversation{display:none}
 #app .studio-inbox-workspace.has-chat .studio-inbox-list{display:none}
 #app .studio-inbox-workspace.has-chat .studio-inbox-conversation{display:flex;flex:1;min-height:0}
}

/* QR service price: EUR contract and non-binding regional equivalent. */
.restaurant-value>.restaurant-fx-amount{display:block;font-size:clamp(.96rem,1.4vw,1.12rem);font-weight:700;color:#ead3df;line-height:1.5;margin:5px 0 0}
.restaurant-fx-note{display:block;font-size:.69rem;line-height:1.5;color:#9f98a1;margin:5px 0 9px}
.restaurant-installments>span .restaurant-fx-amount{display:block;color:#d8c3ce;font-size:.77rem;font-weight:600;line-height:1.5;margin-top:4px}
.restaurant-checkout-steps strong .restaurant-fx-amount{display:block;font-size:.72rem;font-weight:600;line-height:1.55;color:#dac7d1;white-space:normal;text-align:right}
.restaurant-checkout-intro>.restaurant-fx-note{margin:8px 0 18px}
@media(max-width:650px){.restaurant-checkout-steps strong .restaurant-fx-amount{text-align:right;font-size:.7rem}.restaurant-value>.restaurant-fx-amount{font-size:1.02rem}}

/* LANNER STUDIO: discoverable, accessible localized-share control. */
.site-share-button{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:10px 13px;color:#ededed;font:inherit;font-size:12px;cursor:pointer;transition:background .2s ease,border-color .2s ease}
.site-share-button:hover,.site-share-button:focus-visible{background:#252329;border-color:#ba8c9a;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.site-share-button{transition:none}}

/* RU-only payment provider information is populated on demand by the geo-guarded Edge API. */
.ru-payment-disclosure:not([hidden]){margin:14px auto;padding:15px 18px;background:#151518;border:1px solid #3b333a;border-radius:13px;max-width:900px;color:#ded8df;line-height:1.55;font-size:13px;overflow-wrap:anywhere}
.ru-payment-disclosure strong{color:#f3e9ee;display:block;margin-bottom:7px;font-weight:700}
.ru-payment-disclosure p{margin:0 0 6px;color:#cbc6cc}
.ru-payment-disclosure small{display:block;color:#aaa2a9;font-size:11px}

/* 2026-10-23: language dropdown shares header rhythm without an extra row. */
.lang-switch{display:flex;align-items:center;min-width:0;flex:0 0 auto}
.lang-switch #languageSelect{appearance:auto;background:#1a191d;color:#f7f6f8;border:1px solid #49434c;border-radius:9px;padding:9px 10px;min-width:108px;max-width:132px;font-size:12px;font-weight:600;font-family:inherit;line-height:1.3;cursor:pointer}
.lang-switch #languageSelect:focus-visible{outline:2px solid #e9b7cc;outline-offset:2px}
@media(max-width:720px){.lang-switch #languageSelect{min-width:90px;max-width:114px;padding:8px 5px}}
