.xcodenet-ord-order{
  --ac-primary: #5A3A9A;
  --ac-accent: #A85BD6;
  --ac-bg: #FFFFFF;
  --ac-card: #FFFFFF;
  --ac-ink: #161B33;
  --ac-on-primary: #ffffff;
  --ac-primary-text: color-mix(in srgb, var(--ac-primary) 42%, var(--ac-ink));
  --ac-ok: #1e8e5a;
  --ac-warn: #9a6b0f;
  --ac-danger: #c53939;
  --ac-shadow: #161B33;
  --ac-r: 11px;
  --ac-font-head: "Sora", "PingFang SC", "Noto Sans CJK SC", system-ui, sans-serif;
  --ac-font-body: "Inter", "PingFang SC", "Noto Sans CJK SC", system-ui, sans-serif;
  --ac-font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
background:var(--paper);
color:var(--ink2);
font-family:var(--fb);
padding:var(--hero-top) var(--gutter) var(--space-8);
min-width:0;
overflow-x:clip;
font-variant-numeric:tabular-nums;
}
.xcodenet-ord-order [hidden]{display:none!important}
.xcodenet-ord-opening{
width:min(100%,var(--width-standard));
margin:0 auto var(--space-7);
display:grid;
gap:var(--space-3);
min-width:0;
}
.xcodenet-ord-heading{
font-family:var(--fh);
font-size:var(--text-section);
line-height:var(--lh-title);
color:var(--ink);
max-width:100%;
overflow-wrap:break-word;
}
.xcodenet-ord-introduction{
font-size:var(--text-lg);
line-height:var(--lh-body);
color:var(--muted);
max-width:var(--width-narrow);
}
.xcodenet-ord-appointment{
width:min(100%,var(--width-standard));
margin-inline:auto;
display:grid;
gap:var(--space-5);
min-width:0;
}
.xcodenet-ord-coordinates{
margin:0;
padding:var(--space-5);
border:0;
border-radius:var(--r-xl);
background:var(--mist);
color:var(--ink2);
min-width:0;
display:grid;
grid-template-columns:minmax(12rem,.8fr) minmax(0,2fr);
column-gap:var(--space-7);
row-gap:var(--space-4);
align-items:start;
}
.xcodenet-ord-coordinates,
.xcodenet-ord-expansion-page{position:relative;padding-top:calc(var(--space-4) + 2.75rem)}
.xcodenet-ord-book-label{
position:absolute;
top:var(--space-4);
left:var(--space-5);
z-index:1;
float:none;
display:inline-flex;
align-items:center;
width:fit-content;
max-width:calc(100% - var(--space-5) * 2);
margin:0;
padding:6px 14px;
border-radius:var(--radius-pill);
background:var(--paper);
color:var(--ink);
font-family:var(--fh);
font-size:var(--text-sm);
font-weight:600;
line-height:var(--lh-small);
overflow-wrap:break-word;
}
.xcodenet-ord-duration,
.xcodenet-ord-city-page,
.xcodenet-ord-machine-page{
display:grid;
gap:var(--space-4);
min-width:0;
}
.xcodenet-ord-field-heading{
display:grid;
gap:var(--field-gap);
min-width:0;
}
.xcodenet-ord-field-heading h2,
.xcodenet-ord-confirmation-heading h2{
font-family:var(--fh);
font-size:var(--text-card);
line-height:var(--lh-title);
color:var(--ink);
overflow-wrap:break-word;
}
.xcodenet-ord-duration-options{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:var(--space-2);
min-width:0;
}
.xcodenet-ord-city-options{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));
gap:var(--space-2);
align-items:stretch;
min-width:0;
}
.xcodenet-ord-booking-page{
min-width:0;
padding:0;
background:var(--paper);
color:var(--ink2);
border-radius:var(--r-xl);
box-shadow:var(--shadow);
overflow:hidden;
}
.xcodenet-ord-equipment{
padding:var(--space-5);
display:grid;
grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
gap:var(--space-5);
align-items:start;
min-width:0;
}
.xcodenet-ord-machine-options{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));
gap:var(--space-3);
align-items:stretch;
min-width:0;
}
.xcodenet-ord-plan{
appearance:none;
display:flex;
flex-direction:column;
align-items:stretch;
gap:var(--field-gap);
width:100%;
height:100%;
min-width:0;
padding:var(--space-4);
border:2px solid transparent;
border-radius:var(--r-l);
background:var(--mist);
color:var(--ink);
text-align:left;
font-family:var(--fb);
line-height:var(--lh-small);
white-space:normal;
overflow-wrap:break-word;
cursor:pointer;
transition:background var(--duration),border-color var(--duration),box-shadow var(--duration);
}
.xcodenet-ord-plan:hover{
background:var(--mist-d);
color:var(--ink);
}
.xcodenet-ord-plan-name{
display:block;
min-width:0;
font-family:var(--fh);
font-size:var(--text-lg);
line-height:var(--lh-title);
font-weight:600;
color:var(--ink);
}
.xcodenet-ord-plan-chip{
display:inline-flex;
align-items:center;
gap:var(--space-1);
align-self:flex-start;
width:fit-content;
max-width:100%;
padding:.4em .9em;
border-radius:var(--radius-pill);
background:var(--paper);
color:var(--ink2);
font-family:var(--fm);
font-size:var(--text-xs);
line-height:1;
overflow-wrap:break-word;
}
.xcodenet-ord-plan-spec{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:var(--space-2);
width:100%;
min-width:0;
font-family:var(--fm);
font-size:var(--text-sm);
line-height:var(--lh-small);
color:var(--muted);
padding-block:var(--space-2);
}
.xcodenet-ord-plan-spec>*{
min-width:0;
overflow-wrap:break-word;
}
.xcodenet-ord-plan-price{
display:block;
margin-top:auto;
padding-top:var(--space-3);
font-family:var(--fm);
font-size:var(--text-reading);
line-height:var(--lh-title);
font-weight:600;
color:var(--ink);
}
.xcodenet-ord-plan-price em{
font-family:var(--fb);
font-style:normal;
font-size:var(--text-sm);
font-weight:400;
color:var(--muted);
}
.xcodenet-ord-plan.is-on,
.xcodenet-ord-plan[aria-checked="true"],
.xcodenet-ord-plan[aria-selected="true"]{
background:var(--selected);
color:var(--ink);
border-color:var(--vio);
}
.xcodenet-ord-plan.is-on .xcodenet-ord-plan-price,
.xcodenet-ord-plan[aria-checked="true"] .xcodenet-ord-plan-price{
color:var(--vio);
}
.xcodenet-ord-region{
appearance:none;
display:flex;
flex-direction:column;
justify-content:center;
align-items:flex-start;
gap:var(--field-gap);
width:100%;
height:100%;
min-width:0;
padding:var(--space-4);
border:2px solid transparent;
border-radius:var(--r-m);
background:var(--paper);
color:var(--ink);
font-family:var(--fb);
font-size:var(--text-base);
line-height:var(--lh-small);
text-align:left;
white-space:normal;
overflow-wrap:break-word;
cursor:pointer;
transition:background var(--duration),border-color var(--duration);
}
.xcodenet-ord-region:hover{
background:var(--mist-d);
color:var(--ink);
}
.xcodenet-ord-region.is-on,
.xcodenet-ord-region[aria-checked="true"],
.xcodenet-ord-region[aria-selected="true"]{
background:var(--selected);
color:var(--vio-d);
border-color:var(--vio);
}
.xcodenet-ord-region strong{
font-size:var(--text-base);
line-height:var(--lh-small);
font-weight:600;
}
.xcodenet-ord-region small{
font-size:var(--text-xs);
line-height:var(--lh-small);
color:var(--muted);
}
.xcodenet-ord-expansion-page{
margin:0;
padding:var(--space-4);
padding-top:calc(var(--space-4) + 2.75rem);
min-width:0;
border:0;
border-radius:var(--r-l);
background:var(--sage);
color:var(--sage-ink);
display:grid;
gap:var(--space-4);
}
.xcodenet-ord-expansion-page .xcodenet-ord-book-label,
.xcodenet-ord-expansion-page .xcodenet-ord-field-heading h2{
color:var(--sage-ink);
}
.xcodenet-ord-storage-options{
display:grid;
grid-template-columns:minmax(0,1fr);
gap:var(--space-2);
min-width:0;
}
.xcodenet-ord-seg-btn{
appearance:none;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:center;
gap:var(--space-2);
min-width:0;
min-height:48px;
width:100%;
padding:var(--space-3);
border:1px solid var(--button-line);
border-radius:var(--r-m);
background:var(--paper);
color:var(--ink);
font-family:var(--fb);
font-size:var(--text-sm);
line-height:var(--lh-small);
text-align:left;
white-space:normal;
overflow-wrap:break-word;
cursor:pointer;
transition:background var(--duration),border-color var(--duration);
}
.xcodenet-ord-seg-btn em{
font-family:var(--fm);
font-style:normal;
font-size:var(--text-sm);
}
.xcodenet-ord-seg-btn:hover{
background:var(--mist-d);
color:var(--ink);
border-color:var(--input-line);
}
.xcodenet-ord-seg-btn.is-on,
.xcodenet-ord-seg-btn[aria-checked="true"],
.xcodenet-ord-seg-btn[aria-selected="true"]{
background:var(--vio);
color:var(--ac-on-primary);
border-color:var(--vio);
}
.xcodenet-ord-seg-btn.is-on:hover,
.xcodenet-ord-seg-btn[aria-checked="true"]:hover{
background:var(--vio-d);
color:var(--ac-on-primary);
border-color:var(--vio-d);
}
.xcodenet-ord-extra-service{
display:grid;
gap:var(--space-3);
min-width:0;
}
.xcodenet-ord-small-heading{
font-family:var(--fh);
font-size:var(--text-base);
line-height:var(--lh-title);
font-weight:600;
color:var(--sage-ink);
}
.xcodenet-ord-interconnect{
display:flex;
align-items:flex-start;
gap:var(--space-3);
padding:var(--space-4);
min-width:0;
border-radius:var(--r-m);
background:var(--paper);
color:var(--ink);
cursor:pointer;
}
.xcodenet-ord-interconnect input{
appearance:none;
width:22px;
height:22px;
flex:0 0 22px;
margin:0;
border:1px solid var(--input-line);
border-radius:var(--r-m);
background:var(--paper);
color:var(--ink);
display:grid;
place-items:center;
}
.xcodenet-ord-interconnect input:checked{
background:var(--vio);
color:var(--ac-on-primary);
border-color:var(--vio);
}
.xcodenet-ord-interconnect input:checked::after{
content:"";
width:10px;
height:6px;
border-left:2px solid currentColor;
border-bottom:2px solid currentColor;
transform:translateY(-1px) rotate(-45deg);
}
.xcodenet-ord-interconnect:has(input:checked){
background:var(--selected);
color:var(--ink);
box-shadow:inset 0 0 0 2px var(--vio);
}
.xcodenet-ord-interconnect-copy{
display:grid;
gap:var(--field-gap);
min-width:0;
overflow-wrap:break-word;
}
.xcodenet-ord-extra-hint{
font-size:var(--text-sm);
line-height:var(--lh-small);
color:var(--muted);
}
.xcodenet-ord-extra-price{
font-family:var(--fm);
font-style:normal;
font-size:var(--text-sm);
color:var(--ink);
}
.xcodenet-ord-confirmation{
padding:var(--space-5);
background:var(--sand);
color:var(--sand-ink);
display:grid;
gap:var(--space-4);
min-width:0;
}
.xcodenet-ord-confirmation-heading{
display:flex;
flex-wrap:wrap;
align-items:baseline;
justify-content:space-between;
gap:var(--space-3);
min-width:0;
}
.xcodenet-ord-confirmation-heading h2{
color:var(--sand-ink);
}
.xcodenet-ord-summary-caption{
font-family:var(--fb);
font-size:var(--text-sm);
line-height:var(--lh-small);
font-weight:500;
color:var(--sand-mute);
}
.xcodenet-ord-reservation-values{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));
gap:var(--space-3) var(--space-5);
margin:0;
min-width:0;
}
.xcodenet-ord-reservation-values>*{
display:grid;
grid-template-columns:minmax(4.5rem,.8fr) minmax(0,1fr);
gap:var(--field-gap);
align-items:baseline;
min-width:0;
padding:var(--space-2) var(--space-3);
border-radius:var(--r-m);
background:var(--paper);
}
.xcodenet-ord-reservation-values dt,
.xcodenet-ord-reservation-values dd{
min-width:0;
overflow-wrap:break-word;
font-size:var(--text-sm);
line-height:var(--lh-small);
}
.xcodenet-ord-reservation-values dt{
color:var(--sand-mute);
}
.xcodenet-ord-reservation-values dd{
margin:0;
font-weight:600;
color:var(--sand-ink);
}
.xcodenet-ord-settlement{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:space-between;
gap:var(--space-4);
padding-top:var(--space-3);
min-width:0;
}
.xcodenet-ord-total-label{
display:flex;
flex-wrap:wrap;
align-items:baseline;
gap:var(--space-2);
min-width:0;
font-size:var(--text-sm);
color:var(--sand-ink);
}
.xcodenet-ord-total-number{
font-family:var(--fm);
font-size:var(--text-section);
line-height:var(--lh-title);
font-weight:600;
color:var(--sand-ink);
}
.xcodenet-ord-total-unit{
font-size:var(--text-sm);
font-style:normal;
color:var(--sand-mute);
}
.xcodenet-ord-settlement-actions,
.xcodenet-ord-gateway-actions,
.xcodenet-ord-dialog-actions{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:flex-start;
gap:var(--space-2);
min-width:0;
}
.xcodenet-ord-payment-footnote{
display:grid;
gap:var(--field-gap);
margin-top:var(--space-4);
min-width:0;
}
.xcodenet-ord-payment-footnote p{
font-size:var(--text-sm);
line-height:var(--lh-small);
color:var(--sand-mute);
}
.xcodenet-ord-btn{
appearance:none;
display:inline-flex;
align-items:center;
justify-content:center;
min-height:48px;
max-width:100%;
padding:var(--space-3) var(--space-4);
border:1px solid var(--button-line);
border-radius:var(--r-m);
font-family:var(--fb);
font-size:var(--text-base);
line-height:var(--lh-small);
font-weight:500;
text-decoration:none;
text-align:center;
white-space:normal;
overflow-wrap:break-word;
cursor:pointer;
transition:background var(--duration),border-color var(--duration),box-shadow var(--duration);
}
.xcodenet-ord-btn-primary{
background:var(--ac-primary);
color:var(--ac-on-primary);
border-color:var(--ac-primary);
}
.xcodenet-ord-btn-primary:hover{
background:var(--vio-d);
color:var(--ac-on-primary);
border-color:var(--vio-d);
}
.xcodenet-ord-btn-secondary{
background:var(--paper);
color:var(--ink);
border-color:var(--button-line);
}
.xcodenet-ord-btn-secondary:hover{
background:var(--mist);
color:var(--ink);
border-color:var(--input-line);
}
.xcodenet-ord-btn:disabled,
.xcodenet-ord-gw-item:disabled,
.xcodenet-ord-seg-btn:disabled,
.xcodenet-ord-plan:disabled,
.xcodenet-ord-region:disabled{
opacity:.6;
cursor:not-allowed;
box-shadow:none;
}
.xcodenet-ord-transaction{
display:grid;
gap:var(--space-4);
min-width:0;
}
.xcodenet-ord-transaction:empty{
display:none;
}
.xcodenet-ord-feedback{
padding:var(--space-4);
border-radius:var(--r-m);
background:var(--peach);
color:var(--peach-ink);
font-size:var(--text-sm);
line-height:var(--lh-body);
overflow-wrap:break-word;
}
.xcodenet-ord-feedback.is-ok{
background:var(--sage);
color:var(--sage-ink);
}
.xcodenet-ord-gateway,
.xcodenet-ord-binding{
padding:var(--space-5);
border-radius:var(--r-xl);
background:var(--mist);
color:var(--ink2);
display:grid;
gap:var(--space-4);
min-width:0;
}
.xcodenet-ord-runtime-heading{
min-width:0;
}
.xcodenet-ord-runtime-heading h3{
font-size:var(--text-card);
line-height:var(--lh-title);
color:var(--ink);
}
.xcodenet-ord-gateway-options{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));
gap:var(--space-3);
align-items:stretch;
min-width:0;
}
.xcodenet-ord-gw-item{
appearance:none;
display:flex;
flex-direction:column;
gap:var(--field-gap);
min-width:0;
min-height:72px;
width:100%;
padding:var(--space-4);
border:1px solid var(--input-line);
border-radius:var(--r-m);
background:var(--paper);
color:var(--ink);
text-align:left;
white-space:normal;
overflow-wrap:break-word;
cursor:pointer;
transition:background var(--duration),border-color var(--duration);
}
.xcodenet-ord-gw-item strong{
font-size:var(--text-base);
line-height:var(--lh-small);
font-weight:600;
}
.xcodenet-ord-gw-item small{
font-family:var(--fm);
font-size:var(--text-sm);
line-height:var(--lh-small);
color:var(--muted);
}
.xcodenet-ord-gw-item:hover,
.xcodenet-ord-gw-item.is-on,
.xcodenet-ord-gw-item[aria-checked="true"]{
background:var(--selected);
color:var(--vio-d);
border-color:var(--vio);
}
.xcodenet-ord-gateway-actions{
margin-top:var(--space-3);
}
.xcodenet-ord-binding{
background:var(--sage);
color:var(--sage-ink);
}
.xcodenet-ord-binding-lead{
font-size:var(--text-base);
line-height:var(--lh-body);
color:var(--sage-ink);
}
.xcodenet-ord-binding-row{
display:grid;
grid-template-columns:minmax(0,1fr) auto;
align-items:end;
gap:var(--space-3);
min-width:0;
}
.xcodenet-ord-input-field{
display:grid;
gap:var(--field-gap);
min-width:0;
}
.xcodenet-ord-input-label{
font-size:var(--text-sm);
line-height:var(--lh-small);
font-weight:600;
color:var(--sage-ink);
}
.xcodenet-ord-input{
appearance:none;
width:100%;
min-width:0;
min-height:48px;
padding:var(--space-3);
border:1px solid var(--input-line);
border-radius:var(--r-m);
background:var(--paper);
color:var(--ink);
font-family:var(--fb);
font-size:var(--text-base);
line-height:var(--lh-small);
}
.xcodenet-ord-code-input{
font-family:var(--fm);
letter-spacing:.15em;
}
.xcodenet-ord-input:focus-visible,
.xcodenet-ord-btn:focus-visible,
.xcodenet-ord-plan:focus-visible,
.xcodenet-ord-region:focus-visible,
.xcodenet-ord-seg-btn:focus-visible,
.xcodenet-ord-gw-item:focus-visible{
outline:2px solid var(--vio);
outline-offset:3px;
box-shadow:var(--focus);
}
.xcodenet-ord-dialog{
position:fixed;
inset:0;
z-index:100;
display:grid;
place-items:center;
padding:var(--gutter);
overflow-y:auto;
overscroll-behavior:contain;
}
.xcodenet-ord-dialog-backdrop{
position:absolute;
inset:0;
background:rgba(22,27,51,.56);
color:var(--dark-body);
}
.xcodenet-ord-dialog-panel{
position:relative;
z-index:1;
width:min(100%,32rem);
max-height:calc(100dvh - var(--gutter)*2);
overflow-y:auto;
padding:var(--space-5);
border-radius:var(--r-xl);
background:var(--paper);
color:var(--ink2);
box-shadow:var(--shadow-stage);
text-align:center;
min-width:0;
}
.xcodenet-ord-dialog-kicker{
display:flex;
align-items:center;
justify-content:center;
gap:var(--space-2);
width:fit-content;
max-width:100%;
padding:.4em .9em;
margin-inline:auto;
margin-bottom:var(--space-4);
border-radius:var(--radius-pill);
background:var(--sage);
color:var(--sage-ink);
font-size:var(--text-sm);
line-height:1;
}
.xcodenet-ord-dialog-title{
font-family:var(--fh);
font-size:var(--text-card);
line-height:var(--lh-title);
color:var(--ink);
margin-bottom:var(--space-2);
overflow-wrap:break-word;
}
.xcodenet-ord-dialog-body{
font-size:var(--text-base);
line-height:var(--lh-body);
color:var(--ink2);
overflow-wrap:break-word;
}
.xcodenet-ord-dialog-actions{
margin-top:var(--space-4);
}
.xcodenet-ord-dialog-panel .xcodenet-ord-dialog-actions{
justify-content:center;
}
.xcodenet-ord-dialog-panel .xcodenet-ord-btn-primary:hover{
background:var(--vio-d);
color:var(--ac-on-primary);
border-color:var(--vio-d);
}
.xcodenet-ord-booking-page.is-open,
.xcodenet-ord-gateway.is-open,
.xcodenet-ord-binding.is-open{
box-shadow:var(--shadow),inset 0 0 0 2px var(--vio);
}
.xcodenet-ord-feedback.is-mine{
background:var(--selected);
color:var(--vio-d);
}
@media(max-width:760px){
.xcodenet-ord-order{
padding-top:var(--space-7);
padding-bottom:var(--space-7);
}
.xcodenet-ord-opening{
margin-bottom:var(--space-5);
}
.xcodenet-ord-heading{
font-size:var(--text-section);
}
.xcodenet-ord-introduction{
font-size:var(--text-base);
}
.xcodenet-ord-coordinates{
grid-template-columns:minmax(0,1fr);
gap:var(--space-5);
padding:var(--space-4);
padding-top:calc(var(--space-4) + 2.75rem);
}
.xcodenet-ord-duration-options{
grid-template-columns:repeat(2,minmax(0,1fr));
}
.xcodenet-ord-city-options{
grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));
}
.xcodenet-ord-equipment{
grid-template-columns:minmax(0,1fr);
padding:var(--space-4);
gap:var(--space-5);
}
.xcodenet-ord-machine-options{
grid-template-columns:minmax(0,1fr);
}
.xcodenet-ord-expansion-page{
padding:var(--space-4);
padding-top:calc(var(--space-4) + 2.75rem);
}
.xcodenet-ord-confirmation{
padding:var(--space-4);
}
.xcodenet-ord-reservation-values{
grid-template-columns:minmax(0,1fr);
gap:var(--space-3);
}
.xcodenet-ord-reservation-values>*{
grid-template-columns:minmax(5rem,.7fr) minmax(0,1fr);
}
.xcodenet-ord-settlement{
align-items:flex-start;
flex-direction:column;
}
.xcodenet-ord-settlement-actions{
width:100%;
flex-direction:column;
align-items:stretch;
}
.xcodenet-ord-settlement-actions .xcodenet-ord-btn{
width:100%;
}
.xcodenet-ord-gateway,
.xcodenet-ord-binding{
padding:var(--space-4);
}
.xcodenet-ord-gateway-options{
grid-template-columns:minmax(0,1fr);
}
.xcodenet-ord-binding-row{
grid-template-columns:minmax(0,1fr);
align-items:stretch;
}
.xcodenet-ord-binding-row .xcodenet-ord-btn{
width:100%;
}
.xcodenet-ord-dialog-panel{
padding:var(--space-4);
}
.xcodenet-ord-dialog-actions{
align-items:stretch;
flex-direction:column;
}
.xcodenet-ord-dialog-actions .xcodenet-ord-btn{
width:100%;
}
}
@media(max-width:390px){
.xcodenet-ord-city-options{
grid-template-columns:minmax(0,1fr);
}
.xcodenet-ord-plan-spec{
gap:var(--space-1);
font-size:var(--text-xs);
}
.xcodenet-ord-total-number{
font-size:var(--text-reading);
}
}
@media(prefers-reduced-motion:reduce){
.xcodenet-ord-btn,
.xcodenet-ord-plan,
.xcodenet-ord-region,
.xcodenet-ord-seg-btn,
.xcodenet-ord-gw-item{
transition:none;
}
}
body:has(> main[data-shell]){display:flex;flex-direction:column;min-height:100vh}
body > main[data-shell]{flex:1 0 auto}
