:root{--ground:#eef1f5;--surface:#fff;--surface-2:#f4f6f9;--ink:#1b2430;--ink-muted:#5b6675;--ink-faint:#8992a0;--line:#dbe1e8;--line-strong:#c3cbd6;--accent:#b97a2e;--accent-ink:#fff;--success:#2e7d5b;--danger:#c0453b;--shadow:0 20px 50px -20px #1b243059;--radius-s:6px;--radius-m:10px;--radius-l:16px;--event-brightness:1;--other-event:#9aa3b0;--off-hours-bg:#0000000d;--period-fill:#e3e9f1;font-family:Hiragino Sans,Yu Gothic Medium,Yu Gothic,Noto Sans JP,-apple-system,Segoe UI,sans-serif}:root[data-theme=dark]{--ground:#12161c;--surface:#1a2029;--surface-2:#222b36;--ink:#e6eaf0;--ink-muted:#a3adba;--ink-faint:#6f7987;--line:#2c353f;--line-strong:#3a4551;--accent:#c98a3e;--accent-ink:#fff;--success:#4caf82;--danger:#e06055;--shadow:0 20px 50px -20px #0009;--event-brightness:1.1;--other-event:#6f7987;--off-hours-bg:#00000047;--period-fill:#2e3a48}*{box-sizing:border-box}html,body{height:100%}body{background:var(--ground);color:var(--ink);flex-direction:column;margin:0;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--surface);flex:none;align-items:center;gap:18px;height:46px;padding:0 18px;display:flex}.topbar .brand{font-size:14px;font-weight:700}.topbar nav{gap:4px;display:flex}.topbar nav a{color:var(--ink-muted);border-radius:999px;padding:6px 12px;font-size:12.5px;text-decoration:none}.topbar nav a.active{background:var(--surface-2);color:var(--ink);font-weight:700}.app{flex:1;grid-template-columns:264px 1fr;min-height:0;display:grid;position:relative}.sidebar{background:var(--surface-2);border-right:1px solid var(--line);flex-direction:column;gap:22px;padding:20px 18px;display:flex;overflow-y:auto}.brand-block{line-height:1.3}.brand-block .jp{letter-spacing:.01em;font-size:18px;font-weight:700}.brand-block .en{letter-spacing:.16em;color:var(--ink-faint);text-transform:uppercase;font-size:9.5px;font-weight:600}.btn-new{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-m);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-size:13.5px;font-weight:700;display:flex}.btn-new:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mini-month{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);padding:10px 10px 12px}.mini-month-head{justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 2px;font-size:12.5px;font-weight:700;display:flex}.mini-month-head .nav{color:var(--ink-faint);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex}.mini-month-head .nav:hover{background:var(--surface-2);color:var(--ink)}.mini-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-grid .dow{color:var(--ink-faint);padding-bottom:3px;font-size:9.5px;font-weight:600}.mini-grid .d{color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:6px;padding:4px 0;font-size:11px}.mini-grid .d:hover{background:var(--surface-2)}.mini-grid .d.dim{color:var(--ink-faint);opacity:.55}.mini-grid .d.in-period{background:var(--period-fill)}.mini-grid .d.today{background:var(--accent);color:var(--accent-ink);font-weight:700}.room-groups{flex-direction:column;gap:16px;display:flex}.room-group-label{letter-spacing:.06em;color:var(--ink-faint);margin:0 0 8px 2px;font-size:11px;font-weight:700}.room-list{flex-direction:column;gap:2px;display:flex}.room-row{border-radius:var(--radius-s);cursor:pointer;align-items:center;gap:9px;padding:6px;display:flex}.room-row:hover{background:var(--surface)}.room-row input[type=checkbox]{appearance:none;border:1.5px solid var(--line-strong);cursor:pointer;background:0 0;border-radius:4px;flex:none;width:14px;height:14px}.room-row input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.room-row input[type=checkbox]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.room-row .name{flex:1;font-size:12.5px;font-weight:500;line-height:1.35}.room-row.off .name{color:var(--ink-faint)}.type-pill{border:1px solid var(--line-strong);color:var(--ink-muted);white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:9.5px;font-weight:700}.main{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.fab{background:var(--accent);width:52px;height:52px;color:var(--accent-ink);box-shadow:var(--shadow);cursor:pointer;z-index:3;border:none;border-radius:50%;font-size:24px;font-weight:700;position:absolute;bottom:24px;right:24px}.fab:hover{filter:brightness(1.08)}.toolbar{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 20px;display:flex}.tb-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:var(--radius-s);cursor:pointer;padding:6px 12px;font-size:12.5px;font-weight:600}.tb-arrows{gap:4px;display:flex}.tb-arrows button{width:28px;height:28px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:14px}.tb-arrows button:hover{background:var(--surface-2)}.tb-title{margin-right:auto;font-size:17px;font-weight:700}.tb-toggle{color:var(--ink-muted);cursor:pointer;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.view-switch{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;gap:2px;padding:3px;display:flex}.view-switch span,.view-switch button{color:var(--ink-muted);cursor:pointer;border-radius:999px;padding:5px 14px;font-size:12px;font-weight:600}.view-switch button{background:0 0;border:none;font-family:inherit}.view-switch span.active,.view-switch button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001f}.view-switch button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.grid-wrap{flex:1;position:relative;overflow:hidden auto}.grid-wrap.is-room-view{overflow-x:auto}.grid-wrap.is-room-view .time-gutter{z-index:1;background:var(--ground);position:sticky;left:0}.grid-wrap.is-room-view .day-header-row .corner{z-index:1;background:var(--surface);position:sticky;left:0}.day-header-row{background:var(--surface);z-index:2;border-bottom:1px solid var(--line);display:grid;position:sticky;top:0}.day-header-row .corner{border-right:1px solid #0000}.day-header{text-align:center;border-left:1px solid var(--line);padding:8px 4px 10px}.day-header .dow{letter-spacing:.04em;color:var(--ink-faint);text-transform:uppercase;font-size:10.5px;font-weight:600}.day-header .num{font-variant-numeric:tabular-nums;margin-top:2px;font-size:19px;font-weight:700}.day-header.today .num{background:var(--danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.room-col-header .num{white-space:normal;font-size:11.5px;font-weight:700;line-height:1.3}.time-body{display:grid;position:relative}.time-gutter{height:1536px;position:relative}.time-gutter .label{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:10.5px;position:absolute;right:8px;transform:translateY(-50%)}.day-col{border-left:1px solid var(--line);-webkit-user-select:none;user-select:none;background-image:repeating-linear-gradient(to bottom, var(--line) 0, var(--line) 1px, transparent 1px, transparent 64px);height:1536px;position:relative}.day-col.dragging{cursor:crosshair}.off-hours{background:var(--off-hours-bg);pointer-events:none;z-index:0;position:absolute;left:0;right:0}.now-line{border-top:2px solid var(--danger);pointer-events:none;height:0;position:absolute;left:0;right:0}.now-line:before{content:"";background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:-4px;left:-4px}.event{color:#000;background:var(--c);filter:brightness(var(--event-brightness));cursor:pointer;border-radius:7px;padding:4px 7px;transition:opacity .25s,transform .25s;position:absolute;left:3px;right:3px;overflow:hidden;box-shadow:0 3px 8px -3px #0006}.event .t{white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;line-height:1.3;overflow:hidden}.event .p{opacity:.9;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.event.ghost{border:2px dashed var(--c);filter:none;pointer-events:none;background:0 0}.event.ghost .t{color:var(--c);filter:brightness(.75)}.event.editable{cursor:grab}.event.dragging{cursor:grabbing;opacity:.85;z-index:5}.event-resize{cursor:ns-resize;z-index:2;height:7px;position:absolute;left:0;right:0}.event-resize.top{top:0}.event-resize.bottom{bottom:0}.event:focus-visible,.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.month-wrap{flex-direction:column;height:100%;display:flex}.month-dow-row{border-bottom:1px solid var(--line);background:var(--surface);z-index:2;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;position:sticky;top:0}.month-dow-row div{text-align:center;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;padding:8px 0;font-size:10.5px;font-weight:600}.month-grid{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:1fr;display:grid}.month-cell{border-left:1px solid var(--line);border-top:1px solid var(--line);cursor:pointer;flex-direction:column;gap:3px;min-height:88px;padding:6px;display:flex;position:relative}.month-cell:hover{background:var(--surface-2)}.month-cell .dnum{font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex}.month-cell.today .dnum{background:var(--danger);color:#fff}.month-cell.other{opacity:.45}.chip{color:#000;background:var(--c);white-space:nowrap;text-overflow:ellipsis;filter:brightness(var(--event-brightness));cursor:pointer;border-radius:4px;padding:2px 5px;font-size:10px;font-weight:600;overflow:hidden}.chip-more{color:var(--ink-faint);cursor:pointer;padding:1px 5px;font-size:10px;font-weight:600}.modal-shell{z-index:5;background:#0f131a6b;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.modal-shell.open{display:flex}.modal{background:var(--surface);border-radius:var(--radius-l);width:380px;max-height:640px;box-shadow:var(--shadow);padding:22px 22px 18px;position:relative;overflow-y:auto}.modal-lg{width:92%;max-width:640px}.modal-shell-fixed{z-index:20;background:#0f131a6b;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-shell-fixed.open{display:flex}.modal-close{background:var(--surface-2);width:26px;height:26px;color:var(--ink-muted);cursor:pointer;border:none;border-radius:50%;font-size:14px;position:absolute;top:14px;right:14px}.modal h2{margin:0 0 4px;padding-right:24px;font-size:16px;font-weight:700}.modal .sub{color:var(--ink-faint);margin:0 0 16px;font-size:12px}.field{margin-bottom:12px}.field label{color:var(--ink-muted);margin-bottom:5px;font-size:11.5px;font-weight:600;display:block}.field .control,.field select,.field input[type=text],.field input[type=date],.field input[type=time]{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:var(--radius-s);width:100%;color:var(--ink);padding:8px 10px;font-family:inherit;font-size:13px}.field .control[data-readonly]{background:var(--surface);color:var(--ink-muted)}.field-hint{color:var(--ink-faint);margin-top:5px;font-size:11.5px}.field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.repeat-field{color:var(--ink-muted);cursor:pointer;align-items:center;gap:8px;margin-bottom:14px;font-size:12.5px;display:flex}.repeat-field input[type=checkbox]{cursor:pointer;width:14px;height:14px}.repeat-badge{opacity:.85;font-size:10px}.room-tag{align-items:center;gap:6px;display:inline-flex}.modal-actions{gap:8px;margin-top:18px;display:flex}.btn-ghost,.btn-primary,.btn-danger2{border-radius:var(--radius-s);cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);flex:1;padding:10px 12px;font-size:13px;font-weight:700}.btn-primary{background:var(--accent);color:var(--accent-ink);border:none}.btn-danger2{background:var(--danger);color:#fff;border:none}.error-msg{color:var(--danger);margin:-4px 0 12px;font-size:12px;display:none}.error-msg.show{display:block}.toast{background:var(--ink);color:var(--ground);opacity:0;pointer-events:none;z-index:10;white-space:nowrap;border-radius:999px;padding:10px 18px;font-size:12.5px;font-weight:600;transition:opacity .2s,transform .2s;position:absolute;bottom:22px;left:50%;transform:translate(-50%)translateY(12px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.admin-shell{flex:1;min-height:0;display:flex}.admin-sidebar{background:var(--surface-2);border-right:1px solid var(--line);flex:none;width:200px;padding:20px 14px;overflow-y:auto}.admin-sidebar .brand-block{margin-bottom:18px}.admin-sidebar nav{flex-direction:column;gap:2px;display:flex}.admin-sidebar a{color:var(--ink-muted);border-radius:var(--radius-s);padding:9px 12px;font-size:13px;font-weight:600;text-decoration:none;display:block}.admin-sidebar a:hover{background:var(--surface)}.admin-sidebar a.active{background:var(--surface);color:var(--ink)}.admin-main{flex:1;min-width:0;padding:28px 32px 64px;overflow-y:auto}.admin-main .create-form{max-width:640px}.admin-main h1{margin:0 0 4px;font-size:20px}.admin-main .lead{color:var(--ink-muted);margin:0 0 20px;font-size:13px;line-height:1.6}.flash{background:var(--surface);border:1px solid var(--success);color:var(--success);border-radius:var(--radius-s);margin-bottom:16px;padding:10px 14px;font-size:13px}.errors{background:var(--surface);border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius-s);margin-bottom:16px;padding:10px 14px;font-size:12.5px}.admin-toolbar{justify-content:flex-end;margin-bottom:14px;display:flex}.admin-toolbar button[data-open-form]{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-s);cursor:pointer;border:none;padding:8px 16px;font-size:12.5px;font-weight:700}.create-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);margin-bottom:16px;padding:16px 18px;display:none}.create-form.open{display:block}.create-form h2{margin:0 0 12px;font-size:14px}.create-form .field-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.create-form label{color:var(--ink-muted);margin-bottom:5px;font-size:11.5px;font-weight:600;display:block}.create-form input,.create-form select{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:var(--radius-s);width:100%;color:var(--ink);padding:8px 10px;font-family:inherit;font-size:13px}.create-form .actions{gap:8px;margin-top:4px;display:flex}.create-form button[type=submit]{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-s);cursor:pointer;border:none;padding:8px 16px;font-size:12.5px;font-weight:700}.create-form button[type=button]{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:var(--radius-s);cursor:pointer;padding:8px 16px;font-size:12.5px;font-weight:600}.data-table-wrap{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface);overflow-x:auto}table.data-table{border-collapse:collapse;width:100%;font-size:13px}table.data-table th{text-align:left;letter-spacing:.03em;color:var(--ink-faint);text-transform:uppercase;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 14px;font-size:11px;font-weight:700}table.data-table td{border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:10px 14px}table.data-table tr:last-child td{border-bottom:none}table.data-table tr:hover td{background:var(--surface-2)}table.data-table .muted{color:var(--ink-faint)}.row-actions{white-space:nowrap;gap:8px;display:flex}.row-actions form{display:inline}table.data-table .row-actions{justify-content:flex-end}.badge-pill{background:var(--surface-2);border:1px solid var(--line-strong);color:var(--ink-muted);border-radius:999px;padding:2px 9px;font-size:10.5px;font-weight:700;display:inline-block}.badge-pill.ok{color:var(--success);border-color:var(--success)}.badge-pill.no{color:var(--danger);border-color:var(--danger)}.btn-link,.btn-link-danger,.btn-link-primary{white-space:nowrap;cursor:pointer;border-radius:var(--radius-s);border:1px solid var(--line-strong);justify-content:center;align-items:center;padding:6px 13px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.btn-link{background:var(--surface);color:var(--ink-muted)}.btn-link:hover{background:var(--surface-2);color:var(--ink)}.btn-link-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-link-primary:hover{background:#a06827;border-color:#a06827}.btn-link-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-link-danger:hover{background:#a23a31;border-color:#a23a31}.auth-wrap{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);width:340px;box-shadow:var(--shadow);padding:28px 26px}.auth-card h1{margin:0 0 4px;font-size:17px}.auth-card p.lead{color:var(--ink-muted);margin:0 0 18px;font-size:12.5px}.auth-card .field{margin-bottom:14px}.auth-card label{color:var(--ink-muted);margin-bottom:5px;font-size:12px;font-weight:600;display:block}.auth-card input[type=email],.auth-card input[type=password]{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:var(--radius-s);width:100%;color:var(--ink);padding:9px 11px;font-family:inherit;font-size:13.5px}.auth-card .remember{color:var(--ink-muted);align-items:center;gap:7px;margin-bottom:16px;font-size:12.5px;display:flex}.auth-card button{background:var(--accent);width:100%;color:var(--accent-ink);border-radius:var(--radius-s);cursor:pointer;border:none;padding:10px 12px;font-size:13.5px;font-weight:700}.auth-card .errors{background:var(--surface-2);border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius-s);margin-bottom:14px;padding:8px 12px;font-size:12px}.hamburger-btn,.sidebar-account,.drawer-scrim{display:none}@media (width<=768px){body.is-calendar .topbar{display:none}.app{grid-template-columns:1fr}.hamburger-btn{width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:17px;display:flex}.hamburger-btn:hover{background:var(--surface-2)}.sidebar{z-index:9;width:78%;max-width:300px;box-shadow:var(--shadow);transition:transform .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.drawer-open .sidebar{transform:translate(0)}.drawer-scrim{opacity:0;pointer-events:none;z-index:8;background:#0f131a6b;transition:opacity .2s;display:block;position:fixed;inset:0}.drawer-open .drawer-scrim{opacity:1;pointer-events:auto}.sidebar-account{border-top:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px;margin-top:18px;padding-top:16px;display:flex}.sidebar-account-name{color:var(--ink-muted);font-size:12.5px}.sidebar-account form{margin:0}.sidebar-account .tb-btn{text-align:center;box-sizing:border-box;width:100%;text-decoration:none;display:block}.toolbar{flex-wrap:wrap;gap:8px;padding:10px 12px}.tb-title{white-space:nowrap;text-overflow:ellipsis;flex:auto;order:3;min-width:0;font-size:13px;overflow:hidden}.tb-toggle{flex:100%;order:4}.view-switch{flex:100%;order:5}.view-switch span{text-align:center;flex:1;padding:5px 4px}.grid-wrap{overflow-x:auto}.event{padding:3px 4px}.event .t{font-size:10px}.event .p{font-size:9px}}.color-wrap{flex:1;padding:32px 24px;overflow-y:auto}.color-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);max-width:640px;box-shadow:var(--shadow);margin:0 auto;padding:28px 26px}.color-card h1{margin:0 0 6px;font-size:17px}.color-card p.lead{color:var(--ink-muted);margin:0 0 4px;font-size:12.5px;line-height:1.6}.color-group{margin-top:24px}.color-group>summary{letter-spacing:.04em;color:var(--ink-faint);text-transform:uppercase;border-bottom:1px solid var(--line);cursor:pointer;margin:0 0 4px;padding-bottom:8px;font-size:12px;font-weight:700;list-style:none}.color-group>summary::-webkit-details-marker{display:none}.color-company>summary::-webkit-details-marker{display:none}.color-department>summary::-webkit-details-marker{display:none}.color-group>summary:before,.color-company>summary:before,.color-department>summary:before{content:"▸";width:12px;margin-right:4px;transition:transform .15s;display:inline-block}.color-group[open]>summary:before,.color-company[open]>summary:before,.color-department[open]>summary:before{transform:rotate(90deg)}.color-company{margin-top:4px}.color-company>summary{cursor:pointer;padding:8px 0 4px;font-size:13px;font-weight:700;list-style:none}.color-department{margin:4px 0 4px 14px}.color-department>summary{color:var(--ink-muted);cursor:pointer;padding:4px 0;font-size:11.5px;font-weight:600;list-style:none}.attendee-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 2px;display:flex;position:relative}.attendee-row:last-child{border-bottom:none}.attendee-row .who{flex:1;font-size:13.5px}.swatch-trigger{background:var(--surface-2);border:1px solid var(--line-strong);cursor:pointer;color:var(--ink-muted);border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 6px;font-size:12px;display:flex}.swatch-trigger:hover{border-color:var(--accent)}.swatch-trigger .dot{border-radius:50%;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0000001f}.popover{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);width:268px;box-shadow:var(--shadow);padding:14px;display:none;position:absolute;top:calc(100% + 6px);right:0}.popover.open{display:block}.popover .grid{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.popover .cell{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:50%;width:100%;padding:0;box-shadow:inset 0 0 0 1px #0000001a}.popover .cell.selected{border-color:var(--ink)}.popover .custom-row{border-top:1px solid var(--line);align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:flex}.popover .custom-row label{color:var(--ink-muted);flex:1;font-size:11.5px}.popover input[type=color]{border:1px solid var(--line-strong);cursor:pointer;background:0 0;border-radius:50%;width:30px;height:30px;padding:0}.popover .hex{color:var(--ink-faint);font-variant-numeric:tabular-nums;width:62px;font-size:11px}.actions{align-items:center;gap:14px;margin-top:24px;display:flex}.save-btn{background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-s);cursor:pointer;border:none;padding:10px 22px;font-size:13.5px;font-weight:700}.actions .back-link{color:var(--ink-muted);font-size:12.5px;text-decoration:none}.actions .back-link:hover{color:var(--accent)}.shortcuts-page{max-width:720px;margin:0 auto;padding:32px 24px 64px}.shortcuts-page h1{margin:0 0 10px;font-size:20px}.shortcuts-page .lead{color:var(--ink-muted);margin:0 0 26px;font-size:13px;line-height:1.7}.shortcuts-page h2{border-bottom:1px solid var(--line);margin:28px 0 6px;padding-bottom:6px;font-size:14px}.shortcuts-group{flex-direction:column;display:flex}.shortcuts-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:10px 2px;font-size:13px;display:flex}.shortcuts-row:last-child{border-bottom:none}.shortcuts-row .keys{flex:none;align-items:center;gap:6px;display:flex}.shortcuts-row .or{color:var(--ink-faint);font-size:11px}.shortcuts-page kbd{text-align:center;background:var(--surface-2);border:1px solid var(--line-strong);min-width:20px;color:var(--ink);border-bottom-width:2px;border-radius:5px;padding:2px 7px;font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-block}.shortcuts-page .note{color:var(--ink-faint);margin-top:10px;font-size:12px;line-height:1.6}.shortcuts-page .back-link{color:var(--ink-muted);margin-top:28px;font-size:12.5px;text-decoration:none;display:inline-block}.shortcuts-page .back-link:hover{color:var(--accent)}.btn-text,.btn-text-accent,.btn-text-danger{white-space:nowrap;cursor:pointer;border-radius:var(--radius-s);background:0 0;border:none;padding:4px 7px;font-family:inherit;font-size:12px;font-weight:700}.btn-text{color:var(--ink-muted)}.btn-text-accent{color:var(--accent)}.btn-text-danger{color:var(--danger)}.btn-text:hover,.btn-text-accent:hover,.btn-text-danger:hover{background:var(--surface-2)}.btn-text:hover{color:var(--ink)}.btn-text:focus-visible,.btn-text-accent:focus-visible,.btn-text-danger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.mgmt-tabs{margin:0 0 16px}.mgmt-tabs .view-switch{display:inline-flex}.mgmt-note{color:var(--ink-faint);margin:0 0 14px;font-size:12px;line-height:1.6}.color-card p.mgmt-lead{margin-bottom:18px}.mgmt-back{margin:24px 0 0;font-size:12.5px}.mgmt-back a{color:var(--ink-muted)}.mgmt-company+.mgmt-company{margin-top:22px}.mgmt-company-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:10px;padding-bottom:7px;display:flex}.mgmt-company-name{flex:1;min-width:0;font-size:13px;font-weight:700}.mgmt-dept{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--surface)}.mgmt-dept+.mgmt-dept{margin-top:8px}.mgmt-dept>summary{cursor:pointer;border-radius:var(--radius-m);align-items:center;gap:10px;padding:11px 14px;font-size:13px;font-weight:700;list-style:none;display:flex}.mgmt-dept>summary::-webkit-details-marker{display:none}.mgmt-dept>summary:before{content:"▸";width:11px;color:var(--ink-faint);flex:none;font-weight:400;transition:transform .15s}.mgmt-dept[open]>summary:before{transform:rotate(90deg)}.mgmt-dept>summary:hover{background:var(--surface-2)}.mgmt-dept[open]>summary{border-bottom:1px solid var(--line);border-radius:var(--radius-m) var(--radius-m) 0 0}.mgmt-dept-name{flex:1;min-width:0}.mgmt-dept-count{color:var(--ink-faint);white-space:nowrap;font-size:11.5px;font-weight:600}.mgmt-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:8px 8px 8px 14px;display:flex}.mgmt-row form{display:flex}.mgmt-row-main{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.mgmt-row-name{font-size:13px;font-weight:600}.mgmt-row-mail{min-width:0;color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.mgmt-empty{color:var(--ink-faint);border-bottom:1px solid var(--line);margin:0;padding:12px 14px;font-size:12.5px}.mgmt-card-foot{align-items:center;gap:10px;padding:7px 8px 7px 10px;display:flex}.mgmt-foot-end{margin-left:auto}.mgmt-foot-note{color:var(--ink-faint);padding:4px;font-size:12px}.mgmt-dept>.create-form{margin:10px 14px 12px}.mgmt-company>.create-form{margin-bottom:10px}.mgmt-company .create-form{background:var(--surface-2)}.create-form .field-row.is-single{grid-template-columns:1fr}.create-form .actions{flex-wrap:wrap}.create-form button{white-space:nowrap}.create-form .actions-end{align-items:center;gap:4px;margin-left:auto;display:flex}.create-form .actions button.btn-text,.create-form .actions button.btn-text-danger{background:0 0;border:none;padding:4px 7px;font-size:12px}.create-form .actions button.btn-text{color:var(--ink-muted)}.create-form .actions button.btn-text-danger{color:var(--danger)}.create-form .actions button.btn-text:hover,.create-form .actions button.btn-text-danger:hover{background:var(--surface)}@media (width<=768px){.mgmt-company .create-form .field-row{grid-template-columns:1fr}.mgmt-row{align-items:flex-start}.mgmt-row-mail{flex-basis:100%}.mgmt-tabs .view-switch button{white-space:nowrap;padding:6px 12px}.create-form .actions-end{justify-content:flex-end;width:100%;margin-left:0}}.legal-page{max-width:720px;margin:0 auto;padding:48px 24px 80px;line-height:1.8}.legal-page h1{margin-bottom:8px;font-size:1.5rem}.legal-page .updated-at{color:var(--ink-muted);margin-bottom:40px;font-size:.85rem}.legal-page h2{border-bottom:1px solid var(--line);margin-top:32px;margin-bottom:8px;padding-bottom:4px;font-size:1.1rem}.legal-page p{margin:0 0 8px}.legal-page ul{margin:0 0 8px;padding-left:1.4em}.legal-page a{color:var(--accent)}
