/* A cheerful visual layer exclusively for the stations page. */
body{background:radial-gradient(circle at 3% 12%,#ffdfad80 0,transparent 27%),radial-gradient(circle at 97% 30%,#ccece780 0,transparent 29%),#fffaf0}
body>header{position:relative;padding:32px 24px 25px;min-height:182px;background:url('stazioni-viaggio.svg') no-repeat right 24px center;background-size:260px auto;padding-right:310px}
h1{color:#325e73}.eyebrow{color:#8e5435}body>header .intro{color:#496676}
.panel{border-color:#dce9e8;box-shadow:0 7px 0 #deece8}.tag{background:#ffe8ad;color:#755017}
.controls{padding:16px;border-radius:17px;background:#eef6fb;border:1px solid #d4e5ef}
.station-editor,.assignment{--tint:#fff2d4;--accent:#bd791c;background:var(--tint);border:1px solid color-mix(in srgb,var(--accent) 25%,white);border-top:6px solid var(--accent);box-shadow:0 4px 0 color-mix(in srgb,var(--accent) 14%,white)}
.station-editor:nth-child(6n+2),.assignment:nth-child(6n+2){--tint:#e8f5ef;--accent:#368a73}
.station-editor:nth-child(6n+3),.assignment:nth-child(6n+3){--tint:#fce9e7;--accent:#c77874}
.station-editor:nth-child(6n+4),.assignment:nth-child(6n+4){--tint:#e7f3fc;--accent:#468ab3}
.station-editor:nth-child(6n+5),.assignment:nth-child(6n+5){--tint:#ffebe2;--accent:#bd7154}
.station-editor:nth-child(6n+6),.assignment:nth-child(6n+6){--tint:#fdebf0;--accent:#b86284}
.station-editor h3{display:flex;align-items:center;gap:8px;color:#304c5a}.station-editor h3 .station-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#ffffffb8;font-size:25px}
.station-editor input,.station-editor textarea{border-color:color-mix(in srgb,var(--accent) 30%,white);background:#ffffffee}
.assignment .group{color:#344f60;font-size:15px}.assignment .group .station-icon{font-size:33px;vertical-align:middle}.assignment h3{color:#304c5a}
.primary{background:#287b79;box-shadow:0 3px 0 #195c5b}.secondary{background:#eaf1f8;color:#365c78}.primary:hover{background:#206e6c}.secondary:hover{background:#ddebf5}
.station-time-hint{background:#fff2d5;border-color:#e5bc67}.help{background:#edf5f3;color:#405f59}
.station-journey{background:#f0f8ed;border-radius:20px;padding:22px 20px}.roundline{color:#99504f}.station-clock{box-shadow:0 5px 0 #e4eee8}
#rotationTable thead th{background:#deedf3;color:#33556b}#rotationTable tbody tr:nth-child(odd) td{background:#f8fbfc}#rotationTable tbody th{background:#fbeae8;color:#804745}
@media(max-width:760px){body>header{padding-right:24px;background-size:145px auto;background-position:right 18px top 16px}body>header .eyebrow{max-width:calc(100% - 145px)}body>header h1{margin-top:30px}body>header .intro{max-width:100%}}
@media(max-width:440px){body>header{padding:22px 14px}.controls{padding:12px}}
@media print{body{background:white}body>header{background:none;padding:10px;min-height:0}.station-editor,.assignment,.panel{box-shadow:none}.station-journey{background:none}}

/* Illustrated group badges and touch-friendly choices. */
.group-art{display:inline-block;width:42px;height:42px;object-fit:contain;vertical-align:middle;margin-right:8px;flex-shrink:0}
.assignment .group .group-art{width:64px;height:64px}
.group-picker{border:1px solid #ffffff;border-radius:15px;background:#ffffff9e;padding:8px 10px}
.group-picker summary{display:flex;align-items:center;gap:4px;font-size:13px;min-height:48px;list-style:none}
.group-picker summary::-webkit-details-marker{display:none}.group-picker summary:after{content:'⌄';margin-left:auto;font-size:22px;color:#506b7d}.group-picker[open] summary:after{content:'⌃'}
.group-picker summary:focus-visible{outline:3px solid #b75f5d;border-radius:9px;outline-offset:3px}
.group-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.group-choice{position:relative;border:2px solid transparent;border-radius:13px;background:#fff;padding:6px 2px;color:#36515d;min-width:0;display:flex;align-items:center;flex-direction:column;gap:4px;font-size:11px;font-weight:700}
.group-choice .group-art{width:100%;max-width:64px;height:auto;aspect-ratio:1;margin:0}.group-choice[aria-pressed=true]{border-color:#287b79;background:#e4f5ef}.group-choice[aria-pressed=true]:after{content:'✓';position:absolute;right:3px;top:2px;border-radius:50%;background:#287b79;color:white;width:19px;height:19px;line-height:19px}.group-choice:hover{border-color:#7b9eb0}
@media print{.group-art{width:28px;height:28px}.group-picker{display:none}}

/* The trail fills behind a right-facing snail as time elapses. */
.station-snail{font-size:0;width:52px;height:36px;background:url('station-snail.svg') center/contain no-repeat;transform:translateX(-50%);top:-30px}
