.pm-app{--pm-bg:var(--bg);--pm-surface:var(--surface);--pm-elevated:var(--surface-2);--pm-border:var(--border);--pm-text:var(--fg);--pm-muted:var(--muted);--pm-accent:var(--accent);--pm-accent-soft:var(--accent-soft)}.pm-app,.pm-app *,.pm-app :before,.pm-app :after{box-sizing:border-box}.pm-app{background:var(--pm-bg);height:calc(100vh - 80px);color:var(--pm-text);grid-template-columns:1fr 380px;gap:0;font-family:Bai Jamjuree,system-ui,sans-serif;line-height:1.6;display:grid;overflow:hidden}.pm-app .back-link{color:var(--pm-muted);letter-spacing:.03em;margin-bottom:.5rem;font-size:.72rem;text-decoration:none;display:inline-block}.pm-app .back-link:hover{color:var(--pm-text)}.pm-app .matrix-section{background:var(--pm-bg);flex-direction:column;padding:24px;display:flex;overflow:hidden}.pm-app .matrix-header{margin-bottom:16px}.pm-app .header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.pm-app .matrix-header h1{color:var(--pm-text);margin:0;font-size:1.6rem;font-weight:700}.pm-app .board-selector{align-items:center;gap:8px;display:flex}.pm-app .board-select{background:var(--pm-surface);border:1px solid var(--pm-border);color:var(--pm-text);min-width:140px;padding:6px 10px;font-family:inherit;font-size:.82rem}.pm-app .board-select:focus{border-color:var(--pm-accent);outline:none}.pm-app .btn-icon{background:var(--pm-elevated);border:1px solid var(--pm-border);width:30px;height:30px;color:var(--pm-text);cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:.9rem;display:flex}.pm-app .btn-icon:hover{border-color:var(--pm-accent)}.pm-app .matrix-subtitle{color:var(--pm-muted);font-size:.82rem}.pm-app .matrix-wrapper{flex:1;grid-template-rows:1fr 36px;grid-template-columns:50px 1fr;gap:12px;min-height:0;display:grid}.pm-app .y-axis-label,.pm-app .x-axis-label{color:var(--pm-muted);letter-spacing:.06em;text-transform:uppercase;justify-content:center;align-items:center;gap:6px;font-size:.68rem;font-weight:600;display:flex}.pm-app .y-axis-label{writing-mode:vertical-rl;transform:rotate(180deg)}.pm-app .axis-arrow{color:var(--pm-accent);font-size:1.1rem}.pm-app .matrix-container{background:var(--pm-surface);border:1px solid var(--pm-border);cursor:crosshair;position:relative;overflow:hidden}.pm-app .matrix-gradient{pointer-events:none;background:radial-gradient(at 100% 0,#2de2c81f,#0000 50%),radial-gradient(at 0 0,#7ff5e214,#0000 50%),radial-gradient(at 100% 100%,#2de2c80f,#0000 50%),radial-gradient(at 0 100%,#ffffff05,#0000 50%);position:absolute;inset:0}.pm-app .axis-line{background:var(--pm-border);pointer-events:none;position:absolute}.pm-app .axis-line.horizontal{height:1px;top:50%;left:0;right:0}.pm-app .axis-line.vertical{width:1px;top:0;bottom:0;left:50%}.pm-app .quadrant-hints{pointer-events:none;position:absolute;inset:0}.pm-app .hint{color:var(--pm-muted);opacity:.35;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;pointer-events:auto;border-bottom:1px dashed #0000;font-size:.68rem;font-weight:500;transition:opacity .2s;position:absolute}.pm-app .hint:hover{opacity:.75;border-bottom-color:var(--pm-muted)}.pm-app .hint.top-right{top:16px;right:16px}.pm-app .hint.top-left{top:16px;left:16px}.pm-app .hint.bottom-right{bottom:16px;right:16px}.pm-app .hint.bottom-left{bottom:16px;left:16px}.pm-app .task-dot{cursor:grab;z-index:10;border:2px solid #fff;border-radius:50%;width:14px;height:14px;transition:transform .2s,box-shadow .2s;position:absolute;transform:translate(-50%,-50%)}.pm-app .task-dot:hover{z-index:20;transform:translate(-50%,-50%)scale(1.3);box-shadow:0 0 16px}.pm-app .task-dot.dragging{cursor:grabbing;z-index:30;transform:translate(-50%,-50%)scale(1.5);box-shadow:0 0 24px}.pm-app .task-dot.selected{z-index:40;box-shadow:0 0 0 2px white, 0 0 16px var(--pm-accent)}.pm-app .task-dot.dimmed{opacity:.1;pointer-events:none}.pm-app .task-dot.pulse{box-shadow:0 0 16px var(--pm-accent);z-index:50;animation:1s ease-in-out pm-pulse}.pm-app .task-dot-label{border:1px solid var(--pm-border);white-space:nowrap;pointer-events:none;opacity:0;background:#000000eb;margin-top:6px;padding:3px 7px;font-size:.7rem;transition:opacity .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)}.pm-app .task-dot:hover .task-dot-label,.pm-app .task-dot.dragging .task-dot-label{opacity:1}@keyframes pm-pulse{0%{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-50%)scale(2.5)}to{transform:translate(-50%,-50%)scale(1)}}.pm-app .matrix-controls{align-items:center;gap:10px;margin-top:14px;display:flex}.pm-app #taskInput{background:var(--pm-surface);border:1px solid var(--pm-border);color:var(--pm-text);flex:1;padding:10px 14px;font-family:inherit;font-size:.82rem;transition:border-color .2s}.pm-app #taskInput:focus{border-color:var(--pm-accent);outline:none}.pm-app #taskInput::placeholder{color:var(--pm-muted)}.pm-app button{background:var(--pm-accent);color:#fff;cursor:pointer;border:none;padding:10px 20px;font-family:inherit;font-size:.82rem;font-weight:600;transition:opacity .2s,transform .1s}.pm-app button:hover{opacity:.85}.pm-app button:active{transform:scale(.97)}.pm-app .btn-secondary{background:var(--pm-elevated);border:1px solid var(--pm-border);color:var(--pm-text)}.pm-app .sidebar{background:var(--pm-surface);border-left:1px solid var(--pm-border);flex-direction:column;display:flex;overflow:hidden}.pm-app .section-header{border-bottom:1px solid var(--pm-border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.pm-app .section-title{text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:600}.pm-app .task-count{color:var(--pm-muted);font-size:.7rem}.pm-app .formula-section{border-bottom:1px solid var(--pm-border)}.pm-app .formula-display{color:var(--pm-accent-soft);background:var(--pm-elevated);text-align:center;padding:14px 18px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.78rem}.pm-app .settings-row{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.75rem;display:flex}.pm-app .settings-select{background:var(--pm-elevated);color:var(--pm-text);border:1px solid var(--pm-border);padding:4px 8px;font-family:inherit;font-size:.75rem}.pm-app .weight-controls{padding:16px 18px}.pm-app .weight-control{margin-bottom:16px}.pm-app .weight-control:last-child{margin-bottom:0}.pm-app .weight-label{justify-content:space-between;margin-bottom:6px;font-size:.7rem;display:flex}.pm-app .weight-value{color:var(--pm-accent-soft);font-weight:600}.pm-app .weight-slider{appearance:none;background:var(--pm-elevated);border-radius:2px;outline:none;width:100%;height:4px}.pm-app .weight-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--pm-accent);cursor:pointer;border-radius:50%;width:14px;height:14px}.pm-app .weight-slider::-moz-range-thumb{background:var(--pm-accent);cursor:pointer;border:none;border-radius:50%;width:14px;height:14px}.pm-app .task-list-section{flex-direction:column;flex:1;display:flex;overflow:hidden}.pm-app .task-list{flex:1;padding:10px;overflow-y:auto}.pm-app .task-list::-webkit-scrollbar{width:6px}.pm-app .task-list::-webkit-scrollbar-track{background:var(--pm-surface)}.pm-app .task-list::-webkit-scrollbar-thumb{background:var(--pm-elevated);border-radius:3px}.pm-app .task-item{background:var(--pm-elevated);border:1px solid var(--pm-border);cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;padding:10px;transition:all .15s;display:flex}.pm-app .task-item:hover{border-color:var(--pm-accent-soft)}.pm-app .task-item.selected{border-color:var(--pm-accent)}.pm-app .task-rank{color:var(--pm-muted);min-width:22px;font-size:.7rem;font-weight:700}.pm-app .task-color-indicator{border-radius:50%;flex-shrink:0;width:10px;height:10px}.pm-app .task-name{flex:1;font-size:.82rem}.pm-app .task-name-input{background:var(--pm-bg);border:1px solid var(--pm-accent);color:var(--pm-text);outline:none;flex:1;padding:3px 6px;font-family:inherit;font-size:.82rem}.pm-app .task-score{color:var(--pm-accent-soft);font-size:.7rem;font-weight:600}.pm-app .task-deadline{color:var(--pm-accent);margin-left:auto;font-size:.65rem}.pm-app .task-delete{opacity:.5;background:var(--pm-elevated);color:var(--flag);cursor:pointer;border:none;padding:3px 6px;font-size:.7rem}.pm-app .task-delete:hover{opacity:1;background:var(--flag);color:var(--pm-bg)}.pm-app .task-meta{gap:6px;width:100%;margin-top:3px;padding-left:42px;font-size:.65rem;display:flex}.pm-app .task-tag{background:var(--pm-bg);color:var(--pm-accent-soft);padding:2px 5px}.pm-app .task-notes-indicator{color:var(--pm-muted);align-items:center;display:flex}.pm-app .footer-actions{border-top:1px solid var(--pm-border);flex-wrap:wrap;gap:6px;padding:14px;display:flex}.pm-app .footer-actions button{flex:1 0 40%}.pm-app .toggle-switch{width:34px;height:18px;display:inline-block;position:relative}.pm-app .toggle-switch input{opacity:0;width:0;height:0}.pm-app .slider{cursor:pointer;background-color:var(--pm-elevated);border:1px solid var(--pm-border);border-radius:18px;transition:all .3s;position:absolute;inset:0}.pm-app .slider:before{content:"";background-color:var(--pm-muted);border-radius:50%;width:12px;height:12px;transition:all .3s;position:absolute;bottom:2px;left:2px}.pm-app input:checked+.slider{background-color:var(--pm-accent)}.pm-app input:checked+.slider:before{background-color:#fff;transform:translate(16px)}.pm-app .filter-section{border-bottom:1px solid var(--pm-border);padding:10px 16px}.pm-app .filter-tags{flex-wrap:wrap;gap:6px;display:flex}.pm-app .filter-tag{background:var(--pm-elevated);border:1px solid var(--pm-border);cursor:pointer;color:var(--pm-muted);padding:3px 8px;font-size:.7rem;transition:all .15s}.pm-app .filter-tag:hover{border-color:var(--pm-accent);color:var(--pm-text)}.pm-app .filter-tag.active{background:var(--pm-accent);color:#fff;border-color:var(--pm-accent)}.pm-app .modal-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pm-app .modal-content{background:var(--pm-surface);border:1px solid var(--pm-border);width:90%;max-width:460px;padding:22px;box-shadow:0 8px 20px #0009}.pm-app .modal-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.pm-app .modal-title{font-size:1.1rem;font-weight:600}.pm-app .modal-close{color:var(--pm-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.4rem}.pm-app .form-group{margin-bottom:14px}.pm-app .form-label{color:var(--pm-muted);margin-bottom:6px;font-size:.78rem;display:block}.pm-app .form-input,.pm-app .form-textarea{background:var(--pm-bg);border:1px solid var(--pm-border);width:100%;color:var(--pm-text);padding:8px 10px;font-family:inherit}.pm-app .form-textarea{resize:vertical;min-height:80px}@media (width<=1024px){.pm-app{grid-template-rows:auto auto;grid-template-columns:1fr;height:auto;min-height:100vh;overflow:visible}.pm-app .sidebar{border-left:none;border-top:1px solid var(--pm-border);overflow:visible}.pm-app .sidebar .task-list{overflow:visible}.pm-app .matrix-section{min-height:55vh;overflow:visible}}@media (width<=600px){.pm-app .header-top{flex-direction:column;align-items:flex-start}.pm-app .matrix-wrapper{grid-template-columns:30px 1fr}}
