.gm{--cream:#f7f4ed;--paper:#fbf9f4;--surface:#fff;--ink:#1a2027;--ink-soft:#3d4a55;--ink-mute:#6b7682;--ink-fade:#a4adb6;--line:#e6e1d6;--line-soft:#efeae0;--sage:#4a6b58;--sage-soft:#dce4dd;--sage-faint:#eef2ee;--sage-deep:#354c40;--clay:#b86f47;--clay-soft:#f4e5da;--gold:#b8923a;--coral:#c44e3a;--serif:var(--font-fraunces), Georgia, serif;--sans:var(--font-jakarta), system-ui, sans-serif;--mono:var(--font-jetbrains), ui-monospace, monospace;background:var(--cream);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.55}.gm a{color:inherit;text-decoration:none}.gm .serif{font-family:var(--serif);letter-spacing:-.01em;font-weight:500}.gm .flow{flex-direction:column;max-width:640px;min-height:100vh;margin:0 auto;padding:26px 24px 48px;display:flex}.gm .flow-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.gm .back-home{color:var(--ink-mute);align-items:center;gap:8px;font-size:14px;font-weight:500;transition:color .2s;display:inline-flex}.gm .back-home:hover{color:var(--ink)}.gm .brand{align-items:center;gap:9px;display:flex}.gm .brand .mark{background:var(--ink);width:30px;height:30px;color:var(--cream);font-family:var(--serif);border-radius:8px;place-items:center;font-size:16px;font-weight:600;display:grid}.gm .brand .name{font-family:var(--serif);font-size:18px;font-weight:600}.gm .brand .name span{color:var(--sage)}.gm .progress{background:var(--line-soft);border-radius:999px;height:4px;margin-top:22px;overflow:hidden}.gm .progress .fill{background:var(--sage);border-radius:999px;height:100%;transition:width .45s cubic-bezier(.4,0,.2,1)}.gm .step-count{font-family:var(--mono);letter-spacing:.12em;color:var(--ink-fade);text-transform:uppercase;margin-top:10px;font-size:11px}.gm .stage{flex:1;margin-top:30px;position:relative}.gm .step{opacity:0;transition:opacity .42s,transform .42s;transform:translate(36px)}.gm .step:not(.active){pointer-events:none;width:100%;position:absolute;top:0;left:0}.gm .step.active{opacity:1;position:relative;transform:none}.gm .step.left{opacity:0;transform:translate(-36px)}.gm .q{margin-bottom:10px;font-size:clamp(1.7rem,4.6vw,2.55rem);line-height:1.1}.gm .hint{color:var(--ink-mute);max-width:48ch;margin-bottom:26px;font-size:1rem}.gm .hint .opt{color:var(--ink-fade)}.gm .chips{flex-wrap:wrap;gap:10px;display:flex}.gm .chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink-soft);-webkit-user-select:none;user-select:none;font-size:15px;font-weight:500;font-family:var(--sans);border-radius:999px;padding:11px 18px;transition:all .16s}.gm .chip:hover{border-color:var(--sage);color:var(--ink)}.gm .chip.sel{background:var(--sage);border-color:var(--sage);color:#fff}.gm .cards{gap:12px;display:grid}.gm .card{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;width:100%;font-family:var(--sans);border-radius:16px;align-items:center;gap:15px;padding:18px 20px;transition:all .18s;display:flex}.gm .card:hover{border-color:var(--sage);transform:translateY(-2px);box-shadow:0 16px 32px -22px #354c4073}.gm .card.sel{border-color:var(--sage);background:var(--sage-faint)}.gm .card .ic{background:var(--sage-faint);width:46px;height:46px;color:var(--sage-deep);border-radius:12px;flex:none;place-items:center;transition:all .18s;display:grid}.gm .card.sel .ic{background:var(--sage);color:#fff}.gm .card .ct .ct-t{font-family:var(--serif);font-size:1.18rem;font-weight:600;display:block}.gm .card .ct .ct-s{color:var(--ink-mute);font-size:13.5px;display:block}.gm .field{border:1px solid var(--line);background:var(--surface);width:100%;font-family:var(--sans);color:var(--ink);border-radius:14px;outline:none;padding:15px 18px;font-size:1.05rem;transition:all .18s}.gm .field::placeholder{color:var(--ink-fade)}.gm .field:focus{border-color:var(--sage);box-shadow:0 0 0 4px var(--sage-faint)}.gm textarea.field{resize:vertical;min-height:116px}.gm .text-inline{margin-top:14px}.gm .btn{cursor:pointer;font-size:15px;font-weight:600;font-family:var(--sans);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 24px;transition:transform .2s,background .2s,box-shadow .2s,color .2s,opacity .2s;display:inline-flex}.gm .btn-primary{background:var(--sage);color:var(--cream)}.gm .btn-primary:hover{background:var(--sage-deep);transform:translateY(-2px);box-shadow:0 10px 24px -12px #354c4099}.gm .btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.gm .btn-ghost{color:var(--ink-mute);border-color:var(--line);background:0 0}.gm .btn-ghost:hover{color:var(--ink);border-color:var(--ink-fade)}.gm .btn.big{width:100%;margin-top:26px;padding:16px;font-size:16px}.gm .arrow{transition:transform .2s}.gm .btn-primary:not(:disabled):hover .arrow{transform:translate(4px)}.gm .flow-foot{align-items:center;gap:16px;margin-top:34px;display:flex}.gm .flow-foot .spacer{flex:1}.gm .kbd-hint{color:var(--ink-fade);align-items:center;gap:7px;font-size:13px;display:none}.gm .kbd{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);color:var(--ink-mute);border-bottom-width:2px;border-radius:6px;padding:2px 7px;font-size:10.5px}@media (min-width:640px){.gm .kbd-hint{display:inline-flex}}.gm .summary{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:2px;display:grid;overflow:hidden}.gm .summary .r{border-bottom:1px solid var(--line-soft);grid-template-columns:140px 1fr;align-items:baseline;gap:14px;padding:14px 18px;display:grid}.gm .summary .r:last-child{border-bottom:none}.gm .summary .r .k{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-fade);font-size:11px}.gm .summary .r .v{color:var(--ink);font-size:15px}.gm .summary .r .v.empty{color:var(--ink-fade);font-style:italic}.gm .err{color:var(--coral);text-align:center;margin-top:12px;font-size:14px}.gm .done{text-align:center;padding:60px 0}.gm .done .seal{background:var(--sage-faint);width:76px;height:76px;color:var(--sage);border-radius:50%;place-items:center;margin:0 auto 24px;animation:.5s cubic-bezier(.2,1.3,.5,1) both gm-pop;display:grid}@keyframes gm-pop{0%{opacity:0;transform:scale(.5)}}.gm .done h2{margin-bottom:14px;font-size:clamp(1.8rem,4vw,2.5rem)}.gm .done p{color:var(--ink-soft);max-width:42ch;margin:0 auto 28px}
