
:root{--primary:#173c36;--background:#f3f6f4;--surface:#ffffff;--text:#192f2e;--muted:#667970;--warning:#a24f2c;--line:#dce5df;--soft:#e8f0eb;--focus:#ba7540;--radius:12px;--control:8px;--body:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif;--display:var(--body);--numeric:"Segoe UI",Arial,var(--body);--scroll-thumb:#99ada1;--scroll-track:#edf2ee;--scroll-hover:#6f8b79;--scroll-active:#41634f;font:14px/1.65 var(--body);color:var(--text);background:var(--background);scrollbar-gutter:stable;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:auto}*{box-sizing:border-box;scrollbar-color:var(--scroll-thumb) var(--scroll-track)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:2px solid var(--scroll-track);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}::-webkit-scrollbar-thumb:active{background:var(--scroll-active)}body{margin:0}a{color:var(--primary);text-underline-offset:4px}a:hover{color:var(--warning)}button,a.button{cursor:pointer}button,input,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;border:1px solid var(--line);border-radius:var(--control);background:var(--surface);color:var(--primary);text-decoration:none;line-height:1.5}button:hover,.button:hover{background:var(--soft);border-color:#9eafa4}button:active,.button:active{transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}.primary,button.selected{background:var(--primary);color:white;border-color:var(--primary)}.primary:hover,button.selected:hover{background:#28594c;color:white}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}input{border:1px solid #b8c9bc;border-radius:var(--control);padding:12px;width:100%;min-height:44px;color:var(--text);background:var(--surface)}input[readonly]{background:var(--soft)}input[aria-invalid=true]{border-color:var(--warning)}label{display:block;font-weight:500;margin-bottom:7px}.field{margin-bottom:14px}.field-error{color:var(--warning);font-size:12px;min-height:20px;margin:4px 0 0}.muted,.small{color:var(--muted)}.small{font-size:12px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.35;font-weight:600}h2{font-size:17px;margin-bottom:18px}h3{font-size:15px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 34px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--primary);font-size:22px;font-weight:600;text-decoration:none}.door{width:28px;height:34px;display:inline-block;border:2px solid currentColor;border-radius:14px 14px 0 0;position:relative}.door:after{content:"";width:4px;height:4px;position:absolute;right:5px;top:19px;border-radius:50%;background:currentColor}.top-actions{display:flex;align-items:center;gap:16px}.top-actions form{margin:0}.workspace{max-width:1440px;margin:auto;display:grid;grid-template-columns:244px minmax(0,1fr);gap:32px;padding:32px}.rail{min-width:0}.rail-title{display:flex;align-items:center;justify-content:space-between;margin:2px 0 20px}.rail-title h2{margin:0}.profiles{display:grid;gap:12px;min-height:88px}.profile{width:100%;display:block;text-align:left;padding:17px 15px;border-left:3px solid var(--line);border-radius:3px 12px 12px 3px;position:relative}.profile.selected{border-left-color:var(--primary);background:var(--surface);color:var(--text);box-shadow:0 3px 15px #173c3609}.profile strong{display:block;font:18px var(--numeric);letter-spacing:.2px;margin-bottom:9px}.profile .badge{font-size:11px}.rail .button{width:100%;margin-top:18px}.rail-note{font-size:12px;color:var(--muted);margin-top:22px;line-height:1.9}.content{min-width:0}.heading{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:20px}.heading h1{margin:8px 0 0;font-family:var(--numeric)}.heading p{margin:6px 0 0}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:5px;background:var(--soft);color:#31594a;font-size:12px}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge.expired,.badge.error,.badge.unbound{background:#fbede2;color:var(--warning)}.badge.pending{background:#edf0ef;color:var(--muted)}.notice{min-height:28px;font-size:13px;color:var(--muted);margin:10px 0;line-height:1.8}.notice.error{color:var(--warning)}.notice:not(:empty){padding:10px 14px;background:var(--surface);border-left:3px solid #91ac9a}.notice.error:not(:empty){border-color:var(--warning)}.toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:22px 0}.toolbar label{font-size:12px;color:var(--muted);margin:0}.toolbar input{padding:8px;min-height:42px}.toolbar .right{margin-left:auto}.presets{display:flex;gap:6px;align-self:end}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.label{color:var(--muted);font-size:12px}.value{font:34px/1.3 var(--numeric);margin:14px 0 8px}.grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin:22px 0}.panel{min-width:0;margin-bottom:20px}.grid .panel{margin-bottom:0}.trendwrap{overflow-x:auto}.trend{width:100%;height:230px;min-width:510px}.legend{color:var(--muted);font-size:11px;line-height:1.8}.method{margin:15px 0}.track{height:7px;background:var(--soft);border-radius:4px;margin-top:9px}.fill{height:100%;background:#789d88;border-radius:4px}.bars{height:120px;display:flex;align-items:flex-end;gap:4px;border-bottom:1px solid var(--line);padding-top:24px}.bar{background:#789d88;flex:1;min-width:1px;border-radius:3px 3px 0 0}.bar:hover{background:var(--primary)}.axis{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:9px}.daybutton{font:13px var(--numeric);margin:3px;padding:8px 12px;min-height:38px}.daybutton.active{background:var(--primary);color:white}#days{max-height:140px;overflow:auto;margin-bottom:18px}.events{margin:12px 0}.event{border-left:2px solid #91ac9a;padding:13px 16px;margin-left:7px;display:flex;gap:30px}.event time{font:18px var(--numeric);min-width:85px}.tipbox{padding:18px 22px;background:#e8efea;border-radius:var(--radius);margin:22px 0}.tipbox h2{margin-bottom:8px}.tipbox p{font-size:13px;line-height:1.9;margin:6px 0}.tablewrap{overflow:auto;min-height:170px}table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line)}th{font-weight:500;color:var(--muted)}td{font-variant-numeric:tabular-nums}.empty{padding:60px 25px;text-align:center;border:1px dashed #b8c9bc;border-radius:12px;background:white}.empty h2{font-size:22px}footer{font-size:12px;color:var(--muted);padding:10px 0 24px}.auth-wrap{max-width:980px;margin:7vh auto;padding:24px;display:grid;grid-template-columns:.9fr 1.1fr;min-height:600px}.auth-story{background:var(--primary);color:#edf3ec;padding:48px 40px;border-radius:18px 0 0 18px;display:flex;flex-direction:column;justify-content:space-between}.auth-story .brand{color:white}.auth-story h1{font-family:var(--display);font-size:36px;font-weight:500;line-height:1.6}.auth-story p{color:#bdcec2;font-size:13px;line-height:1.9}.auth-main{background:white;border:1px solid var(--line);border-left:0;padding:44px 40px;border-radius:0 18px 18px 0}.auth-main h2{font-size:25px;margin:14px 0 12px}.auth-main .intro{color:var(--muted);font-size:13px;line-height:1.9;margin-bottom:25px}.auth-main .primary{width:100%;min-height:46px}.auth-note{border-top:1px solid var(--line);padding-top:20px;margin-top:22px;font-size:12px;color:var(--muted);line-height:1.9}.password-row{display:flex;gap:8px}.password-row input{min-width:0}.password-row button{flex:none}.back{font-size:13px}.bind-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}summary{cursor:pointer;font-weight:500}#records-area[aria-busy=true]{opacity:.55} /* Hidden semantics must override flex/grid component display. */[hidden]{display:none!important} @media(max-width:1100px){.workspace{gap:20px;padding:24px;grid-template-columns:210px minmax(0,1fr)}.cards{gap:10px}.card{padding:16px}.toolbar .right{margin-left:0}}@media(max-width:900px){.workspace{grid-template-columns:1fr}.profiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.rail-note{display:none}.rail .button{width:auto}.rail-title{margin-bottom:12px}.rail{border-bottom:1px solid var(--line);padding-bottom:20px}}@media(max-width:600px){.topbar{height:68px;padding:0 18px}.top-actions .small{display:none}.workspace{padding:20px 16px}.cards{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.heading{align-items:flex-start}.heading h1{font-size:24px}.value{font-size:30px}.panel{padding:18px}.toolbar{align-items:center}.toolbar label{flex:1;min-width:120px}.auth-wrap{display:block;margin:0;padding:16px;min-height:0}.auth-story{padding:25px;border-radius:14px 14px 0 0}.auth-story h1{font-size:25px;margin:20px 0 0}.auth-story p{display:none}.auth-main{padding:28px 24px;border:1px solid var(--line);border-radius:0 0 14px 14px}.bind-fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none;animation:none}}@media(forced-colors:active){:root,*{scrollbar-color:auto}.badge{border:1px solid}.profile.selected{outline:2px solid Highlight}.door{color:CanvasText}}

.view-nav{display:flex;gap:6px;padding:0 0 16px;margin:0 0 22px;border-bottom:1px solid var(--line);flex-wrap:wrap}.view-nav button{min-width:90px}.view-nav button[aria-pressed=true]{background:var(--primary);color:var(--surface);border-color:var(--primary)}#resident-content{min-height:270px}#resident-content[aria-busy=true]{opacity:.55}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.info-grid dt{color:var(--muted);font-size:12px;margin-bottom:6px}.info-grid dd{margin:0;font-size:17px;overflow-wrap:anywhere}.contract-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contract-card{display:flex;flex-direction:column;gap:12px}.contract-card h3{font-size:17px;line-height:1.7;margin:0;overflow-wrap:anywhere}.contract-card .button{align-self:start}.contract-card .detail{margin:0;display:grid;grid-template-columns:90px 1fr;gap:8px;font-size:13px}.detail dt{color:var(--muted)}.detail dd{margin:0;overflow-wrap:anywhere}.contract-picker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.contract-picker button{max-width:100%;white-space:normal;text-align:left}.bill-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.bill-summary .value{font-size:28px}.bill-pager{display:flex;align-items:center;gap:12px;margin-top:18px}.bill-state{font-size:12px;border-radius:5px;background:var(--soft);padding:4px 8px;white-space:normal}.resident-loading{min-height:150px;display:grid;place-items:center;color:var(--muted)}@media(max-width:600px){.contract-list{grid-template-columns:1fr}.bill-summary{grid-template-columns:1fr 1fr}.bill-summary .card:last-child{grid-column:auto}.info-grid{gap:20px}.view-nav{gap:5px}.view-nav button{min-width:0;flex:1;padding:9px 10px}}

.nav-identity{display:flex;align-items:center;gap:10px;min-width:0}.nav-nickname{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resident-avatar{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:var(--background);color:var(--muted);font-size:10px}.resident-avatar img{display:block;width:32px;height:32px;object-fit:cover}@media(max-width:600px){.topbar{gap:8px;padding:0 12px}.topbar .brand{gap:8px}.topbar .brand .eyebrow{display:none}.top-actions{gap:10px;min-width:0}.nav-nickname{max-width:70px}.top-actions button{padding:9px 10px}}

/* Compact dashboard: shared surfaces and restrained account navigation. */
.topbar{height:72px}.topbar .eyebrow{letter-spacing:1px}.workspace{gap:28px;padding-top:28px;grid-template-columns:220px minmax(0,1fr)}.rail-title h2{font-size:13px;color:var(--muted);font-weight:500}.profile{padding:16px;border-color:transparent;background:transparent}.profile.selected{background:var(--surface);border-color:var(--line);box-shadow:0 3px 12px #173c3606}.profile strong{font-size:15px}.rail>.primary{margin-top:16px}.heading{margin-bottom:18px}.heading h1{font-size:26px;margin:6px 0}.heading .small{margin-bottom:0}.view-nav{gap:6px;padding:5px;border:1px solid var(--line);background:var(--soft);border-radius:10px;margin-bottom:24px;width:fit-content;max-width:100%}.view-nav button{border:0;background:transparent;min-height:38px;padding:8px 22px;border-radius:7px}.view-nav button[aria-pressed=true]{background:var(--surface);color:var(--primary);box-shadow:0 2px 5px #173c3610}.panel{border-color:var(--line);box-shadow:0 2px 8px #173c3603}.cards{gap:14px;margin-bottom:22px}.card{padding:22px}.label{font-size:12px;letter-spacing:.3px}.value{font-size:32px;font-weight:600;margin-top:8px}.toolbar{gap:12px}.toolbar label{font-size:11px;color:var(--muted)}.toolbar input{padding:9px 12px;min-height:40px}.notice:empty,#comparison:empty{display:none}.notice{min-height:0;margin:12px 0}.notice.error{padding:12px 16px;border-radius:8px;background:#fcf1e9}.legend{font-size:11px;margin-top:8px}.panel h2,.panel h3{font-weight:600}.panel h2 .muted{font-size:11px;font-weight:400;margin-left:8px}th{background:var(--background);font-size:12px}td{padding:16px 12px}tbody tr:hover{background:#f7faf8}td button{min-height:32px;padding:5px 10px;font-size:12px}.info-grid{gap:24px}.info-grid dt{font-size:12px}.info-grid dd{font-family:var(--body);font-size:16px}.bill-summary{gap:12px}.bill-summary .card{border:1px solid var(--line)}#bill-detail{margin-top:20px;border-top:3px solid var(--primary);scroll-margin-top:20px}#bill-detail:focus{outline:none}#bill-detail:focus-visible{outline:2px solid var(--focus);outline-offset:3px}#bill-detail .bill-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.payment-list .detail{display:grid;margin:0;padding:18px;background:var(--background);border-radius:8px;grid-template-columns:76px minmax(0,1fr);gap:12px}.tipbox{padding:18px 22px}.tipbox h2{font-size:13px}.tipbox p{font-size:13px;margin:6px 0}.contract-card h3{line-height:1.7}.contract-card button{margin-top:20px}.auth-main .intro{margin-bottom:24px}.nav-nickname{font-weight:500}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.rail{padding-bottom:18px}.rail>.primary{margin-top:12px}.profiles{gap:8px}.profile{padding:12px 14px}}
@media(max-width:600px){.topbar{height:64px}.workspace{padding:18px 14px;gap:20px}.view-nav{width:100%;gap:2px}.view-nav button{padding:8px 10px;flex:1;white-space:nowrap}.heading h1{font-size:23px}.card{padding:16px}.value{font-size:27px}.bill-summary .value{font-size:22px}.payment-list{grid-template-columns:1fr}.panel{padding:18px}.info-grid{gap:20px}.bill-summary{gap:8px}.bill-summary .card{padding:12px}.toolbar{gap:8px}}

.bill-overview{grid-template-columns:repeat(4,minmax(0,1fr))}.bill-overview .value{font-size:24px}@media(max-width:1100px){.bill-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}.bill-overview .card:last-child{grid-column:auto}

/* Type hierarchy and alignment, shared across views. */
body{-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--body);letter-spacing:0;line-height:1.45}button,input,select{font-family:var(--body)}button,.button{font-size:13px;font-weight:500;min-height:40px}h2,.panel h2{font-size:16px}.panel h3{font-size:15px}.heading>h2{margin:0}.heading{align-items:center}.heading>div:last-child:not(:first-child){text-align:right}.heading h1{font-size:26px;font-weight:600;line-height:1.3;letter-spacing:.2px}.eyebrow{font-size:12px;letter-spacing:.4px}.small,.label,.info-grid dt{font-size:12px;line-height:1.6}.brand{font-size:21px;line-height:1}.brand .eyebrow{font-size:11px}.badge{line-height:20px;white-space:nowrap}.profile strong{font-size:15px;font-weight:600;line-height:1.4}.value{font-family:var(--numeric);font-size:30px;font-weight:600;line-height:1.25;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.5px;margin:10px 0 0}.bill-summary .value,.bill-overview .value{font-size:26px}.card{display:flex;flex-direction:column;justify-content:space-between;min-width:0}.label{letter-spacing:0}.info-grid dd{font-size:14px;line-height:1.7}.info-grid{margin:0}.contract-card h3{font-size:16px}.contract-card .badge{align-self:flex-start}.contract-card button{align-self:flex-start;margin-top:auto}.detail{font-size:13px;line-height:1.7}.detail dt,.detail dd{align-self:start}.payment-list .detail{align-content:start;grid-template-columns:76px minmax(0,1fr)}.contract-picker button{font-variant-numeric:tabular-nums}.toolbar{align-items:flex-end}.toolbar label{font-size:12px}.toolbar input,.toolbar button,.toolbar .button{height:40px;min-height:40px}.presets{align-self:flex-end}.view-nav button{line-height:22px}th,td{padding:14px 14px;vertical-align:middle;font-size:13px;line-height:1.6}th{font-weight:500;font-size:12px}.bill-table th:nth-child(4),.bill-table th:nth-child(5),.bill-table td:nth-child(4),.bill-table td:nth-child(5){text-align:right;font-family:var(--numeric);font-variant-numeric:tabular-nums}.bill-table th:last-child,.bill-table td:last-child{text-align:center}.bill-table td:first-child{font-variant-numeric:tabular-nums}.bill-pager{align-items:center}.auth-story h1{font-size:32px;font-weight:600;line-height:1.5}.auth-main h2{font-size:24px}.event time,.daybutton{font-variant-numeric:tabular-nums}
@media(max-width:600px){.heading h1{font-size:22px}.value{font-size:26px}.bill-summary .value,.bill-overview .value{font-size:22px;letter-spacing:-.3px}.heading{gap:12px}.payment-list .detail{grid-template-columns:72px minmax(0,1fr)}th,td{padding:12px}.auth-story h1{font-size:25px}.brand{font-size:20px}.toolbar label{flex:1 1 calc(50% - 8px)}.toolbar .presets{flex-basis:100%}}

#sync-now{min-width:90px}

/* Monthly event calendar; date filters continue to own the query range. */
#days{max-height:none;overflow:visible;margin:0 0 24px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.calendar-header strong{font-size:15px;font-variant-numeric:tabular-nums}.calendar-header button{width:38px;min-height:36px;padding:0;font-size:22px;line-height:1}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-week{text-align:center;font-size:12px;color:var(--muted);margin-bottom:10px}.calendar-day{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:66px;padding:8px 4px;background:var(--surface);border-color:transparent;font-variant-numeric:tabular-nums}.calendar-date{font-size:15px;font-weight:500}.calendar-count{font-size:11px;color:var(--muted);line-height:1.4;min-height:16px}.calendar-day.has-events{background:var(--soft)}.calendar-day.active{background:var(--primary);color:var(--surface);border-color:var(--primary)}.calendar-day.active .calendar-count{color:var(--surface)}.calendar-day:disabled{opacity:.3;background:transparent}.calendar-day:hover:not(:disabled):not(.active){border-color:#9eafa4}.calendar-day.active:hover{background:#28594c}.calendar-day:focus-visible{position:relative;z-index:1}@media(max-width:600px){.calendar-week,.calendar-grid{gap:3px}.calendar-day{min-height:54px;padding:6px 2px;gap:3px}.calendar-date{font-size:14px}.calendar-count{font-size:10px}.calendar-header{margin-bottom:14px}}

.weekly-settings{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.weekly-settings summary{font-size:13px}.weekly-settings form{margin-top:18px}.weekly-settings input[type=email]{font-size:13px;padding:8px}.check-label{display:flex;align-items:center;gap:8px;font-size:12px}.check-label input{width:16px;min-height:16px;height:16px;accent-color:var(--primary)}.weekly-actions{display:flex;gap:8px;flex-wrap:wrap}.weekly-actions button{font-size:12px;flex:1;white-space:nowrap}#weekly-body{font:12px/1.8 var(--body);white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}

/* Hourly counts stay visible; hovering or focusing any hour reveals its exact value. */
.hours-total{display:inline-block;margin-left:18px;color:var(--primary);font:600 13px/1.5 var(--numeric);white-space:nowrap}
.hours-scroll{overflow-x:auto;overflow-y:hidden}
.hours-chart{min-width:720px}
.hours-chart .bars{height:150px;align-items:stretch;padding-top:24px}
.hour-slot{position:relative;display:flex;align-items:flex-end;flex:1;min-width:0;height:100%;outline-offset:-2px}
.hour-slot:focus-visible{outline:2px solid var(--focus);border-radius:3px}
.hour-slot .bar{width:100%;height:var(--bar-height);flex:none}
.hour-slot:hover .bar,.hour-slot:focus-visible .bar{background:var(--primary)}
.hour-count{position:absolute;left:0;right:0;bottom:calc(var(--bar-height) + 3px);color:var(--primary);font:600 11px/1.2 var(--numeric);text-align:center;pointer-events:none}
.hour-tooltip{position:absolute;z-index:2;top:0;left:50%;transform:translateX(-50%);display:none;padding:3px 7px;border-radius:4px;background:var(--primary);color:white;font:12px/1.5 var(--numeric);white-space:nowrap;pointer-events:none}
.hour-slot:hover .hour-tooltip,.hour-slot:focus-visible .hour-tooltip{display:block}
.hour-slot:first-child .hour-tooltip{left:0;transform:none}
.hour-slot:last-child .hour-tooltip{left:auto;right:0;transform:none}
@media(max-width:600px){.hours-total{display:block;margin:4px 0 0}}
@media(forced-colors:active){.hour-slot .bar{border:1px solid CanvasText}.hour-tooltip{border:1px solid CanvasText}}
