:root{--dark-green:#3f5207;--logo-green:#6b890c;--mid-green:#bbd470;--pale-green:#e9f1d0;--text:#333;--line:#c9c9c9;--title:"Lora", Georgia, serif;--body:"Source Sans 3", Arial, sans-serif}body{color:var(--text);font-family:var(--body);background:#fff;margin:0;font-size:10.5pt;line-height:1.5}a{color:var(--dark-green)}.ls-page{color:#333;background:#fff;font-family:"Source Sans 3",Arial,sans-serif;font-size:10.5pt;line-height:1.5}.ls-page *{box-sizing:border-box}.ls-wrap{max-width:1400px;margin:0 auto;padding:20px 20px 28px}.ls-hd{grid-template-columns:1fr auto;align-items:stretch;display:grid}.ls-band{color:#fff;text-transform:uppercase;background:#3f5207;grid-area:1/1;align-items:center;margin:0;padding:10px 20px;font-family:Lora,Georgia,serif;font-size:24pt;font-weight:700;line-height:1.2;display:flex}.ls-lg{background:#3f5207;grid-area:1/2;align-items:center;padding:8px;display:flex}.ls-lgbox{background:#fff;align-items:center;padding:4px 8px;display:flex}.ls-lgbox img{width:130px;height:auto;display:block}.ls-strip{color:#333;text-align:center;text-transform:uppercase;background:#e9f1d0;grid-area:2/1/auto/3;padding:3px 0;font-weight:700}.ls-link{color:#fff;background:#3f5207;padding:6px 16px;font-weight:700;text-decoration:none;display:inline-block}.ls-link:hover{background:#6b890c}.ls-page h2{color:#fff;background:#3f5207;margin:20px 0 10px;padding:3px 10px;font-family:Lora,Georgia,serif;font-size:16pt;font-weight:700;line-height:1.3}.ls-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));align-items:start;gap:12px;display:grid}.ls-stack{flex-direction:column;gap:10px;display:flex}.ls-tile{background:#fff;border:1px solid #c9c9c9}.ls-tile summary{cursor:pointer;background:#e9f1d0;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;list-style:none;display:flex}.ls-tile summary::-webkit-details-marker{display:none}.ls-tile summary:after{content:"";border-bottom:2px solid #3f5207;border-right:2px solid #3f5207;flex:none;width:8px;height:8px;margin-left:4px;transform:rotate(45deg)}.ls-tile[open] summary:after{transform:rotate(-135deg)}.ls-name{color:#000;flex:1;font-family:Lora,Georgia,serif;font-size:12pt;font-weight:700}.ls-sub{color:#000;white-space:nowrap}.ls-body{padding:8px 10px 10px;overflow-x:auto}.ls-table{border-collapse:collapse;width:100%}.ls-table th{color:#333;text-align:left;background:#e9f1d0;border:1px solid #c9c9c9;padding:4px 8px;font-weight:700}.ls-table td{color:#333;vertical-align:top;background:#fff;border:1px solid #c9c9c9;padding:4px 8px}.ls-table tr.ls-done td{color:#000;text-decoration:line-through}.ls-table tr.ls-soon td{font-weight:700}.ls-note{background:#e9f1d0;border-left:4px solid #6b890c;margin:18px 0 0;padding:7px 12px}.ls-ft{color:#000;border-top:2px solid #bbd470;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:22px;padding-top:5px;font-size:9pt;display:flex}.ls-intro{flex-wrap:wrap;align-items:center;gap:10px 16px;margin:14px 0 0;display:flex}.ls-intro p{flex:20rem;margin:0}.ls-user{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.ls-tools{flex-wrap:wrap;align-items:end;gap:10px 16px;margin:0 0 10px;display:flex}.ls-tools label{gap:2px;display:grid}.ls-cell-sub{color:#000;display:block}.ls-empty{color:#000;margin:0}.ls-ft a{color:#000;text-decoration:none}.ls-table td input[type=checkbox]{vertical-align:-2px;width:1rem;height:1rem;accent-color:var(--logo-green);margin:0 6px 0 0}.ls-name-link{font:inherit;font-weight:700}.ls-tools label.check{align-items:center;gap:6px;display:flex}.ls-safaris{grid-template-columns:repeat(auto-fill,minmax(min(100%,40rem),1fr));gap:10px;display:grid}.ls-safari{background:#fff;border:1px solid #c9c9c9}.ls-safari-hd{border-bottom:2px solid #bbd470;flex-wrap:wrap;align-items:baseline;gap:4px 16px;padding:6px 10px;display:flex}.ls-safari-hd>.link{text-align:left;flex:12rem}.ls-lead{white-space:nowrap;color:#000}.ls-facts{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:6px 16px;margin:0;padding:6px 10px;display:grid}.ls-facts dt{color:#3f5207;font-weight:700}.ls-facts dd{color:#000;margin:0}.ls-facts .ls-wide{grid-column:1/-1}.ls-late{font-weight:700;text-decoration:underline}.ls-links{border-top:1px solid #c9c9c9;margin:0;padding:4px 10px 6px}.ls-contact{position:relative}.ls-contact summary{cursor:pointer;color:#3f5207;text-decoration:underline;list-style:none}.ls-contact summary::-webkit-details-marker{display:none}.ls-contact-box{z-index:5;background:#fff;border:1px solid #6b890c;gap:4px;min-width:16rem;padding:8px 10px;display:grid;position:absolute;top:100%;left:0}form{gap:.75rem;display:grid}label{gap:.25rem;display:grid}input,select,textarea,button{font:inherit;border:1px solid var(--line);color:#000;background:#fff;border-radius:0;padding:.4rem .6rem}button{background:var(--dark-green);color:#fff;border-color:var(--dark-green);cursor:pointer;font-weight:700}button:hover:not(:disabled){background:var(--logo-green);border-color:var(--logo-green)}button:disabled{opacity:.6}button.quiet{color:var(--dark-green);background:#fff}button.quiet:hover:not(:disabled){background:var(--pale-green)}button.link{color:var(--dark-green);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}button.link:hover{color:var(--logo-green);background:0 0}.check{align-items:center;gap:.4rem;display:flex}.row{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem;display:grid}fieldset{border:1px solid var(--line);gap:.75rem;display:grid}legend{font-family:var(--title);color:#000;font-weight:700}.actions{justify-content:flex-end;gap:.5rem;display:flex}.note{border-left:4px solid var(--logo-green);background:var(--pale-green);padding:.5rem .75rem}.alert,.error{border-left:4px solid var(--dark-green);background:var(--pale-green);color:#000;padding:.5rem .75rem;font-weight:700}.overdue{color:#000;font-weight:700}.empty{color:#000;padding:.5rem 0}.page{max-width:60rem;margin:0 auto;padding:1rem}.narrow{max-width:22rem}.page h1{font-family:var(--title);color:var(--dark-green)}.bar{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.bar h1{margin-right:auto}table{border-collapse:collapse;width:100%;margin:1rem 0}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.4rem}.events{font-family:ui-monospace,monospace;font-size:.9rem}.addtask{grid-template-columns:1fr;gap:.5rem;margin-bottom:10px;display:grid}@media (width>=40rem){.addtask{grid-template-columns:3fr 1fr 1fr 2fr auto}.panel .addtask{grid-template-columns:3fr 1fr 1fr auto}}.tasklist h3{font-family:var(--title);color:#000;margin:1rem 0 .25rem;font-size:12pt}.tasks{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.task{border-bottom:1px solid var(--line);align-items:flex-start;gap:.6rem;padding:.4rem .5rem;display:flex}.task input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--logo-green);margin-top:.2rem}.task-body{flex:1;display:grid}.task-meta{color:#000}.task.done .task-body>span:first-child{color:#000;text-decoration:line-through}.remove{color:#000!important}.overlay{z-index:10;background:#0006;place-items:start center;padding:1rem;display:grid;position:fixed;inset:0;overflow-y:auto}.panel{box-sizing:border-box;background:#fff;width:100%;max-width:40rem;padding:0 1.25rem 1rem}.panel h2{margin:0 -1.25rem .75rem}.trip-tasks{margin-top:1rem}.trip-tasks h3{background:var(--dark-green);color:#fff;font-family:var(--title);margin:0 0 .5rem;padding:3px 10px;font-size:12pt;font-weight:700}.docs .row{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr))}.adddoc{border-top:1px dashed var(--line);margin-top:.75rem;padding-top:.75rem}.adddoc>summary{cursor:pointer;color:var(--dark-green);font-weight:700}.stops{gap:4px;margin:0;padding:0;list-style:none;display:grid}.stops li{align-items:center;gap:8px;display:flex}.stops .n{min-width:1.5rem;font-weight:700}.allergy-summary{background:var(--pale-green);border-left:4px solid var(--logo-green);margin-bottom:.75rem;padding:.6rem .8rem}.allergy-summary strong:first-child{font-family:var(--title);color:#000;font-size:12pt}.allergy-summary ul,.allergy-summary p{margin:.3rem 0}.traveller-form{flex:1;gap:.75rem;display:grid}.allergy label.inline{align-items:center;gap:.35rem;margin-right:1rem;display:inline-flex}
