:root{color-scheme:light;--ink:#18233b;--accent:#356b9a;--light:#eaf2f8;--paper:#f6f7fb;--line:#dbe2eb;--muted:#52637b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:1.7}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button,.file-button{cursor:pointer;min-height:44px;border-radius:9px;padding:9px 16px;font-weight:650;border:1px solid transparent;line-height:1.5}button:disabled{cursor:not-allowed;opacity:.45}.primary{background:var(--accent);color:white}.secondary,.file-button{background:white;border-color:#bbcbd9;color:#244f75}.quiet{background:transparent;border-color:var(--line);color:var(--muted)}button:hover:not(:disabled),.file-button:hover{filter:brightness(.96)}:focus-visible{outline:3px solid #e69c40;outline-offset:3px}input,textarea{width:100%;background:white;border:1px solid #aebfce;border-radius:8px;padding:11px 12px;min-width:0;color:var(--ink)}textarea{resize:vertical}label{display:block;font-size:14px;font-weight:650;margin:17px 0 6px}h1,h2,h3,p{margin-top:0}h1{font-size:23px;line-height:1.4;margin:0}h1 span{font-size:14px;color:var(--muted);font-weight:500}h2{font-size:23px;line-height:1.5;margin-bottom:10px}h3{font-size:18px;margin:0;overflow-wrap:anywhere}.site-head,main,footer{max-width:1120px;margin:auto}.site-head{padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px}.eyebrow{font-size:12px;letter-spacing:.06em;color:var(--muted);margin:0 0 4px}.version{font-size:12px;white-space:nowrap;border:1px solid var(--line);padding:4px 9px;border-radius:20px}main{padding:0 30px}.intro{padding:24px 0 27px}.intro h2{font-size:32px;letter-spacing:-.035em}.intro p{color:var(--muted);margin-bottom:14px}.pills{display:flex;gap:8px;flex-wrap:wrap}.pills span{font-size:12px;background:var(--light);padding:3px 10px;border-radius:20px;color:#285479}.panel{padding:28px;background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:22px;box-shadow:0 3px 12px #18233b03}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-head button{flex-shrink:0}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.toolbar #clear{margin-left:auto}.note,.muted{font-size:14px;color:var(--muted);font-weight:400}.note{margin-top:14px;margin-bottom:0}.empty{padding:24px 8px;text-align:center;color:var(--muted);background:#f8fafc;border:1px dashed var(--line);border-radius:9px;margin:20px 0}.entry-list{display:grid;gap:12px;margin-top:22px}.entry-card{padding:18px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:9px}.entry-card.is-private{border-left-color:#aab3c1;background:#f8f9fb}.entry-top{display:flex;justify-content:space-between;align-items:start;gap:16px}.entry-details{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);font-size:14px;margin:8px 0}.entry-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.entry-actions button{font-size:14px;min-height:40px;padding:7px 12px}.check{display:flex;align-items:center;gap:8px;font-size:14px;margin:0;white-space:nowrap}.check input{width:20px;height:20px;accent-color:var(--accent);margin:0}.badge{font-size:12px;color:#356b9a}.preview-head{display:flex;gap:15px;justify-content:space-between;margin-top:25px;align-items:baseline}.preview-head span{white-space:nowrap;font-size:14px;color:var(--muted)}.preview-text{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;padding:22px;background:#f4f8fc;border-radius:10px;max-height:520px;overflow:auto;line-height:1.8}.download-row{display:flex;gap:10px;flex-wrap:wrap}.compact h2,.limitations h2{font-size:18px}.file-button{display:inline-flex;margin:0;align-items:center;font-size:16px;position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-button:focus-within{outline:3px solid #e69c40;outline-offset:3px}.message{margin:0 0 18px;font-size:14px;overflow-wrap:anywhere}.error{color:#a12525;background:#fff2f1;border-radius:8px;padding:10px 14px}.error:empty{display:none}.limitations{font-size:14px;color:var(--muted);padding:15px 4px}.limitations p{margin-bottom:12px}footer{padding:24px 30px 36px;display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted)}footer nav{display:flex;gap:20px;flex-wrap:wrap}a{color:#285880;text-underline-offset:3px}dialog{border:1px solid var(--line);border-radius:14px;padding:0;color:var(--ink);width:min(640px,calc(100vw - 30px));max-height:90vh;box-shadow:0 25px 90px #18233b30}dialog::backdrop{background:#162a4266}.dialog-inner{padding:28px}.dates{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}#entry-include{flex-shrink:0}#entry-dialog .check{margin-top:22px}#entry-error{margin-top:12px;margin-bottom:0}[hidden]{display:none!important}@media(max-width:700px){.site-head{padding:20px}.version{display:none}main{padding:0 16px}.intro{padding:16px 4px 24px}.intro h2{font-size:27px}.panel{padding:20px}.section-head{align-items:start;flex-wrap:wrap;gap:10px}.section-head h2{font-size:21px}.entry-top{flex-wrap:wrap;gap:10px}footer{padding:20px;align-items:start;flex-direction:column;gap:12px}.dialog-inner{padding:22px}.dates{gap:12px}}@media(max-width:410px){h1{font-size:20px}h1 span{display:block}.brand img{width:40px;height:40px}.eyebrow{font-size:12px}.toolbar{gap:9px}.toolbar #clear{margin-left:0}.dates{grid-template-columns:1fr}.dates label{margin-top:10px}.preview-text{padding:15px}}

.csv-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.csv-help{font-size:14px;color:var(--muted);margin:12px 0 20px}.csv-help summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.csv-help p{margin:12px 0 8px}.csv-help code{display:block;background:#f4f8fc;padding:10px;border-radius:6px;overflow-wrap:anywhere}.csv-help dl{margin:12px 0}.csv-help dl div{display:grid;grid-template-columns:100px 1fr;gap:10px;margin:6px 0}.csv-help dt{font-weight:650;color:var(--ink)}.csv-help dd{margin:0}#csv-dialog{width:min(740px,calc(100vw - 30px))}#csv-dialog .preview-text{max-height:45vh}#csv-dialog .dialog-actions{flex-wrap:wrap}
