:root{color-scheme:dark;--bg:#0a0c11;--surface:#12161e;--surface2:#171c25;--line:rgba(255,255,255,.08);--text:#f3f6fa;--muted:#8993a3;--blue:#2e72e0;--blue-soft:rgba(46,114,224,.14);--green:#36d27f;--safe-top:max(env(safe-area-inset-top,0px),var(--tg-safe-area-inset-top,0px),var(--tg-content-safe-area-inset-top,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px),var(--tg-safe-area-inset-bottom,0px),var(--tg-content-safe-area-inset-bottom,0px))}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}
html,body{margin:0;min-height:100%;background:#07090e;color:var(--text);font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
body.miniapp-ready{overflow:hidden}
input,textarea,select,[contenteditable]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
body.telegram-fullscreen{--safe-top:max(86px,env(safe-area-inset-top,0px),calc(var(--tg-safe-area-inset-top,0px) + var(--tg-content-safe-area-inset-top,0px)))}
body:not(.miniapp-ready) .shell{display:none}
.outside-page{display:none}
body.outside-app .outside-page{position:relative;isolation:isolate;display:grid;place-items:center;width:100%;min-height:100dvh;overflow:hidden;background:#080b12}
.outside-page:before{content:"";position:absolute;z-index:-1;width:min(85vw,680px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(46,114,224,.21),rgba(46,114,224,.06) 36%,transparent 68%);filter:blur(10px)}
.outside-page h1{margin:0;padding:24px;color:#f5f8ff;font-family:Unbounded,Manrope,sans-serif;font-size:clamp(38px,7vw,96px);font-weight:700;letter-spacing:-.075em;line-height:1.1;text-align:center}
.outside-page em{color:#6ba4f2;font-style:normal}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.shell{position:relative;display:flex;flex-direction:column;width:min(100%,480px);height:var(--app-height,100dvh);min-height:0;margin:auto;background:var(--bg);overflow:hidden;box-shadow:0 0 80px rgba(0,0,0,.4)}
.shell.keyboard-open{min-height:0}
.shell.keyboard-open .bottom-nav{display:none}
.shell.has-no-topbar{padding-top:var(--safe-top)}
.shell:before{content:"";position:absolute;inset:0 0 auto;height:360px;pointer-events:none;background:radial-gradient(ellipse at 82% 0%,rgba(46,114,224,.18),transparent 65%)}
.topbar{position:relative;z-index:2;flex:none;display:flex;justify-content:space-between;align-items:center;padding:calc(19px + var(--safe-top)) 22px 16px}
.topbar-actions{display:flex;align-items:center;gap:8px}
.topbar-profile{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.035);color:#a8b3c2}
.topbar-profile svg{width:18px;height:18px}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#3983f5,#17499c);box-shadow:0 5px 22px rgba(46,114,224,.27)}
.brand-mark img{width:26px;height:26px}
.brand strong{display:block;line-height:1.05;font-size:17px;letter-spacing:-.035em}
.brand small{display:block;margin-top:3px;color:#7aa8f2;font-size:8px;letter-spacing:.31em;font-weight:800}
.top-status{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;color:#a8b3c2;background:rgba(255,255,255,.035);font-size:10px;font-weight:600;letter-spacing:0}
.top-status b{color:var(--text);font-size:11px;font-weight:800;letter-spacing:0}
.live-dot{width:5px;height:5px;border-radius:50%;background:#63bf88}
main{position:relative;z-index:1;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 20px 26px;scrollbar-width:none}
main.home-screen{overflow-y:hidden;overscroll-behavior:none;padding-bottom:0}
main::-webkit-scrollbar{display:none}
main.screen-enter{animation:screen-fade .18s ease-out both}
@keyframes screen-fade{from{opacity:.55}to{opacity:1}}
main.detail-screen{display:flex;flex-direction:column;padding-bottom:0}
main.no-topbar{padding-top:20px}
.eyebrow{color:#6ba4f2;font-size:10px;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1{margin:8px 0 8px;font-size:30px;line-height:1.16;letter-spacing:-.065em}
h2{font-size:18px;letter-spacing:-.045em}
.lead{color:var(--muted);font-size:13px;line-height:1.55}
.hero{position:relative;overflow:hidden;padding:24px 22px 22px;border:1px solid rgba(98,151,240,.2);border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(69,135,245,.22),transparent 44%),linear-gradient(145deg,#152033,#0e141f 74%);box-shadow:0 18px 44px rgba(0,0,0,.12)}
.hero:after{content:"";position:absolute;top:14px;right:14px;width:118px;height:70px;background:url("/car.svg") center/contain no-repeat;opacity:.45;transform:rotate(-5deg)}
.hero h1{max-width:285px;margin:12px 0 8px;font-size:31px}
.hero p{max-width:260px;margin:0 0 22px;color:#aebbd0;font-size:12px;line-height:1.6}
.home-steps{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.home-step{display:flex;gap:14px;padding:16px}
.home-step+.home-step{border-top:1px solid var(--line)}
.home-step-number{flex:none;width:27px;color:#78adfa;font-size:12px;font-weight:800}
.home-step h3{margin:0 0 4px;font-size:14px}
.home-step p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:45px;padding:0 16px;border:1px solid transparent;border-radius:13px;background:var(--blue);color:white;font-size:12px;font-weight:800;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease}
.button:active{background:#1f61c9}
.button:hover{background:#4084ed}
.button.copied,.button.copied:hover,.button.copied:active{background:#198754;border-color:#35c77e;color:white}
.button svg{width:17px;height:17px}
.button.ghost{background:var(--blue-soft);border-color:rgba(68,134,237,.2);color:#92bdff}
.button.outline{background:transparent;border-color:var(--line);color:var(--text)}
.button.full{width:100%}
.button.danger{background:rgba(223,82,97,.1);border-color:rgba(223,82,97,.2);color:#ed929c}
.section-head{display:flex;align-items:center;justify-content:space-between;margin:28px 2px 13px}
.catalog-section-head{margin-top:0}
.section-head h2{margin:0}
.section-head span{color:var(--muted);font-size:11px}
.empty{padding:33px 24px 30px;text-align:center;border:1px dashed rgba(111,140,177,.2);border-radius:21px;background:rgba(255,255,255,.018)}
.empty-icon{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;border:1px solid rgba(91,146,238,.22);border-radius:17px;background:var(--blue-soft);color:#82b2ff}
.empty-icon svg{width:26px;height:26px}
.empty h3{margin:0 0 7px;font-size:15px}
.empty p{max-width:250px;margin:0 auto 17px;color:var(--muted);font-size:12px;line-height:1.55}
.page-title{padding:12px 2px 4px}
.page-title h1{font-size:28px}
.page-title .lead{margin-bottom:20px}
.product-card,.ticket-card,.panel,.profile-card{border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.product-card{min-width:0;padding:10px;margin:0;transition:border-color .16s ease,background-color .16s ease}
.catalog-card{display:flex;flex-direction:column;align-items:stretch;width:100%;color:var(--text);text-align:left}
.product-card-image{display:block;width:100%;aspect-ratio:8/5;margin-bottom:10px;border-radius:10px;object-fit:cover;background:#0c111a}
.product-card-image.no-cover{padding:24px;object-fit:contain;background:#142039}
.product-detail-page{display:flex;flex:1;flex-direction:column;min-height:100%;width:100%}
.detail-content{flex:1}
.detail-visual{display:grid;place-items:center;height:188px;margin:0 0 22px;border:1px solid rgba(98,151,240,.18);border-radius:22px;background:radial-gradient(circle at 50% 50%,rgba(46,114,224,.21),transparent 60%),linear-gradient(145deg,#152033,#0e141f 75%);overflow:hidden}
.detail-visual img{width:66%;max-width:250px;filter:drop-shadow(0 10px 24px rgba(46,114,224,.25))}
.detail-visual.has-photo img{width:100%;height:100%;max-width:none;object-fit:cover;filter:none}
.detail-title{margin:13px 0 25px;font-size:27px}
.detail-description{padding:21px 0 22px;border-top:1px solid var(--line)}
.detail-description h2{margin:0 0 10px;font-size:14px}
.detail-description p{margin:0;color:#a9b6c8;font-size:13px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}
.detail-price-row{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.detail-price-row span{color:var(--muted);font-size:12px}
.detail-price-row strong{font-size:22px;letter-spacing:-.04em}
.detail-price-value{display:grid;justify-items:end;gap:1px}
.detail-price-value s{color:var(--muted);font-size:11px}
.detail-price-value small{color:#82b2ff;font-size:10px;font-weight:800}
.detail-footer{position:sticky;bottom:0;margin-top:22px;padding:16px 0 calc(18px + var(--safe-bottom));background:linear-gradient(0deg,var(--bg) 75%,rgba(10,12,17,.94));z-index:2}
.product-top,.ticket-top{display:flex;justify-content:space-between;align-items:start;gap:12px}
.product-category,.chip{display:inline-block;padding:6px 9px;border-radius:8px;background:var(--blue-soft);color:#80affb;font-size:10px;font-weight:800}
.product-card h3{display:-webkit-box;min-height:34px;margin:10px 0 0;overflow:hidden;font-size:13px;line-height:1.3;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.product-bottom{display:grid;gap:9px;margin-top:auto;padding-top:11px}
.product-card .price{font-size:16px}
.product-more{display:flex;align-items:center;justify-content:center;gap:5px;min-height:33px;border-radius:9px;background:var(--blue);color:#fff;font-size:10px;font-weight:800}
.product-more svg{width:14px;height:14px}
.product-card .product-category{align-self:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
.admin-product-card .product-bottom{display:flex;align-items:center;justify-content:space-between;gap:5px}
.admin-product-card .chip{padding:4px 6px;font-size:9px}
.admin-product-card .admin-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.admin-product-card .admin-actions .button{min-height:30px;padding:0 3px;font-size:9px}
.price{font-weight:800;font-size:18px}
.price-discounted{display:grid;line-height:1.15}
.price-discounted s{margin-top:4px;color:var(--muted);font-size:11px;font-weight:500}
.price small{font-size:10px;color:var(--muted);font-weight:500}
.ticket-card{display:block;width:100%;padding:16px;margin:0 0 10px;text-align:left;color:inherit}
.ticket-card h3{margin:0 0 6px;font-size:14px}
.ticket-card p{margin:0;color:var(--muted);font-size:11px}
.ticket-card .ticket-top svg{width:17px;height:17px;color:#70849f}
.chip.open{background:rgba(54,210,127,.1);color:#76e5a6}
.chip.waiting{background:rgba(238,178,74,.1);color:#efc779}
.chip.closed{background:rgba(255,255,255,.06);color:#929bab}
.chip.completed{background:rgba(54,210,127,.1);color:#76e5a6}
.ticket-meta{display:flex;gap:8px;align-items:center;margin-top:12px}
.ticket-meta small{color:#748095;font-size:10px}
.form{display:grid;gap:14px}
.field{display:grid;gap:7px;color:#a9b3c3;font-size:11px;font-weight:700}
.field input,.field textarea,.field select{width:100%;padding:13px 14px;border:1px solid rgba(255,255,255,.09);border-radius:12px;outline:none;background:#0d1118;color:var(--text);font-size:13px;font-weight:500}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#4286ed;box-shadow:0 0 0 3px rgba(46,114,224,.12)}
.field textarea{min-height:122px;resize:vertical;line-height:1.5}
.field input::placeholder,.field textarea::placeholder{color:#586271}
.panel{padding:17px}
.note{display:flex;gap:10px;padding:13px;border:1px solid rgba(98,151,240,.13);border-radius:13px;background:rgba(46,114,224,.07);color:#aebdd4;font-size:11px;line-height:1.5}
.note svg{flex:none;width:17px;height:17px;color:#80affb}
.ticket-offer{display:flex;align-items:center;gap:9px;margin:15px 0;padding:12px 14px;border:1px solid rgba(98,151,240,.16);border-radius:12px;background:var(--blue-soft);font-size:11px}
.ticket-offer span{flex:1;color:#a8b8cf}
.ticket-offer strong{font-size:14px}
.ticket-offer small{color:#8bb9ff}
.conversation{display:grid;gap:12px;margin:22px 0}
.message{max-width:88%;padding:12px 13px;border:1px solid var(--line);border-radius:14px 14px 14px 4px;background:var(--surface);white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.55}
.message.mine{justify-self:end;border-color:rgba(65,130,230,.25);border-radius:14px 14px 4px 14px;background:#17335e}
.message small{display:block;margin-top:6px;color:#8793a7;font-size:9px}
.composer{display:flex;align-items:end;gap:8px}
.composer textarea{flex:1;min-height:45px;max-height:110px;resize:vertical;padding:12px 13px;border:1px solid var(--line);border-radius:13px;outline:none;background:var(--surface);color:var(--text);font-size:12px}
.composer button{width:45px;height:45px;display:grid;place-items:center;padding:0}
.profile-card{padding:20px;display:flex;gap:13px;align-items:center}
.avatar{position:relative;display:grid;place-items:center;width:45px;height:45px;flex:none;overflow:hidden;border-radius:14px;background:var(--blue-soft);color:#88b6fc;font-size:19px;font-weight:800}
.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.profile-card b{font-size:14px}.profile-card small{display:block;margin-top:3px;color:var(--muted);font-size:11px}
.referral-hero{margin-top:18px;padding:20px;border:1px solid rgba(98,151,240,.21);border-radius:21px;background:radial-gradient(circle at 90% 0%,rgba(66,133,235,.2),transparent 55%),linear-gradient(150deg,#152033,#0e141f)}
.referral-head{display:flex;align-items:center;gap:11px}
.referral-icon{display:grid;place-items:center;width:43px;height:43px;flex:none;border:1px solid rgba(102,161,255,.22);border-radius:13px;background:var(--blue-soft);color:#92beff}
.referral-icon svg{width:23px;height:23px}
.referral-head .eyebrow{font-size:8px}
.referral-head h2{margin:3px 0 0;font-size:17px}
.referral-hero p{margin:18px 0;color:#aabbd1;font-size:12px;line-height:1.6}
.referral-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:17px;border-top:1px solid rgba(255,255,255,.09)}
.referral-stats div{min-width:0}
.referral-stats span{display:block;color:#8b9cb2;font-size:9px}
.referral-stats strong{display:block;margin-top:5px;font-size:20px;letter-spacing:-.05em}
.referral-code-card,.claim-card{margin-top:14px;padding:19px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.referral-code{margin:11px 0 15px;padding:14px;border:1px dashed rgba(107,164,242,.35);border-radius:12px;background:#0d1420;color:#9fc6ff;text-align:center;font-size:18px;font-weight:800;letter-spacing:.15em}
.referral-code-card p,.claim-card p{margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.claim-card h2{margin:0;font-size:15px}
.claim-form{display:flex;gap:8px;margin-top:13px}
.claim-form input{width:0;flex:1;padding:0 11px;border:1px solid var(--line);border-radius:11px;outline:none;background:#0d1118;color:var(--text);font-size:11px;text-transform:uppercase}
.claim-form .button{flex:none;min-height:40px;padding:0 12px;font-size:11px}
.art-picker{min-width:0;margin:0;padding:0;border:0}
.art-picker legend{margin-bottom:9px;color:#a9b3c3;font-size:11px;font-weight:700}
.art-picker>small{display:block;margin-top:9px;color:var(--muted);font-size:10px}
.art-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.art-option{position:relative;display:grid;gap:6px;min-width:0;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer}
.art-option:has(input:checked){border-color:#6ba4f2;background:#17233a;box-shadow:0 0 0 1px rgba(107,164,242,.35)}
.art-option:has(input:focus-visible){outline:2px solid #9ac4ff;outline-offset:2px}
.art-option input{position:absolute;opacity:0;pointer-events:none}
.art-option img,.art-none-image{display:grid;place-items:center;width:100%;aspect-ratio:8/5;border-radius:8px;object-fit:cover;background:#0d1420}
.art-none-image{color:#8bb9ff}
.art-option>span:last-child{padding:0 2px 2px;color:#dce5f2;font-size:11px;font-weight:800}
.segmented{display:flex;gap:4px;padding:4px;margin:0 0 16px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.segmented button{flex:1;padding:10px;border:0;border-radius:9px;background:none;color:var(--muted);font-size:11px;font-weight:800}
.segmented button.active{background:#213b64;color:#afd0ff}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.admin-actions .button{min-height:35px;font-size:10px}
.bottom-nav{position:relative;z-index:2;display:flex;flex:none;padding:9px 12px calc(9px + var(--safe-bottom));border-top:1px solid var(--line);background:rgba(10,12,17,.96);backdrop-filter:blur(20px)}
.bottom-nav button{flex:1;display:grid;justify-items:center;gap:4px;padding:5px;border:0;background:none;color:#647082;font-size:10px;font-weight:700;transition:color .16s ease}
.bottom-nav button.active{color:#7facf7}
.bottom-nav svg{width:20px;height:20px}
.toast{position:absolute;z-index:10;left:20px;right:20px;bottom:88px;padding:12px 14px;border:1px solid rgba(114,161,235,.22);border-radius:12px;background:#1b2738;color:white;font-size:12px;box-shadow:0 15px 35px #0008;opacity:0;pointer-events:none;transition:opacity .18s ease}
.toast.show{opacity:1}
.ticket-create-head{display:flex;align-items:center;gap:13px;margin:3px 0 18px;padding:16px;border:1px solid rgba(112,154,220,.17);border-radius:18px;background:linear-gradient(135deg,rgba(46,114,224,.13),rgba(12,17,27,.82) 70%)}
.ticket-create-mark{display:grid;place-items:center;flex:none;width:47px;height:47px;border-radius:15px;background:var(--blue-soft);color:#9cc7ff}
.ticket-create-mark svg{width:24px;height:24px}
.ticket-create-head h1{margin:0 0 3px;font-size:20px}
.ticket-create-head p{margin:0;color:#a8b4c4;font-size:11px;line-height:1.45}
.ticket-create-form{display:grid;gap:13px}
.ticket-create-field{display:grid;gap:7px}
.ticket-create-field>span{padding-left:2px;color:#a8b5c8;font-size:11px;font-weight:700}
.ticket-create-field select,.ticket-create-field textarea{width:100%;min-height:53px;padding:14px;border:1px solid rgba(143,154,181,.16);border-radius:15px;outline:none;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.01)),#0c111a;color:var(--text);font-size:13px;font-weight:600}
.ticket-create-field textarea{min-height:145px;resize:vertical;line-height:1.55}
.ticket-create-field select:focus,.ticket-create-field textarea:focus{border-color:rgba(107,164,242,.65)}
.ticket-create-field textarea::placeholder{color:#69778b}
.ticket-file-picker{position:relative;display:flex;align-items:center;gap:11px;min-height:61px;padding:10px 12px;border:1px solid rgba(143,154,181,.16);border-radius:15px;background:#0d121b;cursor:pointer}
.ticket-file-picker input,.chat-attach input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ticket-file-icon{display:grid;place-items:center;width:35px;height:35px;flex:none;border-radius:12px;background:var(--blue-soft);color:#9cc7ff}
.ticket-file-copy{display:grid;gap:3px;min-width:0}
.ticket-file-copy b{overflow:hidden;color:#e7edf6;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.ticket-file-copy small{color:var(--muted);font-size:10px}
.ticket-create-submit{min-height:52px;border-radius:15px;font-size:13px}
.faq-entry{display:flex;align-items:center;gap:11px;width:100%;min-height:62px;margin-top:12px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);text-align:left;font-size:13px;font-weight:800}
.faq-entry-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:11px;background:var(--blue-soft);color:#8bb9ff}
.faq-entry-icon svg{width:19px;height:19px}
.faq-entry span:nth-child(2){flex:1}
.faq-entry>svg{width:17px;height:17px;color:#8bb9ff}
.faq-page{display:flex;flex-direction:column;min-height:100%}
.faq-page .page-title .lead{margin-bottom:16px}
.faq-contact{margin-top:auto;padding:24px 0 4px}
.faq-contact h2{margin:0 0 5px;font-size:17px}
.faq-contact p{margin:0 0 16px;color:var(--muted);font-size:12px;line-height:1.5}
.faq-item{margin-bottom:8px;border:1px solid var(--line);border-radius:14px;background:var(--surface);transition:border-color .18s ease,background-color .18s ease}
.faq-item.is-open{border-color:rgba(98,151,240,.23);background:#151b26}
.faq-question{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:13px 15px;border:0;background:transparent;color:#edf2f9;text-align:left;font-size:12px;font-weight:700}
.faq-toggle{flex:none;color:#82b2ff;font-size:20px;font-weight:400;line-height:1}
.faq-item.is-open .faq-toggle::before{content:'−'}
.faq-item.is-open .faq-toggle{font-size:0}
.faq-item.is-open .faq-toggle::before{font-size:20px}
.faq-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .24s ease,opacity .18s ease}
.faq-item.is-open .faq-panel{grid-template-rows:1fr;opacity:1}
.faq-answer{min-height:0;overflow:hidden}
.faq-answer p{margin:0;padding:0 15px 16px;color:#9daabc;font-size:11px;line-height:1.65}
main.ticket-screen{display:flex;flex-direction:column;overflow:hidden;padding:0}
.ticket-chat{display:flex;flex:1;flex-direction:column;width:100%;min-height:0}
.chat-scroll{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 14px 18px;scrollbar-width:none}
.chat-scroll::-webkit-scrollbar{display:none}
.chat-topic{flex:none;display:grid;justify-items:center;gap:4px;margin:calc(10px + var(--safe-top)) 14px 0;padding:16px 14px 13px;border:1px solid rgba(98,151,240,.2);border-radius:18px;background:#121a29;text-align:center}
.chat-topic h1{max-width:100%;margin:0;font-size:17px;line-height:1.3;letter-spacing:-.035em;overflow-wrap:anywhere}
.chat-topic p{max-width:100%;margin:0;color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-topic-status{display:inline-flex;align-items:center;gap:6px;color:#8bb9ff;font-size:11px;font-weight:800}
.chat-topic-status:before{content:'';width:6px;height:6px;border-radius:50%;background:#69a4f7}
.chat-topic-status.closed,.chat-topic-status.completed{color:#a7b1bf}
.chat-topic-status.closed:before,.chat-topic-status.completed:before{background:#8893a3}
.chat-topic-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}
.chat-topic-actions:has(> :only-child){grid-template-columns:1fr}
.chat-topic-action{min-height:35px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:#1a202b;color:var(--text);font-size:11px;font-weight:800}
.chat-topic-action.danger{border-color:rgba(223,82,97,.2);background:rgba(223,82,97,.1);color:#ed929c}
.chat-topic-action:disabled{opacity:.55}
.chat-message-list{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:30px;margin-top:auto}
.chat-bubble{max-width:86%;padding:10px 12px;border:1px solid var(--line);border-radius:15px 15px 15px 5px;background:#161b24;overflow-wrap:anywhere}
.chat-bubble.mine{align-self:flex-end;border-color:rgba(46,114,224,.28);border-radius:15px 15px 5px 15px;background:#17335e}
.chat-bubble-head{display:flex;justify-content:space-between;gap:14px;margin-bottom:4px}
.chat-bubble-head b{color:#8cbaff;font-size:10px}
.chat-bubble-head time{color:#8896a9;font-size:9px}
.chat-bubble p{margin:0;white-space:pre-wrap;font-size:12px;line-height:1.5}
.chat-image,.chat-video{display:block;max-width:100%;max-height:260px;margin-top:7px;border-radius:9px;background:#0b1119}
.chat-image{min-width:120px;min-height:80px;object-fit:contain}
.chat-composer{display:grid;grid-template-columns:auto minmax(0,1fr) 42px;align-items:end;gap:8px;flex:none;padding:10px 12px calc(10px + var(--safe-bottom));border-top:1px solid var(--line);background:#0a0c11}
.chat-attach,.chat-send{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;height:42px;padding:0 11px;border:0;border-radius:22px;background:#1a1d29;color:#a7b1c0;cursor:pointer}
.chat-attach span{font-size:11px;font-weight:700}
.chat-attach svg{width:16px;height:16px}
.chat-composer textarea{width:100%;min-height:42px;max-height:100px;resize:vertical;padding:10px 12px;border:1px solid #263249;border-radius:21px;outline:none;background:#111722;color:var(--text);font-size:12px;line-height:1.5}
.chat-send{width:42px;padding:0;border-radius:50%;background:var(--blue);color:white}
.chat-file-label{grid-column:1/-1;overflow:hidden;color:#8cbaff;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.chat-closed{display:flex;align-items:center;justify-content:center;gap:7px;flex:none;padding:15px 12px calc(15px + var(--safe-bottom));border-top:1px solid var(--line);color:var(--muted);font-size:11px}
.chat-closed svg{width:16px;height:16px}
.access-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:72%;padding:20px;text-align:center}
.access-mark{display:grid;place-items:center;width:61px;height:61px;margin-bottom:7px;border:1px solid rgba(98,151,240,.2);border-radius:18px;background:var(--blue-soft);color:#8db9fc}
.access-mark.blocked{border-color:rgba(223,82,97,.22);background:rgba(223,82,97,.1);color:#e5969d}
.access-mark svg{width:28px;height:28px}
.access-gate h1{margin:0;font-size:24px}
.access-gate p{max-width:300px;margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.6}
.access-gate .button{max-width:300px}
@media(max-width:599px){.field input,.field textarea,.field select,.composer textarea,.claim-form input,.ticket-create-field select,.ticket-create-field textarea,.chat-composer textarea{font-size:16px}}
@media(max-height:740px){.home-screen .hero{padding:17px 18px}.home-screen .hero h1{font-size:27px}.home-screen .hero p{margin-bottom:14px}.home-screen .home-guide .section-head{margin-top:16px;margin-bottom:9px}.home-screen .home-step{padding:10px 13px}}
@media(min-width:600px){body{display:grid;place-items:center}.shell{height:var(--app-height,min(920px,calc(100dvh - 40px)));min-height:600px;border:1px solid #1c2633;border-radius:28px}}
@media(hover:hover){.product-card:hover{border-color:rgba(98,151,240,.22);background:#151b25}}
@media(prefers-reduced-motion:reduce){main.screen-enter{animation:none}.button,.product-card,.bottom-nav button,.toast,.faq-item,.faq-panel{transition:none}}
