/* GCP Atelier — presentation layer; indicator and access rules are unchanged. */
:root{--bg:#0a0c0e;--panel:#101316;--line:#25282c;--muted:#8b9299;--gold:#dcc393;--text:#f0eee9;--soft:#b2b4b6;--green:#54c6a6}
body{background:var(--bg);font-size:13px;-webkit-font-smoothing:antialiased}
::selection{background:#dcc39340;color:#fff}
button,.button,input,select{border-radius:7px;font-family:'DM Sans',sans-serif}
button,.button{background:#191d21;border-color:#30353a;transition:background .18s,border-color .18s,transform .18s}
button:hover,.button:hover{background:#24292e;border-color:#72634b;text-decoration:none}
button:active,.button:active{transform:translateY(1px)}
.primary{background:var(--gold);border-color:var(--gold);color:#1c1912;font-weight:650;box-shadow:inset 0 1px #fff5}
.primary:hover{background:#eddaad;color:#16140f;border-color:#eddaad}
input,select{background:#0d1013;border-color:#30343a;min-height:44px}
input::placeholder{color:#626b73}
.brand{letter-spacing:.8px;font-size:12px;gap:11px}.brand small{font-weight:500;color:var(--gold);letter-spacing:2px;font-size:8px}
.logo{width:34px;height:38px;background:transparent;color:var(--gold);font-size:0;position:relative;transform:skewY(-12deg)}
.logo:before,.logo:after{content:'';position:absolute;inset:4px 2px;border:2px solid currentColor;border-left-width:7px;border-right-width:7px;transform:skewX(-20deg)}
.logo:after{inset:13px 9px;background:var(--gold);border:0}
.brand-copy{display:grid;gap:3px}.brand-copy small{display:block}
.eyebrow{color:var(--gold);letter-spacing:2px;font-size:9px;font-weight:600}
header{height:78px;min-height:78px;padding:0 32px;gap:30px;background:#0d1012;border-bottom:1px solid var(--line)}
header nav{gap:22px;font-size:12px}header nav a{padding:10px 0;color:var(--muted)}header nav a:hover{color:var(--text);text-decoration:none}
header nav .current{color:var(--gold)}
.header-divider{width:1px;height:24px;background:var(--line)}
.header-caption{font-size:10px;letter-spacing:2px;color:#767e85}
#account-email{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
#workspace-logout{background:transparent;color:#a4a8ad;border-color:#30343a;font-size:11px;padding:8px 12px}
.member-nav{display:flex;gap:16px;align-items:center;margin-left:auto}
.nav-current{font-size:11px;color:var(--gold);padding:9px 15px;background:#dac08f0a;border:1px solid #dac08f24;border-radius:6px}
main{max-width:1800px;padding:0 32px}
.intro{padding:32px 0 26px;align-items:flex-end;gap:20px}
.intro h1{font-size:clamp(28px,3vw,42px);letter-spacing:-1.8px;font-weight:500;line-height:1.1}
.intro h1 em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}
.intro p{margin:10px 0 0;font-size:12px}.intro .eyebrow{margin:0 0 12px;font-size:9px}
.intro-meta{display:flex;align-items:center;gap:12px;color:var(--muted);font:10px 'Space Grotesk';letter-spacing:1px;margin-bottom:3px;white-space:nowrap}
.intro-meta:before{content:'';width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg)}
.live-workspace{grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
.chart-panel{border-radius:12px;overflow:hidden;background:#101316;border-color:#2b2e32;box-shadow:0 16px 44px #0002}
.toolbar{height:72px;padding:0 22px;gap:12px;background:linear-gradient(100deg,#15191d,#101316)}
.instrument-icon{display:grid;place-items:center;width:33px;height:33px;background:#ddc18b12;color:var(--gold);border:1px solid #dcc39325;border-radius:50%;font-family:Georgia,serif;font-size:19px}
.instrument-name{display:grid;gap:4px}.instrument-name strong{font:600 13px 'Space Grotesk';letter-spacing:.5px}.instrument-name small{font-size:9px;color:var(--muted)}
.pill{font-size:9px;letter-spacing:.1px;padding:6px 9px;border-color:#303338;background:#15191b;color:#a0a7ab}
.timeframe-picker{font-size:10px;gap:9px}.timeframe-picker select{width:74px;min-height:34px;padding:7px 9px;background:#0d1012;border-color:#33383d;font-size:11px}
.chart-tools{display:flex;gap:6px;margin-left:4px}.chart-tools button{height:33px;padding:6px 10px;font-size:10px;background:transparent;color:#aab1b8;border-color:#30353b}
.live-workspace #market-chart{height:calc(100vh - 350px);min-height:510px;max-height:850px}
.chart-bottom{padding:12px 18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;background:#0e1114}
.chart-bottom .note{font-size:9px;color:#7c858d;margin:0!important;padding:0!important;line-height:1.65;max-width:65%}
.chart-bottom #feed-updated{text-align:right;max-width:35%;font-variant-numeric:tabular-nums}
.gcp-sidebar{border-radius:12px;padding:20px 16px;background:#101316;border-color:#2b2e32;box-shadow:0 16px 44px #0002}
.gcp-sidebar>.eyebrow{font-size:8px;margin:0 0 7px;color:#a79574}
.gcp-sidebar>h2{font-size:21px;letter-spacing:-.5px}
.gcp-sidebar #gcp-load-status{margin-top:14px;border-color:#d1b47626;color:var(--gold);background:#d1b47609;font-size:9px}
.gcp-sidebar #gcp-data-status{font-size:10px;line-height:1.6;margin:10px 0;color:#818b93}
.gcp-sidebar #gcp-board{margin-top:16px;border-color:#2c3136;border-radius:8px}
.gcp-sidebar .pine-table{background:#0d1114}
.gcp-sidebar .pine-table td{padding:9px 10px!important;font-size:9px!important;border-color:#ffffff0a!important;line-height:1.6;font-variant-numeric:tabular-nums}
.gcp-sidebar .pine-table tr:first-child td{padding:11px!important;font-size:8px!important;letter-spacing:1.5px}
.gcp-sidebar .pine-table tr:nth-child(2) td{font:500 19px 'Space Grotesk'!important;padding:19px 8px!important;letter-spacing:-.4px;background:#192120!important}
.gcp-sidebar .pine-table tr:nth-child(3) td{padding:10px 6px!important;font-size:8px!important}
.gcp-sidebar #gcp-board-time{font-size:9px;line-height:1.6;margin:14px 1px 0}
.runtime-details{padding-top:12px;margin-top:14px;border-color:#242a2e}.runtime-details summary{font-size:9px;color:#a49a85}.runtime-details p{font-size:9px!important}
.board-heading{font-size:9px;letter-spacing:1.6px}.board-direction{font-size:18px;padding:20px 10px}.board-row{padding:10px;font-size:10px}
footer{padding:22px 0;font-size:9px;letter-spacing:.6px;gap:20px;color:#697179}footer a{color:#8e969e}
.admin-intro{padding-top:36px}.admin-intro h1{letter-spacing:-1.3px}.admin-panel{border-radius:12px;padding:28px;margin-top:24px}.admin-panel .table-wrap{border:1px solid #292e33;border-radius:8px}.admin-panel thead{background:#171c20}.admin-panel th{font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:15px}.admin-panel td{padding:15px;font-size:12px}.customer-onboarding{border-color:#dac08f25;background:linear-gradient(100deg,#dac08f08,transparent);border-left:2px solid #c1a976}.customer-onboarding h3{font:500 17px 'Space Grotesk';color:var(--text)}.customer-onboarding p{font-size:12px;max-width:850px}.section-head h2{font-size:24px}.admin-tools button{min-height:40px}
.chart-panel:fullscreen{background:#101316;padding:10px;display:flex;flex-direction:column}.chart-panel:fullscreen #market-chart{flex:1;min-height:0;height:auto;max-height:none}.chart-panel:fullscreen .toolbar{flex-shrink:0}
/* Member access */
.login-page{display:block;padding:0;background:#0b0e10;min-height:100svh}
.auth-shell{width:100%;min-height:100svh;display:grid;grid-template-columns:1.1fr 1fr;max-width:1800px;margin:auto;padding:0}
.auth-story{position:relative;isolation:isolate;overflow:hidden;padding:44px 60px;display:flex;flex-direction:column;min-height:780px;background:#101416;border-right:1px solid #292c2c}
.auth-story:before{content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 20% 70%,#6e603821,transparent 65%),linear-gradient(160deg,#14191b,#0d1113 70%)}
.auth-story:after{content:'';position:absolute;inset:0;z-index:-1;opacity:.7;background:url('contours.svg') center bottom/cover no-repeat}
.auth-story .brand{font-size:11px}.auth-edition{margin-left:auto;font:9px 'Space Grotesk';color:#85877e;letter-spacing:2px}.auth-story-top{display:flex;align-items:center;gap:20px}
.auth-message{margin:auto 0;padding:85px 0 65px}.auth-message .eyebrow{font-size:9px;color:#bba87d;display:flex;gap:13px;align-items:center}.auth-message .eyebrow:before{content:'';width:26px;height:1px;background:#bba87d}
.auth-message h2{font-size:clamp(50px,5.4vw,88px);line-height:1.03;letter-spacing:-4.7px;font-weight:400;margin-top:28px;max-width:620px}.auth-message h2 em{font-family:Georgia,serif;color:#dcc393;font-weight:400}
.auth-message p{font-size:14px;max-width:310px;line-height:1.8;color:#969b9c;margin-top:27px}
.auth-story-bottom{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid #d5bf8b22;padding-top:22px;gap:20px}.auth-symbol{font:21px 'Space Grotesk';letter-spacing:1px}.auth-symbol small{display:block;font:9px 'DM Sans';color:#959a97;letter-spacing:2px;margin-top:9px}.auth-story-bottom>span{font-size:10px;color:#818980;max-width:120px;line-height:1.7;text-align:right}
.auth-form-side{position:relative;display:flex;align-items:center;justify-content:center;padding:70px 48px;background:radial-gradient(ellipse at 100% 0,#ffffff03,transparent 60%),#0b0e10}
.login-card{padding:0;width:min(100%,350px);border:0;box-shadow:none;border-radius:0;background:transparent;margin:0}
.login-card>.brand{display:none}.login-card .eyebrow{font-size:9px;letter-spacing:2px;color:var(--gold);margin-bottom:15px}
.login-card h1{font-size:36px;letter-spacing:-1.5px;font-weight:500;line-height:1.2}.login-card .subtitle{font-size:12px;line-height:1.8;color:#858e94;margin-top:12px}
.login-card form{margin-top:33px;gap:22px}.login-card label{font-size:11px;color:#bec2c4}.login-card input{height:48px;background:#111518;border-color:#30363a;margin-top:9px;padding:0 14px;font-size:13px;transition:border-color .2s,box-shadow .2s}.login-card input:focus{outline:0;border-color:#bda577;box-shadow:0 0 0 3px #bda57710}
.login-card button{margin-top:4px;min-height:48px;font-size:12px;letter-spacing:.2px;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.login-card button:after{content:'↗';font-size:19px;font-weight:400}
.login-card #login-status,.login-card #register-status{font-size:10px;line-height:1.7;min-height:24px;color:#8b959d;margin-top:15px}
.login-card .footnote{font-size:11px;color:#929b9f;border-color:#282e31;margin-top:28px;padding-top:24px}.login-card .footnote a{color:var(--gold);margin-left:6px}.auth-footer{position:absolute;bottom:28px;left:30px;right:30px;text-align:center;color:#586168;font-size:9px;letter-spacing:1px}.auth-mini-mark{height:1px;width:32px;background:var(--gold);margin-bottom:28px}
@media(min-width:1700px){.auth-shell{border-inline:1px solid var(--line)}}
@media(max-width:1150px){.live-workspace{grid-template-columns:minmax(0,1fr) 280px}.toolbar{padding:0 14px;gap:8px}.instrument-name small{display:none}.chart-tools #expand-chart{display:none}.auth-story{padding:38px}.auth-message h2{font-size:64px;letter-spacing:-3.5px}.auth-edition{display:none}header{padding:0 24px}main{padding:0 24px}.header-caption,.header-divider{display:none}}
@media(max-width:900px){.live-workspace{grid-template-columns:1fr}.gcp-sidebar{display:block}.live-workspace #market-chart{height:64vh;min-height:420px}.gcp-sidebar .pine-table td{font-size:11px!important;padding:10px 14px!important}.intro-meta{display:none}.auth-story{padding:30px;min-height:700px}.auth-message h2{font-size:54px;letter-spacing:-3px}.auth-form-side{padding:60px 30px}.auth-message p{font-size:12px}.auth-story-bottom>span{display:none}}
@media(max-width:650px){header{height:68px;min-height:68px;padding:0 18px;gap:8px;flex-wrap:nowrap}.brand{font-size:10px;gap:8px}.brand small{display:block}.logo{width:27px;height:31px}.member-nav{gap:9px}.nav-current,#account-email{display:none}.member-nav #admin-link{font-size:10px;padding:8px}.member-nav #workspace-logout{font-size:10px;padding:7px 9px}main{padding:0 14px}.intro{padding:26px 3px 22px}.intro h1{font-size:32px;letter-spacing:-1.3px}.intro p{font-size:10px}.toolbar{padding:0 12px;height:65px;gap:8px}.instrument-icon{width:27px;height:27px;font-size:16px}.instrument-name strong{font-size:11px}.toolbar #chart-indicator{display:none}.timeframe-picker{font-size:0;gap:0}.timeframe-picker select{width:64px;font-size:11px}.chart-tools{margin-left:0}.chart-tools #expand-chart{display:none}.chart-tools button{padding:5px 8px;font-size:9px}.live-workspace #market-chart{min-height:390px;height:60vh}.chart-bottom{flex-direction:column;gap:6px;padding:11px 13px}.chart-bottom .note,.chart-bottom #feed-updated{max-width:100%;text-align:left;font-size:8px}.gcp-sidebar{padding:20px}.auth-shell{display:block}.auth-story{min-height:0;padding:26px 27px 32px;border-right:0;border-bottom:1px solid var(--line)}.auth-message{padding:42px 0 0}.auth-message h2{font-size:45px;letter-spacing:-2.6px;margin-top:18px}.auth-message h2 br{display:none}.auth-message p{display:none}.auth-story-bottom{display:none}.auth-message .eyebrow{font-size:8px}.auth-form-side{padding:42px 27px 80px;min-height:560px}.login-card{width:100%}.login-card h1{font-size:30px}.login-card form{margin-top:27px;gap:19px}.auth-footer{font-size:8px}.auth-mini-mark{display:none}.admin-panel{padding:18px}.section-head{gap:10px;align-items:start}.section-head h2{font-size:20px}.section-head .pill{max-width:120px;overflow-wrap:anywhere}.admin-tools{flex-wrap:wrap}.admin-tools input{width:100%;flex-basis:100%}footer{font-size:8px;flex-wrap:wrap}.admin-intro h1{font-size:30px}.admin-intro p{font-size:12px}header nav{gap:12px;font-size:10px}}
@media(prefers-reduced-motion:no-preference){.auth-message,.login-card,.live-workspace,.intro{animation:arrive .55s ease both}.login-card{animation-delay:.1s}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:650px){.intro{align-items:flex-start}.chart-tools button,.timeframe-picker select{min-height:40px}.auth-message h2{line-height:1.08}}
.stream-state{font-size:8px;white-space:nowrap}.stream-state[data-live=true]{color:#54c6a6;border-color:#54c6a632;background:#54c6a60b}.stream-state[data-live=true]:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:5px}
@media(max-width:1150px){.toolbar #chart-indicator{display:none}}
