@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap";:root{--font-family:"Montserrat", sans-serif;--color-white:#fff;--color-graphite:#373a3e;--color-pink:#e443b7;--color-green:#6b9959;--color-background:#f5f4f2;--scale-color-40:#a29e9c;--scale-color-45:#b4aea8;--scale-color-50:#d0a563;--scale-color-55:#6fa595;--scale-color-60:#0eb8a0;--scale-color-65:#6b9959;--scale-color-70:#e443b7;--radius-card:12px;--shadow-card:0 1px 3px #373a3e14, 0 1px 2px #373a3e0f}*{box-sizing:border-box}body{font-family:var(--font-family);background:var(--color-background);color:var(--color-graphite);margin:0}.centered-page{justify-content:center;align-items:center;min-height:100vh;display:flex}.page{max-width:720px;margin:0 auto;padding:32px 24px}.card{background:var(--color-white);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:32px}.login-card{flex-direction:column;gap:16px;width:360px;display:flex}label{color:#7a7d81;text-transform:uppercase;letter-spacing:.02em;flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}input{font-family:var(--font-family);color:var(--color-graphite);text-transform:none;letter-spacing:normal;background:#f0efed;border:1px solid #e1dfde;border-radius:8px;padding:10px 12px;font-size:15px;font-weight:500}button{font-family:var(--font-family);cursor:pointer;background:var(--color-graphite);color:var(--color-white);border:none;border-radius:8px;padding:12px 20px;font-weight:600}button:disabled{opacity:.5;cursor:not-allowed}.error-text{color:#c0392b;font-size:14px}.hint-text{color:#9a9d9f;font-size:13px}.filters-row{flex-wrap:wrap;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.filter-group{min-width:0}.filter-period{align-items:center;gap:8px;display:flex}.filter-period input[type=date]{width:150px}.page-wide{max-width:1200px}.section-label{text-transform:uppercase;color:#9a9d9f;border-bottom:1px solid #eee;margin:24px 0 12px;padding-bottom:8px;font-size:13px;font-weight:700}.stat-cards{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px;display:grid}.stat-card{background:var(--color-white);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex-direction:column;gap:8px;padding:20px 24px;display:flex;position:relative;overflow:hidden}.stat-label,.stat-value{z-index:1;position:relative}.stat-label{color:#9a9d9f;font-size:13px}.stat-value{font-size:26px;font-weight:800}.stat-value-accent{color:var(--color-pink)}.stat-card-accent:after{content:"";background:color-mix(in srgb, var(--color-pink) 12%, white);width:min(30%,90px);position:absolute;top:0;bottom:0;right:0}.table-scroll{overflow-x:auto}.table{border-collapse:collapse;background:var(--color-white);border-radius:var(--radius-card);width:100%;box-shadow:var(--shadow-card);margin-top:8px;overflow:hidden}.table th,.table td{text-align:left;padding:10px 14px;font-size:14px}.table th{text-transform:uppercase;color:#9a9d9f;border-bottom:1px solid #eee;font-size:12px}.table-day-total td{background:var(--color-background);font-weight:700}.visits-card .table{box-shadow:none;border-radius:0;margin-top:0}.scale-swatch{border-radius:4px;flex-shrink:0;width:14px;height:14px}.rate-badge{border:1.5px solid var(--badge-color);color:var(--badge-color);background:color-mix(in srgb, var(--badge-color) 10%, white);white-space:nowrap;border-radius:8px;padding:4px 14px;font-size:13px;font-weight:700;display:inline-block}.calculator-layout{grid-template-columns:300px 1fr;align-items:start;gap:24px;display:grid}.calculator-results{flex-direction:column;min-width:0;display:flex}.scale-display-card{background:var(--color-white);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.card-header-strip{background:var(--color-background);text-transform:uppercase;color:#9a9d9f;letter-spacing:.02em;padding:14px 24px;font-size:12px;font-weight:700}.scale-display-body{flex-direction:column;gap:14px;padding:20px 24px;display:flex}.scale-display-row{align-items:center;gap:10px;font-size:14px;display:flex}.scale-display-footer{text-align:center;color:#9a9d9f;margin:4px 0 0;font-size:13px}.bucket-distribution-card{background:var(--color-white);border-radius:var(--radius-card);box-shadow:var(--shadow-card);margin-bottom:16px;overflow:hidden}.bucket-distribution-body{padding:20px 24px}.bucket-rows{flex-direction:column;gap:12px;display:flex}.bucket-row{align-items:center;gap:12px;display:flex}.bucket-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.bucket-label{width:92px;color:var(--color-graphite);flex-shrink:0;font-size:14px}.bucket-bar-track{background:#ececea;border-radius:4px;flex:1;height:8px;overflow:hidden}.bucket-bar-fill{border-radius:4px;height:100%;display:block}.bucket-stat{text-align:right;color:#9a9d9f;flex-shrink:0;width:110px;font-size:13px}.visits-card{background:var(--color-white);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.visits-card-body{padding:0}.visits-card-message{padding:20px 24px}.results-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:260px;padding:60px 24px;display:flex}.state-icon{color:#b8b6b3;background:#ececea;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;font-weight:700;display:flex}.state-title{margin:0;font-size:15px;font-weight:700}.state-subtitle{color:#9a9d9f;max-width:360px;margin:0;font-size:13px}.top-nav{background:var(--color-white);margin-bottom:24px;padding:0 32px}.top-nav-row{justify-content:space-between;align-items:center;display:flex}.top-nav-brand-row{border-bottom:1px solid #eee;padding:20px 0}.top-nav-brand{align-items:center;gap:12px;display:flex}.top-nav-logo{letter-spacing:.03em;font-size:15px;font-weight:800}.top-nav-divider{background:#ddd;width:1px;height:16px}.top-nav-domain{color:#9a9d9f;font-size:14px}.top-nav-user{align-items:center;gap:16px;display:flex}.top-nav-greeting{font-size:14px;font-weight:600}.login-page{flex-direction:column;min-height:100vh;display:flex}.login-page .centered-page{flex:1;min-height:0}.login-header{text-align:center}.login-seal{filter:drop-shadow(0 2px 6px #1a1f2912);width:64px;height:auto;margin:0 auto 12px;display:block}.login-header h1{margin:0;font-size:22px}.login-subtitle{color:#9a9d9f;margin:4px 0 0;font-size:14px}.login-divider{border:none;border-top:1px solid #eee;margin:0}.login-hint{text-align:center;margin:0}.button-green{background:var(--color-green)}.button-outline-green{background:var(--color-white);color:var(--color-green);border:1.5px solid var(--color-green);padding:8px 18px;font-size:13px}
