.ph{min-width:0;margin-bottom:1.25rem}.ph-crumbs{font-size:var(--fs-sm);color:var(--text-secondary);margin-bottom:10px}.ph-crumbs ol{flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ph-crumbs li{align-items:center;gap:6px;min-width:0;display:inline-flex}.ph-crumb{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;margin:-2px -4px;padding:2px 4px;text-decoration:none;transition:color .15s,background .15s;display:inline-flex}.ph-crumb:hover{color:var(--accent-text);background:var(--accent-soft)}.ph-crumb:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ph-crumb--current{color:var(--text-primary);cursor:default}.ph-crumb--current:hover{color:var(--text-primary);background:0 0}.ph-crumb-sep{color:var(--text-3)}.ph-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;display:flex}.ph-titles{flex:280px;min-width:0}.ph-title{font-family:var(--font-display);font-size:var(--fs-h1);letter-spacing:-.01em;color:var(--text-primary);text-wrap:balance;overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.25}.ph-subtitle{color:var(--text-secondary);font-size:var(--fs-body);max-width:62ch;margin:4px 0 0}.ph-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ph-aside{font-size:var(--fs-sm);color:var(--text-secondary);white-space:nowrap;align-self:flex-end}.ph-required{align-items:center;gap:3px;display:inline-flex}.ph-required>span{color:var(--danger-text);font-weight:700}.ph-help{background:var(--accent-soft);color:var(--accent-text);border:1px solid var(--accent-border);font-size:var(--fs-sm);border-radius:12px;margin-top:14px;padding:10px 14px}.ph-help summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-weight:600;list-style:none;display:flex}.ph-help summary::-webkit-details-marker{display:none}.ph-help summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:6px}.ph-help-body{color:var(--text-primary);max-width:80ch;line-height:1.55;font-size:var(--fs-body);margin:8px 0 2px 24px}.ph-help-body p{margin:0}.ph-help-body p+p{margin-top:6px}.ph-toolbar{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding:10px;display:flex}.ph-search{background:var(--surface-2);min-width:0;color:var(--text-secondary);cursor:text;border:1px solid #0000;border-radius:10px;flex:240px;align-items:center;gap:8px;padding:8px 12px;transition:border-color .15s,box-shadow .15s;display:flex}.ph-search:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-soft)}.ph-search input{min-width:0;font:inherit;font-size:var(--fs-body);color:var(--text-primary);box-shadow:none;background:0 0;border:0;outline:none;flex:1;margin:0;padding:0}.ph-search input::placeholder{color:var(--text-3)}.ph-search input::-webkit-search-cancel-button{appearance:none}.ph-search kbd{font:inherit;font-size:var(--fs-xxs);border:1px solid var(--border-color);color:var(--text-3);background:var(--surface);border-radius:5px;padding:0 5px;line-height:1.4}.ph-filter{border:1px solid var(--border-color);background-color:var(--surface);width:auto;min-width:0;max-width:100%;color:var(--text-primary);font:inherit;font-size:var(--fs-body);cursor:pointer;appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 17px) 55%,calc(100% - 12px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:10px;flex:0 auto;padding:8px 32px 8px 12px;transition:border-color .15s,background-color .15s,color .15s}.ph-filter:hover{border-color:var(--border-color-strong)}.ph-filter:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ph-filter.is-on{border-color:var(--accent-primary);background-color:var(--accent-soft);color:var(--accent-text);font-weight:600}.ph-toolbar>.search-select{flex:0 auto;width:auto;min-width:0;max-width:100%}.ph-toolbar>.search-select .ph-filter{cursor:text}.ph-toolbar-right{font-size:var(--fs-sm);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:12px;margin-left:auto;display:flex}.ph-count b,.ph-count strong{color:var(--text-primary)}.ph-clear{font:inherit;font-size:var(--fs-sm);color:var(--accent-text);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;margin:-4px -6px;padding:4px 6px;font-weight:600;display:inline-flex}.ph-clear:hover{background:var(--accent-soft)}.ph-clear:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ph-steps{flex-wrap:wrap;align-items:center;margin:18px 0 0;padding:0;list-style:none;display:flex}.ph-step{border:1px solid var(--border-color);background:var(--surface);color:var(--text-secondary);font-size:var(--fs-sm);align-items:center;gap:7px;margin-left:-1px;padding:7px 13px;font-weight:500;display:inline-flex}.ph-step:first-child{border-radius:999px 0 0 999px;margin-left:0}.ph-step:last-child{border-radius:0 999px 999px 0}.ph-step:first-child:last-child{border-radius:999px}.ph-step-n{background:var(--surface-2);width:18px;height:18px;color:var(--text-secondary);font-size:var(--fs-xxs);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.ph-step-label{white-space:nowrap}.ph-step.is-current{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--accent-primary-fg);z-index:1;font-weight:600;position:relative}.ph-step.is-current .ph-step-n{background:var(--accent-primary-fg);color:var(--accent-primary)}.ph-step.is-done{color:var(--accent-text)}.ph-step.is-done .ph-step-n{background:var(--accent-soft);color:var(--accent-text)}@media (width<=640px){.ph-actions{width:100%}.ph-actions>.btn{flex:auto;justify-content:center}.ph-aside{align-self:flex-start}.ph-search{flex-basis:100%}.ph-filter,.ph-toolbar>.search-select{flex:calc(50% - 5px)}.ph-toolbar-right{white-space:normal;justify-content:space-between;width:100%;margin-left:0}.ph-step{flex:auto;justify-content:center;padding:7px 10px}}@media (width<=420px){.ph-filter,.ph-toolbar>.search-select{flex-basis:100%}}.sf-modal__icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-text);border-radius:10px;flex:none;place-items:center;display:grid}.sf-modal__icon svg{width:18px;height:18px}.sf-modal__footer--hinted{align-items:center}.sf-modal__footer-hint{font-size:var(--fs-sm);color:var(--text-secondary);align-items:center;gap:6px;margin-right:auto;display:inline-flex}@media (width<=600px){.sf-modal__footer-hint{flex:100%;margin-right:0}}.sw-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sw{cursor:pointer;width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--border-color);border:2px solid #0000;border-radius:8px;padding:0;transition:transform .15s,box-shadow .15s;position:relative}.sw:hover{transform:scale(1.08)}.sw:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.sw.is-on{border-color:var(--text-primary);box-shadow:inset 0 0 0 2px var(--surface)}.sw--custom{background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.sw--custom input[type=color]{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.sw-hex{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-sm);color:var(--text-secondary);background:var(--surface-2);border-radius:6px;padding:4px 8px}.lp{border:1px solid var(--border-color);background:var(--surface);border-radius:12px;overflow:hidden}.lp-head{background:var(--surface-2);color:var(--text-primary);justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-weight:600;display:flex}.lp-head h4{font-size:var(--fs-body);margin:0;font-weight:600}.lp-head small{color:var(--text-secondary);font-weight:500;font-size:var(--fs-sm)}.lp-list{flex-direction:column;display:flex}.lp-row{border-top:1px solid var(--border-color);align-items:center;gap:8px;padding:8px 10px 8px 8px;display:flex}.lp-grip{color:var(--text-3);flex:none;display:inline-flex}.lp-row>select,.lp-row>.input,.lp-row>.search-select{flex:1;min-width:0}.lp-del{width:30px;height:30px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;transition:background .15s,color .15s;display:grid}.lp-del:hover{background:var(--danger-soft);color:var(--danger-text)}.lp-del:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.lp-empty{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-sm);padding:12px 14px}.lp-add{border:0;border-top:1px dashed var(--border-color-strong);width:100%;color:var(--accent-text);font:inherit;font-size:var(--fs-body);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:9px 10px;font-weight:600;transition:background .15s;display:flex}.lp-add:hover:not(:disabled){background:var(--accent-soft)}.lp-add:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.lp-add:disabled{color:var(--text-3);cursor:not-allowed}@media (prefers-reduced-motion:reduce){.ph-crumb,.ph-search,.ph-filter,.ph-clear,.sw,.lp-del,.lp-add{transition:none}.sw:hover{transform:none}}
