:root{--paper:#f6f5ef;--card:#fffefa;--ink:#283e36;--muted:#7b8178;--jade:#285749;--pale:#eaf0e9;--line:#e5e6dc;--red:#b65b49;--red-pale:#fbede6;--ochre:#9a8046;--serif:'Noto Serif SC','Songti SC','SimSun',serif;--sans:'Microsoft YaHei','PingFang SC',system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.65 var(--sans)}button,input,select,textarea{font:inherit}button,a,select,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{background:none;border:0}a{color:var(--jade);text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--jade);outline-offset:3px}button:disabled{opacity:.35;cursor:not-allowed}h1,h2,h3,p{margin:0}h2{font-size:16px;font-weight:500}h3{font-size:16px}small{font-size:11px}.muted{color:var(--muted);font-size:12px}.shell{display:grid;grid-template-columns:190px 1fr;min-height:100vh}.sidebar{padding:40px 21px 23px;border-right:1px solid var(--line);display:flex;flex-direction:column;background:#f0f1e9;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;color:var(--ink)}.seal{display:grid;place-items:center;width:42px;height:48px;background:var(--jade);color:#f5f3e6;border-radius:5px;font:30px var(--serif)}.brand b{font:30px var(--serif);letter-spacing:6px}.brand small{display:block;font-size:8px;letter-spacing:1.3px;color:var(--muted);margin-top:4px}.nav-caption{font:13px var(--serif);letter-spacing:2px;color:var(--muted);margin:27px 0 40px}.sidebar nav{display:grid;gap:9px}.sidebar nav button{display:flex;align-items:center;text-align:left;padding:11px 13px;border-radius:8px;gap:13px;font-size:13px;color:#6b756a}.sidebar nav button>span:first-child{font-size:20px;width:22px}.sidebar nav button.active{color:var(--jade);background:#e0e8dd;font-weight:600}.nav-dot{width:5px;height:5px;border-radius:50%;background:var(--jade);margin-left:auto}.sidebar nav button:not(.active) .nav-dot{display:none}.sidebar nav button:hover{background:#e5eade}.sidebar-bottom{margin-top:auto;color:var(--muted)}.mini-sun{font-size:42px;color:#a1ab8d;margin-bottom:6px}.sidebar-bottom p{font:13px var(--serif);letter-spacing:1px;margin-bottom:24px}.sidebar-bottom button{font-size:11px;padding:0}.sidebar-bottom small{display:block;margin-top:9px;font-size:9px}.workspace{min-width:0}.topbar{padding:31px 38px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.eyebrow{color:var(--muted);font-size:11px;letter-spacing:1.5px}.topbar h1{font:25px var(--serif);letter-spacing:1px;margin-top:5px}.top-actions{display:flex;gap:10px}.button{border:1px solid var(--line);background:var(--card);padding:8px 15px;border-radius:7px;font-size:12px;white-space:nowrap;transition:background .18s}.button:hover{background:var(--pale)}.button.primary{background:var(--jade);border-color:var(--jade);color:#fffdf0}.button.primary:hover{background:#1c473b}.icon-button{font-size:25px;line-height:1;width:30px;height:32px;border-radius:5px}.icon-button:hover{background:var(--pale)}main{max-width:1600px;margin:auto;padding:26px 38px}.intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.intro-kicker{font:17px var(--serif);letter-spacing:1px}.intro p{color:var(--muted);font-size:12px;margin-top:4px}.today-short{display:flex;gap:8px;align-items:center;font-size:11px}.live-dot{width:5px;height:5px;background:var(--jade);border-radius:50%}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:23px;align-items:start}.main-column,.detail-column{min-width:0}.card,.calendar-card,.day-card{border:1px solid var(--line);border-radius:12px;background:var(--card)}.calendar-card{padding:23px 25px 0;overflow:hidden}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.date-pickers{display:flex;align-items:center;gap:8px}.date-pickers select{appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23828d7a'%3E%3Cpath d='m3 4 3 3 3-3'/%3E%3C/svg%3E") no-repeat right center;padding:2px 17px 2px 0;color:var(--ink);font:23px var(--serif);cursor:pointer}.date-pickers select:last-child{font-size:19px}.calendar-actions{display:flex;gap:7px;align-items:center}.today-button{padding:5px 13px;font-size:11px}.view-meta{font-size:11px;color:var(--muted);margin:9px 0 23px;min-height:18px}.view-meta a{border-bottom:1px solid #bccbbc}.week-header,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.week-header{margin-bottom:7px;color:var(--muted);font-size:11px;text-align:center}.week-header span{padding-bottom:10px}.week-header span:nth-last-child(-n+2){color:var(--red)}.day{position:relative;min-height:76px;padding:9px 4px 10px;border-radius:8px;text-align:center;border:1px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;transition:background .12s}.day .number{font-size:20px;font-family:Georgia,var(--serif);line-height:1.4}.day .lunar-label{font-size:11px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#8b8d7f}.day.outside{opacity:.34}.day.weekend .number{color:var(--red)}.day.is-rest{background:#fcf4ee}.day.is-work .number{color:var(--ink)}.day .flag{position:absolute;right:7px;top:6px;font-size:9px;line-height:14px;padding:0 3px;border-radius:3px}.flag.rest{background:#f3e1d8;color:var(--red)}.flag.work{background:#e8ebdf;color:#77806d}.day .term-label{color:var(--jade)}.day .festival-label{color:var(--red)}.day.is-today .number{color:var(--jade);font-weight:bold}.day.is-today:after{content:'';width:4px;height:4px;background:var(--jade);position:absolute;bottom:5px;border-radius:50%}.day.selected{background:var(--jade);color:#fffdf4;border-color:var(--jade);box-shadow:0 4px 12px #2857491b;opacity:1}.day.selected .number,.day.selected .lunar-label{color:#fffdf4}.day.selected:after{background:#fffdf4}.day.selected .flag{background:#ffffff21;color:#fffdf4}.day:hover:not(.selected){background:var(--pale)}.note-dot{position:absolute;width:4px;height:4px;background:#aa8d57;border-radius:50%;left:10px;top:11px}.legend{border-top:1px solid var(--line);padding:18px 0 19px;display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:20px;font-size:10px;color:var(--muted)}.legend>span{display:flex;align-items:center;gap:5px}.legend i{width:6px;height:6px;display:block;border-radius:2px}.rest-swatch{background:#d7997a}.work-swatch{background:#acb29e}.term-swatch{background:var(--jade)}.note-swatch{background:#aa8d57;border-radius:50%!important}.legend small{margin-left:auto;font-size:9px}.bottom-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:18px;margin-top:20px}.seasonal-card{position:relative;overflow:hidden;padding:20px 23px;min-height:170px;background:#edf1e7}.seasonal-card h2{font:33px var(--serif);letter-spacing:5px;margin:10px 0 4px}.seasonal-card .term-date{font-size:11px;color:#6f7d65}.seasonal-card .term-count{color:var(--jade);font-size:11px;margin-top:13px}.branch-art{position:absolute;width:140px;height:130px;bottom:-2px;right:-15px;opacity:.35;fill:#afbd98;stroke:#859876;stroke-width:1.5}.seasonal-card>div{position:relative;z-index:1}.upcoming-card{padding:20px 20px 10px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}.section-heading .muted{font-size:9px}.upcoming-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:9px 0;text-align:left;width:100%}.upcoming-row:first-child{border:0}.upcoming-row b{font-weight:500;font-size:12px}.upcoming-row small{display:block;color:var(--muted);font-size:10px}.countdown{font-size:10px;white-space:nowrap;color:var(--muted)}.countdown b{font-family:Georgia;font-size:19px;color:var(--jade);margin-right:4px}.page-footer{display:flex;justify-content:space-between;gap:12px;padding:18px 0;color:#92968a;font-size:9px}.page-footer button{font-size:9px;padding:0}.day-card{background:#faf7ed;overflow:hidden}.day-top{padding:20px 23px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.day-top .pill{padding:2px 8px;border:1px solid #dce2ce;border-radius:20px;font-size:10px;color:var(--jade)}.day-top .pill.rest{color:var(--red);border-color:#ead0bf}.day-top .pill.work{color:var(--ochre)}.date-hero{text-align:center;padding:12px 12px 20px;position:relative}.date-hero .big-date{font:90px/1.1 Georgia,var(--serif);letter-spacing:-4px;color:var(--jade)}.date-hero .hero-lunar{font:19px var(--serif);letter-spacing:2px;margin:8px 0}.date-hero .hero-cycle{font-size:11px;color:#838579}.date-hero .festival-pills{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin-top:10px}.festival-pills span{background:#edeedd;padding:1px 8px;border-radius:3px;font-size:10px;color:var(--jade)}.almanac{border-top:1px solid #e5e3d4;padding:19px 22px 18px}.almanac-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font:14px var(--serif)}.almanac-title small{font:9px var(--sans);color:var(--muted)}.yi-ji{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.yi-ji .yi-icon,.yi-ji .ji-icon{flex-shrink:0;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font:15px var(--serif);background:#e1e8d7;color:var(--jade)}.yi-ji .ji-icon{background:#f1e4da;color:var(--red)}.yi-ji p{font-size:12px;line-height:2;color:#647160}.yi-ji.ji p{color:#946c5d}.folk-details{padding-top:12px;border-top:1px solid #e5e3d4;font-size:10px}.folk-details summary{cursor:pointer;color:var(--muted)}.folk-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 9px;margin:12px 0}.folk-grid dt{color:var(--muted);font-size:9px}.folk-grid dd{margin:2px 0 0;color:var(--ink)}.folk-details p{color:var(--muted);line-height:1.8}.note-card{padding:20px 22px;margin-top:18px}.note-card h2{font-size:13px}.text-button{font-size:11px;color:var(--jade);padding:0}.empty-notes{text-align:center;color:var(--muted);padding:12px 0}.empty-notes .empty-icon{font-size:26px;color:#b4bc9f}.empty-notes p{font-size:11px;margin-top:5px}.privacy-note{border-top:1px solid var(--line);padding-top:13px;color:#9a9d90;font-size:9px;margin-top:16px}.note-row{display:flex;align-items:start;gap:8px;padding:11px 0;border-bottom:1px solid var(--line)}.note-row:last-child{border:0}.note-row .check{width:17px;height:17px;margin-top:3px;border:1px solid #b8c4aa;flex-shrink:0;border-radius:50%;font-size:10px;line-height:15px;padding:0}.note-row.done .check{background:var(--jade);color:white}.note-copy{flex:1;min-width:0;overflow-wrap:anywhere}.note-copy b{font-size:12px;font-weight:500}.note-row.done b{text-decoration:line-through;color:var(--muted)}.note-copy p{font-size:10px;color:var(--muted);white-space:pre-wrap;margin-top:2px}.delete-note{color:var(--muted);font-size:17px;padding:0 3px}.year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 12px;margin-bottom:20px}.mini-month{text-align:left;padding:10px;border-radius:8px;background:#f7f8f0}.mini-month:hover{background:var(--pale)}.mini-month h3{font:15px var(--serif);margin-bottom:8px}.mini-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;text-align:center;font-size:9px;line-height:19px}.mini-days .label{color:var(--muted);font-size:8px}.mini-days .red{color:var(--red)}.mini-days .rest{background:#f3e2d8;border-radius:3px}.mini-days .work{box-shadow:inset 0 -2px #abb68f}.mini-days .current{border-radius:50%;background:var(--jade);color:#fff}.holiday-list{display:grid;gap:10px;padding-bottom:23px}.holiday-item{padding:15px 17px;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:1fr auto;gap:6px 14px}.holiday-item h3{font:17px var(--serif)}.holiday-item .days{font-size:11px;color:var(--red);background:var(--red-pale);border-radius:4px;padding:2px 9px;align-self:start}.holiday-item p{font-size:12px}.holiday-item .workdates{font-size:10px;color:var(--muted);grid-column:1/-1}.term-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-bottom:23px}.term-tile{padding:15px;border-radius:8px;background:#f2f4ea;text-align:left}.term-tile h3{font:20px var(--serif);margin:4px 0}.term-tile .term-index{font-size:9px;letter-spacing:1px;color:#9b9d8b}.term-tile p{font-size:11px;color:var(--muted)}.term-tile.selected{background:var(--jade);color:#fff}.term-tile.selected p,.term-tile.selected .term-index{color:#d1ddc6}.notice{background:#f5f2e6;padding:20px;border-radius:8px;line-height:2;color:#8f7d50;margin-bottom:24px}.notice strong{display:block;font:18px var(--serif);margin-bottom:9px}.agenda-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.agenda-list{max-height:540px;overflow:auto;margin-bottom:20px}.agenda-group{padding:10px 0}.agenda-group>button{font:16px var(--serif);color:var(--jade)}.empty-state{text-align:center;padding:60px 15px;color:var(--muted)}.empty-state div{font-size:32px;opacity:.5;margin-bottom:10px}.empty-state p{font-size:12px}dialog{border:1px solid var(--line);border-radius:16px;padding:27px 30px;background:var(--card);color:var(--ink);width:min(580px,calc(100vw - 32px));max-height:85vh;box-shadow:0 25px 100px #183f3929}dialog::backdrop{background:#18332955;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.dialog-head h2{font:23px var(--serif)}.source-content{font-size:12px;color:#657060;line-height:1.9}.source-content h3{font:17px var(--serif);margin:20px 0 8px;color:var(--ink)}.source-content p{margin:8px 0}.source-links{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:11px}.source-links a{border-bottom:1px solid #bfccaf}form label,.tool-field{display:grid;gap:7px;margin-bottom:18px;font-size:12px}input,textarea,.tool-field select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#f8f9f2}textarea{resize:vertical}form .muted{margin:15px 0}form .primary{width:100%}.tool-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:22px}.tool-tabs button{font-size:12px;padding:6px 10px;border-radius:6px}.tool-tabs button.active{background:var(--pale);color:var(--jade)}.tool-result{padding:18px;background:var(--pale);border-radius:8px;margin:20px 0}.tool-result strong{font:23px var(--serif);display:block}.tool-result p{font-size:12px;margin-top:7px}.tool-result.error{background:var(--red-pale);color:var(--red)}.tool-result.error strong{font:14px var(--sans)}.tool-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);background:var(--jade);color:white;padding:10px 20px;border-radius:8px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1550px){.day{min-height:88px}.layout{grid-template-columns:minmax(0,1fr) 330px}.calendar-card{padding:28px 33px 0}.topbar,main{padding-left:48px;padding-right:48px}}
@media(max-width:1200px){.shell{grid-template-columns:155px 1fr}.sidebar{padding:30px 15px}.brand{gap:8px}.brand b{font-size:24px}.brand small{font-size:6px}.seal{width:35px;height:41px}.topbar{padding:25px 25px 20px}.topbar h1{font-size:21px}main{padding:23px 25px}.layout{grid-template-columns:minmax(0,1fr) 275px;gap:17px}.calendar-card{padding:21px 17px 0}.day{min-height:69px}.day .number{font-size:19px}.day .flag{right:2px;top:3px;font-size:8px}.bottom-grid{gap:14px;grid-template-columns:1fr}.upcoming-card{display:none}.date-hero .big-date{font-size:80px}.almanac{padding:17px 20px}.legend small{display:none}.today-short .muted{display:none}}
@media(max-width:950px){.shell{grid-template-columns:72px 1fr}.sidebar{padding:25px 10px}.brand{justify-content:center}.brand>div,.nav-caption,.sidebar-bottom{display:none}.sidebar nav{margin-top:40px}.sidebar nav button{font-size:0;justify-content:center;padding:10px;gap:0}.sidebar nav button>span:first-child{font-size:24px}.nav-dot{display:none!important}.layout{grid-template-columns:minmax(0,1fr) 270px;gap:15px}.topbar h1{font-size:20px}.top-actions{gap:6px}.button{padding:7px 11px}.day{min-height:64px}.day .lunar-label{font-size:10px}.calendar-card{padding:20px 12px 0}.week-header,.month-grid{gap:2px}.date-pickers select{font-size:20px}.year-grid{grid-template-columns:repeat(2,1fr)}.term-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.shell{display:block}.sidebar{position:sticky;top:0;height:auto;z-index:5;padding:10px 16px;background:#f0f1e9f5;backdrop-filter:blur(12px);flex-direction:row;align-items:center;gap:20px;border-right:0;border-bottom:1px solid var(--line)}.brand .seal{width:29px;height:34px;font-size:21px}.sidebar nav{display:flex;flex:1;justify-content:space-between;gap:3px;margin:0}.sidebar nav button{padding:5px 8px;font-size:11px;display:grid;gap:0;text-align:center}.sidebar nav button>span:first-child{font-size:18px;line-height:1.2;width:auto}.topbar{padding:21px 18px 16px;align-items:end}.topbar h1{font-size:19px;letter-spacing:0}.top-actions .button{font-size:10px;padding:7px 9px}.top-actions{flex-direction:column}.eyebrow{font-size:9px}.layout{grid-template-columns:1fr;gap:18px}main{padding:20px 16px}.intro{margin-bottom:18px;align-items:start}.intro-kicker{font-size:16px}.today-short{font-size:9px;gap:5px;margin-top:5px}.intro p{font-size:11px}.calendar-card{padding:21px 16px 0}.day{min-height:66px}.day .number{font-size:21px}.day .lunar-label{font-size:10px}.day .flag{right:3px;top:4px}.calendar-actions{gap:4px}.date-pickers select{font-size:23px}.year-grid{grid-template-columns:repeat(3,1fr);gap:10px 6px}.mini-month{padding:6px}.mini-days{font-size:8px;line-height:16px}.bottom-grid{grid-template-columns:1fr 1.1fr;gap:12px;margin-top:16px}.upcoming-card{display:block;padding:17px 14px 8px}.seasonal-card{padding:17px 17px;min-height:170px}.section-heading .muted{display:none}.detail-column{display:grid;grid-template-columns:1fr;gap:16px}.note-card{margin-top:0}.day-card{display:grid;grid-template-columns:1fr 1.2fr}.day-top{grid-column:1/-1;padding:15px 20px 0}.date-hero{padding:20px 10px}.date-hero .big-date{font-size:75px}.date-hero .hero-lunar{font-size:16px;letter-spacing:1px}.date-hero .hero-cycle{font-size:9px}.almanac{border-top:0;border-left:1px solid #e5e3d4;padding:18px 15px}.almanac-title{font-size:13px}.almanac-title small{font-size:8px}.yi-ji{gap:8px}.yi-ji p{font-size:11px}.page-footer{font-size:8px;flex-wrap:wrap}.term-grid{grid-template-columns:repeat(3,1fr)}.term-tile{padding:12px 9px}.term-tile p{font-size:10px}dialog{padding:22px}.dialog-head h2{font-size:20px}}
@media(max-width:390px){.sidebar{gap:10px;padding:9px 10px}.sidebar nav button{padding:5px 6px}.topbar h1{font-size:17px}.today-short{font-size:8px}.calendar-card{padding:18px 10px 0}.day{min-height:62px}.day .flag{font-size:7px;line-height:11px}.day-card{display:block}.almanac{border-left:0;border-top:1px solid var(--line)}.year-grid{grid-template-columns:repeat(2,1fr)}.bottom-grid{grid-template-columns:1fr}.upcoming-card{display:block}.term-grid{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
[hidden]{display:none!important}
.connection-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 17px;background:#edf1e8;border:1px solid #dce5d5;border-radius:10px;font-size:12px}
.connection-bar>div:first-child{display:flex;align-items:center;gap:9px}.connection-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--jade)}.connection-dot.checking{background:var(--ochre)}.connection-dot.muted-dot{background:#93968b}
.connection-actions{display:flex;gap:8px;flex-wrap:wrap}.connection-actions button{min-height:34px;padding:5px 10px;border:1px solid #cedbca;border-radius:6px;background:#f9fbf5;color:var(--jade);font-size:11px}.connection-actions button:hover{background:#dfe9da}.connection-actions button:disabled{opacity:.55}
.connection-detail{display:flex;justify-content:space-between;gap:12px;margin:8px 3px 22px;font-size:10px;color:var(--muted)}.connection-detail span:last-child{flex-shrink:0}
.install-content{font-size:13px;line-height:1.9}.install-brand{display:flex;align-items:center;gap:15px;margin:8px 0 20px}.install-brand img{border-radius:15px}.install-brand b{font:25px var(--serif)}.install-brand p{margin:3px 0;color:var(--muted)}.install-content ol{padding-left:22px}.install-content li{padding-bottom:10px}.install-location{padding:12px 15px;border-radius:7px;background:var(--pale)}.install-content .muted{font-size:11px}.install-content a{font-size:11px;border-bottom:1px solid #bfccaf}.holiday-provenance{font-size:11px;color:var(--muted);margin:0 0 16px}
@media(max-width:760px){.sidebar{padding-top:max(10px,env(safe-area-inset-top))}main{padding-bottom:max(20px,env(safe-area-inset-bottom))}.connection-bar{align-items:flex-start;flex-direction:column;gap:8px;padding:12px}.connection-actions{width:100%;gap:7px}.connection-actions button{min-height:40px;flex:1;padding:5px 8px}.connection-detail{font-size:9px;flex-direction:column;gap:3px;margin-bottom:18px}.connection-detail span:last-child{flex-shrink:1}input,textarea,.tool-field select{font-size:16px}.icon-button,.today-button,.sidebar nav button{min-height:44px}.top-actions .button{min-height:40px}dialog{max-height:calc(100dvh - 40px);overflow:auto}.toast{max-width:90vw;bottom:max(30px,env(safe-area-inset-bottom))}}
