@import"https://api.fontshare.com/v2/css?f[]=general-sans@700&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@500&family=JetBrains+Mono:wght@500&display=swap";:root{color-scheme:light;--primary: #6366f1;--primary-hover: #4f46e5;--neutral: #9c9c9c;--background: #fafafa;--surface: #ffffff;--text: #0a0a0a;--text-secondary: #6b6b6b;--border: #e8e8ec;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--nav-background: rgb(255 255 255 / 88%);--focus-ring: 0 0 0 3px rgb(99 102 241 / 12%);--card-hover-shadow: 0 8px 30px rgb(0 0 0 / 8%);--button-hover-shadow: 0 4px 12px rgb(99 102 241 / 35%);--dropdown-shadow: 0 10px 24px rgb(0 0 0 / 12%);--font-heading: "General Sans", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--font-code: "JetBrains Mono", monospace;font-family:var(--font-body);font-size:15px;font-weight:500;font-synthesis:none;color:var(--text);background:var(--background)}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--background: #0f172a;--surface: #1e293b;--text: #e8edf6;--text-secondary: #94a3b8;--border: #334155;--nav-background: rgb(30 41 59 / 88%)}}*{box-sizing:border-box}body{margin:0;min-width:0}button,input,textarea,select{font:inherit}button,summary,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:var(--primary);text-underline-offset:4px;overflow-wrap:anywhere}a:hover{color:var(--primary-hover)}h1,h2,h3,.brand{font-family:var(--font-heading);font-weight:700;letter-spacing:-.03em;line-height:1.25;overflow-wrap:anywhere}h1{font-size:32px;margin:0}h2,h3{font-size:24px;margin:0}p{margin:0;line-height:1.7;overflow-wrap:anywhere}strong,b{font-weight:700}code,.code{font-family:var(--font-code);font-size:12px;font-weight:500}code{background:var(--background);border-radius:4px;padding:4px 8px}hr{border:0;border-top:1px solid var(--border);margin:24px 0}[hidden],.off{display:none!important}.muted,.sub{color:var(--text-secondary);font-size:13px}.caption{font-size:12px;color:var(--text-secondary)}.stack{display:grid;gap:20px}.stack-small{display:grid;gap:12px}.shell{max-width:1280px;padding:0 24px;margin:64px auto}.page-heading{display:grid;gap:12px;margin-bottom:32px}.panel{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:24px}.panel+.panel{margin-top:32px}.card{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.card.interactive{transition:transform .2s,box-shadow .2s}.card.interactive:hover{transform:translateY(-2px);box-shadow:var(--card-hover-shadow)}.section-heading{margin-bottom:24px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.wide{grid-column:1 / -1}.toolbar,.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar{justify-content:space-between}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:end}.filters.with-shop{grid-template-columns:repeat(5,minmax(0,1fr))}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 16px;border:1px solid transparent;border-radius:6px;background:var(--primary);color:#fff;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,transform .2s,box-shadow .2s}button:hover:not(:disabled),.button:hover{background:var(--primary-hover);color:#fff;transform:translateY(-1px);box-shadow:var(--button-hover-shadow)}.secondary{border-color:var(--border);background:transparent;color:var(--text)}.ghost{border-color:transparent;background:transparent;color:var(--text-secondary)}button.secondary:hover:not(:disabled),.button.secondary:hover,button.ghost:hover:not(:disabled),.button.ghost:hover{background:var(--background);color:var(--primary);box-shadow:none}.small{min-height:32px;padding:4px 12px;font-size:13px}.large{min-height:44px;padding:12px 24px}.full{width:100%}button:disabled{cursor:default;background:var(--background);border-color:var(--border);color:var(--neutral)}label{display:grid;gap:8px;color:var(--text);font-size:13px;min-width:0}input,select,textarea{min-width:0;width:100%;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);padding:10px 14px;font-size:14px;font-weight:500;line-height:20px;transition:border-color .2s,box-shadow .2s}input::placeholder,textarea::placeholder{color:var(--neutral);opacity:1}input.code{font-size:14px}input:disabled,textarea:disabled{color:var(--neutral);background:var(--background)}textarea{min-height:128px;resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--error)}:is(input,select,textarea):user-invalid{border-color:var(--error)}:is(button,a,summary):focus-visible{outline:1px solid var(--primary);outline-offset:2px;box-shadow:var(--focus-ring)}:is(input,select,textarea):focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring)}.notice{min-height:24px;color:var(--text-secondary);white-space:pre-wrap;font-size:13px;line-height:1.7}.notice:empty{display:none}.notice.error,.feedback.error{color:var(--text);border-left:4px solid var(--error);background:#ef444414;padding:12px 16px;border-radius:4px}.notice.success,.feedback.success{color:var(--text);border-left:4px solid var(--success);background:#10b98114;padding:12px 16px;border-radius:4px}.notice:not(:empty){margin:16px 0}.chip{display:inline-flex;align-items:center;gap:8px;width:fit-content;border-radius:9999px;padding:4px 12px;font-size:12px;line-height:20px;color:var(--text-secondary);background:var(--background)}.chip:before{content:"";width:8px;height:8px;flex:0 0 8px;border-radius:9999px}.chip.success{color:var(--text);background:#10b9811f}.chip.success:before{background:var(--success)}.chip.pending{color:var(--text);background:#f59e0b1f}.chip.pending:before{background:var(--warning)}.site-nav{position:sticky;top:0;z-index:10;height:56px;border-bottom:1px solid var(--border);background:var(--nav-background);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-inner{max-width:1280px;height:100%;padding:0 24px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:var(--text);font-size:20px;text-decoration:none;white-space:nowrap}.brand:hover{color:var(--text)}.desktop-links{display:flex;align-items:center;gap:8px}.nav-link{border-radius:6px;padding:8px 12px;font-size:14px;color:var(--text-secondary);text-decoration:none}.nav-link:hover{background:var(--background);color:var(--primary)}.nav-link[aria-current=page]{color:var(--primary)}.nav-controls{display:flex;align-items:center;gap:12px}.account-menu,.mobile-menu{position:relative}.account-menu>summary,.mobile-menu>summary{cursor:pointer;list-style:none;display:flex;justify-content:center;align-items:center}summary::-webkit-details-marker{display:none}.avatar{border-radius:9999px;width:32px;height:32px;background:var(--background);border:1px solid var(--border);color:var(--text);font-size:12px}.dropdown{position:absolute;top:calc(100% + 12px);right:0;width:256px;max-width:calc(100vw - 48px);padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--dropdown-shadow);display:grid;gap:12px}.dropdown p{font-size:13px}.mobile-menu{display:none}.mobile-menu>summary{width:32px;height:32px;color:var(--text-secondary);border-radius:6px}.mobile-menu svg{width:20px;height:20px}.mobile-menu .dropdown{width:224px}.mobile-menu .nav-link{display:block}.review-page,.auth-page{min-height:100vh;display:flex;flex-direction:column}.simple-header{max-width:1280px;width:100%;margin:0 auto;padding:24px}.review-container,.auth-container{width:100%;max-width:528px;padding:32px 24px;margin:auto}.review-card{padding:32px;text-align:center}.review-card h1{font-size:24px}.review-body{display:grid;gap:24px}.review-body .shop-image{width:112px;height:112px;object-fit:cover;border-radius:12px;margin:0 auto;background:var(--background)}.socials{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.social{min-height:32px}.stars{display:flex;justify-content:center;gap:4px}.star{background:transparent;border-color:transparent;color:var(--neutral);width:44px;min-height:44px;padding:0;font-size:36px;line-height:1}.star.is-filled{color:var(--primary)}.star:hover:not(:disabled){color:var(--primary);background:var(--background);box-shadow:none}.star:disabled{border-color:transparent;background:transparent}.star.is-filled:disabled{color:var(--primary)}.review-action{display:grid;gap:16px}.review-action .notice{margin:0}.review-action textarea{text-align:left}.auth-panel{padding:32px}.auth-heading{display:grid;gap:12px;margin-bottom:24px}.auth-heading h1{font-size:32px}.reset-details>summary{color:var(--primary);font-size:13px;cursor:pointer;border-radius:4px;padding:4px 0}.reset-details[open]>summary{margin-bottom:20px}.auth-footer,#reviews{margin-top:24px}.review{border-bottom:1px solid var(--border);padding:12px 16px;display:grid;grid-template-columns:1fr auto;gap:12px 24px;transition:background .2s}.review:last-child{border-bottom:0}.review:hover,.shop-row:hover{background:var(--background)}.review .review-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.review time{text-align:right;font-size:12px}.review p,.review .review-shop{grid-column:1 / -1;white-space:pre-wrap;overflow-wrap:anywhere}.rating{color:var(--text);font-size:13px}.rating-badge{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:9999px;font-size:13px;font-weight:600;line-height:1;width:fit-content;transition:transform .15s ease,box-shadow .15s ease}.stars-cluster{display:inline-flex;align-items:center;gap:2px}.star-glyph{width:14px;height:14px;display:inline-block;transition:transform .15s ease}.star-glyph.is-filled{fill:#f59e0b;filter:drop-shadow(0 1px 2px rgb(245 158 11 / 35%))}.star-glyph.is-empty{fill:var(--border);opacity:.55}.rating-badge.rating-1{background:#ef44441a;border:1px solid rgb(239 68 68 / 25%);color:#ef4444}.rating-badge.rating-1 .star-glyph.is-filled{fill:#ef4444;filter:drop-shadow(0 1px 2px rgb(239 68 68 / 40%))}.rating-badge.rating-2{background:#f59e0b1a;border:1px solid rgb(245 158 11 / 25%);color:#d97706}.rating-badge.rating-2 .star-glyph.is-filled{fill:#f59e0b;filter:drop-shadow(0 1px 2px rgb(245 158 11 / 40%))}.rating-badge.rating-3{background:#eab3081f;border:1px solid rgb(234 179 8 / 28%);color:#b45309}.rating-badge.rating-3 .star-glyph.is-filled{fill:#eab308;filter:drop-shadow(0 1px 2px rgb(234 179 8 / 40%))}@media(prefers-color-scheme:dark){.rating-badge.rating-1{color:#fca5a5;background:#ef44442e;border-color:#ef444459}.rating-badge.rating-2{color:#fcd34d;background:#f59e0b2e;border-color:#f59e0b59}.rating-badge.rating-3{color:#fde047;background:#eab30833;border-color:#eab30861}.star-glyph.is-empty{fill:#475569;opacity:.6}}.rating-text{font-weight:600;font-size:13px;letter-spacing:-.01em}.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}.shop-list{display:grid}.shop-row{padding:12px 16px;border-bottom:1px solid var(--border);transition:background .2s;display:grid;gap:16px}.shop-row:last-child{border-bottom:0}.shop-heading{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px}.shop-identity{display:grid;gap:8px;min-width:0}.shop-row h3{font-size:24px}.shop-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--text-secondary);font-size:13px}.shop-row .notice{margin:0}@media(max-width:1023px){.shell{margin:48px auto}.filters,.filters.with-shop{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.shell{margin:32px auto}.nav-inner{gap:16px}.desktop-links{display:none}.mobile-menu{display:block}.grid,.filters,.filters.with-shop{grid-template-columns:minmax(0,1fr)}.panel,.auth-panel,.review-card{padding:24px}.page-heading{margin-bottom:24px}.review{grid-template-columns:minmax(0,1fr);gap:8px;padding:12px 16px}.review time{text-align:left}.shop-heading{flex-direction:column}.pager{flex-wrap:wrap}.pager .muted{order:-1;width:100%;text-align:center}}@media(max-width:359px){.review-card{padding:16px}.star{width:40px;font-size:32px}}.dashboard-content{display:grid;gap:32px;min-width:0}.dashboard-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:16px;padding:24px}.dashboard-filters .search-filter{grid-column:span 3}.dashboard-filters.with-shop .search-filter{grid-column:span 2}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.stat{padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0}.stat-value{font-family:var(--font-heading);font-weight:700;font-size:32px;line-height:1.25;letter-spacing:-.03em}.stat-date{font-size:15px;line-height:1.7}.stat .caption{margin-top:auto}.charts-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:24px}.chart-card{padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0}.chart-card h2,.review-list-card h2{font-size:24px}.trend-chart{min-height:200px;display:flex;flex-direction:column;justify-content:center;gap:8px;margin-top:12px}.trend-chart svg{display:block;width:100%;height:auto}.trend-badge-row{display:flex;justify-content:flex-start;margin-bottom:6px}.trend-pill{font-size:12px;background:#6366f114;color:var(--primary);border:1px solid rgb(99 102 241 / 18%);padding:3px 10px;border-radius:9999px}.chart-line{stroke:var(--primary);stroke-width:2.75;fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-area{opacity:.9}.chart-marker{fill:var(--surface);stroke:var(--primary);stroke-width:2;transition:transform .15s ease}.chart-gridline{stroke:var(--border);stroke-width:1}.chart-dashline{stroke:var(--border);stroke-width:1;stroke-dasharray:4 4;opacity:.6}.chart-baseline{stroke:var(--border);stroke-width:1.5;opacity:.9}.chart-tick-label{font-size:10px;fill:var(--text-secondary);font-family:var(--font-body);font-weight:500}.chart-bar-label{font-size:10px;fill:var(--text-secondary);font-family:var(--font-body);font-weight:600}.chart-hitbox{cursor:pointer}.chart-hitbox:hover{fill:#6366f10f}.chart-axis{display:flex;justify-content:space-between;gap:16px;margin-top:4px}.chart-empty{text-align:center;padding:24px}.chart-details{margin-top:auto}.chart-details summary{color:var(--primary);cursor:pointer;font-size:13px;border-radius:4px}.chart-table-wrap{max-height:240px;overflow:auto;margin-top:16px}.chart-table-wrap table{width:100%;border-collapse:collapse;font-size:13px}.chart-table-wrap th,.chart-table-wrap td{text-align:left;font-weight:500;padding:8px 12px;border-bottom:1px solid var(--border)}.chart-table-wrap td{text-align:right}.rating-chart{display:grid;gap:24px;margin:24px 0}.rating-bar-row{display:grid;gap:8px;font-size:13px}.rating-track{height:12px;border-radius:4px;background:var(--background);overflow:hidden;border:1px solid var(--border)}.rating-fill{height:100%;background:var(--text-secondary)}.review-list-card{padding:24px}#analyticsPanel[aria-busy=true] .stats-grid{opacity:.6}@media(max-width:1023px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.charts-grid{grid-template-columns:minmax(0,1fr)}.dashboard-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-filters .search-filter,.dashboard-filters.with-shop .search-filter{grid-column:1 / -1}}@media(max-width:767px){.dashboard-filters{grid-template-columns:minmax(0,1fr)}.stats-grid{gap:16px}.stat{padding:16px}.stat-value{font-size:24px}.stat-date{font-size:13px}.dashboard-content{gap:32px}.chart-card,.review-list-card{padding:20px}}.overline{font-size:11px;color:var(--text-secondary);letter-spacing:.04em}.review-page .review-container{max-width:1056px;margin:auto;padding:32px 24px}.customer-card{padding:0;text-align:left}.customer-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:0}.customer-identity{padding:32px;background:var(--background);border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:space-between;gap:32px}.shop-portrait{width:144px;height:144px;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface)}.customer-identity .shop-image{display:block;width:100%;height:100%;margin:0;object-fit:cover;border-radius:0}.shop-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:32px;font-weight:700;color:var(--text-secondary)}.identity-note{padding-top:24px;border-top:1px solid var(--border);display:grid;gap:12px}.identity-note h2{font-size:15px}.social-section{display:grid;gap:12px}.customer-identity .socials{justify-content:flex-start}.customer-form{padding:32px;display:grid;gap:24px;align-content:start;min-width:0}.review-steps{list-style:none;display:flex;flex-wrap:wrap;gap:16px;padding:0;margin:0;font-size:12px;color:var(--text-secondary)}.review-steps li{display:flex;align-items:center;gap:8px}.review-steps li>span:first-child{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:9999px}.review-steps li[aria-current=step]{color:var(--text)}.review-steps li[aria-current=step]>span:first-child{border-color:var(--text-secondary)}.selected-rating{text-align:center;font-size:15px}.score-guide{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;font-size:12px;color:var(--text-secondary);padding-bottom:24px;border-bottom:1px solid var(--border)}.customer-form .review-action h3{font-size:24px}.message-helpers{display:grid;gap:12px}.thanks-panel{padding:24px;border:1px solid var(--border);border-left:4px solid var(--success);border-radius:12px;background:var(--background);display:grid;gap:12px}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:6px;padding:4px;gap:4px}.segmented button{border-color:transparent}.segmented button[aria-pressed=true],.quick-rating button[aria-pressed=true]{background:var(--primary);color:#fff}.segmented button[aria-pressed=true]:hover,.quick-rating button[aria-pressed=true]:hover{background:var(--primary-hover);color:#fff}.trend-bar{fill:url(#trendBarGradient);transition:opacity .15s ease,filter .15s ease;cursor:pointer}.trend-bar:hover{opacity:.88;filter:brightness(1.12)}.modal-dialog{border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 20px 45px #00000038;padding:0;max-width:440px;width:calc(100vw - 32px);margin:auto}.security-dialog{max-width:490px}.security-tabs{display:flex;justify-content:center;margin:4px 0 8px}.modal-dialog::backdrop{background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{padding:28px;display:grid;gap:16px;text-align:center}.modal-card .toolbar{justify-content:space-between;margin-bottom:4px}.modal-card h2{font-size:20px}.qr-preview-box{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;background:var(--background);border:1px solid var(--border);border-radius:12px;margin:4px 0}.qr-preview-box img{display:block;max-width:100%;height:auto;border-radius:8px;background:#fff;padding:8px;box-shadow:0 4px 14px #0000000f}.modal-dialog .actions{justify-content:center;margin-top:8px}.button.danger,button.danger{background:var(--error);color:#fff;border-color:var(--error)}.button.danger:hover,button.danger:hover{background:#dc2626;border-color:#dc2626}.mfa-auth-banner{display:flex;align-items:center;gap:12px;background:var(--background);border:1px solid var(--border);border-radius:8px;padding:12px;text-align:left}.mfa-auth-banner .caption{margin:0}.mfa-status-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;border-radius:9999px;font-size:13px;font-weight:600;margin:0 auto}.mfa-status-pill.success{background:#10b9811f;color:var(--success);border:1px solid rgb(16 185 129 / 24%)}.mfa-status-pill.muted{background:var(--background);color:var(--text-secondary);border:1px solid var(--border)}.mfa-secret-display{display:block;font-family:var(--font-code);font-size:13px;letter-spacing:.05em;padding:8px 12px;background:var(--surface);border:1px dashed var(--border);border-radius:6px;word-break:break-all;-webkit-user-select:all;user-select:all;margin:6px 0}.mfa-qr-wrap{display:flex;justify-content:center;align-items:center;min-height:160px;margin:6px 0}.mfa-qr-wrap img,.mfa-qr-wrap svg{display:block;max-width:180px;height:auto;border-radius:8px}.quick-insights{padding:24px;display:grid;gap:24px}.insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}.insights-grid div{display:grid;gap:12px;min-width:0}.insights-grid dt{color:var(--text-secondary);font-size:13px}.insights-grid dd{margin:0;font-size:15px;overflow-wrap:anywhere}.quick-rating{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.qr-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:24px;align-items:center}.qr-panel img{display:block;max-width:100%;height:auto;border-radius:4px;background:#fff}@media(max-width:767px){.customer-layout{grid-template-columns:minmax(0,1fr)}.customer-identity{border-right:0;border-bottom:1px solid var(--border);padding:24px;gap:24px}.customer-identity .stack{gap:16px}.shop-portrait{width:96px;height:96px}.customer-form{padding:24px;gap:20px}.insights-grid,.qr-panel{grid-template-columns:minmax(0,1fr)}.qr-panel img{justify-self:center}}@media(max-width:359px){.customer-form,.customer-identity{padding:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}button:hover,.button:hover,.card.interactive:hover{transform:none!important}}
