.policy-builder{padding:.5rem;font-family:sans-serif}.policy-level-0{padding:1rem}.policy-level-1{margin-left:1.5rem;padding-left:1rem;border-left:2px solid #e0e0e0}.policy-level-2{margin-left:1.5rem;padding-left:1rem;border-left:2px solid #d0d0d0}.policy-level-3{margin-left:1.5rem;padding-left:1rem;border-left:2px solid #c0c0c0}.builder-title{margin-top:0;margin-bottom:1rem;color:#333;font-size:1.2rem}.field-block{margin:.5rem 0;background-color:#fafafa;border-radius:4px;padding:.5rem;transition:background-color .2s}.field-level-0{background-color:#fff;border:1px solid #e0e0e0}.field-level-1{background-color:#f9f9f9;border-left:3px solid #4a90e2}.field-level-2{background-color:#f5f5f5;border-left:3px solid #7b68ee}.field-level-3{background-color:#f0f0f0;border-left:3px solid #9370db}.field-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.field-name{font-weight:600;min-width:120px;color:#555}.field-content{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e8e8e8;animation:slideDown .2s ease-out}.input-text{flex:1;min-width:200px;padding:.4rem .6rem;border-radius:4px;border:1px solid #ccc;font-size:.9rem}.input-text:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.optional-fields{margin-top:1rem;padding-top:1rem;border-top:1px dashed #ccc}.optional-level-0{margin-left:0}.optional-level-1{margin-left:1.5rem}.optional-level-2{margin-left:3rem}.add-button{margin:.3rem .3rem .3rem 0;padding:.4rem .8rem;border:1px dashed #aaa;border-radius:4px;background-color:#f8f8f8;cursor:pointer;font-size:.9rem;transition:all .2s}.add-button:hover{background-color:#e8f4fd;border-color:#4a90e2;border-style:solid}.expand-button{flex:1;text-align:left;padding:.4rem .6rem;border:1px solid #ddd;border-radius:4px;background-color:#f0f0f0;cursor:pointer;font-size:.9rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.expand-button:hover{background-color:#e8e8e8;border-color:#4a90e2}.delete-button{padding:.3rem .6rem;border:1px solid #dc3545;background-color:#f8d7da;border-radius:4px;cursor:pointer;color:#721c24;font-size:1.2rem;font-weight:700;line-height:1;min-width:28px;display:flex;align-items:center;justify-content:center;transition:all .2s}.delete-button:hover{background-color:#f5c6cb;border-color:#c82333}.subtype-selector{margin-top:1rem;padding:1rem;background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px}.subtype-selector label{display:block;margin-bottom:.5rem;font-weight:600;color:#856404}.subtype-selector select{width:100%;padding:.5rem;border-radius:4px;border:1px solid #ccc;font-size:.9rem}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}@media(max-width:768px){.policy-builder{padding:.25rem}.policy-level-0{padding:.5rem}.policy-level-1,.policy-level-2,.policy-level-3{margin-left:.5rem;padding-left:.5rem}.builder-title{font-size:1rem;margin-bottom:.75rem}.field-block{padding:.4rem;margin:.4rem 0}.field-name{min-width:80px;font-size:.85rem}.field-header{gap:.25rem}.field-content{margin-top:.5rem;padding-top:.5rem}.input-text{min-width:100px;padding:.35rem .5rem;font-size:.85rem}.optional-fields{margin-top:.75rem;padding-top:.75rem}.optional-level-1{margin-left:.5rem}.optional-level-2{margin-left:1rem}.add-button{padding:.35rem .6rem;font-size:.8rem;margin:.2rem .2rem .2rem 0}.expand-button{padding:.35rem .5rem;font-size:.85rem;gap:.25rem}.delete-button{padding:.25rem .5rem;font-size:1rem;min-width:24px}.subtype-selector{margin-top:.75rem;padding:.75rem}.subtype-selector select{padding:.4rem;font-size:.85rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#app{min-height:100vh;overflow-x:hidden}@media(max-width:768px){html{font-size:14px}h1{font-size:1.5rem!important}h2{font-size:1.25rem!important}h3{font-size:1rem!important}button,select,input[type=text],input[type=email],input[type=password],textarea{min-height:44px}*{-webkit-overflow-scrolling:touch}p,li,td,th{line-height:1.6}}@media(max-width:480px){html{font-size:13px}}img,video,iframe{max-width:100%;height:auto}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}
