:root{color-scheme:light;--paper: #f5efe3;--paper-deep: #ece2d1;--paper-light: #fffaf1;--ink: #302820;--muted: #73685a;--clay: #c86542;--clay-deep: #a94d31;--olive: #59624a;--line: #d7c8b4;--butter: #f4df9b;--shadow: rgba(74, 48, 31, .16);font-family:DM Sans,Avenir Next,Avenir,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{position:relative;isolation:isolate;min-width:320px;margin:0;background:radial-gradient(circle at 16% 4%,rgba(255,255,255,.7),transparent 29rem),radial-gradient(circle at 96% 37%,rgba(211,186,138,.18),transparent 25rem),var(--paper)}body:before{position:fixed;z-index:-1;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(rgba(74,48,31,.34) .45px,transparent .6px);background-size:7px 7px;content:""}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,[role=button]:focus-visible,a:focus-visible{outline:3px solid var(--clay);outline-offset:4px}::selection{color:var(--paper-light);background:var(--clay)}.skip-link{position:fixed;z-index:10;top:1rem;left:1rem;padding:.7rem 1rem;color:var(--paper-light);background:var(--ink);border-radius:.6rem;transform:translateY(-180%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}.shell{width:min(1240px,calc(100% - 56px));margin:0 auto;padding:27px 0 104px}.site-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:19px;border-bottom:1px solid var(--line)}.wordmark{color:var(--ink);font-size:1.75rem;font-weight:900;letter-spacing:-.095em;text-decoration:none}.local-note{display:flex;align-items:center;gap:7px;margin:0;color:var(--olive);font-size:.76rem;font-weight:750}.local-note svg{width:13px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2}.landing{margin-top:clamp(54px,8vw,118px)}.landing-grid{display:grid;grid-template-columns:minmax(290px,.85fr) minmax(420px,1.15fr);gap:clamp(48px,8vw,128px);align-items:center;max-width:1110px;margin:0 auto}.story{display:grid;justify-items:start;align-content:center;min-height:500px}.story>p,.artifact strong,.status-kicker,.error-panel h1,.result h1{font-family:Georgia,Times New Roman,serif}.story>p{max-width:13ch;margin:0;font-size:clamp(1.65rem,3.2vw,2.85rem);font-weight:700;letter-spacing:-.072em;line-height:.95;text-wrap:balance}.artifact{display:flex;align-items:center;gap:15px;margin:17px 0 22px;padding:12px 16px 12px 12px;background:#fffaf1b8;border:1px solid var(--line);box-shadow:3px 4px #70523614}.paper-artifact{border-radius:.42rem 1.15rem .62rem .9rem}.sheet-artifact{border-radius:1rem .44rem .94rem .6rem}.artifact strong{font-size:clamp(2.15rem,4vw,4.15rem);font-weight:700;letter-spacing:-.09em;line-height:.9}.paper-mark{width:45px;color:var(--clay)}.sheet-mark{width:57px;color:var(--olive)}.paper-mark svg,.sheet-mark svg,.drop-doc svg{display:block;width:100%;height:auto;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.7}.flow-arrow{display:flex;align-items:center;gap:9px;width:100%;margin:3px 0 26px;color:var(--clay)}.flow-arrow span{width:76px;height:1px;background:currentColor}.flow-arrow svg{width:31px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2}.story-end{margin-top:27px!important;color:var(--clay)!important}.story-end span{color:var(--ink)}.upload-column{text-align:center}.drop-zone{position:relative;display:grid;min-height:500px;padding:38px;overflow:hidden;color:var(--paper-light);background:var(--clay);border:1px solid rgba(110,50,31,.35);border-radius:1.75rem 1.25rem 1.5rem 1rem;box-shadow:12px 15px #77482b26,0 20px 36px var(--shadow);align-content:center;justify-items:center;gap:18px;transition:transform .22s cubic-bezier(.2,.9,.2,1),background .22s ease,box-shadow .22s ease}.drop-zone:before,.drop-zone:after{position:absolute;pointer-events:none;content:""}.drop-zone:before{inset:0;opacity:.2;background-image:radial-gradient(rgba(255,250,241,.8) .7px,transparent .8px);background-size:8px 8px}.drop-zone:after{right:-42px;bottom:-61px;width:204px;height:204px;border:1px solid rgba(255,250,241,.72);border-radius:50%}.drop-zone:hover,.drop-zone.is-dragging{background:var(--clay-deep);box-shadow:14px 18px #6331202e,0 24px 40px #4a301f3b;transform:translateY(-5px) rotate(-.25deg)}.drop-zone:active{transform:translateY(-1px) scale(.99)}.drop-zone input{position:absolute;z-index:2;inset:0;width:100%;cursor:pointer;opacity:0}.drop-overline{position:relative;z-index:1;max-width:30ch;margin:0 0 12px;font-size:.71rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.drop-title{position:relative;z-index:1;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.65rem,7vw,6.5rem);font-weight:700;letter-spacing:-.1em;line-height:.8;text-wrap:balance}.drop-doc{position:relative;z-index:1;width:53px;margin-top:12px;color:var(--paper-light)}.drop-hint,.drop-active{position:relative;z-index:1;margin:0;font-size:.95rem;font-weight:700}.drop-active{display:none;color:#fff1c9;font-size:1.07rem}.drop-zone.is-dragging .drop-hint{display:none}.drop-zone.is-dragging .drop-active{display:block}.privacy{max-width:35ch;margin:19px auto 0;color:var(--olive);font-size:.87rem;font-weight:680;line-height:1.48}.privacy:before{display:inline-block;width:8px;height:8px;margin:0 7px 1px 0;background:var(--olive);border-radius:50%;content:""}.text-button{padding:9px 0;color:var(--ink);appearance:none;background:none;border:0;font-weight:750;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;transition:color .2s ease,transform .2s ease}.text-button:hover{color:var(--clay-deep);transform:translate(2px)}.text-button:active{transform:translate(1px) scale(.98)}.text-button span{color:var(--clay)}.upload-column>.text-button{margin-top:19px}.state-panel{max-width:620px;margin:18vh auto 0;padding:35px;text-align:center;background:#fffaf1a3;border:1px solid var(--line);border-radius:1.2rem .8rem 1.4rem .9rem;box-shadow:8px 10px #70523614;animation:arrive .36s cubic-bezier(.2,.9,.2,1) both}.status-kicker,.error-panel h1{margin:0;font-size:clamp(3rem,7vw,5.7rem);font-weight:700;letter-spacing:-.09em;line-height:.86;text-wrap:balance}.status-subtext{margin:24px 0 0;color:var(--muted);font-weight:650}.loading-line{width:100%;height:7px;margin:31px 0;overflow:hidden;background:var(--paper-deep);border-radius:99px}.loading-line:after{display:block;width:34%;height:100%;background:var(--clay);border-radius:inherit;content:"";animation:loading 1.05s infinite cubic-bezier(.55,0,.25,1)}.result{padding-top:70px;animation:arrive .42s cubic-bezier(.2,.9,.2,1) both}.result-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding-bottom:29px;border-bottom:1px solid var(--line)}.result h1{max-width:11ch;margin:0;font-size:clamp(3.25rem,7vw,6.8rem);font-weight:700;letter-spacing:-.1em;line-height:.82;text-wrap:balance}.found-message{margin:19px 0 0;color:var(--olive);font-size:1.07rem;font-weight:800}.metadata{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 28px;border-bottom:1px solid var(--line)}.metadata div{display:grid;min-height:91px;padding:18px 18px 18px 0;align-content:center;gap:7px;border-right:1px solid var(--line)}.metadata div+div{padding-left:18px}.metadata div:last-child{border-right:0}.metadata span{color:var(--muted);font-size:.67rem;font-weight:850;letter-spacing:.075em}.metadata strong{font-size:1.02rem;font-weight:760;letter-spacing:-.035em;overflow-wrap:anywhere}.warning{margin:0 0 19px;padding:14px 16px;color:var(--ink);background:var(--butter);border:1px solid #d4af51;border-radius:.65rem .45rem .7rem .42rem;font-size:.92rem;font-weight:700}.table-wrap{overflow-x:auto;background:var(--paper-light);border:1px solid var(--line);border-radius:.95rem .62rem .9rem .5rem;box-shadow:7px 9px #70523614}.table-wrap::-webkit-scrollbar{height:9px}.table-wrap::-webkit-scrollbar-thumb{background:var(--clay);border-radius:99px}table{width:100%;min-width:700px;border-collapse:collapse;font-variant-numeric:tabular-nums}th{padding:13px 14px;color:var(--paper-light);background:var(--ink);font-size:.68rem;font-weight:850;letter-spacing:.08em;text-align:left;text-transform:uppercase}th,td{padding:0;border-bottom:1px solid var(--line)}th:not(:last-child),td:not(:last-child){border-right:1px solid var(--line)}tr:last-child td{border-bottom:0}td input{width:100%;min-width:104px;padding:15px 14px;color:var(--ink);background:transparent;border:0;border-radius:0}.delete-col{width:46px;text-align:center}.delete-row{width:100%;height:48px;color:var(--muted);background:var(--paper-light);border:0;font-size:1.45rem;line-height:1;transition:color .2s ease,background .2s ease,transform .2s ease}.delete-row:hover{color:var(--clay-deep);background:#fbede7}.delete-row:active{transform:scale(.96)}td input:focus{background:var(--paper-deep);outline:2px solid var(--clay);outline-offset:-2px}.table-actions{margin:12px 0 56px}.add-row{padding:8px 0;color:var(--clay-deep);appearance:none;background:transparent;border:0;font-weight:800;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;transition:transform .2s ease}.add-row:hover{transform:translate(2px)}.add-row:active{transform:translate(1px) scale(.98)}.columns{padding-top:22px;border-top:1px solid var(--line)}.columns h2{margin:0 0 16px;font-family:Georgia,Times New Roman,serif;font-size:1.42rem;letter-spacing:-.055em}.column-options{display:flex;flex-wrap:wrap;gap:8px}.column-option{display:inline-flex;align-items:center;gap:8px;padding:9px 11px;color:var(--ink);background:#fffaf18c;border:1px solid var(--line);border-radius:.55rem .3rem .5rem .35rem;font-size:.85rem;font-weight:750;transition:background .2s ease,color .2s ease,transform .2s ease}.column-option:hover{transform:translateY(-2px)}.column-option:has(input:checked){color:var(--paper-light);background:var(--ink);border-color:var(--ink)}.column-option input{width:14px;height:14px;margin:0;accent-color:var(--clay)}.export-area{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px 32px;margin:68px 0 0;padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.export-area>p:first-child{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:700;letter-spacing:-.055em}.export-buttons{display:flex;gap:9px}.export-button{min-width:161px;padding:14px 16px;color:var(--ink);background:var(--paper-light);border:1px solid var(--ink);border-radius:.72rem .44rem .65rem .38rem;font-weight:850;letter-spacing:-.03em;transition:transform .2s ease,color .2s ease,background .2s ease,box-shadow .2s ease}.export-button:hover:not(:disabled){background:var(--paper-deep);box-shadow:3px 4px #4a301f1f;transform:translateY(-3px)}.export-button:active:not(:disabled){transform:translateY(0) scale(.98)}.export-button.accent{color:var(--paper-light);background:var(--clay);border-color:var(--clay)}.export-button.accent:hover:not(:disabled){color:var(--paper-light);background:var(--clay-deep);border-color:var(--clay-deep)}.export-button:disabled{cursor:not-allowed;opacity:.5}.done-word{grid-column:1 / -1;margin:0;color:var(--olive);font-size:1.03rem;font-weight:850;letter-spacing:-.04em}.error-panel p{max-width:340px;margin:22px auto 30px;font-size:1.13rem;font-weight:670;line-height:1.4}.error-panel .export-button{min-width:145px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes arrive{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(400%)}}@media(max-width:780px){.shell{width:min(100% - 32px,1240px);padding-top:20px}.wordmark{font-size:1.48rem}.local-note{font-size:.68rem}.landing{margin-top:52px}.landing-grid{grid-template-columns:1fr;gap:40px}.story{min-height:0;max-width:510px;margin:0 auto}.story>p{font-size:clamp(1.7rem,8vw,2.5rem)}.artifact{margin:14px 0 20px}.artifact strong{font-size:clamp(2.1rem,10vw,3.4rem)}.upload-column{width:100%;max-width:600px;margin:0 auto}.drop-zone{min-height:390px}.drop-title{font-size:clamp(4rem,17vw,6rem)}.result{padding-top:44px}.result-topline{display:block}.result-topline .text-button{margin-top:21px}.metadata{grid-template-columns:repeat(2,1fr)}.metadata div:nth-child(2){border-right:0}.metadata div:nth-child(n+3){border-top:1px solid var(--line)}.metadata div:last-child:nth-child(odd){grid-column:1 / -1;border-right:0}.export-area{grid-template-columns:1fr}.export-buttons{width:100%}.export-button{flex:1}.done-word{grid-column:auto}}@media(max-width:480px){.shell{width:min(100% - 28px,1240px)}.site-header{padding-bottom:15px}.local-note{max-width:126px;text-align:right}.landing{margin-top:39px}.flow-arrow{margin:0 0 20px}.drop-zone{min-height:360px;padding:28px 20px;box-shadow:7px 9px #77482b24,0 16px 28px var(--shadow)}.drop-overline{margin-bottom:7px}.drop-title{font-size:4.15rem}.privacy{margin-top:15px}.state-panel{padding:28px 21px}.result h1{font-size:3.2rem}.metadata div{min-height:80px}.export-buttons{display:grid;grid-template-columns:1fr}.export-button{width:100%}.column-option{padding:8px 9px}}@media(min-width:781px)and (max-height:1050px){.shell{min-height:100dvh;padding-top:18px;padding-bottom:18px;display:flex;flex-direction:column}.site-header{padding-bottom:13px}.landing{margin-top:auto;margin-bottom:auto;padding:18px 0}.landing-grid{gap:clamp(44px,7vw,92px)}.story{min-height:390px}.story>p{font-size:clamp(1.45rem,2.7vw,2.3rem)}.artifact{margin:10px 0 14px;padding:8px 12px 8px 9px}.artifact strong{font-size:clamp(1.9rem,3.5vw,3.3rem)}.flow-arrow{margin:0 0 16px}.story-end{margin-top:16px!important}.drop-zone{min-height:390px;padding:25px;gap:12px}.drop-overline{margin-bottom:5px}.drop-title{font-size:clamp(3.6rem,6.2vw,5.4rem)}.drop-doc{width:43px;margin-top:3px}.privacy{margin-top:10px;font-size:.78rem}.upload-column>.text-button{margin-top:6px}}@media(min-width:781px)and (max-height:700px){.landing{padding:10px 0}.story,.drop-zone{min-height:330px}.drop-title{font-size:clamp(3.1rem,5.6vw,4.7rem)}.artifact strong{font-size:clamp(1.65rem,3vw,2.7rem)}.story>p{font-size:1.35rem}.flow-arrow,.story-end{margin-bottom:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
