.app{background:hsl(var(--surface));min-height:100dvh;color:hsl(var(--on-surface));font-family:var(--font-sans);justify-content:center;display:flex}.app-frame{background:hsl(var(--surface));flex-direction:column;width:100%;max-width:430px;min-height:100dvh;display:flex;position:relative}.app[data-formfactor=tablet]{align-items:center;padding:24px 0}.app[data-formfactor=tablet] .app-frame{border:1px solid hsl(var(--line));border-radius:28px;height:min(100dvh - 48px,900px);min-height:0;overflow:hidden;box-shadow:0 24px 70px #00000073}.app[data-native="1"] .app-frame{max-width:none}.web-shell{width:100%;min-height:100dvh;display:flex}.web-nav{border-right:1px solid hsl(var(--line));flex-direction:column;flex-shrink:0;gap:6px;width:256px;height:100dvh;padding:22px 16px;display:flex;position:sticky;top:0}.web-nav-brand{color:hsl(var(--on-surface));padding:6px 10px 20px;display:block}.web-nav-list{flex-direction:column;gap:4px;display:flex}.web-nav-item{color:hsl(var(--on-surface-muted));cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:500;display:flex}.web-nav-item:hover{background:hsl(var(--on-surface) / .06);color:hsl(var(--on-surface))}.web-nav-item.active{background:hsl(var(--brand-primary) / .18);color:hsl(var(--on-surface))}.web-nav-foot{flex-direction:column;gap:6px;margin-top:auto;display:flex}.web-nav-user{color:hsl(var(--on-surface-muted));padding:6px 12px;font-size:12.5px}.web-main{flex:1;min-width:0;height:100dvh;overflow-y:auto}.app[data-formfactor=desktop] .app-appbar{display:none}.web-main .app-screen{min-height:0}.web-main .app-scroll{overflow:visible}.web-main .app-pad{max-width:880px;margin:0 auto;padding:36px 40px 56px}.web-main .app-stack{max-width:380px}.web-main .app-stats{grid-template-columns:repeat(3,1fr)}.app-screen{flex-direction:column;flex:1;min-height:0;display:flex}.app-scroll{flex:1;overflow-y:auto}.app-pad{padding:8px 22px 32px}.app-center{text-align:center;align-items:center}.app-appbar{z-index:10;background:hsl(var(--surface) / .9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:8px;height:56px;padding:0 14px;display:flex;position:sticky;top:0}.app-back{width:40px;height:40px;color:hsl(var(--on-surface));cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.app-back:hover{background:hsl(var(--on-surface) / .06)}.app-appbar-title{letter-spacing:.01em;font-size:16px;font-weight:500}.app-appbar-logo{color:hsl(var(--on-surface));align-items:center;gap:8px;display:inline-flex}.app-h1{letter-spacing:-.01em;margin:8px 0;font-size:27px;font-weight:500;line-height:1.2}.app-sub{color:hsl(var(--on-surface-muted));margin:0 0 22px;font-size:14.5px;line-height:1.5}.app-sec{letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--on-surface-muted));margin:26px 0 12px;font-size:13px;font-weight:600}.app .mono{font-family:var(--font-mono)}.app-label{color:hsl(var(--on-surface-muted));margin:16px 0 7px;font-size:12.5px;font-weight:500;display:block}.app-input,.app-input-el{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));width:100%;height:52px;color:hsl(var(--on-surface));font-family:var(--font-sans);border-radius:12px;outline:none;justify-content:space-between;align-items:center;padding:0 16px;font-size:15px;display:flex}.app-input-el::placeholder{color:hsl(var(--on-surface-muted))}.app-input-el:focus-visible{border-color:hsl(var(--brand-primary));box-shadow:0 0 0 3px hsl(var(--brand-primary) / .25)}.app-input .ph{color:hsl(var(--on-surface-muted))}.app-input-icon{color:hsl(var(--on-surface-muted));display:inline-flex}.app-hint{color:hsl(var(--on-surface-muted));margin-top:7px;font-size:12px}.app-hint.ok{color:hsl(var(--success-500))}.app-btn{width:100%;height:52px;font-family:var(--font-sans);cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:500;text-decoration:none;transition:filter .15s,background .15s;display:inline-flex}.app-btn.primary{background:hsl(var(--brand-primary));color:hsl(var(--on-primary))}.app-btn.primary:hover{filter:brightness(1.08)}.app-btn.outline{color:hsl(var(--on-surface));border-color:hsl(var(--line-strong));background:0 0}.app-btn.outline:hover{background:hsl(var(--on-surface) / .05)}.app-btn.ghost{color:hsl(var(--on-surface-muted));background:0 0}.app-btn.ghost:hover{background:hsl(var(--on-surface) / .05)}.app-btn-text{color:hsl(var(--brand-primary));font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;font-size:13.5px;font-weight:500}.app-stack{flex-direction:column;gap:12px;width:100%;margin-top:24px;display:flex}.app-or{text-align:center;color:hsl(var(--on-surface-muted));font-size:12.5px}.app-legal{color:hsl(var(--on-surface-muted));margin-top:18px;font-size:12px;line-height:1.5}.app-legal u,.app-legal a{color:hsl(var(--on-surface));cursor:pointer;text-decoration:underline}.app-steps{gap:8px;margin:0 0 8px;display:flex}.app-step{background:hsl(var(--on-surface) / .12);border-radius:999px;flex:1;height:4px}.app-step.active{background:hsl(var(--brand-primary))}.app-step.done{background:hsl(var(--success-500))}.app-chiprow{flex-wrap:wrap;gap:8px;display:flex}.app-chip{border:1px solid hsl(var(--line-strong));height:34px;color:hsl(var(--on-surface));cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.app-chip.on{background:hsl(var(--brand-primary) / .16);border-color:hsl(var(--brand-primary) / .4);color:hsl(var(--on-surface))}.app-chip.add{color:hsl(var(--on-surface-muted));border-style:dashed}.app-otp{justify-content:center;gap:10px;display:flex}.app-otp-box{border:1px solid hsl(var(--line-strong));background:hsl(var(--surface-elevated));border-radius:12px;justify-content:center;align-items:center;width:46px;height:56px;font-size:22px;font-weight:600;display:flex}.app-otp-box.filled{border-color:hsl(var(--brand-primary))}.app-otp-box.cursor{border-color:hsl(var(--brand-primary));box-shadow:0 0 0 3px hsl(var(--brand-primary) / .25)}.app-upload{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));border-radius:14px;align-items:center;gap:14px;margin-bottom:12px;padding:16px;display:flex}.app-upload-ic{background:hsl(var(--on-surface) / .06);width:42px;height:42px;color:hsl(var(--on-surface-muted));border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.app-upload-tx{flex:1;min-width:0}.app-upload-t{font-size:14.5px;font-weight:500}.app-upload-s{color:hsl(var(--on-surface-muted));font-size:12.5px}.app-upload-cta{color:hsl(var(--brand-primary));cursor:pointer;flex-shrink:0;font-size:13px;font-weight:600}.app-upload-cta.done{color:hsl(var(--success-500))}.app-statusicon{border-radius:999px;justify-content:center;align-items:center;width:64px;height:64px;margin:24px 0 18px;display:flex}.app-statusicon.amber{background:hsl(var(--warning-500) / .16)}.app-statusicon.green{background:hsl(var(--success-500) / .16)}.app-spinner{border:3px solid hsl(var(--warning-500) / .3);border-top-color:hsl(var(--warning-500));border-radius:999px;width:26px;height:26px;animation:.9s linear infinite app-spin}@keyframes app-spin{to{transform:rotate(360deg)}}.app-timeline{text-align:left;width:100%;margin:22px 0 8px}.app-step-line{gap:14px;padding-bottom:22px;display:flex;position:relative}.app-step-line:not(.last):before{content:"";background:hsl(var(--line));width:2px;position:absolute;top:28px;bottom:0;left:13px}.app-step-num{border:1px solid hsl(var(--line-strong));width:28px;height:28px;color:hsl(var(--on-surface-muted));background:hsl(var(--surface));z-index:1;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.app-step-num.done{background:hsl(var(--success-500));color:#fff;border-color:#0000}.app-step-num.active{background:hsl(var(--brand-primary));color:hsl(var(--on-primary));border-color:#0000}.app-step-title{font-size:14.5px;font-weight:500}.app-step-body{color:hsl(var(--on-surface-muted));font-size:12.5px}.app-card{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));border-radius:14px;width:100%;margin:18px 0;padding:6px 16px}.app-vc-row{border-bottom:1px solid hsl(var(--line));justify-content:space-between;align-items:center;padding:12px 0;font-size:14px;display:flex}.app-vc-row:last-child{border-bottom:none}.app-vc-ok{color:hsl(var(--success-500));font-size:13px;font-weight:500}.app-rows{border:1px solid hsl(var(--line));border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.app-row{background:hsl(var(--surface-elevated));border:none;border-bottom:1px solid hsl(var(--line));color:hsl(var(--on-surface));font-family:var(--font-sans);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;width:100%;padding:16px;font-size:14.5px;display:flex}.app-row:last-child{border-bottom:none}.app-row:hover{background:hsl(var(--on-surface) / .03)}.app-avail{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.app-avail-t{font-size:14.5px;font-weight:500}.app-avail-s{color:hsl(var(--on-surface-muted));margin-top:2px;font-size:12px}.app-switch{background:hsl(var(--on-surface) / .18);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:46px;height:26px;transition:background .15s;position:relative}.app-switch:after{content:"";background:#fff;border-radius:999px;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px}.app-switch.on{background:hsl(var(--brand-primary))}.app-switch.on:after{transform:translate(20px)}.app-profile-head{text-align:center;flex-direction:column;align-items:center;padding:12px 0 8px;display:flex}.app-avatar{color:#fff;border-radius:999px;justify-content:center;align-items:center;font-weight:600;display:flex}.app-prof-name{margin:12px 0 4px;font-size:22px;font-weight:500}.app-prof-meta{color:hsl(var(--on-surface-muted));font-size:13.5px}.app-status-badge{cursor:pointer;border-radius:999px;margin-top:12px;padding:5px 12px;font-size:12.5px;font-weight:500}.app-status-badge.active{background:hsl(var(--success-500) / .16);color:hsl(var(--success-500))}.app-prof-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;display:grid}.app-pstat{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));text-align:center;border-radius:14px;padding:16px 8px}.app-pstat-v{font-size:19px;font-weight:600}.app-pstat-l{color:hsl(var(--on-surface-muted));margin-top:2px;font-size:11.5px}.app-banner{border-radius:14px;margin-bottom:20px;padding:16px 18px}.app-banner.amber{background:hsl(var(--warning-500) / .14);border:1px solid hsl(var(--warning-500) / .35)}.app-banner.red{background:hsl(var(--danger-500) / .16);border:1px solid hsl(var(--danger-500) / .4)}.app-banner.info{background:hsl(var(--info-500) / .12);border:1px solid hsl(var(--info-500) / .3)}.app-banner-t{margin-bottom:6px;font-size:15px;font-weight:600}.app-banner-b{color:hsl(var(--on-surface-muted));font-size:13px;line-height:1.5}.app-meter-row{justify-content:space-between;margin-bottom:8px;font-size:13.5px;display:flex}.app-meter-bar{background:hsl(var(--on-surface) / .1);border-radius:999px;height:8px;overflow:hidden}.app-meter-bar>span{border-radius:999px;height:100%;display:block}.app-meter-bar>span.amber{background:hsl(var(--warning-500))}.app-meter-bar>span.red{background:hsl(var(--danger-500))}.app-greeting{padding:4px 0 18px}.app-greeting .hi{color:hsl(var(--on-surface-muted));text-transform:capitalize;font-size:12.5px}.app-greeting .name{margin-top:2px;font-size:22px;font-weight:500}.app-sectionhead{justify-content:space-between;align-items:baseline;margin:22px 0 12px;display:flex}.app-sectionhead h3{letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--on-surface-muted));margin:0;font-size:13px;font-weight:600}.app-sectionhead a{color:hsl(var(--brand-primary));cursor:pointer;font-size:12.5px;font-weight:500}.app-bcard{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));border-radius:16px;margin-bottom:12px;padding:16px}.app-bcard.next{border-color:hsl(var(--brand-primary) / .5);box-shadow:0 0 0 1px hsl(var(--brand-primary) / .25)}.app-bcard-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.app-bcard-row{gap:12px;min-width:0;display:flex}.app-bcard-ava{color:#1a1816;background:hsl(var(--brand-secondary));border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:15px;font-weight:600;display:flex}.app-bubble{word-break:break-word;border-radius:14px;max-width:80%;padding:8px 12px;font-size:14.5px;line-height:1.4}.app-bubble.mine{background:hsl(var(--brand-primary));color:hsl(var(--on-primary));align-self:flex-end}.app-bubble.them{background:hsl(var(--surface-muted));color:hsl(var(--on-surface));align-self:flex-start}.app-bcard-when{color:hsl(var(--on-surface-muted));font-size:12px}.app-bcard-name{margin:1px 0;font-size:15px;font-weight:500}.app-bcard-meta{color:hsl(var(--on-surface-muted));font-size:12px}.app-statustag{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:600}.app-statustag.confirmed,.app-statustag.completed{background:hsl(var(--success-500) / .16);color:hsl(var(--success-500))}.app-statustag.matched,.app-statustag.live{background:hsl(var(--info-500) / .16);color:hsl(var(--info-500))}.app-statustag.requested{background:hsl(var(--warning-500) / .16);color:hsl(var(--warning-500))}.app-statustag.cancelled,.app-statustag.interrupted{background:hsl(var(--danger-500) / .16);color:hsl(var(--danger-500))}.app-stats{grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 4px;display:grid}.app-stat{border:1px solid hsl(var(--line));background:hsl(var(--surface-elevated));border-radius:16px;padding:16px}.app-stat .lbl{color:hsl(var(--on-surface-muted));font-size:11.5px}.app-stat .num{margin:4px 0 2px;font-size:26px;font-weight:600}.app-stat .num.accent{color:hsl(var(--brand-primary))}.app-stat .sub{color:hsl(var(--on-surface-muted));font-size:11.5px}.app-invrow{border-bottom:1px solid hsl(var(--line));justify-content:space-between;align-items:center;padding:14px 0;display:flex}.app-invrow:last-child{border-bottom:none}.app-invrow .d{font-size:14px;font-weight:500}.app-invrow .s{color:hsl(var(--on-surface-muted));font-size:12px}.app-invrow .amt{font-family:var(--font-mono);text-align:right;font-size:14px;font-weight:600}.app-demo{color:hsl(var(--on-surface-muted));text-align:center;border-top:1px solid hsl(var(--line));padding:10px 16px;font-size:11.5px}
