.sp-app.m-shell{position:fixed;top:var(--m-vv-top,0);left:0;right:0;display:flex;flex-direction:column;height:100vh;height:100dvh;height:var(--m-vv-height,100dvh);min-height:0;grid-template-columns:none;background:var(--bg-canvas);--bg-default:var(--bg-canvas)}.m-appbar{height:56px;display:flex;gap:6px;padding:0 8px 0 6px;background:var(--bg-elevated);border-bottom:1px solid var(--border-default);z-index:5}.m-appbar,.m-iconbtn{flex-shrink:0;align-items:center;position:relative}.m-iconbtn{width:40px;height:40px;border:none;background:transparent;border-radius:11px;color:var(--fg-default);cursor:pointer;display:inline-flex;justify-content:center;transition:background var(--dur-fast)}.m-iconbtn:hover{background:var(--bg-subtle)}.m-iconbtn:active{background:var(--bg-muted)}.m-iconbtn svg{width:22px;height:22px}.m-appbar-title{flex:1;min-width:0;font:800 17px var(--font-sans);letter-spacing:-.02em;color:var(--fg-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:4px}.m-appbar-title small{display:block;font:600 11px var(--font-sans);color:var(--fg-muted);letter-spacing:0;margin-top:-1px}.m-bell-dot{position:absolute;top:6px;right:7px;min-width:15px;height:15px;padding:0 4px;border-radius:99px;background:var(--danger);color:#fff;font:700 9.5px var(--font-sans);display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-elevated)}.m-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;position:relative}.m-body::-webkit-scrollbar{width:0}.m-pad{padding:16px 16px 96px}.m-intro{padding:14px 16px 4px}.m-intro h2{font:800 21px var(--font-sans);letter-spacing:-.02em;margin:0}.m-intro p{font:500 13px/1.5 var(--font-sans);color:var(--fg-muted);margin:6px 0 0}.m-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:8px;padding:12px 16px;background:color-mix(in srgb,var(--bg-default) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap}.m-seg{display:flex;width:100%;padding:3px;background:var(--bg-muted);border-radius:11px;gap:2px}.m-seg button{flex:1;border:none;background:transparent;cursor:pointer;padding:8px 6px;border-radius:8px;white-space:nowrap;font:700 13px var(--font-sans);color:var(--fg-muted);display:inline-flex;align-items:center;justify-content:center;gap:5px;transition:all var(--dur-fast) var(--ease-out)}.m-seg button svg{width:15px;height:15px}.m-seg button .cnt{font:700 10.5px var(--font-sans);background:var(--bg-default);color:var(--fg-muted);padding:0 6px;border-radius:99px}.m-seg button.is-active{background:var(--bg-elevated);color:var(--fg-strong);box-shadow:var(--shadow-1)}.m-seg button.is-active .cnt{background:var(--brand);color:#fff}.m-chiprow{display:flex;gap:8px;overflow-x:auto;padding:12px 16px;scrollbar-width:none}.m-chiprow::-webkit-scrollbar{display:none}.m-chiprow .sp-chip{flex-shrink:0}.m-search{display:flex;align-items:center;gap:9px;height:42px;padding:0 13px;width:100%;background:var(--bg-muted);border:1px solid transparent;border-radius:12px;box-sizing:border-box}.m-search:focus-within{background:var(--bg-elevated);border-color:var(--brand);box-shadow:var(--focus-ring)}.m-search input{all:unset;flex:1;width:0;font:500 14.5px var(--font-sans);color:var(--fg-strong);min-width:0}.m-search input::-moz-placeholder{color:var(--fg-subtle)}.m-search input::placeholder{color:var(--fg-subtle)}.m-search svg{width:18px;height:18px;color:var(--fg-muted);flex-shrink:0}.m-list{display:flex;flex-direction:column;gap:10px}.m-rowcard{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:14px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:15px;cursor:pointer;box-shadow:var(--shadow-1);transition:transform 80ms var(--ease-out),border-color var(--dur-fast),box-shadow var(--dur-fast)}.m-rowcard:active{transform:scale(.985);border-color:var(--border-strong)}.m-rowcard-main{flex:1;min-width:0}.m-rowcard-title{font:700 15px var(--font-sans);color:var(--fg-strong);letter-spacing:-.01em;display:flex;align-items:center;gap:7px}.m-rowcard-sub{font:500 12.5px var(--font-sans);color:var(--fg-muted);margin-top:3px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.m-rowcard-sub .mono{font-family:var(--font-mono);font-size:11.5px}.m-rowcard .chev{color:var(--fg-subtle);flex-shrink:0;width:18px;height:18px}.m-sec{font:700 12px var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-subtle);margin:22px 2px 10px;display:flex;align-items:center;gap:8px}.m-sec:first-child{margin-top:4px}.m-sec .ln{flex:1;height:1px;background:var(--border-subtle)}.m-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.m-kpi{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:15px;padding:14px 15px;min-width:0}.m-kpi .l{font:600 12px var(--font-sans);color:var(--fg-muted);display:flex;align-items:center;gap:5px}.m-kpi .l svg{width:14px;height:14px}.m-kpi .v{font:800 23px/1.1 var(--font-sans);letter-spacing:-.02em;margin-top:7px;font-variant-numeric:tabular-nums;display:block;white-space:nowrap}.m-kpi .v .unit{font-size:14px;font-weight:700;color:var(--fg-muted)}.m-kpi .d{font:600 11.5px var(--font-sans);margin-top:6px;display:inline-flex;align-items:center;gap:3px}.m-kpi .d.up{color:var(--success-fg)}.m-kpi .d.down{color:var(--danger-fg)}.m-kpi .d svg{width:12px;height:12px}.m-fab{position:fixed;right:18px;bottom:22px;z-index:6;height:52px;padding:0 20px;border:none;border-radius:16px;background:var(--ink);color:var(--fg-inverse);cursor:pointer;display:inline-flex;align-items:center;gap:8px;font:800 14.5px var(--font-sans);letter-spacing:-.01em;box-shadow:0 10px 24px -6px rgba(0,0,0,.4);transition:transform 90ms var(--ease-out)}.m-fab:active{transform:scale(.95)}.m-fab .sp-dot{width:7px;height:7px;border-radius:50%;background:var(--brand)}.m-fab svg{width:19px;height:19px}.m-fab.round{padding:0;width:56px;height:56px;justify-content:center;border-radius:18px}.m-scrim{position:absolute;inset:0;z-index:30;background:var(--bg-overlay);opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out);touch-action:none}.m-scrim.is-open{opacity:1;pointer-events:auto}.sp-app.m-shell[data-mobnav=open] .m-body{overflow:hidden}.m-drawer{position:absolute;top:0;left:0;bottom:0;z-index:31;width:308px;max-width:86%;background:var(--bg-elevated);border-right:1px solid var(--border-default);transform:translateX(-104%);transition:transform var(--dur-slow) var(--ease-out);display:flex;flex-direction:column;box-shadow:0 0 60px rgba(0,0,0,.2)}.m-drawer.is-open{transform:none}.m-drawer-head{display:flex;align-items:center;gap:11px;padding:18px 18px 16px}.m-drawer-head .sp-brand-mark{width:38px;height:38px;border-radius:11px}.m-drawer-head .nm{font:800 18px var(--font-sans);letter-spacing:-.02em}.m-drawer-head .bd{font:700 9px var(--font-sans);letter-spacing:.1em;color:var(--brand-fg);background:var(--brand-soft);padding:3px 6px;border-radius:5px}.m-drawer-head .close{margin-left:auto}.m-drawer-nav{flex:1;overflow-y:auto;padding:4px 12px 12px}.m-drawer-nav::-webkit-scrollbar{width:0}.m-navsec{font:700 11px var(--font-sans);letter-spacing:.05em;text-transform:uppercase;color:var(--fg-subtle);padding:14px 10px 6px}.m-navitem{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:12px;border-radius:12px;border:none;background:none;cursor:pointer;font:600 15px var(--font-sans);color:var(--fg-default);position:relative;transition:background var(--dur-fast)}.m-navitem svg{width:20px;height:20px;flex-shrink:0;opacity:.85}.m-navitem:active{background:var(--bg-subtle)}.m-navitem.is-active{background:var(--brand-soft);color:var(--brand-fg);font-weight:700}.m-navitem .lbl{flex:1}.m-navitem .badge{font:700 11px var(--font-sans);background:var(--c-neutral-100);color:var(--fg-muted);padding:1px 8px;border-radius:99px;font-variant-numeric:tabular-nums}.m-navitem.is-active .badge{background:var(--brand);color:#fff}[data-theme=dark] .m-navitem .badge{background:var(--bg-muted)}.m-drawer-foot{display:flex;align-items:center;gap:11px;padding:12px;margin:0 12px 14px;background:var(--bg-subtle);border-radius:14px;border:1px solid var(--border-subtle)}.m-drawer-foot .meta{flex:1;min-width:0}.m-drawer-foot .nm{font:700 13.5px var(--font-sans);color:var(--fg-strong)}.m-drawer-foot .sub{font:500 11.5px var(--font-sans);color:var(--fg-muted)}.m-sheet-wrap{position:absolute;inset:0;z-index:40;display:none}.m-sheet-wrap.is-open{display:block}.m-sheet-scrim{position:absolute;inset:0;background:var(--bg-overlay);opacity:0;transition:opacity var(--dur-base) var(--ease-out)}.m-sheet-wrap.is-open .m-sheet-scrim{opacity:1}.m-sheet{position:absolute;left:0;right:0;bottom:0;max-height:80%;background:var(--bg-elevated);border-radius:24px 24px 0 0;display:flex;flex-direction:column;overflow:hidden;transform:translateY(100%);transition:transform var(--dur-slow) var(--ease-spring);box-shadow:0 -10px 50px rgba(0,0,0,.25)}.m-sheet-wrap.is-open .m-sheet{transform:none}.m-sheet.tall{height:80%;max-height:80%;border-radius:24px 24px 0 0}.m-sheet-griparea{display:flex;justify-content:center;align-items:center;padding:8px 0 6px;cursor:grab;flex-shrink:0;touch-action:none}.m-sheet-griparea:active{cursor:grabbing}.m-sheet-grip{width:40px;height:4.5px;border-radius:99px;background:var(--border-strong);flex-shrink:0;transition:background var(--dur-fast)}.m-sheet-griparea:active .m-sheet-grip{background:var(--fg-subtle)}.m-sheet-head{display:flex;align-items:flex-start;gap:10px;padding:8px 18px 14px;border-bottom:1px solid var(--border-subtle)}.m-sheet-head h3{font:800 18px var(--font-sans);letter-spacing:-.02em;margin:0;flex:1}.m-sheet-head .sub{font:500 12.5px var(--font-sans);color:var(--fg-muted);margin-top:3px}.m-sheet-body{padding:16px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.m-sheet-foot{display:flex;gap:10px;padding:14px 18px;border-top:1px solid var(--border-subtle);flex-shrink:0;background:var(--bg-elevated)}.m-sheet-foot .sp-btn{flex:1;height:46px;border-radius:13px;font-size:14.5px}.m-fieldrow{display:flex;flex-direction:column;gap:7px}.m-fieldrow .lbl{font:700 12px var(--font-sans);color:var(--fg-muted);letter-spacing:.01em}.m-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.m-meta-grid .l{font:600 11.5px var(--font-sans);color:var(--fg-muted);display:block}.m-meta-grid .v{font:700 14.5px var(--font-sans);color:var(--fg-strong);display:block;margin-top:4px}.m-meta-grid .v code{font:600 12.5px var(--font-mono)}.m-pager{display:flex;gap:12px;padding:20px 0 6px}.m-pager,.m-pager button{align-items:center;justify-content:center}.m-pager button{display:inline-flex;width:40px;height:40px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--fg-default);cursor:pointer;transition:background var(--dur-fast),border-color var(--dur-fast)}.m-pager button:not(:disabled):active{background:var(--bg-muted)}.m-pager button:disabled{opacity:.38;cursor:default}.m-pager button svg{width:18px;height:18px}.m-pager .info{font:700 13.5px var(--font-sans);color:var(--fg-muted);font-variant-numeric:tabular-nums;min-width:64px;text-align:center}.m-cred{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border-default);border-radius:14px;background:var(--bg-subtle)}.m-cred-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.m-cred-row .l{font:600 12px var(--font-sans);color:var(--fg-muted);flex-shrink:0}.m-cred-row .v{display:inline-flex;align-items:center;gap:8px;min-width:0}.m-cred-row .v code{font:700 14px var(--font-mono);color:var(--fg-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-cred-copy{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--fg-muted);cursor:pointer;flex-shrink:0}.m-cred-copy:active{background:var(--bg-muted)}.m-cred-note{font:500 11px/1.45 var(--font-sans);color:var(--fg-subtle);margin:0}.m-filterbar{display:flex;flex-direction:column;gap:0}.m-chipwrap{display:flex;flex-wrap:wrap;gap:8px}.m-chiprow .sp-chip,.m-chipwrap .sp-chip{display:inline-flex;align-items:center;gap:5px}.m-chiprow .sp-chip svg,.m-chipwrap .sp-chip svg{width:14px;height:14px;flex-shrink:0}.m-chiprow .sp-chip:disabled,.m-chipwrap .sp-chip:disabled{opacity:.55;cursor:default}.m-loadmore{width:100%;margin-top:12px;height:44px;border:1px solid var(--border-default);background:var(--bg-elevated);border-radius:12px;cursor:pointer;font:700 13.5px var(--font-sans);color:var(--fg-default);display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background var(--dur-fast)}.m-loadmore:active{background:var(--bg-muted)}.m-loadmore svg{width:16px;height:16px}.m-form{display:flex;flex-direction:column;gap:18px}.m-form .m-fieldrow .req{color:var(--danger-fg);font-style:normal}.m-textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:112px;padding:12px 13px;background:var(--bg-muted);border:1px solid transparent;border-radius:12px;font:500 14.5px/1.6 var(--font-sans);color:var(--fg-strong)}.m-textarea:focus{outline:none;background:var(--bg-elevated);border-color:var(--brand);box-shadow:var(--focus-ring)}.m-textarea::-moz-placeholder{color:var(--fg-subtle)}.m-textarea::placeholder{color:var(--fg-subtle)}.m-input{width:100%;box-sizing:border-box;padding:11px 13px;background:var(--bg-muted);border:1px solid transparent;border-radius:12px;font:500 14.5px var(--font-sans);color:var(--fg-strong)}.m-input:focus{outline:none;background:var(--bg-elevated);border-color:var(--brand);box-shadow:var(--focus-ring)}.m-input::-moz-placeholder{color:var(--fg-subtle)}.m-input::placeholder{color:var(--fg-subtle)}.m-form-actions{display:flex;gap:10px;margin-top:6px;padding-bottom:8px}.m-form-actions .sp-btn{flex:1;height:48px;border-radius:13px;font-size:15px}.m-daterow{display:flex;align-items:center;gap:10px}.m-daterow .m-dateinput{flex:1;min-width:0}.m-daterow .sep{font:600 13px var(--font-sans);color:var(--fg-subtle);flex-shrink:0}.m-dateinput{height:46px;box-sizing:border-box;width:100%;padding:0 13px;background:var(--bg-muted);border:1px solid transparent;border-radius:12px;font:600 14.5px var(--font-sans);color:var(--fg-strong)}.m-dateinput:focus{outline:none;background:var(--bg-elevated);border-color:var(--brand);box-shadow:var(--focus-ring)}.m-cal-field,.m-cal-fields{display:flex;flex-direction:column}.m-cal-fields{gap:10px}.m-selectfield .chev{transition:transform var(--dur-base) var(--ease-out)}.m-selectfield.is-open .chev{transform:rotate(180deg)}.m-selectfield .clr{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:auto;border-radius:7px;color:var(--fg-muted);flex-shrink:0}.m-selectfield .clr:active{background:var(--bg-muted)}.m-cal{margin-top:8px;padding:12px 12px 14px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:16px;box-shadow:var(--shadow-1);transform-origin:top center;animation:m-cal-slide .2s var(--ease-out)}@keyframes m-cal-slide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.m-cal .sp-cal-day{font-size:14.5px;border-radius:10px}.m-cal .sp-cal-title{font-size:15px}.m-cal .sp-cal-nav{width:34px;height:34px}.m-cal .sp-cal-day.is-today{box-shadow:inset 0 0 0 1.5px var(--brand);color:var(--brand-fg);font-weight:700}.m-cal .sp-cal-day.is-today.is-sel{box-shadow:none;color:var(--brand-on)}.m-selectfield{display:flex;align-items:center;gap:9px;width:100%;height:46px;box-sizing:border-box;padding:0 13px;background:var(--bg-muted);border:1px solid transparent;border-radius:12px;cursor:pointer;font:600 14.5px var(--font-sans);color:var(--fg-strong);text-align:left}.m-selectfield:active{background:var(--bg-subtle)}.m-selectfield .val{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-selectfield .chev{color:var(--fg-muted);margin-left:auto}.m-selectfield>svg:first-child{color:var(--fg-muted);flex-shrink:0}.m-picker{position:fixed;inset:0;z-index:60;background:var(--bg-default);display:flex;flex-direction:column}.m-picker-head{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border-default);background:var(--bg-elevated)}.m-picker-head .m-search{flex:1}.m-picker-list{flex:1;overflow-y:auto;padding:8px 12px 28px}.m-picker-item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:14px 12px;border:none;background:none;border-radius:12px;cursor:pointer;font:600 15px var(--font-sans);color:var(--fg-default)}.m-picker-item:active{background:var(--bg-subtle)}.m-picker-item .lbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-picker-item svg{flex-shrink:0;color:var(--fg-muted)}.m-picker-item.is-active{color:var(--brand-fg);font-weight:700}.m-picker-item.is-active svg{color:var(--brand)}.m-picker-item .chk{margin-left:auto;color:var(--brand)}.m-fullpage{position:fixed;top:var(--m-vv-top,0);left:0;right:0;z-index:55;background:var(--bg-default);display:flex;flex-direction:column;height:100dvh;height:var(--m-vv-height,100dvh)}.m-fullpage-head{flex-shrink:0;display:flex;align-items:center;gap:4px;height:56px;padding:0 8px;border-bottom:1px solid var(--border-default);background:var(--bg-elevated)}.m-fullpage-head .ttl{flex:1;min-width:0;font:800 17px var(--font-sans);letter-spacing:-.02em;color:var(--fg-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-fullpage-head .act{margin-left:auto}.m-fullpage-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.m-readonly{display:flex;align-items:center;gap:8px;height:46px;padding:0 13px;background:var(--bg-subtle);border:1px dashed var(--border-default);border-radius:12px;font:600 14px var(--font-sans);color:var(--fg-muted)}.m-readonly svg{width:16px;height:16px;flex-shrink:0}.m-comment,.m-comment-list{display:flex;flex-direction:column}.m-comment{gap:5px;padding:13px 0;border-bottom:1px solid var(--border-subtle)}.m-comment-meta{display:flex;align-items:baseline;gap:8px}.m-comment-meta .nm{font:700 13.5px var(--font-sans);color:var(--fg-strong)}.m-comment-meta .t{font:500 11.5px var(--font-sans);color:var(--fg-subtle);font-variant-numeric:tabular-nums}.m-comment p{margin:0;font:400 14.5px/1.6 var(--font-sans);color:var(--fg-default);white-space:pre-wrap;word-break:break-word}.m-comment-bar{flex-shrink:0;display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--border-default);background:var(--bg-elevated)}.m-comment-bar textarea{flex:1;box-sizing:border-box;resize:none;max-height:120px;min-height:44px;padding:11px 13px;background:var(--bg-muted);border:1px solid transparent;border-radius:13px;font:500 14.5px/1.5 var(--font-sans);color:var(--fg-strong)}.m-comment-bar textarea:focus{outline:none;background:var(--bg-elevated);border-color:var(--brand)}.m-comment-bar textarea::-moz-placeholder{color:var(--fg-subtle)}.m-comment-bar textarea::placeholder{color:var(--fg-subtle)}.m-comment-bar .send{width:44px;height:44px;flex-shrink:0;border:none;border-radius:13px;background:var(--brand);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.m-comment-bar .send:disabled{opacity:.45;cursor:default}.m-comment-bar .send svg{width:19px;height:19px}.m-tappable{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:13px 14px;background:var(--bg-subtle);border:1px solid var(--border-default);border-radius:13px;cursor:pointer;font:700 13.5px var(--font-sans);color:var(--fg-default)}.m-tappable:active{background:var(--bg-muted)}.m-tappable .chev{margin-left:auto;color:var(--fg-subtle)}.m-tappable svg{flex-shrink:0}.m-wbcard{display:flex;flex-direction:column;gap:9px;padding:14px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:15px;box-shadow:var(--shadow-1);cursor:pointer;text-align:left;transition:transform 80ms var(--ease-out),border-color var(--dur-fast)}.m-wbcard:active{transform:scale(.985);border-color:var(--border-strong)}.m-wbcard.is-done .m-wbcard-title{color:var(--fg-muted)}.m-wbcard-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.m-wbcard-branch{display:inline-flex;align-items:center;gap:3px;padding:2px 8px 2px 6px;border-radius:99px;background:var(--bg-muted);font:600 11px var(--font-sans);color:var(--fg-muted)}.m-wbcard-branch svg{width:11px;height:11px}.m-wbcard-title{font:600 15px/1.4 var(--font-sans);color:var(--fg-strong);letter-spacing:-.01em}.m-wbcard-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-wbcard-meta{gap:12px;font:600 12px var(--font-sans);color:var(--fg-muted);font-variant-numeric:tabular-nums}.m-wbcard-meta,.m-wbcard-meta span{display:inline-flex;align-items:center}.m-wbcard-meta span{gap:3px}.m-wbcard-meta svg{width:13px;height:13px}.m-wbcard-meta .ok{color:var(--success-fg)}.m-avstack{display:inline-flex;align-items:center}.m-avstack>*{margin-left:-7px;box-shadow:0 0 0 2px var(--bg-elevated)}.m-avstack>:first-child{margin-left:0}.m-statuspick{display:flex;gap:8px}.m-statuspick button{flex:1;border:1.5px solid var(--border-default);background:var(--bg-elevated);border-radius:12px;padding:11px 6px;cursor:pointer;font:700 13px var(--font-sans);color:var(--fg-default);display:flex;flex-direction:column;align-items:center;gap:5px;transition:all var(--dur-fast)}.m-statuspick button .dot{width:9px;height:9px;border-radius:50%}.m-statuspick button.is-active{border-color:var(--ink);background:var(--bg-subtle);box-shadow:inset 0 0 0 1px var(--ink)}.m-daystrip{display:flex;gap:7px;overflow-x:auto;padding:12px 16px;scrollbar-width:none}.m-daystrip::-webkit-scrollbar{display:none}.m-day{flex-shrink:0;width:50px;padding:9px 0;border-radius:14px;border:1px solid var(--border-default);background:var(--bg-elevated);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;transition:all var(--dur-fast)}.m-day .dow{font:700 11px var(--font-sans);color:var(--fg-muted)}.m-day .dt{font:800 17px var(--font-sans);color:var(--fg-strong);font-variant-numeric:tabular-nums}.m-day .pip{width:5px;height:5px;border-radius:50%;background:var(--brand)}.m-day .pip.none{background:transparent}.m-day.weekend .dow{color:var(--danger-fg)}.m-day.is-active{background:var(--ink);border-color:var(--ink)}.m-day.is-active .dow,.m-day.is-active .dt{color:var(--fg-inverse)}.m-day.is-active .pip{background:var(--brand)}.m-shift{position:relative;display:flex;flex-direction:column;gap:9px;padding:14px 14px 14px 16px;border-radius:15px;background:var(--soft);border:1px solid color-mix(in srgb,var(--c) 24%,transparent);border-left:4px solid var(--c);cursor:pointer;transition:transform 80ms var(--ease-out)}.m-shift:active{transform:scale(.985)}.m-shift-time{font:800 15px var(--font-mono);color:var(--c);letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.m-shift-tag{font:700 11px var(--font-sans);color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);padding:2px 8px;border-radius:99px}.m-shift-people{display:flex;align-items:center;gap:9px}.m-shift-names{font:700 13.5px var(--font-sans);color:var(--fg-strong)}.m-shift-names i{color:var(--fg-subtle);font-weight:600;font-style:normal}.m-shift .pend{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:5px;font:700 10.5px var(--font-sans);color:var(--warning-fg);background:var(--warning-soft);padding:3px 8px;border-radius:99px}.m-clock{border-radius:20px;border:1px solid var(--border-default);background:var(--bg-elevated);padding:22px;text-align:center;transition:all var(--dur-base) var(--ease-out)}.m-clock.in{border-color:color-mix(in srgb,var(--info) 35%,transparent);background:var(--info-soft)}.m-clock-date{font:600 13px var(--font-sans);color:var(--fg-muted)}.m-clock-time{font:800 46px var(--font-mono);color:var(--fg-strong);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.05;margin-top:4px}.m-clock-state{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:5px 13px;border-radius:99px;font:700 12.5px var(--font-sans)}.m-clock-state.off{background:var(--bg-muted);color:var(--fg-muted)}.m-clock-state.on{background:var(--info);color:#fff}.m-bigbtn{width:100%;margin-top:18px;height:60px;border:none;border-radius:16px;cursor:pointer;font:800 17px var(--font-sans);color:#fff;background:var(--brand);box-shadow:var(--shadow-3);display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform 90ms var(--ease-out)}.m-bigbtn:active{transform:scale(.98)}.m-bigbtn svg{width:21px;height:21px}.m-attrow{display:flex;align-items:center;gap:12px;padding:13px 14px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:14px}.m-attrow.danger{border-color:color-mix(in srgb,var(--danger) 30%,transparent);background:var(--danger-soft)}.m-attrow-main{flex:1;min-width:0}.m-attrow-name{font:700 14.5px var(--font-sans);color:var(--fg-strong)}.m-attrow-sub{font:500 12px var(--font-sans);color:var(--fg-muted);margin-top:2px;font-variant-numeric:tabular-nums}.m-attrow-time{font:800 16px var(--font-mono);color:var(--fg-strong);font-variant-numeric:tabular-nums}.m-setrow{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--border-subtle)}.m-setrow:last-child{border-bottom:none}.m-setrow-main{flex:1;min-width:0}.m-setrow-title{font:700 14.5px var(--font-sans);color:var(--fg-strong)}.m-setrow-sub{font:500 12.5px/1.5 var(--font-sans);color:var(--fg-muted);margin-top:2px}.m-prose{font:400 15px/1.75 var(--font-sans);color:var(--fg-default)}.m-prose h1{font:800 23px var(--font-sans);margin:4px 0 12px;letter-spacing:-.02em}.m-prose h2{font:700 18px var(--font-sans);margin:22px 0 8px}.m-prose p{margin:10px 0}.m-prose ol,.m-prose ul{margin:10px 0;padding-left:22px}.m-prose ul{list-style:disc}.m-prose ol{list-style:decimal}.m-prose li{margin:5px 0}.m-prose [data-callout]{background:var(--info-soft);border-left:3px solid var(--info-fg);border-radius:10px;padding:12px 14px;margin:14px 0;font-size:14px}.m-empty{text-align:center;padding:48px 24px}.m-empty-ic{width:60px;height:60px;border-radius:18px;background:var(--bg-muted);color:var(--fg-subtle);display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px}.m-empty-ic svg{width:28px;height:28px}.m-empty h4{font:800 17px var(--font-sans);margin:0 0 6px}.m-empty p{font:500 13.5px/1.6 var(--font-sans);color:var(--fg-muted);margin:0}.m-card{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:16px}.m-card-pad{padding:16px}.m-card-head{display:flex;align-items:center;gap:9px;padding:14px 16px;border-bottom:1px solid var(--border-subtle);font:700 14.5px var(--font-sans)}.m-card-head svg{width:17px;height:17px;color:var(--fg-muted)}.m-card-head .right{margin-left:auto;font:600 12px var(--font-sans);color:var(--fg-muted)}.m-banner{display:flex;align-items:center;gap:10px;padding:13px 14px;border-radius:13px;font:600 13px/1.45 var(--font-sans)}.m-banner svg{width:18px;height:18px;flex-shrink:0}.m-banner.warn{background:var(--warning-soft);color:var(--warning-fg)}.m-banner.danger{background:var(--danger-soft);color:var(--danger-fg)}.m-banner.brand{background:var(--brand-soft);color:var(--brand-fg)}.m-toast{position:absolute;left:16px;right:16px;bottom:22px;z-index:50;display:flex;align-items:center;gap:9px;background:var(--ink);color:var(--fg-inverse);padding:13px 16px;border-radius:14px;font:700 13.5px var(--font-sans);box-shadow:var(--shadow-4);opacity:0;transform:translateY(14px);pointer-events:none;transition:all var(--dur-slow) var(--ease-spring)}.m-toast.is-show{opacity:1;transform:none}.m-toast svg{width:18px;height:18px;color:var(--brand);flex-shrink:0}.m-fullcenter{flex:1;display:flex;flex-direction:column;text-align:center;padding:32px 26px;gap:6px}.m-fullcenter,.m-fullcenter .ic{align-items:center;justify-content:center}.m-fullcenter .ic{width:66px;height:66px;border-radius:19px;display:inline-flex;margin-bottom:12px}.m-fullcenter .ic svg{width:32px;height:32px}.m-fullcenter h1{font:800 22px var(--font-sans);letter-spacing:-.02em;margin:0}.m-fullcenter p{font:500 14px/1.6 var(--font-sans);color:var(--fg-muted);margin:6px 0 0;max-width:280px}.m-pill-tabs{display:flex;gap:7px;overflow-x:auto;padding:0;scrollbar-width:none}.m-pill-tabs::-webkit-scrollbar{display:none}.m-pill{flex-shrink:0;border:1px solid var(--border-default);background:var(--bg-elevated);border-radius:99px;padding:8px 14px;font:700 13px var(--font-sans);color:var(--fg-muted);cursor:pointer;white-space:nowrap;transition:all var(--dur-fast)}.m-pill.is-active{background:var(--ink);border-color:var(--ink);color:var(--fg-inverse)}.m-sched-bar{display:flex;flex-direction:column;gap:10px;padding-top:12px;padding-bottom:4px}.m-viewseg{width:100%}.m-periodnav{display:flex;align-items:center;gap:4px}.m-periodnav .lbl{font:800 15px var(--font-sans);letter-spacing:-.01em;color:var(--fg-strong);white-space:nowrap}.m-today-btn{margin-left:auto;height:36px;padding:0 14px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-elevated);font:700 13px var(--font-sans);color:var(--fg-default);cursor:pointer}.m-today-btn:active{background:var(--bg-subtle)}.m-monthgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-top:4px}.m-mdow{text-align:center;font:700 11px var(--font-sans);color:var(--fg-muted);padding:2px 0 6px}.m-mdow.sun{color:var(--danger-fg)}.m-mdow.sat{color:var(--c-cyan-600)}.m-mcell{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:52px;padding:6px 2px;border-radius:10px;border:1px solid transparent;background:var(--bg-elevated);cursor:pointer}.m-mcell:active{background:var(--bg-subtle)}.m-mcell .d{font:700 13.5px var(--font-sans);color:var(--fg-strong);font-variant-numeric:tabular-nums}.m-mcell.out{background:transparent}.m-mcell.out .d{color:var(--fg-subtle);opacity:.5}.m-mcell.sun .d{color:var(--danger-fg)}.m-mcell.sat .d{color:var(--c-cyan-600)}.m-mcell.today .d{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--brand);color:var(--brand-on)}.m-mcell.is-sel{border-color:var(--ink);background:var(--bg-subtle)}.m-mcell .dots{display:flex;gap:3px;min-height:5px;align-items:center}.m-mcell .dots .dot{width:5px;height:5px;border-radius:50%}.m-month-shifts{margin-top:14px}.m-timerow{display:flex;flex-direction:column;gap:10px}.m-preset-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.m-preset{display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 2px;border-radius:11px;border:1px solid var(--border-default);background:var(--bg-elevated);cursor:pointer}.m-preset b{font:800 12.5px var(--font-sans);color:var(--c,var(--fg-strong))}.m-preset span{font:600 10.5px var(--font-mono);color:var(--fg-muted)}.m-preset.is-active{border-color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent)}.m-time-fields{display:flex;align-items:center;gap:8px}.m-timeselect{position:relative;flex:1;height:46px}.m-timeselect select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:100%;box-sizing:border-box;padding:0 32px 0 34px;background:var(--bg-muted);border:1px solid transparent;border-radius:12px;font:600 14.5px var(--font-sans);color:var(--fg-strong);cursor:pointer}.m-timeselect>svg:first-child{left:11px}.m-timeselect .chev,.m-timeselect>svg:first-child{position:absolute;top:50%;transform:translateY(-50%);color:var(--fg-muted);pointer-events:none}.m-timeselect .chev{right:9px}.m-time-sep{color:var(--fg-subtle);flex-shrink:0;display:inline-flex}.m-dur{font:700 12.5px var(--font-mono);color:var(--fg-muted)}.m-dur.bad{color:var(--danger-fg)}.m-nativeselect{position:relative;display:inline-flex;height:40px}.m-nativeselect select{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:100%;box-sizing:border-box;padding:0 32px 0 12px;background:var(--bg-muted);border:1px solid transparent;border-radius:10px;font:600 14px var(--font-sans);color:var(--fg-strong);cursor:pointer}.m-nativeselect .chev{position:absolute;right:9px;top:50%;transform:translateY(-50%);color:var(--fg-muted);pointer-events:none}.m-hint{font:600 11.5px var(--font-sans);color:var(--fg-subtle)}.m-err{font:600 12px var(--font-sans);color:var(--danger-fg)}.m-recur{display:flex;flex-direction:column;gap:12px;margin-top:10px;padding:14px;background:var(--bg-subtle);border-radius:14px}.m-recur-interval{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:500 13px var(--font-sans);color:var(--fg-muted)}.m-recur-until{display:flex;flex-direction:column;gap:7px}.m-recur-until .lbl{font:700 12px var(--font-sans);color:var(--fg-muted)}.m-recur-note{display:flex;align-items:center;gap:7px;padding:11px 13px;background:var(--brand-soft,var(--bg-subtle));border-radius:12px;font:600 12.5px var(--font-sans);color:var(--fg-muted)}.m-recur-note svg{flex-shrink:0;color:var(--brand)}.m-delete-btn{width:100%;height:48px;margin-top:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:13px;font-size:14.5px}.m-actionsheet{position:fixed;inset:0;z-index:56;display:flex;align-items:flex-end}.m-actionsheet-scrim{position:absolute;inset:0;background:var(--bg-overlay)}.m-actionsheet-panel{position:relative;width:100%;background:var(--bg-elevated);border-radius:22px 22px 0 0;padding:20px 18px calc(18px + env(safe-area-inset-bottom));box-shadow:var(--shadow-4);display:flex;flex-direction:column;gap:8px;animation:m-sheet-up .24s var(--ease-spring)}@keyframes m-sheet-up{0%{transform:translateY(100%)}to{transform:none}}.m-actionsheet-panel h3{font:800 17px var(--font-sans);letter-spacing:-.02em;margin:0}.m-actionsheet-panel .sub{font:500 13px var(--font-sans);color:var(--fg-muted);margin:0 0 6px}.m-scope-opts{gap:8px}.m-scope-opt,.m-scope-opts{display:flex;flex-direction:column}.m-scope-opt{position:relative;align-items:flex-start;gap:2px;padding:13px 38px 13px 14px;border:1px solid var(--border-default);border-radius:13px;background:var(--bg-elevated);cursor:pointer;text-align:left}.m-scope-opt:active{background:var(--bg-subtle);border-color:var(--border-strong)}.m-scope-opt .t{font:700 14.5px var(--font-sans);color:var(--fg-strong)}.m-scope-opt .d{font:500 12px var(--font-sans);color:var(--fg-muted)}.m-scope-opt>svg{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--fg-subtle)}.m-scope-hint{display:flex;align-items:flex-start;gap:6px;font:500 12px var(--font-sans);color:var(--fg-muted);margin:4px 0 0}.m-scope-hint svg{flex-shrink:0;margin-top:2px;color:var(--fg-muted)}.m-actionsheet-panel>.sp-btn-ghost{height:46px;border-radius:13px;margin-top:4px}.m-comment-bar textarea,.m-dateinput,.m-input,.m-nativeselect select,.m-search input,.m-textarea,.m-timeselect select{font-size:16px}