.ap-layout{display:grid;grid-template-columns:320px minmax(280px,1fr);gap:var(--sp-4);align-items:start}.ap-panel{display:flex;flex-direction:column;gap:var(--sp-3)}.ap-panel input[type=number],.ap-panel input[type=datetime-local]{width:100%;background:var(--panel2);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--r-md);padding-block:var(--sp-2);padding-inline:var(--sp-3);font:inherit;font-size:var(--fs-md)}.ap-panel input[type=number]:focus,.ap-panel input[type=datetime-local]:focus{outline:none;border-color:var(--accent)}.ap-seg{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-block-end:8px}.ap-seg-btn{flex:1;min-inline-size:64px;padding-block:var(--sp-2);padding-inline:var(--sp-2);border-radius:var(--r-sm);font-size:var(--fs-sm);border:1px solid var(--line);background:var(--panel2);color:var(--muted);cursor:pointer}.ap-seg-btn.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:700}.ap-custom{text-align:center}.ap-result{display:flex;flex-direction:column;gap:var(--sp-3);min-inline-size:0}.ap-empty{color:var(--muted);text-align:center;padding-block:32px}.ap-hero-label{font-size:var(--fs-sm);color:var(--muted)}.ap-hero-value{font-size:32px;font-weight:800;color:var(--accent);line-height:1.2}.ap-hero-note{font-size:var(--fs-xs);color:var(--muted);margin-block-start:4px}.ap-hero.ap-past{border-color:#ef4444}.ap-hero.ap-past .ap-hero-value{color:#ef4444}.ap-hero.ap-past .ap-hero-note{color:#ef4444;font-weight:700}.ap-timeline{display:flex;flex-direction:column;list-style:none;margin:0;padding:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding-block:var(--sp-2);padding-inline:var(--sp-4)}.ap-tl-item{display:flex;align-items:baseline;gap:var(--sp-3);padding-block:var(--sp-3)}.ap-tl-item+.ap-tl-item{border-block-start:1px solid var(--line)}.ap-tl-time{flex:none;inline-size:72px;font-size:var(--fs-lg);font-weight:800;color:var(--text)}.ap-tl-label{font-size:var(--fs-md);color:var(--text)}.ap-tl-flight .ap-tl-time,.ap-tl-flight .ap-tl-label{color:var(--accent)}.ap-tl-gap{padding-inline-start:84px;font-size:var(--fs-xs);color:var(--muted);padding-block:var(--sp-1)}@media(max-width:760px){.ap-layout{grid-template-columns:1fr}}
