@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;450;500;550;600;650;700&display=swap');
:root{--ink:#25262b;--muted:#555b68;--line:#ececef;--soft:#f8f8fa;--selected:#f0f2ff;--accent:#5357d9;--side:#fafafa;--white:#fff;font-family:'Noto Sans KR',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);font-size:1rem;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--white)}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{background:none;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.shell{display:flex;min-height:100vh}.sidebar{width:226px;flex-shrink:0;background:var(--side);border-right:1px solid var(--line);padding:19px 12px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:10}.workspace{display:flex;align-items:center;gap:9px;padding:0 8px 19px;font-size:1.055556rem;font-weight:650;letter-spacing:-.5px}.mark{width:27px;height:27px;border-radius:7px;background:#27272b;color:white;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.722222rem}.workspace .chevron{margin-left:auto;color:var(--muted);font-size:1.111111rem}.search{display:flex;align-items:center;gap:9px;padding:7px 10px;color:#555b68;border:1px solid #e8e8ec;background:white;border-radius:6px;margin:0 6px 21px;box-shadow:0 1px 2px #00000003}.search input{width:100%;border:0;background:transparent;outline:none;font-size:0.888889rem;min-width:0;color:var(--ink)}kbd{font:inherit;font-size:0.777778rem;border:1px solid var(--line);border-radius:3px;padding:0 4px;white-space:nowrap}.nav-item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 11px;border-radius:6px;margin:2px 0;color:#555b68;font-size:0.944444rem;text-align:left}.nav-item svg{width:16px;height:16px}.nav-item:hover{background:#eeeef1}.nav-item.active{color:#292b32;background:#eaeaec;font-weight:600}.nav-item .num{margin-left:auto;color:#555b68;font-size:0.833333rem}.nav-label{display:flex;justify-content:space-between;font-size:0.833333rem;font-weight:500;color:#555b68;padding:28px 11px 9px}.favorite{font-size:0.888889rem;padding:8px 11px}.favorite svg{width:14px;height:14px;color:#555b68}.sidebar-bottom{margin-top:auto;padding-top:24px}.trial{border:1px solid #e6e6ec;border-radius:8px;padding:12px;font-size:0.833333rem;color:#555b68;margin:0 5px 14px;line-height:1.8}.trial strong{color:#52545c;font-weight:500;display:block}.account{display:flex;align-items:center;gap:9px;padding:13px 7px 0;border-top:1px solid var(--line);font-size:0.888889rem}.account small{display:block;color:#555b68;font-size:0.777778rem;margin-top:3px}.avatar{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e9e7f3;color:#746886;font-size:0.833333rem;font-weight:600;flex-shrink:0}.account .dots{margin-left:auto}.main{margin-left:226px;width:calc(100% - 226px);min-width:0}.topbar{height:54px;padding:0 27px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:11px;font-size:0.888889rem;color:#555b68}.topbar .crumb{color:#373942}.topbar .right{margin-left:auto;display:flex;align-items:center;gap:16px}.topbar .demo{font-size:0.777778rem;background:#f6f6f8;padding:3px 7px;border-radius:4px;color:#555b68}.icon-btn{padding:5px;display:grid;place-items:center;color:#555b68;border-radius:4px}.icon-btn:hover{background:var(--soft)}.page-heading{padding:26px 30px 0;display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:0.833333rem;color:#555b68;margin-bottom:8px}.page-heading h1{font-size:1.666667rem;letter-spacing:-.8px;font-weight:600;margin:0}.subheading{font-size:0.888889rem;color:#555b68;margin-top:9px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:32px;padding:6px 11px;border:1px solid #e3e3e9;border-radius:6px;background:white;font-size:0.888889rem;box-shadow:0 1px 2px #00000004;white-space:nowrap}.btn:hover{background:#f6f6f8}.btn.dark{background:#303139;border-color:#303139;color:white}.btn.dark:hover{background:#484954}.btn svg{width:14px;height:14px}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:0 30px;margin-top:26px;height:41px}.tab{font-size:0.888889rem;color:#555b68;padding:0 0 14px;position:relative}.tab.active{color:#30323b;font-weight:550}.tab.active:after{content:'';position:absolute;height:2px;background:#555961;bottom:-1px;left:0;right:0}.count{font-size:0.777778rem;background:#f1f1f4;border-radius:4px;padding:1px 5px;margin-left:5px;color:#555b68}.body-split{display:flex;min-height:calc(100vh - 223px)}.records{flex:1;min-width:0}.toolbar{height:53px;padding:0 22px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line)}.toolbar .filter{font-size:0.833333rem;min-height:27px;padding:4px 8px;color:#555b68}.toolbar .spacer{flex:1}.toolbar .record-count{font-size:0.833333rem;color:#555b68}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{font-size:0.833333rem;color:#555b68;font-weight:400;height:36px;background:#fcfcfd;border-bottom:1px solid var(--line)}td{height:62px;border-bottom:1px solid var(--line);font-size:0.888889rem}td,th{padding:0 15px}td+td,th+th{border-left:1px solid #f1f1f4}th:first-child,td:first-child{width:38px;padding-left:22px;padding-right:8px;border-right:0}th:nth-child(2),td:nth-child(2){border-left:0}tbody tr{cursor:pointer}tbody tr:hover{background:#fafaff}tbody tr.selected{background:#f4f4ff}input[type=checkbox]{appearance:none;width:12px;height:12px;border:1px solid #d9dae1;border-radius:3px;vertical-align:middle;margin:0;cursor:pointer;background:white}input[type=checkbox]:checked{background:#6b69c9;border-color:#6b69c9}input[type=checkbox]:checked:after{content:'✓';display:block;color:white;font-size:0.777778rem;text-align:center;line-height:11px}.person{display:flex;gap:9px;align-items:center;font-weight:500}.person .avatar{width:25px;height:25px;font-size:0.777778rem}.date{color:#555b68;font-size:0.833333rem}.status{font-size:0.777778rem;padding:3px 6px;background:#f1f1f5;border-radius:4px;color:#555b68;display:inline-flex;align-items:center;gap:4px}.status.ready{background:#edf5f1;color:#35684e}.status.ready:before{content:'';width:4px;height:4px;border-radius:50%;background:#72a58b}.reason{display:inline-flex;align-items:center;gap:6px}.reason svg{width:13px;height:13px;color:#555b68}.table-foot{color:#555b68;font-size:0.833333rem;padding:18px 22px}.empty{text-align:center;padding:70px 15px;color:#555b68}.detail{width:365px;flex-shrink:0;border-left:1px solid var(--line);padding:0 22px;background:white}.detail-tools{height:52px;display:flex;align-items:center;justify-content:space-between;color:#555b68;font-size:0.833333rem}.detail-tools>div{display:flex;gap:7px}.profile{display:flex;align-items:center;gap:12px;padding:7px 0 21px}.profile .avatar{width:42px;height:42px;font-size:1.111111rem;border-radius:11px}.profile h2{font-size:1.555556rem;letter-spacing:-.6px;margin:0;font-weight:550}.profile small{font-size:0.833333rem;color:#555b68;display:block;margin-top:5px}.props{display:grid;grid-template-columns:108px 1fr;row-gap:14px;font-size:0.833333rem;margin:0 0 25px}.props dt{color:#555b68}.props dd{margin:0;color:#5b5e69}.detail-tabs{display:flex;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);height:44px;align-items:center;font-size:0.888889rem}.detail-tabs button{font-size:0.888889rem;color:#555b68;padding:0}.detail-tabs button.active{color:#393c47;font-weight:550}.message-title{display:flex;align-items:center;justify-content:space-between;margin:21px 0 12px;font-size:0.888889rem;font-weight:500}.message-title span{font-size:0.777778rem;color:#555b68;font-weight:400}.message{width:100%;height:212px;resize:vertical;border:1px solid #ececf1;border-radius:7px;padding:14px;font-size:0.888889rem;line-height:1.95;background:#fcfcfd;color:#585b65;outline:none}.message:focus{border-color:#aaa5dc;box-shadow:0 0 0 2px #f2efff}.reference{font-size:0.777778rem;color:#555b68;line-height:1.9;padding:13px 0 18px}.reference b{font-weight:500;color:#555b68}.actions{display:flex;gap:7px}.actions .btn{flex:1}.complete{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:15px;border-top:1px solid var(--line);font-size:0.777778rem;color:#555b68}.complete button{font-size:0.833333rem;color:#6d69b3}.detail-history{padding-top:23px;font-size:0.888889rem}.history-entry{padding:0 0 23px 16px;border-left:1px solid var(--line);line-height:1.8}.history-entry small{color:#555b68;display:block;font-size:0.777778rem}.settings-shell{display:flex;min-height:calc(100vh - 54px)}.settings-nav{width:210px;padding:31px 18px;border-right:1px solid var(--line);flex-shrink:0}.settings-nav h2{font-size:1.166667rem;margin:0 10px 29px;font-weight:550}.settings-nav .nav-label{padding-top:21px}.settings-nav .nav-item{font-size:0.888889rem}.settings-content{width:100%;max-width:850px;padding:42px 54px 60px}.settings-content h1{font-size:1.666667rem;font-weight:550;letter-spacing:-.7px;margin:0 0 9px}.settings-content>.description{color:#555b68;font-size:0.888889rem;line-height:1.8;margin:0 0 36px}.section-title{font-size:0.944444rem;font-weight:550;margin:27px 0 17px}.setting-row{padding:20px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px}.setting-row label{font-size:0.888889rem;font-weight:500}.setting-row p{font-size:0.833333rem;color:#555b68;line-height:1.7;margin:6px 0 0;max-width:340px}.setting-row input:not([type=checkbox]),.setting-row select{border:1px solid #e3e4ea;border-radius:6px;padding:8px 10px;background:white;color:#5a5d68;font-size:0.888889rem;width:220px;outline:none}.setting-row input:focus,.setting-row select:focus{border-color:#aaa5dc}.toggle{position:relative;display:inline-flex;width:30px;height:17px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0}.toggle span{position:absolute;inset:0;background:#dedee5;border-radius:20px;cursor:pointer;transition:.2s}.toggle span:before{content:'';position:absolute;left:2px;top:2px;width:13px;height:13px;border-radius:50%;background:white;box-shadow:0 1px 3px #0002;transition:.2s}.toggle input:checked+span{background:#6862b8}.toggle input:checked+span:before{transform:translateX(13px)}.toggle input:focus-visible+span{outline:2px solid #a7a2de;outline-offset:3px}.savebar{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;align-items:center;margin-top:20px}.savebar small{font-size:0.833333rem;color:#555b68}.profile-setting{display:flex;align-items:center;gap:16px;margin:23px 0}.profile-setting .avatar{width:54px;height:54px;font-size:1.333333rem;border-radius:13px}.profile-setting p{font-size:0.833333rem;color:#555b68}.info-box{background:#f8f8fb;border:1px solid #ededf3;border-radius:7px;padding:15px 17px;font-size:0.833333rem;color:#555b68;line-height:1.9;margin-top:25px}.theme-options{display:flex;gap:13px;margin:23px 0}.theme-card{padding:10px;border:1px solid var(--line);border-radius:8px;width:150px;text-align:left}.theme-card.active{border-color:#9690d1;box-shadow:0 0 0 2px #f0eefb}.theme-preview{display:flex;height:80px;background:#fff;border:1px solid #eee;border-radius:4px;margin-bottom:9px}.theme-preview i{width:24%;background:#f2f2f5;border-right:1px solid #eee}.theme-preview div{flex:1;padding:12px}.theme-preview b{display:block;height:5px;background:#ececf2;margin-bottom:8px;border-radius:2px}.theme-card[data-theme=warm] .theme-preview{background:#fffcf6}.theme-card[data-theme=warm] i{background:#f3efe9}.theme-card span{font-size:0.833333rem}.settings-footer{font-size:0.777778rem;color:#555b68;margin-top:35px}.mobile-top{display:none}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,12px);background:#32323b;color:white;padding:10px 18px;border-radius:8px;font-size:0.888889rem;box-shadow:0 4px 25px #0002;opacity:0;pointer-events:none;transition:.2s;z-index:100}#toast.show{opacity:1;transform:translate(-50%,0)}body.warm{--side:#f7f5f1;--soft:#faf8f3;--white:#fffefa}body.compact td{height:47px}dialog{border:1px solid var(--line);border-radius:12px;padding:28px;width:360px;box-shadow:0 20px 80px #0002}dialog::backdrop{background:#20212e44}dialog h2{font-size:1.333333rem}dialog p{font-size:0.944444rem;color:#555b68;line-height:1.8}dialog .btn{float:right}@media(min-width:1600px){.detail{width:410px;padding:0 28px}.message{height:230px}td{height:69px}.page-heading{padding-top:34px}.tabs{margin-top:30px}}@media(max-width:1100px){.sidebar{width:190px}.main{margin-left:190px;width:calc(100% - 190px)}.detail{width:320px;padding:0 17px}.settings-content{padding:32px}.settings-nav{width:175px}td,th{padding:0 10px}.setting-row input:not([type=checkbox]),.setting-row select{width:180px}}@media(max-width:800px){.sidebar{width:58px;padding:15px 7px}.workspace{padding:0 8px 18px}.workspace>span:not(.mark),.sidebar .search,.nav-label,.favorite,.sidebar .trial,.nav-item>span,.account>div:not(.avatar),.account .dots{display:none}.nav-item{justify-content:center;padding:11px 0}.sidebar .account{padding:13px 6px 0}.main{margin-left:58px;width:calc(100% - 58px)}.topbar{padding:0 18px}.detail{display:none;position:fixed;right:0;top:54px;bottom:0;width:min(380px,calc(100vw - 58px));overflow-y:auto;z-index:12;box-shadow:-10px 0 40px #0001}.detail.mobile-open{display:block}.page-heading{padding:22px 20px 0}.tabs{padding:0 20px}.topbar .demo{display:none}.settings-shell{flex-direction:column}.settings-nav{width:100%;padding:18px;border-right:0;border-bottom:1px solid var(--line)}.settings-nav h2,.settings-nav .nav-label{display:none}.settings-nav nav{display:flex;gap:5px;overflow:auto}.settings-nav .nav-item{width:auto;white-space:nowrap;padding:7px 10px}.settings-content{padding:28px 22px}.setting-row{gap:12px}.setting-row input:not([type=checkbox]),.setting-row select{width:160px}.setting-row p{max-width:220px}.subheading{max-width:240px}.page-heading .btn{font-size:0.833333rem}.topbar .right{gap:9px}}@media(max-width:480px){.setting-row{align-items:flex-start;flex-wrap:wrap}.setting-row .toggle{margin-left:auto}.setting-row input:not([type=checkbox]),.setting-row select{width:100%}.settings-content{padding:24px 18px}.tabs{gap:17px}.theme-card{width:125px}.topbar .right>.icon-btn{display:none}}

/* Larger, readable typography — 2026-10-31 */
:root{--muted:#555b68}
.sidebar{width:254px}
.main{margin-left:254px;width:calc(100% - 254px)}
.workspace{letter-spacing:-.6px}
.nav-item{padding-top:11px;padding-bottom:11px}
.search{padding-top:10px;padding-bottom:10px}
.account small{line-height:1.6}
.trial{line-height:1.75}
.topbar{height:60px}
.btn{min-height:38px;padding:8px 12px}
.tabs{height:48px}
.tab{padding-bottom:16px}
.toolbar{height:60px}
.toolbar .filter{min-height:34px}
.body-split{min-height:calc(100vh - 260px)}
.detail{width:420px;padding:0 24px}
.detail-tools{height:58px}
.detail-tabs{height:50px;gap:22px}
.props{grid-template-columns:125px 1fr;row-gap:17px;line-height:1.65}
.profile{padding-bottom:25px}
.message{height:260px;padding:16px;line-height:1.85}
.message-title{line-height:1.7}
.reference{line-height:1.8}
.complete{gap:12px;flex-wrap:wrap;line-height:1.7}
.complete button{padding:5px 0}
.status{padding:4px 7px}
.person .avatar{width:29px;height:29px}
.person{gap:11px}
.table-scroll table{min-width:640px}
.reason{gap:7px}
.reason svg{width:15px;height:15px}
.reason,td{line-height:1.6}
tr td{height:74px}
th{height:44px}
.settings-shell{min-height:calc(100vh - 60px)}
.settings-nav{width:230px}
.settings-nav .nav-item{line-height:1.6}
.settings-content{max-width:980px;padding:42px 48px 60px}
.setting-row{gap:24px;padding:23px 0}
.setting-row input:not([type=checkbox]),.setting-row select{width:240px;padding:10px 12px;min-height:43px}
.setting-row p{line-height:1.8}
.settings-content>.description{line-height:1.8}
.toggle{width:36px;height:21px}
.toggle span:before{width:17px;height:17px}
.toggle input:checked+span:before{transform:translateX(15px)}
.theme-card{width:165px}
@media(min-width:1600px){.detail{width:450px;padding:0 28px}.message{height:275px}}
@media(max-width:1200px){.detail{width:370px;padding:0 20px}.settings-content{padding:32px}.settings-nav{width:195px}.setting-row{flex-wrap:wrap}.setting-row p{max-width:360px}}
@media(max-width:1100px){.sidebar{width:225px}.main{margin-left:225px;width:calc(100% - 225px)}.settings-nav{width:190px}}
@media(max-width:900px){.detail{display:none;position:fixed;right:0;top:60px;bottom:0;width:min(420px,calc(100vw - 58px));overflow-y:auto;z-index:12;box-shadow:-10px 0 40px #0001}.detail.mobile-open{display:block}}
@media(max-width:800px){.sidebar{width:58px}.main{margin-left:58px;width:calc(100% - 58px)}.workspace{padding-left:8px}.nav-item{padding:11px 0}.settings-nav{width:100%}.settings-nav .nav-item{padding:9px 12px}.settings-content{padding:28px 22px}.setting-row{align-items:center}.setting-row input:not([type=checkbox]),.setting-row select{width:100%}.setting-row .toggle{margin-left:auto}.topbar .right{gap:8px}}
@media(max-width:480px){.page-heading{gap:12px;align-items:flex-start}.page-heading .btn{padding:8px;font-size:0.833333rem}.page-heading h1{font-size:1.555556rem}.subheading{line-height:1.8}.tabs{gap:15px;padding:0 15px}.tab{font-size:0.833333rem}.count{font-size:0.777778rem}.toolbar{padding:0 14px}.toolbar .filter{font-size:0.777778rem}.toolbar .record-count{font-size:0.777778rem}.settings-content{padding:26px 18px}.theme-card{width:125px}.topbar{font-size:0.777778rem;padding:0 15px}.savebar{gap:16px}.trial{display:none}}

/* Tighter vertical rhythm — user feedback 2026-10-31 */
body{line-height:1.5}
.nav-item{padding-top:8px;padding-bottom:8px;line-height:1.4}
.account small{line-height:1.4;margin-top:2px}
.trial{line-height:1.5}
.page-heading h1{line-height:1.3}
.subheading{line-height:1.5;margin-top:6px}
.message{line-height:1.55;height:240px}
.props{row-gap:12px;line-height:1.45;margin-bottom:20px}
.profile{padding-bottom:19px}
.message-title{line-height:1.4;margin-top:17px;margin-bottom:10px}
.reference{line-height:1.5;padding:10px 0 14px}
.complete{line-height:1.45;margin-top:12px;padding-top:12px}
.reason,td{line-height:1.4}
tr td{height:46px}
body.compact tr td{height:40px}
.setting-row{padding:12px 0}
.setting-row p{line-height:1.5;margin-top:4px}
.settings-content>.description{line-height:1.5;margin-bottom:27px}
.settings-nav .nav-item{line-height:1.4}
.info-box{line-height:1.55}
.section-title{margin-top:22px;margin-bottom:13px}
.history-entry{line-height:1.5;padding-bottom:18px}
@media(min-width:1600px){.message{height:250px}}
@media(max-width:480px){.subheading{line-height:1.5}}

/* Customer names are displayed without initial avatars. */
.records .avatar,.detail .profile>.avatar{display:none}

/* Customer anniversaries and AI review */
.care-alert{padding:15px 24px;border-bottom:1px solid var(--line);background:#fafafe;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:0.888889rem}
.care-alert>span{display:flex;align-items:center;gap:8px}.care-alert b{font-weight:600}.due-tag{display:inline-block;margin-left:5px;color:#756bb7;font-size:0.777778rem}
.care-form{display:flex;flex-direction:column;gap:9px;margin:20px 0}.care-form label{font-size:0.888889rem;font-weight:500}.care-form textarea,.care-form input:not([type=checkbox]),.care-form select,.setting-row textarea{width:100%;border:1px solid #e3e4ea;border-radius:6px;background:white;padding:9px 11px;color:var(--ink);font-size:0.888889rem;line-height:1.5}.care-form textarea{resize:vertical}.care-form .btn{align-self:flex-end}.care-form .annual{display:flex;align-items:center;gap:8px;font-weight:400}.care-section-heading{font-size:0.944444rem;font-weight:550;padding-top:18px;border-top:1px solid var(--line)}.event-item{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0}.event-item b{font-size:0.888889rem;font-weight:500}.event-item small{display:block;font-size:0.777778rem;color:var(--muted);margin-top:4px}.detail{padding-bottom:24px}.setting-row textarea{max-width:280px;resize:vertical}.btn:disabled,button:disabled{cursor:default;opacity:.5}
@media(max-width:800px){.care-alert{align-items:flex-start;flex-direction:column;padding:14px 18px}.care-alert>div{display:flex;gap:8px;flex-wrap:wrap}.setting-row textarea{max-width:100%}}
.event-select{width:100%;border:1px solid var(--line);border-radius:6px;padding:8px 10px;background:white;font:inherit;font-size:0.833333rem;margin-bottom:12px;color:var(--ink)}
.customer-select{font:inherit;color:inherit;text-align:left;padding:7px 0;min-height:36px;width:100%;cursor:pointer;border-radius:4px}.customer-select:hover{text-decoration:underline;text-underline-offset:4px}.customer-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Collapsible AI command sidebar */
#ai-chat{position:fixed;right:0;top:0;bottom:0;z-index:35;font-size:0.888889rem;color:var(--ink)}
#ai-chat.expanded{width:380px;display:flex;flex-direction:column;border-left:1px solid #e4e4ea;background:#fcfcfe;box-shadow:-6px 0 24px #25243d08}
.chat-heading{height:65px;display:flex;align-items:center;justify-content:space-between;padding:0 19px;border-bottom:1px solid var(--line);flex-shrink:0;background:white}.chat-heading>div{display:flex;align-items:center;gap:9px}.chat-heading strong{font-size:1rem;font-weight:600}.chat-heading small{font-size:0.777778rem;color:#555b68;background:#f1f0f8;border:1px solid #e7e5f1;border-radius:5px;padding:3px 6px}.chat-spark{color:#8173c9;font-size:1.5rem}.chat-heading .icon-btn{padding:7px;border:1px solid var(--line);background:white}
.chat-context{display:flex;align-items:center;gap:8px;padding:12px 20px;font-size:0.777778rem;color:#555b68;border-bottom:1px solid var(--line);background:#f9f9fc}.chat-context svg{width:14px;height:14px}
.chat-messages{overflow:auto;flex:1;min-height:0;padding:22px 19px;scroll-behavior:smooth}.chat-message{margin-bottom:21px;line-height:1.65;font-size:0.888889rem;overflow-wrap:anywhere}.chat-role{display:block;margin-bottom:7px;font-size:0.777778rem;color:#555b68}.chat-message>div{white-space:pre-wrap}.chat-message.user{margin-left:25px}.chat-message.user>div{background:#efedf7;border:1px solid #e9e6f2;border-radius:12px 12px 3px 12px;padding:11px 14px}.chat-message.user .chat-role{text-align:right}.chat-message.assistant>div{padding:0 2px}.chat-message.assistant .chat-role{color:#8374bc}
.chat-welcome{padding:21px 0}.chat-welcome>span{font-size:2.111111rem;color:#9a8ecc}.chat-welcome h2{font-size:1.333333rem;letter-spacing:-.6px;font-weight:550;margin:16px 0 12px}.chat-welcome p{white-space:pre-wrap;font-size:0.833333rem;line-height:1.8;color:#555b68;margin:0 0 28px}.chat-welcome button{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid #e7e6ee;background:white;border-radius:8px;padding:13px 12px;margin-bottom:9px;text-align:left;font-size:0.777778rem;color:#626374;gap:8px}.chat-welcome button:hover{border-color:#b4a9d8;background:#faf9ff}.chat-welcome svg{width:14px;height:14px;color:#555b68}
#chat-form{margin:0 15px;border:1px solid #dcd9e9;border-radius:11px;background:white;box-shadow:0 2px 8px #5e4e9710;flex-shrink:0;overflow:hidden}#chat-input{border:0;width:100%;padding:14px 13px 6px;line-height:1.6;font-size:0.888889rem;color:var(--ink);outline:none;resize:none;min-height:88px;background:transparent}#chat-input::placeholder{color:#555b68}.chat-compose-footer{display:flex;align-items:center;justify-content:space-between;padding:5px 11px 10px;gap:8px}.chat-compose-footer>span{font-size:0.777778rem;color:#555b68}.chat-send{border-radius:7px;background:#3a354e;color:white;display:grid;place-items:center;width:30px;height:30px}.chat-send:hover{background:#5d527c}.chat-send svg{width:17px;height:17px;transform:rotate(-90deg)}.chat-footnote{padding:10px 10px 13px;text-align:center;font-size:0.777778rem;color:#555b68;flex-shrink:0}
.chat-confirm{border:1px solid #dfd9ed;background:#f5f2fb;border-radius:9px;padding:14px;margin:14px 0}.chat-confirm>span{font-size:0.777778rem;font-weight:550;color:#9483ba}.chat-confirm p{font-size:0.833333rem;white-space:pre-wrap;line-height:1.7;overflow-wrap:anywhere}.chat-confirm>div{display:flex;gap:8px}.chat-confirm .btn{font-size:0.777778rem;min-height:34px}.chat-thinking{display:flex;align-items:center;gap:9px;color:#555b68;font-size:0.777778rem;margin:18px 0}.chat-thinking i{width:7px;height:7px;background:#a899cf;border-radius:50%;animation:thinking 1s ease-in-out infinite alternate}@keyframes thinking{to{opacity:.3;transform:scale(.7)}}
#ai-chat.collapsed{top:auto;bottom:25px;right:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1500px){body.ai-chat-open .main{width:calc(100% - 634px)}body.ai-chat-open .detail{width:360px;padding:0 20px}body.ai-chat-open .setting-row{flex-wrap:wrap}body.ai-chat-open .settings-nav{width:190px}body.ai-chat-open .settings-content{padding:32px}}
@media(max-width:1499px){#ai-chat.expanded{box-shadow:-12px 0 45px #2823371c}}
@media(max-width:600px){#ai-chat.expanded{width:min(100%,390px)}.chat-messages{padding:18px 17px}.chat-heading{height:58px}#ai-chat.collapsed{right:15px;bottom:17px}.chat-footnote{font-size:0.777778rem}}
.chat-expand-top{position:fixed;right:18px;top:72px;display:flex;align-items:center;gap:8px;border:1px solid #ddd8e9;border-radius:7px;padding:8px 13px;background:#fff;color:#796697;font-size:0.833333rem;box-shadow:0 2px 8px #3328440a}.chat-expand-top:hover{background:#f7f4fc}.chat-expand-top:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* Readability: larger text and clearly visible input hints — 2026-10-31 */
input::placeholder,textarea::placeholder,#chat-input::placeholder{color:#a6a8b2;opacity:1}
th{font-weight:500}
.chat-compose-footer>span{line-height:1.5}
.chat-heading{min-height:65px;height:auto;padding-top:12px;padding-bottom:12px}
.chat-heading>div{flex-wrap:wrap}
.chat-footnote{line-height:1.5}
.chat-compose-footer{flex-wrap:wrap}
@media(max-width:480px){.tabs{gap:12px;overflow-x:auto;flex-shrink:0}.tab{white-space:nowrap}.topbar .right{gap:6px}}

/* Scale typography only; retain layout and control dimensions. */
:root{font-size:var(--ui-font-size,18px)}
.font-size-preview{padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:0.888889rem;line-height:1.6;margin:0 0 10px}
.font-size-preview strong{font-weight:600}
.font-size-preview p{margin:6px 0 0;color:var(--ink)}

/* Shared row density for the live settings preview and customer list. */
body[data-density="extraCompact"] .records tbody td,body[data-density="extraCompact"] .density-preview tbody td{height:32px}
body[data-density="compact"] .records tbody td,body[data-density="compact"] .density-preview tbody td{height:40px}
body[data-density="comfortable"] .records tbody td,body[data-density="comfortable"] .density-preview tbody td{height:46px}
body[data-density="relaxed"] .records tbody td,body[data-density="relaxed"] .density-preview tbody td{height:56px}
body[data-density="spacious"] .records tbody td,body[data-density="spacious"] .density-preview tbody td{height:68px}
.records .customer-select,.density-preview .customer-select{min-height:0;padding:2px 0}
.density-preview{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0 0 12px;background:var(--white)}
.density-preview-heading{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 14px;background:var(--soft);font-size:0.833333rem}
.density-preview-heading span{color:var(--muted)}
.density-preview table{min-width:340px}
.density-preview th:first-child,.density-preview td:first-child{width:auto;padding-left:14px;padding-right:15px}
.density-preview tbody tr{cursor:default}
.density-preview .customer-select{display:block;cursor:default}
.density-preview p{margin:0;padding:8px 14px;font-size:0.777778rem;color:var(--muted);line-height:1.5}

/* Per-customer event notification pages. */
.notification-open{display:inline-flex;align-items:center;gap:10px;font:inherit;color:var(--ink);text-align:left;padding:4px 0;cursor:pointer}
.notification-open svg{width:16px;height:16px;color:var(--muted)}
.notification-open:hover{color:var(--accent);text-decoration:underline}
.notification-open:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.notification-back{margin-bottom:20px}.notification-search{display:flex;flex-direction:column;gap:8px;margin-top:22px;font-size:.888889rem}
.notification-search input,.notification-customer-fields input,.notification-customer-fields select{border:1px solid var(--line);border-radius:6px;padding:8px 10px;font:inherit;background:var(--white);color:var(--ink);min-width:0;max-width:100%}
#notification-save-state{font-size:.777778rem;color:var(--muted);min-height:1.5em}
.notification-customer{border-bottom:1px solid var(--line);padding:18px 0}.notification-customer[hidden]{display:none}
.notification-customer-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.notification-customer-heading strong{font-size:1rem;font-weight:550}.notification-customer-heading small{display:block;color:var(--muted);font-size:.722222rem;margin-top:3px}
.notification-customer-fields{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:12px 0 8px;font-size:.833333rem}.notification-customer-fields label{display:flex;flex-direction:column;gap:5px;max-width:100%}.notification-monthly{padding:9px 0}.notification-customer-state{font-size:.777778rem;color:var(--muted)}
.notification-form{border:1px solid var(--line);padding:15px;border-radius:8px;background:#fbfbfe}.notification-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.notification-title h3{font-size:15px;font-weight:550;margin:0}.notification-form .notification-hint{font-size:12px;color:var(--muted);line-height:1.6;margin:1px 0 7px}.notification-events{display:flex;flex-direction:column;gap:10px;padding:5px 0}.notification-events label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:400}.notification-events small{color:var(--muted);font-size:11px;margin-left:auto}

/* Bulk timing affects only the event currently being configured. */
.notification-bulk{border:1px solid var(--line);border-radius:8px;background:var(--soft);padding:14px 16px;margin:16px 0;font-size:0.888889rem}
.notification-bulk-controls{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;margin:10px 0}
.notification-bulk-controls label{display:flex;flex-direction:column;gap:5px;font-size:0.833333rem}
.notification-bulk-controls select{font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:6px;padding:8px 10px;min-height:38px}
.notification-bulk small{display:block;color:var(--muted);font-size:0.777778rem;line-height:1.5}
#notification-bulk-apply{background:#6653b5;border-color:#6653b5;color:#fff;font-weight:600}
#notification-bulk-apply:hover:not(:disabled){background:#534197;border-color:#534197}
#notification-bulk-apply:active:not(:disabled){background:#463582;border-color:#463582}
#notification-bulk-apply:focus-visible{outline:3px solid #9584db;outline-offset:3px}
#notification-bulk-apply:disabled{background:#dedbe9;border-color:#dedbe9;color:#686477;opacity:1}
.notification-customer-identity{display:flex;align-items:center;gap:10px;cursor:pointer;min-width:0}
.notification-customer-identity>input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}

/* Compact customer rows respond to the available settings panel width. */
.notification-customers{container-type:inline-size;container-name:notification-list}
.notification-customer{display:grid;grid-template-columns:minmax(130px,1fr) auto 44px;align-items:center;column-gap:18px;row-gap:3px;padding:12px 0}
.notification-customer-heading{display:contents}
.notification-customer-identity{grid-column:1;grid-row:1}
.notification-customer-identity>span{min-width:0;overflow-wrap:anywhere}
.notification-customer-heading>.toggle{grid-column:3;grid-row:1;justify-self:end;margin:0}
.notification-customer-fields{grid-column:2;grid-row:1;margin:0;gap:12px;flex-wrap:nowrap;min-width:0}
.notification-customer-fields label{font-size:.777778rem;gap:3px;min-width:0}
.notification-customer-fields input,.notification-customer-fields select{padding:6px 8px;min-height:36px}
.notification-customer-fields input[type=date]{width:160px}
.notification-customer-fields select{width:100px}
.notification-customer-state{grid-column:1 / -1;grid-row:2;padding-left:28px;line-height:1.4}
.notification-monthly{white-space:nowrap;padding:6px 0}
@container notification-list (max-width:570px){
 .notification-customer{grid-template-columns:minmax(0,1fr) 44px;gap:8px 12px}
 .notification-customer-heading>.toggle{grid-column:2}
 .notification-customer-fields{grid-column:1 / -1;grid-row:2;padding-left:28px;flex-wrap:wrap}
 .notification-customer-state{grid-row:3}
}
@container notification-list (max-width:300px){
 .notification-customer-fields{padding-left:0;gap:8px}
 .notification-customer-fields label{flex:1 1 120px}
 .notification-customer-fields input[type=date],.notification-customer-fields select{width:100%}
 .notification-customer-state{padding-left:0}
}

/* Accessible timing explanation: hover hint and click/keyboard popover. */
.notification-timing-field{display:flex;flex-direction:column;gap:5px;min-width:0;font-size:.833333rem}
.notification-customer-fields .notification-timing-field{gap:3px;font-size:.777778rem}
.notification-timing-heading{display:flex;align-items:center;gap:5px;white-space:nowrap}
.notification-timing-heading label{margin:0}
.notification-help-button{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;flex-shrink:0;border:1px solid var(--muted);border-radius:50%;color:var(--muted);background:var(--white);font-size:9px;line-height:1;font-weight:500}
.notification-help-button:hover,.notification-help-button:focus-visible{color:var(--accent);border-color:var(--accent);background:var(--selected)}
.notification-timing-help{width:min(390px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid var(--line);border-radius:12px;padding:20px;color:var(--ink);background:var(--white);box-shadow:0 12px 48px #0002;font-size:.833333rem;line-height:1.7}
.notification-timing-help strong{font-size:1rem}.notification-timing-help p{margin:10px 0}.notification-timing-help .btn{display:block;margin:16px 0 0 auto}
@container notification-list (max-width:300px){.notification-customer-fields .notification-timing-field{flex:1 1 120px}}

/* Modal backdrop absorbs dismissal clicks so underlying controls stay untouched. */
.notification-timing-help::backdrop{background:transparent}

/* Birth date and international age beside customer names. */
.customer-name-line{display:flex;align-items:center;flex-wrap:wrap;gap:4px 9px;min-width:0}
.customer-birth-summary{font-size:.722222rem;font-weight:400;color:var(--muted);line-height:1.5;white-space:nowrap}
.profile .customer-name-line{gap:5px 10px}
.notification-customer-identity .customer-name-line{overflow-wrap:anywhere}
.chat-file-tools{display:flex;align-items:center;gap:12px;margin:8px 0}.chat-file-tools button{border:1px solid #dedce8;border-radius:8px;background:white;padding:8px 10px;font:inherit;cursor:pointer;color:#625882}.chat-file-tools span,.chat-file-notice{font-size:12px;color:#828698}.chat-file-notice{margin:4px 0 10px;line-height:1.4}.chat-attachments:empty{display:none}.chat-file{display:flex;align-items:center;gap:8px;background:#f1eef8;border:1px solid #e4deef;border-radius:8px;padding:8px 10px;margin-bottom:6px}.chat-file>span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.chat-file small{color:#858093}.chat-file button{border:0;background:none;cursor:pointer;font-size:20px;color:#72687f}.file-drag-over{outline:2px dashed #9484b9;outline-offset:-3px}

/* Compact attachment action with space inside the composer border. */
#chat-form .chat-file-tools{margin:8px 12px;gap:8px;flex-wrap:wrap}
#chat-attach{font-size:.722222rem;line-height:1.4;min-height:30px;padding:4px 8px;border-radius:6px;white-space:nowrap}
#chat-form .chat-file-notice{margin:4px 12px 10px;font-size:.666667rem}
#chat-form .chat-attachments:not(:empty){margin:10px 12px 0}


/* Attachment actions share the bottom row with send. */
#chat-form .chat-compose-footer{align-items:center;flex-wrap:nowrap;padding:8px 12px 12px;gap:8px}
#chat-form .chat-compose-footer .chat-file-tools{margin:0;gap:8px;flex:1;min-width:0}
#chat-form .chat-compose-footer .chat-send{flex-shrink:0;margin-left:auto}


#chat-input::placeholder{color:#a6a8b2;opacity:1}


/* Keep the composer clear of the viewport bottom. */
#ai-chat.expanded #chat-form{margin-bottom:20px}

/* Retain the original sidebar width; adjust composer height only. */
#ai-chat.expanded #chat-form{align-self:stretch;width:auto;min-height:130px;margin:0 15px 20px;display:flex;flex-direction:column;border-radius:32px;border-color:#e8e8ed;box-shadow:0 3px 14px #25243d08}
#chat-form #chat-input{display:block;height:76px;min-height:76px;padding:14px 18px 6px;flex-shrink:0}
#chat-form .chat-compose-footer{margin-top:auto;padding:6px 16px 12px;min-height:52px}
#chat-form .chat-send{width:34px;height:34px;border-radius:50%}
.personal-instructions{display:block;width:100%;min-height:220px;resize:vertical;margin:10px 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);font:inherit;line-height:1.6}
.personal-instructions:focus{outline:2px solid var(--accent);outline-offset:2px}

#ai-chat.expanded{width:var(--chat-panel-width,380px)}
#chat-resize{position:absolute;left:-5px;top:0;bottom:0;width:10px;z-index:2;cursor:ew-resize;touch-action:none}
#chat-resize::after{content:'';position:absolute;left:4px;top:0;bottom:0;width:2px;background:transparent;transition:background .15s}
#chat-resize:hover::after,#chat-resize:focus-visible::after,.chat-resizing #chat-resize::after{background:#9484cf}
#chat-resize:focus-visible{outline:2px solid #9484cf;outline-offset:-2px}
body.chat-resizing,body.chat-resizing *{cursor:ew-resize!important;user-select:none!important}
@media(min-width:1500px){body.ai-chat-open .main{width:calc(100% - 254px - var(--chat-panel-width,380px))}}

/* Distinguish built-in events from advisor-created event types. */
.event-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 13px}
.event-section-heading .section-title{margin:0}
.event-source{display:inline-block;font-size:.666667rem;font-weight:500;line-height:1.5;white-space:nowrap;padding:2px 7px;border-radius:5px;vertical-align:middle}
.event-source.default{color:#555b68;background:#eeeef2}
.event-source.custom{color:#65509a;background:#eee8fa}
.custom-event-editor{border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--soft);margin-bottom:12px;font-size:.833333rem}
.custom-event-editor[hidden]{display:none}
.custom-event-editor>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.custom-event-editor input{font:inherit;min-width:150px;flex:1;border:1px solid var(--line);border-radius:6px;padding:8px 10px}
.custom-event-editor p{margin:8px 0 0;color:var(--muted);line-height:1.5}

/* Separate date, gender and age for quick scanning. */
.customer-birth-summary{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.777778rem;line-height:1.6;color:var(--muted);font-variant-numeric:tabular-nums}
.customer-birth-date{white-space:nowrap;letter-spacing:.015em}
.customer-birth-gender{display:inline-flex;align-items:center;justify-content:center;min-width:23px;padding:0 5px;border:1px solid var(--line);border-radius:4px;background:var(--soft);color:var(--ink);font-size:.722222rem;font-weight:500;line-height:1.6}
.customer-birth-age{color:var(--ink);font-weight:600;white-space:nowrap}
.customer-birth-missing{font-size:.722222rem}

/* Name navigation stays independent of bulk-selection checkboxes. */
.notification-customer-identity{cursor:default}
.notification-customer-identity>input{cursor:pointer}
.notification-customer-link{padding:0;margin:0;font:inherit;font-weight:inherit;color:inherit;line-height:inherit;text-align:left;border-radius:3px}
.notification-customer-link:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.notification-customer-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.customer-import-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(32,29,43,.36);padding:24px}.customer-import-dialog{width:min(1080px,100%);max-height:92vh;display:flex;flex-direction:column;background:var(--surface,#fff);color:var(--text,#292b34);border:1px solid #e1dce9;border-radius:14px;box-shadow:0 16px 70px #201d4326}.customer-import-dialog header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e7e4ed}.customer-import-dialog h2{font-size:22px;line-height:1.3;margin:0 0 6px}.customer-import-dialog header p,.import-hint{font-size:14px;line-height:1.5;color:#77778a;margin:0}.customer-import-body{overflow:auto;padding:20px 24px}.import-sheet{border:1px solid #e5e0eb;padding:14px;border-radius:10px;margin-bottom:12px}.import-sheet>small{display:block;color:#82798f;margin:4px 0 12px}.import-sheet-title{display:flex;align-items:center;gap:8px;font-size:16px}.import-sheet>label:not(.import-sheet-title),.import-field-grid label{display:flex;flex-direction:column;gap:4px;font-size:14px}.import-field-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.import-sheet select{width:100%;padding:8px;border:1px solid #ded9e7;border-radius:7px;background:white;color:#333;font:inherit}.import-summary{font-size:16px;background:#f4f1fa;border-radius:8px;padding:12px;margin:16px 0 10px}.import-selection{display:flex;gap:8px;margin:12px 0}.import-table-wrap{overflow:auto;border:1px solid #e6e1ed;border-radius:8px;max-height:42vh}.customer-import-dialog table{width:100%;border-collapse:collapse;min-width:760px;table-layout:auto}.customer-import-dialog th,.customer-import-dialog td{padding:10px 12px;border-bottom:1px solid #e9e5ed;text-align:left;font-size:14px;white-space:normal;height:auto}.customer-import-dialog th{background:#f8f7fb;position:sticky;top:0;font-weight:500;z-index:1}.customer-import-dialog td:first-child{width:40px}.customer-import-dialog td:nth-child(5){min-width:190px;max-width:300px;overflow-wrap:anywhere}.import-row-invalid,.import-row-duplicate{color:#92909c;background:#faf9fc}.import-row-review td:nth-child(5){color:#9b6a26}.import-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px;font-size:13px;color:#827c8d}.customer-import-dialog footer{border-top:1px solid #e7e4ed;padding:16px 24px;display:flex;align-items:center;justify-content:flex-end;gap:10px}.customer-import-dialog footer span{margin-right:auto;font-size:13px;color:#827c8d}.chat-file-tools{flex-wrap:wrap}.chat-file-tools #chat-import-customers{background:#eee8f8;color:#655183}.customer-import-dialog button:disabled{opacity:.45;cursor:default}@media(max-width:700px){.customer-import-backdrop{padding:8px}.import-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-import-dialog header,.customer-import-body,.customer-import-dialog footer{padding:14px}.customer-import-dialog footer{flex-wrap:wrap}.customer-import-dialog footer span{width:100%}}

/* Density must add breathing room even when customer metadata wraps to two lines. */
body{--customer-row-padding:10px;--customer-name-gap:5px}
body[data-density="extraCompact"]{--customer-row-padding:4px;--customer-name-gap:2px}
body[data-density="compact"]{--customer-row-padding:7px;--customer-name-gap:3px}
body[data-density="comfortable"]{--customer-row-padding:10px;--customer-name-gap:5px}
body[data-density="relaxed"]{--customer-row-padding:15px;--customer-name-gap:7px}
body[data-density="spacious"]{--customer-row-padding:22px;--customer-name-gap:9px}
.records tbody td,.density-preview tbody td{padding-top:var(--customer-row-padding);padding-bottom:var(--customer-row-padding);vertical-align:middle}
.records .customer-name-line,.density-preview .customer-name-line{flex-direction:column;align-items:flex-start;row-gap:var(--customer-name-gap)}

.custom-event-actions{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.custom-event-actions .btn{font-size:.722222rem;min-height:30px;padding:4px 8px}
.custom-event-deleted{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0;font-size:.777778rem;color:var(--muted)}

/* The global notification switch belongs next to the page title. */
.notification-page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:9px}
.notification-page-heading h1{margin:0}
.notification-master-control{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:.833333rem;color:var(--ink)}

/* Pause individual switches without changing their checked positions. */
.toggle.notification-toggle-paused input+span{background:#dedee5;cursor:not-allowed}
.toggle.notification-toggle-paused input:checked+span{background:#bfc1ce}
.toggle.notification-toggle-paused input+span:before{background:#fff}

/* Rename advisor-created event titles directly in the detail heading. */
.notification-detail-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#notification-title-edit{font:inherit;letter-spacing:inherit;padding:0;text-align:left;border-radius:4px;overflow-wrap:anywhere}
#notification-title-edit:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
#notification-title-editor{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-width:0}
#notification-title-editor[hidden],#notification-title-edit[hidden]{display:none}
#notification-title-name{font:inherit;letter-spacing:inherit;color:inherit;width:300px;max-width:70vw;min-width:0;padding:3px 6px;border:1px solid var(--accent);border-radius:5px;background:var(--white)}
.notification-title-status{font-size:.777778rem;line-height:1.5;color:var(--muted);margin:4px 0 12px}

.notification-detail-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:9px}
.notification-detail-header h1{margin-bottom:0}
.notification-detail-delete,#custom-event-edit-apply[data-action="delete"],[data-custom-event-delete],.btn.btn-danger,.icon-btn.btn-danger{color:#fff;background:#c92a3b;border-color:#c92a3b;font-weight:600}
.notification-detail-delete,#custom-event-edit-apply[data-action="delete"]{flex-shrink:0;margin-left:auto}
.notification-detail-delete:hover,#custom-event-edit-apply[data-action="delete"]:hover,[data-custom-event-delete]:hover,.btn.btn-danger:hover,.icon-btn.btn-danger:hover{color:#fff;background:#ad1f30;border-color:#ad1f30}
.notification-detail-delete:active,#custom-event-edit-apply[data-action="delete"]:active,[data-custom-event-delete]:active,.btn.btn-danger:active,.icon-btn.btn-danger:active{background:#931a29;border-color:#931a29}
.notification-detail-delete:focus-visible,#custom-event-edit-apply[data-action="delete"]:focus-visible,[data-custom-event-delete]:focus-visible,.btn.btn-danger:focus-visible,.icon-btn.btn-danger:focus-visible{outline:3px solid #e598a1;outline-offset:3px}

/* In-app guide shares its content with the AI assistant. */
.chat-heading>div:first-child{min-width:0;flex:1}.chat-heading .chat-manual-button{font-size:.722222rem;padding:5px 8px;flex-shrink:0;margin-left:8px}
#program-manual{width:min(720px,calc(100vw - 32px));max-height:85dvh;padding:0;overflow:auto;color:var(--ink);background:var(--white)}
#program-manual::backdrop{background:#20212e55}
.manual-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:16px;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--white)}
.manual-header h2{margin:0;font-size:1.111111rem}.manual-header p{font-size:.777778rem;margin:5px 0 0}.manual-header .btn{float:none;flex-shrink:0}
.manual-body{padding:18px 22px}.manual-intro{margin-top:0}.manual-search{display:flex;flex-direction:column;gap:7px;font-size:.833333rem}.manual-search input{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--white)}
#manual-count{font-size:.722222rem;color:var(--muted)}.manual-topic{padding:20px 0;border-top:1px solid var(--line)}.manual-topic h3{font-size:1rem;margin:0 0 8px}.manual-topic p,.manual-topic li{font-size:.833333rem;line-height:1.8}.manual-topic p{margin:8px 0}.manual-topic ol{padding-left:24px;margin:10px 0 14px}.manual-topic li+li{margin-top:7px}.manual-topic .btn{float:none;font-size:.777778rem}

.chat-heading>div:first-child{flex-wrap:wrap}

/* BEGIN TOUCHDIARY DESIGN OPTIONS 20261031 */
.design-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 10px}
.design-option{padding:10px;text-align:left;border:1px solid var(--line);border-radius:8px;background:var(--white);min-width:0;color:var(--ink)}
.design-option:hover{border-color:#a9acb1}.design-option.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.design-mini{display:flex;height:76px;border:1px solid #e8e8eb;border-radius:5px;overflow:hidden;margin-bottom:12px;background:#fff}
.design-mini-side{width:25%;background:#fafafa;border-right:1px solid #ececef;position:relative}
.design-mini-side:after{content:'';display:block;height:6px;background:#d8d6f3;border-radius:2px;margin:13px 5px 0}
.design-mini-body{padding:12px 10px;flex:1}.design-mini-body i{display:block;height:5px;border-radius:2px;background:#ededf2;margin-bottom:8px}.design-mini-body i:first-child{width:48%;height:7px;background:#575b65}
.design-mini.paper .design-mini-side{background:#f1f1ed}.design-mini.paper .design-mini-side:after{background:#d4d4cd}.design-mini.paper .design-mini-body i{background:#eaeae4}.design-mini.paper .design-mini-body i:first-child{background:#37352f}
.design-option-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;font-size:.888889rem}
.design-option-description{display:block;font-size:.722222rem;color:var(--muted);line-height:1.5}
.design-selected{font-size:.611111rem;font-weight:500;color:var(--accent);white-space:nowrap}.design-selected[hidden]{display:none}
.design-help{font-size:.722222rem;line-height:1.6;color:var(--muted);margin:8px 0 24px}
@media(max-width:480px){.design-options{gap:8px}.design-option{padding:8px}.design-mini{height:60px}.design-option-heading{font-size:.833333rem;flex-wrap:wrap}}
:root[data-design="paper"]{--ink: #37352f; --muted: #68665f; --line: #e9e9e7; --soft: #f7f7f5; --selected: #eef3f7; --accent: #2383e2; --side: #f7f7f5; --white: #fff;}
html[data-design="paper"] body{background: var(--white); text-rendering: optimizelegibility;}
html[data-design="paper"] body.warm{--side: #f6f3ed; --soft: #faf8f3; --white: #fffefa; --line: #e9e5dc;}
html[data-design="paper"] .sidebar{background: var(--side); border-right: 1px solid var(--line); padding: 18px 12px;}
html[data-design="paper"] .workspace{padding: 0px 8px 22px; gap: 10px; font-weight: 650; letter-spacing: -0.45px;}
html[data-design="paper"] .workspace .mark{width: 26px; height: 28px; border-radius: 4px; background: rgb(55, 53, 47); color: rgb(255, 255, 255); box-shadow: 0 1px 2px #00000012; font-size: 1.4rem;}
html[data-design="paper"] .sidebar .search{border-color: rgb(229, 229, 226); border-radius: 5px; box-shadow: none; margin: 0px 5px 16px; padding: 7px 9px; background: rgba(255, 255, 255, 0.61);}
html[data-design="paper"] .sidebar .search input{font-size: 0.833333rem;}
html[data-design="paper"] .sidebar kbd{color: var(--muted); background: rgb(245, 245, 243); border-color: rgb(228, 228, 224); font-size: 0.666667rem;}
html[data-design="paper"] .sidebar .nav-item{color: rgb(95, 94, 91); gap: 10px; border-radius: 5px; font-size: 0.888889rem; transition: background .12s;}
html[data-design="paper"] .sidebar .nav-item:hover{background: rgb(234, 234, 230);}
html[data-design="paper"] .sidebar .nav-item.active{background: rgb(233, 233, 229); color: rgb(39, 38, 34); font-weight: 600;}
html[data-design="paper"] .sidebar .account{border-color: rgb(229, 229, 225); font-size: 0.833333rem;}
html[data-design="paper"] .sidebar .account small{color: var(--muted); font-size: 0.722222rem;}
html[data-design="paper"] .sidebar .avatar{border-radius: 5px; background: rgb(233, 231, 226); color: rgb(97, 90, 80);}
html[data-design="paper"] .main .topbar{height: 54px; border-color: var(--line); padding: 0px 30px; color: var(--muted); font-size: 0.777778rem;}
html[data-design="paper"] .topbar .crumb{color: var(--ink);}
html[data-design="paper"] .topbar .demo{background: rgb(245, 245, 243); color: rgb(115, 113, 106); border: 1px solid rgb(238, 238, 235); font-size: 0.666667rem;}
html[data-design="paper"] .page-heading{padding: 32px 32px 0px; gap: 18px;}
html[data-design="paper"] .page-heading .eyebrow{font-size: 0.611111rem; letter-spacing: 0.12em; color: rgb(119, 117, 110); margin-bottom: 10px; font-weight: 550;}
html[data-design="paper"] .page-heading h1{font-size: 1.888889rem; line-height: 1.25; letter-spacing: -1px; font-weight: 700;}
html[data-design="paper"] .page-heading .subheading{font-size: 0.833333rem; color: var(--muted); margin-top: 9px;}
html[data-design="paper"] .btn:not(.btn-danger){border-color: rgb(223, 223, 220); border-radius: 5px; box-shadow: 0 1px 2px #00000005; font-size: 0.777778rem; min-height: 34px; padding: 6px 10px; background: var(--white);}
html[data-design="paper"] .btn:not(.btn-danger):hover{background: rgb(241, 241, 238);}
html[data-design="paper"] .btn.dark:not(.btn-danger),html[data-design="paper"] #notification-bulk-apply{background: rgb(55, 53, 47); border-color: rgb(55, 53, 47); color: rgb(255, 255, 255);}
html[data-design="paper"] .btn.dark:not(.btn-danger):hover,html[data-design="paper"] #notification-bulk-apply:hover:not(:disabled){background: rgb(80, 78, 71); border-color: rgb(80, 78, 71);}
html[data-design="paper"] .icon-btn:not(.btn-danger){color: rgb(119, 117, 111); border-radius: 4px;}
html[data-design="paper"] .icon-btn:not(.btn-danger):hover{background: rgb(239, 239, 235);}
html[data-design="paper"] .main .tabs{padding: 0px 32px; gap: 23px; margin-top: 25px; height: 44px; border-color: var(--line);}
html[data-design="paper"] .main .tab{font-size: 0.833333rem; color: rgb(120, 118, 111); padding-bottom: 13px;}
html[data-design="paper"] .main .tab.active{color: rgb(55, 53, 47); font-weight: 600;}
html[data-design="paper"] .main .tab.active:after{height: 2px; background: rgb(55, 53, 47);}
html[data-design="paper"] .count{border-radius: 4px; background: rgb(239, 239, 235); color: rgb(110, 107, 100); font-size: 0.666667rem;}
html[data-design="paper"] .care-alert{padding: 12px 25px; background: rgb(250, 250, 248); border-color: var(--line); font-size: 0.833333rem;}
html[data-design="paper"] .care-alert>span svg{color: rgb(138, 130, 110);}
html[data-design="paper"] .toolbar{height: 52px; border-color: var(--line); padding: 0px 22px;}
html[data-design="paper"] .toolbar .filter{color: rgb(101, 99, 91); font-size: 0.722222rem; min-height: 29px; border-color: transparent; background: transparent; box-shadow: none;}
html[data-design="paper"] .toolbar .filter:hover{background: rgb(239, 239, 235);}
html[data-design="paper"] .toolbar .record-count{color: var(--muted); font-size: 0.722222rem;}
html[data-design="paper"] .records th,html[data-design="paper"] .density-preview th{background: rgb(250, 250, 248); color: rgb(119, 116, 109); font-weight: 500; font-size: 0.722222rem; height: 36px; border-bottom-color: var(--line);}
html[data-design="paper"] .records td+td,html[data-design="paper"] .records th+th{border-left-color: rgb(240, 240, 237);}
html[data-design="paper"] .records tbody td{border-bottom-color: var(--line);}
html[data-design="paper"] .records tbody tr:hover{background: rgb(247, 247, 244);}
html[data-design="paper"] .records tbody tr.selected{background: rgb(240, 244, 247);}
html[data-design="paper"] .records .person{font-weight: 550; color: rgb(55, 53, 47);}
html[data-design="paper"] .records .customer-birth-summary{color: rgb(120, 117, 111);}
html[data-design="paper"] .status{background: rgb(239, 239, 237); color: rgb(104, 102, 94); border-radius: 4px; font-size: 0.666667rem; padding: 3px 7px;}
html[data-design="paper"] .status.ready{background: rgb(237, 243, 237); color: rgb(71, 102, 77);}
html[data-design="paper"] .due-tag{background: rgb(244, 239, 228); color: rgb(139, 112, 65); border-radius: 3px; padding: 1px 4px;}
html[data-design="paper"] .table-foot{color: var(--muted); font-size: 0.722222rem; padding: 14px 22px;}
html[data-design="paper"] .detail{background: var(--white); border-color: var(--line);}
html[data-design="paper"] .detail-tools{color: var(--muted); font-size: 0.722222rem; height: 50px;}
html[data-design="paper"] .detail .profile{padding-top: 9px; padding-bottom: 19px;}
html[data-design="paper"] .detail .profile h2{font-weight: 650; letter-spacing: -0.7px;}
html[data-design="paper"] .detail .profile small,html[data-design="paper"] .props dt{color: var(--muted);}
html[data-design="paper"] .props{font-size: 0.777778rem; grid-template-columns: 115px minmax(0,1fr); row-gap: 11px;}
html[data-design="paper"] .props dd{color: rgb(69, 67, 61); overflow-wrap: anywhere;}
html[data-design="paper"] .detail-tabs{gap: 20px; border-color: var(--line);}
html[data-design="paper"] .detail-tabs button{font-size: 0.777778rem; color: rgb(119, 116, 108);}
html[data-design="paper"] .detail-tabs button.active{color: rgb(55, 53, 47); font-weight: 600;}
html[data-design="paper"] .message,html[data-design="paper"] .care-form textarea,html[data-design="paper"] .care-form input:not([type=checkbox]),html[data-design="paper"] .care-form select,html[data-design="paper"] .event-select{border-color: rgb(226, 226, 222); border-radius: 5px; background: var(--white); color: var(--ink);}
html[data-design="paper"] .message{line-height: 1.65; font-size: 0.833333rem; box-shadow: none;}
html[data-design="paper"] .message:focus{border-color: rgb(165, 163, 155); box-shadow: 0 0 0 2px #37352f08;}
html[data-design="paper"] .reference{color: var(--muted); font-size: 0.722222rem;}
html[data-design="paper"] .complete{border-color: var(--line);}
html[data-design="paper"] .complete button{color: rgb(101, 97, 88);}
html[data-design="paper"] .settings-shell{min-height: calc(100vh - 54px);}
html[data-design="paper"] .settings-nav{background: var(--white); border-right-color: var(--line); padding-top: 30px;}
html[data-design="paper"] .settings-nav h2{font-weight: 650; letter-spacing: -0.5px;}
html[data-design="paper"] .settings-nav .nav-item{color: rgb(116, 113, 106); border-radius: 5px; font-size: 0.833333rem;}
html[data-design="paper"] .settings-nav .nav-item.active{background: rgb(241, 241, 238); color: rgb(55, 53, 47);}
html[data-design="paper"] .settings-nav .nav-item:hover{background: rgb(244, 244, 241);}
html[data-design="paper"] .settings-content{max-width: 1040px; padding: 36px 44px 56px;}
html[data-design="paper"] .settings-content h1{font-size: 1.777778rem; font-weight: 700; letter-spacing: -0.9px; color: rgb(55, 53, 47);}
html[data-design="paper"] .settings-content>.description{color: var(--muted); font-size: 0.833333rem; line-height: 1.6;}
html[data-design="paper"] .settings-content .section-title{font-size: 0.833333rem; font-weight: 600; color: rgb(81, 78, 70);}
html[data-design="paper"] .settings-content .setting-row{border-color: var(--line); padding-top: 12px; padding-bottom: 12px;}
html[data-design="paper"] .setting-row label{font-size: 0.833333rem; font-weight: 500;}
html[data-design="paper"] .setting-row p{font-size: 0.777778rem; color: var(--muted);}
html[data-design="paper"] .setting-row input:not([type=checkbox]),html[data-design="paper"] .setting-row select,html[data-design="paper"] .setting-row textarea{border-color: rgb(224, 224, 219); border-radius: 5px; background: var(--white); color: var(--ink);}
html[data-design="paper"] .toggle:not(.notification-toggle-paused) input:checked+span{background: rgb(55, 53, 47);}
html[data-design="paper"] .toggle span{background: rgb(222, 222, 217);}
html[data-design="paper"] .info-box{border-color: rgb(232, 230, 223); background: rgb(248, 247, 243); border-radius: 5px; color: rgb(109, 103, 91); font-size: 0.777778rem; padding: 13px 15px;}
html[data-design="paper"] .font-size-preview{background: rgb(250, 250, 248); border-color: var(--line); border-radius: 5px;}
html[data-design="paper"] .density-preview{border-radius: 5px; border-color: var(--line);}
html[data-design="paper"] .density-preview-heading{background: rgb(247, 247, 243);}
html[data-design="paper"] .theme-card{border-radius: 6px; padding: 9px;}
html[data-design="paper"] .theme-card.active{border-color: rgb(119, 116, 107); box-shadow: 0 0 0 1px #77746b;}
html[data-design="paper"] .theme-preview{border-radius: 3px;}
html[data-design="paper"] .savebar{border-color: var(--line); margin-top: 16px; padding-top: 14px;}
html[data-design="paper"] .savebar small,html[data-design="paper"] .settings-footer{font-size: 0.666667rem; color: rgb(132, 128, 120);}
html[data-design="paper"] .settings-footer{letter-spacing: 0.05em;}
html[data-design="paper"] .notification-page-heading,html[data-design="paper"] .notification-detail-header{gap: 12px;}
html[data-design="paper"] .notification-master-control{font-size: 0.777778rem; color: rgb(89, 86, 79);}
html[data-design="paper"] .notification-open{font-size: 0.833333rem; color: rgb(55, 53, 47);}
html[data-design="paper"] .event-source.default{background: rgb(239, 239, 235); color: rgb(115, 112, 102);}
html[data-design="paper"] .event-source.custom{background: rgb(234, 241, 246); color: rgb(77, 106, 128);}
html[data-design="paper"] .notification-bulk,html[data-design="paper"] .custom-event-editor{background: rgb(250, 250, 248); border-color: var(--line); border-radius: 5px;}
html[data-design="paper"] .notification-bulk>strong{font-size: 0.833333rem; font-weight: 600;}
html[data-design="paper"] .notification-bulk-controls select,html[data-design="paper"] .notification-customer-fields input,html[data-design="paper"] .notification-customer-fields select{border-color: rgb(225, 225, 219); border-radius: 5px; background: var(--white);}
html[data-design="paper"] .notification-customer{border-color: var(--line);}
html[data-design="paper"] .notification-customer-state{color: var(--muted);}
html[data-design="paper"] .notification-search input{border-color: rgb(225, 225, 219); border-radius: 5px; background: var(--white);}
html[data-design="paper"] body .date-index{background: var(--white); border-bottom-color: var(--line);}
html[data-design="paper"] .date-index .date-index-heading>span{color: rgb(111, 106, 95);}
html[data-design="paper"] body .date-index-tab{background: rgb(247, 247, 244); border-color: rgb(229, 229, 223); border-radius: 5px 5px 0 0; color: rgb(113, 109, 99); box-shadow: none;}
html[data-design="paper"] .date-index .date-index-tab:hover{background: rgb(238, 238, 233); color: rgb(55, 53, 47);}
html[data-design="paper"] body .date-index-tab.is-active{background: var(--white); border-top-color: rgb(223, 223, 216); border-right-color: rgb(223, 223, 216); border-bottom-color: var(--white); border-left-color: rgb(223, 223, 216); color: rgb(55, 53, 47);}
html[data-design="paper"] .date-index .date-index-tab.is-active:before{top: auto; bottom: -1px; height: 2px; left: 10px; right: 10px; background: rgb(55, 53, 47); border-radius: 0px;}
html[data-design="paper"] .date-index .date-index-tab.is-today:not(.is-active){background: rgb(237, 242, 245); color: rgb(82, 109, 128);}
html[data-design="paper"] .date-index .date-index-count,html[data-design="paper"] .date-index .date-index-tab.is-active .date-index-count{color: rgb(129, 123, 111);}
html[data-design="paper"] #ai-chat.expanded{background: rgb(251, 251, 250); border-left-color: var(--line); box-shadow: -4px 0 20px #37352f04;}
html[data-design="paper"] .chat-heading{background: var(--white); border-color: var(--line); min-height: 60px; padding-left: 18px; padding-right: 18px;}
html[data-design="paper"] .chat-heading strong{font-size: 0.888889rem; font-weight: 650; color: rgb(55, 53, 47);}
html[data-design="paper"] .chat-heading small{background: rgb(244, 244, 240); border-color: rgb(232, 232, 225); color: rgb(120, 116, 103);}
html[data-design="paper"] .chat-spark{color: rgb(127, 120, 103);}
html[data-design="paper"] .chat-context{background: rgb(248, 248, 245); border-color: var(--line); color: rgb(119, 114, 103); font-size: 0.722222rem;}
html[data-design="paper"] .chat-messages{padding: 20px 18px;}
html[data-design="paper"] .chat-welcome{padding-top: 12px;}
html[data-design="paper"] .chat-welcome>span{color: rgb(170, 162, 142);}
html[data-design="paper"] .chat-welcome h2{font-weight: 650; letter-spacing: -0.6px; color: rgb(55, 53, 47); font-size: 1.222222rem;}
html[data-design="paper"] .chat-welcome p{color: var(--muted); font-size: 0.777778rem; line-height: 1.65;}
html[data-design="paper"] .chat-welcome button{border-color: rgb(230, 229, 223); border-radius: 5px; font-size: 0.722222rem; color: rgb(97, 93, 83); background: var(--white); padding: 11px 12px;}
html[data-design="paper"] .chat-welcome button:hover{background: rgb(244, 244, 239); border-color: rgb(214, 212, 203);}
html[data-design="paper"] .chat-role,html[data-design="paper"] .chat-message.assistant .chat-role{color: rgb(130, 123, 109); font-size: 0.666667rem;}
html[data-design="paper"] .chat-message{font-size: 0.833333rem; line-height: 1.65;}
html[data-design="paper"] .chat-message.user>div{background: rgb(240, 239, 234); border-color: rgb(230, 228, 219); border-radius: 7px 7px 2px 7px;}
html[data-design="paper"] #ai-chat.expanded #chat-form{border-radius: 10px; border-color: rgb(220, 218, 209); box-shadow: 0 2px 8px #37352f06; margin-bottom: 20px;}
html[data-design="paper"] .chat-compose-footer .chat-file-tools button{border-color: rgb(221, 217, 207); border-radius: 5px; color: rgb(113, 104, 86);}
html[data-design="paper"] .chat-compose-footer .chat-file-tools span{color: rgb(139, 133, 120);}
html[data-design="paper"] #chat-form #chat-input{padding: 13px 14px 6px; font-size: 0.833333rem;}
html[data-design="paper"] #chat-form .chat-compose-footer{padding-left: 12px; padding-right: 12px;}
html[data-design="paper"] #chat-form .chat-send{background: rgb(55, 53, 47); color: rgb(255, 255, 255); border-radius: 6px;}
html[data-design="paper"] #chat-form .chat-send:hover{background: rgb(86, 82, 71);}
html[data-design="paper"] .chat-confirm{border-color: rgb(227, 223, 210); background: rgb(247, 245, 236); border-radius: 6px;}
html[data-design="paper"] .chat-confirm>span{color: rgb(140, 121, 82);}
html[data-design="paper"] .chat-confirm p{color: rgb(89, 83, 72);}
html[data-design="paper"] .chat-expand-top{border-color: rgb(222, 219, 210); border-radius: 5px; background: var(--white); color: rgb(113, 104, 88); box-shadow: 0 1px 4px #37352f08;}
html[data-design="paper"] #program-manual{border-radius: 9px; border-color: rgb(221, 217, 208); box-shadow: 0 12px 60px #37352f22;}
html[data-design="paper"] .manual-header,html[data-design="paper"] .manual-topic{border-color: var(--line);}
html[data-design="paper"] .customer-import-dialog{border-radius: 9px;}
html[data-design="paper"] #toast{background: rgb(55, 53, 47); border-radius: 6px; font-size: 0.777778rem; box-shadow: 0 4px 18px #37352f20;}
@media (min-width:1500px){html[data-design="paper"] body.ai-chat-open .settings-content{padding: 32px;}
html[data-design="paper"] body.ai-chat-open .settings-nav{width: 190px;}}
@media (max-width:1100px){html[data-design="paper"] .settings-content{padding: 30px 26px;}
html[data-design="paper"] .page-heading{padding-left: 25px; padding-right: 25px;}
html[data-design="paper"] .main .tabs{padding-left: 25px; padding-right: 25px;}}
@media (max-width:800px){html[data-design="paper"] .sidebar{padding-left: 7px; padding-right: 7px;}
html[data-design="paper"] .workspace{padding: 0px 8px 18px;}
html[data-design="paper"] .main .topbar{padding: 0px 16px;}
html[data-design="paper"] .settings-nav{border-right: 0px;}
html[data-design="paper"] .settings-content{padding: 27px 22px;}
html[data-design="paper"] .page-heading{padding: 25px 20px 0px;}
html[data-design="paper"] .main .tabs{padding-left: 20px; padding-right: 20px; overflow-x: auto; gap: 18px;}
html[data-design="paper"] .settings-nav .nav-item{padding: 8px 10px;}}
@media (max-width:480px){html[data-design="paper"] .page-heading h1{font-size: 1.666667rem;}
html[data-design="paper"] .settings-content{padding: 24px 18px;}
html[data-design="paper"] .settings-content h1{font-size: 1.555556rem;}
html[data-design="paper"] .notification-master-control{font-size: 0.722222rem;}
html[data-design="paper"] .notification-detail-header{align-items: flex-start;}
html[data-design="paper"] .main .tab{white-space: nowrap;}
html[data-design="paper"] .chat-heading{padding-left: 14px; padding-right: 14px;}}
@media (prefers-reduced-motion:reduce){html[data-design="paper"] .sidebar .nav-item{transition: none;}}
/* END TOUCHDIARY DESIGN OPTIONS 20261031 */

/* BEGIN TOUCHDIARY FLOW DESIGN 20261031 */
:root[data-design="flow"]{--ink: #21201c; --muted: #6f7275; --line: #eae7e3; --soft: #f7f3ef; --selected: #f1e9fb; --accent: #7650aa; --side: #fcfbfa; --white: #fff;}
html[data-design="flow"] body{background: rgb(247, 243, 239);}
html[data-design="flow"] body.warm{--white: #fffefa; --soft: #f8f2ea; background: rgb(247, 240, 232);}
html[data-design="flow"] .main{background: rgb(247, 243, 239);}
html[data-design="flow"] .sidebar{background: rgb(252, 251, 250); border-right: 1px solid rgb(233, 229, 223); padding-top: 23px;}
html[data-design="flow"] .sidebar .workspace{font-weight: 650; color: rgb(33, 32, 28); gap: 10px; padding-bottom: 25px;}
html[data-design="flow"] .sidebar .mark{background: rgb(33, 32, 28); color: rgb(255, 255, 255); border-radius: 7px; width: 27px; height: 29px;}
html[data-design="flow"] .sidebar .search{background: rgb(247, 245, 242); border-color: rgb(237, 233, 227); border-radius: 8px; box-shadow: none; margin-bottom: 21px; padding: 8px 10px;}
html[data-design="flow"] .sidebar .nav-item{font-size: 0.888889rem; color: rgb(108, 105, 100); border-radius: 7px; gap: 11px; margin: 4px 0px; padding-top: 10px; padding-bottom: 10px;}
html[data-design="flow"] .sidebar .nav-item:hover{background: rgb(240, 236, 231);}
html[data-design="flow"] .sidebar .nav-item.active{background: rgb(238, 229, 251); color: rgb(77, 48, 110); font-weight: 600;}
html[data-design="flow"] .sidebar .account{border-color: rgb(233, 227, 218); font-size: 0.833333rem;}
html[data-design="flow"] .sidebar .account .avatar{background: rgb(223, 208, 247); color: rgb(99, 71, 128); border-radius: 8px;}
html[data-design="flow"] .sidebar .account small{color: rgb(145, 137, 128); font-size: 0.722222rem;}
html[data-design="flow"] .main .topbar{background: rgb(255, 255, 255); border-color: rgb(234, 231, 227); height: 56px; padding: 0px 28px; font-size: 0.777778rem; color: rgb(134, 129, 122);}
html[data-design="flow"] .topbar .crumb{color: rgb(51, 48, 41);}
html[data-design="flow"] .topbar .demo{border: 1px solid rgb(235, 230, 224); background: rgb(250, 247, 242); color: rgb(151, 140, 128); font-size: 0.666667rem; border-radius: 5px;}
html[data-design="flow"] .page-heading{padding: 30px 28px 0px; gap: 18px;}
html[data-design="flow"] .page-heading h1{font-size: 1.888889rem; font-weight: 650; letter-spacing: -0.9px; color: rgb(36, 33, 28);}
html[data-design="flow"] .page-heading .eyebrow{font-size: 0.611111rem; letter-spacing: 0.13em; color: rgb(130, 112, 92); font-weight: 550; margin-bottom: 9px;}
html[data-design="flow"] .page-heading .subheading{font-size: 0.833333rem; color: rgb(142, 133, 124); margin-top: 8px;}
html[data-design="flow"] .btn:not(.btn-danger){border-color: rgb(224, 217, 208); border-radius: 7px; background: rgb(255, 255, 255); font-size: 0.777778rem; min-height: 34px; padding: 6px 11px; box-shadow: 0 1px 2px #362b1905;}
html[data-design="flow"] .btn:not(.btn-danger):hover{background: rgb(247, 243, 239); border-color: rgb(207, 195, 180);}
html[data-design="flow"] .btn.dark:not(.btn-danger),html[data-design="flow"] #notification-bulk-apply{background: rgb(37, 34, 30); color: rgb(255, 255, 255); border-color: rgb(37, 34, 30);}
html[data-design="flow"] .btn.dark:not(.btn-danger):hover,html[data-design="flow"] #notification-bulk-apply:hover:not(:disabled){background: rgb(74, 65, 55); border-color: rgb(74, 65, 55);}
html[data-design="flow"] .icon-btn:not(.btn-danger){color: rgb(150, 135, 119); border-radius: 5px;}
html[data-design="flow"] .icon-btn:not(.btn-danger):hover{background: rgb(244, 237, 229);}
html[data-design="flow"] .main .tabs{margin: 24px 26px 0px; padding: 0px 3px; gap: 23px; height: 44px; border-color: rgb(228, 221, 211);}
html[data-design="flow"] .main .tab{color: rgb(139, 125, 109); font-size: 0.833333rem; padding-bottom: 13px;}
html[data-design="flow"] .main .tab.active{color: rgb(76, 53, 105); font-weight: 600;}
html[data-design="flow"] .main .tab.active:after{background: rgb(166, 135, 205); height: 3px; border-radius: 3px 3px 0 0;}
html[data-design="flow"] .count{background: rgb(237, 226, 250); color: rgb(115, 82, 144); border-radius: 10px; padding: 1px 6px; font-size: 0.666667rem;}
html[data-design="flow"] .care-alert{margin: 16px 25px; padding: 13px 16px; border: 1px solid rgb(230, 219, 238); border-radius: 9px; background: rgb(245, 239, 252); color: rgb(116, 86, 135); font-size: 0.833333rem;}
html[data-design="flow"] .care-alert b{color: rgb(94, 61, 128);}
html[data-design="flow"] .main .body-split{background: rgb(255, 255, 255); margin: 0px 25px 25px; border: 1px solid rgb(232, 225, 216); border-radius: 0 0 10px 10px; overflow: hidden; box-shadow: 0 3px 12px #3e2c1203;}
html[data-design="flow"] .main .records{background: rgb(255, 255, 255);}
html[data-design="flow"] .toolbar{height: 52px; border-color: rgb(238, 231, 222); padding: 0px 19px;}
html[data-design="flow"] .toolbar .filter{border-color: rgb(234, 226, 217); background: rgb(255, 255, 255); box-shadow: none; min-height: 29px; font-size: 0.722222rem; color: rgb(132, 118, 101);}
html[data-design="flow"] .toolbar .record-count{font-size: 0.722222rem; color: rgb(155, 140, 122);}
html[data-design="flow"] .records th,html[data-design="flow"] .density-preview th{background: rgb(251, 248, 244); border-color: rgb(238, 230, 219); color: rgb(138, 123, 104); font-size: 0.722222rem; font-weight: 500; height: 37px;}
html[data-design="flow"] .records td+td,html[data-design="flow"] .records th+th{border-left-color: rgb(241, 236, 228);}
html[data-design="flow"] .records tbody td{border-color: rgb(238, 232, 223);}
html[data-design="flow"] .records tbody tr:hover{background: rgb(251, 247, 241);}
html[data-design="flow"] .records tbody tr.selected{background: rgb(245, 239, 252);}
html[data-design="flow"] .records .person{color: rgb(59, 48, 36); font-weight: 550;}
html[data-design="flow"] .records .customer-birth-summary{color: rgb(160, 139, 116);}
html[data-design="flow"] .status{background: rgb(243, 237, 228); color: rgb(148, 126, 96); border-radius: 5px; font-size: 0.666667rem; padding: 3px 7px;}
html[data-design="flow"] .status.ready{background: rgb(237, 243, 232); color: rgb(116, 135, 88);}
html[data-design="flow"] .due-tag{background: rgb(255, 240, 189); color: rgb(156, 123, 38); border-radius: 4px; padding: 1px 4px;}
html[data-design="flow"] .table-foot{font-size: 0.722222rem; color: rgb(130, 112, 92); padding: 15px 19px;}
html[data-design="flow"] .detail{background: rgb(255, 255, 255); border-color: rgb(232, 224, 213);}
html[data-design="flow"] .detail-tools{font-size: 0.722222rem; color: rgb(157, 139, 116); height: 52px;}
html[data-design="flow"] .detail .profile h2{font-weight: 650; color: rgb(62, 48, 32);}
html[data-design="flow"] .detail .profile small{color: rgb(163, 139, 111);}
html[data-design="flow"] .props{font-size: 0.777778rem; grid-template-columns: 112px minmax(0,1fr);}
html[data-design="flow"] .props dt{color: rgb(156, 134, 109);}
html[data-design="flow"] .props dd{color: rgb(111, 84, 52); overflow-wrap: anywhere;}
html[data-design="flow"] .detail-tabs{border-color: rgb(234, 224, 211); gap: 20px;}
html[data-design="flow"] .detail-tabs button{color: rgb(160, 139, 112); font-size: 0.777778rem;}
html[data-design="flow"] .detail-tabs button.active{color: rgb(120, 83, 154); font-weight: 600;}
html[data-design="flow"] .message,html[data-design="flow"] .care-form textarea,html[data-design="flow"] .care-form input:not([type=checkbox]),html[data-design="flow"] .care-form select,html[data-design="flow"] .event-select{background: rgb(255, 255, 255); border-color: rgb(230, 220, 205); border-radius: 7px; color: var(--ink);}
html[data-design="flow"] .message{font-size: 0.833333rem; line-height: 1.65;}
html[data-design="flow"] .message:focus{border-color: rgb(185, 161, 212); box-shadow: 0 0 0 2px #c1aaf91c;}
html[data-design="flow"] .reference{font-size: 0.722222rem; color: rgb(164, 139, 109);}
html[data-design="flow"] .complete{border-color: rgb(234, 223, 206);}
html[data-design="flow"] .complete button{color: rgb(137, 101, 168);}
html[data-design="flow"] .settings-shell{background: rgb(247, 243, 239); min-height: calc(100vh - 56px);}
html[data-design="flow"] .settings-nav{background: rgb(252, 251, 250); border-color: rgb(232, 224, 213); padding-top: 30px;}
html[data-design="flow"] .settings-nav h2{font-weight: 650; color: rgb(79, 58, 35);}
html[data-design="flow"] .settings-nav .nav-item{color: rgb(155, 128, 99); border-radius: 7px; font-size: 0.833333rem;}
html[data-design="flow"] .settings-nav .nav-item.active{background: rgb(240, 232, 250); color: rgb(112, 80, 142);}
html[data-design="flow"] .settings-nav .nav-item:hover{background: rgb(245, 238, 228);}
html[data-design="flow"] .settings-shell>.settings-content{width: auto; flex: 1 1 0%; min-width: 0px; max-width: 1040px; margin: 24px; padding: 30px; background: rgb(255, 255, 255); border: 1px solid rgb(233, 223, 209); border-radius: 11px; box-shadow: 0 4px 16px #49341403;}
html[data-design="flow"] .settings-content h1{font-size: 1.777778rem; font-weight: 650; letter-spacing: -0.8px; color: rgb(60, 45, 28);}
html[data-design="flow"] .settings-content>.description{font-size: 0.833333rem; line-height: 1.6; color: rgb(156, 129, 99);}
html[data-design="flow"] .settings-content .section-title{font-size: 0.833333rem; font-weight: 600; color: rgb(119, 87, 55);}
html[data-design="flow"] .settings-content .setting-row{border-color: rgb(238, 228, 214); padding-top: 12px; padding-bottom: 12px;}
html[data-design="flow"] .setting-row label{font-size: 0.833333rem; color: rgb(126, 88, 51);}
html[data-design="flow"] .setting-row p{font-size: 0.777778rem; color: rgb(130, 112, 92);}
html[data-design="flow"] .setting-row input:not([type=checkbox]),html[data-design="flow"] .setting-row select,html[data-design="flow"] .setting-row textarea{border-color: rgb(229, 216, 197); border-radius: 7px; background: rgb(255, 255, 255); color: var(--ink);}
html[data-design="flow"] .toggle:not(.notification-toggle-paused) input:checked+span{background: rgb(150, 115, 188);}
html[data-design="flow"] .toggle span{background: rgb(229, 221, 209);}
html[data-design="flow"] .info-box{background: rgb(251, 246, 237); border-color: rgb(238, 224, 201); border-radius: 8px; color: rgb(161, 135, 92); font-size: 0.777778rem; padding: 13px 15px;}
html[data-design="flow"] .font-size-preview,html[data-design="flow"] .density-preview{background: rgb(255, 252, 247); border-color: rgb(234, 220, 198); border-radius: 8px;}
html[data-design="flow"] .density-preview-heading{background: rgb(249, 240, 226);}
html[data-design="flow"] .theme-card{border-radius: 8px;}
html[data-design="flow"] .theme-card.active{border-color: rgb(193, 170, 249); box-shadow: 0 0 0 2px #c1aaf918;}
html[data-design="flow"] .savebar{border-color: rgb(238, 225, 204); padding-top: 14px; margin-top: 16px;}
html[data-design="flow"] .savebar small,html[data-design="flow"] .settings-footer{font-size: 0.666667rem; color: rgb(130, 113, 92);}
html[data-design="flow"] .notification-master-control{font-size: 0.777778rem; color: rgb(140, 109, 69);}
html[data-design="flow"] .notification-open{font-size: 0.833333rem; color: rgb(130, 92, 54);}
html[data-design="flow"] .event-source.default{background: rgb(244, 237, 223); color: rgb(162, 139, 101);}
html[data-design="flow"] .event-source.custom{background: rgb(239, 229, 251); color: rgb(128, 87, 167);}
html[data-design="flow"] .notification-bulk,html[data-design="flow"] .custom-event-editor{background: rgb(251, 246, 238); border-color: rgb(234, 220, 196); border-radius: 8px;}
html[data-design="flow"] .notification-bulk>strong{font-size: 0.833333rem; color: rgb(139, 103, 59);}
html[data-design="flow"] .notification-bulk-controls select,html[data-design="flow"] .notification-customer-fields input,html[data-design="flow"] .notification-customer-fields select,html[data-design="flow"] .notification-search input{background: rgb(255, 255, 255); border-color: rgb(229, 212, 185); border-radius: 7px;}
html[data-design="flow"] .notification-customer{border-color: rgb(238, 225, 203);}
html[data-design="flow"] .notification-customer-state{color: rgb(130, 112, 92);}
html[data-design="flow"] .main .customer-directory{margin: 0px 25px 25px; border: 1px solid rgb(233, 223, 209); border-radius: 10px; background: rgb(255, 255, 255); overflow: hidden;}
html[data-design="flow"] .customer-directory .toolbar{background: rgb(255, 255, 255);}
html[data-design="flow"] .customer-directory .customer-directory-search{border-color: rgb(232, 221, 202); background: rgb(255, 255, 255); border-radius: 7px;}
html[data-design="flow"] .main .event-list-page,html[data-design="flow"] .main .event-customers-page{max-width: none; margin: 24px; padding: 27px; background: rgb(255, 255, 255); border: 1px solid rgb(233, 223, 209); border-radius: 11px; box-shadow: 0 3px 12px #49341403;}
html[data-design="flow"] .event-list-page .event-list-table{border: 1px solid rgb(234, 223, 205); border-radius: 8px; overflow: hidden;}
html[data-design="flow"] .event-list-page .event-list-table-heading{background: rgb(251, 246, 237); color: rgb(158, 131, 90);}
html[data-design="flow"] .event-list-page .event-list-row:hover{background: rgb(252, 247, 238);}
html[data-design="flow"] .event-list-page .event-list-icon{background: rgb(241, 232, 251); color: rgb(162, 123, 196); border-radius: 9px;}
html[data-design="flow"] body .date-index{background: rgb(255, 255, 255); margin: 0px 25px; padding: 14px 18px 0px; border-width: 1px 1px 0px; border-style: solid solid none; border-color: rgb(233, 223, 209) rgb(233, 223, 209) currentcolor; border-image: none; border-radius: 10px 10px 0 0;}
html[data-design="flow"] .date-index .date-index-heading>span{color: rgb(162, 137, 101);}
html[data-design="flow"] .date-index .date-index-tab{background: rgb(249, 242, 231); border-color: rgb(234, 220, 198); color: rgb(163, 140, 104); border-radius: 7px 7px 0 0;}
html[data-design="flow"] .date-index .date-index-tab:hover{background: rgb(243, 230, 252); color: rgb(140, 102, 170);}
html[data-design="flow"] .date-index .date-index-tab.is-active{background: rgb(255, 255, 255); color: rgb(129, 89, 162); border-color: rgb(229, 213, 237) rgb(229, 213, 237) rgb(255, 255, 255);}
html[data-design="flow"] .date-index .date-index-tab.is-active:before{background: rgb(193, 170, 249); height: 3px;}
html[data-design="flow"] .date-index .date-index-tab.is-today:not(.is-active){background: rgb(243, 234, 250); color: rgb(156, 124, 183);}
html[data-design="flow"] .date-index .date-index-count,html[data-design="flow"] .date-index .date-index-tab.is-active .date-index-count{color: rgb(170, 144, 191);}
html[data-design="flow"] #ai-chat.expanded{background: rgb(252, 249, 245); border-left-color: rgb(233, 221, 204); box-shadow: -4px 0 18px #49341404;}
html[data-design="flow"] .chat-heading{background: rgb(255, 255, 255); border-color: rgb(238, 226, 208); min-height: 65px; padding-left: 17px; padding-right: 17px;}
html[data-design="flow"] .chat-heading strong{font-size: 0.888889rem; color: rgb(121, 83, 44); font-weight: 650;}
html[data-design="flow"] .chat-heading small{background: rgb(244, 234, 251); border-color: rgb(232, 215, 242); color: rgb(172, 134, 200);}
html[data-design="flow"] .chat-spark{color: rgb(193, 170, 249);}
html[data-design="flow"] .chat-context{background: rgb(250, 241, 228); border-color: rgb(240, 227, 207); color: rgb(130, 112, 92); font-size: 0.722222rem;}
html[data-design="flow"] .chat-messages{padding: 20px 18px;}
html[data-design="flow"] .chat-welcome>span{color: rgb(193, 170, 249);}
html[data-design="flow"] .chat-welcome h2{font-weight: 650; color: rgb(118, 80, 41);}
html[data-design="flow"] .chat-welcome p{font-size: 0.777778rem; line-height: 1.65; color: rgb(130, 112, 92);}
html[data-design="flow"] .chat-welcome button{background: rgb(255, 255, 255); border-color: rgb(237, 223, 201); border-radius: 8px; font-size: 0.722222rem; color: rgb(168, 132, 83);}
html[data-design="flow"] .chat-welcome button:hover{background: rgb(244, 235, 250); border-color: rgb(215, 189, 235);}
html[data-design="flow"] .chat-role,html[data-design="flow"] .chat-message.assistant .chat-role{font-size: 0.666667rem; color: rgb(130, 112, 92);}
html[data-design="flow"] .chat-message{font-size: 0.833333rem; line-height: 1.65;}
html[data-design="flow"] .chat-message.user>div{background: rgb(241, 231, 251); border-color: rgb(232, 212, 245); border-radius: 10px 10px 3px 10px;}
html[data-design="flow"] #ai-chat.expanded #chat-form{border-radius: 13px; border-color: rgb(225, 208, 180); box-shadow: 0 3px 12px #a7864e08; margin-bottom: 20px;}
html[data-design="flow"] #chat-form #chat-input{font-size: 0.833333rem;}
html[data-design="flow"] .chat-compose-footer .chat-file-tools button{border-color: rgb(233, 215, 185); border-radius: 7px; color: rgb(180, 147, 96);}
html[data-design="flow"] .chat-compose-footer .chat-file-tools span{color: rgb(130, 112, 92);}
html[data-design="flow"] #chat-form .chat-send{background: rgb(41, 34, 26); color: rgb(255, 255, 255); border-radius: 8px;}
html[data-design="flow"] #chat-form .chat-send:hover{background: rgb(91, 71, 48);}
html[data-design="flow"] .chat-confirm{background: rgb(245, 237, 250); border-color: rgb(231, 210, 241); border-radius: 9px;}
html[data-design="flow"] .chat-confirm>span{color: rgb(180, 140, 201);}
html[data-design="flow"] .chat-confirm p{color: rgb(153, 115, 173);}
html[data-design="flow"] .chat-expand-top{background: rgb(255, 255, 255); border-color: rgb(234, 220, 195); border-radius: 8px; color: rgb(130, 112, 92);}
html[data-design="flow"] .manual-header{background: rgb(255, 251, 245); border-color: rgb(239, 224, 199);}
html[data-design="flow"] .manual-topic{border-color: rgb(239, 224, 199);}
html[data-design="flow"] #program-manual{border-radius: 12px; border-color: rgb(229, 210, 176);}
html[data-design="flow"] .customer-import-dialog{border-radius: 12px;}
html[data-design="flow"] #toast{background: rgb(48, 38, 27); border-radius: 8px; font-size: 0.777778rem;}
@media (min-width:1500px){html[data-design="flow"] body.ai-chat-open .settings-content{padding: 25px; margin: 20px;}
html[data-design="flow"] body.ai-chat-open .settings-nav{width: 185px;}}
@media (max-width:1100px){html[data-design="flow"] .settings-shell>.settings-content{margin: 18px; padding: 25px;}
html[data-design="flow"] .main .event-list-page,html[data-design="flow"] .main .event-customers-page{margin: 18px; padding: 23px;}}
@media (max-width:800px){html[data-design="flow"] .sidebar{padding-left: 7px; padding-right: 7px;}
html[data-design="flow"] .sidebar .workspace{padding-left: 8px; padding-right: 8px;}
html[data-design="flow"] .sidebar .nav-item{padding: 10px 0px;}
html[data-design="flow"] .main .topbar{padding: 0px 16px;}
html[data-design="flow"] .settings-nav{border-right: 0px;}
html[data-design="flow"] .settings-shell>.settings-content{margin: 16px; padding: 22px;}
html[data-design="flow"] .page-heading{padding: 24px 20px 0px;}
html[data-design="flow"] .main .tabs{margin-left: 18px; margin-right: 18px; overflow-x: auto; gap: 18px;}
html[data-design="flow"] .main .body-split,html[data-design="flow"] .main .customer-directory{margin-left: 16px; margin-right: 16px;}
html[data-design="flow"] body .date-index{margin-left: 16px; margin-right: 16px;}
html[data-design="flow"] .care-alert{margin-left: 16px; margin-right: 16px;}
html[data-design="flow"] .main .event-list-page,html[data-design="flow"] .main .event-customers-page{margin: 16px; padding: 20px;}}
@media (max-width:480px){html[data-design="flow"] .page-heading h1{font-size: 1.555556rem;}
html[data-design="flow"] .settings-shell>.settings-content{margin: 10px; padding: 18px;}
html[data-design="flow"] .settings-content h1{font-size: 1.555556rem;}
html[data-design="flow"] .main .event-list-page,html[data-design="flow"] .main .event-customers-page{margin: 10px; padding: 16px;}
html[data-design="flow"] .main .tab{white-space: nowrap;}
html[data-design="flow"] .main .body-split,html[data-design="flow"] .main .customer-directory{margin-left: 10px; margin-right: 10px;}
html[data-design="flow"] body .date-index{margin-left: 10px; margin-right: 10px; padding-left: 12px; padding-right: 12px;}
html[data-design="flow"] .care-alert{margin: 12px;}}
.design-options{grid-template-columns:repeat(3,minmax(0,1fr))}
.design-mini.flow{background:#fffcf8}.design-mini.flow .design-mini-side{background:#fbf7f2}.design-mini.flow .design-mini-side:after{background:#c1aaf9}.design-mini.flow .design-mini-body i{background:#eee5da}.design-mini.flow .design-mini-body i:first-child{background:#21201c}
@media(max-width:600px){.design-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* END TOUCHDIARY FLOW DESIGN 20261031 */

/* ChatGPT-style light chat. Keep customer tools and the existing resizable width. */
html:root #ai-chat.expanded{background:#fff;color:#0d0d0d;border-left:1px solid #e8e8e8;box-shadow:-4px 0 20px #00000004;height:100dvh;max-height:100dvh;overflow:hidden;overscroll-behavior:none}
html:root #ai-chat .chat-heading{background:#fff;border-bottom:0;min-height:62px;padding:14px 18px;gap:8px}
html:root #ai-chat .chat-heading>div{gap:8px;min-width:0}
html:root #ai-chat .chat-heading strong{font-size:1.055556rem;font-weight:600;color:#0d0d0d;letter-spacing:-.3px}
html:root #ai-chat .chat-heading small{background:transparent;border:0;color:#8f8f8f;font-size:.666667rem;padding:0}
html:root #ai-chat .chat-heading .icon-btn{border:0;border-radius:50%;background:transparent;color:#5d5d5d;width:32px;height:32px}
html:root #ai-chat .chat-heading .icon-btn:hover{background:#f4f4f4}
html:root #ai-chat .chat-manual-button{background:transparent;border:1px solid #e5e5e5;border-radius:18px;font-size:.722222rem;min-height:30px;padding:4px 10px;color:#5d5d5d;box-shadow:none;margin-left:auto}
html:root #ai-chat .chat-context{padding:4px 20px 12px;background:#fff;border:0;color:#8f8f8f;font-size:.722222rem}
html:root #ai-chat .chat-messages{padding:20px 20px 24px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:none;scroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#d7d7d7 transparent;min-height:0}
html:root #ai-chat .chat-role{display:none}
html:root #ai-chat .chat-message{margin:0 0 28px;font-size:.888889rem;line-height:1.7;color:#0d0d0d}
html:root #ai-chat .chat-message.user{margin-left:auto;max-width:88%;width:fit-content}
html:root #ai-chat .chat-message.user>div{background:#f4f4f4;border:0;border-radius:24px;padding:11px 16px;color:#0d0d0d}
html:root #ai-chat .chat-message.assistant>div{padding:0;background:transparent;color:#0d0d0d}
html:root #ai-chat .chat-copy-answer{display:grid;place-items:center;width:28px;height:28px;padding:5px;margin:7px 0 0 -5px;border:0;border-radius:7px;color:#8f8f8f;background:transparent}
html:root #ai-chat .chat-copy-answer:hover{background:#f4f4f4;color:#0d0d0d}
html:root #ai-chat .chat-copy-answer svg{width:15px;height:15px}
html:root #ai-chat .chat-welcome{padding:36px 0 20px;text-align:center}
html:root #ai-chat .chat-welcome h2{font-size:1.333333rem;font-weight:500;line-height:1.4;letter-spacing:-.7px;color:#0d0d0d;margin:12px 0 28px}
html:root #ai-chat .chat-welcome p{display:none}
html:root #ai-chat .chat-welcome button{background:#fff;border:1px solid #e5e5e5;border-radius:20px;color:#5d5d5d;font-size:.777778rem;padding:10px 14px;margin:8px 0;line-height:1.5}
html:root #ai-chat .chat-welcome button:hover{background:#f7f7f7;border-color:#d4d4d4}
html:root #ai-chat .chat-confirm{background:#fafafa;border:1px solid #e5e5e5;border-radius:16px;color:#0d0d0d;padding:14px}
html:root #ai-chat .chat-confirm>span,html:root #ai-chat .chat-confirm p{color:#5d5d5d}
html:root #ai-chat .chat-confirm .btn{border-radius:18px;border-color:#dedede;background:#fff;color:#0d0d0d}
html:root #ai-chat .chat-confirm .btn.dark{background:#0d0d0d;color:#fff;border-color:#0d0d0d}
html:root #ai-chat .chat-thinking{color:#6b6b6b}
html:root #ai-chat .chat-thinking i{background:#0d0d0d}
html:root #ai-chat.expanded #chat-form{background:#fff;border:1px solid #e3e3e3;border-radius:28px;box-shadow:0 2px 12px #00000006;margin:0 14px 18px;min-height:144px;flex-shrink:0;max-height:65dvh;overflow:hidden}
html:root #ai-chat #chat-form #chat-input{color:#0d0d0d;background:transparent;font-size:.888889rem;line-height:1.6;padding:17px 18px 7px;height:82px;min-height:70px;max-height:200px;overflow-y:auto;overscroll-behavior:none}
html:root #ai-chat #chat-input::placeholder{color:#a6a8b2;opacity:1}
html:root #ai-chat #chat-form .chat-compose-footer{padding:7px 12px 12px;min-height:54px;gap:8px;background:#fff}
html:root #ai-chat #chat-form .chat-file-tools{gap:8px}
html:root #ai-chat #chat-form #chat-attach{display:grid;place-items:center;width:36px;height:36px;min-height:36px;flex-shrink:0;padding:0;border:0;border-radius:50%;background:transparent;color:#0d0d0d;font-size:1.555556rem;line-height:1;box-shadow:none}
html:root #ai-chat #chat-form #chat-attach:hover{background:#f4f4f4}
html:root #ai-chat .chat-file-tools>span{display:none}
html:root #ai-chat #chat-form .chat-send{display:grid;place-items:center;width:36px;height:36px;background:#0d0d0d;color:#fff;border-radius:50%;border:0}
html:root #ai-chat #chat-form .chat-send:hover{background:#303030}
html:root #ai-chat #chat-form .chat-send:disabled{background:#e5e5e5;color:#fff;opacity:1}
html:root #ai-chat #chat-form .chat-send svg{width:20px;height:20px;stroke-width:2}
html:root #ai-chat .chat-attachments{overflow-y:auto;max-height:180px;overscroll-behavior:none}
html:root #ai-chat .chat-file{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:14px;padding:9px 11px}
html:root #ai-chat .chat-file>span{font-size:.777778rem;color:#0d0d0d}
html:root #ai-chat .chat-file small{color:#8f8f8f}
html:root #ai-chat .chat-file button{color:#777}
html:root #ai-chat .chat-expand-top{background:#fff;border:1px solid #e5e5e5;border-radius:20px;color:#0d0d0d;box-shadow:0 2px 8px #00000006}
@media(max-height:540px){html:root #ai-chat.expanded #chat-form{min-height:110px}html:root #ai-chat #chat-form #chat-input{height:56px;min-height:48px}html:root #ai-chat .chat-attachments{max-height:80px}}

html:root #ai-chat .chat-message.user .chat-copy-answer{margin:7px 0 0 auto}


/* Voice dictation and visible attachment limits in the current composer. */
html:root #ai-chat #chat-form #chat-voice{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:#202020;cursor:pointer}
html:root #ai-chat #chat-form #chat-voice:hover{background:#f1f1f1}
html:root #ai-chat #chat-form #chat-voice.is-listening{background:#ece7f4;color:#6e4e99}
html:root #ai-chat #chat-form #chat-voice:disabled{color:#b7b7b7;cursor:default}
html:root #ai-chat #chat-form #chat-voice svg{width:21px;height:21px;stroke-width:1.8}
html:root #ai-chat #chat-form .chat-voice-status{margin:0 16px 5px;font-size:.666667rem;line-height:1.5;color:#747474}
html:root #ai-chat #chat-form .chat-voice-status[hidden]{display:none}
html:root #ai-chat #chat-form .chat-file-tools{flex:1;min-width:0;flex-wrap:nowrap}
html:root #ai-chat #chat-form .chat-file-tools>span{display:block;font-size:.666667rem;line-height:1.4;color:#858585;white-space:normal;overflow-wrap:anywhere}

/* Stronger typography and contrast across all three site designs. */
html:root{--ink:#202631;--muted:#505b6b;--line:#d5dae2}
html:root body{color:#202631;font-weight:500}
html:root .main,html:root .sidebar{color:#202631}
html:root .sidebar .nav-item,html:root .settings-nav .nav-item{font-weight:650;color:#28313e}
html:root .sidebar .nav-item.active,html:root .settings-nav .nav-item.active{font-weight:700;color:#151c28}
html:root .workspace,html:root .page-heading h1,html:root .settings-content h1,html:root .profile h2,html:root .event-list-header h1{font-weight:700;color:#1b2230}
html:root .person,html:root .customer-select,html:root .notification-customer-heading strong,html:root .event-list-page .event-list-name,html:root .event-customer-name{font-weight:700;color:#202631}
html:root .main th,html:root .section-title,html:root .setting-row label,html:root .care-form>label,html:root .detail-tabs button,html:root .tab,html:root .event-list-table-heading{font-weight:650}
html:root .main td,html:root .main input,html:root .main textarea,html:root .main select,html:root .main .props dd{font-weight:500;color:#252d3a}
html:root .main .description,html:root .main .subheading,html:root .main .setting-row p,html:root .main .reference,html:root .main .props dt,html:root .main .date,html:root .main .info-box,html:root .main .customer-birth-summary,html:root .main .notification-customer-state,html:root .main .event-list-secondary,html:root .main .event-list-identity p{color:#505b6b;font-weight:500}
html:root .main .btn,html:root .main .icon-btn{font-weight:650}
html:root .main .btn:not(.dark):not(.btn-danger){border-color:#bcc4d0}
html:root .main input:not([type=checkbox]),html:root .main textarea,html:root .main select{border-color:#bfc7d2}
html:root .main .records th,html:root .main .records td,html:root .main .setting-row,html:root .main .notification-customer{border-color:#d5dae2}
html:root .sidebar .nav-item svg,html:root .main .icon-btn svg{stroke-width:1.9}
html:root #ai-chat .chat-heading strong{font-weight:700}
html:root #ai-chat .chat-message,html:root #ai-chat #chat-input{font-weight:500}
html:root input::placeholder,html:root textarea::placeholder,html:root #ai-chat #chat-input::placeholder{color:#a6a8b2;font-weight:400;opacity:1}

/* Divider hierarchy: clear panel boundaries and quieter row separators. */
html:root{--line:#dce1e8;--line-section:#cbd2dc;--line-row:#e7eaf0}
html:root .sidebar,html:root .settings-nav,html:root .topbar,html:root .detail,html:root .settings-shell>.settings-content{border-color:var(--line-section)}
html:root #ai-chat.expanded{border-left-color:var(--line-section)}
html:root .main .tabs,html:root .main .toolbar,html:root .main .detail-tabs{border-bottom-color:var(--line-section)}
html:root .main .detail-tabs{border-top:0}
html:root .main .records thead th{border-bottom:1px solid var(--line-section)}
html:root .main .records td,html:root .main .records th{border-left-width:0;border-right-width:0}
html:root .main .records tbody td,html:root .customer-directory-page .records .customer-directory-table td,html:root .customer-directory-page .customer-directory-table tbody tr{border-bottom-color:var(--line-row)}
html:root .main .records tbody tr:last-child td{border-bottom:0}
html:root .main .setting-row,html:root .main .notification-customer,html:root .main .event-item{border-color:var(--line-row)}
html:root .settings-content .section-title{margin-top:24px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--line-section)}
html:root .settings-content form>.setting-row:first-child,html:root .settings-content .section-title+.setting-row{border-top:0}
html:root .event-list-table,html:root .event-customers-table,html:root .customer-directory-page .table-scroll{border-top-color:var(--line-section);border-bottom-color:var(--line-section)}
html:root .event-list-page .event-list-row,html:root .event-customers-page .event-customer-row{border-bottom-color:var(--line-row)}
html:root .event-list-page .event-list-row:last-child,html:root .event-customers-page .event-customer-row:last-child,html:root .notification-customer:last-child{border-bottom:0}

/* Reserved personal page above Home in the workspace navigation. */
.mypage-placeholder{margin:28px;max-width:760px;padding:42px 24px;border:1px dashed var(--line);border-radius:10px;background:var(--white);text-align:center;color:var(--ink)}
.mypage-placeholder-icon{display:grid;place-items:center;margin:0 auto 14px;width:48px;height:48px;border-radius:12px;background:var(--soft);color:var(--muted)}
.mypage-placeholder-icon svg{width:24px;height:24px}
.mypage-placeholder strong{font-size:1rem;font-weight:600}.mypage-placeholder p{font-size:.833333rem;line-height:1.6;color:var(--muted);margin:9px 0 0}
@media(max-width:800px){.mypage-placeholder{margin:22px;padding:32px 18px}}

/* Independent account card, separate from workspace navigation. */
.sidebar{overflow-y:auto}
.sidebar-account{flex-shrink:0;margin:0 4px 18px;padding:14px 12px 11px;border:1px solid var(--line);border-radius:10px;background:var(--white)}
.sidebar .sidebar-account .account{padding:0;border:0;gap:9px;font-size:.833333rem;align-items:center}
.sidebar .sidebar-account .account>div{min-width:0;overflow-wrap:anywhere}
.sidebar .sidebar-account .account small{font-size:.666667rem;line-height:1.5;color:var(--muted);margin-top:3px}
.account-billing{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:13px 0 12px;font-size:.722222rem;color:var(--muted)}
.account-billing strong{font-weight:500;color:var(--muted);background:var(--soft);padding:2px 6px;border-radius:4px;font-size:.666667rem}
.account-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid var(--line)}
html:root .sidebar-account .account-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 0;min-height:30px;font-size:.722222rem;line-height:1.4;border-radius:4px;background:transparent;color:var(--ink);white-space:nowrap}
html:root .sidebar-account .account-actions .account-link:hover,html:root .sidebar-account .account-actions .account-link.active{color:var(--accent)}
html:root .sidebar-account .account-actions .account-logout:disabled{opacity:1;color:#a0a0a0;cursor:default}
.account-link svg{width:15px;height:15px}
.account-note{display:block;font-size:.611111rem;color:var(--muted);line-height:1.4;margin-top:6px}
@media(max-width:800px){.sidebar-account{margin:0 0 12px;padding:5px;border-radius:7px}.sidebar-account .account,.account-billing,.account-note,.sidebar-account .account-logout,.account-link>span{display:none!important}.account-actions{padding:0;border:0;justify-content:center}html:root .sidebar-account .account-actions .account-link{width:30px;min-height:32px}.account-link svg{width:18px;height:18px}}

/* Saved gender is shown immediately beside the customer name. */
.customer-name-identity{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%}
.customer-name-identity>.customer-select{width:auto}
.customer-name-identity h2{margin:0}
.customer-gender-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;font-family:'Segoe UI Symbol','Noto Sans KR',sans-serif;font-size:1rem;font-weight:700;line-height:1;vertical-align:middle}
.customer-gender-icon.male{background:#eaf1ff;color:#245bb6}
.customer-gender-icon.female{background:#fff0f5;color:#ae345f}

/* Visible gender choices in the customer information form. */
.customer-gender-choices{display:flex;gap:10px}
.customer-gender-choice{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:1;min-height:48px;padding:9px 16px;border:1px solid var(--line);border-radius:8px;background:var(--paper,#fff);color:var(--ink);font:inherit;cursor:pointer}
.customer-gender-choice .gender-portrait{display:block;flex:0 0 28px;width:28px;height:28px}
.customer-gender-choice .gender-portrait.male{color:#3873bd}
.customer-gender-choice .gender-portrait.female{color:#b24e80}
.customer-gender-choice>span{font:inherit;line-height:1.4}
.customer-gender-choice:hover{background:var(--soft)}
.customer-gender-choice[aria-pressed=true]{border-color:var(--ink);background:var(--soft);box-shadow:inset 0 0 0 1px var(--ink);font-weight:700}
.customer-gender-choice[data-gender-choice="남"][aria-pressed=true]>span{color:#245bb6}
.customer-gender-choice[data-gender-choice="여"][aria-pressed=true]>span{color:#ae345f}
.customer-gender-choice:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.customer-gender-help{color:var(--muted);line-height:1.5}

/* Customer details are centered above every page and the chat composer. */
body.customer-modal-open{overflow:hidden}
html:root .customer-directory-layout.has-detail{grid-template-columns:minmax(0,1fr)}
html:root dialog.customer-detail-modal{position:fixed;inset:0;margin:auto;padding:0;width:min(800px,calc(100vw - 32px));max-width:none;height:min(800px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);border:1px solid var(--line);border-radius:16px;background:var(--white,#fff);color:var(--ink);box-shadow:0 24px 90px #17203538;overflow:hidden}
.customer-detail-modal::backdrop{background:rgba(24,28,38,.4)}
html:root .customer-detail-modal>.detail{display:block;position:relative;inset:auto;width:100%;height:100%;min-height:0;max-height:none;scrollbar-gutter:stable;padding:0 28px 24px;border:0;box-shadow:none;overflow-y:auto;overscroll-behavior:contain;background:var(--white,#fff)}
html:root .customer-detail-modal .detail-tools{position:sticky;top:0;z-index:1;background:var(--white,#fff);height:58px}
.customer-detail-modal .btn{float:none}
.customer-detail-modal .detail h2{margin-top:0}
@media(max-width:600px){html:root dialog.customer-detail-modal{width:calc(100vw - 20px);height:min(800px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);border-radius:12px}html:root .customer-detail-modal>.detail{padding:0 18px 20px;max-height:none}}

/* Button feedback follows each control's own colors and action. */
:where(button,[role="button"]){transition:background-color 140ms ease,border-color 140ms ease,color 140ms ease,box-shadow 140ms ease,opacity 140ms ease,translate 100ms ease}
:where(button,[role="button"]):not(:disabled):active{translate:0 1px}
.detail-tab-content{min-width:0}
.toggle span,.toggle span::before{transition:background-color 160ms ease,transform 160ms ease}
@media(prefers-reduced-motion:reduce){:where(button,[role="button"]),.toggle span,.toggle span::before{transition:none}:where(button,[role="button"]):active{translate:none}}

.customer-name-meta{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;white-space:nowrap}
.customer-inline-age{font-size:.722222rem;font-weight:600;line-height:1.4;color:var(--muted)}


html:root .customer-gender-icon{overflow:visible;border:0;box-shadow:none}
html:root .customer-gender-icon svg{display:block;width:17px;height:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transform:none}


.customer-name-identity{flex-wrap:wrap}
.customer-name-meta{flex-wrap:wrap;flex-shrink:1;max-width:100%;white-space:normal}
.customer-inline-age,.customer-inline-birth{white-space:nowrap}
.customer-inline-birth{font-size:.666667rem;font-weight:500;line-height:1.4;color:var(--muted)}


/* Make the active schedule list view unmistakable. */
html:root .main .tabs{height:auto;min-height:58px;align-items:center;gap:8px;padding-top:0;padding-bottom:12px;overflow-x:auto}
html:root .main .tabs .tab[data-filter]{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex-shrink:0;min-height:44px;padding:9px 14px;border:1px solid #dce1e8;border-radius:10px;background:#f6f7fa;color:#505b6b;font-weight:600;white-space:nowrap}
html:root .main .tabs .tab[data-filter]:hover{background:#eeebf8;border-color:#c7bcdf;color:#51408b}
html:root .main .tabs .tab[data-filter].active{background:#6553b6;border-color:#6553b6;color:#fff;font-weight:700}
html:root .main .tabs .tab[data-filter].active:after{display:none}
html:root .main .tabs .tab[data-filter] .count{margin:0;padding:3px 7px;border-radius:6px;background:#e8ebf1;color:#505b6b;font-weight:600}
html:root .main .tabs .tab[data-filter].active .count{background:#ffffff26;color:#fff}
.event-item .event-repeat-select{display:block;margin-top:7px;padding:5px 8px;max-width:150px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:5px;font-size:.722222rem}.event-repeat-help{font-size:.722222rem;line-height:1.6;color:var(--muted)}.event-customer-date .event-customer-repeat{margin-top:6px;font-size:.722222rem;min-height:30px;padding:5px 8px}

/* Stable workspace logo: avoid font baseline clipping at different text sizes. */
html:root .sidebar .workspace .mark{display:grid;place-items:center;width:27px;height:27px;min-width:27px;flex:0 0 27px;padding:0;line-height:1;overflow:hidden}
html:root .sidebar .workspace .mark svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;transform:none}

/* Workspace brand links to the existing home navigation. */
.sidebar button.workspace{width:100%;text-align:left;transition:opacity .15s,translate .1s}
.sidebar button.workspace:hover{opacity:.78}
.sidebar button.workspace:active{translate:0 1px}
@media(prefers-reduced-motion:reduce){.sidebar button.workspace{transition:none}.sidebar button.workspace:active{translate:none}}

/* Clickable list columns, matching schedule sort headings. */
.list-sort-heading{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0;border:0;border-radius:3px;background:transparent;color:inherit;font:inherit;text-align:left;white-space:nowrap;transition:color .15s,opacity .15s}
.list-sort-heading:hover{color:var(--ink);opacity:.8}.list-sort-heading:active{opacity:.6}.list-sort-arrow{font-size:.8em;opacity:.5}[aria-sort="ascending"] .list-sort-arrow,[aria-sort="descending"] .list-sort-arrow{opacity:1}
@media(prefers-reduced-motion:reduce){.list-sort-heading{transition:none}}

/* Larger, clearly outlined checkboxes across customer lists and forms; switches keep their own layout. */
html:root input[type="checkbox"]:not(:where(.toggle input)){appearance:none;box-sizing:border-box;display:inline-grid;place-content:center;width:20px;height:20px;min-width:20px;min-height:20px;flex-shrink:0;padding:0;margin:0;border:2px solid #778295;border-radius:5px;background:#fff;vertical-align:middle;cursor:pointer;transition:background-color 140ms ease,border-color 140ms ease,box-shadow 140ms ease}
html:root input[type="checkbox"]:not(:where(.toggle input)):hover:not(:disabled){border-color:#5143a5;box-shadow:0 0 0 3px #6553b61a}
html:root input[type="checkbox"]:not(:where(.toggle input)):checked,html:root input[type="checkbox"]:not(:where(.toggle input)):indeterminate{background:#6553b6;border-color:#6553b6}
html:root input[type="checkbox"]:not(:where(.toggle input))::after{content:'';display:block;width:10px;height:6px;border-left:3px solid #fff;border-bottom:3px solid #fff;opacity:0;transform:translateY(-2px) rotate(-45deg) scale(.65);transform-origin:center;transition:opacity 160ms ease,transform 180ms cubic-bezier(.22,1,.36,1)}
html:root input[type="checkbox"]:not(:where(.toggle input)):checked::after{opacity:1;transform:translateY(-2px) rotate(-45deg) scale(1)}
html:root input[type="checkbox"]:not(:where(.toggle input)):indeterminate::after{content:'';width:10px;height:3px;border:0;border-radius:1px;background:#fff;opacity:1;transform:none}
html:root input[type="checkbox"]:not(:where(.toggle input)):focus-visible{outline:3px solid #6553b6;outline-offset:3px}
html:root input[type="checkbox"]:not(:where(.toggle input)):disabled{opacity:.45;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){html:root input[type="checkbox"]:not(:where(.toggle input)),html:root input[type="checkbox"]:not(:where(.toggle input))::after{transition:none}}
@media(forced-colors:active){html:root input[type="checkbox"]:not(:where(.toggle input)){appearance:auto}html:root input[type="checkbox"]:not(:where(.toggle input))::after{display:none}}

/* Product version beside the workspace name. */
.sidebar .workspace-label{display:flex;align-items:baseline;gap:6px;min-width:0;flex:1}
.sidebar .workspace-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar .workspace-version{flex-shrink:0;font-size:.611111rem;font-weight:500;letter-spacing:0;line-height:1;color:var(--muted)}
@media(max-width:800px){.sidebar .workspace>.workspace-label{display:none}}

/* Separate home navigation and version action without nested buttons. */
html:root .sidebar .workspace-brand{display:flex;align-items:center;gap:5px;padding:0 8px 19px}
html:root .sidebar .workspace-brand .workspace{flex:1;min-width:0;width:auto;padding:0;gap:9px}
html:root .sidebar .workspace-brand .workspace-version{padding:4px 2px;border-radius:4px;min-height:28px;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}
html:root .sidebar .workspace-brand .workspace-version:hover{background:var(--soft);color:var(--accent);text-decoration-color:currentColor}
#version-history-dialog{width:min(600px,calc(100vw - 32px));max-height:80dvh;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--ink);box-shadow:0 20px 70px #0003;overflow:auto}
#version-history-dialog::backdrop{background:#17203366}
#version-history-dialog[open]{animation:version-history-enter 180ms ease-out}
.version-history-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;border-bottom:1px solid var(--line)}
.version-history-header h2{margin:0;font-size:1.15rem}.version-history-header p{margin:6px 0 0;color:var(--muted);font-size:.78rem}
.version-history-body{padding:0 24px 8px;font-size:.83rem;line-height:1.8}.version-history-release{padding:20px 0;border-bottom:1px solid var(--line)}.version-history-release:last-child{border:0}.version-history-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.version-history-meta h3{margin:0;font-size:1rem}.version-history-meta time{margin-left:auto;color:var(--muted);font-size:.72rem}.version-history-current{font-size:.65rem;background:var(--selected);color:var(--accent);padding:1px 7px;border-radius:5px}.version-history-release h4{margin:10px 0 4px;font-size:.85rem}.version-history-release ul{margin:0;padding-left:20px}
@keyframes version-history-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#version-history-dialog[open]{animation:none}}
@media(max-width:800px){html:root .sidebar .workspace-brand>.workspace-version{display:none}html:root .sidebar .workspace-brand{padding-left:8px;padding-right:0}}

/* BEGIN TOUCHDIARY ATLASSIAN DESIGN 20261101 */
.design-mini.atlassian{background:#fff;border-color:#dfe3eb}
.design-mini.atlassian .design-mini-side{background:#f7f8fa;border-color:#dfe3eb}
.design-mini.atlassian .design-mini-side:after{background:#cce0ff}
.design-mini.atlassian .design-mini-body i{background:#dfe3eb}
.design-mini.atlassian .design-mini-body i:first-child{background:#0c66e4}
html:root[data-design="atlassian"]{--ink:#172b4d;--muted:#526079;--line:#dfe3eb;--soft:#f7f8fa;--selected:#e9f2ff;--accent:#0c66e4;--side:#f7f8fa;--white:#fff}
html[data-design="atlassian"] body.warm{--side:#f8f8f5;--soft:#f9f9f6;--white:#fffefa;--line:#e0e3df}
html[data-design="atlassian"] .sidebar{background:var(--side);border-color:var(--line)}
html[data-design="atlassian"] .sidebar .mark{background:#0c66e4;color:#fff;border-radius:6px}
html[data-design="atlassian"] .nav-item{border-radius:6px;transition:background .15s,color .15s}
html[data-design="atlassian"] .nav-item:hover{background:#e9edf3;color:var(--ink)}
html[data-design="atlassian"] .nav-item.active{background:#e9f2ff;color:#0c66e4;font-weight:600}
html[data-design="atlassian"] .topbar{background:var(--white);border-color:var(--line);color:var(--muted)}
html[data-design="atlassian"] .main{background:var(--white)}
html[data-design="atlassian"] .search,
html[data-design="atlassian"] .customer-directory-search,
html[data-design="atlassian"] .message,
html[data-design="atlassian"] .schedule-message-editor,
html[data-design="atlassian"] .care-form input:not([type=checkbox]),
html[data-design="atlassian"] .care-form textarea,
html[data-design="atlassian"] .care-form select,
html[data-design="atlassian"] .setting-row input:not([type=checkbox]),
html[data-design="atlassian"] .setting-row select,
html[data-design="atlassian"] .event-customer-date input,
html[data-design="atlassian"] .event-customer-timing select{border-color:var(--line);border-radius:6px;background:var(--white);color:var(--ink);box-shadow:none}
html[data-design="atlassian"] input:focus-visible,
html[data-design="atlassian"] select:focus-visible,
html[data-design="atlassian"] textarea:focus-visible{outline:2px solid #0c66e4;outline-offset:2px}
html[data-design="atlassian"] .btn:not(.btn-danger){border-radius:6px;border-color:var(--line);font-weight:500}
html[data-design="atlassian"] .btn.dark:not(.btn-danger),
html[data-design="atlassian"] #notification-bulk-apply{background:#0c66e4;border-color:#0c66e4;color:#fff}
html[data-design="atlassian"] .btn.dark:not(.btn-danger):hover:not(:disabled),
html[data-design="atlassian"] #notification-bulk-apply:hover:not(:disabled){background:#0055cc;border-color:#0055cc}
html[data-design="atlassian"] #notification-bulk-apply:disabled{background:#dfe3eb;border-color:#dfe3eb;color:#526079}
html[data-design="atlassian"] .toggle input:checked+span{background:#0c66e4}
html[data-design="atlassian"] .toggle input:disabled+span{background:#dedee5}
html[data-design="atlassian"] .settings-content h1,
html[data-design="atlassian"] .event-list-header h1,
html[data-design="atlassian"] .event-customers-header h1,
html[data-design="atlassian"] .customer-directory-heading h1{color:var(--ink);font-weight:650;letter-spacing:-.035em}
html[data-design="atlassian"] .setting-row{padding-top:24px;padding-bottom:24px;border-color:var(--line)}
html[data-design="atlassian"] .info-box,
html[data-design="atlassian"] .event-customers-paused,
html[data-design="atlassian"] .event-list-paused{background:#e9f2ff;border:0;border-radius:6px;color:#173b6b;padding:16px;line-height:1.7}
html[data-design="atlassian"] .notification-bulk,
html[data-design="atlassian"] .event-customers-bulk{background:var(--soft);border-color:var(--line);border-radius:8px;padding:16px}
html[data-design="atlassian"] .records th,
html[data-design="atlassian"] .event-list-table-heading,
html[data-design="atlassian"] .event-customers-table-head{background:var(--soft);color:var(--muted);font-weight:500}
html[data-design="atlassian"] .records tbody tr.selected td,
html[data-design="atlassian"] .event-customer-row:has([data-notification-select]:checked){background:var(--selected)}
html[data-design="atlassian"] .records tbody tr:hover td{background:#f1f5fb}
html[data-design="atlassian"] .status{background:#eef0f4;color:#44546f;border-radius:4px;font-weight:500}
html[data-design="atlassian"] .status.ready{background:#e9f2ff;color:#0055cc}
html[data-design="atlassian"] .status.ready:before{background:#0c66e4}
html[data-design="atlassian"] .due-tag{background:#fff4d6;color:#974f0c;border-radius:4px}
html[data-design="atlassian"] .event-source.default{background:#eef0f4;color:#44546f}
html[data-design="atlassian"] .event-source.custom{background:#e9f2ff;color:#0055cc}
html[data-design="atlassian"] .schedule-message{background:var(--soft);border-radius:8px}
html[data-design="atlassian"] .schedule-message-heading{color:var(--ink)}
html[data-design="atlassian"] .message-length-type{background:var(--white);border-color:var(--line);color:var(--ink)}
html[data-design="atlassian"] .message-length-type.over,
html[data-design="atlassian"] .message-length-type.unknown{color:#ae2e24;border-color:#e8b6b1}
html[data-design="atlassian"] #ai-chat.expanded{background:var(--white);border-color:var(--line)}
html[data-design="atlassian"] .chat-message.user>div{background:#e9f2ff;color:var(--ink)}
html[data-design="atlassian"] .chat-spark{color:#0c66e4}
html[data-design="atlassian"] .design-option.active{border-color:#0c66e4;box-shadow:0 0 0 1px #0c66e4}
html[data-design="atlassian"] .design-selected{color:#0c66e4}
@media(prefers-reduced-motion:reduce){html[data-design="atlassian"] .nav-item{transition:none}}
/* END TOUCHDIARY ATLASSIAN DESIGN 20261101 */

/* Local preview status is informational and never captures clicks. */
.local-preview-notice{position:fixed;bottom:6px;right:12px;z-index:60;max-width:calc(100vw - 24px);padding:5px 9px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--muted);font-size:12px;line-height:1.5;pointer-events:none}

/* Chat controls occupy the first row; the manual sits below the toggle. */
html:root #ai-chat{--chat-control-top:14px;--chat-control-right:18px;--chat-control-height:40px;--chat-control-width:156px}
html:root #ai-chat .chat-heading{position:relative;align-items:flex-start;height:112px;min-height:112px;padding:14px 18px}
html:root #ai-chat .chat-heading>div:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:2px;max-width:calc(100% - 44px);overflow:hidden}
html:root #ai-chat .chat-heading strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html:root #ai-chat .chat-expand-top{box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:var(--chat-control-height);min-height:var(--chat-control-height);margin:0;border:1px solid #b5a9e4;border-radius:12px;background:#eeeaff;color:#42348b;font-size:14px;font-weight:700;line-height:1;box-shadow:0 2px 7px #51418a12;transition:background-color .16s,border-color .16s,box-shadow .16s}
html:root #ai-chat .chat-heading #chat-collapse{position:absolute;top:var(--chat-control-top);right:var(--chat-control-right);width:36px;height:var(--chat-control-height);padding:0;border:1px solid #c7bfdf;border-radius:12px;background:#f5f2ff;color:#524482;box-shadow:none}
html:root #ai-chat .chat-expand-top{position:fixed;top:var(--chat-control-top);right:var(--chat-control-right);width:var(--chat-control-width);padding:0 12px}
html:root #ai-chat .chat-manual-button:hover,html:root #ai-chat .chat-expand-top:hover,html:root #ai-chat .chat-heading #chat-collapse:hover{background:#e4dcff;border-color:#9c8ccc;box-shadow:0 3px 10px #51418a1a}
html:root #ai-chat .chat-manual-button:focus-visible,html:root #ai-chat .chat-expand-top:focus-visible,html:root #ai-chat .chat-heading #chat-collapse:focus-visible{outline:2px solid #7660ba;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html:root #ai-chat .chat-expand-top{transition:none}}

/* Place the quiet book action directly below the top-right chat toggle. */
html:root #ai-chat .chat-manual-footer{position:absolute;top:calc(var(--chat-control-top) + var(--chat-control-height) + 10px);right:var(--chat-control-right);display:flex;align-items:center;justify-content:flex-end;min-height:0;padding:0;border:0;background:transparent}
html:root #ai-chat .chat-manual-button{position:static;display:inline-flex;align-items:center;justify-content:center;gap:7px;box-sizing:border-box;width:auto;height:34px;min-height:34px;margin:0;padding:0 11px;border:1px solid #cbd2de;border-radius:7px;background:#fff;color:#48556b;font-size:13px;font-weight:600;line-height:1;box-shadow:none;transition:background-color .16s,border-color .16s}
html:root #ai-chat .chat-manual-button::before{content:none}
html:root #ai-chat .chat-manual-button svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.7;fill:none;flex-shrink:0}
html:root #ai-chat .chat-manual-button:hover{background:#f0f3f7;border-color:#9daabd;color:#26364e;box-shadow:none}
html:root #ai-chat .chat-manual-button:focus-visible{outline:2px solid #72849e;outline-offset:3px}
html:root #ai-chat.collapsed .chat-manual-footer{position:fixed;top:calc(var(--chat-control-top) + var(--chat-control-height) + 10px);right:var(--chat-control-right);bottom:auto;min-height:0;padding:0;border:0;background:transparent}
html:root #ai-chat.collapsed .chat-manual-button{box-shadow:0 2px 8px #26364e0d}
html:root #ai-chat.expanded #chat-form{margin-bottom:10px}
@media(prefers-reduced-motion:reduce){html:root #ai-chat .chat-manual-button{transition:none}}
