:root{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#18231d;background:#f4f7f4;font-synthesis:none;text-rendering:optimizeLegibility;--green:#147b51;--dark:#15241b;--muted:#748078;--line:#e7ece8;--card:#fff}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 78% -10%,#dcefe3 0,transparent 42%),#f4f7f4}button,input,select{font:inherit}button{cursor:pointer}.shell{max-width:1240px;margin:auto;padding:0 36px 38px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe8e1}.brand,.account,.page-heading,.panel-heading,.daily-actions,.date-range,.periods{display:flex;align-items:center}.brand{gap:12px}.brand>div:last-child{display:flex;flex-direction:column;gap:2px}.brand strong{font-size:14px}.brand-mark{width:48px;height:48px;border-radius:15px;background:var(--green);color:white;display:grid;place-items:center;font-family:Manrope,sans-serif;font-size:25px;font-weight:800;box-shadow:0 7px 18px #147b5129}.brand-mark.small{width:36px;height:36px;border-radius:11px;font-size:18px}.eyebrow{margin:0 0 7px;color:#839087;font-weight:700;font-size:10px;letter-spacing:.13em}.brand .eyebrow{margin:0;font-size:9px}.account{gap:16px;color:#68766d;font-size:13px}.button{border:1px solid var(--line);background:white;border-radius:9px;padding:9px 14px;color:#35463a;font-size:13px;font-weight:600;transition:.15s}.button:hover{border-color:#b8cbbd;background:#f9fcfa}.button.primary{background:var(--green);border-color:var(--green);color:white;padding:12px}.button.primary:hover{background:#0d6843}.button.secondary{background:white}.button.quiet{border:0;background:transparent;color:#758178}.button.full{width:100%;margin-top:8px}.page-heading{justify-content:space-between;margin:42px 0 28px}.page-heading h1,.login-card h1{margin:0;font-family:Manrope,sans-serif;font-size:30px;letter-spacing:-.04em}.freshness{display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;color:#69776e;background:#fff;font-size:12px}.freshness i{width:7px;height:7px;border-radius:50%;background:#45a477;box-shadow:0 0 0 3px #e5f4eb}.freshness.stale i{background:#d49433;box-shadow:0 0 0 3px #fbf0dd}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.periods{padding:4px;background:#e9efea;border-radius:10px;gap:2px}.period{border:0;background:transparent;padding:9px 13px;border-radius:7px;color:#68776d;font-size:12px}.period.active{background:#fff;color:var(--dark);font-weight:700;box-shadow:0 1px 3px #12221912}.date-range{gap:10px}.date-range label{display:flex;align-items:center;gap:7px;color:#87928a;font-size:12px}.date-range input{border:1px solid var(--line);border-radius:8px;padding:8px 9px;background:white;color:#26362b;font-size:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.stat-card,.panel{border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:0 4px 18px #19342005}.stat-card{padding:20px 22px;display:flex;flex-direction:column;align-items:flex-start}.stat-card span{font-size:12px;color:#77837a}.stat-card strong{margin:10px 0 3px;font-family:Manrope,sans-serif;font-size:32px;letter-spacing:-.04em}.stat-card small{font-size:11px;color:#9aa49d}.panel{padding:20px 22px;margin-bottom:18px}.panel-heading{justify-content:space-between;gap:15px;margin-bottom:17px}.panel-heading h2{margin:0 0 4px;font-family:Manrope,sans-serif;font-size:17px;letter-spacing:-.025em}.muted{color:#8a958d;font-size:12px;margin:0}.search input{width:210px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:#fbfcfb;font-size:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{padding:10px 13px;border-bottom:1px solid var(--line);color:#859087;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}th button{padding:0;border:0;background:none;color:inherit;text-transform:inherit;letter-spacing:inherit;font-weight:inherit}th button span{color:#b0b9b2}td{padding:14px 13px;border-bottom:1px solid #f0f3f0;color:#435248;font-size:13px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfdfb}.tag-link{border:0;background:#eaf5ee;color:#15774e;padding:6px 9px;border-radius:6px;font-weight:700;font-size:12px}.metric{font-weight:700;color:#23372a}.subtle{color:#9aa49d;font-size:11px}.empty{text-align:center;padding:32px 10px;color:#8b968e;font-size:13px}.back-link{border:0;background:transparent;padding:0 0 9px;color:#26805a;font-weight:700;font-size:12px}.daily-actions{gap:10px}.select-label{display:flex;align-items:center;gap:8px;color:#859087;font-size:11px}.select-label select{border:1px solid var(--line);border-radius:8px;background:white;padding:8px;color:#35463a}footer{text-align:center;color:#a0aaa2;font-size:11px;padding:12px}.login-card{width:min(420px,100%);margin:12vh auto 0;padding:36px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 50px #1934200b}.login-card>.brand-mark{margin-bottom:24px}.login-card h1{font-size:25px}.login-card form{display:flex;flex-direction:column;margin-top:28px}.login-card label{font-size:12px;font-weight:600;color:#47564b;margin:0 0 7px}.login-card input{height:43px;border:1px solid #dfe6e0;border-radius:8px;padding:0 11px;margin-bottom:17px;outline:none}.login-card input:focus,.search input:focus,.date-range input:focus{border-color:#71ad8d;box-shadow:0 0 0 3px #e6f3eb}.error{color:#b33333;font-size:12px;margin:0 0 12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
@media(max-width:800px){.shell{padding:0 18px 28px}.topbar{height:70px}.page-heading{align-items:flex-start;gap:15px;flex-direction:column;margin:30px 0 22px}.page-heading h1{font-size:26px}.toolbar{align-items:stretch;flex-direction:column}.periods{overflow-x:auto;justify-content:flex-start}.period{white-space:nowrap;padding:9px 12px}.date-range{flex-wrap:wrap}.date-range label{flex:1}.date-range input{min-width:0;width:100%}.stats{gap:9px}.stat-card{padding:15px 12px}.stat-card span{font-size:10px;min-height:28px}.stat-card strong{font-size:24px}.stat-card small{font-size:9px}.panel{padding:17px 13px}.panel-heading{align-items:flex-start;flex-direction:column}.search,.search input{width:100%}.table-wrap table{min-width:640px}.account{gap:6px}.account #account-name{font-size:11px}.daily-actions{width:100%;justify-content:space-between}.login-card{margin-top:8vh;padding:28px 23px}}

.page-status{display:flex;justify-content:flex-end;margin:16px 0}
.toolbar{position:relative;z-index:8;padding:13px 15px;border:1px solid #e5ebe6;border-radius:12px;background:linear-gradient(105deg,#fff 0%,#fbfdfb 68%,#f7fbf8 100%)}
.toolbar-copy .eyebrow{margin:0 0 4px;font-size:9px}.toolbar-copy .muted{font-size:11px}
.date-picker{position:relative;z-index:9}.date-picker-trigger{display:flex;align-items:center;gap:10px;min-width:258px;height:42px;padding:0 12px;border:1px solid #dfe7e0;border-radius:9px;background:#fff;color:#34453a;text-align:left;box-shadow:0 2px 6px #17331e08;transition:border-color .15s,box-shadow .15s}.date-picker-trigger:hover,.date-picker-trigger[aria-expanded="true"]{border-color:#a9cbb4;box-shadow:0 0 0 3px #e8f3eb}.date-picker-trigger>svg:first-child{width:17px;height:17px;fill:none;stroke:#66806d;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.date-picker-trigger span{flex:1;font-size:12px;font-weight:650}.date-chevron{width:16px;height:16px;fill:none;stroke:#829087;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}.date-picker-trigger[aria-expanded="true"] .date-chevron{transform:rotate(180deg)}
.date-picker-popover{position:absolute;top:calc(100% + 10px);right:0;display:grid;grid-template-columns:158px 292px;width:450px;border:1px solid #e1e8e2;border-radius:13px;background:#fff;box-shadow:0 18px 48px #1a30211c;overflow:hidden;animation:calendar-enter .16s ease-out}
@keyframes calendar-enter{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.date-presets{display:flex;flex-direction:column;gap:3px;padding:16px 11px;background:linear-gradient(180deg,#f8faf8,#f5f8f5);border-right:1px solid #edf1ed}.date-presets-label{margin:0 8px 9px;color:#98a39a;font-size:9px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.date-preset{width:100%;padding:9px 8px;border:0;border-radius:7px;background:transparent;color:#627067;text-align:left;font-size:11px;transition:background .12s,color .12s}.date-preset:hover{background:#edf4ef;color:#2f6647}.date-preset.active{background:#e5f2e8;color:#176f46;font-weight:700}.preset-note{display:flex;align-items:center;gap:6px;margin:auto 4px 0;padding-top:14px;color:#9aa49c;font-size:9px;line-height:1.4}.preset-note-dot{width:6px;height:6px;border-radius:50%;background:#64ad7e;box-shadow:0 0 0 3px #e4f1e7}
.calendar-content{padding:15px 16px 12px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-heading h3{margin:0;color:#334339;font-size:12px;font-weight:700;text-transform:capitalize}.calendar-nav{display:grid;place-items:center;width:27px;height:27px;border:1px solid transparent;border-radius:7px;background:transparent;color:#748178;font-size:21px;line-height:1}.calendar-nav:hover{border-color:#e7ece7;background:#f8faf8;color:#285b3d}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));justify-items:center}.calendar-weekdays{margin-bottom:5px}.calendar-weekdays span{display:grid;place-items:center;width:32px;height:25px;color:#a0aaa2;font-size:9px;font-weight:650}.calendar-days{row-gap:3px}.calendar-day{position:relative;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:#405046;font-size:11px;transition:background .12s,color .12s}.calendar-day:hover{background:#edf4ef;color:#216c44}.calendar-day.outside-month{color:#bdc5be}.calendar-day.in-range{border-radius:0;background:#edf5ef;color:#3c6248}.calendar-day.selected{z-index:1;border-radius:8px;background:#19744b;color:#fff;font-weight:700;box-shadow:0 3px 8px #19744b32}.calendar-day.today:not(.selected)::after{position:absolute;right:5px;bottom:4px;width:3px;height:3px;border-radius:50%;background:#36845a;content:""}.calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid #edf1ed}.calendar-selection{overflow:hidden;color:#859188;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.calendar-footer>div{display:flex;gap:5px;flex:none}.calendar-cancel,.calendar-apply{height:29px;padding:0 9px;border:1px solid #e4eae5;border-radius:7px;background:white;color:#69766d;font-size:10px;font-weight:650}.calendar-cancel:hover{background:#f7f9f7}.calendar-apply{border-color:#19744b;background:#19744b;color:#fff}.calendar-apply:hover:not(:disabled){border-color:#105f3b;background:#105f3b}.calendar-apply:disabled{border-color:#dfe8e1;background:#dfe8e1;color:#9aa69d;cursor:not-allowed}
@media(max-width:800px){.page-status{margin:12px 0}.toolbar{padding:12px}.toolbar-copy .muted{font-size:10px}.date-picker{width:100%}.date-picker-trigger{width:100%;min-width:0}.date-picker-popover{right:0;left:auto;grid-template-columns:126px minmax(0,1fr);width:min(450px,calc(100vw - 36px))}.date-presets{padding:13px 8px}.date-preset{padding:9px 7px;font-size:10px}.preset-note{font-size:8px}.calendar-content{padding:13px 10px 10px}.calendar-weekdays span,.calendar-day{width:30px}.toolbar-copy{margin-bottom:2px}}
@media(max-width:380px){.date-picker-popover{grid-template-columns:110px minmax(0,1fr);width:calc(100vw - 28px)}.calendar-content{padding-right:7px;padding-left:7px}.calendar-weekdays span,.calendar-day{width:27px;height:29px}.date-presets-label{font-size:8px}}

.tag-constructor{margin-bottom:20px}
.tag-constructor>.panel-heading{align-items:center}
.tag-type-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:4px 0 18px;padding:16px;border:1px solid var(--line);border-radius:11px;background:#fbfdfb}
.tag-type-form[hidden]{display:none}
.tag-type-form label,.tag-link-values label{display:flex;flex-direction:column;gap:6px;color:#59675d;font-size:11px;font-weight:650}
.tag-type-form input,.tag-link-values input{width:100%;height:38px;padding:0 10px;border:1px solid #dfe7e0;border-radius:8px;background:white;color:#26362b;font-size:12px}
.builder-intro,.builder-help,.field-editor{grid-column:1/-1}
.builder-intro{margin:0;color:#526157;font-size:12px;line-height:1.6}
.builder-help{margin:0;color:var(--muted);font-size:11px;line-height:1.6}
.field-editor{padding:12px;border:1px solid #e5ebe6;border-radius:8px;background:#fff}
.field-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.field-editor-heading>div{display:flex;flex-direction:column;gap:4px}
.field-editor-heading strong{font-size:11px;color:#59675d}
.field-editor-heading small{font-size:10px;color:var(--muted)}
.tag-type-fields{display:grid;gap:8px;margin-top:10px}
.tag-field-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:8px}
.tag-field-row label{min-width:0}
.tag-field-row label span{color:#b33333}
.tag-field-row .button{height:38px}
.link-preview{display:flex;flex-direction:column;gap:6px;grid-column:1/-1;padding:11px 12px;border:1px solid #e5ebe6;border-radius:8px;background:white}
.link-preview span{color:#839087;font-size:10px}
.link-preview code{overflow-wrap:anywhere;color:#315b40;font-size:12px}
.builder-error{grid-column:1/-1;margin:0;color:#b33333;font-size:11px}
.builder-actions{display:flex;grid-column:1/-1;justify-content:flex-end;gap:8px}
.tag-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.tag-type-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:9px;background:white}
.tag-type-card>div{display:flex;min-width:0;flex-direction:column;gap:5px}
.tag-type-card strong{font-size:12px}
.tag-type-card code{overflow:hidden;color:#78857b;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.tag-type-card small{color:#9aa49d;font-size:10px}
.tag-link-builder{margin-top:14px;padding:15px;border:1px solid var(--line);border-radius:10px;background:#fbfdfb}
.tag-link-builder[hidden]{display:none}
.link-builder-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:12px}
.tag-link-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.generated-tags{display:grid;gap:7px;margin-top:12px}
.generated-tag{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:white}
.generated-tag>div{display:flex;min-width:0;flex-direction:column;gap:4px}
.generated-tag strong{font-size:11px}
.generated-tag a{overflow:hidden;color:#28744c;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.generated-tag-actions{display:flex;align-items:center;gap:3px;flex:none}
.button.danger{color:#b33333}
.button.danger:hover{background:#fff6f5;border-color:#f1d4d1}
.button.icon-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid transparent;border-radius:8px}
.button.icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.button.icon-button:hover{border-color:#f1d4d1;background:#fff6f5}
.tag-types:empty,.generated-tags:empty{display:none}
@media(max-width:800px){.tag-constructor>.panel-heading{align-items:flex-start}.tag-type-form{grid-template-columns:1fr}.tag-types{grid-template-columns:1fr}.tag-link-values{grid-template-columns:1fr 1fr}.generated-tag{align-items:flex-start}.tag-field-row{grid-template-columns:1fr 1fr}.tag-field-row .button{grid-column:1/-1;justify-self:end}}
@media(max-width:440px){.tag-link-values{grid-template-columns:1fr}.tag-type-card{align-items:flex-start;flex-direction:column}.tag-type-card .button{width:100%}}
