@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=DM+Serif+Display:ital@0;1&display=swap";:root{--g-blue:#4285f4;--g-green:#34a853;--g-yellow:#fbbc04;--g-red:#ea4335;--bg:#f7f8fc;--surface:#fff;--surface-2:#f2f4fa;--border:#e8eaf0;--border-2:#0000000f;--ink-1:#111318;--ink-2:#3d4151;--ink-3:#8a90a2;--accent:#4285f4;--accent-soft:#4285f41a;--accent-glow:#4285f440;--shadow-xs:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-sm:0 4px 12px #0000000f, 0 2px 6px #0000000a;--shadow-md:0 8px 30px #00000014, 0 2px 8px #0000000a;--shadow-lg:0 20px 60px #0000001a, 0 4px 16px #0000000f;--r-sm:12px;--r-md:18px;--r-lg:24px;--r-xl:32px;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--spring:cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink-1);-webkit-font-smoothing:antialiased;min-height:100dvh;font-family:DM Sans,sans-serif;overflow-x:hidden}.bg-blob{filter:blur(72px);pointer-events:none;z-index:0;border-radius:50%;animation:12s ease-in-out infinite alternate drift;position:fixed}.blob-1{background:radial-gradient(circle,#4285f41f,#0000 70%);width:480px;height:480px;animation-delay:0s;top:-120px;left:-100px}.blob-2{background:radial-gradient(circle,#34a8531a,#0000 70%);width:360px;height:360px;animation-delay:4s;bottom:-80px;right:-80px}.blob-3{background:radial-gradient(circle,#fbbc0417,#0000 70%);width:280px;height:280px;animation-delay:8s;top:50%;right:-60px}@keyframes drift{0%{transform:translate(0)scale(1)}to{transform:translate(20px,30px)scale(1.08)}}.page-wrapper{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}.container{flex-direction:column;gap:18px;width:100%;max-width:480px;margin:0 auto;padding:32px 20px 80px;display:flex}.animate-up{animation:fadeUp .55s var(--ease-out) both;animation-delay:var(--delay,0s)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.header{text-align:center;padding:8px 0 4px}.google-logo-wrap{background:var(--surface);width:60px;height:60px;box-shadow:var(--shadow-sm);border:1px solid var(--border);border-radius:18px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.brand-name{letter-spacing:-.02em;color:var(--ink-1);margin-bottom:8px;font-family:DM Serif Display,serif;font-size:28px;font-weight:400;line-height:1.2}.brand-sub{color:var(--ink-3);letter-spacing:.01em;font-size:15px;font-weight:400}.progress-track{justify-content:center;align-items:center;gap:0;padding:0 60px;display:flex}.prog-step{flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex}.prog-circle{background:var(--surface-2);border:2px solid var(--border);width:32px;height:32px;color:var(--ink-3);transition:all .4s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.prog-step.active .prog-circle{background:var(--g-blue);border-color:var(--g-blue);color:#fff;box-shadow:0 0 0 4px var(--accent-soft)}.prog-step.done .prog-circle{background:var(--g-green);border-color:var(--g-green);color:#fff}.prog-step span{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:11px;font-weight:600;transition:color .3s}.prog-step.active span{color:var(--g-blue)}.prog-step.done span{color:var(--g-green)}.prog-line{background:var(--border);border-radius:2px;flex:1;height:2px;margin:0 8px 20px;transition:background .4s;position:relative;overflow:hidden}.prog-line.filled{background:var(--g-green)}.card{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border);box-shadow:var(--shadow-md);transition:box-shadow .4s var(--ease-out);overflow:hidden}.card:hover{box-shadow:var(--shadow-lg)}.card-header{border-bottom:1px solid var(--border-2);padding:28px 28px 20px}.card-header h2{color:var(--ink-1);letter-spacing:-.01em;margin-bottom:4px;font-family:DM Serif Display,serif;font-size:22px;font-weight:400}.card-header p{color:var(--ink-3);font-size:14px;font-weight:400}.stars-block{flex-direction:column;align-items:center;gap:20px;padding:28px 28px 20px;display:flex}.stars-row{gap:6px;display:flex}.star{cursor:pointer;color:#dde1ec;transition:color .25s var(--spring), transform .3s var(--spring), filter .25s ease;-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:2px;font-size:46px;line-height:1}.star.lit{color:var(--star-color,var(--g-yellow));filter:drop-shadow(0 0 10px color-mix(in srgb, var(--star-color,var(--g-yellow)) 60%, transparent))}.star:hover{transform:scale(1.22)rotate(6deg)}.star:active{transform:scale(.92)}.rating-pill{background:color-mix(in srgb, var(--pill-color,var(--g-yellow)) 10%, white);border:1.5px solid color-mix(in srgb, var(--pill-color,var(--g-yellow)) 20%, transparent);transition:all .3s var(--ease-out);border-radius:100px;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.pill-emoji{font-size:18px;line-height:1}.pill-label{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--pill-color,var(--g-yellow)) 70%, #111);font-size:13px;font-weight:700}.pill-stars{color:color-mix(in srgb, var(--pill-color,var(--g-yellow)) 80%, transparent);letter-spacing:1px;font-size:11px}.card-actions{flex-direction:column;gap:12px;padding:20px 28px 28px;display:flex}.btn{border-radius:var(--r-md);cursor:pointer;width:100%;transition:all .3s var(--ease-out);letter-spacing:.01em;-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;gap:9px;padding:15px 20px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.5);pointer-events:none}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:var(--g-blue);color:#fff;box-shadow:0 4px 16px #4285f459}.btn-primary:hover:not(:disabled){background:#3373e0;transform:translateY(-2px);box-shadow:0 8px 24px #4285f473}.btn-google{color:#fff;background:linear-gradient(135deg,#1a9e4e 0%,#34a853 100%);padding:17px 20px;font-size:16px;box-shadow:0 4px 16px #34a85359}.btn-google:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #34a85373}.btn-outline{background:var(--surface-2);color:var(--ink-2);border:1.5px solid var(--border)}.btn-outline:hover:not(:disabled){background:var(--surface);border-color:var(--g-blue);color:var(--g-blue);box-shadow:var(--shadow-xs)}.btn-secondary{background:var(--surface-2);color:var(--ink-2);border:1.5px solid var(--border);padding:13px 16px}.btn-secondary:hover:not(:disabled){background:var(--surface);color:var(--ink-1);box-shadow:var(--shadow-xs);border-color:#0000001f}.row-btns{gap:10px;display:flex}.row-btns .btn{flex:1}.divider-text{color:var(--ink-3);align-items:center;gap:12px;font-size:13px;display:flex}.divider-text:before,.divider-text:after{content:"";background:var(--border);flex:1;height:1px}.hint-text{text-align:center;color:var(--ink-3);letter-spacing:.01em;font-size:12.5px}.step2-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.status-chip{color:#1e8c3e;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;background:#34a8531a;border-radius:100px;flex-shrink:0;align-items:center;gap:6px;margin-top:2px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}.chip-dot{background:#34a853;border-radius:50%;width:7px;height:7px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.8)}}.textarea-wrap{padding:4px 28px 0;position:relative}.review-textarea{width:100%;color:var(--ink-1);background:var(--surface-2);border:2px solid var(--border);border-radius:var(--r-md);resize:none;transition:all .25s var(--ease);outline:none;padding:18px;font-family:DM Sans,sans-serif;font-size:15px;line-height:1.65;display:block}.review-textarea:focus{background:var(--surface);border-color:var(--g-blue);box-shadow:0 0 0 4px #4285f41a}.review-textarea::placeholder{color:var(--ink-3)}.char-count{text-align:right;color:var(--ink-3);margin-top:8px;font-size:12px;font-weight:500}.info-box{background:var(--accent-soft);border-radius:var(--r-sm);color:#2b5db8;border:1px solid #4285f426;align-items:flex-start;gap:10px;margin-top:4px;padding:14px 16px;font-size:13px;line-height:1.5;display:flex}.info-box svg{flex-shrink:0;margin-top:1px}.info-box strong{font-weight:700}.spin{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:17px;height:17px;animation:.7s linear infinite spin;display:inline-block}.spin-dark{border-color:#0000001a;border-top-color:var(--g-blue)}@keyframes spin{to{transform:rotate(360deg)}}.toast{background:var(--ink-1);color:#fff;border-radius:var(--r-md);z-index:9999;transition:transform .45s var(--ease-out);white-space:nowrap;align-items:center;gap:12px;padding:14px 22px;font-size:14px;font-weight:500;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)translateY(90px);box-shadow:0 12px 40px #00000040}.toast.show{transform:translate(-50%)translateY(0)}.toast-icon{background:var(--g-green);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:flex}.overlay{-webkit-backdrop-filter:blur(6px);z-index:900;background:#0a0c1280;animation:.25s both fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.bottom-sheet{background:var(--surface);z-index:901;width:100%;max-width:500px;animation:slideUp .4s var(--ease-out) both;border-top-left-radius:28px;border-top-right-radius:28px;flex-direction:column;max-height:82dvh;padding:0 0 40px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 40px #00000026}@keyframes slideUp{0%{transform:translate(-50%)translateY(100%)}to{transform:translate(-50%)translateY(0)}}.sheet-handle{background:var(--border);border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:12px auto 0}.sheet-header{border-bottom:1px solid var(--border-2);flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:20px 24px 16px;display:flex}.sheet-header h2{color:var(--ink-1);margin-bottom:3px;font-family:DM Serif Display,serif;font-size:20px;font-weight:400}.sheet-header p{color:var(--ink-3);font-size:13px}.close-btn{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;color:var(--ink-2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;transition:all .2s;display:flex}.close-btn:hover{background:var(--surface);color:var(--ink-1);box-shadow:var(--shadow-xs)}.sheet-list{-webkit-overflow-scrolling:touch;flex-direction:column;gap:10px;padding:16px 20px;display:flex;overflow-y:auto}.sheet-item{background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--r-md);cursor:pointer;transition:all .22s var(--ease-out);text-align:left;animation:fadeUp .4s var(--ease-out) both;animation-delay:var(--delay,0s);flex-direction:column;align-items:flex-start;gap:6px;padding:16px 18px;display:flex;position:relative}.sheet-item:hover{background:var(--surface);border-color:var(--g-blue);box-shadow:var(--shadow-sm), 0 0 0 3px #4285f414;transform:translate(3px)}.sheet-item:active{transform:scale(.98)}.item-stars{color:var(--g-yellow);letter-spacing:2px;font-size:13px}.sheet-item p{color:var(--ink-2);padding-right:24px;font-size:14px;line-height:1.55}.item-arrow{color:var(--ink-3);opacity:0;transition:opacity .2s,transform .2s;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.sheet-item:hover .item-arrow{opacity:1;transform:translateY(-50%)translate(3px)}.footer{text-align:center;padding-bottom:8px}.footer-logo{color:var(--ink-3);align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}@media (width<=420px){.container{padding:20px 14px 80px}.brand-name{font-size:24px}.star{font-size:40px}.card-header,.stars-block,.card-actions,.textarea-wrap{padding-left:20px;padding-right:20px}.progress-track{padding:0 32px}}@media (hover:none){.btn-primary:hover:not(:disabled),.btn-google:hover:not(:disabled){transform:none}}@media print{.bg-blob{display:none}.card{box-shadow:none;border:1px solid #ddd}}
