.policy-tool-page .policy-body{min-width:0;max-width:1120px;margin:0 auto;padding:2rem 1rem 3rem}.policy-tool-page .form-container{background:var(--nt-surface);max-width:none;color:var(--nt-text);border:1px solid var(--nt-border);border-top:4px solid #2563eb;border-radius:20px;margin:0;padding:clamp(1rem,3vw,2rem)}.policy-tool-page .policy-form-intro{color:var(--nt-muted);margin:.75rem 0 1.5rem;line-height:1.75}.policy-tool-page .policy-section{border-bottom:1px solid var(--nt-border)}.policy-tool-page .policy-section h3{margin:0}.policy-tool-page .policy-section-toggle{text-align:left;width:100%;color:var(--nt-text);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem .25rem;scroll-margin-top:105px;font-size:1.05rem;font-weight:700;display:flex}.policy-tool-page .policy-section-toggle span{color:var(--nt-purple);font-size:1.5rem}.policy-tool-page .policy-section-toggle:hover{color:var(--nt-blue)}.policy-tool-page :is(button,input,select,textarea,a):focus-visible{outline:3px solid var(--nt-purple);outline-offset:3px}.policy-tool-page .policy-section-panel{opacity:0;overflow-anchor:none;grid-template-rows:0fr;transition:grid-template-rows .3s,opacity .25s;display:grid}.policy-tool-page .policy-section-panel.is-open{opacity:1;grid-template-rows:1fr}.policy-tool-page .policy-section-panel>div{min-height:0;overflow:hidden}.policy-tool-page .policy-section-fields{padding:1rem .25rem}.policy-tool-page .form-group :is(input,select,textarea){background:var(--nt-muted-surface);color:var(--nt-text);border:1px solid var(--nt-border);width:100%;min-width:0;font-size:1rem}.policy-tool-page .form-group :is(input,textarea)::placeholder{color:var(--nt-muted);opacity:1}.policy-tool-page .form-group :is(label,small){color:var(--nt-text)}.policy-tool-page .form-group small{margin-top:.5rem;line-height:1.6;display:block}.policy-tool-page .checkbox-label{color:var(--nt-text);align-items:flex-start}.policy-tool-page .checkbox-group{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.policy-tool-page .generate-btn{color:#fff;background:linear-gradient(110deg,#047857,#1d4ed8);margin-top:1.5rem;scroll-margin-top:105px}.policy-tool-page .policy-output{border:1px solid var(--nt-border);background:var(--nt-surface);color:var(--nt-text);margin-top:2rem;scroll-margin-top:100px}.policy-tool-page .output-header{background:var(--nt-purple-wash);color:var(--nt-text);flex-wrap:wrap;gap:1rem;display:flex}.policy-tool-page .output-header h2{color:var(--nt-text);font-size:1.3rem}.policy-tool-page .output-actions{flex-wrap:wrap;gap:.5rem;display:flex}.policy-tool-page .action-btn{background:var(--nt-surface);min-height:44px;color:var(--nt-blue);border:1px solid var(--nt-border);white-space:normal;font-size:.9rem}.policy-tool-page .action-btn:hover{background:var(--nt-blue-wash);color:var(--nt-blue)}.policy-tool-page .output-content{background:var(--nt-surface);color:var(--nt-text);overflow-wrap:anywhere;padding:clamp(1rem,3vw,2rem)}.policy-tool-page .output-content :is(h1,h2,h3,strong){color:var(--nt-text)}.policy-tool-page .output-content h1{font-size:1.8rem}.policy-tool-page .output-content a{color:var(--nt-blue);text-decoration:underline}.policy-tool-page .policy-review-note{background:var(--nt-green-wash);border-radius:10px;margin:1rem;padding:1rem;line-height:1.7}.policy-tool-page .policy-status{color:var(--nt-blue);margin:.5rem 1rem}.policy-tool-page .policy-error{color:var(--nt-text);background:var(--nt-purple-wash);border-left:4px solid #dc2626;margin-top:1rem;padding:1rem}@media (prefers-reduced-motion:reduce){.policy-tool-page .policy-section-panel{transition:none}}@media (width<=480px){.policy-tool-page .output-header{padding:1rem}.policy-tool-page .output-actions{width:100%}.policy-tool-page .action-btn{flex:135px}}.policy-tool-page [aria-invalid=true]{border:2px solid #dc2626}.policy-tool-page .policy-field-error{color:var(--nt-text);border-left:3px solid #dc2626;margin:.4rem 0;padding-left:.5rem;font-size:.9rem}.policy-tool-page .checkbox-label input[type=checkbox]{accent-color:#1d4ed8;flex:0 0 20px;width:20px;height:20px;margin:.15rem .75rem 0 0;display:block;position:relative}.policy-tool-page .checkbox-label .checkmark{display:none}.policy-tool-page .network-tool-related{margin-top:2.5rem;padding-top:.25rem}.policy-tool-page #tool-input h2{font-size:clamp(1.3rem,3vw,1.65rem);line-height:1.35}.policy-tool-page .policy-body{overflow-anchor:none}.policy-tool-page .policy-examples-note{background:var(--nt-green-wash);border:1px solid var(--nt-border);border-left:4px solid #059669;border-radius:12px;margin:1rem 0 1.5rem;padding:1.1rem 1.25rem;line-height:1.7}.policy-tool-page .policy-examples-note p{margin:.5rem 0 0}.policy-tool-page .policy-example-label{color:var(--nt-blue);margin-left:.5rem;font-size:.8rem;font-weight:600;display:inline-block}.policy-tool-page .policy-restore-example{border:1px solid var(--nt-border);background:var(--nt-surface);color:var(--nt-blue);cursor:pointer;border-radius:7px;min-height:36px;margin-top:.5rem;padding:.4rem .7rem;font-size:.85rem;display:block}.policy-tool-page fieldset{border:1px solid var(--nt-border);border-radius:8px;min-width:0;padding:1rem}.policy-tool-page .policy-record-group{min-width:0;color:var(--nt-text);border:0;margin:0 0 1.5rem;padding:0}.policy-tool-page .policy-record-group>legend{margin-bottom:.5rem;font-weight:700}.policy-tool-page .policy-record-group>p{color:var(--nt-muted);line-height:1.65}.policy-tool-page .policy-record-card{border:1px solid var(--nt-border);background:var(--nt-muted-surface);border-radius:12px;min-width:0;margin:1rem 0;padding:1rem}.policy-tool-page .policy-record-card>legend{padding:0 .35rem;font-weight:700}.policy-tool-page .policy-record-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:0 1rem;display:grid}.policy-tool-page .policy-record-group>button{margin-right:.75rem}.policy-tool-page .policy-record-card button:disabled{opacity:.5;cursor:default}.policy-tool-page .policy-record-group[aria-invalid=true]{border:2px solid #dc2626;border-radius:12px;padding:1rem}
