/* Shared Manabi Kōbō tile contract v1.2.
   All workbench pages receive the same two-dimensional resize and overflow behavior here. */
[data-mk-canvas]{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:14px;min-width:0}
[data-mk-tile]{position:relative;box-sizing:border-box;display:flex;flex-direction:column;flex:0 0 340px;min-width:280px;min-height:130px;max-width:100%;overflow:hidden;background:var(--mk-surface);border:1px solid var(--mk-line);border-radius:var(--mk-radius);box-shadow:var(--mk-shadow)}
[data-mk-toolbar]{flex:0 0 auto;display:flex;align-items:center;gap:9px;min-height:42px;padding:8px 11px;background:var(--mk-surface-alt);border-bottom:1px solid var(--mk-line);font-size:.78rem;font-weight:800;letter-spacing:.02em;user-select:none}
[data-mk-drag]{cursor:grab;color:var(--mk-muted);font-family:var(--mk-font-code)}
[data-mk-drag]:active{cursor:grabbing}
[data-mk-minimize],[data-mk-reset]{border:1px solid var(--mk-line);background:var(--mk-surface);color:var(--mk-ink);border-radius:8px;cursor:pointer}
[data-mk-minimize]{margin-left:auto;width:28px;height:28px}
.mk-resize-handle{color:var(--mk-muted);touch-action:none}
.mk-resize-corner{position:absolute;right:4px;bottom:4px;z-index:12;width:20px;height:20px;border:0;background:transparent;cursor:nwse-resize;touch-action:none;padding:0}
.mk-resize-corner::after{content:"";position:absolute;right:2px;bottom:2px;width:11px;height:11px;border-right:3px solid color-mix(in srgb,var(--mk-red) 75%,transparent);border-bottom:3px solid color-mix(in srgb,var(--mk-red) 75%,transparent);border-radius:0 0 3px 0}

/* Keep resized content reachable without forcing the overall page to grow. */
[data-mk-body]{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
[data-mk-body]::-webkit-scrollbar{width:11px;height:11px}
[data-mk-body]::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--mk-muted) 42%,transparent);border:3px solid transparent;border-radius:999px;background-clip:padding-box}
[data-mk-body]::-webkit-scrollbar-track{background:transparent}

/* Content-heavy informational tiles open at a practical 3-by-2 card viewport.
   Saved user dimensions still win because they are written as inline styles. */
[data-mk-tile].mk-information-tile{width:min(1020px,100%);flex-basis:min(1020px,100%);height:650px}
[data-mk-tile].mk-information-tile .tracker-calendar,
[data-mk-tile].mk-information-tile .phrase-list,
[data-mk-tile].mk-information-tile .study-list,
[data-mk-tile].mk-information-tile .native-card-grid,
[data-mk-tile].mk-information-tile .game-card-grid,
[data-mk-tile].mk-information-tile .audio-unit-grid,
[data-mk-tile].mk-information-tile .mt-unit-grid,
[data-mk-tile].mk-information-tile .mt-practice-grid,
[data-mk-tile].mk-information-tile .mt-writing-grid,
[data-mk-tile].mk-information-tile .mt-routine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
[data-mk-tile].is-mk-resizing{user-select:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--mk-red) 20%,transparent),var(--mk-shadow)}
[data-mk-tile].is-minimized{min-height:0!important;height:auto!important;flex-basis:280px!important}
[data-mk-tile].is-minimized>[data-mk-body]{display:none!important}
[data-mk-tile].is-minimized>.mk-resize-corner{display:none}
[data-mk-tile].is-dragging{opacity:.55;outline:2px dashed var(--mk-red)}
.kana-practice-grid[data-mk-canvas]{justify-content:center}
@media(max-width:760px){
  [data-mk-canvas]{display:grid;grid-template-columns:1fr}
  [data-mk-tile]{min-width:0;width:100%!important;height:auto!important;flex-basis:auto!important}
  [data-mk-body]{overflow:visible;scrollbar-gutter:auto}
  [data-mk-tile].mk-information-tile .tracker-calendar,[data-mk-tile].mk-information-tile .phrase-list,[data-mk-tile].mk-information-tile .study-list,[data-mk-tile].mk-information-tile .native-card-grid,[data-mk-tile].mk-information-tile .game-card-grid,[data-mk-tile].mk-information-tile .audio-unit-grid,[data-mk-tile].mk-information-tile .mt-unit-grid,[data-mk-tile].mk-information-tile .mt-practice-grid,[data-mk-tile].mk-information-tile .mt-writing-grid,[data-mk-tile].mk-information-tile .mt-routine-grid{grid-template-columns:1fr}
  .mk-resize-handle,.mk-resize-corner{display:none}
}
.mk-layout-actions,.mk-home-layout-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}
.mk-home-layout-actions{max-width:1100px;margin:16px auto 0;padding:0 4px}
.workbench-button--primary{background:var(--mk-red)!important;color:#fff!important;border-color:var(--mk-red)!important}
.workbench-button--primary:hover{filter:brightness(.95);transform:translateY(-1px)}
.mk-layout-toast{position:fixed;right:24px;bottom:24px;z-index:9999;padding:12px 16px;border-radius:10px;background:var(--mk-ink);color:#fff;box-shadow:var(--mk-shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;font-weight:700}
.mk-layout-toast.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:760px){.mk-layout-actions,.mk-home-layout-actions{justify-content:stretch}.mk-layout-actions .workbench-button,.mk-home-layout-actions .workbench-button{flex:1}.mk-layout-toast{left:16px;right:16px;bottom:16px;text-align:center}}
