*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #DCD6C8;--bg2: #D2CCBC;--bg3: #C6BFAE;--bg-card: #F2EEE4;--ink: #1A1813;--ink2: #3A362D;--ink3: #76705F;--ink4: #A29B88;--accent: #2D7D7C;--accent2: #47A1A0;--border: rgba(26, 24, 19, .1);--border2: rgba(26, 24, 19, .06);--danger: #A14A2D}html,body{height:100%}body{background:var(--bg);color:var(--ink);font-family:DM Mono,ui-monospace,monospace;font-size:14px;line-height:1.5;overflow:hidden;position:relative}a{color:var(--accent)}a:hover{color:var(--accent2)}#terrain-canvas{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;pointer-events:none}.ambient-engines{position:fixed;top:1.4rem;left:50%;transform:translate(-50%);z-index:1;font-family:DM Mono,ui-monospace,monospace;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);display:flex;align-items:center;gap:.55rem;pointer-events:none;background:#dcd6c88c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:.5rem .95rem;border:1px solid var(--border2);border-radius:999px;white-space:nowrap}.ambient-engines .label{color:var(--ink4)}.ambient-engines .sep{color:var(--ink4);margin:0 .05em}.ambient-engines .live-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:livePulse 1.6s ease-in-out infinite}@keyframes livePulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.35}}.ambient-mark{position:fixed;bottom:1.2rem;left:50%;transform:translate(-50%);z-index:1;font-family:DM Mono,ui-monospace,monospace;font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink4);pointer-events:none}@media(max-width:720px){.ambient-engines,.ambient-mark{display:none}}.audit-stage{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.6rem}.audit-card{width:100%;max-width:620px;height:min(78vh,720px);min-height:480px;background:#f2eee4e0;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 60px #1a18131f,0 4px 16px #1a18130f;display:flex;flex-direction:column;overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid var(--border2);flex-shrink:0}.card-head .brand{font-family:Cormorant Garamond,Georgia,serif;font-size:1.25rem;font-style:italic;color:var(--ink);text-decoration:none}.card-head .back{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);text-decoration:none;transition:color .2s ease}.card-head .back:hover{color:var(--ink)}.card-chat{flex:1;overflow-y:auto;padding:1.4rem 1.2rem .4rem;scroll-behavior:smooth;display:flex;flex-direction:column}.chat{width:100%;margin-top:auto;display:flex;flex-direction:column;gap:1.2rem}.msg-row{display:flex;gap:.75rem;align-items:flex-start;opacity:0;transform:translateY(6px);animation:fadeUp .3s ease forwards}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.msg-row.user{flex-direction:row-reverse}.avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.avatar.bot{background:var(--accent);color:#fff}.avatar.user{background:var(--ink);color:var(--bg)}.bubble{max-width:78%;padding:.9rem 1.1rem;border-radius:14px;line-height:1.55;font-size:.88rem;word-wrap:break-word}.bubble.bot{background:var(--bg-card);color:var(--ink);border:1px solid var(--border2);border-top-left-radius:4px}.bubble.user{background:var(--ink);color:var(--bg);border-top-right-radius:4px}.bubble.bot em{font-style:italic;color:var(--accent);font-family:Cormorant Garamond,Georgia,serif;font-size:1.05rem}.typing{display:inline-flex;gap:4px;padding:.9rem 1.1rem;background:var(--bg-card);border:1px solid var(--border2);border-radius:4px 14px 14px}.typing span{width:6px;height:6px;border-radius:50%;background:var(--ink3);animation:typingBlink 1.2s infinite ease-in-out}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typingBlink{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.card-input{padding:.9rem 1.2rem 1rem;border-top:1px solid var(--border2);background:#f2eee4b3;flex-shrink:0}.trust-foot{margin-top:.55rem;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink4);text-align:center}.trust-foot .dot{color:var(--ink4);margin:0 .5em}.input-inner{display:flex;gap:.55rem;align-items:stretch}.field{flex:1;position:relative}.field input{width:100%;height:48px;padding:0 1rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--ink);font-family:DM Mono,ui-monospace,monospace;font-size:.9rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2d7d7c26}.field input::placeholder{color:var(--ink4)}.iti{width:100%}.iti__tel-input{height:48px;padding-left:52px!important;font-family:DM Mono,ui-monospace,monospace!important;font-size:.9rem!important;color:var(--ink);background:var(--bg-card);border:1px solid var(--border);border-radius:10px}.iti__tel-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2d7d7c26;outline:none}.iti__country-container{padding:0 .35rem 0 .8rem!important}.iti__selected-country{padding:0!important;background:transparent!important}.iti__dropdown-content{font-family:DM Mono,ui-monospace,monospace;font-size:.82rem}.btn-send{height:48px;padding:0 1.4rem;border-radius:10px;border:none;background:var(--accent);color:#fff;font-family:DM Mono,ui-monospace,monospace;font-size:.85rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background .15s ease,transform .1s ease;flex-shrink:0}.btn-send:hover:not(:disabled){background:var(--accent2)}.btn-send:active:not(:disabled){transform:translateY(1px)}.btn-send:disabled{background:var(--ink4);cursor:not-allowed}.field-error{font-size:.72rem;color:var(--danger);margin-top:.4rem;padding:0 1rem;min-height:1em}.pac-container{border-radius:10px;border:1px solid var(--border);box-shadow:0 10px 40px #00000014;font-family:DM Mono,ui-monospace,monospace;margin-top:6px}.pac-item{padding:.55rem .8rem;font-size:.82rem;border-top:1px solid var(--border2);cursor:pointer}.pac-item:first-child{border-top:none}.pac-item:hover,.pac-item-selected{background:var(--bg)}.pac-item-query{color:var(--ink);font-weight:500}.pac-matched{color:var(--accent)}.score-card{background:linear-gradient(135deg,var(--bg-card),var(--bg));border:1px solid var(--border);border-radius:16px;padding:1.8rem 1.6rem;margin-top:.4rem;text-align:center}.score-label{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-bottom:.8rem}.score-value{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(3.5rem,10vw,5.5rem);line-height:1;color:var(--ink);font-weight:400}.score-value .max{color:var(--ink4);font-size:.5em;margin-left:.2em}.score-bar{margin:1.2rem auto 0;width:100%;max-width:320px;height:6px;background:var(--border);border-radius:999px;overflow:hidden}.score-bar-fill{height:100%;background:var(--accent);width:0%;transition:width 1.2s cubic-bezier(.2,.8,.2,1);border-radius:999px}.score-narr{margin-top:1rem;font-size:.82rem;color:var(--ink2);line-height:1.6}.summary-card{background:var(--bg-card);border:1px solid var(--border2);border-radius:14px;padding:1rem 1.1rem;margin-top:.4rem;font-size:.8rem;line-height:1.7}.summary-card .row{display:flex;justify-content:space-between;gap:1rem;color:var(--ink2)}.summary-card .row .k{color:var(--ink3);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}.summary-card .row .v{color:var(--ink);text-align:right}@media(max-width:560px){.audit-stage{padding:.6rem}.audit-card{height:calc(100vh - 1.2rem);min-height:0;max-height:none;border-radius:14px}.card-chat{padding:1rem .9rem .4rem}.card-input{padding:.7rem .9rem .9rem}.bubble{font-size:.85rem;padding:.8rem .95rem}.btn-send{padding:0 1rem;font-size:.78rem}}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
