/* Launcher 2: purpose, personal set, device-specific handoff. Scoped after shared styles. */
body.dev-stack-page{--ink:#15343e;--muted:#526b73;--line:#ccdcdf;--accent:#126071;--soft:#eef6f6;--paper:#fff;color:var(--ink)!important;background:#f7fafb!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;font-size:16px;line-height:1.75;margin:0}
body.dev-stack-page *{box-sizing:border-box}body.dev-stack-page [hidden]{display:none!important}body.dev-stack-page .launcher-shell{max-width:1180px;margin:auto;padding:0 36px 70px}body.dev-stack-page p{color:var(--muted)!important;margin:0 0 16px;line-height:1.85}body.dev-stack-page h1,body.dev-stack-page h2,body.dev-stack-page h3{color:var(--ink)!important;margin:0;letter-spacing:-.025em}body.dev-stack-page h1{font-size:clamp(2rem,3.6vw,3rem);line-height:1.4;font-weight:750;margin:20px 0}body.dev-stack-page h2{font-size:1.55rem;line-height:1.5}body.dev-stack-page h3{font-size:1.15rem;line-height:1.6;margin-bottom:14px}body.dev-stack-page a{color:var(--accent)!important;text-underline-offset:4px}body.dev-stack-page button,body.dev-stack-page input,body.dev-stack-page textarea{font:inherit}body.dev-stack-page button{cursor:pointer;min-height:44px;border:1px solid var(--line)!important;border-radius:8px!important;background:#fff!important;color:var(--ink)!important;padding:9px 16px;line-height:1.5}body.dev-stack-page button:hover{background:#e3f0f1!important;border-color:var(--accent)!important}body.dev-stack-page button:disabled{opacity:.45;cursor:not-allowed}body.dev-stack-page :focus-visible{outline:3px solid #bc6200;outline-offset:4px}body.dev-stack-page .primary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;background:var(--accent)!important;color:#fff!important;border:1px solid var(--accent)!important;padding:13px 20px;border-radius:8px!important;min-height:48px;text-decoration:none;font-weight:650;line-height:1.6}body.dev-stack-page .primary-button:hover{background:#0c4755!important;color:#fff!important}body.dev-stack-page .text-link{font-weight:650}body.dev-stack-page .eyebrow{font-size:.75rem;letter-spacing:.13em;line-height:1.6;font-weight:750;color:var(--accent)!important;margin:0}body.dev-stack-page .eyebrow span{display:inline-block;margin-left:12px;color:var(--muted)!important;font-size:.7rem}body.dev-stack-page .launcher-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;padding:56px 0 44px;align-items:center}body.dev-stack-page .lead{font-size:1.05rem;max-width:610px}body.dev-stack-page .hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:24px}body.dev-stack-page .purpose{border-left:3px solid #75bbc1;padding:12px 0 10px 28px}body.dev-stack-page .purpose h2{margin:12px 0 14px;font-size:1.2rem}body.dev-stack-page .note{font-size:.875rem;border-top:1px solid var(--line);padding-top:14px;margin-top:16px}body.dev-stack-page .section-heading{display:flex;gap:18px;align-items:flex-start;margin:0 0 26px}body.dev-stack-page .section-heading p{max-width:750px;margin:8px 0 0;font-size:.95rem}body.dev-stack-page .step-number{font-size:.9rem;font-weight:750;color:var(--accent)!important;padding-top:7px;border-top:2px solid var(--accent);min-width:30px}body.dev-stack-page .builder{background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;padding:32px}body.dev-stack-page .builder-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:32px}body.dev-stack-page fieldset{border:0!important;padding:0;margin:0;min-width:0}body.dev-stack-page legend{font-size:.875rem;font-weight:650;margin-bottom:12px;color:var(--muted)!important}body.dev-stack-page .presets{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}body.dev-stack-page .presets button{font-size:.875rem;border-radius:50px!important;padding:8px 14px}body.dev-stack-page .plugin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px}body.dev-stack-page .plugin-option{display:flex;gap:12px;align-items:center;padding:13px;border:1px solid var(--line)!important;border-radius:9px!important;cursor:pointer;min-width:0}body.dev-stack-page .plugin-option:has(input:checked){border-color:var(--accent)!important;background:var(--soft)!important}body.dev-stack-page .plugin-option input{accent-color:var(--accent);width:19px;height:19px;flex:none;margin:0}body.dev-stack-page .plugin-option strong{font-size:.95rem;font-weight:650}body.dev-stack-page .plugin-option small{display:block;font-size:.8rem;line-height:1.5;color:var(--muted)!important}body.dev-stack-page #custom-form>label{display:block;font-weight:650;font-size:.95rem;margin-bottom:8px}body.dev-stack-page .input-row{display:flex;gap:8px}body.dev-stack-page .input-row input{min-width:0;flex:1}body.dev-stack-page input[type=text],body.dev-stack-page input[readonly],body.dev-stack-page textarea{border:1px solid #9cb4bc!important;border-radius:7px!important;background:#fff!important;color:var(--ink)!important;padding:10px 12px}body.dev-stack-page .help{font-size:.875rem;line-height:1.75;margin:10px 0 0}body.dev-stack-page .feedback{font-size:.875rem;color:#126071!important;margin:10px 0 0;overflow-wrap:anywhere}body.dev-stack-page .feedback:empty{display:none}body.dev-stack-page .selection-card{border-radius:12px!important;background:#173b46!important;color:#fff!important;padding:26px;align-self:start}body.dev-stack-page .selection-card h3{color:#fff!important;margin-top:12px}body.dev-stack-page .selection-card p{color:#cde0e3!important}body.dev-stack-page .selection-card .eyebrow{color:#9cd5d8!important}body.dev-stack-page #selection{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}body.dev-stack-page .chosen{background:#315661!important;color:#fff!important;border-color:#6c929b!important;overflow-wrap:anywhere;text-align:left;max-width:100%;font-size:.9rem}body.dev-stack-page .chosen:hover{background:#456d78!important;color:#fff!important}body.dev-stack-page .quiet{background:transparent!important;border:0!important;text-decoration:underline;color:#cde0e3!important;padding-left:0;font-size:.875rem}body.dev-stack-page .selection-card .primary-button{background:#d2f1ed!important;color:#143b45!important;border:0!important;margin-top:24px;width:100%}body.dev-stack-page .selection-card .primary-button:hover{background:#fff!important}body.dev-stack-page .setup{padding-top:50px}body.dev-stack-page .device-switch{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}body.dev-stack-page .device-switch button{flex:1;min-width:150px;font-size:.95rem}body.dev-stack-page .device-switch [aria-pressed=true]{background:var(--ink)!important;border-color:var(--ink)!important;color:white!important}body.dev-stack-page .setup-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:32px}body.dev-stack-page .instructions{padding:28px;background:white!important;border:1px solid var(--line)!important;border-radius:12px!important}body.dev-stack-page .instruction-list{padding-left:25px;margin:20px 0;color:var(--ink)!important}body.dev-stack-page .instruction-list li{padding-left:6px;margin-bottom:16px;line-height:1.85}body.dev-stack-page .instruction-list li::marker{font-weight:700;color:var(--accent)!important}body.dev-stack-page .address-tools{display:flex;flex-wrap:wrap;gap:8px}body.dev-stack-page .address-tools input{min-width:0;max-width:100%;width:100%;font-size:.875rem}body.dev-stack-page .address-tools button{font-size:.875rem}body.dev-stack-page .bookmark-card{padding:28px;background:var(--soft)!important;border:1px solid var(--line)!important;border-radius:12px!important;align-self:start}body.dev-stack-page .bookmark-card h3{margin:12px 0}body.dev-stack-page #selected-summary{font-size:.875rem;overflow-wrap:anywhere}body.dev-stack-page #bookmark-code{width:100%;max-width:100%;font-family:ui-monospace,monospace;font-size:.75rem;line-height:1.6;resize:vertical;margin-bottom:12px;word-break:break-all}body.dev-stack-page #copy-bookmarklet{width:100%;background:white!important;border-color:var(--accent)!important;font-weight:650}body.dev-stack-page .next-section{padding-top:50px}body.dev-stack-page .next-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:32px}body.dev-stack-page .next-grid .instruction-list{margin-top:0}body.dev-stack-page .example{padding:26px;border-left:3px solid #75bbc1;align-self:start}body.dev-stack-page blockquote{margin:16px 0;font-size:1.1rem;line-height:1.9;color:var(--ink)!important}body.dev-stack-page .details-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:30px;margin-top:30px}body.dev-stack-page .details-grid h2{font-size:1.1rem;margin-bottom:14px}body.dev-stack-page .details-grid p{font-size:.9rem}body.dev-stack-page #sources{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}body.dev-stack-page summary{cursor:pointer;font-size:.95rem;font-weight:650;min-height:44px}body.dev-stack-page .dev-stack-source-list{font-size:.875rem}body.dev-stack-page .dev-stack-footer{border-top:1px solid var(--line);padding:24px 36px;font-size:.875rem}body.dev-stack-page .dev-stack-footer-inner{max-width:1108px;margin:auto;display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap}body.dev-stack-page .sr-only,body.dev-stack-page .dev-stack-skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0!important}body.dev-stack-page .dev-stack-skip:focus{position:fixed;top:10px;left:10px;z-index:9999;background:white!important;padding:14px}body.dev-stack-page section[id],body.dev-stack-page aside[id]{scroll-margin-top:120px}
@media(max-width:850px){body.dev-stack-page .launcher-shell{padding:0 24px 48px}body.dev-stack-page .launcher-hero{gap:30px;padding-top:36px;grid-template-columns:1fr}body.dev-stack-page .purpose{padding:0 0 0 20px}body.dev-stack-page .builder-grid,body.dev-stack-page .setup-grid,body.dev-stack-page .next-grid{grid-template-columns:1fr}body.dev-stack-page .selection-card{padding:22px}body.dev-stack-page .selection-card .primary-button{width:auto}body.dev-stack-page .builder{padding:24px}body.dev-stack-page .bookmark-card{padding:24px}body.dev-stack-page .details-grid{gap:24px}body.dev-stack-page .launcher-hero h1 br{display:none}}
@media(max-width:480px){body.dev-stack-page .launcher-shell{padding:0 16px 40px}body.dev-stack-page .launcher-hero{padding:28px 0;gap:28px}body.dev-stack-page h1{font-size:2rem;margin:14px 0;line-height:1.45}body.dev-stack-page .eyebrow span{display:none}body.dev-stack-page .lead{font-size:1rem}body.dev-stack-page .hero-actions{gap:16px}body.dev-stack-page .purpose p{font-size:.9rem}body.dev-stack-page .builder{padding:20px 16px}body.dev-stack-page .section-heading{gap:12px}body.dev-stack-page h2{font-size:1.3rem}body.dev-stack-page .plugin-grid{gap:8px}body.dev-stack-page .plugin-option{padding:10px;gap:8px}body.dev-stack-page .plugin-option small{font-size:.75rem}body.dev-stack-page .plugin-option strong{font-size:.875rem}body.dev-stack-page .device-switch{gap:6px}body.dev-stack-page .device-switch button{min-width:0;flex-basis:100%;text-align:left}body.dev-stack-page .instructions,body.dev-stack-page .bookmark-card{padding:20px}body.dev-stack-page .details-grid{grid-template-columns:1fr}body.dev-stack-page .primary-button{font-size:.95rem;gap:10px}body.dev-stack-page .selection-card .primary-button{width:100%}body.dev-stack-page .example{padding:16px 20px}body.dev-stack-page .dev-stack-footer{padding:24px 16px}}
@media(prefers-reduced-motion:reduce){body.dev-stack-page *{scroll-behavior:auto!important;transition:none!important}}
/* Grid items must be allowed to shrink below intrinsic input/button widths. */
body.dev-stack-page .builder-grid>*,body.dev-stack-page .setup-grid>*,body.dev-stack-page .next-grid>*,body.dev-stack-page .details-grid>*,body.dev-stack-page .section-heading>div{min-width:0}
body.dev-stack-page .launcher-shell button,body.dev-stack-page .launcher-shell a,body.dev-stack-page .launcher-shell h2,body.dev-stack-page .launcher-shell h3{overflow-wrap:anywhere}
body.dev-stack-page .input-row input{width:0}
body.dev-stack-page .plugin-option>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:850px){body.dev-stack-page .builder-grid,body.dev-stack-page .setup-grid,body.dev-stack-page .next-grid{grid-template-columns:minmax(0,1fr)}}

/* Keep the optional execution check readable without widening mobile layouts. */
body.dev-stack-page .bookmark-check{margin:24px 0;padding:24px;border:1px solid var(--line,#cddbd9);border-radius:16px;}
body.dev-stack-page .bookmark-check summary{cursor:pointer;font-weight:700;font-size:1.1rem;}
body.dev-stack-page .bookmark-check textarea{display:block;width:100%;max-width:100%;box-sizing:border-box;margin:10px 0;padding:12px;font:13px/1.6 monospace;overflow-wrap:anywhere;}

body.dev-stack-page .bookmark-check h3{margin-top:22px}body.dev-stack-page .bookmark-check .feedback{margin-bottom:16px}
