@import url('./plate.css');
html:has(.page-shell) .lp-main{padding:0;margin:0;max-width:none;width:100%}
.lp-main > .page-shell{min-width:0}
.page-shell{color:#e8d4ac;background:#050b08;font:22px/1.2 VT323,monospace;min-height:100vh}
.page-shell *, .page-dialog *{box-sizing:border-box}.page-shell [hidden]{display:none!important}
.page-shell .lp-plate{max-width:2736px;margin:auto}
.page-toolbar,.page-supplement{padding:16px 24px;max-width:1200px;margin:auto}
.page-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-toolbar p{margin:0;flex:1}
/* A labelled field in a toolbar (My Desk's coin chooser, FIRST BUY): the field takes its own full line when it does not fit. */
.page-toolbar label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%}
.page-toolbar label select{flex:1 1 16em;min-width:0}
.page-supplement h2,.page-dialog h2{font:700 20px/1.4 Silkscreen,monospace;color:#fb600c}
.page-button,.page-shell input,.page-shell textarea,.page-shell select,.page-dialog input,.page-dialog textarea,.page-dialog select{font:22px/1.15 VT323,monospace;border:1px solid #41634a;color:#ebd6b4;background:#081a11;padding:8px 12px;border-radius:0;max-width:100%}
.page-button{display:inline-block;cursor:pointer;text-decoration:none;min-height:40px}.page-button:hover{border-color:#ff7b2d}
.page-button:focus-visible,.page-shell a:focus-visible{outline:2px solid #ffad50;outline-offset:3px}.page-button:disabled{opacity:.6;cursor:default}
.page-button.primary{background:#ed5908;color:#140d06;border:2px solid #ff9940;font-weight:bold}
.page-message{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:12px 24px;background:#0a2114;color:#8af7ad;white-space:pre-line}.page-message[data-error=true]{color:#ffd5b4;background:#341b12}
.page-receipt{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:12px 24px;overflow-wrap:anywhere}.page-receipt a,.page-supplement a{color:#78eda1}
/* One tag component for SAMPLE and DEVNET, at a readable size, everywhere (also on painted rows below). */
.devnet-tag,.lp-mark{display:inline-block;margin-left:6px;padding:2px 6px 1px;border:2px solid currentColor;color:#ffb45f;font:700 13px/1.1 Silkscreen,monospace;letter-spacing:.04em;white-space:nowrap;vertical-align:middle}
.lp-mark[data-kind='sample']{color:#a9c2a9}
.page-overlay{position:absolute;z-index:5;font-family:VT323,monospace}
.page-dialog{width:min(640px,94vw);max-height:90vh;overflow:auto;background:#07110c;border:3px solid #916539;color:#ecd8b5;font:22px/1.25 VT323,monospace;padding:20px}
.page-dialog::backdrop{background:#000b}.page-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.page-dialog-body{display:flex;flex-direction:column;gap:12px}.page-dialog label{display:grid;gap:4px}.page-dialog textarea{min-height:80px}
.page-shell .lp-plate__control[data-region='trade.amount']{display:none}
.page-shell .lp-plate__input{padding:0;border:0;background:transparent;min-height:0;max-width:none;z-index:6}
.page-shell [data-region='badge.portrait']{object-fit:contain;transform:rotate(-9deg)}
.page-table{border-collapse:collapse;width:100%;font-size:22px}.page-table td,.page-table th{padding:9px;border-bottom:1px solid #254634;text-align:left}.page-scroll{overflow:auto}
.page-form{position:absolute;z-index:7;left:38.5%;top:64.3%;width:23%;height:28.4%;overflow:auto;color:#182316;font:1.5cqw/1.05 VT323,monospace;background:#ead5aa;padding:.5cqw}
.page-form label{display:block;margin-bottom:.5cqw}
.page-form input,.page-form textarea,.page-form select{font:inherit;padding:.15cqw .3cqw;color:#142219;background:#f0dfb6;border:1px solid #9e916e;width:100%;height:auto}
.page-form textarea{resize:vertical;min-height:2.8em}.page-form input[type='checkbox']{width:auto}.page-form fieldset{border:0;padding:0;margin:0}
.page-form legend{font-weight:bold;margin-bottom:.3em}.page-form .page-button{font:inherit;color:#142219;min-height:0;background:#d9b47c;border-color:#7b6240;padding:.2em .5em}
.page-form .page-button.primary{background:#f6650b}.page-form .form-actions{display:flex;gap:.4em;flex-wrap:wrap;margin-top:.4em}
.page-form [data-hr-flags]{font-size:.85em;color:#87331f;margin:.3em 0}.page-form [data-hr-flags][data-pass=true]{color:#11652f}
.page-shell [data-region^='form.job.'][aria-pressed=true],.page-shell [data-region^='jobs.'][aria-pressed=true]{outline:3px solid #ff6c0b}
.page-shell [data-region^='form.step.'][aria-current=step]{background:#e2631990}
.page-shell [data-region='coin.preview']{object-fit:cover}.create-preview-pilot{object-fit:contain;pointer-events:none}
.create-preview-line{background:#f2dfb7;color:#111d13;padding:.4em;font-size:1.8cqw;height:auto!important}

.page-shell .form-status{white-space:pre-line}
.page-shell .lp-book{display:block;max-width:1100px;margin:auto;padding:24px}.page-shell .lp-toc ol{display:flex;gap:12px;flex-wrap:wrap;list-style:none;padding:0}
.page-shell .lp-life{display:block}.page-shell .lp-diagram{display:none}.page-shell .lp-chapter{scroll-margin-top:15px;margin-bottom:20px}
.page-shell .lp-paper{background:#e9d8b5;color:#172215;padding:24px}.page-shell .lp-paper a{color:#16592a}
.hr-shell{max-width:1100px;margin:auto;padding:24px}.hr-shell h1{font:700 30px Silkscreen,monospace;color:#fa630b}
.hr-application{border-top:2px solid #655336;margin-top:20px;padding-top:15px}.hr-application textarea{width:100%;min-height:65px}
.hr-application dl{display:grid;grid-template-columns:120px 1fr;gap:8px}.hr-application dd{margin:0;overflow-wrap:anywhere}
@media(max-width:899px){
.page-shell{font-size:20px}.page-toolbar,.page-supplement{padding:12px}
.page-form{left:16%;top:24.3%;width:68%;height:61%;font-size:5.5cqw;line-height:1.15;padding:2cqw}
.page-form label{margin-bottom:2cqw}.page-form input,.page-form textarea,.page-form select{padding:1cqw}
.page-form .page-button{min-height:40px;padding:6px 12px}
.page-shell [data-region='form.other-job'].lp-plate__input{display:none}
.page-shell .lp-book{padding:12px}.page-shell .lp-paper{padding:16px}
.hr-application dl{grid-template-columns:1fr}.hr-application dd{margin-bottom:10px}
}
.page-shell [data-region='trade.sell'][aria-pressed=true]{background:#fb6a1680;box-shadow:inset 0 0 0 2px #ff9a32}
.page-shell [data-region='trade.buy'][aria-pressed=false]{background:#07110cb0}
.trade-unit{color:#ffb45f;text-align:center;font:1.05cqw/1 VT323,monospace;pointer-events:none;white-space:nowrap}
/* The amount unit is drawn only where coin.js could place it under the amount box; never stray at the top corner. */
.page-shell .trade-unit:not([style*='top']){display:none}
.page-shell[data-page='coin'] [data-frame^='p']~.trade-unit{font-size:2.5cqw}

/* Keep the live receipt on the painted form; the editor sits below the frame. */
.page-shell .page-form{position:relative;left:auto;top:auto;width:min(760px,calc(100% - 32px));height:auto;max-height:none;margin:20px auto;padding:20px;font:22px/1.2 VT323,monospace;overflow:visible}
.page-shell .page-form label{margin-bottom:12px}.page-shell .page-form input,.page-shell .page-form select,.page-shell .page-form textarea{padding:7px}
.page-shell .page-form .page-button{min-height:40px;padding:7px 12px}
.page-shell[data-page='create'] [data-frame^='k'] [data-region='form.status']{z-index:2}
.page-shell .create-preview-line{font-size:1.4cqw;line-height:1.1;padding:.4em;max-height:14%;overflow:hidden}
.page-shell .create-preview-pilot{object-fit:contain}
.page-shell[data-page='create'][data-step='0'] .page-form{display:block}
.page-shell[data-page='create'] [data-frame^='p'] [data-region='form.other-job'].lp-plate__input{display:block;pointer-events:none}
.page-shell .hr-shell{overflow-wrap:anywhere}.page-shell .hr-shell input{min-width:0}
@media(max-width:899px){.page-shell .page-form{font-size:20px;margin:12px auto;padding:16px}.page-shell .page-form .form-actions{gap:8px}}
.page-shell [data-network='devnet']::after{content:'TEST SOL / TEST NETWORK';white-space:nowrap!important;position:absolute;left:0;top:100%;padding:1px 3px 0;border:1px solid currentColor;color:#ffb45f;font:400 max(12px,.8cqw)/1 VT323,monospace;letter-spacing:0}
.page-shell [data-frame^='p'] [data-network='devnet']::after{font-size:max(12px,2.2cqw)}

.hr-shell label{display:block;min-width:0}.hr-shell label input:not([type='checkbox']){display:block;width:100%}
.hr-shell form{display:flex;flex-wrap:wrap;gap:8px;align-items:end}.hr-shell form label{flex:1 1 220px}.hr-shell .hr-application input[type='checkbox']{width:auto}
.page-shell .page-form [data-hr-flags]{font-size:18px}.page-shell .page-form input[type='checkbox']{width:auto}

.page-shell[data-page='create'] [data-frame^='k'] input[data-region='form.name'],.page-shell[data-page='create'] [data-frame^='k'] input[data-region='form.ticker'],.page-shell[data-page='create'] [data-frame^='k'] input[data-region='form.job']{width:16.5%!important}

.page-shell .page-devnet-amount::after{content:'DEVNET';position:absolute;left:var(--ink-right,100%);top:50%;transform:translateY(-50%);margin-left:.25cqw;color:#a36a33;font:700 max(12px,.7cqw)/1 Silkscreen,monospace;letter-spacing:.03em;white-space:nowrap}
.page-shell[data-page='coin'] .page-devnet-amount::after{color:#ffb45f}
.page-shell [data-frame^='p'] .page-devnet-amount::after{font-size:max(12px,2cqw)}

@media(max-width:899px){.hr-shell [data-config]{font-size:17px}.page-shell .lp-book{min-width:0;overflow-wrap:anywhere}.page-shell .lp-fees{table-layout:fixed;width:100%;font-size:16px}.page-shell .lp-fees th,.page-shell .lp-fees td{padding:6px}}
.page-shell [data-region^='form.step.'].lp-plate__button-label{z-index:5}
.page-shell [data-region^='form.step.'].lp-plate__button-label[aria-current=step]{color:#09180e!important;background:transparent}
.page-shell [data-region^='form.step.'].lp-plate__control[aria-current=step]{background:#ef6510;box-shadow:inset 0 0 0 2px #ffb55b}
.page-shell [data-region^='form.selection']{pointer-events:none}
.page-shell [data-story]{white-space:pre-wrap;overflow-wrap:anywhere}

.page-dialog a[aria-current='page']{border-color:#ff8736;color:#ffb45f}
.page-toolbar a[aria-current='page']{border-color:#ff8736;color:#ffb45f}
.desk-holders-label{position:absolute;z-index:3;display:flex;align-items:center;justify-content:center;background-size:100% 100%;font-family:VT323,monospace;line-height:1;pointer-events:none}

/* ===== Shared page components (WP02). ===== */
/* Messages written next to the control that was pressed (how.js tell). On a plate they float under the control. */
.page-tell{margin:8px auto;max-width:1200px}
.page-tell--float{position:absolute;z-index:8;box-sizing:border-box;max-width:none;margin:0;padding:.35em .6em;border:2px solid #2f8f55;background:#06170df2;color:#b9f5cb;font:clamp(20px,1.45cqw,24px)/1.12 VT323,monospace;white-space:normal;overflow-wrap:anywhere;box-shadow:0 4px 0 #000a}
.page-tell--float[data-error=true]{border-color:#d0562a;background:#2c1209f2;color:#ffd9bd}
/* A floating message never takes a tap meant for the control under it; only its own links do. */
.page-tell--float{pointer-events:none}.page-tell--float :is(a,button){pointer-events:auto}
[data-phone='true'] > .page-tell--float{font-size:clamp(18px,4.4cqw,22px)}
.page-tell--float a,.page-tell a,.page-message a{color:#ffd48a}
.page-form .page-tell,.page-paper .page-tell{background:#e3f1df;color:#123b20;border-left:4px solid #2f8f55}
.page-form .page-tell[data-error=true],.page-paper .page-tell[data-error=true]{background:#f8d9c6;color:#7a1610;border-left-color:#c42018}
.page-form .page-tell a{color:#16592a}
/* A field-level error from how.js fieldError(), under its field. */
.page-field-error{margin:4px 0 10px;padding:4px 8px;border-left:4px solid #c42018;background:#f8d9c6;color:#7a1610;font:inherit;font-size:.9em;line-height:1.15}
.page-shell [aria-invalid='true'],.page-dialog [aria-invalid='true']{outline:2px solid #c42018;outline-offset:1px}
/* A plate control that is live (WP08 trade ticket and similar): an orange fill over the painted grey box. */
/* The coin ticket's trade button is live in every devnet trading state (its name ends in DEVNET, or CONNECT WALLET):
   the same look without waiting for coin.js to add the class. */
.page-shell .lp-plate__control.lp-cta-live,
.page-shell[data-page='coin'] .lp-plate__control[data-region='trade.submit']:is([aria-label$='DEVNET'],[aria-label='CONNECT WALLET']):not(:disabled){background:#f25b04;box-shadow:inset 0 0 0 3px #ffb55b,0 3px 0 #7a2c03;color:#10140c}
.page-shell .lp-plate__control.lp-cta-live:hover:not(:disabled),
.page-shell[data-page='coin'] .lp-plate__control[data-region='trade.submit']:is([aria-label$='DEVNET'],[aria-label='CONNECT WALLET']):hover:not(:disabled){background:#ff7a26}
/* The control box sits above its painted label (a sibling with the same region), so the live fill would hide it: lift
   the label over the fill, dark on orange, and let taps fall through to the control. */
.page-shell .lp-plate__layer:has(.lp-plate__control[data-region='trade.submit']:is(.lp-cta-live,[aria-label$='DEVNET'],[aria-label='CONNECT WALLET']):not(:disabled)) .lp-plate__button-label[data-region='trade.submit']{z-index:5;pointer-events:none;color:#10140c!important}
.page-shell .lp-plate__control.lp-cta-live[aria-busy='true'],
.page-shell[data-page='coin'] .lp-plate__control[data-region='trade.submit']:is([aria-label$='DEVNET'],[aria-label='CONNECT WALLET'])[aria-busy='true']{background:#b8541b;cursor:progress}
/* Facts below the coin plate as a two-column table; departures styled like the board's flap rows. */
.page-supplement dl[data-facts]{display:grid;grid-template-columns:minmax(150px,max-content) minmax(0,1fr);margin:0 0 18px;border-top:2px solid #254634}
.page-supplement dl[data-facts] dt,.page-supplement dl[data-facts] dd{margin:0;padding:8px 10px;border-bottom:1px solid #254634}
/* No other rule may give a facts cell a margin: one row's dt and dd must end on the same line. */
.page-supplement dl[data-facts] dt{color:#d8c48a;font:700 14px/1.4 Silkscreen,monospace;letter-spacing:.03em}
.page-supplement dl[data-facts] dd{overflow-wrap:anywhere}
.page-table{border:3px solid #1b211c;background:#0d0f0d}
.page-table th{background:#1b211c;color:#d8c48a;font:700 13px/1.2 Silkscreen,monospace;letter-spacing:.05em}
.page-table td{color:#f1e3b4;background:#121512;border-bottom:2px solid #050605}
.page-table td a{color:#fff3c4}
.page-supplement h2:has(+ :is(dl,ol,ul,p,div):empty),.page-supplement :is(dl,ol,ul):empty{display:none}
/* The handbook chapter list, numbered. */
.page-shell .lp-toc ol{counter-reset:toc;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:0;padding:0;list-style:none}
.page-shell .lp-toc li{counter-increment:toc}
.page-shell .lp-toc a{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 12px;border:2px solid #2c3a30;background:#0a120d;color:#e8d4ac;text-decoration:none}
.page-shell .lp-toc a::before{content:counter(toc,decimal-leading-zero);color:#fb600c;font:700 14px/1 Silkscreen,monospace}
.page-shell .lp-toc a:hover{border-color:#ff7b2d}
/* The shared menu (how.js buildMenu). */
.lp-menu{display:grid;gap:6px;margin-top:12px}
.lp-menu__link{display:flex;align-items:center;min-height:44px}
.lp-menu__group{display:grid;gap:6px;margin-left:14px;padding-left:16px;border-left:2px solid #41634a}
.lp-menu__link--sub{font-size:20px;min-height:40px}
.lp-menu a[aria-current]{border-color:#ff8736;color:#ffb45f}
.lp-menu__wallet{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 0;padding-top:12px;border-top:1px solid #41634a}
.lp-menu-dialog header{position:sticky;top:-20px;background:#07110c;padding-bottom:6px}
/* Under each plate on phones: the launchpad pages in 44 px links. */
.lp-phone-links{display:none}
@media(max-width:899px){
.lp-phone-links{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;background:#050b08;border-bottom:2px solid #1a231d}
.lp-phone-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;border:2px solid #2c3a30;background:#0a120d;color:#a9c2a9;font:700 12px/1 Silkscreen,monospace;letter-spacing:.02em;text-decoration:none}
.lp-phone-links a[aria-current]{border-color:#25dc71;color:#25dc71}
.page-supplement dl[data-facts]{grid-template-columns:1fr}
.page-supplement dl[data-facts] dt{border-bottom:0;padding-bottom:0}
}

[data-mainnet-only],[data-mainnet-handbook]{display:none!important}
html[data-lp-network='mainnet'] [data-mainnet-only],html[data-lp-network='mainnet'] [data-mainnet-handbook]{display:block!important}
html[data-lp-network='mainnet'] [data-devnet-only],html[data-lp-network='mainnet'] [data-devnet-handbook]{display:none!important}
html[data-lp-network='mainnet'] .page-devnet-amount::after{content:'SOL'}
.page-shell [data-network='mainnet']::after{content:'REAL SOL';white-space:nowrap;position:absolute;left:0;top:100%;padding:1px 3px;border:1px solid currentColor;color:#ffb45f;font:400 max(12px,.8cqw)/1 VT323,monospace}
html[data-lp-network='mainnet'] .page-shell [data-network='devnet']::after{content:'REAL SOL'}
