@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#171717;background:#fdfdfc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #111;outline-offset:3px}.page{max-width:1600px;margin:auto}.mast{border-bottom:1px solid #ccc}.mast .inner{padding:22px clamp(24px,5vw,76px);display:flex;justify-content:space-between;align-items:center;gap:20px}.identity{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:22px;font-weight:700;letter-spacing:-.06em}.identity img{width:32px;height:32px}.mast nav{display:flex;gap:30px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.13em}.mast nav a{text-decoration:none}.mast nav a:hover{text-decoration:underline}.mast nav .active{text-decoration:underline;text-underline-offset:7px}.meta{font-size:11px;letter-spacing:.18em;font-weight:700}.serif{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.055em}.muted{color:#666}.signup-grid{display:grid;grid-template-columns:54% 46%;min-height:calc(100vh - 132px)}.signup-left{display:flex;flex-direction:column;border-right:1px solid #ccc}.signup-hero{padding:65px clamp(30px,5vw,75px) 45px;flex:1;display:flex;flex-direction:column;justify-content:space-between;min-height:550px}.line-label{font-size:11px;letter-spacing:.19em;font-weight:700;display:flex;align-items:center;gap:17px}.line-label:before{content:'';width:42px;height:1px;background:#111}.signup-hero h1{font-size:clamp(72px,7.6vw,122px);line-height:.93;margin:45px 0 24px}.signup-hero h1 span{display:block}.signup-hero p{font:23px/1.4 Georgia,serif;color:#555;max-width:570px;margin:0}.signup-hero .hero-foot{font-size:11px;letter-spacing:.12em}.signup-image{height:310px;overflow:hidden;border-top:1px solid #ccc}.signup-image img{width:100%;height:100%;object-fit:cover;object-position:center bottom;filter:grayscale(1) contrast(1.08)}.signup-form{padding:65px clamp(30px,4.5vw,70px) 45px;display:flex;flex-direction:column}.signup-form h2{font-size:clamp(47px,4vw,65px);margin:20px 0 16px;line-height:1.08}.signup-form p{color:#555;line-height:1.6;font-size:16px;max-width:530px}.signup-form form{margin-top:20px}.field{display:block;font-size:11px;letter-spacing:.14em;font-weight:700;margin:21px 0}.field input,.field select,.field textarea{display:block;width:100%;border:0;border-bottom:1px solid #999;border-radius:0;background:none;padding:13px 0 15px;font-size:16px;letter-spacing:0;outline:0;color:#111}.field textarea{resize:vertical;min-height:72px}.field input:focus,.field select:focus,.field textarea:focus{border-bottom:2px solid #111;padding-bottom:14px}.field input::placeholder,.field textarea::placeholder{color:#aaa}.text-action{border:0;border-bottom:1px solid #111;background:none;width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:14px 0;font-size:12px;font-weight:700;letter-spacing:.13em;color:#111}.text-action:hover{padding-right:12px}.text-action span:last-child{font-size:22px;line-height:1;font-weight:400}.fine{font-size:12px!important;color:#777!important;line-height:1.5!important}.signup-bottom{border-top:1px solid #ccc;padding-top:20px;margin-top:auto;font-size:12px;color:#666;line-height:1.5}.app-shell{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr);min-height:calc(100vh - 126px)}.side{border-right:1px solid #ccc;padding:40px 26px 30px clamp(24px,5vw,76px);display:flex;flex-direction:column;gap:60px}.side .overline{font-size:11px;letter-spacing:.17em;font-weight:700}.side nav{display:flex;flex-direction:column;gap:4px}.side nav a{display:block;text-decoration:none;font-size:14px;padding:13px 0;border-bottom:1px solid #ddd;color:#666}.side nav a.selected{font-weight:700;color:#111;border-color:#111}.side-bottom{margin-top:auto;color:#777;font-size:12px;line-height:1.5}.content{padding:48px clamp(30px,5vw,80px) 80px;max-width:1250px;width:100%}.content h1{font-size:clamp(48px,4.6vw,75px);line-height:1.08;margin:14px 0 15px}.intro{max-width:640px;line-height:1.6;color:#555;margin:0 0 40px}.section{border-top:1px solid #111;padding-top:25px;margin-top:48px}.section h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.04em;font-size:32px;margin:0 0 18px}.section .explain{font-size:14px;color:#777;max-width:640px;line-height:1.5;margin:-5px 0 25px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px 50px}.radio-list{border:0;margin:0;padding:0}.radio-list legend{font-size:11px;letter-spacing:.13em;font-weight:700;padding:0 0 10px}.radio-row{display:flex;gap:12px;align-items:flex-start;border-top:1px solid #ddd;padding:14px 0;cursor:pointer;font-size:14px}.radio-row:last-child{border-bottom:1px solid #ddd}.radio-row input{appearance:none;border:1px solid #777;width:16px;height:16px;border-radius:50%;margin:1px 0 0;flex:none}.radio-row input:checked{border:5px solid #111}.radio-row:has(input:checked){font-weight:700}.radio-row small{display:block;color:#777;font-weight:400;font-size:12px;margin-top:4px;line-height:1.4}.check-row{display:flex;gap:12px;align-items:center;border-top:1px solid #ddd;padding:14px 0;font-size:14px;cursor:pointer}.check-row:last-child{border-bottom:1px solid #ddd}.check-row input{accent-color:#111;width:16px;height:16px}.save-row{display:flex;align-items:center;gap:25px;margin-top:50px}.save-row .text-action{max-width:380px}.save-row .fine{margin:0}.overview-head{display:flex;justify-content:space-between;gap:25px;align-items:end}.overview-head p{color:#555}.large-number{font-size:clamp(60px,6.5vw,108px);line-height:1;letter-spacing:-.08em;font-weight:500;margin:22px 0 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #111;border-bottom:1px solid #111;margin:37px 0 55px}.metric{padding:24px 20px 25px 0}.metric+.metric{border-left:1px solid #ddd;padding-left:24px}.metric small{font-size:11px;letter-spacing:.11em;font-weight:700;color:#666}.metric strong{display:block;font-size:clamp(26px,2.5vw,39px);font-weight:500;letter-spacing:-.06em;margin-top:12px}.metric span{display:block;font-size:12px;color:#777;margin-top:3px}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.kv{border-top:1px solid #ddd;display:flex;justify-content:space-between;gap:20px;padding:13px 0;font-size:13px}.kv span:first-child{color:#777}.kv span:last-child{text-align:right;font-weight:600}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:#777;font-weight:600;font-size:11px;letter-spacing:.08em}.table th,.table td{border-bottom:1px solid #ddd;padding:13px 8px 13px 0}.table td:last-child,.table th:last-child{text-align:right}.progress-track{height:5px;background:#ddd;margin:16px 0}.progress-track span{display:block;height:5px;background:#111;width:0}.qr-wrap{display:flex;align-items:flex-start;gap:28px}.qr-wrap img{width:150px;height:150px;image-rendering:pixelated}.qr-wrap p{font-size:14px;color:#666;line-height:1.5;max-width:430px;margin:0}.qr-wrap strong{font-size:11px;letter-spacing:.13em}.text-link{display:inline-block;margin-top:15px;text-decoration:underline;text-underline-offset:5px;font-size:13px}.demo-banner{border-top:1px solid #ccc;padding:22px 0;color:#666;font-size:12px;line-height:1.5}.footer{border-top:1px solid #ccc}.footer .inner{padding:20px clamp(24px,5vw,76px);display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#666}.footer strong{color:#111}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(3){border-left:0;border-top:1px solid #ddd;padding-left:0}.metric:nth-child(4){border-top:1px solid #ddd}.dash-grid{gap:30px}}@media(max-width:850px){.signup-grid,.app-shell{grid-template-columns:1fr}.signup-left{border-right:0}.signup-hero{min-height:530px}.signup-image{height:220px}.signup-form{border-top:1px solid #ccc;min-height:600px}.side{border-right:0;border-bottom:1px solid #ccc;padding:22px 24px;gap:20px}.side nav{flex-direction:row;gap:25px}.side nav a{border:0;padding:4px 0}.side-bottom{display:none}.content{padding:40px 24px 70px}}@media(max-width:600px){.mast .inner{padding-block:18px}.identity{font-size:18px}.identity img{height:28px;width:28px}.mast nav{gap:13px;font-size:10px}.mast nav a:nth-child(2){display:none}.signup-hero{padding:48px 24px 32px;min-height:500px}.signup-hero h1{font-size:clamp(65px,14vw,86px)}.signup-hero p{font-size:19px}.signup-image{height:175px}.signup-form{padding:45px 24px}.signup-form h2{font-size:48px}.two-col,.dash-grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.metric{padding:20px 10px 20px 0}.metric+.metric{padding-left:15px}.metric:nth-child(3){padding-left:0}.metric strong{font-size:26px}.save-row{display:block}.qr-wrap{gap:17px}.qr-wrap img{width:115px;height:115px}.footer .inner{flex-wrap:wrap}.footer .inner span:last-child{width:100%}}

/* MrktBuddy product direction: precise software typography and open data rows. */
:root{font-family:'DM Sans',Arial,sans-serif;background:#fff;color:#111}.serif,.section h2{font-family:'DM Sans',Arial,sans-serif;font-weight:600;letter-spacing:-.055em}.mast{background:#fff;border-color:#ddd}.identity{font-size:20px;letter-spacing:-.045em}.signup-grid{grid-template-columns:54% 46%;background:#fff}.signup-left{background:#121212;color:#f7f7f7;border-right:0}.signup-hero{min-height:590px;padding-top:74px;padding-bottom:48px}.signup-hero h1{font-family:'DM Sans',Arial,sans-serif;font-weight:600;letter-spacing:-.085em;line-height:.99;font-size:clamp(66px,6.8vw,110px);margin:62px 0 32px}.signup-hero p{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(18px,1.55vw,23px);font-weight:400;line-height:1.48;color:#c6c6c6;max-width:590px}.signup-hero .line-label:before{background:#aaa}.hero-foot{color:#aaa}.product-peek{padding:30px clamp(30px,5vw,75px) 26px;border-top:1px solid #545454;background:#1d1d1d;min-height:250px}.peek-top,.peek-foot{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.16em;font-weight:700;color:#a8a8a8}.peek-query{font-size:20px;font-weight:500;letter-spacing:-.03em;padding:30px 0 18px;border-bottom:1px solid #575757}.peek-answer{display:flex;gap:24px;padding:18px 0 25px}.peek-answer span{font-size:10px;letter-spacing:.14em;color:#aaa;flex:none;padding-top:5px}.peek-answer p{font-size:14px;line-height:1.5;color:#ddd;margin:0;max-width:430px}.peek-foot{display:block}.signup-form{padding-top:75px}.signup-form h2{font-family:'DM Sans',Arial,sans-serif;font-weight:600;letter-spacing:-.07em;font-size:clamp(46px,3.8vw,62px);margin-top:38px}.signup-form>p{max-width:490px}.signup-form form{margin-top:45px}.signup-form .field{margin-bottom:28px}.signup-form .text-action{margin-top:28px}.app-shell{background:#fff}.side{background:#f6f6f5;border-color:#ddd}.content h1{font-family:'DM Sans',Arial,sans-serif;font-weight:600;letter-spacing:-.07em;font-size:clamp(48px,4vw,69px)}.section h2{font-size:29px}.section{border-color:#222}.content .intro{font-size:16px}.metrics{margin-top:42px}.metric strong{font-weight:600;letter-spacing:-.06em}.radio-row:has(input:checked){font-weight:600}.footer{background:#fff;border-color:#ddd}@media(max-width:850px){.signup-grid{grid-template-columns:1fr}.signup-hero{min-height:480px}.product-peek{min-height:230px}.signup-form{padding-top:56px}}@media(max-width:600px){.signup-hero{min-height:440px}.signup-hero h1{font-size:clamp(58px,12vw,78px);margin:55px 0 26px}.signup-hero p{font-size:18px}.product-peek{padding:24px;min-height:0}.peek-query{font-size:18px}.peek-answer{display:block}.peek-answer p{margin-top:9px}.signup-form h2{font-size:48px;margin-top:28px}}

/* V1 brand system: neutral identity, directional market colours only. */
:root{--ink:#111111;--white:#ffffff;--paper:#f6f6f5;--rule:#d9d9d7;--up:#147d52;--down:#c4443e;--quiet:#666666}body{background:var(--white);color:var(--ink)}.mast,.footer{border-color:var(--rule)}.side{background:var(--paper);border-color:var(--rule)}.signup-left{background:var(--ink)}.line-label{letter-spacing:.13em}.content .meta,.section-heading{letter-spacing:.12em}.move-up,.move-down{font-weight:700;font-variant-numeric:tabular-nums}.move-up{color:var(--up)}.move-down{color:var(--down)}.peek-market{border-top:1px solid #575757;display:flex;gap:40px;padding:16px 0;font-size:13px}.peek-market span{display:flex;gap:15px;align-items:center;color:#dedede}.peek-market .move-up{color:#72d9a9}.peek-market .move-down{color:#efaaa4}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-head h2{margin-top:12px}.section-head p{max-width:320px;color:var(--quiet);font-size:12px;line-height:1.5;margin:0 0 22px}.market-rows{border-top:1px solid var(--rule)}.market-row{display:grid;grid-template-columns:130px minmax(0,1fr) 130px;gap:20px;align-items:center;border-bottom:1px solid var(--rule);padding:17px 0;font-size:14px}.market-row strong{font-size:16px}.market-row span{color:var(--quiet)}.market-row b{text-align:right;font-size:17px}@media(max-width:600px){.section-head{display:block}.section-head p{margin-bottom:22px}.market-row{grid-template-columns:70px minmax(0,1fr) 85px;gap:10px}.market-row span{font-size:12px}.market-row b{font-size:14px}.peek-market{gap:24px}}

/* Market movement is more prominent while every value remains explicitly illustrative. */
.market-ribbon{background:#f6f6f5;border-bottom:1px solid var(--rule);overflow-x:auto}.ribbon-inner{max-width:1600px;margin:auto;padding:13px clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:28px;white-space:nowrap;font-size:13px}.ribbon-inner strong{font-size:10px;letter-spacing:.12em;margin-right:5px}.ribbon-inner span{display:flex;gap:10px;align-items:center;font-weight:600}.ribbon-inner b{font-size:15px}.ribbon-inner small{font-size:11px;color:var(--quiet)}.market-row{padding:23px 18px 23px 16px}.market-row.up-row{border-left:4px solid var(--up);background:linear-gradient(90deg,rgba(20,125,82,.085),transparent 45%)}.market-row.down-row{border-left:4px solid var(--down);background:linear-gradient(90deg,rgba(196,68,62,.085),transparent 45%)}.market-row b{font-size:24px}.peek-market{padding:22px 0}.peek-market b{font-size:17px}.market-row strong{font-size:18px}@media(max-width:850px){.ribbon-inner{justify-content:flex-start;gap:28px}.ribbon-inner small{display:none}}@media(max-width:600px){.ribbon-inner{padding-block:11px;gap:20px}.ribbon-inner b{font-size:13px}.market-row{padding:18px 10px}.market-row b{font-size:17px}}

/* Directional colour travels through selected rules, without a ticker bar. */
.signal-rule{height:2px;position:relative;overflow:hidden;background:#5b5b5b;margin:34px 0 16px}.signal-rule i{position:absolute;top:0;width:23%;height:100%;display:block;left:-30%;animation:signal-travel 5.8s linear infinite}.signal-rule i:first-child{background:linear-gradient(90deg,transparent,var(--up) 35%,var(--up) 65%,transparent)}.signal-rule i:last-child{background:linear-gradient(90deg,transparent,var(--down) 35%,var(--down) 65%,transparent);animation-delay:-2.9s}.signup-hero .signal-rule{width:min(100%,560px);background:#555;margin-top:auto;margin-bottom:23px}.signup-hero .hero-foot{margin:0}.setup-signal{background:var(--rule);margin:0 0 30px}.dashboard-signal{background:var(--rule);margin:28px 0 -38px}.content .section:nth-of-type(even){border-top-color:var(--up)}.content .section:nth-of-type(odd){border-top-color:var(--down)}.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--up)}.field input:not(:placeholder-shown):invalid{border-bottom-color:var(--down)}@keyframes signal-travel{to{left:110%}}@media(prefers-reduced-motion:reduce){.signal-rule i{animation:none}.signal-rule i:first-child{left:12%;width:30%}.signal-rule i:last-child{left:58%;width:30%}}@media(max-width:600px){.signup-hero .signal-rule{margin-top:25px}.setup-signal{margin-bottom:22px}}

/* Illustrative market movement chart: SVG is interface data, never a live quote. */
.movement-chart{margin:16px 0 23px;width:100%;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:16px 0 12px}.chart-heading,.chart-legend{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.11em}.chart-heading span{color:var(--quiet)}.movement-chart svg{width:100%;height:180px;display:block;overflow:visible;margin:16px 0 9px}.chart-grid path{stroke:var(--rule);stroke-width:1;fill:none}.chart-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1000;stroke-dashoffset:1000;animation:draw-market 5.5s cubic-bezier(.3,.1,.15,1) infinite}.green-line{stroke:var(--up)}.red-line{stroke:var(--down);animation-delay:.4s}.chart-end{opacity:0;animation:show-end 5.5s ease infinite}.green-end{fill:var(--up)}.red-end{fill:var(--down);animation-delay:.4s}.chart-legend{justify-content:flex-start;gap:28px;color:var(--quiet);font-weight:700}.chart-legend span{display:flex;gap:8px;align-items:center}.chart-legend i{width:18px;height:2px;display:inline-block}.legend-up{background:var(--up)}.legend-down{background:var(--down)}.product-peek .movement-chart{border-color:#555;margin:22px 0 12px}.product-peek .chart-heading,.product-peek .chart-legend{color:#dedede}.product-peek .chart-heading span{color:#aaa}.product-peek .chart-grid path{stroke:#424242}.product-peek .movement-chart svg{height:125px}.product-peek .green-line{stroke:#72d9a9}.product-peek .red-line{stroke:#efaaa4}.product-peek .green-end{fill:#72d9a9}.product-peek .red-end{fill:#efaaa4}.product-peek .legend-up{background:#72d9a9}.product-peek .legend-down{background:#efaaa4}@keyframes draw-market{0%{stroke-dashoffset:1000}28%,82%{stroke-dashoffset:0}100%{stroke-dashoffset:-1000}}@keyframes show-end{0%,27%{opacity:0}32%,82%{opacity:1}100%{opacity:0}}@media(prefers-reduced-motion:reduce){.chart-line,.chart-end{animation:none}.chart-line{stroke-dashoffset:0}.chart-end{opacity:1}}@media(max-width:600px){.movement-chart svg{height:130px}.product-peek .movement-chart svg{height:100px}.chart-heading,.chart-legend{font-size:9px}}
/* Desktop kiosk-like flow: one viewport per page, with local views instead of a long page. */
.view-panel{display:none}.view-panel.active{display:block}.dashboard-title{display:flex;align-items:end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--rule);padding-bottom:17px}.dashboard-title h1{margin:10px 0 0}.panel-title{font-size:26px;font-weight:600;letter-spacing:-.05em;margin:22px 0 12px}.panel-intro{font-size:15px;line-height:1.55;color:var(--quiet);margin:0 0 25px;max-width:650px}.wide-details{max-width:760px}.usage-split{display:grid;grid-template-columns:1fr 1fr;gap:50px}.connect-layout{display:flex;align-items:flex-start;gap:40px;border-top:1px solid var(--rule);padding-top:28px}.connect-layout img{height:200px;width:200px;image-rendering:pixelated;flex:none}.connect-layout p{font-size:15px;color:var(--quiet);line-height:1.55;max-width:500px}.compact-content .demo-banner{margin-top:24px}.compact-content .metrics{margin:20px 0 20px}.compact-content .metric{padding-top:16px;padding-bottom:17px}.compact-content .movement-chart{margin:18px 0}.compact-content .movement-chart svg{height:180px}.compact-content .dashboard-signal{margin:0 0 -19px}.compact-content .market-rows{display:none}body[data-page="customize"] #agent-form .section{display:none}body[data-page="customize"] #agent-form .section.active{display:block}body[data-page="customize"] .section{margin-top:18px;padding-top:18px}body[data-page="customize"] .section h2{font-size:25px;margin-bottom:12px}body[data-page="customize"] .section .explain{margin-bottom:14px}body[data-page="customize"] .radio-row,body[data-page="customize"] .check-row{padding:10px 0}body[data-page="customize"] .field{margin:12px 0}body[data-page="customize"] .save-row{margin-top:30px}body[data-page="customize"] .demo-banner{margin-top:20px}body[data-page="customize"] .intro{margin-bottom:16px}.side nav a.selected{border-bottom-color:var(--ink)}
@media(min-width:1000px) and (min-height:760px){html,body{height:100%;overflow:hidden}.page{height:100dvh;display:flex;flex-direction:column}.mast .inner{height:70px;padding-top:0;padding-bottom:0}.footer{display:none}.signup-grid,.app-shell{height:calc(100dvh - 70px);min-height:0}.signup-left,.signup-form,.content,.side{min-height:0}.signup-hero{min-height:0;padding-top:42px;padding-bottom:22px}.signup-hero h1{font-size:clamp(57px,6vw,98px);margin:34px 0 22px}.signup-hero p{font-size:18px}.signup-hero .signal-rule{margin-top:28px;margin-bottom:16px}.product-peek{min-height:0;padding-top:18px;padding-bottom:15px}.product-peek .peek-query{padding:18px 0 12px}.product-peek .peek-answer{padding:12px 0}.product-peek .movement-chart{margin:9px 0}.product-peek .movement-chart svg{height:90px;margin:10px 0 4px}.product-peek .peek-market{padding:10px 0}.signup-form{padding-top:45px;padding-bottom:30px}.signup-form h2{margin-top:26px}.signup-form form{margin-top:16px}.signup-form .field{margin:17px 0}.signup-form .text-action{margin-top:15px}.signup-bottom{margin-top:25px}.side{padding-top:37px;padding-bottom:25px}.content{padding-top:34px;padding-bottom:20px;overflow:hidden}.content h1{font-size:clamp(43px,4vw,60px);margin:8px 0 9px}.content .intro{font-size:14px;line-height:1.45}.compact-content .movement-chart svg{height:clamp(125px,20vh,185px)}.compact-content .metric strong{font-size:clamp(25px,2.8vw,38px)}}
@media(max-width:999px), (max-height:759px){html,body{overflow:auto}.page{height:auto}.app-shell,.signup-grid{height:auto}.content{overflow:visible}body[data-page="customize"] #agent-form .section{display:none}body[data-page="customize"] #agent-form .section.active{display:block}}
@media(max-width:650px){.usage-split{grid-template-columns:1fr;gap:22px}.connect-layout{gap:18px}.connect-layout img{width:110px;height:110px}.dashboard-title .meta:last-child{display:none}.panel-title{font-size:24px}}
@media(min-width:1000px) and (min-height:760px){.product-peek .peek-query,.product-peek .peek-answer,.product-peek .peek-market{display:none}.product-peek .movement-chart{margin:11px 0 6px}.product-peek .movement-chart svg{height:clamp(82px,12vh,115px)}.product-peek .peek-foot{margin-top:7px}}
/* CX-141 A3 phone pass (below 760 px; the desktop layout is untouched).
   At 375/390 the workspace failed the overflow scan for three reasons: the
   single 1fr column track grows to the side nav's min-content (1fr means
   minmax(auto,1fr)), the side nav then cannot shrink so the tab bar runs off
   the right edge, and the Connect tab's deep link + /start token are one
   unbreakable string each. Fixes: the track may shrink (minmax(0,1fr)), the
   nav WRAPS onto more lines (never a sideways scroller), every two-column
   block stacks, the Connect tab puts the QR above the text, and long links
   and tokens break anywhere. */
@media(max-width:759px){.app-shell{grid-template-columns:minmax(0,1fr)}.side nav{flex-wrap:wrap;gap:8px 22px}.two-col,.dash-grid,.usage-split{grid-template-columns:1fr;gap:26px}.connect-layout{flex-direction:column;gap:22px;overflow-wrap:anywhere}.connect-layout code{word-break:break-all}}

/* CX-141 A4: the remaining user pages (login, reset, connect, settings, the
   legal pages) join the beta design. One shared document column (.doc-shell)
   carries them; page-local pieces below reuse the frame's rules-and-rows
   language. Phone rules stay scoped under max-width:759px. */
.doc-shell{width:100%;max-width:900px;margin:0 auto;padding:56px clamp(24px,5vw,64px) 96px}
.doc-shell h1{font-size:clamp(42px,4.2vw,62px);line-height:1.05;margin:14px 0 10px}
.doc-shell .intro{margin:0 0 8px}
.auth-doc{max-width:560px}
.auth-panel form{margin-top:14px}
.auth-panel .text-action{margin-top:24px}
.auth-panel .fine{margin-top:18px}
.auth-panel .fine:first-of-type{margin-top:22px}
a.text-action{text-decoration:none}
.field-line{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.field-line a{white-space:nowrap}
.or-rule{display:flex;align-items:center;gap:16px;margin:30px 0 0;font-size:11px;font-weight:700;letter-spacing:.14em;color:#777}
.or-rule:before,.or-rule:after{content:'';flex:1;height:1px;background:var(--rule)}
.panel-box{border:1px solid var(--rule);padding:30px clamp(20px,4vw,34px) 26px;margin-top:30px;display:flex;flex-direction:column;align-items:center;text-align:center}
.panel-box h2{font-size:26px;font-weight:600;letter-spacing:-.04em;margin:16px 0 0}
.panel-box p{font-size:15px;line-height:1.6;color:var(--quiet);max-width:430px;margin:10px 0 0}
.panel-box .text-action{margin-top:24px}
.qr-lead{font-size:15px;font-weight:600;margin:20px 0 0;color:var(--ink)}
.qr-box{display:block;border:1px solid var(--rule);padding:14px;line-height:0;margin-top:6px}
.qr-box svg{display:block}
.action-row{display:flex;flex-direction:column;width:100%;margin-top:20px;align-items:stretch}
.action-row .text-link{margin-top:14px;text-align:center}
.waiting-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:28px;padding-top:22px;border-top:1px solid var(--rule);width:100%;font-size:13px;color:var(--quiet)}
.pulse-dot{width:8px;height:8px;border-radius:999px;background:var(--up);flex:none;animation:pulse-breathe 1.8s ease-in-out infinite}
@keyframes pulse-breathe{0%,100%{opacity:.3}50%{opacity:1}}
@keyframes drawCheck{to{stroke-dashoffset:0}}
.help-box{margin-top:18px;width:100%;background:var(--paper);border:1px solid var(--rule);padding:16px 18px;text-align:left}
.help-box p{font-size:13px;line-height:1.65;color:var(--quiet);max-width:none;margin:6px 0 0}
.help-box p:first-child{margin-top:0}
.help-box code{display:block;margin-top:10px;background:#fff;border:1px solid var(--rule);padding:10px 13px;font-size:12.5px;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.dev-box{background:var(--paper);text-align:left;align-items:stretch}
.dev-box .meta{font-size:10px;color:#999}
.dev-form{display:flex;gap:12px;margin-top:14px;flex-wrap:wrap;align-items:flex-end}
.dev-form input{flex:1;min-width:190px;border:0;border-bottom:1px solid #999;background:none;padding:12px 0;font-size:15px;outline:0;color:var(--ink)}
.dev-form input:focus{border-bottom:2px solid var(--ink);padding-bottom:11px}
.up-text{color:var(--up);font-weight:700}
.foot-line{margin-top:44px}
/* settings: open data rows + instant-save switches (app.js data-toggle) */
.settings-doc{max-width:720px}
.section-head-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.group-meta{font-size:10px;color:#999;margin:26px 0 0}
.pref-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;border-top:1px solid var(--rule);min-height:44px;cursor:pointer}
.pref-row:last-of-type{border-bottom:1px solid var(--rule)}
.pref-text{min-width:0}
.pref-label{font-size:14px;font-weight:600}
.pref-note{margin-top:16px}
.toggle-track{width:42px;height:25px;border-radius:999px;background:#ddd;position:relative;flex:none;transition:background .2s ease}
.toggle-track.on{background:var(--ink)}
.toggle-knob{position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:999px;background:#fff;transition:transform .2s ease}
.toggle-track.on .toggle-knob{transform:translateX(17px)}
.doc-shell .kv .text-link{margin-top:0}
.danger-zone{margin-top:48px;border-top:1px solid var(--down);padding-top:20px}
.danger-zone summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px}
.danger-zone summary::-webkit-details-marker{display:none}
.danger-title{color:var(--down);font-weight:600;font-size:14px}
.danger-sub{font-size:12px;color:#999;margin-top:2px}
.danger-body{margin-top:16px;padding-top:16px;border-top:1px solid var(--rule)}
.danger-body>p{font-size:13px;line-height:1.65;color:var(--quiet);max-width:640px;margin:0}
.danger-form{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap;align-items:flex-end}
.danger-form input{flex:1;min-width:200px;border:0;border-bottom:1px solid #999;background:none;padding:12px 0;font-size:15px;outline:0;color:var(--ink)}
.danger-form input:focus{border-bottom:2px solid var(--down);padding-bottom:11px}
.danger-btn{border:1px solid var(--down);background:none;color:var(--down);padding:13px 20px;font-size:12px;font-weight:700;letter-spacing:.12em;cursor:pointer;flex:none}
.danger-btn:hover{background:var(--down);color:#fff}
/* legal pages: the frame's typography carries the byte-identical text */
.legal{max-width:760px}
.legal h1{font-weight:600;letter-spacing:-.055em;font-size:clamp(40px,4vw,58px);line-height:1.04;margin:0}
.legal .sub{font-size:12px;color:#999;margin-top:12px}
.legal h2{font-size:18px;font-weight:600;letter-spacing:-.02em;margin:38px 0 0}
.legal p,.legal li{font-size:15px;line-height:1.7;color:#333;margin:10px 0 0}
.legal ul{margin:8px 0 0;padding-left:22px}
.legal .lnk{text-decoration:underline;text-underline-offset:4px}
.legal .warn{margin-top:30px;background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--down);padding:16px 18px}
.legal .warn p{margin:0;font-weight:600;color:var(--ink)}
.legal .caps{font-weight:700;color:var(--ink)}
.legal .policy-text{white-space:pre-wrap;font-family:inherit;font-size:15px;line-height:1.7;color:#333;margin:0}
/* the kiosk rule (one viewport per page) must not clip the longer pages:
   the document column scrolls inside the viewport instead */
@media(min-width:1000px) and (min-height:760px){
  main.doc-shell{height:auto;max-height:calc(100dvh - 70px);overflow:auto;padding-top:38px;padding-bottom:38px}
}
@media(max-width:759px){
  .doc-shell{padding:40px 20px 70px}
  .doc-shell h1{font-size:clamp(34px,8.5vw,46px)}
  .panel-box{padding:26px 18px 22px}
  .action-row .text-link{text-align:center}
  .waiting-row{flex-wrap:wrap}
  .doc-shell .kv{flex-wrap:wrap;gap:4px 14px}
  .doc-shell .kv span:last-child{text-align:left;overflow-wrap:anywhere}
  .pref-row{flex-wrap:wrap}
  .danger-form{align-items:stretch}
  .legal h1{font-size:clamp(34px,9vw,44px)}
  .legal p,.legal li,.legal .policy-text{font-size:14.5px}
}
