:root{color-scheme:light;--paper:#f3f0e8;--card:#fffdf7;--ink:#333d36;--muted:#626b61;--rule:#d6d7c9;--sage:#dce2d2;--accent:#405b4a;font-family:Georgia,'Times New Roman',serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;padding-bottom:env(safe-area-inset-bottom)}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;background:transparent;border:1px solid var(--rule);border-radius:5px;padding:10px 14px;min-height:44px}button:hover{background:var(--sage)}button:disabled{opacity:.5;cursor:wait}a{color:var(--accent)}:focus-visible{outline:3px solid #9b683e;outline-offset:3px}header{display:flex;align-items:center;gap:20px;padding:18px max(20px,calc((100vw - 1080px)/2));border-bottom:1px solid var(--rule);background:var(--paper)}.brand{font-size:28px;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand span{display:block;font:9px ui-monospace,monospace;letter-spacing:3px;margin-top:3px}#connection{margin-left:auto;font:11px ui-monospace,monospace;color:var(--muted)}nav{display:flex;overflow:auto;gap:6px;padding:10px 20px;max-width:1120px;margin:auto}nav button{border:0;white-space:nowrap;font:12px ui-monospace,monospace}nav button[aria-current=page]{background:var(--ink);color:var(--card)}main{max-width:1080px;margin:20px auto 80px;padding:0 20px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:22px}.toolbar h1{font-size:24px;font-weight:normal;margin:0}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.day-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:28px}.date-card{background:var(--card);border:1px solid var(--rule);box-shadow:2px 5px 0 #deded2;text-align:center;padding:28px;margin-bottom:24px}.date-card .month{font:12px ui-monospace,monospace;letter-spacing:4px;text-transform:uppercase}.date-number{font-size:110px;line-height:1.1}.weekday{font-style:italic;font-size:20px}.stamp{display:inline-block;border:2px solid #8d624c;color:#79533e;border-radius:50%;padding:12px;margin:12px 6px 0;transform:rotate(-6deg);font:12px ui-monospace,monospace}.card{background:var(--card);border:1px solid var(--rule);padding:18px;margin:12px 0;overflow-wrap:anywhere}.card p{white-space:pre-wrap;line-height:1.6;margin:8px 0}.card h2,h2{font-size:18px;font-weight:normal;margin:12px 0}.card h3{font-size:17px;margin:0 0 12px;font-weight:normal}.card .actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.actions button{font:11px ui-monospace,monospace;padding:6px 9px;min-height:38px}.label,small{font:11px ui-monospace,monospace;color:var(--muted);line-height:1.5}.empty{padding:25px 0;color:var(--muted);font-style:italic;line-height:1.6}.primary{background:var(--ink);color:var(--card);border-color:var(--ink)}.primary:hover{background:var(--accent)}input,textarea,select{background:var(--card);border:1px solid var(--rule);padding:11px;border-radius:4px;min-height:44px;max-width:100%}textarea{width:100%;min-height:130px;line-height:1.65;resize:vertical}label{display:block;font-size:14px;margin:15px 0 5px}label input:not([type=checkbox]),label textarea,label select{display:block;width:100%;margin-top:6px}input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--accent)}.done{text-decoration:line-through;color:var(--muted)}.photo{max-width:100%;max-height:440px;object-fit:contain;display:block;margin:12px auto}.pinned{background:#e8ebdb}.week{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.week button{text-align:left;width:100%;background:var(--card);min-height:150px}.week strong{display:block;font-size:36px;margin:8px 0}.week small{display:block}.error{color:#8a352b}.hint{padding:12px;background:#e8ebdb;font-size:14px;line-height:1.6}.map{width:100%;height:240px;background:#e3e7db;border:1px solid var(--rule)}.map path{fill:none;stroke:#a5af9b;stroke-width:.7}.map circle{fill:#985a3d;stroke:white;stroke-width:1.5}dialog{width:min(600px,calc(100vw - 24px));max-height:90dvh;border:1px solid var(--rule);border-radius:8px;background:var(--paper);padding:24px}dialog::backdrop{background:#25362c70}dialog h2{font-size:25px}dialog footer{position:sticky;bottom:-24px;background:var(--paper);padding:18px 0 4px;display:flex;justify-content:flex-end;gap:10px}#notice{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:calc(100vw - 24px);background:var(--ink);color:white;padding:14px 20px;border-radius:5px;z-index:5;font:13px ui-monospace,monospace}#notice:empty{display:none}.search{width:100%}.metric{font-size:36px;display:block}.section-line{display:flex;gap:10px;align-items:baseline;margin:12px 0}.section-line input{flex-shrink:0}.break{white-space:pre-wrap}.danger{color:#8a352b}dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px}dd{margin:0}summary{cursor:pointer;padding:12px 0} @media(max-width:650px){header{padding:12px 16px;gap:10px}#connection{font-size:10px;max-width:105px}.day-grid{grid-template-columns:1fr;gap:10px}main{margin-top:12px;padding:0 16px}.date-card{padding:20px}.date-number{font-size:95px}nav{padding:8px}.toolbar{gap:8px}.toolbar h1{font-size:21px}dialog{padding:18px}.week{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{header,nav,.toolbar button,.actions,#notice{display:none}.day-grid{display:block}.card,.date-card{break-inside:avoid}body{background:white}}
.styled-card {background:color-mix(in srgb, var(--paper) 16%, #fffdf5);color:var(--card-ink);font-family:var(--card-font)}
.styled-card[draggable=true] {cursor:grab}
#rich-writer {min-height:45vh;max-height:65vh;overflow:auto;border:1px solid #b5b4a9;border-radius:8px;padding:1.2rem;white-space:pre-wrap;font:1.1rem/1.65 Georgia,serif;background:#fffdf5}
.rich-bold {font-weight:700}.rich-italic {font-style:italic}.rich-under {text-decoration:underline}.rich-strike {text-decoration:line-through}.rich-under.rich-strike {text-decoration:underline line-through}
#quick-results {display:flex;gap:.5rem;flex-wrap:wrap}
pre {white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem}
@media print {body{background:white}header,nav,.actions,.row button,#notice,aside,button,dialog {display:none!important}main{max-width:190mm;margin:0}.day-grid{display:block}.card{break-inside:avoid;box-shadow:none}textarea{border:0;resize:none} }
.vocabulary {display:flex;flex-wrap:wrap;gap:.3rem;margin-block:.7rem}.vocabulary p{width:100%;margin:.4rem 0}.vocabulary button{font-size:.78rem;padding:.35rem .55rem}
.day-grid {grid-template-columns:minmax(0,1fr) minmax(230px,.48fr);grid-template-areas:'main right' 'left right'}
.day-grid>.day-main{grid-area:main}.day-grid>aside:not(.left-pinboard){grid-area:right}.left-pinboard{grid-area:left}
.stamp .photo{max-height:90px;width:auto;max-width:100%;margin:.3rem auto}
@media(min-width:1350px){main{max-width:1600px}.day-grid{grid-template-columns:minmax(200px,.4fr) minmax(0,1fr) minmax(220px,.4fr);grid-template-areas:'left main right'}}
@media(max-width:700px){.day-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:'main' 'left' 'right'}}
@media print{.left-pinboard{display:none!important}.day-grid{display:block!important}}
.print-journal{display:none;white-space:pre-wrap}.business-stamp{font-size:.8rem;text-align:left;border:1px solid var(--rule);padding:0 .6rem;margin:.4rem 0}.business-stamp summary{padding:.6rem 0}
@media print{.print-journal{display:block}#journal{display:none}}
[hidden]{display:none!important}
body:has(.day-main):not(:has(.day-grid>aside:not([hidden]))) .day-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:'main';max-width:760px;margin-inline:auto}
nav{justify-content:center}nav button{flex:0 1 140px}
@media(max-width:700px){nav{gap:2px}nav button{padding-inline:10px}}
