:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#173f35;background:#f7f8f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button{color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:236px 1fr}.sidebar{background:#fff;border-right:1px solid #dde2d8;padding:34px 20px 24px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{border:0;background:transparent;display:flex;align-items:center;gap:11px;padding:0;font-size:26px;cursor:pointer}.brand b{color:#b7db72}.brand-mark{display:grid;place-items:center;width:38px;height:42px;color:#dff5a8;background:#173f35;border-radius:11px;font-weight:800}nav{display:grid;gap:9px;margin-top:55px}nav button{border:0;background:transparent;text-align:left;padding:15px 16px;border-radius:11px;cursor:pointer;display:flex;align-items:center;gap:15px}nav button.active{background:#eaf0e2;font-weight:700}.icon{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid #dce5d3;border-radius:10px}.account{margin-top:auto;padding-top:25px;border-top:1px solid #dfe4da;display:flex;align-items:center;gap:12px}.account>span{width:40px;height:40px;display:grid;place-items:center;background:#eaf0e2;border-radius:50%;font-weight:700}.account div{display:grid;gap:3px}.account small{color:#79867e}main{min-width:0;padding:30px 44px 0;max-width:1360px;width:100%;margin:0 auto}.eyebrow{display:flex;justify-content:space-between;align-items:center;min-height:58px;border-bottom:1px solid #dde2d8;font-size:11px;letter-spacing:.24em;font-weight:700;color:#728078}.eyebrow em,.pill{font-style:normal;letter-spacing:normal;font-weight:500;border:1px solid #dbe2d7;background:#fff;border-radius:30px;padding:9px 14px;color:#173f35}.header-actions{display:flex;align-items:center;gap:10px}.language-picker{display:flex;grid-template-columns:none;align-items:center;gap:7px;min-width:165px;padding:5px 8px 5px 11px;border:1px solid #dbe2d7;border-radius:30px;background:#fff;letter-spacing:normal}.language-picker select{padding:4px 26px 4px 4px;border:0;background-color:transparent;font-size:12px;font-weight:700}.page-title{display:flex;justify-content:space-between;align-items:center;padding:38px 0 30px}h1{margin:0;font-size:clamp(32px,3vw,44px);letter-spacing:-.045em}.page-title p,p{color:#74817b;line-height:1.6}.hero-grid,.lower-grid,.room-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:22px}.hero-card,.join-card,.steps article,.vehicle-card,.privacy-card,.panel{border:1px solid #dce2d8;border-radius:16px;background:#fff}.hero-card{min-height:330px;background:#1e5143;color:#fff;padding:34px;position:relative;overflow:hidden}.hero-card small{color:#dbf59c;letter-spacing:.2em;font-weight:800}.hero-card h2{font-size:36px;line-height:1.15;margin:29px 0 16px}.hero-card p{color:#d4e2dc;max-width:390px}.road{position:absolute;right:35px;inset-block:-20px;width:180px;border-inline:1px solid #477367;transform:rotate(-11deg)}.road:after{content:"";position:absolute;left:50%;height:100%;border-left:2px dashed #5c8170}.road i{position:absolute;z-index:2;color:#9eb88b;font-size:45px;font-style:normal}.road i:first-child{top:170px;left:20px}.road i:last-child{top:90px;right:5px}.primary,.outline{border-radius:10px;min-height:47px;padding:0 20px;border:1px solid transparent;font-weight:700;cursor:pointer}.primary{background:#dff5a8;color:#173f35}.primary:disabled{opacity:.45;cursor:not-allowed}.outline{background:#fff;border-color:#d8dfd4}.outline:disabled{opacity:.6}.join-card{padding:30px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.join-card h3{font-size:21px;margin:22px 0 0}.join-card .outline{width:100%;margin:28px 0 35px}.join-card small{color:#78827c}.section-heading,.row{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading{margin:30px 0 16px}.section-heading h3{margin:0}.section-heading small{letter-spacing:.22em;font-weight:700;color:#77837d}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.steps article{padding:23px}.steps article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid #d6dfcf;color:#73935f}.steps h4{margin-bottom:0}.steps p{font-size:14px}.lower-grid{margin-top:24px}.vehicle-card,.privacy-card{padding:25px}.vehicle{display:flex;gap:20px;align-items:center}.vehicle>.icon{width:72px;height:72px;background:#f1f4ed}.vehicle h3{margin:0}.vehicle p{margin:8px 0}.vehicle code{background:#f4f5f2;border-left:5px solid #5e79ad;padding:7px 11px}.vehicle-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.vehicle-choice{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;align-items:center;min-width:0;padding:16px;border:2px solid #dce2d8;border-radius:14px;color:#173f35;background:#fff;text-align:left;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s,transform .18s}.vehicle-choice:hover{border-color:#8aa89e;transform:translateY(-1px)}.vehicle-choice.selected{border-color:#2d7562;background:#f0f8f3;box-shadow:0 0 0 4px #378b6f26,0 10px 24px #1e51431f}.vehicle-choice>.icon{width:48px;height:48px;background:#edf3ec}.vehicle-choice>span:nth-of-type(2){min-width:0;display:grid;gap:5px}.vehicle-choice strong,.vehicle-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicle-choice code{width:fit-content;padding:4px 8px;background:#f4f5f2;border-left:4px solid #5e79ad}.vehicle-choice>b{color:#23705a;font-size:22px}.vehicle-choice-number{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#fff;background:#78877f;font-weight:800}.vehicle-choice.selected .vehicle-choice-number{background:#23705a}.profile-vehicle-tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-vehicle-tabs button{display:grid;gap:4px;padding:15px;border:2px solid #d5ddd3;border-radius:12px;color:#173f35;background:#fff;text-align:left;cursor:pointer}.profile-vehicle-tabs button.selected{border-color:#2d7562;background:#f0f8f3;box-shadow:0 0 0 4px #378b6f21}.profile-vehicle-tabs span{font-weight:850}.profile-vehicle-tabs small{color:#6f7e75}.document-scanner{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:18px;border:1px dashed #94aa9c;border-radius:12px;background:#f2f8ed}.document-scanner p{margin:5px 0;font-size:14px}.document-scanner small{color:#65756c}.scan-input{display:none}.scan-review{display:grid;gap:16px;padding:18px;border:2px solid #2d7562;border-radius:12px;background:#fff}.scan-review h3{margin:0}.scan-review details{padding:12px;border:1px solid #dce2d8;border-radius:9px}.scan-review summary{cursor:pointer;font-weight:750}.scan-review pre{max-height:220px;overflow:auto;white-space:pre-wrap;font-size:12px;color:#536159}.privacy-card{background:#edf3e4}.link{padding:0;border:0;background:transparent;font-weight:700;cursor:pointer}.danger{color:#9b3737}.location{margin-top:-7px;color:#4d775c}footer{display:flex;justify-content:space-between;color:#97a09a;font-size:11px;border-top:1px solid #dfe4dc;margin-top:28px;padding:20px 0}.notice{border:1px solid #dce5d6;background:#eef4e7;border-radius:12px;padding:15px 18px;margin-bottom:22px;color:#587064}.panel{padding:28px}.panel h2{margin-top:0}.form{max-width:900px;display:grid;gap:17px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.three{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:8px;font-weight:650}input,textarea,select{width:100%;border:1px solid #d6ddd3;background:#fbfcfa;border-radius:9px;padding:12px;color:#173f35}textarea{min-height:120px;resize:vertical}.profile-form fieldset,.stage fieldset{min-width:0;margin:0;padding:22px;border:1px solid #dce2d8;border-radius:13px;display:grid;gap:16px}.profile-form legend,.stage legend{padding:0 9px;font-size:20px;font-weight:800}.profile-form fieldset>p,.stage fieldset>p{margin:-4px 0 0;font-size:14px}.boolean-grid{padding:15px;background:#f6f8f3;border-radius:11px}.circumstances{display:grid;gap:0;border:1px solid #e0e5dc;border-radius:10px;overflow:hidden}.circumstance{display:grid;grid-template-columns:54px 1fr 54px;align-items:center;gap:10px;min-height:46px;padding:7px 12px;border-bottom:1px solid #e5e9e2}.circumstance:last-child{border-bottom:0}.circumstance>span{font-size:14px;line-height:1.4}.circumstance .check{display:flex;align-items:center;gap:6px}.circumstance .check input{margin:0}.party-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.party-summary p{margin:0}.shared-profiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}.shared-profile{padding:17px;border:1px solid #dce5d6;border-radius:12px;background:#f4f8ef}.shared-profile h3,.shared-profile p{margin:0}.shared-profile span{color:#3e8054;font-size:12px;font-weight:800}.shared-profile p{margin-top:10px;font-size:14px}.connection-ready,.connection-waiting{padding:17px;border-radius:11px;font-weight:800}.connection-ready{color:#2f7148;background:#e7f4e6;border:1px solid #c9e2c8}.connection-waiting{color:#846433;background:#fff6df;border:1px solid #ead9aa}.simulation-box{display:grid;gap:9px;padding:15px;border:1px dashed #b9c7bb;border-radius:11px;background:#f8faf6}.simulation-box .outline{width:100%}.simulation-box>small{color:#6d7972}.optional-details{border:1px solid #dce2d8;border-radius:13px;overflow:hidden;background:#fbfcfa}.optional-details>summary{padding:17px 20px;cursor:pointer;font-weight:800}.optional-body{padding:4px 20px 20px;display:grid;gap:17px}.form-error{padding:11px 13px;color:#8b2d2d;background:#fff0f0;border-radius:8px}.party-fields{display:grid;gap:16px}.party-fields h3{margin:10px 0 -4px;padding-top:13px;border-top:1px solid #e0e5dc}.party-fields h3:first-child{margin-top:0;padding-top:0;border-top:0}.nested-record{display:grid;gap:14px;padding:18px;border:1px solid #e0e5dc;border-radius:11px;background:#fafbf8}.nested-record h3{margin:0}.impact-selector{display:grid;gap:10px}.impact-selector h3{margin:0}.impact-car{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:13px;border:2px solid #aebbb1;border-radius:34px 34px 20px 20px;background:#f4f7f1}.impact-car button{min-height:48px;padding:5px;border:1px solid #d3dbd1;border-radius:8px;background:#fff;font-size:11px;cursor:pointer}.impact-car button.selected{color:#fff;background:#1e5143;border-color:#1e5143}.drawing-pad{min-width:0;display:grid;gap:8px}.drawing-pad canvas{display:block;width:100%;height:auto;max-height:280px;border:1px solid #ccd6cb;border-radius:10px;background-color:#fff;background-image:linear-gradient(#edf0eb 1px,transparent 1px),linear-gradient(90deg,#edf0eb 1px,transparent 1px);background-size:24px 24px;touch-action:none;cursor:crosshair}.empty{text-align:center;color:#7d8983;padding:55px}.history-item{padding:18px 0;border-top:1px solid #e1e5de;display:flex;justify-content:space-between;gap:20px}.history-item h3{margin:0}.history-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px}.history-actions>span{width:100%;text-align:right}.history-actions .outline,.history-actions .primary{min-height:40px;padding-inline:14px}.delivery-receipt{display:inline-block;margin-top:8px;color:#2f7148;font-weight:750}.progress{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:18px;border-bottom:1px solid #d9dfd5}.progress span{padding:13px;text-align:center;color:#869089}.progress span.on{color:#173f35;border-bottom:3px solid #173f35;font-weight:800}.room-grid{grid-template-columns:minmax(300px,.85fr) minmax(420px,1.6fr);align-items:start}.room-summary{position:sticky;top:20px}.room-code{display:block;font-size:34px;letter-spacing:.2em;background:#f0f4eb;padding:13px 18px;border-radius:10px;text-align:center}.participant{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;border-top:1px solid #e1e5de;padding:14px 0}.participant>b{width:34px;height:34px;border-radius:50%;background:#edf3e4;display:grid;place-items:center}.participant div{display:grid}.participant small{color:#7e8983}.participant em{font-style:normal;color:#a06d3d;font-size:12px}.participant em.present{color:#3e8054}.fine{font-size:12px}.stage{display:grid;gap:17px}.check{display:grid;grid-template-columns:auto 1fr;align-items:start;font-weight:500;line-height:1.5}.check input{width:18px;margin-top:3px}.review{background:#f6f8f3;border:1px solid #e0e5dc;border-radius:12px;padding:20px}.review hr{border:0;border-top:1px solid #dde3da}.modal-backdrop{position:fixed;inset:0;z-index:20;background:#0f272175;display:grid;place-items:center;padding:20px}.modal{width:min(520px,100%);background:#fff;border-radius:18px;padding:32px;position:relative;display:grid;gap:16px;box-shadow:0 24px 70px #05191333}.modal-close{position:absolute;right:15px;top:12px;border:0;background:transparent;font-size:25px;cursor:pointer}.toast{position:fixed;right:22px;bottom:22px;z-index:30;color:#fff;background:#173f35;padding:14px 18px;border-radius:10px;box-shadow:0 10px 30px #173f3540}@media(max-width:900px){.app-shell{display:block}.sidebar{position:sticky;z-index:10;height:auto;flex-direction:row;align-items:center;padding:12px 18px;border-right:0;border-bottom:1px solid #dde2d8}.brand{font-size:20px}.brand-mark{width:32px;height:34px}.sidebar nav{margin:0 0 0 auto;display:flex}.sidebar nav button{padding:10px}.sidebar nav .icon{display:none}.account{display:none}main{padding:16px 20px 0}.hero-grid,.lower-grid,.room-grid,.steps{grid-template-columns:1fr}.room-summary{position:static}.road{opacity:.35}}@media(max-width:560px){.brand strong,.brand b{display:none}.sidebar nav button{font-size:13px}.eyebrow>span,.eyebrow em{display:none}.eyebrow{justify-content:flex-end}.page-title{align-items:flex-start;gap:15px}.page-title .pill{display:none}.hero-card{min-height:360px;padding:25px}.hero-card h2{font-size:32px}.form-grid,.form-grid.three,.party-summary,.shared-profiles,.vehicle-choice-grid{grid-template-columns:1fr}.room-grid{display:block}.room-summary{margin-bottom:18px}.stage .row{align-items:stretch;flex-direction:column}.stage .row button{width:100%}footer{flex-direction:column;gap:8px}.profile-form fieldset,.stage fieldset{padding:16px}.circumstance{grid-template-columns:42px 1fr 42px;padding-inline:7px}.optional-body{padding-inline:14px}.history-item{align-items:stretch;flex-direction:column}.history-actions{justify-content:stretch}.history-actions>span{text-align:left}.history-actions button{flex:1}.document-scanner{grid-template-columns:1fr}.document-scanner button{width:100%}}
