.measurement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.measurement-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;position:relative;min-width:0}.measurement-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e9ece7}.measurement-hit{position:absolute;inset:0;border:0;background:transparent;z-index:1}.measurement-card-body{padding:16px}.measurement-card-body h3{margin:12px 0 4px}.measurement-card-body p{color:var(--muted);font-size:13px;margin-bottom:7px}.measure-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px}.measure-tags span{background:#eef3e4;color:#526b1d;border-radius:6px;padding:6px 8px;font-size:11px}.measurement-modal{width:min(1240px,calc(100vw - 24px));max-height:96vh}.measurement-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.8fr);gap:22px}.measure-stage{position:relative;width:100%;min-height:360px;background:#252827;border-radius:12px;overflow:hidden;touch-action:none;display:flex;align-items:center;justify-content:center}.measure-stage img{display:block;max-width:100%;max-height:68vh;object-fit:contain;user-select:none;-webkit-user-drag:none}.measure-stage.empty-photo .measure-ruler{display:none}.photo-placeholder{color:#d9ddd6;text-align:center;padding:50px 20px}.camera-button{margin-top:12px;width:100%}.camera-button input{display:none}.measure-help{font-size:12px;color:var(--muted);margin:9px 0}.measure-ruler{position:absolute;height:8px;background:#a9cf19;border-radius:8px;transform-origin:left center;box-shadow:0 1px 5px #0008;cursor:grab;touch-action:none;z-index:3}.measure-ruler span{position:absolute;left:50%;bottom:15px;transform:translateX(-50%);background:#303432e8;color:#fff;border-radius:5px;padding:5px 8px;font-size:12px;font-weight:750;white-space:nowrap}.measure-ruler i{position:absolute;top:50%;width:24px;height:24px;border:4px solid #a9cf19;background:#fff;border-radius:50%;transform:translateY(-50%)}.ruler-start{left:-12px}.ruler-end{right:-12px;cursor:ew-resize}.dimension-list{display:grid;gap:8px}.dimension-row{display:grid;grid-template-columns:1.25fr 1fr .6fr 42px;gap:7px}.dimension-row input{min-width:0;border:1px solid #ccd5e2;border-radius:7px;padding:10px}.dimension-row .btn{padding:5px}.measurement-modal .form-grid{grid-template-columns:1fr 1fr}.measurement-modal textarea{min-height:72px}
@media(max-width:1000px){.measurement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.measurement-layout{grid-template-columns:1fr}.measure-stage{min-height:300px}.measure-stage img{max-height:58vh}}
@media(max-width:650px){.measurement-grid{grid-template-columns:1fr}.measurement-modal{width:calc(100vw - 8px);padding:13px}.measurement-modal .form-grid{grid-template-columns:1fr}.measure-stage{min-height:240px}.measure-stage img{max-height:52vh}.dimension-row{grid-template-columns:1fr .75fr .55fr 40px}.dimension-row input{padding:9px 6px;font-size:13px}}

.measurement-downloads{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.measurement-downloads .btn{font-size:12px;padding:7px 9px;text-decoration:none}
.measure-ruler{height:3px;box-shadow:0 0 0 1px #ffffff80}.measure-ruler.selected{background:#ff9d2e;z-index:5}.measure-ruler.locked{opacity:.8}.measure-ruler span{font-size:12px}.ruler-mark{position:absolute!important;top:50%!important;width:2px!important;height:20px!important;background:currentColor!important;border:0!important;border-radius:0!important;transform:translate(-50%,-50%)!important}.ruler-mark:before,.ruler-mark:after{content:"";position:absolute;left:-3px;border-left:4px solid transparent;border-right:4px solid transparent}.ruler-mark:before{top:-1px;border-bottom:5px solid currentColor}.ruler-mark:after{bottom:-1px;border-top:5px solid currentColor}.ruler-mark em{position:absolute;left:50%;top:22px;transform:translateX(-50%);background:#333d;color:#fff;padding:3px 6px;border-radius:4px;font-size:10px;font-style:normal;white-space:nowrap}.ruler-toolbar{display:flex;gap:7px;margin:12px 0}.ruler-controls{border:1px solid var(--line);border-radius:9px;padding:13px;background:#f9faf7}.ruler-controls h3{margin:8px 0 10px}.line-value{display:flex;gap:7px;margin-bottom:10px}.line-value input,.line-value select{min-width:0;width:100%;border:1px solid #ccd5e2;border-radius:7px;padding:10px}.line-value select{max-width:80px}.mark-list{display:grid;gap:6px;margin-top:8px}.mark-row{display:flex;gap:8px;align-items:center;background:#fff;border:1px solid var(--line);padding:7px;border-radius:6px;font-size:12px}.mark-row b{flex:1}.mark-row button{border:0;background:none;color:#b23a50;font-size:18px}

/* Teknik ölçülendirme okları ve geniş dokunma alanları */
.measure-ruler{height:2px;min-height:2px;color:#a9cf19;cursor:grab;overflow:visible}
.measure-ruler.selected{color:#ff9d2e}
.measure-ruler.locked{cursor:not-allowed}
.measure-ruler .ruler-start,.measure-ruler .ruler-end{top:50%;width:30px;height:30px;border:0;background:transparent;border-radius:0;transform:translateY(-50%);color:inherit}
.measure-ruler .ruler-start{left:-3px}.measure-ruler .ruler-end{right:-3px;cursor:crosshair}
.measure-ruler .ruler-start:after,.measure-ruler .ruler-end:after{content:"";position:absolute;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent}
.measure-ruler .ruler-start:after{left:3px;border-left:10px solid currentColor}.measure-ruler .ruler-end:after{right:3px;border-right:10px solid currentColor}
.ruler-mark{width:30px!important;height:34px!important;background:transparent!important;cursor:ew-resize;color:inherit}
.ruler-mark:before,.ruler-mark:after{top:12px!important;bottom:auto!important;left:auto!important;width:0;height:0;border-top:5px solid transparent!important;border-bottom:5px solid transparent!important}
.ruler-mark:before{right:15px;border-right:0!important;border-left:9px solid currentColor!important}.ruler-mark:after{left:15px!important;border-left:0!important;border-right:9px solid currentColor!important}
.ruler-mark em{top:27px}.mark-row small{color:var(--muted);font-size:10px}.mark-value-row input{flex:1}.mark-value-row button{white-space:nowrap}
