@font-face{font-family:Editorial;src:url(/assets/serif.ttf)}@font-face{font-family:Editorial;src:url(/assets/serif-italic.ttf);font-style:italic}*{box-sizing:border-box}body{color:#273a32;background:#f5f2eb;margin:0;font:14px/1.5 Arial,sans-serif}button,input,textarea{font:inherit}button,a,label.upload{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,.crop-viewport:focus-visible{outline-offset:3px;outline:2px solid #ac6349}.topbar{border-bottom:1px solid #dfded4;justify-content:space-between;align-items:center;height:91px;padding:0 4vw;display:flex}.brand{color:inherit;letter-spacing:-1.5px;align-items:center;gap:25px;font:36px Editorial,Georgia,serif;text-decoration:none;display:flex}.brand span{letter-spacing:1.4px;text-transform:uppercase;font:10px Arial,sans-serif}.edition{letter-spacing:1px;color:#6b746c;font-size:11px}.text-button{color:#657269;background:0 0;border:0;padding:10px 0;font-size:12px}.workspace{grid-template-columns:390px minmax(0,1fr);max-width:1500px;margin:0 auto;display:grid}.configuration{border-right:1px solid #dfded4;padding:38px 36px}.eyebrow{letter-spacing:1.8px;text-transform:uppercase;color:#7a8479;margin:0 0 14px;font-size:9px}.intro h1{letter-spacing:-1px;margin:0 0 19px;font:36px/1.04 Editorial,Georgia,serif}.intro h1 i{font-weight:400}.intro>p:last-child{color:#788177;max-width:280px;margin-bottom:35px;font-size:12px}fieldset{border:0;min-width:0;margin:0;padding:0}.step{border-top:1px solid #dbded4;padding:22px 0}.step-title{align-items:center;gap:12px;margin-bottom:17px;display:flex}.step-title>span{color:#a16a50;border:1px solid #d8cfc0;border-radius:50%;place-items:center;width:26px;height:26px;font-size:9px;display:grid}.step-title h2{margin:0;font-size:13px;font-weight:400}.step-title>small{color:#899083;margin-left:auto;font-size:10px}.upload{cursor:pointer;background:#efeee5;border:1px dashed #bfc6b7;border-radius:4px;padding:18px;display:block;position:relative}.upload b{justify-content:space-between;align-items:center;font-size:12px;font-weight:400;display:flex}.upload small{color:#90988c;margin-top:5px;font-size:10px;display:block}.upload input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.compact{padding:14px}.route-summary{margin-top:15px}.route-summary>strong{font:36px Editorial,Georgia,serif}.route-summary>strong small{font:12px Arial,sans-serif}.route-summary>div{color:#6e7b6f;gap:14px;font-size:10px;display:flex}.route-summary>p{color:#909688;font-size:10px}.hint{color:#8a9186;margin-top:-7px;font-size:11px}.photo-card{gap:12px;margin:12px 0 18px;display:flex}.photo-card>img{object-fit:cover;border-radius:2px;width:76px;height:87px}.photo-card>div{flex:1;min-width:0}.photo-role{letter-spacing:.6px;font-size:10px}.photo-card p{color:#92978b;margin:3px 0;font-size:10px}.quality{color:#687e69;font-size:9px}.quality.LOW{color:#a06b42}.photo-actions{flex-wrap:wrap;gap:8px;margin-top:7px;display:flex}.photo-actions button{color:#a27961;background:0 0;border:0;padding:0;font-size:9px}.field{margin:18px 0;display:block}.field>span{justify-content:space-between;margin-bottom:7px;font-size:11px;display:flex}.field small{color:#95998f;font-size:9px}.field input,.field textarea{color:#273a32;resize:vertical;background:#faf8f2;border:1px solid #d0d7c9;border-radius:3px;width:100%;padding:10px;font-size:12px}.field em{color:#9ba194;margin-top:4px;font-size:9px;font-style:normal;display:block}.privacy{color:#9b9f92;font-size:9px;line-height:1.7}.preview-area{background:#e9ebe3;min-width:0;padding:32px 46px 26px}.preview-heading{color:#7c887a;align-items:center;gap:7px;margin-bottom:22px;font-size:10px;display:flex}.preview-heading>.eyebrow{margin:0 auto 0 0}.status-dot{background:#ac866d;border-radius:50%;width:5px;height:5px}.status-dot.done{background:#537d61}.poster-stage{justify-content:center;max-width:600px;min-height:400px;margin:auto;display:flex;position:relative}.poster{width:100%;height:auto;display:block;box-shadow:0 16px 35px #273a3218}.empty-poster{aspect-ratio:.75;text-align:center;background:#f8f5ed;border:1px solid #ede9dd;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex;box-shadow:0 16px 35px #273a3210}.empty-mark{color:#d3d6c7;margin-bottom:40px;font:70px Editorial,Georgia,serif}.empty-poster p{color:#909c86;font:36px/1.15 Editorial,Georgia,serif}.empty-poster small{color:#a4ac9a;font-size:11px;line-height:1.8}.rendering .poster{opacity:.8}.render-tag{background:#f7f5efee;border-radius:30px;align-items:center;gap:9px;padding:12px 20px;font-size:11px;display:flex;position:absolute;bottom:20px;box-shadow:0 2px 15px #0001}.spinner{border:1px solid #cad1c1;border-top-color:#435e4b;border-radius:50%;width:12px;height:12px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.notice{background:#f4eee3;border-left:2px solid #a47757;max-width:600px;margin:10px auto;padding:11px 14px;font-size:11px}.notice.warning{border-color:#a7ac87}.notice.blocking{color:#86634a}.crop-list{flex-wrap:wrap;gap:8px;max-width:600px;margin:15px auto;display:flex}.crop-list button{color:#73806e;background:0 0;border:0;margin-right:14px;padding:4px 0;font-size:10px}.crop-list .needs-review{color:#a36645;text-underline-offset:4px;text-decoration:underline}.confirmation{border-top:1px solid #d3d9ca;align-items:center;gap:20px;max-width:600px;margin:28px auto 0;padding-top:20px;display:flex}.confirmation>div{flex:1}.confirmation b{font-size:11px;font-weight:400}.confirmation p{color:#919987;margin:4px 0 0;font-size:9px}.primary{color:#f4f2e9;white-space:nowrap;background:#344e3f;border:0;border-radius:3px;padding:14px 20px;font-size:11px}.preview-note{text-align:center;color:#929b86;margin-top:25px;font-size:9px}.modal-backdrop{z-index:20;background:#20382cd9;place-items:center;padding:22px;display:grid;position:fixed;inset:0;overflow:auto}.crop-dialog{background:#f7f4ec;border-radius:6px;width:620px;max-width:100%;max-height:95vh;padding:26px 32px;overflow:auto}.dialog-head{justify-content:space-between;align-items:center;display:flex}.dialog-head .eyebrow{margin:0}.icon{color:#7c867a;background:0 0;border:0;font-size:25px}.crop-dialog h2{margin:15px 0 8px;font:27px Editorial,Georgia,serif}.crop-dialog>p{color:#86907f;margin-bottom:20px;font-size:11px}.crop-viewport{width:min(100%,calc(46vh * var(--crop-ratio)));touch-action:none;cursor:grab;background:#e5e8de;max-width:100%;max-height:46vh;margin:auto;position:relative;overflow:hidden}.crop-viewport>img{object-fit:fill;-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute}.crop-guides{pointer-events:none;background:linear-gradient(90deg,#0000 33.2%,#fff2 33.2% 33.5%,#0000 33.5% 66.5%,#fff2 66.5% 66.8%,#0000 66.8%);border:1px solid #fff8;position:absolute;inset:0}.zoom{justify-content:center;align-items:center;gap:18px;margin:20px;display:flex}.zoom button{color:#657660;background:0 0;border:1px solid #d3d9ca;border-radius:50%;width:32px;height:32px}.zoom span{color:#909c85;font-size:10px}.crop-dialog>.primary{width:100%}.crop-dialog>.text-button{margin:auto;display:block}.error{color:#a45e48!important}.boot{text-align:center;padding:20vh;font:40px Georgia}.boot span{margin-top:20px;font:14px Arial;display:block}@media (width>=1300px){.poster-stage{max-width:580px}.preview-area{padding-left:80px;padding-right:80px}}@media (width<=900px){.workspace{grid-template-columns:330px minmax(0,1fr)}.configuration{padding:28px 24px}.preview-area{padding:28px 22px}.brand span{display:none}.confirmation{flex-direction:column;align-items:stretch}.edition{font-size:9px}.intro h1{font-size:31px}}@media (width<=650px){.topbar{height:72px;padding:0 20px}.brand{font-size:30px}.edition{display:none}.workspace{flex-direction:column;display:flex}.configuration{border-right:0;padding:28px 24px}.intro h1{font-size:36px}.preview-area{padding:28px 24px}.poster-stage{min-height:0}.preview-heading{flex-wrap:wrap}.preview-heading>.eyebrow{width:100%;margin-bottom:8px}.crop-dialog{padding:18px}.modal-backdrop{padding:12px}.crop-viewport{max-height:42vh}.confirmation{margin-top:24px}}.modal-backdrop{grid-template-columns:minmax(0,1fr)}.crop-dialog{min-width:0}
