/* =====================================================================
   THE NOTEBOOK PAGE ON WIDER SCREENS — 761px and up, aimed at 1080p
   («MWF Digital Companion»; the user, 2026-10-31: «a UI overhaul to
   better fit all the content on the page … make sure to aim for 1080p
   screens … but do not forget larger/smaller screens»). Loaded last on
   the notebook page with media "(min-width: 761px)"
   (inc/mwf-notebook-layout.php): it never applies on a phone. An element
   this slice adds carries .mwfn-only-desk.

   The plan of it:
     761–1279px  one column as before (a tablet either way, a small window,
                 a phone on its side): less room around the title; from
                 1024px the column wider (51rem), still clear of the gold «?»
                 (the glass lane's, bottom right on every page)
     1280–1679px the views' tabs on a rail at the left, held under the
                 site's bar (js/mwf-notebook-desk.js moves the row of tabs
                 there and back); the account's card lower above the view
                 (its words across, its two ways in side by side), «Porta
                 con te» under the view; on the right a margin as wide as
                 the «?» needs
     1680px+     three columns on one axis: the tabs | the view | the
                 account's card and «Porta con te». The two side columns
                 the same width, the view's column centred on the page, the
                 edges wide enough on both sides that the «?» never covers
                 a side column. (From 1920px the site's root size grows with
                 the screen: a 2560 or 4K screen shows this same layout,
                 larger.)
   Inside the view's column — a container: its layouts follow the column,
   not the screen —: the diary's days two entries to a row, «I miei vini»
   three to a row, the welcome's four cards on one row, the achievements
   six to a row, Pianifica's map beside the day's times, the Festival
   Map's list beside its map, the percorsi beside their map, the tables of
   «Percorso» beside theirs, the assistant's talk beside its notice and
   tools. A map that stays in sight while its list scrolls keeps its foot
   on the screen (--mwfd-stick, set by the script).
   In every layout the counts («16 vini · 11 produttori») are the view's
   panel's own first line, not a pill under the title; no text is smaller
   than the page's own, and the wine ground runs on under the panels to the
   footer (main's own padding, nothing white).
   ===================================================================== */

/* ---------------------------------------------------------------- every wider screen */
/* the view's column is a container: its layouts follow its own width */
main.mwfn-log [data-mwfn-list] { container: mwfd / inline-size; }

/* No text here is smaller than the page's own (the owner, 2026-10-31: «people are having trouble reading paragraph
   text»): room is saved in the layout and the spacing, never in the type. The short leads in the sans a little
   larger, as on phones. */
main.mwfn-log :is(.mwfn-route-lead, .mwfn-mine-lead, .mwfn-chat-lead, .mwfn-planner-p, .mwfn-eggs-lead, .mwfn-keep-pdf-p) { font-size: .95rem; line-height: 1.55; }
/* every sentence 15px or more, as on phones: the chat's 14 days, the grapes under a wine's name, the welcome's
   cards, and the sentences small on every screen before (labels — kickers, dates, counts, places — stay) */
main.mwfn-log .mwfn-chat-life { font-size: .95rem; }
main.mwfn-log .mwfn-item-sub { font-size: .95rem; line-height: 1.45; }
main.mwfn-log .mwfn-welcome-card-p { font-size: 1rem; line-height: 1.55; }
main.mwfn-log :is(.mwfn-welcome-acc-p, .mwfn-eggs-sec-p, .mwfn-eggs-local, .mwfn-egg-hint, .mwfn-chat-doc-p, .mwfn-plan-liftline, .mwfn-sched-end, .mwfn-pcard-unplaced, .mwfn-chat-note) { font-size: .95rem; line-height: 1.5; }
main.mwfn-log .mwfn-keep-perks li { font-size: .95rem; }

/* the title: less room above and under it, its type as it is */
main.mwfn-log .mwfn-log-hero { padding-top: 1.75rem; padding-bottom: 1.6rem; }
main.mwfn-log .mwfn-log-lead { max-width: 40rem; }
main.mwfn-log .mwfn-log-helpline:has(> .mwfn-log-help[hidden]) { display: none; }

/* the counts («16 vini · 11 produttori»): no pill over the page — the view's panel's own first line (moved there by
   js/mwf-notebook-desk.js), centred between two gold hairlines that fade outwards, as on phones */
main.mwfn-log .mwfn-log-main > .mwfn-log-stats:not([hidden]) {
	display: flex;
	align-items: center;
	gap: .9rem;
	margin: 0 0 1.1rem;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	font: 700 1rem/1.35 var(--mwfn-serif);
	letter-spacing: 0;
	text-align: center;
	color: var(--mwfn-wine);
}
main.mwfn-log .mwfn-log-main > .mwfn-log-stats::before,
main.mwfn-log .mwfn-log-main > .mwfn-log-stats::after { content: ''; flex: 1 1 0; min-width: 1.5rem; height: 1px; }
main.mwfn-log .mwfn-log-main > .mwfn-log-stats::before { background: linear-gradient(90deg, rgba(205, 173, 89, 0), var(--mwfn-gold)); }
main.mwfn-log .mwfn-log-main > .mwfn-log-stats::after { background: linear-gradient(270deg, rgba(205, 173, 89, 0), var(--mwfn-gold)); }

/* ---------------------------------------------------------------- 1024–1279px: the one column wider */
@media (min-width: 1024px) and (max-width: 1279px) {
	main.mwfn-log .mwfn-log-body { max-width: 51rem; }
	main.mwfn-log .mwfn-log-hero { max-width: 51rem; }
	main.mwfn-log .mwfn-log-hero .mwfn-log-lead { max-width: 44rem; }
}

/* ---------------------------------------------------------------- 1280px+: the tabs on a rail */
@media (min-width: 1280px) {
	main.mwfn-log {
		--mwfd-rail: 13rem;
		--mwfd-gap: 1.25rem;
		/* the right margin as wide as the «?» needs (its 4rem, its own margin and a little air) */
		--mwfd-edge: calc(6.5rem - var(--mwfd-gap));
		display: grid;
		grid-template-columns: minmax(0, 1fr) var(--mwfd-rail) minmax(0, 64rem) minmax(var(--mwfd-edge), 1fr);
		grid-template-rows: auto auto auto 1fr;
		column-gap: var(--mwfd-gap);
		align-content: start;
		align-items: start;
		padding-top: 1.4rem;
	}
	main.mwfn-log > .mwfn-log-body { display: contents; }
	main.mwfn-log > .mwfn-log-hero { grid-column: 3; grid-row: 1; width: 100%; max-width: none; margin: 0; padding: .2rem 1rem 1.4rem; }
	main.mwfn-log > .mwfn-log-hero .mwfn-log-lead { max-width: 56rem; }
	/* the rail beside the view's panels, its top level with the first of them — not beside the title (the owner,
	   2026-10-31: «the two columns left and right of the center div should start level with the center div content») */
	main.mwfn-log .mwfd-rail { grid-column: 2; grid-row: 2 / -1; }
	main.mwfn-log .mwfn-acc { grid-column: 3; grid-row: 2; }
	main.mwfn-log .mwfn-log-main { grid-column: 3; grid-row: 3; }
	main.mwfn-log .mwfn-log-keep { grid-column: 3; grid-row: 4; }
	/* the Festival Map's chosen place: in the view's column (its own band is centred on the page) */
	main.mwfn-log .mwfn-fm-stage,
	main.mwfn-log .mwfn-fm-stage.is-text { width: auto; margin-right: 0; margin-left: 0; }
	/* (#account lands under the site's bar: the card's own margin) */
	main.mwfn-log .mwfn-acc { scroll-margin-top: calc(var(--mwfd-top, 9rem) + .5rem); }

	/* the rail: a card like the panels, held under the site's bar; on a very short window it scrolls itself */
	main.mwfn-log .mwfd-rail {
		position: sticky;
		top: var(--mwfd-top, 9rem);
		max-height: calc(100vh - var(--mwfd-top, 9rem) - 1rem);
		margin: 0 0 .9rem;
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-width: thin;
		border-radius: 22px;
		background: var(--mwfn-paper);
		box-shadow: 0 26px 50px -32px rgba(0, 0, 0, .85);
	}
	main.mwfn-log .mwfd-rail .mwfn-seg {
		display: flex;
		flex-direction: column;
		gap: 2px;
		padding: 8px;
		border: 0;
		border-radius: 0;
		background: none;
	}
	/* the row's pill glides sideways only: the rail has its own mark (the script's), the tab chosen in wine */
	main.mwfn-log .mwfd-rail .mwfn-seg-pill { display: none; }
	main.mwfn-log .mwfd-rail .mwfd-mark { position: absolute; top: 0; left: 0; width: 0; height: 0; border-radius: 14px; background: var(--mwfn-wine); opacity: 0; pointer-events: none; }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn {
		display: flex;
		align-items: center;
		gap: 12px;
		width: 100%;
		min-height: 48px;
		padding: 10px 14px;
		border-radius: 14px;
		font: 700 .78rem/1.25 var(--mwfn-sans);
		letter-spacing: .1em;
		text-align: left;
		color: var(--mwfn-ink);
		transition: color .2s, background-color .2s;
	}
	main.mwfn-log .mwfd-rail .mwfn-seg-btn[aria-pressed="true"] { background: var(--mwfn-wine); color: var(--mwfn-cream); }
	main.mwfn-log .mwfd-rail.has-mark .mwfn-seg-btn[aria-pressed="true"] { background: none; }
	/* the welcome and the achievements apart from the five in the middle */
	main.mwfn-log .mwfd-rail .mwfn-seg-btn[data-mwfn-view="welcome"] { margin-bottom: 6px; }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn--eggs { margin-top: 6px; }
	/* each tab its picture, in gold; the welcome's and the achievements' are their own, their names beside them */
	main.mwfn-log .mwfd-rail .mwfn-seg-btn:not(.mwfn-seg-btn--icon)::before {
		content: '';
		flex: 0 0 22px;
		width: 22px;
		height: 22px;
		background: var(--mwfn-gold-dark);
		-webkit-mask: var(--mwfd-ico) center / contain no-repeat;
		mask: var(--mwfd-ico) center / contain no-repeat;
		transition: background-color .2s;
	}
	main.mwfn-log .mwfd-rail .mwfn-seg-btn--icon svg { flex: 0 0 22px; width: 22px; height: 22px; color: var(--mwfn-gold-dark); transition: color .2s; }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn--icon::after { content: attr(aria-label); min-width: 0; }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn[aria-pressed="true"]::before { background: var(--mwfn-gold); }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn[aria-pressed="true"] svg { color: var(--mwfn-gold); }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn:focus-visible { outline: 2px solid var(--mwfn-gold-dark); outline-offset: -2px; }
	main.mwfn-log .mwfd-rail .mwfn-seg-btn[aria-pressed="true"]:focus-visible { outline-color: var(--mwfn-gold); }
	@media (hover: hover) {
		main.mwfn-log .mwfd-rail .mwfn-seg-btn:not([aria-pressed="true"]):hover { background: rgba(205, 173, 89, .16); color: var(--mwfn-wine); }
		main.mwfn-log .mwfd-rail .mwfn-seg-btn:not([aria-pressed="true"]):hover::before { background: var(--mwfn-wine); }
		main.mwfn-log .mwfd-rail .mwfn-seg-btn:not([aria-pressed="true"]):hover svg { color: var(--mwfn-wine); }
	}
	main.mwfn-log .mwfd-rail [data-mwfn-view="diary"] { --mwfd-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 4.5h11a2 2 0 0 1 2 2v13h-11a2 2 0 0 1-2-2z'/%3E%3Cpath d='M5.5 17.5a2 2 0 0 1 2-2h11M9 8.5h6M9 11.5h4'/%3E%3C/svg%3E"); }
	main.mwfn-log .mwfd-rail [data-mwfn-view="wines"] { --mwfd-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3.5h10c0 4.6-2.2 7.6-5 8.1-2.8-.5-5-3.5-5-8.1zM12 11.6V19M8.5 20.5h7M6.3 7.2h11.4'/%3E%3C/svg%3E"); }
	main.mwfn-log .mwfd-rail [data-mwfn-view="plan"] { --mwfd-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15' rx='2'/%3E%3Cpath d='M3.5 9.5h17M8 3v4M16 3v4'/%3E%3Cpath d='m12 11.7 1.05 2.15 2.35.34-1.7 1.66.4 2.35L12 17.08l-2.1 1.12.4-2.35-1.7-1.66 2.35-.34z'/%3E%3C/svg%3E"); }
	main.mwfn-log .mwfd-rail [data-mwfn-view="map"] { --mwfd-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4.5 3.5 6.5v13l5.5-2 6 2 5.5-2v-13l-5.5 2zM9 4.5v13M15 6.5v13'/%3E%3C/svg%3E"); }
	main.mwfn-log .mwfd-rail [data-mwfn-view="mine"] { --mwfd-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='18' r='2.2'/%3E%3Ccircle cx='18' cy='6' r='2.2'/%3E%3Cpath d='M8.2 18h7.3a3.25 3.25 0 0 0 0-6.5h-7a3.25 3.25 0 0 1 0-6.5h7.3'/%3E%3C/svg%3E"); }
	main.mwfn-log .mwfd-rail [data-mwfn-view="chat"] { --mwfd-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 5h14a1.5 1.5 0 0 1 1.5 1.5v8.5a1.5 1.5 0 0 1-1.5 1.5h-7.5l-4.5 3.5v-3.5H5A1.5 1.5 0 0 1 3.5 15V6.5A1.5 1.5 0 0 1 5 5z'/%3E%3Cpath d='M8 9.5h8M8 12.5h5'/%3E%3C/svg%3E"); }
}

/* a short screen (a 1080p laptop at 125 or 150 %, a phone on its side): less room around the title — its type as it is */
@media (min-width: 1280px) and (max-height: 820px) {
	main.mwfn-log { padding-top: 1rem; }
	main.mwfn-log > .mwfn-log-hero { padding-bottom: .75rem; }
	main.mwfn-log .mwfn-log-h1 { margin-top: .4rem; }
	main.mwfn-log .mwfn-log-lead { margin-top: .5rem; }
	main.mwfn-log .mwfn-log-helpline { margin-top: .6rem; }
}

@media (max-height: 560px) {
	main.mwfn-log .mwfn-log-hero { padding-top: .9rem; padding-bottom: .9rem; }
	main.mwfn-log .mwfn-log-h1 { margin-top: .35rem; }
	main.mwfn-log .mwfn-log-lead { margin-top: .45rem; }
	main.mwfn-log .mwfn-log-helpline { margin-top: .55rem; }
}

@media (max-height: 450px) {
	main.mwfn-log .mwfn-log-hero { padding-top: .55rem; padding-bottom: .65rem; }
	main.mwfn-log .mwfn-log-h1 { margin-top: .25rem; }
	main.mwfn-log .mwfn-log-lead { margin-top: .35rem; }
	main.mwfn-log .mwfn-log-helpline { margin-top: .45rem; }
}

/* ---------------------------------------------------------------- 1280–1679px (and a short one-column screen):
   the account's card lower — its words across the column, its two ways in side by side, all on the middle line */
@media (min-width: 1280px) and (max-width: 1679px), (max-width: 1279px) and (max-height: 560px) {
	main.mwfn-log .mwfn-acc { padding: 1rem 1.5rem 1.05rem; }
	main.mwfn-log .mwfn-acc-out:not([hidden]) { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; column-gap: 1.25rem; }
	main.mwfn-log .mwfn-acc-out > * { flex: 0 0 100%; }
	main.mwfn-log .mwfn-acc-out .mwfn-log-h2 { margin-bottom: .3rem; }
	main.mwfn-log .mwfn-acc-out .mwfn-log-text { max-width: 46rem; }
	main.mwfn-log .mwfn-acc-out > .mwfn-acc-main:not([hidden]),
	main.mwfn-log .mwfn-acc-out > [data-mwfn-signin] { flex: 0 0 auto; width: auto; margin: .75rem 0 0; }
	main.mwfn-log .mwfn-acc-out > .mwfn-acc-main:not([hidden]) { min-width: 16rem; padding-right: 1.5rem; padding-left: 1.5rem; }
}

/* the account's band on a short screen (1280–1679px): less room inside it */
@media (min-width: 1280px) and (max-width: 1679px) and (max-height: 820px) {
	main.mwfn-log .mwfn-acc { padding-top: .8rem; padding-bottom: .85rem; }
	main.mwfn-log .mwfn-acc-out .mwfn-log-h2 { margin-bottom: .2rem; }
	main.mwfn-log .mwfn-acc-out > .mwfn-acc-main:not([hidden]),
	main.mwfn-log .mwfn-acc-out > [data-mwfn-signin] { margin-top: .55rem; }
}

/* ---------------------------------------------------------------- 1680px+: three columns on one axis */
@media (min-width: 1680px) {
	main.mwfn-log {
		--mwfd-rail: clamp(14rem, 10vw + 4rem, 19rem);
		--mwfd-gap: clamp(1.1rem, 1.5vw, 2rem);
		/* both edges as wide as the «?» needs on the right: one axis */
		--mwfd-edge: calc(6.5rem - var(--mwfd-gap));
		grid-template-columns: minmax(var(--mwfd-edge), 1fr) var(--mwfd-rail) minmax(0, 84rem) var(--mwfd-rail) minmax(var(--mwfd-edge), 1fr);
		grid-template-rows: auto auto 1fr;
	}
	/* both side columns beside the view's panel, their tops level with its top (the owner, 2026-10-31); the title
	   alone above the middle column */
	main.mwfn-log .mwfd-rail { grid-row: 2 / -1; }
	main.mwfn-log .mwfn-log-main { grid-column: 3; grid-row: 2 / span 2; }
	/* the right column: the account's card on top (signed out), «Porta con te» under it — at the top when alone */
	main.mwfn-log .mwfn-acc { grid-column: 4; grid-row: 2; }
	main.mwfn-log .mwfn-log-keep { grid-column: 4; grid-row: 2 / -1; }
	main.mwfn-log .mwfn-acc:not([hidden]) ~ .mwfn-log-keep { grid-row: 3 / -1; }

	/* the side column's cards: a narrow measure (their type as it is), the buttons one under the other */
	main.mwfn-log .mwfn-acc,
	main.mwfn-log .mwfn-log-keep { padding: 1.35rem 1.15rem 1.2rem; }
	main.mwfn-log .mwfn-acc .mwfn-log-h2,
	main.mwfn-log .mwfn-log-keep .mwfn-log-h2 { text-wrap: balance; }
	main.mwfn-log .mwfn-acc .mwfn-log-text,
	main.mwfn-log .mwfn-log-keep .mwfn-log-text { text-wrap: pretty; }
	main.mwfn-log .mwfn-acc .mwfn-acc-main { max-width: none; }
	main.mwfn-log .mwfn-log-keep .mwfn-keep-art svg { width: 168px; }
	main.mwfn-log .mwfn-log-keep .mwfn-keep-perks { justify-content: stretch; }
	main.mwfn-log .mwfn-log-keep .mwfn-keep-perks li { align-items: flex-start; }
	main.mwfn-log .mwfn-log-keep .mwfn-keep-note .mwfn-log-actions { grid-template-columns: minmax(0, 1fr); max-width: none; }
	main.mwfn-log .mwfn-log-keep .mwfn-keep-note .mwfn-log-actions[data-n="1"] > .mwfn-btn { width: 100%; }
	main.mwfn-log .mwfn-log-keep .mwfn-keep-pdf { max-width: none; padding: 1.25rem 1rem 1.1rem; }
}

/* a table's plate: its width in the root's size, as its number is (from 1920px the root grows with the screen and a
   76px plate broke «216» in two; the same 76px up to 1920px) */
main.mwfn-log .mwfn-tcard { grid-template-columns: 4.75rem minmax(0, 1fr); }
main.mwfn-log .mwfn-pcard { grid-template-columns: 4.75rem minmax(0, 1fr) 2.5rem; }
main.mwfn-log .mwfn-pcard--ro { grid-template-columns: 4.75rem minmax(0, 1fr); }
main.mwfn-log .mwfn-tcard-table { min-height: 5.5rem; }

/* ---------------------------------------------------------------- the views, by the column's width */
/* a lone button under a view's words (a centred half of the column): never wider than the account's own */
@container mwfd (min-width: 40rem) {
	.mwfn-mine-none .mwfn-btn,
	.mwfn-log-none .mwfn-catf-all { max-width: 22rem; }
}

/* the welcome: its four cards on one row */
@container mwfd (min-width: 60rem) {
	.mwfn-welcome-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.mwfn-welcome-hero { padding: 1.4rem 1.5rem 1.3rem; }
}

/* the diary: a day's entries two to a row, the hairlines across each row */
@container mwfd (min-width: 48rem) {
	.mwfn-day-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2.75rem; }
	.mwfn-day-list > .mwfn-item:nth-child(2) { border-top: 0; }
	/* an entry as tall as its row's other: its face over the whole of it (the swipe's buttons stay under) */
	.mwfn-day-list > .mwfn-item.mwfn-swipeable > .mwfn-face { height: 100%; }
}

/* «Percorso»: the plan beside the tables scanned */
@container mwfd (min-width: 52rem) {
	.mwfn-route:has(> .mwfn-route-map) { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); column-gap: 1.75rem; align-items: start; }
	.mwfn-route:has(> .mwfn-route-map) > * { grid-column: 1 / -1; }
	.mwfn-route:has(> .mwfn-route-map) > .mwfn-route-map { grid-column: 1; position: sticky; top: var(--mwfd-stick, var(--mwfd-top, 9rem)); }
	.mwfn-route:has(> .mwfn-route-map) > .mwfn-route-list { grid-column: 2; }
}

/* «I miei vini»: three to a row */
@container mwfd (min-width: 52rem) {
	.mwfn-wines { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* «Pianifica»: the leads and the planner's panel wider and lower (every word still in the middle); the day's map
   beside its times */
@container mwfd (min-width: 52rem) {
	.mwfn-plan:not(.mwfn-mine):not(.mwfn-chat) > .mwfn-route-lead { max-width: 40rem; }
	.mwfn-planner { margin: 1rem 0 1.1rem; padding: 16px 24px 16px; }
	.mwfn-planner .mwfn-planner-p { max-width: 44rem; }
	.mwfn-planner .mwfn-plan-addbar { margin-top: 12px; }
	.mwfn-plan:not(.mwfn-mine):not(.mwfn-chat):has(> .mwfn-plan-map) { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); column-gap: 1.75rem; align-items: start; }
	.mwfn-plan:not(.mwfn-mine):not(.mwfn-chat):has(> .mwfn-plan-map) > * { grid-column: 1 / -1; }
	.mwfn-plan:not(.mwfn-mine):not(.mwfn-chat):has(> .mwfn-plan-map) > .mwfn-plan-map { grid-column: 1; grid-row: span 2; position: sticky; top: var(--mwfd-stick, var(--mwfd-top, 9rem)); }
	.mwfn-plan:not(.mwfn-mine):not(.mwfn-chat):has(> .mwfn-plan-map) > :is(.mwfn-sched, .mwfn-sched-list, .mwfn-plan-list) { grid-column: 2; }
	/* the times' four buttons two by two in the narrower column (a word like «Zeiteinstellungen» whole) */
	.mwfn-plan:not(.mwfn-mine):not(.mwfn-chat):has(> .mwfn-plan-map) .mwfn-sched-bar--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* the Festival Map: its list beside the map (nothing chosen yet: where the map will open, in its words) */
@container mwfd (min-width: 54rem) {
	.mwfn-fm { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); column-gap: 1.75rem; align-items: start; }
	.mwfn-fm > * { grid-column: 1 / -1; }
	.mwfn-fm > .mwfn-fm-finder { grid-column: 1; grid-row: 3; }
	.mwfn-fm .mwfn-fm-days { flex-wrap: wrap; gap: 5px; overflow: visible; }
	.mwfn-log .mwfn-fm .mwfn-fm-day { min-height: 36px; padding: 4px 10px; }
	.mwfn-fm > .mwfn-fm-stage {
		grid-column: 2;
		grid-row: 3;
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "map" "from" "card";
		position: sticky;
		top: var(--mwfd-stick, var(--mwfd-top, 9rem));
		width: auto;
		margin: 1.1rem 0 0;
		padding: 1.1rem 1.1rem 1.2rem;
		scroll-margin-top: calc(var(--mwfd-top, 9rem) + .75rem);
	}
	.mwfn-fm > .mwfn-fm-stage.is-text { grid-template-areas: "card"; width: auto; margin-left: 0; }
	.mwfn-fm > .mwfn-fm-stage > .mwfn-fm-card { position: static; width: 100%; max-width: 30rem; justify-self: center; }
	.mwfn-fm > .mwfn-fm-stage .mwfn-fm-x { top: .6rem; right: .6rem; }
	.mwfn-fm[data-mwfd-wait]::after {
		content: attr(data-mwfd-wait);
		grid-column: 2;
		grid-row: 3;
		position: sticky;
		top: var(--mwfd-top, 9rem);
		display: grid;
		place-items: center;
		min-height: 16rem;
		margin-top: 1.1rem;
		padding: 2rem 2.4rem;
		border: 1px solid rgba(205, 173, 89, .45);
		border-radius: 24px;
		background: #28191b radial-gradient(ellipse at 50% 30%, rgba(125, 42, 50, .55), transparent 72%);
		font: 500 .95rem/1.55 var(--mwfn-sans);
		text-align: center;
		text-wrap: balance;
		color: rgba(241, 228, 184, .82);
	}
	.mwfn-fm:has(> .mwfn-fm-stage:not([hidden]))::after { display: none; }
}

/* «Percorsi»: the plan beside the percorsi saved, the one it shows named at the top */
@container mwfd (min-width: 52rem) {
	/* (the plan is drawn again once the way's router is there: its figure then without .mwfn-mine-map) */
	.mwfn-mine:has(> .mwfn-plan-map) { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); column-gap: 1.75rem; row-gap: 0; align-items: start; }
	.mwfn-mine:has(> .mwfn-plan-map) > * { grid-column: 2; }
	.mwfn-mine:has(> .mwfn-plan-map) > :is(.mwfn-mine-h, .mwfn-mine-lead) { grid-column: 1 / -1; }
	.mwfn-mine:has(> .mwfn-plan-map) > .mwfn-plan-map { grid-column: 1; grid-row: 3 / span 24; margin-top: 1rem; position: sticky; top: var(--mwfd-stick, var(--mwfd-top, 9rem)); }
	.mwfn-mine:has(> .mwfn-plan-map) > .mwfn-mine-cap { margin-top: 1rem; }
}

/* the assistant: the talk at a readable width, its notice and tools beside it (floats: the talk is redrawn in
   place, js/mwf-notebook-chat.js) */
@container mwfd (min-width: 56rem) {
	.mwfn-chat:has(> .mwfn-chat-log) { --mwfd-side: 17.5rem; display: flow-root; }
	.mwfn-chat:has(> .mwfn-chat-log) > * { margin: 0 calc(var(--mwfd-side) + 2rem) .85rem 0; }
	.mwfn-chat:has(> .mwfn-chat-log) > :is(.mwfn-chat-head, .mwfn-chat-life, .mwfn-chat-tools, .mwfn-chat-left, .mwfn-chat-note) { float: right; clear: right; width: var(--mwfd-side); margin-right: 0; }
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-head { text-align: left; }
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-head .mwfn-chat-lead { margin-left: 0; }
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-tools { display: grid; justify-content: stretch; justify-items: stretch; gap: .35rem; }
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-tools > .mwfn-chat-pdf { width: 100%; }
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-left { margin-top: -.4rem; text-align: left; }
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-note { text-align: left; }
	/* the field stays at the screen's foot while a long talk scrolls */
	.mwfn-chat:has(> .mwfn-chat-log) > .mwfn-chat-form { position: sticky; bottom: 0; z-index: 2; padding: .6rem 0 .9rem; background: var(--mwfn-paper); box-shadow: 0 -14px 14px -14px rgba(40, 25, 27, .35); }
	.mwfn-chat-msg { scroll-margin-bottom: 7rem; }
}

/* «MWF 35 Achievements»: the cards one width, six to a row (four on a narrower column), a shorter row in the middle */
@container mwfd (min-width: 46rem) {
	.mwfn-eggs-grid:not(.mwfn-eggs-grid--taste) { --mwfd-n: 4; display: flex; flex-wrap: wrap; justify-content: center; gap: .85rem; }
	.mwfn-eggs-grid:not(.mwfn-eggs-grid--taste) > .mwfn-egg { flex: 0 0 calc((100% - (var(--mwfd-n) - 1) * .85rem) / var(--mwfd-n)); min-width: 0; }
	.mwfn-eggs-grid:not(.mwfn-eggs-grid--taste) > .mwfn-egg.is-wide { flex-basis: 100%; }
	.mwfn-eggs-head { padding: 1.25rem 1.5rem 1.15rem; }
	.mwfn-eggs-lead { max-width: 40rem; }
}
@container mwfd (min-width: 62rem) {
	.mwfn-eggs-grid:not(.mwfn-eggs-grid--taste) { --mwfd-n: 6; }
}

@media (prefers-reduced-motion: reduce) {
	main.mwfn-log .mwfd-rail .mwfn-seg-btn,
	main.mwfn-log .mwfd-rail .mwfn-seg-btn::before,
	main.mwfn-log .mwfd-rail .mwfn-seg-btn--icon svg { transition: none; }
}
